openmolar-1.0.15-gd81f9e5/0000755000175000017500000000000013024000134014707 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/bin/0000755000175000017500000000000013024000134015457 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/bin/openmolar.10000644000175000017500000000154712526357372017575 0ustar neilneil00000000000000.\" Manpage for openmolar. .\" Contact neil@openmolar.com to correct errors or typos. .TH OPENMOLAR "1" "June 2014" "OpenMolar 0.5.6" "User Commands" .SH NAME OpenMolar \- dental practice management software. .SH DESCRIPTION dental practice management software. .SH SYNOPSIS openmolar [\-v \-q \--firstrun \--version \--help] .SH OPTIONS .TP \fB\-q\fR quiet (minimal logging to console) .TP \fB\-v\fR verbose logging to console (for debugging) .TP \fB\-\-help\fR show command line options .TP \fB\-\-firstrun\fR offer the firstrun config and demodatabase generation .TP \fB\-\-setup\fR takes you to the admin page .TP \fB\-\-version\fR show the versioning and exit .TP \fB\-\-no\-dev\-login\fR Ignore dev login (advanced) .TP \fB\-\-ignore\-schema\-check\fR proceed even if client and database versions clash (NOT ADVISABLE!) .SH AUTHOR Neil Wallace (neil@openmolar.com) openmolar-1.0.15-gd81f9e5/bin/openmolar.desktop0000755000175000017500000000041512142161221021056 0ustar neilneil00000000000000[Desktop Entry] Version=1.0 Name=OpenMolar GenericName=Dental Practice Management Suite Comment=Dental Practice Management Software Exec=openmolar Icon=openmolar Terminal=false Type=Application MimeType=application/x-openmolar; Categories=Office; Name[en_GB]=OpenMolar openmolar-1.0.15-gd81f9e5/bin/openmolar.svg0000644000175000017500000006557712033133562020233 0ustar neilneil00000000000000 image/svg+xml openmolar-1.0.15-gd81f9e5/src/0000755000175000017500000000000013024000134015476 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/0000755000175000017500000000000013024000134017472 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/backports/0000755000175000017500000000000013024000134021462 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/backports/__init__.py0000644000175000017500000000312412710144045023606 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/backports/advisor.py0000644000175000017500000002335512710144045023526 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets class MessagePopup(QtWidgets.QWidget): ''' A custom Widget which can be used as a brief non-modal message box. ''' def __init__(self, message, parent=None): super(MessagePopup, self).__init__(parent) padding = 12 # create a QTextDocument, which will handle any rich text in our # messages. doc = QtGui.QTextDocument(self) doc.setHtml(message) doc.setDocumentMargin(padding) doc.adjustSize() self.doc = doc doc_width, doc_height = doc.size().width(), doc.size().height() icon = QtGui.QIcon(":/openmolar.svg") self.pixmap = icon.pixmap(48, 48) pic_width, pic_height = self.pixmap.width(), self.pixmap.height() self.setBrushes() self.setMouseTracking(True) width = doc_width + pic_width + padding * 2 if width < self.minimumWidth(): width = self.minimumWidth() height = doc_height if height < pic_height: height = pic_height height += padding * 2 self.setFixedSize(width, height) # values required at painttime. self.rect_f = QtCore.QRectF(0, 0, width, height) self.text_rectf = QtCore.QRectF(padding, padding, doc_width, doc_height) self.icon_rectf = QtCore.QRectF(padding + doc_width, padding, pic_width, pic_height) def setIcon(self, icon): self.pixmap = icon.pixmap(30, 30) self.pixmapRect = QtCore.QRectF(self.pixmap.rect()) def setBrushes(self, alpha=150): self.fully_visible = alpha == 150 pal = self.palette() col = pal.shadow().color() col.setAlpha(alpha) self.border_brush = QtGui.QBrush(col) col = pal.toolTipBase().color() col.setAlpha(alpha) self.back_brush = QtGui.QBrush(col) pen_colour = pal.toolTipText().color() pen_colour.setAlpha(alpha + 50) self.pen = QtGui.QPen(pen_colour) def minimumWidth(self): w = 300 if self.parent() is not None: if self.parent().width() > w * 4: w = self.parent().width() / 4 return w def toggleMouseEvents(self, off=True): self.setAttribute(QtCore.Qt.WA_TransparentForMouseEvents, off) def mouseMoveEvent(self, event): self.update() def mousePressEvent(self, event): self.toggleMouseEvents() def leaveEvent(self, *args): # gets called after toggleMouseEvents :( self.update() def leaveEvent_(self, *args): ''' widget won't be mouse aware for leaveEvent.. so this has to be called by parent ''' self.toggleMouseEvents(False) self.update() def paintEvent(self, event): cursor_pos = self.mapFromGlobal(self.cursor().pos()) if self.rect().contains(cursor_pos): self.setBrushes(40) else: self.setBrushes() painter = QtGui.QPainter(self) rect_f = self.rect_f.adjusted(0, 0, -1, -1) # above line allows for pen width painter.setPen(QtGui.QPen(self.border_brush, 1)) painter.setBrush(self.border_brush) painter.drawRoundedRect(rect_f, 15, 15) rect_f = rect_f.adjusted(5, 5, -5, -5) painter.setPen(QtGui.QPen(self.back_brush, 1)) painter.setBrush(self.back_brush) painter.drawRoundedRect(rect_f, 15, 15) painter.drawPixmap(self.icon_rectf, self.pixmap, QtCore.QRectF(self.pixmap.rect())) painter.setPen(self.pen) # a hack because documentLayout.drawText method is sluggish # when used with a semi-transparent pen. # faint version will lack italics and bold styles etc.. but isn't # an issue in practice! if self.fully_visible: dl = self.doc.documentLayout() dl.draw(painter, dl.PaintContext()) else: option = QtGui.QTextOption() option.setWrapMode(option.WrapAnywhere) painter.drawText(self.text_rectf, self.doc.toPlainText(), option) class Advisor(QtWidgets.QWidget): ''' provides various notifications to the user ''' def __init__(self, parent=None): ''' Advisor.__init__(self, parent=None) ''' QtWidgets.QWidget.__init__(self, parent) self.brief_messages = [] self.briefMessagePosition = QtCore.QPoint(10, 10) self.brief_message_box = None self.single_shot = QtCore.QTimer(self) self.single_shot.setSingleShot(True) self.single_shot.timeout.connect(self.hide_brief_message) self.right_to_left = False def setBriefMessagePosition(self, point, right_to_left=False): ''' set the position the brief message label will appear arg is QtCore.QPoint, if right_to_left is true, then this point is the top right of the box. ''' self.briefMessagePosition = point self.right_to_left = right_to_left def hide_brief_message(self): if self.brief_message_box: self.brief_message_box.hide() self.brief_message_box.deleteLater() self.brief_message_box = None def advise_dl(self, message): ''' convenience function which calls advise with a default of 1. useful when connected to a signal ''' self.advise(message, 1) def advise_err(self, message): ''' convenience function which calls advise with a default of 1. useful when connected to a signal ''' self.advise(message, 2) def advise(self, message, warning_level=0): ''' inform the user of events - warning level0 = no interaction popup. warning level 1 advisory, requires user response. warning level 2 warning, and logged in output. ''' def show_brief_messages(): self.hide_brief_message() full_message = "" for mess in self.brief_messages: full_message += "%s
" % mess full_message = full_message.rstrip("
") + "" self.brief_message_box = MessagePopup(full_message, self) self.brief_message_box.right_to_left = self.right_to_left self.brief_message_box.show() self.brief_message_box.raise_() if self.right_to_left: x = (self.briefMessagePosition.x() - self.brief_message_box.width()) pos = QtCore.QPoint(x, self.briefMessagePosition.y()) else: pos = self.briefMessagePosition self.brief_message_box.move(pos) app = QtWidgets.QApplication.instance() if app: app.processEvents() def hide_brief_message(): first_message = self.brief_messages[0] self.brief_messages.remove(first_message) if self.brief_messages == []: self.single_shot.setInterval(2000) self.single_shot.start() else: self.single_shot.stop() show_brief_messages() if warning_level == 0: self.brief_messages.append(message) show_brief_messages() QtCore.QTimer.singleShot(7000, hide_brief_message) # 7 seconds try: self.statusbar.showMessage(message, 10000) except AttributeError: pass elif warning_level == 1: QtWidgets.QMessageBox.information(self, _("Advisory"), message) elif warning_level == 2: QtWidgets.QMessageBox.warning(self, _("Error"), message) def wait(self, waiting=True): app = QtWidgets.QApplication.instance() if waiting: app.setOverrideCursor(QtCore.Qt.WaitCursor) else: app.restoreOverrideCursor() if __name__ == "__main__": app = QtWidgets.QApplication([]) advisor = Advisor() advisor.show() advisor.advise("hello world") advisor.advise("hello world", 1) advisor.advise("hello world", 2) app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/backports/printed_form.py0000644000175000017500000001331012710144521024534 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a Class for printing on an A4 Sheet ''' import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") class PrintedForm(object): ''' a class to set up and print an a4 form ''' testing_mode = False print_background = False rects = {} off_set = QtCore.QPoint(0, 0) scale_x = 1 scale_y = 1 def __init__(self, parent=None): self.parent = parent self.printer = QtPrintSupport.QPrinter() self.pdfprinter = QtPrintSupport.QPrinter() self.pdfprinter.setPrinterName("PDF PRINTER") self.pdfprinter.setOutputFormat(QtPrintSupport.QPrinter.PdfFormat) self.pdfprinter.setOutputFileName(localsettings.TEMP_PDF) self.chosen_printer = self.printer for printer in (self.printer, self.pdfprinter): printer.setPaperSize(QtPrintSupport.QPrinter.A4) printer.setFullPage(True) printer.setResolution(96) def set_testing_mode(self, mode): self.testing_mode = mode def set_background_mode(self, mode): self.print_background = mode def set_offset(self, x, y): ''' offsets all printing by x,y ''' self.off_set = QtCore.QPointF(x, y) def set_scaling(self, scale_x, scale_y): ''' offsets all printing by x,y ''' self.scale_x = scale_x self.scale_y = scale_y def controlled_print(self): ''' raise a dialog before printing ''' dl = QtPrintSupport.QPrintDialog(self.printer, self.parent) if dl.exec_(): self.chosen_printer = self.printer self.print_() self.set_background_mode(False) self.set_testing_mode(True) self.chosen_printer = self.pdfprinter self.print_() return True @property def BACKGROUND_IMAGE(self): ''' overwrite this image when subclassing. ''' LOGGER.error("No pixmap set") return QtGui.QPixmap() def print_(self, painter=None): ''' print the background and any rects if in testing_mode note - this functions return the active painter so that classes which inherit from PrintedForm can finalise the printing. ''' LOGGER.info("printing to %s" % self.chosen_printer.printerName()) if painter is None: painter = QtGui.QPainter(self.chosen_printer) if self.print_background: pm = self.BACKGROUND_IMAGE if not pm.isNull(): painter.save() painter.translate( -self.printer.pageRect().x(), -self.printer.pageRect().y() ) painter.drawPixmap(self.printer.paperRect(), pm, pm.rect()) painter.restore() else: LOGGER.warning("background image is null") painter.translate(self.off_set) LOGGER.info("translating form by %s" % self.off_set) painter.scale(self.scale_x, self.scale_y) LOGGER.info("scaling output by %s x %s" % (self.scale_x, self.scale_y)) if self.testing_mode: # outline the boxes painter.save() painter.setPen(QtGui.QPen(QtCore.Qt.black, 1)) painter.setBrush(QtGui.QBrush(QtCore.Qt.black)) painter.drawRect(0, 0, 20, 5) painter.drawRect(0, 0, 5, 20) painter.restore() # put down a marker at position 0 (for alignment purposes) painter.save() painter.setPen(QtGui.QPen(QtCore.Qt.black, 1)) for rect in list(self.rects.values()): painter.drawRect(rect) painter.restore() return painter if __name__ == "__main__": import os os.chdir(os.path.expanduser("~")) # for print to file app = QtWidgets.QApplication([]) form = PrintedForm() form.testing_mode = True form.rects = {"test": QtCore.QRect(100, 100, 100, 100)} form.controlled_print() openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/0000755000175000017500000000000013024000134021140 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/__init__.py0000755000175000017500000000312412710144045023267 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/accounts.py0000644000175000017500000000563712723333701023362 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module to retrieve a list of patients who owe money ''' from openmolar.settings import localsettings from openmolar.connect import connect QUERY = '''SELECT dnt1, new_patients.serialno, cset, CONCAT(fname, " ", sname), status, tx_date, cmpd, (money0 + money1 + money9 + money10 - money2 - money3 - money8 + money11) as fees, billdate, billtype, billct, memo from new_patients join patient_money on new_patients.serialno = patient_money.pt_sno join currtrtmt2 on new_patients.courseno0 = currtrtmt2.courseno join (select serialno, max(date) as tx_date from daybook group by serialno) as t on new_patients.serialno = t.serialno where (money0 + money1 + money9 + money10 - money2 - money3 - money8 + money11) %s %%s %s order by tx_date desc ''' def details(greater_than=True, amount=0, extra_conditions=[], extra_values=[]): ''' get all patients owing money where the debt has not been written off ''' extras = " AND ".join(extra_conditions) query = QUERY % (">" if greater_than else "<", " AND " + extras if extras else "") values = [amount] + extra_values db = connect() cursor = db.cursor() cursor.execute(query, values) rows = cursor.fetchall() cursor.close() return rows if __name__ == "__main__": localsettings.initiate() for row in details(): print(row) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/appointments.py0000755000175000017500000015342613022003273024256 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import datetime import logging from openmolar.settings import localsettings from openmolar.connect import connect, ProgrammingError, OperationalError LOGGER = logging.getLogger("openmolar") INSERT_APPT_QUERY = '''INSERT INTO aslot (adate,apptix,start,end,name,serialno, code0,code1,code2,note,flag0,flag1,flag2,flag3) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)''' APPOINTMENT_QUERY = '''select apptix, start, end, name, serialno, code0, code1, code2, note, flag0, flag1, flag2, flag3, timestamp, mh_date from aslot left join (select pt_sno, max(chk_date) as mh_date from medforms group by pt_sno) as t on aslot.serialno = t.pt_sno where adate=%%s %s order by apptix, start''' APPOINTMENTS_QUERY = ''' SELECT start, end, name, concat(title," ",fname," ",sname), new_patients.serialno, concat(code0," ",code1," ",code2), note, cset, mh_date FROM new_patients right join aslot on new_patients.serialno=aslot.serialno left join (select pt_sno, max(chk_date) as mh_date from medforms group by pt_sno) as t on aslot.serialno = t.pt_sno WHERE adate = %s and apptix = %s order by start ''' DELETE_APPOINTMENT_QUERY = ''' DELETE FROM aslot WHERE adate=%s AND serialno=%s AND apptix=%s AND start=%s''' MODIFY_APPOINTMENT_QUERY = ''' update apr set practix=%s, code0=%s, code1=%s, code2=%s, note=%s, length=%s, flag0=%s, flag1=%s, flag2=%s, flag3=%s, flag4=%s, datespec=%s WHERE serialno=%s and aprix=%s ''' DAY_TIMES_QUERY = '''SELECT start, end FROM aday WHERE adate=%s AND (flag=1 or flag=2) and apptix=%s''' DAY_SUMMARY_QUERY = ''' SELECT start, end, serialno, name, flag1, concat(code0, " ", code1," ", code2) FROM aslot WHERE adate = %s and apptix = %s AND flag0!=-128 ORDER BY start''' BLOCKS_QUERY = '''SELECT start, end, 0, name, 63, "" FROM aslot WHERE adate=%s and apptix=%s AND flag0=-128 and name!="LUNCH" ORDER BY start''' LUNCHES_QUERY = '''SELECT start, end, 0, "%s", 63 , "" FROM aslot WHERE adate = %%s and apptix = %%s AND name="LUNCH" ''' % _("Lunch") def duration(dt1, dt2): ''' how many minutes between two datetimes? will be negative if dt2 < dt1 ''' diff = dt2 - dt1 return diff.seconds // 60 + (diff.days * 24 * 60) class FreeSlot(object): ''' a custom data object to represent a slot (ie. a free space in dentists book) ''' is_slot = True def __init__(self, date_time=None, dent=0, length=0): self.dent = dent self.date_time = date_time self.length = length self.is_primary = True def date(self): return self.date_time.date() @property def day_no(self): return self.date().isoweekday() def time(self): return self.date_time.time() @property def finish_time(self): return self.date_time + datetime.timedelta(minutes=self.length) @property def mpm(self): return localsettings.pyTimeToMinutesPastMidnight(self.time()) @property def mpm_end(self): return self.mpm + self.length def __lt__(self, other): return self.date_time < other.date_time def __le__(self, other): return self.date_time <= other.date_time def __eq__(self, other): try: return self.__dict__ == other.__dict__ except AttributeError: return False def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __ne__(self, other): return self.__dict__ != other.__dict__ def __gt__(self, other): return self.date_time > other.date_time def __ge__(self, other): return self.date_time >= other.date_time def __repr__(self): return "SLOT %s , dent %s, %s mins" % ( self.date_time, self.dent, self.length) def wait_time(self, appt1_length, appt2_length, slot): ''' Given this slot, an appointment to go in it, and a joint appointment to be fitted into the other slot how long would a patient be kept waiting? this is a complex bit of logic!!!! returns None if an impossible situation has been requested. ''' if appt1_length > self.length or appt2_length > slot.length: LOGGER.warning("bad call to wait_time") return None combined_length = appt1_length + appt2_length if (duration(self.date_time, slot.finish_time) < combined_length and duration(slot.date_time, self.finish_time) < combined_length): LOGGER.debug("insufficient time - skipping %s and %s", self, slot) return None appt1_datediff = datetime.timedelta(minutes=appt1_length) appt2_datediff = datetime.timedelta(minutes=appt2_length) # step one get appointment bounds as datetime objects. earliest_appt1_start = self.date_time earliest_appt1_finish = self.date_time + appt1_datediff latest_appt1_start = self.finish_time - appt1_datediff latest_appt1_finish = self.finish_time earliest_appt2_start = slot.date_time earliest_appt2_finish = slot.date_time + appt2_datediff latest_appt2_start = slot.finish_time - appt2_datediff latest_appt2_finish = slot.finish_time # step two - calculate wait times, and store in a list. # will produce [maximum wait with appt1 first, # minimum wait with appt1, # maximum wait with appt2 first, # minimum wait with appt2] # then check to see if a zero wait can be appended. waits = [] waits.append(duration(earliest_appt1_finish, latest_appt2_start)) waits.append(duration(latest_appt1_finish, earliest_appt2_start)) waits.append(duration(earliest_appt2_finish, latest_appt1_start)) waits.append(duration(latest_appt2_finish, earliest_appt1_start)) if (waits[1] < 0 < waits[0]) or (waits[3] < 0 < waits[2]): waits.append(0) # this next debug line creates a LOT of output! # LOGGER.debug("%s and %s has waits of %s", self, slot, waits) for i in sorted(waits): if i >= 0: return i class AgendaAppointment(FreeSlot): text = "" is_slot = False def __repr__(self): return "%s , dent %s, %s mins %s" % ( self.date_time, self.dent, self.length, self.text) class WeekViewAppointment(object): ''' a custom data object to contain data relevant to the painting of the appointment_overviewwidget ''' mpm = 0 length = 0 serialno = 0 isBlock = False name = "" isEmergency = False cset = "" trt = "" @property def start(self): return localsettings.minutesPastMidnighttoWystime(self.mpm) @property def end(self): return localsettings.minutesPastMidnighttoWystime(self.end_mpm) @property def end_mpm(self): return self.mpm + self.length def __lt__(self, other): return self.mpm < other.mpm def to_appt(self, adate, dent): query = APPOINTMENT_QUERY % ( "and apptix=%s and start=%s and end=%s and serialno=%s") db = connect() cursor = db.cursor() values = (adate, dent, self.start, self.end, self.serialno) cursor.execute(query, values) row = cursor.fetchone() cursor.close() if row: return Appointment(row) return None def __le__(self, other): return self.mpm <= other.mpm def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): return self.mpm == other.mpm def __ne__(self, other): return self.mpm != other.mpm def __gt__(self, other): return self.mpm > other.mpm def __ge__(self, other): return self.mpm >= other.mpm def __repr__(self): return "WeekViewAppointment.%s %s %d mins past midnight for %d mins" \ % (self.name, self.cset, self.mpm, self.length) class APR_Appointment(object): ''' a class to hold data about a patient's appointment ''' def __init__(self): self.serialno = 0 self.aprix = 0 self.dent = 0 self.name = "" self.date = None self.cset = "" self.atime = 0 self.length = 0 self.today = False self.past = False self.future = False self.memo = "" self.trt1 = "" self.trt2 = "" self.trt3 = "" self.datespec = "" self.flag = 1 @property def dent_inits(self): return localsettings.apptix_reverse.get(self.dent, "?") @property def readableDate(self): return localsettings.readableDate(self.date) # return localsettings.formatDate(self.date) @property def readableTime(self): return localsettings.wystimeToHumanTime(self.atime) @property def treatment(self): return "%s %s %s" % (self.trt1, self.trt2, self.trt3) @property def unscheduled(self): return self.date is None def past_or_present(self): ''' perform logic to decide if past/present future ''' today = localsettings.currentDay() if not self.unscheduled: self.today = self.date == today self.past = self.date < today if self.today: self.future = self.atime > localsettings.int_timestamp() else: self.future = self.date > today @property def html(self): return "%s %s with %s for %s" % ( self.readableTime, self.readableDate, self.dent_inits, self.treatment) def to_freeslot(self): ''' return this object in the form of a freeslot ''' date_time = datetime.datetime(self.date.year, self.date.month, self.date.day, self.atime // 100, self.atime % 100) return FreeSlot(date_time, self.dent, self.length) def to_block(self): ''' return this object in the form of a blocking Appointment ''' end = localsettings.minutesPastMidnighttoWystime( localsettings.minutesPastMidnight(self.atime) + self.length) return Appointment((self.dent, self.atime, end, "", 0, _("WITH OTHER CLINICIAN"), "", "", "", None, 80, None, None, None, None)) def __repr__(self): return "serialno=%s %s scheduled=%s dent=%s trt=%s length= %s ix=%s" \ % (self.serialno, self.date, not self.unscheduled, self.dent_inits, self.trt1, self.length, self.aprix) def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): try: return (self.serialno == other.serialno and self.aprix == other.aprix) except AttributeError: return False def __lt__(self, other): try: return self.aprix < other.aprix except AttributeError: return False def __gt__(self, other): try: return self.aprix > other.aprix except AttributeError: return False class DaySummary(object): ''' a data structure to hold just summary data for a day ''' def __init__(self): self.date = datetime.date(1900, 1, 1) self.earliest_start = 2359 self.latest_end = 0 self.workingDents = () self.inOffice = {} self.memo = "today" self.memos = {} self.appointments = () class DayAppointmentData(DaySummary): ''' a data structure to hold all data for a day ''' appointments = () workingDents = () def __init__(self): DaySummary.__init__(self) def setDate(self, date): ''' update the class with data for date ''' self.date = date workingDents = [] self.inOffice = {} self.memos = {} self._snos = None self.startTimes = {} self.endTimes = {} self.earliest_start = 2359 self.latest_end = 0 self.memo = "%s %s" % (localsettings.readableDate(date), self.header()) for dent in getWorkingDents(self.date): self.memos[dent.ix] = dent.memo self.startTimes[dent.ix] = dent.start self.endTimes[dent.ix] = dent.end self.inOffice[dent.ix] = dent.flag if dent.flag != 0: workingDents.append(dent.ix) if dent.start < self.earliest_start: self.earliest_start = dent.start if dent.end > self.latest_end: self.latest_end = dent.end self.workingDents = tuple(workingDents) def header(self): ''' get any text from the calendar table + memo for dentist 0 ''' retarg = "" bh = getBankHol(self.date) if bh != "": retarg += " '%s'" % bh gm = getGlobalMemo(self.date) if gm != "": retarg += " - %s" % gm return retarg def getMemo(self, dent): ''' return the memo for the dent, or "" if there is none ''' try: return self.memos[dent] except KeyError: return "" def getStart(self, dent): ''' return the memo for the dent, or "" if there is none ''' try: return self.startTimes[dent] except KeyError: return 1200 def getEnd(self, dent): ''' return the memo for the dent, or "" if there is none ''' try: return self.endTimes[dent] except KeyError: return 1200 def getAppointments(self, dents="ALL"): ''' get the appointments for the date. ''' self._snos = None working_dents = [] for dent in localsettings.activedents + localsettings.activehygs: apptix = localsettings.apptix[dent] if dents == "ALL" or apptix in dents: working_dents.append(apptix) if dents != "ALL": for dent in working_dents[:]: if dent not in dents: working_dents.remove(dent) self.workingDents = tuple(working_dents) self.appointments = allAppointmentData(self.date, self.workingDents) def dentAppointments(self, dent, ignore_emergency=False, busy_serialno=None): ''' return only appointments for the specified dent if a busy_serialno is given, then this will check to see if the pt has an appointment already, and insert it (invisibly) into every book ''' for app in self.appointments: if app.apptix == dent: if not ignore_emergency: pass elif app.serialno == 0 and app.name.lower() == "emergency": continue yield app elif app.serialno == busy_serialno: yield app def slots(self, minlength, ignore_emergency=False, dents=None, busy_serialno=None): ''' return slots for this day if a busy_serialno is given, then slots will allow for the fact that the patient is elsewhere. ''' slotlist = [] if dents is None: dents = self.workingDents for dent in dents: if self.inOffice.get(dent, False): start_time = self.getStart(dent) if self.date == localsettings.currentDay(): curr_time = localsettings.pyTimetoWystime( localsettings.currentTime()) if curr_time > start_time: start_time = curr_time appt_times_list = [] for app in self.dentAppointments(dent, ignore_emergency, busy_serialno): appt_times_list.append((app.start, app.end)) slotlist += slots(self.date, dent, start_time, sorted(appt_times_list), self.getEnd(dent)) return getLengthySlots(slotlist, minlength) def insert_double_block(self, apr_appointment): ''' if the user is looking for an appointment which abuts the one given as an arugment, a block should be inserted into all other books ''' LOGGER.debug("inserting appointment into DayAppointmentData %s", apr_appointment) for dent in self.workingDents: if dent == apr_appointment.dent: continue block = apr_appointment.to_block() block.apptix = dent self.appointments.insert(0, block) self.appointments.sort(key=lambda x: x.start) self.appointments.sort(key=lambda x: x.apptix) @property def serialnos(self): if self._snos is None: self._snos = set() for app in self.appointments: self._snos.add(app.serialno) try: self._snos.remove(0) except KeyError: pass return self._snos class DentistDay(object): ''' a small class to store data about a dentist's day ''' start = 830 end = 1800 flag = False memo = "" def __init__(self, apptix=0): self.date = datetime.date.today() self.ix = apptix self.initials = localsettings.apptix_reverse.get(apptix, "???") # a boolean showing if day is in use? (stored as a tiny int though) def __repr__(self): retarg = "DentistDay %s %s %s %s - %s '%s'" % ( self.initials, "IN" if self.flag else "FALSE", self.date, self.start, self.end, self.memo) return retarg def length(self): ''' return the length of the working day (in minutes) ''' time1 = localsettings.minutesPastMidnight(self.start) time2 = localsettings.minutesPastMidnight(self.end) return time2 - time1 @property def start_mpm(self): return localsettings.minutesPastMidnight(self.start) @property def end_mpm(self): return localsettings.minutesPastMidnight(self.end) class PrintableAppointment(object): ''' a class to store data used when printing a daylist ''' def __init__(self): self.start = 0 self.end = 0 self.name = "" self.serialno = 0 self.treat = "" self.note = "" self.cset = "" self.mh_form_date = None @property def mh_form_required(self): if self.serialno < 1: return False if not self.mh_form_check_date: return True return (localsettings.currentDay() - self.mh_form_check_date).days > \ localsettings.MH_FORM_PERIOD def getStart(self): ''' returns the day start in format set by localsettings Human Time ''' return localsettings.wystimeToHumanTime(self.start) def setName(self, arg1, arg2): ''' sets the name to be displayed on the daylist example arg1="LUNCH" arg2="Wallace N" ''' name = arg2 if name is None: name = arg1 if name is not None and self.serialno != 0: name = name.title() if name is not None: self.name = name def setSerialno(self, arg): ''' set serialno ''' if arg is not None: self.serialno = arg def setTreat(self, arg): ''' set what is planned for the appointment ''' if arg is not None: self.treat = arg.strip() def setCset(self, arg): ''' cset is the TYPE of patient (P,N,I....) ''' if arg is not None: self.cset = arg def length(self): ''' returns the appointment length (in minutes) ''' time1 = localsettings.minutesPastMidnight(self.start) time2 = localsettings.minutesPastMidnight(self.end) return time2 - time1 def __repr__(self): return "%s %s %s %s %s %s %s %s" % ( self.start, self.end, self.name, self.serialno, self.treat, self.note, self.cset, self.length()) class AgendaData(object): def __init__(self): self._items = [] self._active_slot = None def add_appointment(self, adate, appt): date_time = datetime.datetime.combine( adate, localsettings.wystimeToPyTime(appt.start)) ag_appt = AgendaAppointment(date_time, appt.apptix, appt.length) ag_appt.text = str(appt) self._items.append(ag_appt) def add_slot(self, slot): self._items.append(slot) def items(self, start=None, finish=None): for item in sorted(self._items): yield item def set_active_slot(self, slot): self._active_slot = slot def to_html(self): text = '''
    ''' % localsettings.stylesheet for item in self.items(self): if self._active_slot and item == self._active_slot: text += '
  • %s
  • ' % item elif item.is_slot: text += '
  • %s
  • ' % item else: text += "
  • %s
  • " % item return text + "
" class Appointment(object): startcell = 0 endcell = 0 def __init__(self, args): (apptix, start, end, name, serialno, code0, code1, code2, note, flag0, flag1, flag2, flag3, timestamp, mh_date) = args self.apptix = apptix self.start = start self.end = end self.name = name self.serialno = serialno self.trt1 = code0 self.trt2 = code1 self.trt3 = code2 self.memo = note self.flag0 = flag0 self.cset = chr(flag1) self.flag2 = flag2 self.flag3 = flag3 self.timestamp = timestamp self.mh_form_check_date = mh_date @property def mh_form_required(self): if self.serialno < 1: return False if not self.mh_form_check_date: return True return (localsettings.currentDay() - self.mh_form_check_date).days > \ localsettings.MH_FORM_PERIOD def __repr__(self): return "Appointment %s %s %s %s %s %s %s %s %s %s" % ( self.serialno, self.apptix, self.start, self.end, self.name, self.trt1, self.trt2, self.trt3, self.memo, self.mh_form_check_date) @property def length(self): return localsettings.minutesPastMidnight(self.end) - \ localsettings.minutesPastMidnight(self.start) def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): try: return (self.serialno == other.serialno and self.apptix == other.apptix and self.start == other.start and self.end == other.end) except AttributeError: return False def slots(adate, apptix, start, apdata, fin): ''' takes data like 830 ((830, 845), (900, 915), (1115, 1130), (1300, 1400), (1400, 1420), (1600, 1630)) 1800 and returns a tuple of results like (FreeSlot, FreeSlot, ....) ''' # -slotlength is required appt length, in minutes # - modified this on 18_11_2009, for the situation when a clinician's day # - start may be later than any first appointment in that book # - this facilitates having lunch etc.. already in place for a non used # - day. aptstart = localsettings.minutesPastMidnight(start) dayfin = localsettings.minutesPastMidnight(fin) if dayfin <= aptstart: return () results = [] for ap in apdata: sMin = localsettings.minutesPastMidnight(ap[0]) fMin = localsettings.minutesPastMidnight(ap[1]) slength = sMin - aptstart if slength > 0: date_time = datetime.datetime.combine( adate, localsettings.minutesPastMidnightToPyTime(aptstart)) slot = FreeSlot(date_time, apptix, slength) results.append(slot) if fMin > aptstart: aptstart = fMin if aptstart >= dayfin: break slength = dayfin - aptstart if slength > 0: date_time = datetime.datetime.combine( adate, localsettings.minutesPastMidnightToPyTime(aptstart)) slot = FreeSlot(date_time, apptix, slength) results.append(slot) return results def getLengthySlots(slots, length): ''' sort through the list of slots, and filter out those with inadequate length ''' retlist = [] now = datetime.datetime.now() for slot in slots: if slot.length >= length and slot.finish_time > now: retlist.append(slot) return retlist def updateAday(date_, data): ''' takes an instance of the workingDay class and updates the database ''' db = connect() cursor = db.cursor() query = '''insert into aday (memo, adate, apptix, start, end, flag) values (%s,%s, %s, %s, %s, %s) on duplicate key update memo=%s, adate=%s, apptix=%s, start=%s, end=%s, flag=%s''' values = (data.memo, date_, data.apptix, data.sqlStart(), data.sqlFinish(), data.active) * 2 n_rows = cursor.execute(query, values) return n_rows def todays_patients(dents): ''' get todays patients for dents supplied as a tuple such as (4,5) or (0,) for all used to populate the combobox on the front page ''' db = connect() cursor = db.cursor() if 0 in dents: cond = "" values = (localsettings.currentDay(),) else: cond = "and (" + "apptix=%s or " * (len(dents) - 1) + "apptix=%s )" values = (localsettings.currentDay(),) + dents query = 'SELECT serialno,name FROM aslot WHERE adate=%s ' + cond + \ ' and serialno!=0 ORDER BY name' cursor.execute(query, values) rows = cursor.fetchall() cursor.close() return rows def getWorkingDents(adate, dents=(0,), include_non_working=True): ''' dentists are part time, or take holidays...this proc takes a date, and optionally a tuple of dents then checks to see if they are flagged as off that day ''' db = connect() cursor = db.cursor() if 0 in dents: cond = "AND apptix != 0 " values = (adate,) else: cond = "and (" + "apptix=%s or " * (len(dents) - 1) + "apptix=%s ) " values = (adate,) + dents if not include_non_working: cond += " AND (flag=1 or flag=2)" query = 'SELECT apptix,start,end,memo,flag FROM aday WHERE adate=%s ' \ + cond cursor.execute(query, values) rows = cursor.fetchall() cursor.close() # originally I just return the rows here... for apptix, start, end, memo, flag in rows: d_day = DentistDay(apptix) d_day.start = start d_day.end = end d_day.memo = memo d_day.flag = bool(flag) yield d_day def getAllClinicians(adate): ''' returns a list of all active clinical books. ''' wds = list(getWorkingDents(adate)) start = DentistDay.start end = DentistDay.end for wd in wds: if start < wd.start: start = wd.start if end > wd.end: end = wd.end for dent in localsettings.activedent_ixs + localsettings.activehyg_ixs: found = False for wd in wds: found = wd.ix == dent if found: yield wd break if not found: d_day = DentistDay(dent) yield d_day def getDayInfo(startdate, enddate, dents=()): ''' get any day memo's for a range of dents and tuple of dentists if month = 0, return all memos for the given year useage is getDayInfo(pydate,pydate,(1,4)) start date is inclusive, enddate not so ''' dents = (0,) + dents cond = "and (" + "apptix=%s or " * (len(dents) - 1) + "apptix=%s ) " query = '''SELECT adate, apptix, start, end, memo, flag FROM aday WHERE adate>=%s AND adate<%s ''' + cond values = (startdate, enddate) + dents db = connect() cursor = db.cursor() cursor.execute(query, values) rows = cursor.fetchall() cursor.close() data = {} for adate, apptix, start, end, memo, flag in rows: key = "%d%02d" % (adate.month, adate.day) dent = DentistDay(apptix) dent.start = start dent.end = end dent.memo = memo dent.flag = bool(flag) if key in data: data[key].append(dent) else: data[key] = [dent] return data def getBankHol(adate): ''' get Bank Hol for one specific date ''' db = connect() cursor = db.cursor() query = '''SELECT memo FROM calendar WHERE adate=%s''' retarg = "" try: cursor.execute(query, (adate, )) rows = cursor.fetchall() cursor.close() for row in rows: retarg += "%s " % row except ProgrammingError: # no bank holiday table - old schema. LOGGER.warning("bank holiday table not found") retarg = "couldn't get Bank Holiday details" return retarg def getMemos(adate): ''' get Memos for one specific date ''' db = connect() cursor = db.cursor() query = '''SELECT apptix, memo FROM aday WHERE adate=%s''' cursor.execute(query, (adate, )) dict_ = {} for apptix, memo in cursor.fetchall(): dict_[apptix] = memo cursor.close() return dict_ def getGlobalMemo(date): ''' get global memo for one specific date ''' db = connect() cursor = db.cursor() query = '''SELECT memo FROM aday WHERE adate=%s and apptix=0''' cursor.execute(query, (date, )) rows = cursor.fetchall() cursor.close() retarg = "" for row in rows: retarg += "%s " % row return retarg def getBankHols(startdate, enddate): ''' useage is getBankHols(pydate,pydate) start date is inclusive, enddate not so ''' db = connect() cursor = db.cursor() query = '''SELECT adate, memo FROM calendar WHERE memo!="" AND adate>=%s AND adate<%s''' data = {} try: cursor.execute(query, (startdate, enddate)) rows = cursor.fetchall() cursor.close() for row in rows: key = "%d%02d" % (row[0].month, row[0].day) data[key] = row[1] except ProgrammingError: # no bank holiday table - old schema. LOGGER.warning("bank holiday table not found") return data def setMemos(adate, memos): ''' updates the aday table with memos useage is setMemos(pydate, ((4, "NW not working"),(5, "BW is"))) ''' LOGGER.debug("setting memos %s", memos) db = connect() cursor = db.cursor() query = '''insert into aday (memo, adate, apptix, start, end) values (%s,%s, %s, %s, %s) on duplicate key update memo=%s''' start = localsettings.pyTimetoWystime(localsettings.earliestStart) end = localsettings.pyTimetoWystime(localsettings.latestFinish) for apptix, memo in memos: values = (memo, adate, apptix, start, end, memo) cursor.execute(query, values) cursor.close() def get_appt_note(sno, adate, atime, dentist): db = connect() cursor = db.cursor() query = '''select note from aslot where serialno=%s and adate=%s and apptix=%s and start=%s''' values = (sno, adate, dentist, atime) cursor.execute(query, values) rows = cursor.fetchall() cursor.close() if len(rows) != 1: return ("", False) note = rows[0][0] return (note, True) def set_appt_note(sno, adate, atime, dentist, note): db = connect() cursor = db.cursor() query = '''update aslot set note=%s where serialno=%s and adate=%s and apptix=%s and start=%s''' values = (note, sno, adate, dentist, atime) cursor.execute(query, values) query = '''update apr set note=%s where serialno=%s and adate=%s and practix=%s and atime=%s''' cursor.execute(query, values) cursor.close() db.commit() def setPubHol(adate, arg): ''' updates the aday table with memos useage is pubHol(pydate, "Christmas Day") ''' LOGGER.debug("updating pubHol %s", arg) db = connect() cursor = db.cursor() if arg == "": query = 'delete from calendar where adate = %s' values = (adate,) else: query = '''insert into calendar (adate, memo) values (%s,%s) on duplicate key update memo=%s''' values = (adate, arg, arg) cursor.execute(query, values) cursor.close() def allAppointmentData(adate, dents=()): ''' this gets appointment data for a specifc date and dents 2nd arg will frequently be provided by getWorkingDents(adate) ''' if dents == (): query = APPOINTMENT_QUERY % "" else: query = APPOINTMENT_QUERY % ( "and (%s)" % " or ".join(["apptix=%s" for d in dents]) ) db = connect() cursor = db.cursor() values = (adate,) + dents cursor.execute(query, values) appts = [] for row in cursor.fetchall(): appt = Appointment(row) appts.append(appt) cursor.close() return appts def convertResults(results): ''' changes our queries to an iterable of WeekViewAppointment ''' for start, end, serialno, name, cset, trt in results: aow = WeekViewAppointment() aow.mpm = localsettings.minutesPastMidnight(start) aow.length = localsettings.minutesPastMidnight(end) - aow.mpm aow.serialno = serialno aow.cset = chr(cset) aow.name = name aow.isBlock = (cset == "block") aow.isEmergency = \ aow.isBlock and aow.name.lower() == _("emergency").lower() aow.trt = trt.strip(" ") yield aow def printableDaylistData(adate, dent): ''' gets start,finish and booked appointments for this date ''' db = connect() cursor = db.cursor() query = '''SELECT start,end,memo FROM aday WHERE adate=%s and apptix=%s and (flag=1 or flag=2)''' values = (adate, dent) cursor.execute(query, values) daydata = cursor.fetchall() retlist = [] if daydata != (): # -dentist is working!! # -add any memo retlist.append(daydata[0][2]) dayend = daydata[0][1] # -now get data for those days so that we can find slots within cursor.execute(APPOINTMENTS_QUERY, values) results = cursor.fetchall() current_apttime = daydata[0][0] if results: for row in results: pa = PrintableAppointment() pa.start = row[0] pa.end = row[1] pa.setSerialno(row[4]) # --do this BEFORE setting name pa.setName(row[2], row[3]) pa.setTreat(row[5]) pa.note = row[6] pa.setCset(row[7]) pa.mh_form_check_date = row[8] if current_apttime < pa.start: # -either a gap or a double appointment extra = PrintableAppointment() extra.start = current_apttime extra.end = pa.start # for length calc retlist.append(extra) retlist.append(pa) if current_apttime < pa.end: current_apttime = pa.end if pa.end < dayend: last_pa = PrintableAppointment() last_pa.start = pa.end last_pa.end = dayend retlist.append(last_pa) cursor.close() # db.close() return retlist def day_summary(adate, dent): ''' gets start,finish and booked appointments for this date returned as (start,fin,appts) ''' db = connect() cursor = db.cursor() # -fist get start date and end date cursor.execute(DAY_TIMES_QUERY, (adate, dent)) daydata = cursor.fetchall() # now get data for those days if daydata == (): cursor.close() return () else: cursor.execute(DAY_SUMMARY_QUERY, (adate, dent)) appts = tuple(convertResults(cursor.fetchall())) cursor.close() return appts def getBlocks(adate, dent): ''' get emergencies and blocked bits for date,dent ''' db = connect() cursor = db.cursor() cursor.execute(BLOCKS_QUERY, (adate, dent)) results = cursor.fetchall() blocks = tuple(convertResults(results)) cursor.close() return blocks def getLunch(gbdate, dent): ''' get lunchtime for date,dent ''' values = (gbdate, dent) db = connect() cursor = db.cursor() cursor.execute(LUNCHES_QUERY, values) lunches = cursor.fetchall() cursor.close() return tuple(convertResults(lunches)) def clearEms(cedate): ''' a convenience function to remove all EMERGENCY apointments on day cedate ''' db = connect() cursor = db.cursor() number = 0 try: query = \ 'delete from aslot WHERE adate=%s and flag0=%s and name like %s' values = (cedate, -128, "%Emergency%") number = cursor.execute(query, values) db.commit() except Exception: LOGGER("exception in appointments module, clearEms") cursor.close() # db.close() return number def get_pts_appts(pt, printing=False): ''' gets appointments from the apr table which stores appointments from patients perspective (including appts which have yet to be scheduled) ''' sno = pt.serialno name = pt.fname + " " + pt.sname db = connect() cursor = db.cursor() # why is aprix added to the sort here? concat of NULL and NULL led to # occasional irregularities query = ''' SELECT serialno, aprix, practix, code0, code1, code2, note, adate, atime, length, datespec FROM apr WHERE serialno=%%s %s ORDER BY concat(adate, lpad(atime,4,0)), aprix''' % ( "and adate>=date(NOW())" if printing else "") cursor.execute(query, (sno,)) rows = cursor.fetchall() # return rows data = [] cursor.close() for row in rows: appt = APR_Appointment() appt.serialno = row[0] appt.aprix = row[1] appt.name = name if pt.cset == "M": appt.cset = "I" else: appt.cset = pt.cset[0] appt.dent = row[2] appt.date = row[7] appt.atime = row[8] appt.length = row[9] appt.memo = row[6] appt.trt1 = row[3] appt.trt2 = row[4] appt.trt3 = row[5] appt.datespec = row[10] appt.past_or_present() data.append(appt) return data def has_unscheduled(serialno): ''' return a boolean as to whether the patient has unscheduled appointments ''' db = connect() cursor = db.cursor() query = "select count(*) from apr where serialno=%s and adate is NULL" cursor.execute(query, (serialno,)) rows = cursor.fetchall() cursor.close() result = rows[0][0] != 0 LOGGER.debug("appointments.has_unscheduled is returning %s", result) return result def add_pt_appt(serialno, practix, length, code0, aprix=-1, code1="", code2="", note="", datespec="", ctype="P", flag0=1, flag2=0, flag3=0, flag4=0): ''' modifies the apr table (patients diary) by adding an appt ''' # -if the patients course type isn't present, # -we will have issues later if ctype == "" or ctype is None: flag1 = 32 else: flag1 = ord(ctype[0]) if code0 is None: code0 = "" if code1 is None: code1 = "" if code2 is None: code2 = "" if note is None: note = "" if datespec is None: datespec = "" db = connect() cursor = db.cursor() try: if aprix == -1: # -this means put the appointment at the end fullquery = 'SELECT max(aprix) FROM apr WHERE serialno=%s' cursor.execute(fullquery, (serialno,)) data = cursor.fetchall() currentMax = data[0][0] if currentMax: aprix = currentMax + 1 else: aprix = 1 query = '''INSERT INTO apr (serialno,aprix,practix,code0,code1,code2, note,length,flag0,flag1,flag2,flag3,flag4,datespec) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)''' values = (serialno, aprix, practix, code0, code1, code2, note, length, flag0, flag1, flag2, flag3, flag4, datespec) cursor.execute(query, values) db.commit() result = aprix except Exception: LOGGER.exception("exception in appointments.add_pt_appt ") result = False cursor.close() # db.close() return result def modify_pt_appt(aprix, serialno, practix, length, code0, code1="", code2="", note="", datespec="", flag1=80, flag0=1, flag2=0, flag3=0, flag4=0): ''' modifies the apr table by updating an existing appt ''' db = connect() cursor = db.cursor() values = (practix, code0, code1, code2, note, length, flag0, flag1, flag2, flag3, flag4, datespec, serialno, aprix) result = True try: cursor.execute(MODIFY_APPOINTMENT_QUERY, values) db.commit() except Exception: LOGGER.exception("exception in appointments.modify_pt_appt ") LOGGER.debug(MODIFY_APPOINTMENT_QUERY) LOGGER.debug(values) result = False cursor.close() # db.close() return result def pt_appt_made(serialno, aprix, date, time, dent): ''' modifies the apr table, finding the unscheduled version and putting scheduled data in ''' db = connect() cursor = db.cursor() result = True try: fullquery = '''UPDATE apr SET adate=%s, atime=%s, practix=%s WHERE serialno=%s AND aprix=%s''' values = (date, time, dent, serialno, aprix) cursor.execute(fullquery, values) db.commit() except Exception: LOGGER.exception("exception in appointments.pt_appt_made ") result = False cursor.close() # db.close() return result def make_appt(make_date, apptix, start, end, name, serialno, code0, code1, code2, note, flag0, flag1, flag2, flag3): ''' this makes an appointment in the aslot table a trigger in the mysql database checks to see if the appointment clashes with any already made (useful in multi client setups!) ''' db = connect() cursor = db.cursor() values = (make_date, apptix, start, end, name, serialno, code0, code1, code2, note, flag0, flag1, flag2, flag3) result = False try: result = cursor.execute(INSERT_APPT_QUERY, values) except OperationalError: LOGGER.exception("couldn't insert into aslot %s %s %s serialno %d", make_date, apptix, start, serialno) cursor.close() return result def cancel_emergency_slot(a_date, apptix, a_start, a_end): ''' cancel any emergency slots which fall within this appointment ''' db = connect() cursor = db.cursor() query = '''delete from aslot where adate=%s and apptix=%s and name="emergency" and start>=%s and start<=%s ''' values = (a_date, apptix, a_start, a_end) rows = cursor.execute(query, values) LOGGER.warning("deleted %d emergency slots" % rows) cursor.close() return rows > 0 def fill_appt(bldate, apptix, start, end, bl_start, bl_end, reason, pt): ''' this is the procedure called when making an appointment via clicking on a free slot in a DAY view. ''' # 1st check the block is free slots = future_slots(bldate, bldate, (apptix,)) date_time = datetime.datetime.combine(bldate, start) block_length = (localsettings.pyTimeToMinutesPastMidnight(end) - localsettings.pyTimeToMinutesPastMidnight(start)) this_slot = FreeSlot(date_time, apptix, block_length) # - check block still available!! found = False for slot in slots: if slot == this_slot: found = True break if not found: return False name = "%s %s *" % (pt.fname, pt.sname) try: cset = ord(pt.cset[0]) except Exception: LOGGER.debug("couldn't get an ordinal from %s", pt.cset) cset = 0 make_appt(bldate, apptix, localsettings.pyTimetoWystime(bl_start), localsettings.pyTimetoWystime(bl_end), name, pt.serialno, reason, "", "", "", 1, cset, 0, 0) block_length = (localsettings.pyTimeToMinutesPastMidnight(bl_end) - localsettings.pyTimeToMinutesPastMidnight(bl_start)) aprix = add_pt_appt(pt.serialno, apptix, block_length, reason) LOGGER.debug("adjust pt diary") return pt_appt_made(pt.serialno, aprix, bldate, localsettings.pyTimetoWystime(bl_start), apptix) def block_appt(bldate, apptix, start, end, bl_start, bl_end, reason): ''' put a block in the book, with text set as reason ''' # 1st check the block is free slots = future_slots(bldate, bldate, (apptix,)) date_time = datetime.datetime.combine(bldate, start) block_length = (localsettings.pyTimeToMinutesPastMidnight(end) - localsettings.pyTimeToMinutesPastMidnight(start)) this_slot = FreeSlot(date_time, apptix, block_length) # - check block still available!! found = False for slot in slots: if slot == this_slot: found = True break if not found: return False db = connect() cursor = db.cursor() query = '''INSERT INTO aslot (adate, apptix, start, end, name, serialno, code0, code1, code2, note, flag0, flag1, flag2, flag3) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)''' values = (bldate, apptix, localsettings.pyTimetoWystime(bl_start), localsettings.pyTimetoWystime(bl_end), reason, 0, "", "", "", "", -128, 0, 0, 0) if cursor.execute(query, values): # - insert call.. so this will always be true unless we have key # - value errors? db.commit() result = True else: LOGGER.warning("couldn't insert into aslot %s %s %s", bldate, apptix, start) result = False cursor.close() return result def modify_aslot_appt(moddate, apptix, start, serialno, code0, code1, code2, note, flag1, flag0, flag2, flag3): ''' this modifies an appointment in the aslot table ''' db = connect() cursor = db.cursor() changes = '''code0="%s",code1="%s",code2="%s",note="%s",flag0=%d, flag1=%d,flag2=%d,flag3=%d''' % ( code0, code1, code2, note, flag0, flag1, flag2, flag3) query = '''update aslot set %s where adate=%%s and apptix=%%s and start=%%s and serialno=%%s''' % changes values = (moddate, apptix, start, serialno) try: cursor.execute(query, values) db.commit() result = True except Exception: LOGGER.exception("couldn't modify aslot %s %s %s serialno %s", moddate, apptix, start, serialno) result = False cursor.close() # db.close() return result def delete_appt_from_apr(appt): ''' this deletes an appointment from the apr table ''' db = connect() cursor = db.cursor() result = False query = '''DELETE FROM apr WHERE serialno=%s AND practix=%s ''' values = [appt.serialno, appt.dent] if appt.aprix != "UNKNOWN": query += 'AND aprix=%s' values.append(appt.aprix) else: if appt.date is None: query += ' and adate is NULL' else: query += ' and adate =%s' values.append(appt.date) if appt.atime is None: query += ' and atime is NULL' else: query += ' and atime =%s' values.append(appt.atime) try: result = cursor.execute(query, tuple(values)) db.commit() except Exception: LOGGER.exception("exception in appointments.delete_appt_from_apr") cursor.close() return result def made_appt_to_proposed(appt): ''' modifies the apr table, when an appointment has been postponed, but not totally cancelled ''' db = connect() cursor = db.cursor() result = False if appt.aprix == "UNKNOWN": query = '''select aprix from apr WHERE serialno=%s AND adate=%s and practix=%s and atime=%s ''' values = (appt.serialno, appt.date, appt.dent, appt.atime) if not cursor.execute(query, values): LOGGER.warning("unable to get aprix from apr for %s", appt) return False appt.aprix = cursor.fetchone()[0] query = '''UPDATE apr SET adate=NULL, atime=NULL WHERE serialno=%s AND aprix=%s''' values = (appt.serialno, appt.aprix) try: result = cursor.execute(query, values) db.commit() except Exception: LOGGER.exception("appointments.made_appt_to_proposed") cursor.close() return result def delete_appt_from_aslot(appt): # -delete from the appointment book proper result = True db = connect() cursor = db.cursor() result = False try: values = (appt.date, appt.serialno, appt.dent, appt.atime) LOGGER.debug("deleting appointment %s", values) if cursor.execute(DELETE_APPOINTMENT_QUERY, values): result = True except Exception: LOGGER.exception("appointments.delete_appt_from_aslot") cursor.close() return result def future_slots(startdate, enddate, dents, busy_serialno=None, override_emergencies=False): ''' get a list of possible appointment positions (between startdate and enddate) that can be offered to the patient ''' if len(dents) == 0: return () db = connect() cursor = db.cursor() values = [startdate, enddate] + list(dents) format_dents = ",".join(('%s',) * len(dents)) # %s, %s, %s fullquery = '''SELECT adate, apptix, start, end FROM aday WHERE adate>=%%s AND adate<=%%s AND (flag=1 OR flag= 2) AND apptix in (%s) ORDER BY adate''' % format_dents cursor.execute(fullquery, values) possible_days = cursor.fetchall() cursor.close() cursor = db.cursor() # -get days when a suitable appointment is possible # -flag0!=72 necessary to avoid zero length apps like pain/double/fam query = '''select start, end from aslot where adate = %%s and (apptix = %%s %s) and flag0!=72 %s order by start ''' % ('' if busy_serialno is None else 'or serialno=%s', ' and name!="emergency" ' if override_emergencies else '') slotlist = [] # -now get data for those days so that we can find slots within for day in possible_days: adate, apptix, daystart, dayfin = day values = (adate, apptix) if busy_serialno is None else ( adate, apptix, busy_serialno) cursor.execute(query, values) results = cursor.fetchall() slotlist += slots(adate, apptix, daystart, results, dayfin) cursor.close() return slotlist if __name__ == "__main__": ''' test procedures...... ''' class duckPt(object): def __init__(self): self.serialno = 1 self.sname = "Neil" self.fname = "Wallace" self.cset = "P" LOGGER.setLevel(logging.DEBUG) localsettings.initiate() testdate = datetime.date(2015, 6, 1) d_a_d = DayAppointmentData() d_a_d.setDate(testdate) d_a_d.getAppointments((4,)) print("RESULTS") print("\tWORKING DENTS:\n\t%s" % str(d_a_d.workingDents)) print("\tAPPOINTMENTS:") for appt_ in d_a_d.appointments: print("\t\t%s" % str(appt_)) print("\tSLOTS:") for slot_ in d_a_d.slots(30): print("\t\t%s" % slot_) print("\tSLOTS (ignoring emergencies):") for slot_ in d_a_d.slots(15, ignore_emergency=True): print("\t\t%s" % slot_) cancel_emergency_slot(testdate, 4, 1130, 1210) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/appt_prefs.py0000644000175000017500000001211512726006653023701 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from openmolar import connect LOGGER = logging.getLogger("openmolar") # NOTE - the appt_prefs table has unused columns at this point! QUERY = '''SELECT recall_active, recdent_period, recdent, rechyg_period, rechyg, recall_method, note from appt_prefs where serialno = %s''' UPDATE_QUERY = '''replace into appt_prefs (serialno, recall_active, recdent_period, recdent, rechyg_period, rechyg, recall_method, note) values (%s,%s,%s,%s,%s,%s,%s,%s) ''' class ApptPrefs(object): ''' has a tiny percentage of the footprint (and loading time) of the main patient class ''' recall_active = False note = "" def __init__(self, sno): ''' initiate the class with default variables, then load from database ''' self.serialno = sno self.recdent_period = None self.recdent = None self.rechyg_period = None self.rechyg = None self.recall_method = None self.note = "" self.recall_active = False db = connect.connect() cursor = db.cursor() cursor.execute(QUERY, (self.serialno,)) row = cursor.fetchone() if not row: return (self.recall_active, self.recdent_period, self.recdent, self.rechyg_period, self.rechyg, self.recall_method, self.note) = row if self.note is None: self.note = "" if self.recall_active is None: self.recall_active = False elif self.recdent is None and self.rechyg is None: self.recall_active = False def update_recdent(self): if not self.recall_active: return self.recdent = self.new_recdent @property def new_recdent(self): if self.recdent_period is None: self.recdent_period = 6 return QtCore.QDate.currentDate().addMonths( self.recdent_period).toPyDate() def commit_changes(self): LOGGER.debug("ApptPrefs committing changes") values = ( self.serialno, self.recall_active, self.recdent_period, self.recdent, self.rechyg_period, self.rechyg, self.recall_method, self.note ) db = connect.connect() cursor = db.cursor() cursor.execute(UPDATE_QUERY, values) cursor.close() def __repr__(self): return self.__str__() def __str__(self): return "%s %s %s %s %s %s %s %s" % (self.serialno, self.recdent_period, self.recdent, self.rechyg_period, self.rechyg, self.recall_method, self.note, self.recall_active) def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): return str(self) == str(other) def __ne__(self, other): return str(self) != str(other) if __name__ == "__main__": serialno = 1 prefs = ApptPrefs(serialno) for att in list(prefs.__dict__.keys()): print(att, prefs.__dict__[att]) prefs2 = ApptPrefs(serialno) print(prefs == prefs2) print(prefs != prefs2) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/brief_patient.py0000644000175000017500000001065712710144045024351 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings from openmolar.dbtools.queries import MED_FORM_QUERY from openmolar.dbtools.appt_prefs import ApptPrefs LOGGER = logging.getLogger("openmolar") QUERY = '''SELECT title, fname, sname, dob, cset, dnt1, dnt2 from new_patients where serialno = %s''' QUERY2 = 'select note from appt_prefs where serialno=%s' class BriefPatient(object): ''' has a tiny percentage of the footprint (and loading time) of the main patient class ''' sno = 0 fname = "" sname = "" dob = None cset = "" dnt1 = None dnt2 = None _appt_memo = None _appt_prefs = None _mh_form_date = None def __init__(self, sno): ''' initiate the class with default variables, then load from database ''' if sno <= 0: raise localsettings.PatientNotFoundError self.serialno = sno db = connect.connect() cursor = db.cursor() cursor.execute(QUERY, (sno,)) row = cursor.fetchone() if not row: raise localsettings.PatientNotFoundError self.title, self.fname, self.sname, \ self.dob, self.cset, self.dnt1, self.dnt2 = row @property def name_id(self): return "%s %s %s - %s" % ( self.title, self.fname, self.sname, self.serialno) @property def appt_memo(self): if self._appt_memo is None: db = connect.connect() cursor = db.cursor() if cursor.execute(QUERY2, (self.serialno,)): self._appt_memo = cursor.fetchone()[0] cursor.close() if self._appt_memo is None: self._appt_memo = "" return self._appt_memo def set_appt_memo(self, memo): LOGGER.debug("BriefPatient.set_appt_memo(%s" % memo) db = connect.connect() cursor = db.cursor() query = 'replace into appt_prefs (serialno, note) values (%s, %s)' cursor.execute(query, (self.serialno, memo)) cursor.close() @property def appt_prefs(self): if self._appt_prefs is None: self._appt_prefs = ApptPrefs(self.serialno) return self._appt_prefs @property def mh_form_date(self): if self._mh_form_date is None: db = connect.connect() cursor = db.cursor() cursor.execute(MED_FORM_QUERY, (self.serialno,)) try: self._mh_form_date = cursor.fetchone()[0] except TypeError: pass cursor.close() return self._mh_form_date if __name__ == "__main__": import sys try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 11956 pt = BriefPatient(serialno) for att in list(pt.__dict__.keys()): print(att, pt.__dict__[att]) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/calldurr.py0000644000175000017500000000457212710144045023345 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module contains one function - "commit" An Openmolar database contains a table called "calldurr" this table is updated whenever a record is loaded by a machine in surgery mode. The use case for this at the Academy Dental Practice was a standalone application was written to let our XRay imaging system (DBSWIN) know which images to display in each surgery. ''' from openmolar import connect QUERY = "update calldurr set serialno=%s where stn=%s" def commit(serialno, surgeryno): ''' updates the calldurr database table. ''' db = connect.connect() values = (serialno, surgeryno) cursor = db.cursor() result = cursor.execute(QUERY, values) if result: db.commit() cursor.close() return result if __name__ == "__main__": print(commit(24, 1)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/cashbook.py0000644000175000017500000002124612710144045023323 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This modules provides functions that read and write to the cashbook table of the database ''' import logging import functools from openmolar.settings import localsettings from openmolar.connect import connect LOGGER = logging.getLogger("openmolar") # this variable allows HISTORIC cashbook entries to be altered (by supervisor) full_edit = False def viewitems(obj): ''' provides 2.7 functionality for 2.6 and under ''' for key in list(obj.keys()): yield (key, obj[key]) class CashBookCodesDict(dict): ''' A dictionary of cashbookCodes called at module initialisation ''' def __init__(self): dict.__init__(self) self.get_values() try: self.viewitems except AttributeError: # patched for python <2.7 self.viewitems = functools.partial(viewitems, self) def get_values(self): db = connect() cursor = db.cursor() try: query = "select code,descr from cbcodes where flag>1" cursor.execute(query) rows = cursor.fetchall() for row in rows: self[int(row[0])] = row[1] LOGGER.debug("cashbook codes loaded successfully") except Exception as exc: LOGGER.exception("error loading cashbook codes") finally: cursor.close() def paymenttaken(sno, name, dent, csetyp, cash, cheque, card, sundry_cash, sundry_cheque, sundry_card, hdp, other, refund): ''' called when a payment has been taken at the desk ''' if csetyp[:1] == "N": codes = (1, 3, 5, 14, 15, 17, 21, 24, 125) else: codes = (2, 4, 6, 14, 15, 17, 21, 24, 125) queries = [] for i, amount in enumerate( (cash, cheque, card, sundry_cash, sundry_cheque, sundry_card, hdp, other, refund) ): if amount != 0: queries.append(''' insert into cashbook set cbdate = date(NOW()), ref="%06d", linkid=0, descr="%s", code=%d, dntid=%d, amt=%d ''' % (sno, name, codes[i], dent, amount)) if queries != []: db = connect() cursor = db.cursor() dbOK = True for query in queries: dbOK = dbOK and cursor.execute(query) db.commit() cursor.close() # db.close() return dbOK def details(dent, startdate, enddate, treatment_only=False, sundries_only=False): ''' retrns an html version of the cashbook table ''' db = connect() cursor = db.cursor() # note - len(headers) is used writing out the html headers = ("cbdate", "Serial NO", "Dentist", "Patient", "code", "cash", "cheque", "card", "unknown", "amt") if full_edit or (startdate.toPyDate() <= localsettings.currentDay() <= enddate.toPyDate()): headers += ("edit",) if dent == "*ALL*": cond1 = "" dentist = "All Dentists" else: dentist = localsettings.ops_reverse[str(dent)] cond1 = 'dntid="%s" and ' % dentist restriction_header = "" if treatment_only: cond1 += "(code < 10 or code > 123) and " restriction_header = "TREATMENT ONLY" elif sundries_only: cond1 += "code >=14 and code <= 18 and " restriction_header = "SUNDRIES ONLY" else: restriction_header = "ALL PAYMENTS" #-- note - mysqldb doesn't play nice with DATE_FORMAT #-- hence the string is formatted entirely using python formatting query = '''select DATE_FORMAT(cbdate, '%s'), ref, dntid, descr, code, amt, cbdate, id from cashbook where %s cbdate>='%s' and cbdate<='%s' order by cbdate''' % ( localsettings.OM_DATE_FORMAT, cond1, startdate.toPyDate(), enddate.toPyDate()) cursor.execute(query) rows = cursor.fetchall() retarg = "

Cashbook - " retarg += "%s - %s - %s (inclusive) - %s

" % (dentist, localsettings.formatDate( startdate.toPyDate( )), localsettings.formatDate( enddate.toPyDate()), restriction_header) retarg += '' for header in headers: retarg += "" % header retarg += '' odd = True total, cashTOT, chequeTOT, cardTOT, otherTOT = 0, 0, 0, 0, 0 for row in rows: if odd: retarg += '' odd = False else: retarg += '' odd = True #-- a row is (date,sno,dnt,patient,code,amount) retarg += '' % (row[0], row[1]) retarg += '' % localsettings.ops.get(row[2]) retarg += '' % row[3] CODE = localsettings.cashbookCodesDict.get(row[4]) retarg += '' % CODE amt = row[5] amt_str = localsettings.formatMoney(amt) if "CASH" in CODE: retarg += '' % amt_str cashTOT += amt retarg += "" * 3 elif "CHEQUE" in CODE: retarg += '' % amt_str chequeTOT += amt retarg += "" * 2 elif "CARD" in CODE: retarg += "" * 2 retarg += '' % amt_str cardTOT += amt retarg += "" else: retarg += "" * 3 retarg += '' % amt_str otherTOT += amt retarg += '' % amt_str if len(headers) == 11: if full_edit or row[6] == localsettings.currentDay(): retarg += '''''' % row[7] else: retarg += '\n' total += amt sum_text = "= %s + %s + %s + %s" % ( localsettings.pence_to_pounds(cashTOT), localsettings.pence_to_pounds(chequeTOT), localsettings.pence_to_pounds(cardTOT), localsettings.pence_to_pounds(otherTOT) ) retarg += '''''' % ( sum_text.replace("+ -", "- "), localsettings.formatMoney(cashTOT), localsettings.formatMoney(chequeTOT), localsettings.formatMoney(cardTOT), localsettings.formatMoney(otherTOT), localsettings.formatMoney(total)) retarg += '
%s
%s%s%s%s%s%s %s %s %s%s editn/a' retarg += '
%s TOTAL %s %s %s %s %s
' cursor.close() # db.close() return retarg if __name__ == "__main__": localsettings.initiate() print(localsettings.cashbookCodesDict) print(localsettings.cashbookCodesDict.items()) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/courseHistory.py0000644000175000017500000002363412710144045024417 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' a module to search for previous course items ''' import datetime import logging from openmolar.settings import localsettings from openmolar.connect import connect from openmolar.dbtools.treatment_course import TreatmentCourse from openmolar.dbtools import estimatesHistory from openmolar.dbtools import daybook from openmolar.ptModules.course_checker import CourseChecker LOGGER = logging.getLogger("openmolar") QUERY = '''SELECT courseno FROM currtrtmt2 WHERE serialno=%s ORDER BY courseno desc, accd desc''' ALLOW_EDIT = False def _get_courses(sno, current_csno): # query allows exclusion of current course. if current_csno is None: query = QUERY values = (sno,) else: query = QUERY.replace("ORDER", " AND courseno!=%s ORDER") values = (sno, current_csno) db = connect() cursor = db.cursor() cursor.execute(query, values) rows = cursor.fetchall() cursor.close() for row in rows: yield TreatmentCourse(sno, row[0]) def details(sno, current_csno, include_estimates=False, include_daybook=False): ''' returns an html page showing pt's Treatment History along with estimates ''' courses = list(_get_courses(sno, current_csno)) estimates_list = estimatesHistory.getEsts(sno) if include_estimates else [] daybook_list = list(daybook.all_data(sno)) if include_daybook else [] daybook_course_guesses = {} displayed_ests = [] course_checker_errors = 0 html = "

%s - %d %s

" % ( _("Past Courses of Treatment"), len(courses), _("found") ) if current_csno is not None: html += "%s %s %s
" % ( _("Ignoring course number"), current_csno, _("as this is active") ) days_elapsed = None for i, course in enumerate(courses): course_html = course.to_html(ALLOW_EDIT, days_elapsed) course_ests = [] if include_estimates: est_table_init = False for est in estimates_list: if est.courseno == course.courseno: course_ests.append(est) if not est_table_init: header = est.htmlHeader() if estimatesHistory.ALLOW_EDIT: header = header.replace( "", estimatesHistory.EDIT_STRING % est.courseno) course_html += ( '%s ' % header) est_table_init = True course_html += est.toHtmlRow() if est_table_init: course_html += '
\n' else: course_html += "%s %d" % (_("no estimate found for courseno"), course.courseno) displayed_ests += course_ests if include_daybook: daybook_html = "" if course.accd is None: accd = datetime.date(1980, 1, 1) course_html += "%s
" % _( "Warning - No course acceptance date") else: accd = course.accd if course.cmpd is None: cmpd = datetime.date.today() course_html += "%s
" % _( "Warning - No course completion date, " "using today to gather daybook items.") else: cmpd = course.cmpd for daybook_entry in daybook_list: if accd <= daybook_entry.date <= cmpd: try: daybook_course_guesses[course.courseno].append( daybook_entry) except KeyError: daybook_course_guesses[ course.courseno] = [ daybook_entry] gap = cmpd - daybook_entry.date if daybook.ALLOW_TX_EDITS: id_col = '%s' % ( daybook_entry.id, _("Edit Tx")) else: id_col = str(daybook_entry.id) daybook_html += "%s" % ( " ".join( (localsettings.formatDate(daybook_entry.date), daybook_entry.coursetype, localsettings.ops.get(daybook_entry.dntid), localsettings.ops.get(daybook_entry.trtid, "-"), daybook_entry.diagn, daybook_entry.perio, daybook_entry.anaes, daybook_entry.misc, daybook_entry.ndu, daybook_entry.ndl, daybook_entry.odu, daybook_entry.odl, daybook_entry.other, daybook_entry.chart.decode( "utf8").strip(" %s" % chr(0)), localsettings.formatMoney(daybook_entry.feesa), localsettings.formatMoney(daybook_entry.feesb), id_col)) ) if daybook_html: header_rows = daybook.all_data_header() if course.cmpd is None: header_rows = header_rows.replace( "", _("Course is Ongoing")) elif gap.days != 0: header_rows = header_rows.replace( "", "%s %s %s" % (_("Course closed"), gap.days, _("days after last treatment"))) course_html += '%s%s
' % ( header_rows, daybook_html) else: course_html += "%s
" % _( "Course dates not found in daybook") if include_estimates and include_daybook: course_check = CourseChecker( course, course_ests, daybook_course_guesses.get(course.courseno, [])) if course_check.has_errors: course_checker_errors += 1 course_html += course_check.results course_html += '''
%s''' % ( course.courseno, _("Examine these Issues.")) days_elapsed = "" try: prev_course = courses[i + 1] if ALLOW_EDIT: merge_link = '
%s?' % ( course.courseno, prev_course.courseno, _("Merge with previous course") ) course_html = course_html.replace("", merge_link) days_elapsed = (course.accd - prev_course.cmpd).days except IndexError: days_elapsed = None except TypeError: pass finally: course_html += '


' html += course_html html += "" orphaned_html = "" i = 0 for est in estimates_list: if est not in displayed_ests and est.courseno != current_csno: if i == 0: orphaned_html += '''

%s %s

%s ''' % ( _("WARNING"), _("ORPHANED ESTIMATE DATA"), est.htmlHeader().replace("#ffff99", "red") ) orphaned_html += est.toHtmlRow() i += 1 if course_checker_errors: html = html.replace( "", "

%d %s

" % (course_checker_errors, _("Errors Found")) ) if i == 0: return html return html.replace("", "%s
%s
" % ( orphaned_html, _("This shouldn't happen!")) ) if __name__ == "__main__": # ALLOW_EDIT = True localsettings.initiate() print(details(27107, 0, True, True)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/daybook.py0000644000175000017500000003203512710144045023160 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides read/write tools for the daybook database table ''' from collections import namedtuple import logging from PyQt5 import QtCore from openmolar.settings import localsettings from openmolar import connect ALLOW_TX_EDITS = False LOGGER = logging.getLogger("openmolar") QUERY = '''insert into daybook (date, serialno, coursetype, dntid, trtid, diagn, perio, anaes, misc,ndu,ndl,odu,odl,other,chart,feesa,feesb,feesc) values (DATE(NOW()),%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)''' HASH_QUERY = 'insert into daybook_link (daybook_id, tx_hash) values (%s, %s)' INSPECT_QUERY = '''select description, fee, ptfee from newestimates join est_link2 on newestimates.ix = est_link2.est_id where tx_hash in (select tx_hash from daybook join daybook_link on daybook.id = daybook_link.daybook_id where id=%s)''' DETAILS_QUERY = '''select DATE_FORMAT(date,'%s'), daybook.serialno, concat (fname, " ", sname), coursetype, dntid, trtid, diagn, perio, anaes, misc, ndu, ndl, odu, odl, other, chart, feesa, feesb, feesc, id from daybook join new_patients on daybook.serialno = new_patients.serialno where {{DENT CONDITIONS}} date >= %%s and date <= %%s {{FILTERS}} order by date''' % ( localsettings.OM_DATE_FORMAT.replace("%", "%%")) DAYBOOK_QUERY = '''select date, coursetype, dntid, trtid, diagn, perio, anaes, misc, ndu, ndl, odu, odl, other, chart, feesa, feesb, feesc, id from daybook where serialno=%s order by date''' FIELD_NAMES_QUERY = ''' SELECT concat(table_name, ".", column_name) as fieldname FROM information_schema.columns WHERE table_schema="%s" AND (table_name='new_patients' or table_name="daybook") order by fieldname ''' % connect.params.db_name UPDATE_ROW_FEES_QUERY = "update daybook set feesa=%s, feesb=%s where id=%s" UPDATE_ROW_FEE_QUERY = "update daybook set feesa=%s where id=%s" UPDATE_ROW_PTFEE_QUERY = "update daybook set feesb=%s where id=%s" DELETE_ROW_QUERY = "delete from daybook where id=%s" TREATMENTS_QUERY = ('select diagn, perio, anaes, misc, ndu, ndl, ' 'odu, odl, other, chart from daybook where id = %s') UPDATE_TREATMENTS_QUERY = ('update daybook set diagn=%s, ' 'perio=%s, anaes=%s, misc=%s, ndu=%s, ndl=%s, ' 'odu=%s, odl=%s, other=%s, chart=%s where id = %s') # custom class for daybook data DaybookEntry = namedtuple( 'DaybookEntry', ('date', 'coursetype', 'dntid', 'trtid', 'diagn', 'perio', 'anaes', 'misc', 'ndu', 'ndl', 'odu', 'odl', 'other', 'chart', 'feesa', 'feesb', 'feesc', 'id') ) def add(sno, cset, dent, trtid, t_dict, fee, ptfee, tx_hashes): ''' add a row to the daybook table ''' if trtid in (0, None): LOGGER.warning("no clinician login - daybook will contain junk!") db = connect.connect() cursor = db.cursor() values = (sno, cset, dent, trtid, t_dict["diagn"], t_dict["perio"], t_dict["anaes"], t_dict["misc"], t_dict["ndu"], t_dict["ndl"], t_dict["odu"], t_dict["odl"], t_dict["other"], t_dict["chart"], fee, ptfee, 0) LOGGER.debug('updating daybook with the following values: ' '%s %s %s %s %s %s %s %s' % ( sno, cset, dent, trtid, t_dict, fee, ptfee, 0)) cursor.execute(QUERY, values) daybook_id = db.insert_id() for tx_hash in tx_hashes: LOGGER.debug("%s %s %s" % (HASH_QUERY, daybook_id, tx_hash)) cursor.execute(HASH_QUERY, (daybook_id, tx_hash)) cursor.close() def details(regdent, trtdent, startdate, enddate, filters=""): ''' returns an html table, for regdent, trtdent,startdate,enddate ''' dent_conditions = "" dents = [] try: if regdent != "*ALL*": dent_conditions = 'dntid=%s and ' dents.append(localsettings.ops_reverse[regdent]) if trtdent != "*ALL*": dent_conditions += 'trtid=%s and ' dents.append(localsettings.ops_reverse[trtdent]) except KeyError: print("Key Error - %s or %s unregconised" % (regdent, trtdent)) return '%s' % _( "Error - unrecognised practioner- sorry") total, nettotal = 0, 0 iterDate = QtCore.QDate(startdate.year(), startdate.month(), 1) retarg = '''

%s %s %s %s %s %s %s %s %s

''' % ( _("Patients of"), regdent, _("treated by"), trtdent, _("between"), localsettings.formatDate(startdate.toPyDate()), _("and"), localsettings.formatDate(enddate.toPyDate()), filters) retarg += '''''' db = connect.connect() cursor = db.cursor() query = DETAILS_QUERY.replace("{{DENT CONDITIONS}}", dent_conditions) query = query.replace("{{FILTERS}}", filters) while enddate >= iterDate: monthtotal, monthnettotal = 0, 0 if startdate > iterDate: queryStartDate = startdate else: queryStartDate = iterDate queryEndDate = iterDate.addMonths(1).addDays(-1) if enddate < queryEndDate: queryEndDate = enddate values = tuple( dents + [queryStartDate.toPyDate(), queryEndDate.toPyDate()]) cursor.execute(query, (values)) rows = cursor.fetchall() for i, row in enumerate(rows): retarg += '' if i % 2 else '' retarg += "" % row[0] try: retarg += '' % (row[1:4]) txs = [] for item in (6, 7, 8, 9, 10, 11, 12, 13, 14): if row[item]: txs.append(row[item]) txs.append(row[15].decode("utf8").strip(" %s" % chr(0))) if ALLOW_TX_EDITS: extra_link = ' / %s' % ( row[19], _("Edit Tx")) else: extra_link = "" retarg += '''''' % ( " ".join(txs), row[19], row[16], row[17], _("Ests"), extra_link, localsettings.formatMoney(row[16]), localsettings.formatMoney(row[17])) total += int(row[16]) monthtotal += int(row[16]) nettotal += int(row[17]) monthnettotal += int(row[17]) retarg += '''''' % ( localsettings.monthName(iterDate.toPyDate()), iterDate.year(), localsettings.formatMoney(monthtotal), localsettings.formatMoney(monthnettotal)) iterDate = iterDate.addMonths(1) cursor.close() # db.close() retarg += '''
DATE DentsSerial NumberName Pt TypeTreatment Gross FeeNet Fee
%s %s / ' % localsettings.ops[row[4]] except KeyError: retarg += "?? / " try: retarg += localsettings.ops[row[5]] except KeyError: retarg += "??" retarg += '%s%s%s%s %s%s %s %s
SUBTOTAL - %s %s %s %s
GRAND TOTAL %s %s
''' % ( localsettings.formatMoney(total), localsettings.formatMoney(nettotal)) return retarg def inspect_item(id): ''' get more detailed information (by polling the newestimates table ''' db = connect.connect() cursor = db.cursor() cursor.execute(INSPECT_QUERY, (id, )) rows = cursor.fetchall() cursor.close() return rows def get_treatments(id): ''' get more detailed information (by polling the newestimates table ''' db = connect.connect() cursor = db.cursor() cursor.execute(TREATMENTS_QUERY, (id, )) row = cursor.fetchone() cursor.close() return row def update_treatments(id, treatments): values = list(treatments) + [id] db = connect.connect() cursor = db.cursor() result = cursor.execute(UPDATE_TREATMENTS_QUERY, values) cursor.close() return result def update_row_fees(id, feesa, feesb): db = connect.connect() cursor = db.cursor() result = cursor.execute(UPDATE_ROW_FEES_QUERY, (feesa, feesb, id)) cursor.close() return result def update_row_fee(id, feesa): db = connect.connect() cursor = db.cursor() result = cursor.execute(UPDATE_ROW_FEE_QUERY, (feesa, id)) cursor.close() return result def update_row_ptfee(id, feesb): db = connect.connect() cursor = db.cursor() result = cursor.execute(UPDATE_ROW_PTFEE_QUERY, (feesb, id)) cursor.close() return result def delete_row(id): db = connect.connect() cursor = db.cursor() result = cursor.execute(DELETE_ROW_QUERY, (id,)) cursor.close() return result def all_data(serialno): db = connect.connect() cursor = db.cursor() cursor.execute(DAYBOOK_QUERY, (serialno,)) rows = cursor.fetchall() cursor.close() for row in rows: yield DaybookEntry(*row) def all_data_header(): color_string = ' bgcolor="#ffff99"' seperator = "" % color_string headers = ("date", "cset", "dntid", "trtid", "diagn", "perio", "anaes", "misc", "ndu", "ndl", "odu", "odl", "other", "chart", "feesa", "feesb", "id") return '''%s %s''' % ( color_string, _("Daybook Items during this Period"), color_string, color_string, seperator.join(headers) ) class FilterHelp(object): _field_names = None @property def field_names(self): if self._field_names is None: db = connect.connect() cursor = db.cursor() cursor.execute(FIELD_NAMES_QUERY) self._field_names = cursor.fetchall() cursor.close() return self._field_names def help_text(self): ''' text to be shown in user clicks on the "filter help button" ''' html = "

%s

%s
%s" % ( _("Filter your results"), _("If this text box is left blank, then results from the daybook " "are returned dependent on the dates and clinicians entered."), _("You can filter using the following fields.") ) for i, field in enumerate(self.field_names): if i == 0: html += "" elif i % 5 == 0: html += "" html += "" % field html += "
%s
%s
%s
" % ( _("Examples"), 'new_patients.serialno=1 AND chart REGEXP ".*MOD,CO.*"\n' 'familyno=2\n' 'ndu="SR/F"\nexmpt="M"\n') return html _filter_help = FilterHelp() def filter_help_text(): return _filter_help.help_text() if __name__ == "__main__": localsettings.initiate() for combo in (("*ALL*", "NW"), ("NW", "AH"), ("NW", "NW")): print(details(combo[0], combo[1], QtCore.QDate(2008, 10, 31), QtCore.QDate(2008, 11, 11))) print(filter_help_text()) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/daybookHistory.py0000644000175000017500000001031112710144045024533 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.settings import localsettings from openmolar.connect import connect QUERY = '''select DATE_FORMAT(date, '%s'), coursetype, dntid, trtid, concat(diagn,perio,anaes,misc,ndu,ndl,odu,odl), other,chart,feesa,feesb, id from daybook where serialno = %%s order by date desc, id desc ''' % localsettings.OM_DATE_FORMAT.replace("%", "%%") ALLOW_TX_EDITS = False def details(sno): ''' returns an html page showing pt's Treatment History ''' db = connect() cursor = db.cursor() cursor.execute(QUERY, (sno,)) rows = cursor.fetchall() cursor.close() claimNo = len(rows) retarg = "

Past Treatments - %d rows found

" % claimNo if claimNo == 0: return retarg headers = ("Date", "Csetype", "Dentist", "Clinician", "Treatment", "Chart", "", "Fee", "PtCharge") retarg += '' for header in headers: retarg += "" % header retarg += '' fee_total, ptfee_total = 0, 0 for i, (date_, cset, dnt, trt, tx, tx1, tx2, fee, ptfee, id_) in enumerate(rows): if tx1 is not None: # the "other treatment" column allows nulls, # which stuffs up the sql concat tx += tx1 retarg += ' ' if i % 2 else ' ' if ALLOW_TX_EDITS: extra_link = ' / %s' % ( id_, _("Edit Tx")) else: extra_link = "" retarg += '''\n \n\n''' % ( date_, cset, localsettings.ops.get(dnt), localsettings.ops.get(trt), tx, tx2.decode("utf8").strip(" \x00"), id_, fee, ptfee, _("Ests"), extra_link, localsettings.formatMoney(fee), localsettings.formatMoney(ptfee) ) fee_total += fee ptfee_total += ptfee retarg += '''\n\n
%s
%s %s %s %s %s %s %s%s %s%s
TOTALS %s %s
''' % ( localsettings.formatMoney(fee_total), localsettings.formatMoney(ptfee_total)) return retarg if __name__ == "__main__": localsettings.initiate() print('') print(details(17322)) print("") openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/db_notes.py0000644000175000017500000000422612710144045023326 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module to retrieve from the new formatted_notes table ''' from openmolar.connect import connect def notes(serialno, today_only=False): query = '''SELECT ndate, op1, op2, ntype, note from formatted_notes where serialno = %s and ndate = DATE(NOW()) order by ndate, ix''' if not today_only: query = query.replace("and ndate = DATE(NOW())", "") db = connect() cursor = db.cursor() cursor.execute(query, (serialno,)) results = cursor.fetchall() cursor.close() return results if __name__ == "__main__": print(notes(1)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/db_patients.py0000644000175000017500000000436412710144045024030 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module to retrieve from the patients table note - PatientClass itself does most of this ''' from openmolar.connect import connect from openmolar.settings.localsettings import PatientNotFoundError def name(serialno): query = 'SELECT title, fname, sname from new_patients where serialno = %s' db = connect() cursor = db.cursor() cursor.execute(query, (serialno,)) result = cursor.fetchone() cursor.close() if not result: raise PatientNotFoundError("Serialno %s not found in database") title, fname, sname = result return "%s %s %s (%s)" % (title, fname, sname, serialno) if __name__ == "__main__": print(name(41)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/db_settings.py0000644000175000017500000003122713015062306024035 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module reads and write to the settings table of the database ''' import datetime import logging import re from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") PT_COUNT_QUERY = "select count(*) from new_patients" DENTIST_DATA_QUERY = '''select id, inits, name, formalname, fpcno, quals FROM practitioners WHERE flag0=1''' CLINICIANS_QUERY = ''' SELECT ix, apptix, initials, name, formal_name, qualifications, type, speciality, data, start_date, end_date FROM clinicians JOIN clinician_dates on clinicians.ix = clinician_dates.clinician_ix LEFT JOIN diary_link on ix = diary_link.clinician_ix ''' ACTIVE_CLINICIANS_QUERY = CLINICIANS_QUERY + \ '''WHERE start_datenow());''' OLD_LOGINS_QUERY = "select id from opid" # pre schema 3.4 LOGINS_QUERY = "%s where active=True" % OLD_LOGINS_QUERY INSERT_OPID_QUERY = "INSERT INTO opid (id) values (%s)" INSERT_CLINICIAN_QUERIES = ( '''INSERT INTO clinicians (initials, name, formal_name, qualifications, type, speciality, data, comments) VALUES(%s, %s, %s, %s, %s, %s, %s, %s) ''', ''' INSERT INTO clinician_dates(clinician_ix, start_date, end_date) VALUES (%s, %s, %s) ''', ''' INSERT INTO diary_link(clinician_ix, apptix) VALUES (%s, %s) ''') INSERT_SETTING_QUERY = '''INSERT INTO settings (value, data, modified_by, time_stamp) values (%s, %s, %s, NOW())''' UPDATE_SETTING_QUERY = '''UPDATE settings SET data = %s, modified_by = %s, time_stamp = NOW() where value=%s''' def insert_login(opid): db = connect.connect() cursor = db.cursor() result = cursor.execute(INSERT_OPID_QUERY, (opid,)) cursor.close() return result def insertData(value, data, user=None): ''' insert a setting (leaving old values behind) ''' LOGGER.info("saving setting (%s, %s) to settings table", value, data) if user is None: user = localsettings.operator values = (value, data, user) db = connect.connect() cursor = db.cursor() result = cursor.execute(INSERT_SETTING_QUERY, values) cursor.close() return result def updateData(value, data, user=None): ''' update a setting - if no update occurs, will insert ''' LOGGER.info("updating setting (%s, %s) to settings table", value, data) if user is None: user = localsettings.operator values = (data, user, value) db = connect.connect() cursor = db.cursor() if cursor.execute(UPDATE_SETTING_QUERY, values): cursor.close() return True return insertData(value, data, user) def insert_practice_name(practice_name): return insertData("practice name", practice_name) def insert_practice_address(address): return insertData("practice address", address) def insert_clinician(clinician): result = False comments = "added by client - %s" % datetime.datetime.now().strftime("%c") db = connect.connect() try: db.autocommit = False cursor = db.cursor() cursor.execute(INSERT_CLINICIAN_QUERIES[0], (clinician.initials, clinician.name, clinician.formal_name, clinician.qualifications, clinician.type, clinician.speciality, clinician.data, comments) ) ix = db.insert_id() cursor.execute(INSERT_CLINICIAN_QUERIES[1], (ix, clinician.start_date, clinician.end_date) ) if clinician.new_diary: cursor.execute(INSERT_CLINICIAN_QUERIES[2], (ix, ix)) cursor.close() db.commit() result = True except: LOGGER.exception("failed to insert clinician") db.rollback() finally: db.autocommit = True return result def insert_bookend(date_): ''' the bookend is the final date used when searching for appointments. ''' assert type(date_) == datetime.date, "insert bookend requires a date" return insertData( "bookend", "%d,%d,%d" % (date_.year, date_.month, date_.day)) class SettingsFetcher(object): def __init__(self): self._cursor = None self.loaded = False self.PT_COUNT = 0 @property def cursor(self): if self._cursor is None: db = connect.connect() self._cursor = db.cursor() return self._cursor def close_cursor(self): if self._cursor is not None: self._cursor.close() self._cursor = None def fetch(self): self.cursor.execute(PT_COUNT_QUERY) self.PT_COUNT = self.cursor.fetchone()[0] self._get_clinicians() self.loaded = True self.close_cursor() def getData(self, key): try: query = 'select data from settings where value = %s order by ix' self.cursor.execute(query, (key,)) rows = self.cursor.fetchall() return rows except connect.ProgrammingError: return () def get_unique_value(self, key): ''' get a single value from the settings table. by default gets the last entry ''' try: return self.getData(key)[-1][0] except IndexError: LOGGER.warning("no key '%s' found in settings", key) @property def allowed_logins(self): try: self.cursor.execute(LOGINS_QUERY) # will get a column error for schema < 3.4 except connect.OperationalError: return self.existing_logins() # grab initials of those currently allowed to log in rows = self.cursor.fetchall() return [row[0] for row in rows] def existing_logins(self): self.cursor.execute(OLD_LOGINS_QUERY) rows = self.cursor.fetchall() return [row[0] for row in rows] @property def wiki_url(self): ''' the database may know of the url (presumably an internally facing ip) for the practice wiki?? ''' wiki_url = self.get_unique_value("wikiurl") return wiki_url if wiki_url else "http://openmolar.com/wiki" @property def book_end(self): book_end = self.get_unique_value("bookend") try: year, month, day = book_end.split(",") return datetime.date(int(year), int(month), int(day)) except AttributeError: pass except ValueError: LOGGER.warning("Badly formatted value for bookend in settings") return datetime.date.today() + datetime.timedelta(days=183) @property def practice_name(self): name = self.get_unique_value("practice name") if name: return name return _("Example Dental Practice") @property def practice_address(self): address = self.get_unique_value("practice address") address_list = [self.practice_name] try: for line_ in address.split("|"): address_list.append(line_) except AttributeError: address_list += ["My Street", "My Town", "POST CODE"] except ValueError: LOGGER.warning( "Badly formatted value for practice_address in settings") address_list.append(str(address)) return tuple(address_list) @property def supervisor_pword(self): hash_ = self.get_unique_value("supervisor_pword") if hash_: return hash_ LOGGER.warning("#" * 30) LOGGER.warning("WARNING - no supervisor password is set") LOGGER.warning("#" * 30) # hash of salted "" return "c1219df26de403348e211a314ff2fce58aa6e28d" def _get_clinicians(self): ''' poll the database and retrieve all practitioners (past and present) ''' self.ops, self.ops_reverse = {}, {} self.apptix_dict, self.apptix_reverse = {}, {} active_dent_initials, active_dent_ixs = [], [] active_hyg_initials, active_hyg_ixs = [], [] archived_dents, archived_hygs = [], [] self.dentist_data = {} self.cursor.execute(CLINICIANS_QUERY) rows = self.cursor.fetchall() for (ix, apptix, initials, name, formal_name, qualifications, type_, speciality, data, start_date, end_date) in rows: self.ops[ix] = initials self.ops_reverse[initials] = ix today = datetime.date.today() if apptix: self.apptix_reverse[apptix] = initials if start_date <= today and (end_date is None or end_date >= today): if apptix: self.apptix_dict[initials] = apptix if type_ == 1: active_dent_initials.append(initials) active_dent_ixs.append(ix) elif type_ in (2, 3): # hygienist and therapist active_hyg_initials.append(initials) active_hyg_ixs.append(ix) else: if type_ == 1: archived_dents.append(ix) elif type_ == 2: archived_hygs.append(ix) if type_ == 1: list_no = "" if data: m = re.search("list_no=([^ ]*)", data) if m: list_no = m.groups()[0] self.dentist_data[ix] = ( initials, name, formal_name, list_no, qualifications) self.active_dents = tuple(active_dent_initials), tuple(active_dent_ixs) self.active_hygs = tuple(active_hyg_initials), tuple(active_hyg_ixs) self.archived_dents = tuple(archived_dents) self.archived_hygs = tuple(archived_hygs) @property def account_footer(self): ''' this is text for the bottom of account letters ''' acc_footer = self.get_unique_value("account footer") return acc_footer if acc_footer else _("ACCOUNT FOOTER NOT SET") @property def debt_collector(self): ''' The name of debt collection services (for strong account letters) ''' debt_col = self.get_unique_value("debt collector") return debt_col if debt_col else _("DEBT COLLECTOR NOT SET") @property def disallowed_forum_posters(self): rows = self.getData("disallowed forum poster") return [fields[0] for fields in rows] if __name__ == "__main__": sf = SettingsFetcher() sf.fetch() print(sf.PT_COUNT) print(sf.wiki_url) print(sf.book_end) print(sf.supervisor_pword) print(sf.getData("enddate")) print(sf.active_dents) print(sf.active_hygs) print(sf.dentist_data) print(sf.account_footer) print(sf.debt_collector) print(sf.disallowed_forum_posters) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/distinct_statuses.py0000644000175000017500000000457712723330423025317 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect LOGGER = logging.getLogger("openmolar") QUERY = "select distinct status from new_patients" class DistinctStatuses(object): _distinct_statuses = None @property def DISTINCT_STATUSES(self): if self._distinct_statuses is None: db = connect.connect() cursor = db.cursor() cursor.execute(QUERY) rows = cursor.fetchall() cursor.close() self._distinct_statuses = set(["", _("DECEASED")]) for row in sorted(rows): if row[0] not in (None, _("BAD DEBT")): self._distinct_statuses.add(row[0]) return sorted(self._distinct_statuses) if __name__ == "__main__": ds = DistinctStatuses() print(ds.DISTINCT_STATUSES) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/docsimported.py0000644000175000017500000001002612710144045024220 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import os import mimetypes import datetime from openmolar import connect from openmolar.settings import localsettings def getData(ix): ''' gets the binary data for the file from the database, along with the version number ''' db = connect.connect() cursor = db.cursor() query = '''select filedata from docsimporteddata where masterid=%s''' % ix cursor.execute(query) rows = cursor.fetchall() cursor.close() if rows: return rows else: return (("no data found",),) def storedDocs(sno): ''' find previously printed docs related to the serialno given as the argument ''' db = connect.connect() cursor = db.cursor() query = '''select DATE_FORMAT(filedate,'%s'), name, size, datatype, ix from docsimported where serialno=%s order by ix DESC ''' % ( localsettings.OM_DATE_FORMAT, sno) cursor.execute(query) rows = cursor.fetchall() cursor.close() docs = [] for fdate, fname, fsize, typ, ix in rows: docs.append([fdate, fname, sizeof_fmt(fsize), typ, str(ix)]) return docs def chunks_from_file(filepath, chunksize=57344): ''' a generator to break a file into chunks ''' f = open(filepath, "rb") while True: chunk = f.read(chunksize) if chunk: yield chunk else: break f.close() def sizeof_fmt(num): for x in ['bytes', 'KB', 'MB', 'GB', 'TB']: if num < 1024.0: return "%3.1f%s" % (num, x) num /= 1024.0 def add(sno, filepath): ''' add a binary file to the database (broken into chunks) ''' st = os.stat(filepath) db = connect.connect() cursor = db.cursor() query = '''insert into docsimported (serialno, datatype, name, size, filedate) values (%s, %s, %s, %s, %s)''' file_type = mimetypes.guess_type(filepath)[0] if file_type is None: file_type = "unknown" values = (sno, file_type, os.path.basename(filepath), st.st_size, datetime.datetime.fromtimestamp(st.st_mtime)) cursor.execute(query, values) fileid = db.insert_id() query = 'INSERT INTO docsimporteddata (masterid, filedata) VALUES (%s, %s)' for data in chunks_from_file(filepath): values = (fileid, data) cursor.execute(query, values) print("added doc to importeddocs table") db.commit() cursor.close() if __name__ == "__main__": #- test function data = getData(1) print(data) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/docsprinted.py0000644000175000017500000000616112710144045024047 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") PREVIOUS_DOCS_QUERY = '''select DATE_FORMAT(printdate, '%s'), docname, docversion,ix from newdocsprinted where serialno=%%s order by ix DESC ''' % localsettings.OM_DATE_FORMAT.replace("%", "%%") GET_DATA_QUERY = 'select data, docversion from newdocsprinted where ix=%s' INSERT_QUERY = '''INSERT INTO newdocsprinted (serialno, printdate, docname, docversion, data) VALUES (%s, date(NOW()), %s, %s, %s)''' def getData(ix): ''' gets the binary data for the file from the database, along with the version number ''' db = connect.connect() cursor = db.cursor() cursor.execute(GET_DATA_QUERY, (ix,)) rows = cursor.fetchone() cursor.close() return rows def previousDocs(sno): ''' find previously printed docs related to the serialno given as the argument ''' db = connect.connect() cursor = db.cursor() cursor.execute(PREVIOUS_DOCS_QUERY, (sno,)) rows = cursor.fetchall() cursor.close() return rows def add(sno, docname, object_, version=1): ''' add a note in the database of stuff which has been printed ''' db = connect.connect() cursor = db.cursor() values = (sno, docname, version, object_) LOGGER.info("adding letter to newdocsprinted table") cursor.execute(INSERT_QUERY, values) db.commit() cursor.close() if __name__ == "__main__": # test function print(previousDocs(1)) print(getData(80982)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/est_logger.py0000644000175000017500000001214412710144045023661 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides read/write tools for the est_logger database table ''' import logging from openmolar.settings import localsettings from openmolar.connect import connect LOGGER = logging.getLogger("openmolar") SELECT_QUERY = ('select est_data from est_logger ' 'where courseno=%s order by ix desc limit 1') INSERT_QUERY = ('insert into est_logger ' '(courseno, est_data, operator) values (%s,%s,%s)') HISTORY_QUERY = ('select est_data, operator, time_stamp ' 'from est_logger where courseno=%s') class EstLogger(object): def __init__(self, courseno): self.courseno = courseno self.est_data = "" self.get_data() def get_data(self): db = connect() cursor = db.cursor() LOGGER.debug( 'getting last estimate text from est_logger for courseno %s' % ( self.courseno)) cursor.execute(SELECT_QUERY, (self.courseno,)) try: self.est_data = cursor.fetchone()[0] except TypeError: pass cursor.close() def add_row(self, courseno, est_data): ''' add a row to the daybook table, and save state. ''' if courseno and self._write_needed(courseno, est_data): db = connect() cursor = db.cursor() LOGGER.debug('updating est_logger for courseno %s' % courseno) values = (courseno, est_data, localsettings.operator) cursor.execute(INSERT_QUERY, values) cursor.close() self.courseno = courseno self.est_data = est_data else: LOGGER.debug("est_logger up to date") def _write_needed(self, courseno, est_data): return courseno !=self. courseno or est_data != self.est_data def html_history(courseno): db = connect() cursor = db.cursor() cursor.execute(HISTORY_QUERY, (courseno,)) rows = cursor.fetchall() cursor.close() if not rows: return '''

%s %s

''' % (_("No estimate history found for course"), courseno) html = '''

%s

''' % _("Current Estimate Version History") html += '''''' % ( _("Estimate"), _("Author") ) for est_data, author, time_stamp in rows: lines = est_data.split("||\n") formatted_est = '''
%s %s
''' % ( _("No."), _("Itemcode"), _("Description"), "CseTyp", _("Feescale"), _("Dentist"), _("Fee"), _("Charge")) for line in lines: formatted_est += "" for i, field in enumerate(line.split(" || ")): align = 'align="center"' if i < 6 else 'align="right"' formatted_est += "" % (align, field) formatted_est += "" html += '''
%s%s%s%s%s%s %s%s
%s
%s
%s
%s ''' % ( formatted_est, author, time_stamp) return html + "" if __name__ == "__main__": localsettings.initiate() LOGGER.setLevel(logging.DEBUG) est_logger = EstLogger(1) est_logger.add_row(1, "test_data") print(html_history(1)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/estimate_synopsis.py0000644000175000017500000000711712710144045025315 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.settings import localsettings from openmolar.connect import connect QUERY = '''SELECT description, ptfee, est_link2.completed from newestimates right join est_link2 on newestimates.ix = est_link2.est_id where serialno=%s AND courseno=%s order by itemcode, description''' def html(serialno, courseno): values = (serialno, courseno) db = connect() cursor = db.cursor() cursor.execute(QUERY, values) rows = cursor.fetchall() cursor.close() est_count = len(rows) if est_count == 0: return "

No Estimate Found

" completed, planned = [], [] for description, fee, comp in rows: if comp: completed.append( (description, fee, localsettings.formatMoney(fee))) else: planned.append((description, fee, localsettings.formatMoney(fee))) n_rows = len(planned) if len(completed) > n_rows: n_rows = len(completed) html_ = ''' ''' c_tot, p_tot = 0, 0 for i in range(n_rows): try: c_desc, fee, c_fee = completed[i] c_tot += fee except IndexError: c_desc, c_fee = "", "" try: p_desc, fee, p_fee = planned[i] p_tot += fee except IndexError: p_desc, p_fee = "", "" html_ += '''''' % ( p_desc, p_fee, c_desc, c_fee) html_ += '''''' % ( localsettings.formatMoney(p_tot), localsettings.formatMoney(c_tot)) return html_ + "
Planned Completed
%s %s %s %s
%s %s

" if __name__ == "__main__": print(html(1, 4174)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/estimates.py0000644000175000017500000002167612710144045023537 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings from openmolar.ptModules.estimates import TXHash, Estimate LOGGER = logging.getLogger("openmolar") ESTS_QUERY = '''SELECT newestimates.ix, number, itemcode, description, fee, ptfee, feescale, csetype, dent, est_link2.completed, tx_hash, courseno from newestimates right join est_link2 on newestimates.ix = est_link2.est_id where serialno=%s and courseno=%s order by itemcode, ix''' ESTS_INS_QUERY = ('insert into newestimates (serialno, ' 'courseno, number, itemcode, description, fee, ptfee, ' 'feescale, csetype, dent, modified_by, time_stamp) values ' '(%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, NOW())') EST_LINK_INS_QUERY = ( 'insert into est_link2 (est_id, tx_hash, completed) values (%s, %s, %s)') EST_DEL_QUERY = "delete from newestimates where ix=%s" EST_LINK_DEL_QUERY = "delete from est_link2 where est_id=%s" ESTS_UPDATE_QUERY = '''UPDATE newestimates SET number=%s, itemcode=%s, description=%s, fee=%s, ptfee=%s, feescale=%s, csetype=%s, dent=%s, modified_by=%s, time_stamp=NOW() WHERE ix=%s '''.replace("\n", " ") # too risky not to check these are unique before updating. EST_DAYBOOK_ALTERATION_QUERIES = [ 'select daybook_id from daybook_link where tx_hash = %s', '''select sum(fee), sum(ptfee) from newestimates join est_link2 on newestimates.ix = est_link2.est_id where tx_hash in (select tx_hash from daybook join daybook_link on daybook.id = daybook_link.daybook_id where id=%s)''', 'update daybook set feesa = %s, feesb = %s where serialno=%s and id=%s' ] def get_ests(serialno, courseno): ''' get estimate data ''' db = connect.connect() cursor = db.cursor() cursor.execute(ESTS_QUERY, (serialno, courseno)) rows = cursor.fetchall() ests = [] for row in rows: hash_ = row[10] completed = bool(row[9]) tx_hash = TXHash(hash_, completed) ix = row[0] found = False # use existing est if one relates to multiple treatments for existing_est in ests: if existing_est.ix == ix: existing_est.tx_hashes.append(tx_hash) found = True break if found: continue # initiate a custom data class est = Estimate() est.ix = ix est.courseno = row[11] est.number = row[1] est.itemcode = row[2] est.description = row[3] est.fee = row[4] est.ptfee = row[5] est.feescale = row[6] est.csetype = row[7] est.dent = row[8] est.tx_hashes = [tx_hash] ests.append(est) cursor.close() return ests def update_daybook_after_estimate_change(values): ''' if the value of a treatment item has been changed after completion, update the daybook. most common example of this is when an exemption is applied to a course of treatment at reception (altering the charges put into the system in the surgery) note - use of serialno here is purely for precautionary reasons. Hash collisions shouldn't occur... but easy to be cautious here. ''' serialno, tx_hash = values db = connect.connect() cursor = db.cursor() query = EST_DAYBOOK_ALTERATION_QUERIES[0] cursor.execute(query, (tx_hash.hash,)) rows = cursor.fetchall() if len(rows) != 1: LOGGER.warning( "unable to update daybook after estimate change - abandoning") return daybook_id = rows[0][0] LOGGER.debug("updating daybook row %s" % daybook_id) query = EST_DAYBOOK_ALTERATION_QUERIES[1] cursor.execute(query, (daybook_id,)) feesa, feesb = cursor.fetchone() # this next situation occurs if all treatments hashes related to # the daybook row have been deleted if (feesa, feesb) == (None, None): feesa, feesb = 0, 0 LOGGER.debug( "updating row with feesa, feesb = %s and %s" % (feesa, feesb)) query = EST_DAYBOOK_ALTERATION_QUERIES[2] rows_changed = cursor.execute( query, (feesa, feesb, serialno, daybook_id)) LOGGER.info("changes applied = %s" % bool(rows_changed)) def apply_changes(pt, old_ests, new_ests): LOGGER.info("APPLY ESTIMATE CHANGES") estimate_insertions = [] estimate_updates = [] estimate_deletions = [] post_cleanup_commands = [] result = True old_ests_dict = {} for est in old_ests: if est.ix is not None: old_ests_dict[est.ix] = est for est in new_ests: if est.ix is None: # --new item values = (pt.serialno, est.courseno, est.number, est.itemcode, est.description, est.fee, est.ptfee, est.feescale, est.csetype, est.dent, localsettings.operator) estimate_insertions.append((ESTS_INS_QUERY, values, est.tx_hashes)) elif est.ix in list(old_ests_dict.keys()): oldEst = old_ests_dict[est.ix] if oldEst != est: values = (est.number, est.itemcode, est.description, est.fee, est.ptfee, est.feescale, est.csetype, est.dent, localsettings.operator, est.ix) estimate_updates.append((ESTS_UPDATE_QUERY, values, est)) for tx_hash in est.tx_hashes: values = (pt.serialno, tx_hash) post_cleanup_commands.append( (update_daybook_after_estimate_change, values)) old_ests_dict.pop(est.ix) # all that is left in old_ests_dict now are items which # have been removed. # so remove from database if they are current course! for ix, old_est in old_ests_dict.items(): # removed if old_est.courseno == pt.courseno0: values = (ix,) estimate_deletions.append((EST_DEL_QUERY, values)) estimate_deletions.append((EST_LINK_DEL_QUERY, values)) for tx_hash in old_est.tx_hashes: values = (pt.serialno, tx_hash) post_cleanup_commands.append( (update_daybook_after_estimate_change, values)) db = connect.connect() cursor = db.cursor() for query, values, tx_hashes in estimate_insertions: LOGGER.debug(query) LOGGER.debug(values) cursor.execute(query, values) ix = cursor.lastrowid for tx_hash in tx_hashes: vals = (ix, tx_hash.hash, tx_hash.completed) cursor.execute(EST_LINK_INS_QUERY, vals) for query, values, estimate in estimate_updates: LOGGER.debug(query) LOGGER.debug(values) cursor.execute(query, values) cursor.execute(EST_LINK_DEL_QUERY, (estimate.ix,)) for tx_hash in estimate.tx_hashes: cursor.execute(EST_LINK_INS_QUERY, (estimate.ix, tx_hash.hash, tx_hash.completed)) for query, values in estimate_deletions: LOGGER.debug(query) LOGGER.debug(values) cursor.execute(query, values) cursor.close() for func, values in post_cleanup_commands: func.__call__(values) return result if __name__ == "__main__": ests = get_ests(11956, 29749) print(ests) print("equality test (should be True) ", ests[0] == ests[0]) print("inequality test (should also be True)", ests[0] != ests[1]) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/estimatesHistory.py0000644000175000017500000001011312710144045025101 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import OrderedDict from openmolar.settings import localsettings from openmolar.connect import connect from openmolar.ptModules.estimates import Estimate, TXHash QUERY = '''SELECT newestimates.ix, number, itemcode, description, fee, ptfee, feescale, csetype, dent, est_link2.completed, tx_hash, courseno from newestimates right join est_link2 on newestimates.ix = est_link2.est_id where serialno=%s order by courseno desc, itemcode, ix''' COURSE_QUERY = QUERY.replace( "order by courseno desc,", "and courseno = %s order by") ALLOW_EDIT = False EDIT_STRING = '%s' % _("Edit this Estimate") def getEsts(sno, courseno=None): db = connect() cursor = db.cursor() if courseno is None: cursor.execute(QUERY, (sno,)) else: cursor.execute(COURSE_QUERY, (sno, courseno)) rows = cursor.fetchall() cursor.close() estimates = OrderedDict() for row in rows: hash_ = row[10] completed = bool(row[9]) tx_hash = TXHash(hash_, completed) ix = row[0] est = estimates.get(ix, Estimate()) est.ix = ix est.courseno = row[11] est.number = row[1] est.itemcode = row[2] est.description = row[3] est.fee = row[4] est.ptfee = row[5] est.feescale = row[6] est.csetype = row[7] est.dent = row[8] try: est.tx_hashes.append(tx_hash) except AttributeError: est.tx_hashes = [tx_hash] estimates[ix] = est return list(estimates.values()) def details(sno): ''' returns an html page showing pt's old estimates ''' estimates = getEsts(sno) claimNo = len(estimates) html = "

%s - %d %s

" % ( _("Past Estimates"), claimNo, _("found") ) if claimNo == 0: return html courseno = None for i, est in enumerate(estimates): if est.courseno != courseno: header = est.htmlHeader() if ALLOW_EDIT: header = header.replace( "", EDIT_STRING % est.courseno ) if i > 0: html += "
" html += '%s' % header courseno = est.courseno html += est.toHtmlRow() html += '
\n' return html if __name__ == "__main__": localsettings.initiate() print('%s' % details(707)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/families.py0000644000175000017500000001222512710144045023320 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.connect import connect from openmolar.settings import localsettings QUERY = '''select serialno, title, fname, sname, addr1, addr2, addr3, town, county, pcde, dob, status, tel1 from new_patients where familyno = %s order by dob''' PATIENT_QUERY = QUERY.replace("familyno", "serialno") LINK_QUERY = 'update new_patients set familyno=%s where serialno=%s' SYNC_QUERY = '''update new_patients set addr1=%s, addr2=%s, addr3=%s, town=%s, county=%s, pcde=%s where familyno=%s''' NEXT_FAMILYNO_QUERY = "select max(familyno)+1 from new_patients" NEW_GROUP_QUERY = "update new_patients set familyno=%s where serialno=%s" DELETE_FAMILYNO_QUERY = \ "update new_patients set familyno=NULL where familyno=%s" ADDRESS_MATCH_QUERY = '''select case when addr1 = %s then 4 else 0 end + case when addr1 like %s then 3 else 0 end + case when addr2 like %s then 3 else 0 end + case when addr3 like %s then 1 else 0 end + case when town like %s then 1 else 0 end + case when pcde = %s then 5 else 0 end as matches , serialno, title, fname, sname, dob, addr1, addr2, addr3, town, pcde from new_patients where addr1 like %s or (addr2 != "" and addr2 like %s) or (town != "" and town like %s) or (pcde=%s and pcde != "") order by matches desc limit 12 ''' def new_group(serialno): ''' start a new family with one member - serialno ''' db = connect() cursor = db.cursor() cursor.execute(NEXT_FAMILYNO_QUERY) family_no = cursor.fetchone()[0] if family_no is None: family_no = 1 cursor.execute(NEW_GROUP_QUERY, (family_no, serialno)) cursor.close() return family_no def delete_group(family_no): ''' delete all reference to familyno for all records ''' db = connect() cursor = db.cursor() cursor.execute(DELETE_FAMILYNO_QUERY, (family_no,)) cursor.close() def add_member(family_no, serialno): ''' add serialno to group familyno ''' db = connect() cursor = db.cursor() cursor.execute(LINK_QUERY, (family_no, serialno)) cursor.close() def remove_member(serialno): ''' remove any family reference for record serialno ''' add_member(None, serialno) def get_members(family_no): ''' get members of the family with number familyno ''' db = connect() cursor = db.cursor() cursor.execute(QUERY, (family_no,)) members = cursor.fetchall() cursor.close() return members def sync_addresses(family_no, chosen_address): ''' set all familyno addresses to this address returns the number of records changed. ''' db = connect() cursor = db.cursor() values = tuple(chosen_address) + (family_no,) count = cursor.execute(SYNC_QUERY, values) cursor.close() return count def get_patient_details(serialno): db = connect() cursor = db.cursor() cursor.execute(PATIENT_QUERY, (serialno,)) member = cursor.fetchone() cursor.close() return member def get_address_matches(address): ''' find possible address matches for the address used. ''' addr1 = address[0] addr2 = address[1] addr3 = address[2] town = address[3] county = address[4] pcde = address[5] db = connect() cursor = db.cursor() values = ( addr1, addr1[:10], addr2[:10], addr3[:10], town[:10], pcde, addr1[:10], addr2[:10], town[:10], pcde[:10], ) cursor.execute(ADDRESS_MATCH_QUERY, (values)) rows = cursor.fetchall() cursor.close() return rows if __name__ == "__main__": print(new_group(1)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/feescales.py0000644000175000017500000002576212710144045023473 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple import logging import os import re import shutil from xml.dom import minidom from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") def FEESCALE_DIR(): ''' this is dynamic in case user switches database ''' return os.path.join( localsettings.LOCALFILEDIRECTORY, "feescales", connect.params.database_name.replace(" ", "_").replace(":", "_PORT_") ) def write_readme(): dir_path = FEESCALE_DIR() LOGGER.info("creating directory %s" % dir_path) os.makedirs(dir_path) f = open(os.path.join(dir_path, "README.txt"), "w") f.write(''' This folder is created by openmolar to store xml copies of the feescales in database %s. Filenames herein are IMPORTANT! feescale1.xml relates to the xml stored in row 1 of that table feescale2.xml relates to the xml stored in row 2 of that table whilst you are free to edit these files using an editor of your choice, validation against feescale_schema.xsd is highly recommended. note - openmolar has a build in application for doing this. in addition - why not use some version control for this folder? ''' % connect.params.database_name) f.close() QUERY = 'select ix, xml_data from feescales' NEXT_ID_QUERY = 'select max(ix) + 1 from feescales' SPECIFIC_QUERY = 'select xml_data from feescales where ix=%s' UPDATE_QUERY = "update feescales set xml_data = %s where ix = %s" NEW_FEESCALE_QUERY = "insert into feescales (xml_data) values(%s)" FULL_QUERY = '''SELECT ix, in_use, priority, comment, xml_data FROM feescales ORDER BY priority, in_use''' UPDATE_META_QUERY = '''UPDATE feescales set in_use=%s, priority=%s, comment=%s WHERE ix=%s''' def get_digits(string_value): ''' used as a key for sort function for filenames. I want foo_10 to be after foo_9 etc.. ''' m = re.search("(\d+)", string_value) if not m: return -1 return int(m.groups()[0]) class FeescaleDatabaseObject(object): def __init__(self, ix, in_use, priority, comment, xml_data): self.ix = ix self.in_use = in_use self.priority = priority self.comment = comment try: dom = minidom.parseString(xml_data) nodes = dom.getElementsByTagName("feescale_description") self.name = nodes[0].childNodes[0].data except: LOGGER.exception("unable to get description from Feescale Parser") self.name = "no description" def __repr__(self): return "Feescale %s - %s" % (self.ix, self.name) class FeescaleConfigurer(object): def __init__(self): db = connect.connect() cursor = db.cursor() cursor.execute(FULL_QUERY) rows = cursor.fetchall() cursor.close() LOGGER.debug("%d feescales retrieved", len(rows)) self.feescales = [] for row in rows: self.feescales.append(FeescaleDatabaseObject(*row)) def apply_changes(self, ix, in_use, comment, priority): values = (in_use, priority, comment, ix) db = connect.connect() cursor = db.cursor() cursor.execute(UPDATE_META_QUERY, values) cursor.close() class FeescaleHandler(object): ixs_in_db = set([]) @property def next_insert_id(self): db = connect.connect() cursor = db.cursor() cursor.execute(NEXT_ID_QUERY) row = cursor.fetchone() cursor.close() if row: return row[0] @property def count(self): return len(list(self.local_files)) def get_feescale_from_database(self, ix): ''' connects and gets the xml_data associated with ix ''' db = connect.connect() cursor = db.cursor() cursor.execute(SPECIFIC_QUERY, (ix,)) row = cursor.fetchone() cursor.close() if row: return row[0] return "" def get_feescales_from_database(self, in_use_only=True, priority_order=True): ''' connects and get the data from feetable_key ''' query = QUERY if in_use_only: query += ' where in_use = True' else: # if called by feescale editor self.ixs_in_db = set([]) if priority_order: query += ' order by priority' db = connect.connect() cursor = db.cursor() cursor.execute(query) rows = cursor.fetchall() cursor.close() LOGGER.debug("%d feescales retrieved" % len(rows)) for ix, xml_data in rows: self.ixs_in_db.add(ix) return rows def save_file(self, ix, xml_data): file_path = self.index_to_local_filepath(ix) LOGGER.debug("writing %s" % file_path) f = open(file_path, "w") f.write(xml_data) f.close() def _xml_data_and_filepaths(self): for ix, xml_data in self.get_feescales_from_database(False): xml_file = namedtuple("XmlFile", ("data", "filepath")) xml_file.data = xml_data xml_file.filepath = self.index_to_local_filepath(ix) yield xml_file def non_existant_and_modified_local_files(self): ''' returns 2 lists [local files which have been created] [local files which differ from stored data] ''' unwritten, modified = [], [] for xml_file in self._xml_data_and_filepaths(): if not os.path.isfile(xml_file.filepath): unwritten.append(xml_file) else: f = open(xml_file.filepath, "r") if f.read().strip() != xml_file.data.strip(): modified.append(xml_file) f.close() return unwritten, modified def index_to_local_filepath(self, ix): return os.path.join(FEESCALE_DIR(), "feescale_%d.xml" % ix) def check_dir(self): if not os.path.exists(FEESCALE_DIR()): write_readme() @property def local_files(self): self.check_dir() dirname = FEESCALE_DIR() for file_ in sorted(os.listdir(dirname), key=get_digits): m = re.match("feescale_(\d+)\.xml$", file_) if m: ix = int(m.groups()[0]) yield ix, os.path.join(dirname, file_) def temp_move(self, file_ix): ''' after insert, a local file may need to move. this is done cautiously as could overwrite another ''' path = self.index_to_local_filepath(file_ix) shutil.move(path, path + "temp") def final_move(self, file_ix, db_ix): ''' finalised temp_move ''' temp_path = self.index_to_local_filepath(file_ix) + "temp" final_path = self.index_to_local_filepath(db_ix) shutil.move(temp_path, final_path) def update_db_all(self): ''' apply all local file changes to the database. ''' message = "" insert_ids = [] for ix, filepath in self.local_files: if ix in self.ixs_in_db: message += self.update_db(ix) else: insert_ids.append(ix) return message, insert_ids def update_db(self, ix): message = "" filepath = self.index_to_local_filepath(ix) LOGGER.debug("updating database ix %s" % ix) if not os.path.isfile(filepath): message = "FATAL %s does not exist!" % filepath else: db = connect.connect() cursor = db.cursor() f = open(filepath) data = f.read() f.close() values = (data, ix) result = cursor.execute(UPDATE_QUERY, values) r_message = "commiting feescale '%s' to database." % filepath message = "updating feescale %d result = %s\n" % ( ix, "OK" if result else "No Change applied") db.close() LOGGER.info(r_message + " " + message) return message def insert_db(self, ix): filepath = self.index_to_local_filepath(ix) LOGGER.debug("inserting new feescale into database %s" % ix) if not os.path.isfile(filepath): message = "FATAL %s does not exist!" % filepath LOGGER.warning(message) else: db = connect.connect() cursor = db.cursor() f = open(filepath) data = f.read() f.close() values = (data,) cursor.execute(NEW_FEESCALE_QUERY, values) db_ix = db.insert_id() self.ixs_in_db.add(db_ix) r_message = "inserting new feescale '%s' to database." % filepath db.close() LOGGER.info(r_message) return db_ix def save_xml(self, ix, xml): file_path = self.index_to_local_filepath(ix) LOGGER.info("saving %s" % file_path) LOGGER.debug("creating backup") try: shutil.copy(file_path, file_path + "~") except IOError: LOGGER.warning("no backup file created") f = open(file_path, "w") f.write(xml) f.close() return True feescale_handler = FeescaleHandler() if __name__ == "__main__": logging.basicConfig() LOGGER.setLevel(logging.DEBUG) feescale_handler.get_feescales_from_database() for ix, local_file in feescale_handler.local_files: print(ix, local_file) print(feescale_handler.non_existant_and_modified_local_files()) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/forum.py0000644000175000017500000001653012770027557022700 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") headers = [_("Subject"), _("From"), _("To"), _("Date"), _("Message"), ] QUERY = '''select ix, ancestor, topic, inits, fdate, recipient, comment, important_id from forum left join (select max(parent_id) as ancestor, child_id from forum join forum_parents on ix=parent_id %s group by child_id) t on ix=t.child_id left join (select important_id from forum_important where op=%%s) t1 on important_id = ix %s order by ancestor, ix''' READPOSTS_QUERY = "select id from forumread where op=%s" READPOSTS_UNREAD_QUERY = "delete from forumread where op=%s and id=%s" READPOSTS_UPDATE_QUERY = '''insert into forumread (op, id, readdate) values (%s, %s, NOW())''' UNREAD_POSTS_QUERY = '''select count(*) from forum where open and ix not in (select id from forumread where op=%s)''' INSERT_QUERY = ''' insert into forum (inits, recipient, fdate, topic, comment) VALUES (%s, %s, NOW(), %s, %s)''' ORPHANED_POST_QUERY = 'delete from forum_parents where child_id = %s' INSERT_PARENT_QUERY = \ 'insert into forum_parents (child_id, parent_id) values (%s, %s)' ANCESTORS_QUERY = ''' insert ignore into forum_parents (child_id, parent_id) (select t1.child_id, t2.parent_id from forum_parents t1 join forum_parents t2 on t1.parent_id=t2.child_id where t1.child_id = %s)''' MAKE_IMPORTANT_QUERY = ''' INSERT INTO forum_important (op, important_id) values (%s, %s)''' REMOVE_IMPORTANT_QUERY = ''' DELETE from forum_important where important_id=%s and op=%s''' class ForumPost(object): ix = None parent_ix = None inits = "" recipient = None date = None topic = "" comment = "" open = True important = False def __repr__(self): return "ForumPost ix=%s ancestor=%s topic=%s" % ( self.ix, self.parent_ix, self.topic) @property def briefcomment(self): bc = self.comment[:20].replace("\n", " ") return bc if bc == self.comment else "%s...." % bc def is_fully_read(): users = localsettings.operator.split("/") if users == []: # shouldn't happen!! return True unread_posts = 0 for user in users: unread_posts += number_of_unread_posts(user) return unread_posts == 0 def number_of_unread_posts(user): db = connect.connect() cursor = db.cursor() cursor.execute(UNREAD_POSTS_QUERY, (user,)) unread_posts = cursor.fetchone()[0] cursor.close() LOGGER.debug("%s has %s unread posts", user, unread_posts) return unread_posts def commitPost(post): ''' commit a post to the database, and mark it as read by the person posting it ''' values = (post.inits, post.recipient, post.topic, post.comment) db = connect.connect() cursor = db.cursor() cursor.execute(INSERT_QUERY, values) ix = db.insert_id() if post.parent_ix: # make the forum_parent table aware of ALL ancestors # in case a reply from the middle of the thread is deleted. cursor.execute(INSERT_PARENT_QUERY, (ix, post.parent_ix)) cursor.execute(ANCESTORS_QUERY, (ix,)) cursor.execute(READPOSTS_UPDATE_QUERY, (post.inits, ix)) db.commit() return ix def deletePost(ix): db = connect.connect() cursor = db.cursor() query = "update forum set open=False where ix=%s" cursor.execute(query, (ix,)) db.commit() cursor.close() def setParent(child_id, new_parent_ix): LOGGER.debug("setParent %s %s", child_id, new_parent_ix) db = connect.connect() cursor = db.cursor() cursor.execute(ORPHANED_POST_QUERY, (child_id,)) cursor.execute(INSERT_PARENT_QUERY, (child_id, new_parent_ix)) cursor.execute(ANCESTORS_QUERY, (child_id,)) db.commit() cursor.close() def update_forum_read(user, read_ids): if not read_ids: return db = connect.connect() cursor = db.cursor() cursor.executemany(READPOSTS_UPDATE_QUERY, [(user, id_) for id_ in read_ids]) cursor.close() db.commit() def mark_as_unread(user, id): db = connect.connect() cursor = db.cursor() cursor.execute(READPOSTS_UNREAD_QUERY, (user, id)) cursor.close() db.commit() def update_important_posts(user, important_posts_dict): new_important_values = [(user, ix) for ix, important in important_posts_dict.items() if important] new_non_important_values = [(ix, user) for ix, important in important_posts_dict.items() if not important] db = connect.connect() cursor = db.cursor() cursor.executemany(MAKE_IMPORTANT_QUERY, new_important_values) cursor.executemany(REMOVE_IMPORTANT_QUERY, new_non_important_values) cursor.close() db.commit() def get_read_post_ids(user): db = connect.connect() cursor = db.cursor() cursor.execute(READPOSTS_QUERY, (user,)) for row in cursor.fetchall(): yield(row[0]) cursor.close() def getPosts(user, include_closed=False): ''' gets all active rows from a forum table ''' query = QUERY % (("", "") if include_closed else ('AND open', 'WHERE open')) db = connect.connect() cursor = db.cursor() cursor.execute(query, (user,)) rows = cursor.fetchall() cursor.close() retarg = [] update = False for row in rows: newpost = ForumPost() newpost.ix = row[0] newpost.parent_ix = row[1] if row[1] is not None else row[0] newpost.topic = row[2] newpost.inits = row[3] newpost.date = row[4] newpost.recipient = row[5] newpost.comment = row[6] newpost.important = row[7] is not None retarg.append(newpost) return retarg if __name__ == "__main__": forumposts = getPosts("NW") for post_ in forumposts: print(post_.parent_ix, post_.ix, post_.topic, post_.important) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/locations.py0000644000175000017500000000534013022004024023507 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' tools to access the locations table (which is a record of where patients are eg. "waiting room") ''' from openmolar import connect QUERY = "SELECT serialno, location FROM locations" WAIT_QUERY = "SELECT serialno FROM locations WHERE location NOT REGEXP '[0-9]'" def all_snos(): db = connect.connect() cursor = db.cursor() if cursor.execute(QUERY): values = [serialno for serialno, location in cursor.fetchall()] else: values = () cursor.close() return values def no_of_patients_waiting(): db = connect.connect() cursor = db.cursor() if cursor.execute(WAIT_QUERY): values = [row[0] for row in cursor.fetchall()] else: values = () cursor.close() return values def locations(): ''' query the database locations table, and return a dictionary of key:value pairs serialno:location ''' location_dict = {} db = connect.connect() cursor = db.cursor() cursor.execute(QUERY) for key, value in cursor.fetchall(): location_dict[key] = value cursor.close() return location_dict if __name__ == "__main__": print(locations()) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/medform_check.py0000644000175000017500000000505212710144045024315 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module contains a function - "insert", and the reverse function "delete" This work on the medforms table in the database. medforms uses (pt_sno, chk_date) as a primary key, so IntegrityErrors should be checked for. ''' from openmolar import connect QUERY = "insert into medforms (pt_sno, chk_date) values (%s, %s)" DEL_QUERY = "delete from medforms where pt_sno=%s and chk_date=%s" def insert(serialno, chk_date): ''' inserts values into the medform table ''' db = connect.connect() cursor = db.cursor() result = cursor.execute(QUERY, (serialno, chk_date)) if result: db.commit() cursor.close() def delete(serialno, chk_date): ''' deletes values from the medform table (fails silently) ''' db = connect.connect() cursor = db.cursor() result = cursor.execute(DEL_QUERY, (serialno, chk_date)) if result: db.commit() cursor.close() if __name__ == "__main__": insert(1, 19000101) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/medhist.py0000644000175000017500000002330512710144045023165 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides read/write tools for medical history ''' from collections import namedtuple import logging from openmolar.connect import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") ALL_MEDS_QUERY = 'select medication from medications' NEW_MED_QUERY = '''insert into medications (medication, warning) values (%s, %s) on duplicate key update medication=medication''' MH_QUERY = ''' select ix, warning_card, medication_comments, allergies, respiratory,heart, diabetes, arthritis, bleeding, infectious_disease, endocarditis, liver, anaesthetic, joint_replacement, heart_surgery, brain_surgery, hospital, cjd, other, alert, chkdate, time_stamp, modified_by from medhist where pt_sno = %s order by ix desc ''' MEDS_QUERY = 'select med, details from medication_link where med_ix=%s' DELETE_MEDS_QUERY = 'delete from medication_link where med_ix=%s' INSERT_MEDS_QUERY = \ 'insert into medication_link (med_ix, med, details) values (%s, %s, %s)' UPDATE_CHKDATE_QUERY = \ "update medhist set chkdate=%s, modified_by=%s where ix=%s" PROPERTIES = ('ix', 'warning_card', 'medications', 'medication_comments', 'allergies', 'respiratory', 'heart', 'diabetes', 'arthritis', 'bleeding', 'infectious_disease', 'endocarditis', 'liver', 'anaesthetic', 'joint_replacement', 'heart_surgery', 'brain_surgery', 'hospital', 'cjd', 'other', 'alert', 'chkdate', 'time_stamp', 'modified_by') MedHist = namedtuple('MedHist', PROPERTIES) INSERT_QUERY = ''' insert into medhist (pt_sno, warning_card, medication_comments, allergies, respiratory, heart, diabetes, arthritis, bleeding, infectious_disease, endocarditis, liver, anaesthetic, joint_replacement, heart_surgery, brain_surgery, hospital, cjd, other, alert, chkdate, modified_by) values (%s)''' % ", ".join(["%s" for val in PROPERTIES[:-2]]) UPDATE_QUERY = ''' update medhist set warning_card=%s, medication_comments=%s, allergies=%s, respiratory=%s, heart=%s, diabetes=%s, arthritis=%s, bleeding=%s, infectious_disease=%s, endocarditis=%s, liver=%s, anaesthetic=%s, joint_replacement=%s, heart_surgery=%s, brain_surgery=%s, hospital=%s, cjd=%s, other=%s, alert=%s, chkdate = %s, modified_by=%s where ix=%s''' NULLS = (None, "", {}) + \ ("", ) * (len(PROPERTIES) - 7) + \ (False, localsettings.currentDay(), None, "") def get_medications(): ''' get all medications currently stored in the database (used for autocomplete function) ''' db = connect() cursor = db.cursor() cursor.execute(ALL_MEDS_QUERY) for row in cursor.fetchall(): yield row[0] cursor.close() def get_mh(sno): db = connect() cursor = db.cursor() cursor.execute(MH_QUERY + "limit 1", (sno,)) row = cursor.fetchone() if row: values = row[:2] + ({},) + row[2:] med_hist = MedHist(*values) cursor.execute(MEDS_QUERY, (med_hist.ix,)) for med, details in cursor.fetchall(): med_hist.medications[med] = "" if details is None else details else: med_hist = MedHist(*NULLS) cursor.close() return med_hist def html_history(sno): html = "

%s

" % _("Medical History Changelog") db = connect() cursor = db.cursor() cursor.execute(MH_QUERY, (sno,)) for row in cursor.fetchall(): table, meds_html = "", "" values = row[:2] + ({},) + row[2:] mh = MedHist(*values) cursor.execute(MEDS_QUERY, (mh.ix,)) for med, details in cursor.fetchall(): meds_html += med meds_html += " %s" % ( "" if details in (None, "") else "(%s)" % details) meds_html += "
" if meds_html: table += "%s%s" % ( _("MEDICATIONS"), meds_html[:-6]) for key, value in ( (_("Warning Card"), mh.warning_card), (_("Medication Comments"), mh.medication_comments), (_("Allergies"), mh.allergies), (_("Respiratory"), mh.respiratory), (_("Heart"), mh.heart), (_("Diabetes"), mh.diabetes), (_("Arthritis"), mh.arthritis), (_("Bleeding"), mh.bleeding), (_("Infectious disease"), mh.infectious_disease), (_("Endorcarditis"), mh.endocarditis), (_("Liver"), mh.liver), (_("Anaesthetic"), mh.anaesthetic), (_("Join Replacement"), mh.joint_replacement), (_("Heart Surgery"), mh.heart_surgery), (_("Brain Surgery"), mh.brain_surgery), (_("Hospitalised"), mh.hospital), (_("CJD"), mh.cjd), (_("OTHER"), mh.other), (_("ALERT"), _("TRUE") if mh.alert else "") ): if value: table += "%s%s" % ( key, value) if table: if mh.chkdate: date_ = localsettings.formatDate(mh.chkdate) else: date_ = _("Original values, no date") html += '''

%s - %s

%s

''' % (date_, mh.modified_by, table) cursor.close() return html + _("End of History") def update_chkdate(ix): LOGGER.debug("marking mh %s as checked today", ix) db = connect() cursor = db.cursor() result = cursor.execute( UPDATE_CHKDATE_QUERY, (localsettings.currentDay(), localsettings.operator, ix)) cursor.close() return result def insert_medication(medication, warning=False): LOGGER.warning( "inserting new medication '%s' into approved list", medication) db = connect() cursor = db.cursor() result = cursor.execute(NEW_MED_QUERY, (medication, warning)) cursor.close() return result def insert_mh(sno, mh): assert isinstance(mh, MedHist), "bad object passed to insert mh" db = connect() cursor = db.cursor() values = (sno, mh.warning_card, mh.medication_comments, mh.allergies, mh.respiratory, mh.heart, mh.diabetes, mh.arthritis, mh.bleeding, mh.infectious_disease, mh.endocarditis, mh.liver, mh.anaesthetic, mh.joint_replacement, mh.heart_surgery, mh.brain_surgery, mh.hospital, mh.cjd, mh.other, mh.alert, mh.chkdate, localsettings.operator) cursor.execute(INSERT_QUERY, values) ix = db.insert_id() cursor.executemany( INSERT_MEDS_QUERY, [(ix, key, mh.medications[key]) for key in mh.medications] ) cursor.close() def update_mh(ix, mh): assert isinstance(mh, MedHist), "bad object passed to insert mh" db = connect() cursor = db.cursor() values = (mh.warning_card, mh.medication_comments, mh.allergies, mh.respiratory, mh.heart, mh.diabetes, mh.arthritis, mh.bleeding, mh.infectious_disease, mh.endocarditis, mh.liver, mh.anaesthetic, mh.joint_replacement, mh.heart_surgery, mh.brain_surgery, mh.hospital, mh.cjd, mh.other, mh.alert, mh.chkdate, localsettings.operator, ix) result = cursor.execute(UPDATE_QUERY, values) cursor.execute(DELETE_MEDS_QUERY, (ix,)) cursor.executemany( INSERT_MEDS_QUERY, [(ix, key, mh.medications[key]) for key in mh.medications] ) cursor.close() return result if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) get_medications() mh_null = get_mh(0) mh_valid = get_mh(1) print(mh_null) assert mh_null == MedHist(*NULLS), "null medical history shouldn't happen" print(mh_valid) insert_mh(1, mh_valid) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/memos.py0000644000175000017500000001205412710144045022647 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.connect import connect from openmolar.settings import localsettings QUERY = '''SELECT ix, serialno, author, type, mdate, message FROM ptmemos WHERE serialno = %s and open = 1 AND (expiredate is NULL or expiredate >= curdate()) AND (type = %s OR type = "all") order by ix''' QUERY_ALL = '''SELECT ix, serialno, author, type, mdate, message, open, expiredate FROM ptmemos WHERE serialno = %s order by ix''' INSERT_QUERY = '''INSERT into ptmemos (serialno, author, type, mdate, expiredate, message, open) VALUES (%s, %s, %s, NOW(), %s, %s, %s)''' DELETE_QUERY = "update ptmemos set open = 0 where ix=%s" class Memo(object): def __init__(self): self.ix = None self.serialno = 0 self.author = "" self.type = "" self.mdate = None self.expire = None self.message = None self.open = False def setMessage(self, arg): self.message = arg def get_memos(serialno): db = connect() if localsettings.station == "surgery": values = (serialno, "surg") elif localsettings.station == "reception": values = (serialno, "rec") else: values = (serialno, "all") cursor = db.cursor() cursor.execute(QUERY, values) rows = cursor.fetchall() cursor.close() for row in rows: memo = Memo() memo.ix = row[0] memo.serialno = row[1] memo.author = row[2] memo.type = row[3] memo.mdate = row[4] memo.setMessage(row[5]) memo.open = True yield memo def deleteMemo(ix): db = connect() cursor = db.cursor() cursor.execute(DELETE_QUERY, (ix,)) cursor.close() db.commit() def saveMemo(serialno, author, type, expire, message, open): ''' put a memo into the database ''' db = connect() values = (serialno, author, type, expire, message, open) cursor = db.cursor() result = cursor.execute(INSERT_QUERY, values) db.commit() cursor.close() return result def html_history(serialno): db = connect() cursor = db.cursor() cursor.execute(QUERY_ALL, (serialno,)) rows = cursor.fetchall() cursor.close() if not rows: return '''

%s

''' % _("No memo history found") html = '''

%s

''' % _("Memo History") html += '''''' % ( _("Author"), _("Location"), _("Date"), _("Expires"), _("Deleted?"), _("Message")) for row in rows: ix = row[0] serialno = row[1] author = row[2] type = row[3] mdate = row[4] message = row[5] open_ = row[6] expiry_date = row[7] html += '''''' % ( author, type, localsettings.formatDate(mdate), localsettings.formatDate(expiry_date), _("Yes") if not open_ else _("No"), message) return html + "
%s %s %s %s %s %s
%s %s %s %s %s %s
" if __name__ == "__main__": print(html_history(11956)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/nhs_claims.py0000644000175000017500000000646612710144045023661 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module for getting/setting information from the claims table ''' from openmolar.connect import connect def details(sno): '''returns an html set showing pt name etc...''' headers = 'courseno,serialno,dntix,proddate,startdate,cmpldate,regdate,' headers += 'authdate,dob,sname,fname,addr1,addr2,addr3,pcde,nhsno,' headers += 'prevsname,exempttext,i0,i1,i2,i3,i4,f0,f1,f2,f3,f4,f5,f6,f7,' headers += 'f8,f9,submstatus,submcount,submno,archdate,' headers += 'town,county,regtype' # claimdata,trtdata, db = connect() cursor = db.cursor() cursor.execute( 'select %s from claims where serialno=%d order by proddate DESC' % ( headers, sno)) rows = cursor.fetchall() cursor.close() claimNo = len(rows) retarg = "

NHS Claims - %d found

" % claimNo if claimNo == 0: return retarg retarg += '' retarg += '' for i2 in range(len(rows)): bgcolor = "" if i2 % 2 == 0: bgcolor = ' bgcolor="#eeffff"' retarg += 'Claim %s' % (bgcolor, i2 + 1) retarg += '' headerArray = headers.split(",") for i in range(len(headerArray)): retarg += "" retarg += "" % headerArray[i] for i2 in range(len(rows)): bgcolor = "" if i2 % 2 == 0: bgcolor = ' bgcolor="#eeffff"' val = rows[i2][i] if not val: val = "-" retarg += '%s' % (bgcolor, val) retarg += '\n' retarg += '
-
%s
' # db.close() return retarg if __name__ == "__main__": print('') print(details(17322)) print("") openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/patient_class.py0000644000175000017500000010334512710144045024364 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' patient_class.py ''' from copy import deepcopy import datetime import logging import re import sys from openmolar import connect from openmolar.ptModules import dec_perm, formatted_notes from openmolar.settings import localsettings from openmolar.dbtools.appt_prefs import ApptPrefs from openmolar.dbtools.treatment_course import TreatmentCourse from openmolar.dbtools.plan_data import PlanData from openmolar.dbtools.est_logger import EstLogger from openmolar.dbtools import estimates as db_estimates from openmolar.dbtools import records_in_use from openmolar.dbtools.queries import ( PATIENT_QUERY_FIELDS, PATIENT_QUERY, FUTURE_EXAM_QUERY, PSN_QUERY, FAMILY_COUNT_QUERY, QUICK_MED_QUERY, SYNOPSIS_QUERY, MED_FORM_QUERY, DAYBOOK_CHART_QUERY) LOGGER = logging.getLogger("openmolar") dateFields = ( "dob", "pd0", "pd1", "pd2", "pd3", "pd4", "pd5", "pd6", "pd7", "pd8", "pd9", "pd10", "pd11", "pd12", "pd13", "pd14", "cnfd", "recd", "billdate", "enrolled", "initaccept", "lastreaccept", "lastclaim", "expiry", "transfer", "chartdate", "accd", "cmpd", "examd", "bpedate") nullDate = None patientTableAtts = ( 'sname', 'fname', 'title', 'sex', 'dob', 'addr1', 'addr2', 'addr3', 'pcde', 'town', 'county', 'tel1', 'tel2', 'mobile', 'fax', 'email1', 'email2', 'occup', 'nhsno', 'cnfd', 'cset', 'dnt1', 'dnt2', 'courseno0', 'billdate', 'billct', 'billtype', 'familyno', 'memo', 'status' ) money_table_atts = ( 'money0', 'money1', 'money2', 'money3', 'money4', 'money5', 'money6', 'money7', 'money8', 'money9', 'money10', 'money11' ) nhs_table_atts = ( 'initaccept', 'lastreaccept', 'lastclaim', 'expiry', 'cstatus', 'transfer', 'pstatus' ) static_table_atts = ( 'ur8st', 'ur7st', 'ur6st', 'ur5st', 'ur4st', 'ur3st', 'ur2st', 'ur1st', 'ul1st', 'ul2st', 'ul3st', 'ul4st', 'ul5st', 'ul6st', 'ul7st', 'ul8st', 'll8st', 'll7st', 'll6st', 'll5st', 'll4st', 'll3st', 'll2st', 'll1st', 'lr1st', 'lr2st', 'lr3st', 'lr4st', 'lr5st', 'lr6st', 'lr7st', 'lr8st', 'dent0', 'dent1', 'dent2', 'dent3' ) date_table_atts = ( 'pd0', 'pd1', 'pd2', 'pd3', 'pd4', 'pd5', 'pd6', 'pd7', 'pd8', 'pd9', 'pd10', 'pd11', 'pd12', 'pd13', 'pd14' ) exemptionTableAtts = ('exemption', 'exempttext') bpeTableAtts = ('bpedate', 'bpe') bpeTableVals = (nullDate, '', ()) mouth = ['ul8', 'ul7', 'ul6', 'ul5', 'ul4', 'ul3', 'ul2', 'ul1', 'ur1', 'ur2', 'ur3', 'ur4', 'ur5', 'ur6', 'ur7', 'ur8', 'lr8', 'lr7', 'lr6', 'lr5', 'lr4', 'lr3', 'lr2', 'lr1', 'll1', 'll2', 'll3', 'll4', 'll5', 'll6', 'll7', 'll8'] decidmouth = ['***', '***', '***', 'ulE', 'ulD', 'ulC', 'ulB', 'ulA', 'urA', 'urB', 'urC', 'urD', 'urE', '***', '***', '***', '***', '***', '***', 'lrE', 'lrD', 'lrC', 'lrB', 'lrA', 'llA', 'llB', 'llC', 'llD', 'llE', '***', '***', '***'] clinical_memos = ("synopsis",) _atts = [] for att in PATIENT_QUERY_FIELDS: if re.match(r"[ul][lr]\d$", att): _atts.append(att + "st") else: _atts.append(att) patient_query_atts = tuple(_atts) class patient(object): ''' this class pulls information from the database into a python object. ''' def __init__(self, sno): ''' initiate the class with default variables, then load from database ''' self.serialno = sno self.dbstate = None self.load_warnings = [] # patient table atts self.courseno0 = None self.money0 = 0 self.money1 = 0 self.money2 = 0 self.money3 = 0 self.money4 = 0 self.money5 = 0 self.money6 = 0 self.money7 = 0 self.money8 = 0 self.money9 = 0 self.money10 = 0 self.pd0 = None self.pd1 = None self.pd2 = None self.pd3 = None self.pd4 = None # this field is no longer used (last treatment date) self.pd5 = None self.pd6 = None self.pd7 = None self.pd8 = None self.pd9 = None self.pd10 = None self.pd11 = None self.pd12 = None self.pd13 = None self.pd14 = None self.sname = '' self.fname = '' self.title = '' self.sex = '' self.dob = None self.addr1 = '' self.addr2 = '' self.addr3 = '' self.pcde = '' self.tel1 = '' self.tel2 = '' self.occup = '' self.nhsno = '' self.cnfd = None self.cset = '' self.dnt1 = 0 self.dnt2 = 0 self.ur8st = '' self.ur7st = '' self.ur6st = '' self.ur5st = '' self.ur4st = '' self.ur3st = '' self.ur2st = '' self.ur1st = '' self.ul1st = '' self.ul2st = '' self.ul3st = '' self.ul4st = '' self.ul5st = '' self.ul6st = '' self.ul7st = '' self.ul8st = '' self.ll8st = '' self.ll7st = '' self.ll6st = '' self.ll5st = '' self.ll4st = '' self.ll3st = '' self.ll2st = '' self.ll1st = '' self.lr1st = '' self.lr2st = '' self.lr3st = '' self.lr4st = '' self.lr5st = '' self.lr6st = '' self.lr7st = '' self.lr8st = '' self.dent0 = 0 self.dent1 = 0 self.dent2 = 0 self.dent3 = 0 self.billdate = None self.billct = 0 self.billtype = None self.money11 = 0 self.familyno = localsettings.last_family_no self.memo = '' self.town = '' self.county = '' self.mobile = '' self.fax = '' self.email1 = '' self.email2 = '' self.status = '' self.initaccept = 0 self.lastreaccept = None self.lastclaim = None self.expiry = None self.cstatus = None self.transfer = 0 self.pstatus = None self.estimates = [] # from userdata self.plandata = PlanData(self.serialno) # NEIL'S STUFF#### self.exemption = "" self.exempttext = "" self.bpe = [] self.bpedate = nullDate self.chartdate = nullDate self.notes_dict = {} self.MEDALERT = False self.mh_chkdate = None self.mh_form_date = None self.HIDDENNOTES = [] self.chartgrid = {} self._fee_table = None self.synopsis = "" self._n_family_members = None self._dayBookHistory = None self.treatment_course = None self.est_logger = None self._most_recent_daybook_entry = None self._first_note_date = None self._has_exam_booked = None self._previous_surnames = None self.monies_reset = False self._n_hyg_visits = None if self.serialno == 0: return # # now load stuff from the database ## # db = connect.connect() cursor = db.cursor() self.getSynopsis() cursor.execute(PATIENT_QUERY, (self.serialno,)) values = cursor.fetchall() if values == (): raise localsettings.PatientNotFoundError for i, att_ in enumerate(patient_query_atts): value = values[0][i] if value is not None: self.__dict__[att_] = value elif att_ == "familyno": self.familyno = 0 query = '''select exemption, exempttext from exemptions where serialno=%s''' cursor.execute(query, (self.serialno,)) values = cursor.fetchall() for value in values: self.exemption, self.exempttext = value query = '''select bpedate, bpe from bpe where serialno=%s order by bpedate''' cursor.execute(query, (self.serialno,)) values = cursor.fetchall() for value in values: self.bpe.append(value) if self.courseno0 != 0: self.getEsts() self.treatment_course = TreatmentCourse( self.serialno, self.courseno0) self.getNotesTuple() cursor.execute(QUICK_MED_QUERY, (self.serialno,)) try: self.MEDALERT, self.mh_chkdate = cursor.fetchone() except TypeError: pass cursor.execute(MED_FORM_QUERY + " limit 1", (self.serialno,)) try: self.mh_form_date = cursor.fetchone()[0] except TypeError: pass cursor.close() # - load from plandata self.plandata.getFromDB() self.appt_prefs = ApptPrefs(self.serialno) self.updateChartgrid() self.take_snapshot() @property def appt_memo(self): return self.appt_prefs.note def set_appt_memo(self, memo): self.appt_prefs.note = memo @property def recall_active(self): return self.appt_prefs.recall_active @property def exam_due(self): return self.recall_active and self.recd < localsettings.currentDay() @property def recd(self): return self.appt_prefs.recdent @property def dayBookHistory(self): if self._dayBookHistory is None: db = connect.connect() cursor = db.cursor() cursor.execute(DAYBOOK_CHART_QUERY, (self.serialno,)) self._dayBookHistory = cursor.fetchall() cursor.close() return self._dayBookHistory @property def last_treatment_date(self): max_date = localsettings.currentDay() if self.treatment_course.cmp_txs != \ self.dbstate.treatment_course.cmp_txs: return max_date if self._most_recent_daybook_entry is None: db = connect.connect() cursor = db.cursor() query = 'select max(date) from daybook where serialno=%s' if cursor.execute(query, (self.serialno,)): max_date = cursor.fetchone()[0] cursor.close() self._most_recent_daybook_entry = max_date return self._most_recent_daybook_entry @property def first_note_date(self): ''' returns teh first date found in the patient notes ''' if self._first_note_date is None: min_date = localsettings.currentDay() db = connect.connect() cursor = db.cursor() query = 'select min(ndate) from formatted_notes where serialno=%s' if cursor.execute(query, (self.serialno,)): min_date = cursor.fetchone()[0] cursor.close() self._first_note_date = min_date \ if min_date else localsettings.currentDay() return self._first_note_date @property def n_hyg_visits(self): if self._n_hyg_visits is not None: pass elif not localsettings.hyg_ixs: self._n_hyg_visits = 0 else: if len(localsettings.hyg_ixs) == 1: conditional = "=" values = (self.serialno, localsettings.hyg_ixs[0]) else: conditional = "in" values = (self.serialno, localsettings.hyg_ixs) self._n_hyg_visits = 0 db = connect.connect() cursor = db.cursor() query = '''select count(*) from (select date from daybook where serialno=%%s and trtid %s %%s group by date) as t''' % conditional if cursor.execute(query, values): self._n_hyg_visits = cursor.fetchone()[0] cursor.close() return self._n_hyg_visits def forget_exam_booked(self): self._has_exam_booked = None @property def has_exam_booked(self): if self._has_exam_booked is None: db = connect.connect() cursor = db.cursor() cursor.execute(FUTURE_EXAM_QUERY, (self.serialno,)) self._has_exam_booked = bool(cursor.fetchone()[0]) cursor.close() return self._has_exam_booked def __repr__(self): return "'Patient_class instance - serialno %d'" % self.serialno @property def address(self): ''' a printable address ''' address = "" for line in (self.addr1, self.addr2, self.addr3, self.town, self.county, self.pcde): if line.strip(" ") != "": address += "%s\n" % line.strip(" ") return address def getAge(self, on_date=None): ''' return the age in form (year(int), months(int), isToday(bool)) ''' if on_date is None: # use today on_date = localsettings.currentDay() try: nextbirthday = datetime.date(on_date.year, self.dob.month, self.dob.day) except ValueError: # catch leap years!! nextbirthday = datetime.date(on_date.year, self.dob.month, self.dob.day - 1) ageYears = on_date.year - self.dob.year if nextbirthday > on_date: ageYears -= 1 months = (12 - self.dob.month) + on_date.month else: months = on_date.month - self.dob.month if self.dob.day > on_date.day: months -= 1 isToday = nextbirthday == localsettings.currentDay() return (ageYears, months, isToday) @property def ageYears(self): return self.getAge()[0] @property def age_course_start(self): ''' returns a tuple (year, months) for the patient at accd ''' return self.getAge(self.treatment_course.accd)[:2] @property def under_6(self): ''' returns a bool "is patient under 6?". ''' return self.ageYears < 6 @property def under_18(self): ''' returns a bool "is patient under 18?". ''' return self.ageYears < 18 def forget_fee_table(self): self._fee_table = None @property def fee_table(self): ''' logic to determine which feeTable should be used for standard items ''' if self._fee_table is None: if self.treatment_course.accd is None: cse_accd = localsettings.currentDay() else: cse_accd = self.treatment_course.accd for table in reversed( list(localsettings.FEETABLES.tables.values())): LOGGER.debug( "checking feescale %s to see if suitable a feetable", table) start, end = table.startDate, table.endDate LOGGER.debug("categories, start, end = %s, %s, %s", table.categories, start, end) if end is None: end = localsettings.currentDay() if self.cset in table.categories and start <= cse_accd <= end: self._fee_table = table if self._fee_table is None: # - no matching table found, use the default. LOGGER.warning("NO SUITABLE FEETABLE FOUND, RETURNING DEFAULT") self._fee_table = localsettings.FEETABLES.default_table return self._fee_table def getEsts(self): ''' get estimate data ''' self.estimates = db_estimates.get_ests(self.serialno, self.courseno0) self.est_logger = EstLogger(self.courseno0) def getSynopsis(self): ''' the synopsis line is displayed on the clinical summary page ''' db = connect.connect() cursor = db.cursor() try: if cursor.execute(SYNOPSIS_QUERY, (self.serialno,)): self.synopsis = cursor.fetchall()[-1][0] except connect.OperationalError: # - necessary because the column is missing is db schema 1.4 LOGGER.warning("invalid schema for getSynopsis") @property def underTreatment(self): ''' a boolean value stating whether the patient has a continuing treatment plan ''' return (self.treatment_course is not None and self.treatment_course.underTreatment) @property def max_tx_courseno(self): ''' a patient who has had many courses of treatment, this gets the latest ''' return self.treatment_course.max_tx_courseno @property def newer_course_found(self): ''' check for a newer course in the currtrtmt2 table than the one loaded at startup. ''' return self.treatment_course.newer_course_found def getNotesTuple(self): ''' connect and poll the formatted_notes table ''' self.notes_dict = formatted_notes.get_notes_dict(self.serialno) def flipDec_Perm(self, tooth): ''' switches a deciduous tooth to a permanent one, and viceVersa pass a variable like "ur5" ''' quadrant = tooth[:2] pos = int(tooth[2]) - 1 # will be 0-7 if quadrant == "ul": var = self.dent1 pos = 7 - pos elif quadrant == "ur": var = self.dent0 elif quadrant == "ll": var = self.dent2 else: # lr var = self.dent3 pos = 7 - pos existing = dec_perm.fromSignedByte(var) if existing[pos] == "1": existing = existing[:pos] + "0" + existing[pos + 1:] else: existing = existing[:pos] + "1" + existing[pos + 1:] if quadrant == "ul": self.dent1 = dec_perm.toSignedByte(existing) elif quadrant == "ur": self.dent0 = dec_perm.toSignedByte(existing) elif quadrant == "ll": self.dent2 = dec_perm.toSignedByte(existing) else: # lr self.dent3 = dec_perm.toSignedByte(existing) self.updateChartgrid() def updateChartgrid(self): ''' a legacy issue with openmolar is the way teeth are saved as present is as 4 bytes (32 bits = 32 teeth). very frugal storage, but requires a fair deal of client computation :( ''' grid = "" for quad in (self.dent1, self.dent0, self.dent3, self.dent2): grid += dec_perm.fromSignedByte(quad) for pos in mouth: if grid[mouth.index(pos)] == "0": self.chartgrid[pos] = pos else: self.chartgrid[pos] = decidmouth[mouth.index(pos)] def apply_fees(self): ''' update the money owed. ''' LOGGER.debug("Applying Fees") if "N" in self.cset: self.money0 = self.dbstate.money0 + self.fees_accrued else: self.money1 = self.dbstate.money1 + self.fees_accrued @property def fees(self): ''' calculate what money is due. ''' return int(self.money0 + self.money1 + self.money9 + self.money10 + self.money11 - self.money2 - self.money3 - self.money8) @property def fees_accrued(self): ''' what fees have changed since load. ''' old_estimate_charges = 0 if self.courseno0 == self.dbstate.courseno0: old_estimate_charges = self.dbstate.estimate_charges accrued_fees = self.estimate_charges - old_estimate_charges LOGGER.debug("fees_accrued = (new-existing) = %d - %d = %d", self.estimate_charges, old_estimate_charges, accrued_fees) return accrued_fees @property def estimate_charges(self): ''' charges for all completed treatments. ''' charges = 0 for est in self.estimates: if est.completed == 2: charges += est.ptfee elif est.completed == 1: charges += est.interim_pt_fee return charges @property def est_logger_text(self): ''' a summary of the estimate for use in the est_logger_table est_logger is unconcerned whether treatment is completed etc.. ''' text = "" total, p_total = 0, 0 for estimate in sorted(self.estimates): text += estimate.log_text total += estimate.fee p_total += estimate.ptfee text += "TOTAL || || || || || || %s || %s" % (total, p_total) return text def resetAllMonies(self): ''' gets money1 and money 0 from apply_fees, then equalises money3 and money2 accordingly. zero's everything else money11 (bad debt) is left unaltered. ''' self.dbstate.money0 = 0 self.dbstate.money1 = 0 self.monies_reset = True self.money0 = 0 self.money1 = 0 self.apply_fees() self.money9 = 0 self.money10 = 0 self.money2 = self.money0 self.money3 = self.money1 self.money8 = 0 def nhs_claims(self, completed_only=True): ''' nhs items from the estimates. if completed_only is False, then include planned items. ''' claims = [] for est in self.estimates: if est.csetype.startswith("N") and \ (not completed_only or est.completed == 2): claims.append(est) return claims def addHiddenNote(self, ntype, note="", attempt_delete=False, one_only=False): ''' re-written for schema 1.9 ''' LOGGER.info( "addHiddenNote - ntype='%s',note='%s', attempt_delete='%s'", ntype, note, attempt_delete ) HN = () if ntype == "payment": HN = ("RECEIVED: ", note) elif ntype == "printed": HN = ("PRINTED: ", note) elif ntype == "exam": HN = ("TC: EXAM", note) elif ntype == "chart_treatment": HN = ("TC:", note) elif ntype == "perio_treatment": HN = ("TC: PERIO", note) elif ntype == "xray_treatment": HN = ("TC: XRAY", note) elif ntype == "treatment": HN = ("TC: OTHER", note) elif ntype == "mednotes": # other treatment HN = ("UPDATED:Medical Notes", note) elif ntype == "close_course": HN = ("COURSE CLOSED", "=" * 10) elif ntype == "open_course": HN = ("COURSE OPENED", "= " * 5) elif ntype == "resume_course": HN = ("COURSE RE-OPENED", "= " * 5) elif ntype == "fee": HN = ("INTERIM: ", note) if not HN: LOGGER.warning( "unable to add Hidden Note notetype '%s' not found", ntype) return reversing_note = ("UNCOMPLETED", "{%s}" % note) if attempt_delete: try: self.HIDDENNOTES.remove(HN) except ValueError: LOGGER.debug("'%s' not in hiddenotes", HN) LOGGER.debug(self.HIDDENNOTES) self.HIDDENNOTES.append(reversing_note) else: try: self.HIDDENNOTES.remove(reversing_note) except ValueError: self.HIDDENNOTES.append(HN) if one_only: while self.HIDDENNOTES.count(HN) > 1: self.HIDDENNOTES.remove(HN) def clearHiddenNotes(self): ''' reset self.HIDDENNOTES ''' self.HIDDENNOTES = [] def updateBilling(self, tone): ''' update the last billdate and tone of invoice ''' self.billdate = localsettings.currentDay() self.billct += 1 self.billtype = tone def reset_billing(self): ''' if patients account is now is order, reset all billing params ''' if self.fees == 0: self.billdate = None self.billct = None self.billtype = None def treatmentOutstanding(self): ''' does the patient have treatmentOutstanding? returns a boolean ''' return (self.treatment_course and self.treatment_course.has_treatment_outstanding) def checkExemption(self): ''' see if the patient's exemption requires removal. ''' if (self.exemption == "S" and self.getAge(self.treatment_course.accd)[0] > 19): self.exemption = "" self.load_warnings.append(_("Student Exemption removed")) elif (self.exemption == "A" and self.getAge(self.treatment_course.accd)[0] > 18): self.exemption = "" self.load_warnings.append(_("Age Exemption removed")) else: return True @property def name_id(self): ''' name and serialno ''' return "%s - %s" % (self.name, self.serialno) @property def name(self): ''' patients name in a readable form ''' return "%s %s %s" % (self.title, self.fname, self.sname) @property def psn(self): ''' previous surname ''' try: return self.previous_surnames[0] except IndexError: return "" @property def previous_surnames(self): ''' previous surnames are stored. ## TODO - check this is used. ''' if self._previous_surnames is None: db = connect.connect() cursor = db.cursor() cursor.execute(PSN_QUERY, (self.serialno,)) self._previous_surnames = [s[0] for s in cursor.fetchall()] cursor.close() return self._previous_surnames @property def n_family_members(self): ''' how many members are linked to this patient's familyno ''' if self._n_family_members is None: db = connect.connect() cursor = db.cursor() cursor.execute(FAMILY_COUNT_QUERY, (self.familyno,)) self._n_family_members = cursor.fetchone()[0] return self._n_family_members @property def under_capitation(self): ''' under capitation if regular NHS patient and under 18. ''' if self.cset != "N": return False years, months = self.age_course_start return years < 17 or (years == 17 and months < 11) def new_tx_course(self, new_courseno): ''' start a new treatment course ''' self.courseno0 = new_courseno self.treatment_course = TreatmentCourse(self.serialno, new_courseno) @property def COPIED_ATTRIBUTES(self): ''' these are what is copied over into pt.dbstate ''' return (patient_query_atts + exemptionTableAtts + bpeTableAtts + clinical_memos + ("fees", "estimate_charges", "serialno", "estimates", "appt_prefs", "treatment_course", "chartgrid")) @property def USER_CHANGEABLE_ATTRIBUTES(self): ''' the attributes, common to pt and the object copy pt.db_state which is generated during take_snapshot used to determine whether the patient has been edited. ''' for att_ in self.COPIED_ATTRIBUTES: # if att_ not in ("treatment_course", "estimates", "chartgrid"): yield att_ @property def changes(self): ''' what has changed since the patient was loaded ''' changes = [] for att_ in self.USER_CHANGEABLE_ATTRIBUTES: new_value = self.__dict__.get(att_, "") db_value = self.dbstate.__dict__.get(att_, "") if new_value != db_value: message = "Altered pt.%s" % att_.ljust(20) if att_ not in ("treatment_course", "estimates"): message += ( " ORIG = '%s' NEW = '%s'" % (db_value, new_value)) LOGGER.debug(message) changes.append(att_) return changes @property def has_changes(self): is_changed = self.changes != [] self.lock_record_in_use() if is_changed else self.clear_lock() return is_changed def take_snapshot(self): ''' create a snapshot of this class, copying all attributes that the user can change ''' memo = {} cls = self.__class__ snapshot = cls.__new__(cls) memo[id(self)] = snapshot for att_, val_ in list(self.__dict__.items()): if att_ in self.COPIED_ATTRIBUTES: setattr(snapshot, att_, deepcopy(val_, memo)) self.dbstate = snapshot LOGGER.debug("snapshot of %s taken" % self) @property def course_dentist(self): ''' returns the course dentist for NHS and private courses, but the contracted dentist otherwise. this is used in the daybook for "work done for lists". ''' if self.cset == "I": return self.dnt1 if self.dnt2 not in (0, None): return self.dnt2 return self.dnt1 @property def has_new_course(self): ''' if the initial state has no course, or a lower course number, this is true. ''' if self.treatment_course and self.dbstate.treatment_course is None: return True return (self.treatment_course.courseno != self.dbstate.treatment_course.courseno) @property def tx_hash_tups(self): ''' a list of unique hashes of all treatment on the current treatment plan returns a tuple (unique hash, attribute, treatment) ''' for hash_, att_, tx in self.treatment_course._get_tx_hashes(): if re.match("[ul][lr][1-8]", att_): att_ = self.chartgrid.get(att_) yield hash_, att_, tx @property def completed_tx_hash_tups(self): for hash_, att_, tx in self.treatment_course.completed_tx_hash_tups: if re.match("[ul][lr][1-8]", att_): att_ = self.chartgrid.get(att_) yield hash_, att_, tx @property def completed_tx_hashes(self): return list(self.treatment_course.completed_tx_hashes) @property def planned_tx_hash_tups(self): return self.treatment_course.planned_tx_hash_tups @property def has_planned_perio_txs(self): for hash_, att_, tx in self.planned_tx_hash_tups: if att_ == "perio": return True return False def get_tx_from_hash(self, hash_): return self.treatment_course.get_tx_from_hash(hash_) def ests_from_hash(self, hash_): ''' return all estimate items associated with a unique tx_hash ''' for est in self.estimates: for tx_hash in est.tx_hashes: if tx_hash == hash_: yield est @property def address_tuple(self): return (self.sname, self.addr1, self.addr2, self.addr3, self.town, self.county, self.pcde, self.tel1) def reload_mh_form_date(self): db = connect.connect() cursor = db.cursor() cursor.execute(MED_FORM_QUERY + " limit 1", (self.serialno,)) try: self.mh_form_date = cursor.fetchone()[0] except TypeError: self.mh_form_date = None cursor.close() def mh_form_dates(self): ''' the dates that the mh form has been signed off by the patient. ''' db = connect.connect() cursor = db.cursor() cursor.execute(MED_FORM_QUERY, (self.serialno,)) for row in cursor.fetchall(): yield row[0] cursor.close() def set_record_in_use(self): records_in_use.set_in_use(self.serialno) def lock_record_in_use(self): records_in_use.set_locked(self.serialno) def clear_lock(self): records_in_use.clear_lock(self.serialno) if __name__ == "__main__": # testing stuff try: serialno = int(sys.argv[-1]) except ValueError: serialno = 1 LOGGER.setLevel(logging.DEBUG) if "-v" in sys.argv: verbose = True else: verbose = False pt = patient(serialno) if verbose: for att in sorted(pt.__dict__.keys()): print("%s '%s'" % (att.ljust(20), pt.__dict__[att])) localsettings.loadFeeTables() print(pt.fee_table) pt.take_snapshot() print(list(pt.tx_hash_tups)) print(pt.treatment_course) print(pt.ageYears) print(pt.age_course_start) print(pt.under_capitation) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/patient_write_changes.py0000644000175000017500000002775713022233054026111 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import textwrap from openmolar.connect import connect from openmolar.settings import localsettings from openmolar.dbtools import patient_class from openmolar.dbtools import estimates from openmolar.dbtools.treatment_course import CURRTRT_ATTS from openmolar.dbtools.treatment_course import UPDATE_CURRTTMT2_QUERY LOGGER = logging.getLogger("openmolar") BPE_INS_QUERY = '''insert into bpe (serialno, bpedate, bpe) values (%s, %s, %s) on duplicate key update bpe=%s''' EXMPT_INS_QUERY = ('insert into exemptions ' '(serialno, exemption, exempttext, datestamp) ' 'values (%s,%s,%s, NOW())') SYNOPSIS_INS_QUERY = ''' insert into clinical_memos (serialno, synopsis, author, datestamp) values (%s, %s, %s, NOW())''' RESET_MONEY_QUERY = ''' insert into patient_money (pt_sno, money0, money1) values (%s, %s, %s) on duplicate key update money0=%s, money1=%s''' INSERT_NOTE_QUERY = '''insert into formatted_notes (serialno, ndate, op1, op2, ntype, note) VALUES (%s, DATE(NOW()), %s, %s, %s, %s)''' def note_splitter(notes, line_end=""): ''' takes a list of lines, and further splits any lines which exceed 79 chars in length. ''' # this next line catches any Qtstrings passed, and changes them to python # types. notes = str(notes) lines = notes.split("\n") for line in lines: if line == "": yield line_end else: for short_line in textwrap.wrap(line, 78): yield short_line + line_end def all_changes(pt, changes): LOGGER.debug("writing_changes to patient - %s" % str(changes)) if changes == []: LOGGER.warning( "write changes called, but no changes for patient %d!" % ( pt.serialno) ) return True success = True # set up some booleans to prevent multiple updates of the same data # example exemption AND exemption text have changed.. exemptionsHandled = False if pt.HIDDENNOTES != []: # hidden notes is # treatment codes... money, printing etc.. LOGGER.debug("saving hiddennotes") toNotes(pt.serialno, pt.HIDDENNOTES) pt.clearHiddenNotes() sqlcommands = {} patchanges, patvalues = [], [] static_changes, static_values = [], [] date_changes, date_values = [], [] nhs_changes, nhs_values = [], [] trtchanges, trtvalues = "", [] # money handled slightly differently. more complex query. money_changes, money_values = [], [] for change in changes: if change == "courseno": pass # these values should never get munged. elif change in patient_class.money_table_atts: money_changes.append(change) money_values.append(pt.__dict__[change]) elif change in patient_class.patientTableAtts: # patchanges += '%s = %%s,' % change patchanges.append(change) patvalues.append(pt.__dict__[change]) elif change in patient_class.date_table_atts: date_changes.append(change) date_values.append(pt.__dict__[change]) elif change in patient_class.static_table_atts: static_changes.append(change.rstrip("st")) static_values.append(pt.__dict__[change]) elif change in patient_class.nhs_table_atts: nhs_changes.append(change) nhs_values.append(pt.__dict__[change]) elif (change in patient_class.exemptionTableAtts and not exemptionsHandled): values = (pt.serialno, pt.exemption, pt.exempttext) sqlcommands['exemptions'] = ((EXMPT_INS_QUERY, values),) exemptionsHandled = True elif change == "bpe": values = (pt.serialno, pt.bpe[-1][0], pt.bpe[-1][1], pt.bpe[-1][1] ) sqlcommands['bpe'] = ((BPE_INS_QUERY, values),) elif change == "synopsis": values = (pt.serialno, pt.synopsis, localsettings.operator) sqlcommands['clinical_memos'] = ((SYNOPSIS_INS_QUERY, values),) elif change == "treatment_course": # patient.CURRTRT_ATTS: for trt_att in CURRTRT_ATTS: value = pt.treatment_course.__dict__[trt_att] existing = pt.dbstate.treatment_course.__dict__[trt_att] if pt.has_new_course or value != existing: trtchanges += '%s = %%s ,' % trt_att trtvalues.append(value) elif change == "appt_prefs": pt.appt_prefs.commit_changes() elif change == "estimates": pass # dealt with below if patchanges: query = "update new_patients SET %s where serialno=%%s" % \ ", ".join(["%s = %%s" % change for change in patchanges]) patvalues.append(pt.serialno) sqlcommands['patients'] = ((query, patvalues),) if static_changes: LOGGER.warning( "applying static_changes %s values %s", static_changes, static_values) query = '''insert into static_chart (pt_sno, %s) values (%%s, %s) on duplicate key update %s''' % ( ", ".join(static_changes), ", ".join(("%s",) * len(static_changes)), ", ".join(["%s = %%s" % change for change in static_changes]) ) values = [pt.serialno] + static_values * 2 sqlcommands['static'] = ((query, values),) if nhs_changes: LOGGER.warning( "applying nhs_changes %s values %s", nhs_changes, nhs_values) query = '''insert into patient_nhs (pt_sno, %s) values (%%s, %s) on duplicate key update %s''' % ( ", ".join(nhs_changes), ", ".join(("%s",) * len(nhs_changes)), ", ".join(["%s = %%s" % change for change in nhs_changes]) ) values = [pt.serialno] + nhs_values * 2 sqlcommands['nhs'] = ((query, values),) if date_changes: LOGGER.warning( "applying date_changes %s values %s", date_changes, date_values) query = '''insert into patient_dates (pt_sno, %s) values (%%s, %s) on duplicate key update %s''' % ( ", ".join(date_changes), ", ".join(("%s",) * len(date_changes)), ", ".join(["%s = %%s" % change for change in date_changes]) ) values = [pt.serialno] + date_values * 2 sqlcommands['patient_dates'] = ((query, values),) if money_changes: update_money_values = [] update_query = "update " for i, change in enumerate(money_changes): if change in ("money0", "money1"): diff = pt.__dict__[change] - pt.dbstate.__dict__[change] update_money_values.append(diff) update_query += "%s=%s +%%s, " % (change, change) else: update_money_values.append(money_values[i]) update_query += "%s=%%s, " % change LOGGER.warning( "applying money_changes %s values %s addition_values %s", money_changes, money_values, update_money_values) query = '''insert into patient_money (pt_sno, %s) values (%%s, %s) on duplicate key %s''' % ( ", ".join(money_changes), ", ".join(("%s",) * len(money_changes)), update_query.rstrip(", ") ) values = [pt.serialno] + money_values + update_money_values LOGGER.debug(query.replace("\n", " ")) LOGGER.debug(values) sqlcommands['patient_money'] = ((query, values),) if trtchanges != "": trtvalues.append(pt.serialno) trtvalues.append(pt.treatment_course.courseno) query = UPDATE_CURRTTMT2_QUERY % (trtchanges.strip(",")) sqlcommands['currtrtmt'] = ((query, trtvalues),) try: db = connect() db.autocommit = False if sqlcommands != {}: LOGGER.debug(sqlcommands) cursor = db.cursor() tables = list(sqlcommands.keys()) for table in tables: for query, values in sqlcommands[table]: try: cursor.execute(query, values) except Exception as exc: LOGGER.error("error executing query %s" % query) raise exc cursor.close() if "estimates" in changes: estimates.apply_changes(pt, pt.dbstate.estimates, pt.estimates) db.commit() except Exception as exc: LOGGER.exception("rolling back database") db.rollback() success = False raise exc finally: db.autocommit = True return success def toNotes(serialno, newnotes): ''' new code with schema 1.9 ''' LOGGER.debug("write changes - toNotes for patient %d" % serialno) tstamp = localsettings.currentTime().strftime("%d/%m/%Y %H:%M:%S") notetuplets = [] notetuplets.append(("opened", "System date - %s" % tstamp)) # database version stores max line length of 80chars for ntype, notes in newnotes: line_end = "\n" if ntype == "newNOTE" else "" for line in note_splitter(notes, line_end): notetuplets.append((ntype, line)) notetuplets.append(("closed", "%s %s" % (localsettings.operator, tstamp))) try: op1, op2 = localsettings.operator.split("/") except ValueError: op1 = localsettings.operator op2 = None values = [] for ntype, noteline in notetuplets: values.append((serialno, op1, op2, ntype, noteline)) rows = 0 if values: db = connect() cursor = db.cursor() rows = cursor.executemany(INSERT_NOTE_QUERY, values) cursor.close() db.commit() return rows > 0 def discreet_changes(pt, changes): ''' this is actually a duplication of the all-changes function, and writes only the changes passed. the only reason to keep it is for the extra message posted to the log. ''' LOGGER.warning("discreet changes sno=%s %s", pt.serialno, changes) if not changes: LOGGER.error("no changes passed") return all_changes(pt, changes) def reset_money(pt): if pt.monies_reset: values = (pt.serialno,) + (pt.dbstate.money0, pt.dbstate.money1) * 2 db = connect() cursor = db.cursor() cursor.execute(RESET_MONEY_QUERY, values) cursor.close() return False openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/paymentHistory.py0000644000175000017500000001373412710144045024574 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.settings import localsettings from openmolar.connect import connect HEADERS = ( _("Date"), _("Dentist"), _("Patient"), _("Code"), _("Cash"), _("Cheque"), _("Card"), _("Unknown"), _("Amount") ) QUERY = ''' select DATE_FORMAT(cbdate, %s), dntid, descr, code, amt from cashbook where ref=%s order by cbdate desc ''' SUMMARY_QUERY = ''' select DATE_FORMAT(cbdate, %s), dntid, code, amt from cashbook where ref=%s and (code<10 or code>123) and cbdate >= %s order by cbdate ''' def summary_details(sno, start_date): values = (localsettings.OM_DATE_FORMAT, "%06d" % sno, start_date) db = connect() cursor = db.cursor() cursor.execute(SUMMARY_QUERY, values) rows = cursor.fetchall() cursor.close() claimNo = len(rows) if claimNo == 0: return "No Payments Found" retarg = '' retarg += '' for header in HEADERS[:3] + HEADERS[8:]: retarg += "" % header retarg += '' total = 0 for i, row in enumerate(rows): if i % 2 == 0: retarg += '' else: retarg += '' # a row is (date,sno,dnt,patient,code,amount) retarg += '' % (row[0]) retarg += '' % localsettings.ops.get(row[1]) CODE = localsettings.cashbookCodesDict.get(row[2], "UNKNOWN") retarg += '' % CODE amt = row[3] retarg += '' % localsettings.formatMoney(amt) retarg += '\n' total += amt retarg += '''''' % ( localsettings.formatMoney(total)) retarg += '
%s
%s%s%s%s
TOTAL %s
' return retarg def details(sno): ''' returns an html page showing pt's payment History ''' values = (localsettings.OM_DATE_FORMAT, "%06d" % sno) db = connect() cursor = db.cursor() cursor.execute(QUERY, values) rows = cursor.fetchall() cursor.close() claimNo = len(rows) if claimNo == 0: return "

No Payments Found

" retarg = '' retarg += '' for header in HEADERS: retarg += "" % header retarg += '' odd = True total, cashTOT, chequeTOT, cardTOT, otherTOT = 0, 0, 0, 0, 0 for row in rows: if odd: retarg += '' odd = False else: retarg += '' odd = True # a row is (date,sno,dnt,patient,code,amount) retarg += '' % (row[0]) retarg += '' % localsettings.ops.get(row[1]) retarg += '' % row[2] CODE = localsettings.cashbookCodesDict.get(row[3], "UNKNOWN") retarg += '' % CODE amt = row[4] amt_str = localsettings.formatMoney(amt) if "CASH" in CODE: retarg += '' % amt_str cashTOT += amt retarg += "" * 3 elif "CHEQUE" in CODE: retarg += '' % amt_str chequeTOT += amt retarg += "" * 2 elif "CARD" in CODE: retarg += "" * 2 retarg += '' % amt_str cardTOT += amt retarg += "" else: retarg += "" * 3 retarg += '' % amt_str otherTOT += amt retarg += '' % amt_str retarg += '\n' total += amt retarg += '''''' % ( localsettings.formatMoney(cashTOT), localsettings.formatMoney(chequeTOT), localsettings.formatMoney(cardTOT), localsettings.formatMoney(otherTOT), localsettings.formatMoney(total)) retarg += '
%s
%s%s%s%s%s %s %s %s%s
TOTAL %s %s %s %s %s
' return retarg if __name__ == "__main__": localsettings.initiate() from datetime import date print(summary_details(1, date(2000, 1, 1))) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/phrasebook.py0000644000175000017500000001135312710144045023665 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import datetime import logging from openmolar.connect import connect CHECK_INTERVAL = 300 # update phrasebook every 5 minutes BLANK_PHRASEBOOK = '''
Example
An Example Phrase! Another Phrase
Perio
An Example Phrase!
''' ALL_BOOKS_QUERY = "select distinct clinician_id from phrasebook" QUERY = "select phrases from phrasebook where clinician_id=%s" UPDATE_QUERY = "update phrasebook set phrases = %s where clinician_id = %s" INSERT_QUERY = "insert into phrasebook (phrases, clinician_id) values(%s, %s)" LOGGER = logging.getLogger("openmolar") class Phrasebooks(object): _books = {} @property def global_phrasebook(self): return self.book(0) def book(self, index): book = self._books.get(index, None) if book is None: book = Phrasebook(index) self._books[index] = book return book def has_book(self, index): return index in self._books def has_phrasebook(self, index): return self.book(index).has_data def get_all_books(self): self._books = {} # forget any loaded books db = connect() cursor = db.cursor() cursor.execute(ALL_BOOKS_QUERY) rows = cursor.fetchall() ixs = [] for row in rows: ixs.append(row[0]) cursor.close() for ix in ixs: yield self.book(ix) def update_database(self, xml, clinician_id): db = connect() cursor = db.cursor() result = cursor.execute(UPDATE_QUERY, (xml, clinician_id)) cursor.close() self._books = {} # forget any loaded books return result def create_book(self, clinician_id): db = connect() cursor = db.cursor() result = cursor.execute(INSERT_QUERY, (BLANK_PHRASEBOOK, clinician_id)) cursor.close() self._books = {} # forget any loaded books return result class Phrasebook(object): _xml = None _time = datetime.datetime.now() def __init__(self, ix): self.ix = ix @property def loaded(self): return self._xml is not None @property def refresh_needed(self): now = datetime.datetime.now() return now - self._time > datetime.timedelta(0, CHECK_INTERVAL) @property def xml(self): if not self.loaded or self.refresh_needed: LOGGER.info("(re)loading phrasebook %s from database" % self.ix) db = connect() cursor = db.cursor() cursor.execute(QUERY, (self.ix,)) rows = cursor.fetchone() self._xml = rows[0] if rows else BLANK_PHRASEBOOK cursor.close() self._time = datetime.datetime.now() return self._xml @property def has_data(self): return self.xml != BLANK_PHRASEBOOK PHRASEBOOKS = Phrasebooks() if __name__ == "__main__": print(PHRASEBOOKS.global_phrasebook) print(PHRASEBOOKS.book(1)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/plan_data.py0000644000175000017500000000672412710144045023461 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") planDBAtts = ("serialno", "plantype", "band", "grosschg", "discount", "netchg", "catcode", "planjoin", "regno") class PlanData(object): ''' a custom class to hold data about the patient's maintenance plan ''' def __init__(self, sno): self.serialno = sno self.plantype = None self.band = None self.grosschg = 0 self.discount = 0 self.netchg = 0 self.catcode = None self.planjoin = None self.regno = None # a variable to indicate if getFromDbhas been run self.retrieved = False def __repr__(self): return "%d,%s,%s,%s,%s,%s,%s,%s,%s" % ( self.serialno, self.plantype, self.band, self.grosschg, self.discount, self.netchg, self.catcode, self.planjoin, self.regno) def getFromDB(self): try: db = connect.connect() cursor = db.cursor() query = '''SELECT %s,%s,%s,%s,%s,%s,%s,%s from plandata where serialno=%s''' % (planDBAtts[1:] + (self.serialno,)) cursor.execute(query) row = cursor.fetchone() cursor.close() i = 1 if row: for val in row: if val: att = planDBAtts[i] if att == "planjoin": self.planjoin = localsettings.formatDate(val) else: self.__dict__[att] = val i += 1 self.retrieved = True except Exception: LOGGER.exception("error loading from plandata") if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) pd = PlanData(1) pd.getFromDB() print(pd) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/queries.py0000644000175000017500000000677112710144045023215 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # PATIENT_QUERY_FIELDS = ( "money0", "money1", "money2", "money3", "money4", "money5", "money6", "money7", "money8", "money9", "money10", "pd0", "pd1", "pd2", "pd3", "pd4", "pd5", "pd6", "pd7", "pd8", "pd9", "pd10", "pd11", "pd12", "pd13", "pd14", "sname", "fname", "title", "sex", "dob", "addr1", "addr2", "addr3", "pcde", "tel1", "tel2", "occup", "nhsno", "cnfd", "cset", "dnt1", "dnt2", "courseno0", "ur8", "ur7", "ur6", "ur5", "ur4", "ur3", "ur2", "ur1", "ul1", "ul2", "ul3", "ul4", "ul5", "ul6", "ul7", "ul8", "ll8", "ll7", "ll6", "ll5", "ll4", "ll3", "ll2", "ll1", "lr1", "lr2", "lr3", "lr4", "lr5", "lr6", "lr7", "lr8", "dent0", "dent1", "dent2", "dent3", "billdate", "billct", "billtype", "money11", "familyno", "memo", "town", "county", "mobile", "fax", "email1", "email2", "status", "initaccept", "lastreaccept", "lastclaim", "expiry", "cstatus", "transfer", "pstatus" ) PATIENT_QUERY = '''SELECT %s from new_patients left join patient_money on serialno = patient_money.pt_sno left join static_chart on serialno = static_chart.pt_sno left join patient_dates on serialno = patient_dates.pt_sno left join patient_nhs on serialno = patient_nhs.pt_sno where serialno = %%s''' % ", ".join(PATIENT_QUERY_FIELDS) FUTURE_EXAM_QUERY = '''select count(*) from aslot where serialno=%s and (code0="EXAM" or code1="EXAM" or code2="EXAM") and adate >= CURDATE()''' PSN_QUERY = \ "select psn from previous_snames where serialno=%s order by ix desc" FAMILY_COUNT_QUERY = "select count(*) from new_patients where familyno=%s" QUICK_MED_QUERY = '''select alert, chkdate from medhist where pt_sno=%s order by ix desc limit 1''' MED_FORM_QUERY = '''select chk_date from medforms where pt_sno=%s order by chk_date desc''' SYNOPSIS_QUERY = 'SELECT synopsis from clinical_memos where serialno=%s' DAYBOOK_CHART_QUERY = '''SELECT date, trtid, CONVERT(chart USING ascii) FROM daybook WHERE serialno=%s''' openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/recall.py0000644000175000017500000001455012710144045022774 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar.settings import localsettings from openmolar.connect import connect from datetime import date LOGGER = logging.getLogger("openmolar") HEADERS = ( _("Letter No"), _("Serial No"), _("Title"), _("First Name"), _("Surname"), _("Age"), _("Address") + " 1", _("Address") + " 2", _("Address") + " 3", _("Town"), _("County"), _("PostCode"), _("Dentist"), _("Family No"), _("Recall Date")) # note the word CONDITIONS in this query - replaced dynamically at runtime RECALL_QUERY = ''' select new_patients.serialno, title, fname, sname, dnt1, familyno, dob, addr1, addr2, addr3, town, county, pcde, recdent from new_patients join appt_prefs on new_patients.serialno = appt_prefs.serialno where CONDITIONS and status != "DECEASED" order by familyno DESC, addr1, dob, fname, sname''' class RecalledPatient(object): ''' a data object to store a recalled patient's details ''' def __init__(self, letterno, row): self.letterno = letterno self.grouped = False self.serialno = row[0] self.title = row[1].title() self.fname = row[2].title() self.sname = row[3].title() self.dnt1 = localsettings.ops.get(row[4], "??") if row[5] == 0: self.familyno = None else: self.familyno = row[5] self._dob = row[6] self.addr1 = row[7].strip() self.addr2 = row[8] if row[8] is not None else "" self.addr3 = row[9] if row[9] is not None else "" self.town = row[10] if row[10] is not None else "" self.county = row[11] if row[11] is not None else "" self.pcde = row[12] if row[12] is not None else "" self.recd = row[13] def __getitem__(self, pos): if pos == 0: return self.letterno elif pos == 1: return self.serialno elif pos == 2: return self.title elif pos == 3: return self.fname elif pos == 4: return self.sname elif pos == 5: return self.age elif pos == 6: return self.addr1 elif pos == 7: return self.addr2 elif pos == 8: return self.addr3 elif pos == 9: return self.town elif pos == 10: return self.county elif pos == 11: return self.pcde elif pos == 14: return self.recd elif pos == 12: return self.dnt1 elif pos == 13: return self.familyno else: raise IndexError @property def age(self): ''' return the age in string form ''' today = localsettings.currentDay() try: nextbirthday = date(today.year, self._dob.month, self._dob.day) except ValueError: # leap year! nextbirthday = date(today.year, self._dob.month, self._dob.day - 1) ageYears = today.year - self._dob.year if nextbirthday > today: ageYears -= 1 return ageYears def __len__(self): return 15 def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): ''' allow comparison based on family number and address line 1 ''' if isinstance(self, type(other)): return (self.familyno, self.addr1) == (other.familyno, other.addr1) return False def __repr__(self): ''' represent the object ''' return "%s %s %s %s" % (self.serialno, self.sname, self.fname, self.grouped) def getpatients(conditions="", values=()): ''' returns patients with a recall between the two dates ''' assert isinstance(conditions, str), "conditions must be a string" assert isinstance(values, tuple), "values must be a tuple" query = RECALL_QUERY.replace("CONDITIONS", conditions) db = connect() cursor = db.cursor() cursor.execute(query, values) rows = cursor.fetchall() cursor.close() patients = [] letterno = 1 patient = None for row in rows: prev_patient = patient patient = RecalledPatient(letterno, row) if patient == prev_patient: letterno -= 1 patient.letterno = letterno patient.grouped = True patients[-1].grouped = True letterno += 1 patients.append(patient) return patients if __name__ == "__main__": localsettings.initiate() conditions = "recdent>=%s and recdent<=%s and dnt1=%s" values = date(2016, 2, 1), date(2016, 2, 28), 4 patients = getpatients(conditions, values) for patient in patients: print(patient) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/records_in_use.py0000644000175000017500000001502412710144045024532 0ustar neilneil00000000000000#! /usr/bin/python #! /usr/bin/env p # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") QUERY1 = ''' INSERT INTO records_in_use (pt_sno, surgery_number, op) VALUES (%s, %s, %s)''' QUERY2 = 'DELETE FROM records_in_use WHERE pt_sno=%s AND surgery_number=%s' QUERY3 = 'DELETE FROM records_in_use WHERE surgery_number=%s' QUERY4 = ''' UPDATE records_in_use SET locked=1 WHERE pt_sno=%s AND surgery_number=%s''' QUERY5 = ''' UPDATE records_in_use SET locked=0 WHERE pt_sno=%s AND surgery_number=%s''' QUERY6 = ''' SELECT op, surgery_number, timestamp FROM records_in_use WHERE pt_sno=%s AND locked = 1''' QUERY7 = ''' SELECT op, surgery_number, locked, timestamp FROM records_in_use WHERE pt_sno=%s''' class RecordInfo(object): ''' A place to store information from QUERY7 ''' def __init__(self, row): self.op = row[0] self.surgeryno = row[1] self.is_locked = row[2] self.timestamp = row[3] @property def location(self): if self.surgeryno == 0: return _("Reception") return "%s %s" % (_("Surgery"), self.surgeryno) def set_in_use(serialno): ''' update the records_in_use_table ''' LOGGER.debug("set_in_use serialno=%s, surgeryno=%s", serialno, localsettings.surgeryno) values = (serialno, localsettings.surgeryno, localsettings.operator) db = connect.connect() cursor = db.cursor() result = cursor.execute(QUERY1, values) cursor.close() return result def clear_in_use(serialno): ''' clear link between the serialno for this surgeryno ''' LOGGER.debug("clear_in_use serialno=%s surgeryno=%s", serialno, localsettings.surgeryno) values = (serialno, localsettings.surgeryno,) db = connect.connect() cursor = db.cursor() cursor.execute(QUERY2, values) cursor.close() LOGGER.debug("cleared") def clear_surgery_records(): ''' clear all records linked to this surgeryno ''' LOGGER.debug("clear_in_use surgeryno=%s", localsettings.surgeryno) values = (localsettings.surgeryno,) db = connect.connect() cursor = db.cursor() cursor.execute(QUERY3, values) cursor.close() LOGGER.debug("cleared") def set_locked(serialno): ''' update the records_in_use_table ''' LOGGER.debug("set_locked serialno=%s, surgeryno=%s", serialno, localsettings.surgeryno) values = (serialno, localsettings.surgeryno) db = connect.connect() cursor = db.cursor() result = cursor.execute(QUERY4, values) cursor.close() return result def clear_lock(serialno): ''' update the records_in_use_table ''' LOGGER.debug("clear_lock serialno=%s, surgeryno=%s", serialno, localsettings.surgeryno) values = (serialno, localsettings.surgeryno) db = connect.connect() cursor = db.cursor() result = cursor.execute(QUERY5, values) cursor.close() return result def is_locked(serialno): ''' check the records_in_use_table for a lock on serialno returns locked(bool), (op, surgery_no, timestamp) ''' LOGGER.debug("checking for a lock on record %s", serialno) values = (serialno, ) db = connect.connect() cursor = db.cursor() cursor.execute(QUERY6, values) rows = cursor.fetchall() cursor.close() if not rows: pass elif len(rows) > 1: raise IOError("multiple locks present - this shouldn't happen") else: op, surgeryno, timestamp = rows[0] if op != localsettings.operator or \ surgeryno != localsettings.surgeryno: message = "

%s

%s %s %s %s %s %s
%s %s
%s" % ( _("WARNING"), _("Record number"), serialno, _("is locked by"), op, _("in surgery number"), surgeryno, _("Lock aquired at"), timestamp, _("Please reload this record before making any changes") ) return True, message return False, None def get_usage_info(serialno): ''' check the records_in_use_table for all information about a particular record usage. this yields instances of RecordInfo ''' # LOGGER.debug("checking for usage of record %s", serialno) values = (serialno, ) db = connect.connect() cursor = db.cursor() cursor.execute(QUERY7, values) rows = cursor.fetchall() cursor.close() for row in rows: yield RecordInfo(row) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) sno = 24 localsettings.surgeryno = 7 print("set in use", set_in_use(sno)) print("set locked", set_locked(sno)) print("is locked", is_locked(sno)) print("clear locked", clear_lock(sno)) print("is locked", is_locked(sno)) print("clear in use", clear_in_use(sno)) print("clear all", clear_surgery_records()) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/referral.py0000644000175000017500000001420412710144045023330 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple from openmolar.settings import localsettings from openmolar.connect import connect QUERY = "SELECT description FROM referral_centres" ADDRESS_QUERY = ''' SELECT greeting, addr1, addr2, addr3, addr4, addr5, addr6, addr7 FROM referral_centres where description = %s''' EDIT_QUERY = '''SELECT ix, description, greeting, addr1, addr2, addr3, addr4, addr5, addr6, addr7 FROM referral_centres order by ix''' UPDATE_QUERY = '''UPDATE referral_centres SET description=%s, greeting=%s, addr1=%s, addr2=%s, addr3=%s, addr4=%s, addr5=%s, addr6=%s, addr7=%s WHERE ix=%s''' INSERT_QUERY = '''INSERT INTO referral_centres (description, greeting, addr1, addr2, addr3, addr4, addr5, addr6, addr7) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)''' DELETE_QUERY = 'DELETE FROM referral_centres WHERE ix=%s' HTML = '''





%s

%s

%s
%s %s %s - %s %s
%s
%s












%s

''' ReferralCentre = namedtuple( 'ReferralCentre', ('ix', 'description', 'greeting', 'addr1', 'addr2', 'addr3', 'addr4', 'addr5', 'addr6', 'addr7') ) def getDescriptions(): descriptions = [] db = connect() cursor = db.cursor() cursor.execute(QUERY) for row in cursor.fetchall(): descriptions.append(row[0]) cursor.close() return descriptions def get_referral_centres(): db = connect() cursor = db.cursor() cursor.execute(EDIT_QUERY) for row in cursor.fetchall(): yield ReferralCentre(*row) cursor.close() def insert_centres(centres): values = [] for centre in centres: values.append((centre.description, centre.greeting, centre.addr1, centre.addr2, centre.addr3, centre.addr4, centre.addr5, centre.addr6, centre.addr7) ) if values != []: db = connect() cursor = db.cursor() cursor.executemany(INSERT_QUERY, values) cursor.close() def update_centres(centres): values = [] for centre in centres: values.append((centre.description, centre.greeting, centre.addr1, centre.addr2, centre.addr3, centre.addr4, centre.addr5, centre.addr6, centre.addr7, centre.ix) ) if values != []: db = connect() cursor = db.cursor() cursor.executemany(UPDATE_QUERY, values) cursor.close() def delete_centres(centres): values = [] for centre in centres: values.append((centre.ix,)) if values != []: db = connect() cursor = db.cursor() cursor.executemany(DELETE_QUERY, values) cursor.close() def getHtml(description, pt): ''' get the HTML for a letter to referral_centre identified by description about this pt ''' db = connect() cursor = db.cursor() cursor.execute(ADDRESS_QUERY, (description,)) row = cursor.fetchone() cursor.close() if not row: return HTML greeting, addr1, addr2, addr3, addr4, addr5, addr6, addr7 = row tel = _("Telephone") + " :- " for i, val in enumerate((pt.tel1, pt.tel2, pt.mobile)): if val != "": tel += "%s %s " % ( (_("home"), _("work "), _("mobile "))[i], val) return HTML % ( "
".join( [a for a in ( addr1, addr2, addr3, addr4, addr5, addr6, addr7) if a != ""]), localsettings.longDate(localsettings.currentDay()), greeting, pt.title.title(), pt.fname.title(), pt.sname.title(), _("D.O.B."), localsettings.formatDate(pt.dob), ",".join( [a for a in (pt.addr1, pt.addr2, pt.addr3, pt.town, pt.county, pt.pcde) if a != ""]), tel, _("Yours Sincerely")) if __name__ == "__main__": localsettings.initiate() from openmolar.dbtools import patient_class pt = patient_class.patient(4) d = getDescriptions() print(d) print(getHtml(d[0], pt)) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/schema_version.py0000644000175000017500000000725612710144045024544 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") SELECT_QUERY = 'select max(data) from settings where value = "Schema_Version"' INSERT_QUERY = '''insert into settings (value,data,modified_by,time_stamp) values (%s, %s, %s, NOW())''' DELETE_QUERY = 'delete from settings where value = "compatible_clients"' COMPAT_QUERY = '''insert into settings (value, data, modified_by, time_stamp) values ("compatible_clients", %s, 'Update script', NOW())''' def getVersion(): try: db = connect.connect() cursor = db.cursor() cursor.execute(SELECT_QUERY) version = cursor.fetchone()[0] except connect.ProgrammingError as ex: LOGGER.warning("no settings table! %s" % ex) LOGGER.warning("schema assumed to be 1.0") version = "1.0" localsettings.DB_SCHEMA_VERSION = version return version def clientCompatibility(client_schema): rows = () try: db = connect.connect() cursor = db.cursor() query = 'select data from settings where value = "compatible_clients"' cursor.execute(query) rows = cursor.fetchall() except connect.ProgrammingError as ex: LOGGER.exception("client_schema not found") for row in rows: if row[0] == client_schema: return True def update(schemas, user): ''' updates the schema version, pass a list of compatible clients version and a user eg. updateSchemaVersion (("1.1","1.2"), "admin script") the first in the list is the minimum allowed, the last is the current schema ''' latest_schema = schemas[-1] db = connect.connect() cursor = db.cursor() values = ("Schema_Version", latest_schema, user) LOGGER.info("making the db aware of it's schema version") cursor.execute(INSERT_QUERY, values) LOGGER.info("disabling ALL old clients") cursor.execute(DELETE_QUERY) LOGGER.info("enabling compatible clients") for schema in schemas: values = (schema,) cursor.execute(COMPAT_QUERY, values) return True openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/search.py0000644000175000017500000001405413006114412022770 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # '''this script connects to the database and performs searches''' import datetime import logging import sys from openmolar.connect import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") ALL_PATIENTS_QUERY = '''SELECT new_patients.serialno, status, title, fname, sname, dob, addr1, addr2, town, pcde, tel1, tel2, mobile, alt_fname, alt_sname FROM new_patients LEFT JOIN pseudonyms ON new_patients.serialno = pseudonyms.serialno {{CONDITIONS}} GROUP BY serialno ORDER BY sname, fname''' def all_patients(): db = connect() cursor = db.cursor() cursor.execute(ALL_PATIENTS_QUERY.replace("{{CONDITIONS}}", "")) results = cursor.fetchall() cursor.close() return results def getcandidates(dob, addr, tel, sname, similar_sname, fname, similar_fname, pcde): ''' this searches the database for patients matching the given fields ''' conditions = [] values = [] if addr != '': conditions.append('(ADDR1 like %s or ADDR2 like %s or town like %s)') values += ["%" + addr + "%"] * 3 if tel != '': conditions.append('tel1 like %s or tel2 like %s or mobile like %s') values += ["%" + tel + "%"] * 3 if dob != datetime.date(1900, 1, 1): conditions.append('dob = %s') values.append(dob) if pcde != '': conditions.append('pcde like %s') values.append("%" + pcde + "%") if sname != '': if similar_sname: conditions.append( '(sname sounds like %s OR alt_sname sounds like %s)') values += [sname, sname] else: sname += "%" sname_conds = [] for field in ('sname', 'alt_sname'): if "'" in sname: sname_conds.append( '(%s like %%s or %s like %%s)' % (field, field)) values.append(sname) values.append(sname.replace("'", "")) elif sname[:1] == "o": sname_conds.append( '(%s like %%s or %s like %%s)' % (field, field)) values.append(sname) values.append("o'" + sname[1:]) elif sname[:2] == "mc": sname_conds.append( '(%s like %%s or %s like %%s)' % (field, field)) values.append(sname) values.append(sname.replace("mc", "mac")) elif sname[:3] == "mac": sname_conds.append( '(%s like %%s or %s like %%s)' % (field, field)) values.append(sname) values.append(sname.replace("mac", "mc")) else: sname_conds.append('%s like %%s' % field) values.append(sname) conditions.append("(%s)" % " OR ".join(sname_conds)) if fname != '': if similar_fname: conditions.append('fname sounds like %s') values.append(fname) else: conditions.append('(fname LIKE %s OR alt_fname LIKE %s)') values.append(fname + "%") values.append(fname + "%") if conditions: conditional = "WHERE %s" % " AND ".join(conditions) query = ALL_PATIENTS_QUERY.replace("{{CONDITIONS}}", conditional) LOGGER.debug(query.replace("\n", " ")) LOGGER.debug(values) db = connect() cursor = db.cursor() cursor.execute(query, tuple(values)) results = cursor.fetchall() cursor.close() return results else: return () def getcandidates_from_serialnos(list_of_snos): ''' this probably never actually gets called now, as it relates to a time when "double appointments" were commonplace. ''' format_snos = ",". join(('%s',) * len(list_of_snos)) # %s,%s,%s conditional = "WHERE new_patients.serialno in (%s)" % format_snos query = ALL_PATIENTS_QUERY.replace("{{CONDITIONS}} ", conditional) db = connect() cursor = db.cursor() cursor.execute(query, list_of_snos) results = cursor.fetchall() cursor.close() return results if __name__ == '__main__': values_ = (datetime.date(1969, 12, 9), "Gables", "772378", "wallace", "", "neil", "", "IV2") new_vals = getcandidates(*values_) for candidate in new_vals: print(candidate) snos = (1, 2, 3) for candidate in getcandidates_from_serialnos(snos): print(candidate) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/standard_letter.py0000644000175000017500000001146412710144045024712 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from collections import namedtuple from openmolar.connect import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") QUERY = '''SELECT description, body_text, footer FROM standard_letters ORDER BY description''' INSERT_QUERY = '''INSERT INTO standard_letters (description, body_text, footer) VALUES (%s, %s, %s) ON DUPLICATE KEY UPDATE body_text=%s, footer=%s''' DELETE_QUERY = 'DELETE FROM standard_letters WHERE description=%s' StandardLetter = namedtuple( 'StandardLetter', ('description', 'text', 'footer')) TEMPLATE = ''' %s %%s
%%s


%%s %s %%s %%s, %s %%s %s ''' % ("
" * 6, "
" * 4, "
" * (12), "
" * 6) def getHtml(pt): return TEMPLATE % (pt.name, pt.address.replace("\n", "
"), localsettings.longDate(localsettings.currentDay()), _("Dear"), pt.name.title(), _("Yours Sincerely") ) def get_standard_letters(): db = connect() cursor = db.cursor() cursor.execute(QUERY) for row in cursor.fetchall(): yield StandardLetter(*row) cursor.close() def insert_letter(letter): db = connect() cursor = db.cursor() result = cursor.execute(INSERT_QUERY, (letter.description, letter.text, letter.footer, letter.text, letter.footer)) cursor.close() if result == 0: LOGGER.error("insert_letter failed!") elif result == 1: LOGGER.info("insert_letter worked!") elif result == 2: LOGGER.warning("insert_letter updated an existing letter!") db.commit() return result in (1, 2) def delete_letter(letter): db = connect() cursor = db.cursor() result = cursor.execute(DELETE_QUERY, (letter.description,)) cursor.close() if result == 0: LOGGER.error("delete_letter failed!") elif result == 1: LOGGER.info("delete_letter worked!") return result def insert_letters(letters): for letter in letters: insert_letter(letter) def delete_letters(letters): for letter in letters: delete_letter(letter) def _test(): from openmolar.dbtools import patient_class pt = patient_class.patient(1) return getHtml(pt) def _test2(): from random import randint nonce = "n".join([str(randint(1, 100)) for i in range(10)]) letter = StandardLetter("test %s" % nonce, "test body", "footer") letter2 = StandardLetter("test %s" % nonce, "test body ammended", "footer") insert_letter(letter) insert_letter(letter2) # should update! delete_letter(letter) for letter in get_standard_letters(): LOGGER.debug(letter.description) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) print(_test()) _test2() openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/treatment_course.py0000644000175000017500000004423612710144045025121 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from openmolar import connect from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") CURRTRT_NON_TOOTH_ATTS = ( 'xray', 'perio', 'anaes', 'other', 'ndu', 'ndl', 'odu', 'odl', 'custom') UPPERS = ('ur8', 'ur7', 'ur6', 'ur5', 'ur4', 'ur3', 'ur2', 'ur1', 'ul1', 'ul2', 'ul3', 'ul4', 'ul5', 'ul6', 'ul7', 'ul8') LOWERS = ('lr8', 'lr7', 'lr6', 'lr5', 'lr4', 'lr3', 'lr2', 'lr1', 'll1', 'll2', 'll3', 'll4', 'll5', 'll6', 'll7', 'll8') CURRTRT_ROOT_ATTS = CURRTRT_NON_TOOTH_ATTS + UPPERS + LOWERS CURRTRT_ATTS = ( 'courseno', 'xraypl', 'periopl', 'anaespl', 'otherpl', 'ndupl', 'ndlpl', 'odupl', 'odlpl', "custompl", 'xraycmp', 'periocmp', 'anaescmp', 'othercmp', 'nducmp', 'ndlcmp', 'oducmp', 'odlcmp', "customcmp", 'ur8pl', 'ur7pl', 'ur6pl', 'ur5pl', 'ur4pl', 'ur3pl', 'ur2pl', 'ur1pl', 'ul1pl', 'ul2pl', 'ul3pl', 'ul4pl', 'ul5pl', 'ul6pl', 'ul7pl', 'ul8pl', 'll8pl', 'll7pl', 'll6pl', 'll5pl', 'll4pl', 'll3pl', 'll2pl', 'll1pl', 'lr1pl', 'lr2pl', 'lr3pl', 'lr4pl', 'lr5pl', 'lr6pl', 'lr7pl', 'lr8pl', 'ur8cmp', 'ur7cmp', 'ur6cmp', 'ur5cmp', 'ur4cmp', 'ur3cmp', 'ur2cmp', 'ur1cmp', 'ul1cmp', 'ul2cmp', 'ul3cmp', 'ul4cmp', 'ul5cmp', 'ul6cmp', 'ul7cmp', 'ul8cmp', 'll8cmp', 'll7cmp', 'll6cmp', 'll5cmp', 'll4cmp', 'll3cmp', 'll2cmp', 'll1cmp', 'lr1cmp', 'lr2cmp', 'lr3cmp', 'lr4cmp', 'lr5cmp', 'lr6cmp', 'lr7cmp', 'lr8cmp', 'examt', 'examd', 'accd', 'cmpd', 'ftr') QUERY = "SELECT " for field in CURRTRT_ATTS: QUERY += "%s, " % field QUERY = QUERY.rstrip(", ") QUERY += " from currtrtmt2 where serialno=%s and courseno=%s" MAX_COURSE_QUERY = "select max(courseno) from currtrtmt2 where serialno=%s" DATE_QUERY = "select accd, cmpd, examd from currtrtmt2 where courseno=%s" UPDATE_DATES_QUERY = "update currtrtmt2 set accd=%s, cmpd=%s where courseno=%s" UPDATE_CURRTTMT2_QUERY = ( 'UPDATE currtrtmt2 SET %s WHERE serialno=%%s and courseno=%%s') DELETE_CURRTTMT2_QUERY = ( 'DELETE from currtrtmt2 WHERE serialno=%s and courseno=%s') UPDATE_ESTS_COURSENO_QUERY = ( 'UPDATE newestimates SET courseno=%s WHERE courseno=%s') def get_course_dates(courseno): db = connect.connect() cursor = db.cursor() cursor.execute(DATE_QUERY, (courseno, )) row = cursor.fetchone() cursor.close() return row def update_course_dates(accd, cmpd, courseno): db = connect.connect() cursor = db.cursor() cursor.execute(UPDATE_DATES_QUERY, (accd, cmpd, courseno, )) cursor.close() def update_estimate_courseno(courseno_orig, courseno_new): db = connect.connect() cursor = db.cursor() cursor.execute(UPDATE_ESTS_COURSENO_QUERY, (courseno_new, courseno_orig)) cursor.close() def update_course(query_insert, values, serialno, courseno): assert len(values) == query_insert.count("=") query = UPDATE_CURRTTMT2_QUERY % query_insert values.append(serialno) values.append(courseno) db = connect.connect() cursor = db.cursor() result = cursor.execute(query, values) cursor.close() return result def delete_course(serialno, courseno): db = connect.connect() cursor = db.cursor() cursor.execute(DELETE_CURRTTMT2_QUERY % (serialno, courseno)) cursor.close() class TreatmentCourse(object): def __init__(self, sno, courseno): ''' initiate the class with default variables, then load from database ''' self.dbstate = None self.serialno = sno self.courseno = courseno self.xraypl = '' self.periopl = '' self.anaespl = '' self.otherpl = '' self.ndupl = '' self.ndlpl = '' self.odupl = '' self.odlpl = '' self.custompl = '' self.xraycmp = '' self.periocmp = '' self.anaescmp = '' self.othercmp = '' self.nducmp = '' self.ndlcmp = '' self.oducmp = '' self.odlcmp = '' self.customcmp = '' self.ur8pl = '' self.ur7pl = '' self.ur6pl = '' self.ur5pl = '' self.ur4pl = '' self.ur3pl = '' self.ur2pl = '' self.ur1pl = '' self.ul1pl = '' self.ul2pl = '' self.ul3pl = '' self.ul4pl = '' self.ul5pl = '' self.ul6pl = '' self.ul7pl = '' self.ul8pl = '' self.ll8pl = '' self.ll7pl = '' self.ll6pl = '' self.ll5pl = '' self.ll4pl = '' self.ll3pl = '' self.ll2pl = '' self.ll1pl = '' self.lr1pl = '' self.lr2pl = '' self.lr3pl = '' self.lr4pl = '' self.lr5pl = '' self.lr6pl = '' self.lr7pl = '' self.lr8pl = '' self.ur8cmp = '' self.ur7cmp = '' self.ur6cmp = '' self.ur5cmp = '' self.ur4cmp = '' self.ur3cmp = '' self.ur2cmp = '' self.ur1cmp = '' self.ul1cmp = '' self.ul2cmp = '' self.ul3cmp = '' self.ul4cmp = '' self.ul5cmp = '' self.ul6cmp = '' self.ul7cmp = '' self.ul8cmp = '' self.ll8cmp = '' self.ll7cmp = '' self.ll6cmp = '' self.ll5cmp = '' self.ll4cmp = '' self.ll3cmp = '' self.ll2cmp = '' self.ll1cmp = '' self.lr1cmp = '' self.lr2cmp = '' self.lr3cmp = '' self.lr4cmp = '' self.lr5cmp = '' self.lr6cmp = '' self.lr7cmp = '' self.lr8cmp = '' self.examt = '' self.examd = '' self.accd = None self.cmpd = None self.ftr = None # this next line gives me a way to create a Mock Instance of the class if self.courseno == 0: return self.getCurrtrt() def __repr__(self): message = "TreatmentCourse for patient %s courseno %s\n" % ( self.serialno, self.courseno) for att in CURRTRT_ATTS: value = self.__dict__.get(att, "") if value != "": message += " %s,%s\n" % (att, value) return message def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): return str(self) == str(other) def _non_tooth_items(self, suffix="pl"): for att in CURRTRT_NON_TOOTH_ATTS: value = self.__dict__.get(att + suffix, "") if value != "": txs = value.split(" ") for tx in set(txs): if tx != "": n = txs.count(tx) if n != 1: tx = "%d%s" % (n, tx) yield att, tx @property def non_tooth_plan_items(self): return list(self._non_tooth_items("pl")) @property def non_tooth_cmp_items(self): items = [] if self.examt != "" and self.examd: items.append(("exam", self.examt)) return items + list(self._non_tooth_items("cmp")) def getCurrtrt(self): db = connect.connect() cursor = db.cursor() cursor.execute(QUERY, (self.serialno, self.courseno)) for value in cursor.fetchall(): for i, field in enumerate(CURRTRT_ATTS): self.__dict__[field] = value[i] cursor.close() @property def underTreatment(self): return self.accd not in ("", None) and self.cmpd in ("", None) @property def max_tx_courseno(self): db = connect.connect() cursor = db.cursor() if cursor.execute(MAX_COURSE_QUERY, (self.serialno,)): cno = cursor.fetchone()[0] else: cno = 0 cursor.close() return cno @property def newer_course_found(self): try: return self.max_tx_courseno > self.courseno except TypeError: # one or both of these values are NoneType if self.max_tx_courseno: return True return False @property def has_exam(self): return self.examt != "" and self.examd def setAccd(self, accd): ''' set the acceptance date (with a pydate) ''' if accd is None: accd = localsettings.currentDay() self.accd = accd def setCmpd(self, cmpd): ''' set the completion date (with a pydate) ''' self.cmpd = cmpd def set_ftr(self, ftr): ''' ftr = "Failed to Return" ''' self.ftr = ftr @property def has_treatment_outstanding(self): for att in CURRTRT_ATTS: if att[-2:] == "pl": if self.__dict__[att].strip(" ") != "": return True return False @property def tx_hashes(self): return self._get_tx_hashes() @property def completed_tx_hash_tups(self): return self._get_tx_hashes(True) @property def completed_tx_hashes(self): for hash_, att, tx in self._get_tx_hashes(True): yield hash_ @property def planned_tx_hash_tups(self): for tup in self._get_tx_hashes(): if tup not in self.completed_tx_hash_tups: yield tup def _get_tx_hashes(self, completed_only=False): ''' returns a tuple (unique hash, attribute, treatment) hashes will be unique as multiple identical items are indexed eg. eg "perio SP AC SP " is hashed as follows "%sperio1SP"% courseno "%sperio2SP"% courseno "%sperio1AC"% courseno ''' if self.examt != "": hash_ = localsettings.hash_func( "%sexam1%s" % (self.courseno, self.examt)) yield (hash_, "exam", self.examt + " ") for att in CURRTRT_ROOT_ATTS: treats = self.__dict__[att + "cmp"] if not completed_only: treats += " " + self.__dict__[att + "pl"] treat_list = sorted(treats.split(" ")) prev_tx, count = None, 1 for tx in treat_list: if tx == "": continue if tx != prev_tx: count = 1 prev_tx = tx else: count += 1 hash_ = localsettings.hash_func( "%s%s%s%s" % (self.courseno, att, count, tx)) yield (hash_, att, tx + " ") def get_tx_from_hash(self, hash_): ''' example imput a hash 039480284098 get back ("ur1", "M") ''' for tx_hash in self.tx_hashes: if tx_hash[0] == hash_: return tx_hash[1], tx_hash[2] LOGGER.warning("couldn't find treatment %s" % hash_) LOGGER.debug("listing existing hashes") for tx_hash in self.tx_hashes: LOGGER.debug(tx_hash) return None, None def pl_txs(self, att): ''' returns the list of treatments currently planned for this attribute. eg pl_txs("ul8") may return ["O", "B,CO"] ''' txs = self.__dict__["%spl" % att].split(" ") while "" in txs: txs.remove("") return txs def cmp_txs(self, att): ''' returns the list of treatments currently planned for this attribute. eg cmp_txs("ul8") may return ["O", "B,CO"] ''' txs = self.__dict__["%scmp" % att].split(" ") while "" in txs: txs.remove("") return txs def all_txs(self, att): ''' returns the list of treatments currently associated with an attribute. eg all_txs("ul8") may return ["O", "B,CO"] ''' return self.cmp_txs(att) + self.pl_txs(att) @property def course_duration(self): if not self.cmpd: return (_("still ongoing")) else: days = (self.cmpd - self.accd).days + 1 if days == 1: return "1 %s" % _("day") return "%s %s" % (days, _("days")) def to_html(self, allow_edit=False, days_elapsed=None, completed_only=False): def sorted_work(work): items = work.split(" ") return " ".join(sorted([item for item in items if item != ""])) if allow_edit: edit_str = '''%s
%s ''' % ( self.courseno, _("Edit Course Dates"), self.courseno, _("Edit Treatments")) else: edit_str = "" if days_elapsed is None: days_str = "" else: days_str = " (%s %s)" % (days_elapsed, _("days earlier")) html = '''

%s %s %s

%s ''' % ( _("Course Number"), self.courseno, days_str, _("PATIENT FAILED TO RETURN") if self.ftr else "", edit_str, _("Opened"), localsettings.formatDate(self.accd), _("Closed"), localsettings.formatDate(self.cmpd), _("Duration"), self.course_duration, ) attributes = ("cmp",) if completed_only else ("pl", "cmp") # plan row. for planned in attributes: rows = [] if planned == "pl": bgcolor = ' bgcolor = "#eeeeee"' header = "%s
%s" % (_("Planned"), _("or incomplete")) else: bgcolor = ' bgcolor = "#ddeeee"' header = _("Completed") if self.examt != "": exam_details = self.examt if self.examd: exam_details += " %s - %s" % ( _("dated"), localsettings.formatDate(self.examd)) cells = "%s\n\n" % ( bgcolor, _("Exam"), exam_details) rows.append(cells) for att, con_att in ( ("perio", _("perio")), ("xray", _('xray')), ("anaes", _('anaes')), ("other", _('other')), ("custom", _("custom")), ('ndu', _("New Denture (upper)")), ('ndl', _("New Denture (lower)")), ('odu', _("Other Denture (upper)")), ('odl', _("Other Denture (lower)")), ): work = self.__dict__[att + planned] if work.strip(" ") != "": cells = "%s\n\n" % ( bgcolor, con_att, sorted_work(work)) rows.append(cells) show_chart = False row1, row2, row3, row4 = "", "", "", "" for att in UPPERS: work = self.__dict__[att + planned] row1 += '\n' % sorted_work(work) row2 += '\n' % ( bgcolor, att.upper()) show_chart = show_chart or work.strip(" ") != "" for att in LOWERS: work = self.__dict__[att + planned] row3 += '\n' % ( bgcolor, att.upper()) row4 += '\n' % sorted_work(work) show_chart = show_chart or work.strip(" ") != "" if show_chart: chart_cells = ''' ''' % (row1, row2, row3, row4) rows.append(chart_cells) row_span = len(rows) if rows != []: html += '\n\n' % ( row_span, bgcolor, header) for row in rows: if row == rows[0]: html += "%s\n" % row else: html += "%s\n" % row html += '
%s %s %s
%s %s
%s %s
%s%s
%s%s%s%s %s\n%s\n%s\n%s\n
%s
\n' return html if __name__ == "__main__": ''' testing stuff ''' tc = TreatmentCourse(14469, 45869) print(tc) print(tc.non_tooth_plan_items) print(tc.non_tooth_cmp_items) print(tc.all_txs("ur5")) f = open("/home/neil/out.html", "w") f.write(tc.to_html()) f.close() openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/writeNewCourse.py0000644000175000017500000000431012710144045024510 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.connect import connect INS_QUERY = 'insert into currtrtmt2 (serialno, accd) values (%s, %s)' DEL_QUERY = 'delete from currtrtmt2 where serialno = %s and courseno = %s' def write(serialno, accd): db = connect() cursor = db.cursor() cursor.execute(INS_QUERY, (serialno, accd)) cno = db.insert_id() cursor.close() return cno def delete(serialno, courseno): db = connect() cursor = db.cursor() cursor.execute(DEL_QUERY, (serialno, courseno)) cno = db.insert_id() cursor.close() if __name__ == "__main__": print("started course %d" % write(31720, "20081225")) openmolar-1.0.15-gd81f9e5/src/openmolar/dbtools/writeNewPatient.py0000644000175000017500000000574513022233054024665 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar import connect from openmolar.dbtools import patient_class NEXT_SNO_QUERY = "SELECT MAX(serialno) + 1 FROM new_patients" QUERY = '''INSERT INTO new_patients (serialno, %s) VALUES (%%s, %s)''' def commit(pt): db = connect.connect() cursor = db.cursor() cursor.execute(NEXT_SNO_QUERY) sno = cursor.fetchone()[0] cursor.close() if sno is None: sno = 1 attrs, vals = [], [] for attr in patient_class.patientTableAtts: value = pt.__dict__[attr] if value: attrs.append(attr) vals.append(value) query = QUERY % (",".join([a for a in attrs]), ",".join(['%s' for a in attrs])) _attempts = 0 while True: try: db = connect.connect() cursor = db.cursor() cursor.execute(query, [sno] + vals) cursor.close() db.commit() break except connect.IntegrityError as exc: print("error saving new patient, will retry with new serialno") print(exc) sno += 1 _attempts += 1 if _attempts > 20: sno = -1 break return sno if __name__ == "__main__": test_pt = patient_class.patient(0) test_pt.fname = "Norman" test_pt.sname = "Wisdom" # ok - so a trivial change has been made - now write to the database print(commit(test_pt)) openmolar-1.0.15-gd81f9e5/src/openmolar/locale/0000755000175000017500000000000013024000134020731 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/locale/af.po0000644000175000017500000120332012700510625021673 0ustar neilneil00000000000000# Afrikaans translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-04-23 06:13+0000\n" "Last-Translator: Neil Wallace \n" "Language-Team: Afrikaans \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:16+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "Beraming" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "Outeur" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "Nr." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Beskrywing" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Tandarts" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Fooi" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Verander" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "Allergies" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Hart" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "Bloeding" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Lewer" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Kode" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Kontant" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Tjek" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Bedrag" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Titel" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Van" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Voornaam" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Dorp" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Land" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "Ontvangs" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telefoon" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Voltooid" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Ondersoek" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "ander" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Redigeer" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Memo" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "Mediese Notas" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "Geskiedenis" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Begin" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "Alles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Middag ete" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Nie op kantoor nie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Lengte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "BPE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Vorm" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "Keuseblokkie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Behandelings plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" "Plaas die volgende behandelings item by die huidige behandelings plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Selekteer Afspraak Lengte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Ure" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Afspraak Towennaar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" "Plaas 'n kombinasie van voorgestelde afsprake op die pasient se dagboek." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "Woord Etiket" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Voeg by" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Klinikuste - Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Klinikus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Voltooi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Sluit Begin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Sluit Eindig" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Woorde om aan te wend" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Gesluit//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Ongevalle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "Reserveer Kliniese Tyd" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Dialoog" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Doelgeboude Item" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Aantal Items" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Dag Lys Druk Towenaar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "Spesifiseer Datums en Praktisyns vir die Dag Lys Druk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Begin Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Einde Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "Alle Praktisyns on Een Bladsy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "Een Praktisyn per Bladsy - Minimum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "Een Praktisyn per Bladsy - Volledige Bladsy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "Gaan na Vandag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Dagaansig" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Weekaansig" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Maand" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Maandaansig" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "Jaaraansig" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Ondersoek Towenaar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Tipe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standaard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "Ekstensief" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Volle Geval Ondersoek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Ondersoek Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "Afspraak Tyd" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Spasie Voor Afspraak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Spasie na Afspraak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "Forum Invoer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Onderwerp" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Kommentaar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "Skraap en Poleer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "Ekstensiewe Skraping" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "Verlaat die Huidige Pasient Rekord." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Esc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Voeg 'n nuwe Pasient by die databasis." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "Druk op die Knoppie om te soek vir die pasient in die databasis." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Soek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "Hierdie gaan deur die rekords wat vandag by gevoeg is." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Herlaai die pasient van die databasis." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "Hierdie gaan deur die rekords wat vandag by gevoeg is." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "Wys die pasient wat by dieselde adres bly of dieselde naam het." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Besonderhede" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Geboorte Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Adres3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "Stuur 'n sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "e-pos2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Faks" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "e-pos1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "stuur 'n e-pos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "e-pos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Beroep" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Tel (selfoon)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Adres2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Geslag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "Manlik" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "Vroulik" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Pos Kode" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Tel (huis)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "stuur 'n faks" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "faks" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Adres1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Tel (werk)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "Onderstreep velde wat nootsaaklik is vir nuwe Pasiente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "Gebruik die naam en adres besonderhede van die vorige pasient." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Pasient Besonderhede" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "Pasient is gerigistreer by die tandarts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Kursus Tipe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Status" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Skryf Slegte Skuld Af" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "Hierdie etiket is vir Privaat Kontraktuele Goed" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Privaat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "Hierdie etiket is vir HDP Kontraktuele Goed" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "Highland Tanddeelkundige Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "Hierdie etiket is vir NHS Kontraktuele Goed" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "Vertoon Eis Geskiendenis" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" "Geen details van die pasient se gerigistreerde tandarts kon gevind word nie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Kontrak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Briewe NA die pasient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Doelgeboude Briewe na die pasient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "Druk 'n herroep wat se die pasient het tans 'n opvolg datum." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Druk 'n kwitansie - nuttig vir duplikate." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Duplikaat kwitansie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "Verwysings (Briewe oor die pasient)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Druk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" "Druk 'n opsomming van die pasient se notas (vir tuis gebruik). Sluit geen " "fooi details in nie." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "Vorige Korrospondensie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Korrespondensie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "Pasient Dagboek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "Druk 'n GP17" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Allerlei" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "Druk &Beraming" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "Druk &Rekening" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "Neem &Betaling" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Nuwe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "Kliniese Opsomming" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Betalings" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Notas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Staties" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "Behandeling Beplanning" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "X-strale" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "Gebit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Ander" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "Doelgebou Beraming Briewe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "Her-bereken Beraming" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "Kursus Tandarts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "Sluit Kursus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "Memo's" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "veranderinge alleenlik" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "Vandag se Notas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "Frase Boek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "Ins" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "Stoor veranderinge van die rekord." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Stoor veranderinge" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Voer Notas in." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Pasient Databasis" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "Afsprake / Dagboek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "Registreerde Tandarts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Gaan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "Druk die Data" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "Kasboek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "Dagboek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "Laai Tabel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "Druk Tabel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "Druk Verkose Briewe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "TOTAAL UIITSTAANDE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Rekeninge" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Ontvou Alles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "Ontvou Alle Afdelings" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "Verklein Alle Afdelings" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "Fooi Skale" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Antwoord terug" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Verwyder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "Nuwe Onderwerp" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Soek met sleutelwoord" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "FORUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&Lêer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Help" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Voorkeure" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&Uitvoer van Pasient na skyf" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&Invoer Pasient vanaf skyf" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "Omtrent &OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "&Omtrent QT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Stop" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Skrifgrootte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "Vertoon gevorderde opsies" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "Tabel Aansig vir Grafieke" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "Stel Klinikus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "Vee vandag se ongevalle spasies skoon" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "Nuwe CPITN telling" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "Nuwe Kursus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "Begi 'n nuwe Behandelings Kursus met die volgende Kriteria?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "Kontrakteurde Tandarts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "Aanvaar Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Nuwe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "Druk Kaart" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "Pasient Ontdekker" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" "Vul 'n paar van die volgende velde in om 'n lys van moontlike pasiente te kry" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Herhaal Laaste Soek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "SNO of Van" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" "Tik die volle naam of die eerste paar letters van die naam.\n" "\n" "As u onseker is van die spelling, tik dan die VOLLEDIGE naam\n" "en vergelyk met die \"klink soos\" area." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "merk om soortgelyke naam te soek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "Adres ingesluit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "openMolar sal die lyn1 en lyn2 deursoek vir die teks" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "openMolar sal tel1, tel2 en selfoon deursoek vir hierdie nommers" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "soek vir poskode" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "Plaas 'n memo oor hierdie Pasient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "Verval Beleid" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "Verval nie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "Verval op hierdie datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "Sigbaar met" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "Speekkamer Toerusting" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "Ontvangs Toerusting" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "Verwyder memo wanneer ek dit toe maak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "Voer 'n afspraak in" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "Afspraak met" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "40 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 uur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "1 uur en 15 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "1 uur en 20 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 uur en 30 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "1 uur en 45 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 ure" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "2 ure en 30 minute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 ure" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "Rede 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "Rede 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "Rede 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Vraag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "Stel Spreekkamer Nommer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "Ontvangs Toerusting" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "Spreekkamer Een" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "Spreekkamer Twee" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "Spreekkomer Drie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "verwyder tand data" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "Vm" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "ekstraksie (plan alleenlik!)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "wortel behandeling" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "Pas toe en gaan terug na tand" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "porselein fineer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "Pas toe & Voeg nog 'n Item by" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "&&" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "Pas toe & gaan na volgende tand" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "Redigeer Memo's" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Bevestig" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "TOTAAL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "Globale Memo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "Klinikus Memo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "Fisuur Verseellaar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "Wortel Kannaal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "Ekstraksie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "Chirurgiese Ekstraksie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "U het geen toekomstige behandeling vir die pasient, maar die pasient word " "gesien as \"onder behandeling\"." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Goud" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lawa" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Harpuis" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Wagwoord" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Gasheer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Poort" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Databasis Naam" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Voltooi Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "Speerkamer Toerusting" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "Sisteem Wagwoord" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Ander Betalings" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "Diverse" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "Bruto Fooi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "Verander na Pasient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Kanselleer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Kies" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "Help" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "gebruiker" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "wagwoord" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/da.po0000644000175000017500000117431012700510625021677 0ustar neilneil00000000000000# Danish translation for openmolar # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2011-09-11 20:42+0000\n" "Last-Translator: AJenbo \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:16+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Rådgivende" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Fejl" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "nødsituation" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "Skøn" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "Forfatter" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "Nr." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Beskrivelse" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Tandlæge" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Gebyr" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Emne" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "Til" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Fra" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Dato" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Besked" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Hjerte" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Kontant" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Check" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Beløb" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Titel" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Efternavn" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Fornavn" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Alder" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "By" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Adresse" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "land" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telefon" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "Planlagt" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Færdig" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "Røntgen" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "andet" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "tilpasset" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Redigér" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "I dag" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Note" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "Historik" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Start" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Slutning" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "Alle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Middag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Fraværende" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Dato og tid" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "Afkrydsningsfelt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Timer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "Tekstetiket" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Tilføj" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Indstillinger" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Nødsituation" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Telefonopkald" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Starttidspunkt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Ændre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Sprogvælger" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Dialog" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Startdato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Slutdato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "Gå til idag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Dagvisning" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Ugevisning" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Måned" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Månedvisning" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "År" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Type" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Emne" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Kommentar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Søg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Detaljer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "e-post" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Beskæftigelse" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Adresse2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Køn" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "M" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "K" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Postnummer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "send en fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Adresse1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Status" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Privat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Kontrakt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Udskriv" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Korrespondance" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Diverse" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "Penge" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Ny" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "Røntgen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Betalinger" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Noter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Statisk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "Røntgenbilleder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Andet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "Kurser" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "Huskesedler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Gem ændringer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Kør" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "Kredit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "Udskriv breve" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Vis alle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Svar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Slet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "Nyt emne" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Alle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "Wiki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&Fil" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Hjælp" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Indstillinger" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Afslut" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Skriftstørrelse" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "Nyt kursus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Ny" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "0,00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "Datoer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 time" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 time 30 minutter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 timer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 timer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Spørgsmål" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "AM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "GL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "Po" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "Elementer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Onsdag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "DATO" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "Vis historik" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "Venstre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "Højre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Bekræft" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "bekræft" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "fejl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "Udtrækning" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Guld" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "vis" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "Anvend ændringer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "Fjern" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Adgangskode" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Adgangskoderne er ikke ens!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Port" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Databasenavn" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "Tilbage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "Fortsæt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "spørgsmål" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "Afrikaans" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "Franske" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "Tysk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "Ungarnsk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "Italiensk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "Polsk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "Portugisisk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "Slovakisk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "Spansk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "Tyrkisk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "Fuldført" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Annullér" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Vælg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "ikke fundet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "Genåben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "Størrelse" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "åbner" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "Kollaps alt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "E-post" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Kunne ikke indlæse" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Mandag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Torsdag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Tirsdag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Fredag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Lørdag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Søndag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "Januar" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "Februar" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "Marts" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "April" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Maj" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "Juni" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "Juli" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "August" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "September" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "Oktober" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "November" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "December" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Ingen" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "I morgen" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "I går" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Version" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "adgangskode" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/de.po0000644000175000017500000123336012700510625021704 0ustar neilneil00000000000000# German translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-04-24 03:05+0000\n" "Last-Translator: Neil Wallace \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Hinweis" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Fehler" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "Notfall" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Fehler - unbekannter Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "Schätzung" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "Autor" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "Nr." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Beschreibung" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Zahnarzt" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Gebühr" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Gebühr" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Thema" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "An" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Von" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Nachricht" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "Allergien" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Herz" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "Blutungsneigung" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Leber" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Code" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Bargeld" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Scheck" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Betrag" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Brief Nr." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Serien-Nr." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Titel" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Nachname" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Vorname" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Alter" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Ort" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Anschrift" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Familie Nr." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Postleitzahl" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Recall Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Landkreis" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "Rezeption" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telefon" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "Sehr geehrte(r)" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "Geplant" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Abgeschlossen" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Prüfung" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "Paro" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "Röntgen" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "Anäthesie" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "weitere" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "Angepasst/benutzerdefiniert" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Bearbeiten" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "Heute" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Notiz" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "Ärztliche Notizen" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Behandlung" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "Verlauf" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "Vorheriger Behandlungsablauf" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Beginn" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Ende" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "PLAN" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "ABGESCHLOSSEN" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Keine Behandlung" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "Verfügbare Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "Verfügbare Zahnärzte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "Alle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Mittagspause" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "Teambesprechung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Abwesend" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "frei" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "Zeige vergangene Termine" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Datum & Uhrzeit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Dauer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "Sie müssen in der statischen Karte sein, um den Zahnstatus zu ändern" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "BPE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Formular" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "Auswahlfeld" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Behandlungsplanung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "Ergänzen Sie den Behandlungsplan um die folgenden Behandlungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Termindauer wählen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Stunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Termin-Assistent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "Hinzufügen von Terminkombinationen zum Patienten- Bestellbuch." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "Textfeld" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Hinzufügen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Behandler - Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Fertigstellen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" "Wenn Sie dieses Tagesschema in die Zwischenablage kopieren, können Sie eine " "leere Kopie dieses Tages erzeugen. Die ist nützlich für die Erweiterung von " "Büchern." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "In die Zwischenablage kopieren" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "Einfügen der gespeicherten Werte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "Einfügen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Einstellungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "Möchten Sie diese Lücke ganz (oder teilweise) blockieren?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Blockanfang" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Blockende" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Text anlegen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Blockiert//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Notfall" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "reservierte Behandlungszeit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "Zeit erfassen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Telefonanruf" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Block einfügen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "Patienten in die Lücke einsetzen?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Beginn" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "Ausgewählter Patient ist
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Ändern" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "Grund des Termins ist" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Bekannten Patienten einsetzen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "Serienversand - Optionen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "Datumsformat für die Briefe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Voll, Tag, Monat, und Jahr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "nur Monat und Jahr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "verwendetes Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "Heutiges Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "Das aktuelle Recalldatum des Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "Diese Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "Wähle Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Sprachauswahl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" "Bemerkung - wenn Ihre bevorzugte Sprache nicht vorhanden sein sollte (oder " "unvollständig ist), besuchen Sie https://launchpad.net/openmolar und helfen " "Sie mit!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Zahn auswählen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "Bitte den Zahn für die geplante Behandlung auswählen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Dialog" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Individuelles Element" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Anzahl an Elementen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Beschreibung der Behandlung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Tageslisten Druck-Assistent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" "Bitte Termine und Behandler für den Ausdruck der Tagesliste auswählen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Anfangsdatum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Enddatum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "Alle Behandler auf eine Seite" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "Ein Behandler pro Seite - minimal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "Ein Behandler pro Seite - Volle Seite" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "gehe zum heutigen Tag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Tagesansicht" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "Ansicht laufende Woche" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Wochenansicht" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Monat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "Drucke Monatsansicht" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "alle Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "Auswahl Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Monatsansicht" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "Jahr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "Jahresansicht" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "Agenda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Untersuchungs-Assistent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Typ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "Umfangreiche" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Volle Fallbewertung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Untersuchungstermin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "Termindauer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Platz vor dem Termin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Platz nach ndem Termin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "Eingabe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Thema" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Kommentar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "(0 Buchstaben)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "Kurettage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "Scaling und Polieren" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "Ausgedehntes Scaling" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "Verlasse den laufenden Patienten Datensatz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Escape" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Neuen Patienten zur Datenbank hinzufügen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" "Auf diesen Knopf drücken, um einen Patienten in Ihrer Datenbank zu suchen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Suchen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Strg+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "Dies führt zurück durch die Historie der heute geladenen Datensätze." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Patient erneut aus der Datenbank aufrufen." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Strg+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" "Dies führt vorwärts durch die Historie der heute geladenen Datensätze." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" "Zeige Patienten, die an der gleichen Adresse wohnen, oder den gleichen Namen " "haben." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Strg+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "Ein Dropdown-Feld über alle Patienten, die heute einen Termin haben." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Einzelheiten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Geburtsdatum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Adresse 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "Schicke eine SMS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "SMS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "E-Mail 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "E-Mail 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "Schicke eine E-Mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "E-Mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Beruf" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Telefon (mobil)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Adresse 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Geschlecht" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "M" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Postleitzahl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Telefon (privat)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "Sende ein Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Adresse 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Telefon (geschäftlich)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "Hervorgehobene Felder sind vorgeschrieben für neue Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "Benutze den Namen und die Adresse des vorherigen Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Patient Einzelheiten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "Pt ist registriert als Zahnarzt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Klassentyp" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Zustand" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Nicht einbringbare Forderung abschreiben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "Diuese Feld ist zur Anzeige privater Vereinbarungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Privat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "Diese Feld ist für die Anzeige von HDP Vertragsbedingungungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "Hochwertiger Versorgungsplan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "Diese Feld ist für die Anzeige des NHS Vertragsbedingungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "Zeigt den Verlauf der Forderungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "Befreiung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "Befreiungs Text" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "Keine Einzelheiten von PT's registrierten Zahnärzten gefunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "woanders registiriert" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Vertrag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Briefe AN Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Standardbrief an Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "Drucke einen Patienten Brief für einen Sofort- Recall jetzt." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Drucke ein Rezept,- nützlich für Duplikate" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Doppeltes Rezept" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "Empehlungen ( Briefe über den Patienten)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Drucke" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" "Zusammenfassung der Patientennotizen drucken (zur Aushändigung). Beinhaltet " "KEINE Preisdetails." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "Vorherige Korrespondenz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "Erzeugt von OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "Importiert in die Datenbank" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "Importiere ein Dokument" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Korrespondenz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "Patientenkartei" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "Drucke ein GP17" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "eine Befreiung anwenden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Verschiedene Einstellungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "Geld" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "Drucken &Schätzen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "Drucken &Konto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "Nehmen &Bezahlung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "Erneuer den Basis Parodontal- Untersuchungs Punktwert (CPITN)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Neu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "führe eine klinische Untersuchung durch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "füge Röntgenaufnahmen zur laufenen Behandlung des Patienten hinzu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "Röntgenaufnahme" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "Führe allgemeine Parodontalbehandlung durch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "Hel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "Beende diesen Behandlungsplan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "überprüfe / aktualisiere die Krankengeschichte des Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "Klinische Zusammenfassung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Zahlungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Notizen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Statisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "Behandlungsplanung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "Röntgenaufnahme" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "Paro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "Prothetik" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Sonstiges" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "benutzerdefinierter Kostenvoranschlag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" "Benutzen Sie dieses Feature um alle Behandlungselemente der Kategorie " "\"Zahn\" umzupreisen. z.B. von allen, die in der Kartei angezeigt werden.\n" "\n" "Beachte - schon angezeigte Elemente werden nicht entfernt. " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "Kostenvoranschlag neu berechnen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "Befreiung anwenden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "behandelnde zahnarzt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "Beenden des Behandlungsablaufes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "Parodntal Messungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "Zeige alle Zahlungen diese Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "Zeige abgeschlossene Behandlungen nach Datum sortiert" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" "Zeige alle Behandlungsabläufe, inclusive der geplanten, aber nicht " "vollendeten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "Behandlungsabläufe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "Behandlungsplan- Historie für diesen Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "Planungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "NHS Claims" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "Notizen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" "Erweiterte Optionen für Entwickler. Erwarten Sie nicht zuviel Sinnvolles !\n" "Wenn die \"nur Änderungen\" Anzeibge ist selektiert, werden nur dei " "veränderten Daten angezeigt." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "Fehlersuche- Werkzeuge" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "nur Änderungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "Drucke den angezeigten Text dieser Seite" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "heutige Notizen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "Textbausteine Buch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "Einfg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "Änderungen an diesem Datensatz speichern." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Änderungen Speichern" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Strg+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Notizen eingeben." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Patienten Datenbank" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "Termine / Journal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "erfasste Zahnärzte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Los" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "Daten drucken" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "Kassenbuch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "Tagebuch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "Finde die Patientendatensätze, die diesen Patienten enthalten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "Schulden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "Guthaben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "Mit mehr als" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "Lade Tabelle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "Drucke Tabelle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "Drucke selektierte Briefe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "Summe ausstehende Zahlungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Zugänge" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "Drucke Briefe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Alle aufklappen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "Brief- Optionen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "Serienbriefe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "vorhandene Honorarposition" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" "Benutze dieses Kontrollelement um eine Honorarposition zu selektieren" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "Suche einen Eintrag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "Die Eingabe in der Beschreibungs Spalte suchen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "Suche Beschreibungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "Die Eingabe nur in der Benutzercode Spalte suchen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "Schnelles Aufklappen aller Datensätze" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "Aufklappen aller Bereiche" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "Schnelles Komprimieren aller Bereiche" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "Komprimiere alle Berecihe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "Öffne ein PDF der neuesten NHS Vorschriften" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "Honorarpositionen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Antworten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "Alt+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Löschen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "ENTF, Backspace" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "&setze Eltern" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "Alt+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "Neues Thema" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Suche nach Schlüsselwort" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "Zeige Themen für" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Jeder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "Schließe gelösche Eingaben ein" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "verteile die Rückantwort" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "Gruppen Rückantwort" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "&Schließe Rückantworten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "&Erweitere Rückantworten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "Forum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "Wikipedia Inhalte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&Datei" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Hilfe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Voreinstellungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&exportiere Patient auf Diskette" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&importiere Patien von Diskatte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "Über &OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "&über QT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Beenden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "Vollbildmodus (STrg-Alt-F)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "Strg+Alt+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Schriftgröße" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "Tabellen Übersichts Karte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "Bestimme Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "Assistenten einrichten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "Erweiterte Datensatz Bearbeitung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "Lösche heutige Notfall- Lücken" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "Neuer CPTTN Index" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "Neuer Behandlungsablauf" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "Beginne einen neuen Behandlungsablauf mit den folgenden Kriterien" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "Vertrags- Zahnarzt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "Annahme Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "Assistent zur Selektion von gebräuchlichen TerminKombinationen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "Neuer Termin für diesen Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Neu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "Drucke die nächsten 5 Termine für diesen Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "Drucker Karte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "Patienten finden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" "Füllen Sie einige der folgenden Felder aus, um eine Liste möglicher " "Patienten zu bekommen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Wiederhole letze Suche" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "Familien- oder Zuname" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" "Geben Sie den vollständigen Namen oder die ersten Buschstaben des Namens " "ein.\n" "\n" "Wenn Sie sich unsicher in der Buschstabierung sind, geben Sie den " "vollständigen Namen ein,\n" "und setzen Sie den Haken in der angrenzenden \"klingt wie\" Box." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "ankreuzen zum Suchen nach einem ähnlich klingenden Namen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" "Geben Sie den vollständigen Namen oder die ersten Buschstaben des Namens " "ein.\n" "\n" "Wenn Sie sich unsicher in der Buschstabierung sind, geben Sie den " "vollständigen Namen ein,\n" "und setzen Sie den Haken in der angrenzenden \"klingt wie\" Box.\n" "Aufpassen bei Mittleren Namenszusätzen. \n" "z.B. \"Neil\" klingt nicht wie \"Neil Alexander\"" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "Adressen inclusive" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" "open Molar untersucht Zeile 1 und Zeile 2 der Adresse für diesen Test" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" "openMolar sucht Tel1, Tel2 und Mobil Tel. für die hier eingegebenen Nummern." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "Suche nach Postleitzahl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "NHS laufende Honorarpositionen( money0)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "NHS Zahlungen ( Money 2)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "NHS erwartet( Money 4)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "Private Einnahmen ( money 5)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "Gesamt - NHs brutto - abgeschlossenen Behandlungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "Gesamt NHS brutto - erwartete laufende" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "Forderungen (money 8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "Schulden (money9)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "Schulden 2 ( Money10)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "Privates leufendes Honorrar (money 1) " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "Privare Zahlungen ( money3)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "Alle Einnahmen sind in Cent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "0,00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "Letztes CE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "Datum hinzufügen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "Letztes ECE (Pd6)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "Letztes FCA ()Pd8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "Letztes OPG (pd8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "Letzer Zahnfilm Röntgenaufnahme" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "Letzes SP (pd10)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "Letzer zugang gesendet (Billdate)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "Datumangaben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "Versteckte Notizen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "Memo über diesen Patienten schreiben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "Versicherungs Ablauf" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "Läuft nicht ab" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "Läuft an diesem Tag aus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "Sichtbar von" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "Operationsgeräte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "Rezeptionsgeräte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "Diese Memo löschen, wenn abgeschlossen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "Termin eingeben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "Termin mit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "40 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 Stunde" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "1 Stunde 15 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "1 Stunde 20 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 Stunde 30 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "1 Stunde 45 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 Stunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "grund 12 Stunden 30 Minuten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 Stunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "Grund 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "Grund 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "Grund 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Frage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "Bitte Operations Nummer eingeben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "Rezeptionsgerät" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "Behandlungszimmer 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "Behandlungszimmer 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "Behandlungszimmer 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "Zahndaten löschen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "Kommentar hinzufügen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "vormittags" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "CO" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "GL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "Po" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "Extrahieren (nur Planung!)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "Wurzelkanalbehandlung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "RT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "anwenden und einen Zahn zurückgehen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "Veneer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "Anwenden & weiteres Element hinzufügen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "&&" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "Anwenden und zun nächsten Zahn gehen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "Zahngesundheits Erfassung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "UR8" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "Elemente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "Datenbank Linie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "Fehlderhafte Ausnahme Kategorie angewählt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "Nicht im Büro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "mit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "Oh je !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "Falsche Zeit Abfolge!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "Notizen bearbeiten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "Bearbeite Tagesnotizen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "Bearbeite die allgemeinen Feiertage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Mittwoch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "Datum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "Springe zum Milchzahnstatus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "Lösche ale Restaurationen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "Verlauf anzeigen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "Links" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "Rechts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Bestätigen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "bestätigen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "GESAMT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "Fehler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "Sie können keine Termine in der Vergangenheit vergeben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "hergestellt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "am" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "Kronen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "Fissurenversieglungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "Wurzelfüllungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Herlfein" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "abgeschlossene Behandlungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "Welche Behandlung ist durchgeführt worden?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "Adress Treffer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "Sprechzeiten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "Werte von" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "nächster" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "Behandler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "Tage eingeben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "Änderungen anwenden für" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "Information" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "Hauptnotizen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "Behandler Notizen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "Wähle einen Assistenten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "Kein Patient ausgewählt!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "Beginn liegt außerhalb der Blockgrenzen (zu früh)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "Beginn liegt außerhalb der Blockgrenzen (zu spät)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "Ende liegt außerhalb der Blockgrenzen (zu spät)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "Ende liegt außerhalb der Blockgrenzen (zu früh)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "Länge des Termins ist zu kurz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "Kein grund für den Block wurde angegeben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "kein Patient ausgewählt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "Unmöglich zu bearbeiten, weil" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "Patient nicht gefunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "Gewählter Patient ist" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "Kein Patient ausgewählt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "Fehler bei der Entfernung aus der Patientenkarte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "Fissurenversiegelung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "Vitalextirpation - 1 Kanal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "Vitalexstirpation - 2 Kanäle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "Wurzelkanal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "Unvollständige Wurzelfüllung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "Extraktion" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "ioperative Zahnentfernung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "Wurzelspitzenresektion" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "Wählen Sie einen Behandler aus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "KEIN" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "Sie haben keine weiteren Behandlungen vorgeschlagen, dennoch scheint es, der " "Patient steht \"unter Behandlung\"." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Gold" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lava" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Kunststoff" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "Fehler beim Öffnen des PDF Files" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "Zeigen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "Fehler bei Durchsicht des PDF FIles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "Professionelle Dienstleitungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "Sprechstunden Zeiten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "Änderungen anwenden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "Ist das richtig?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "Untersuchung nicht stattgefunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "ausgeführt durch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "Entfernen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "Kein Treffer gefunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Adresszeile 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Adresszeile 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Passwort" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Passwörter stimmen nicht überein!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Host" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Port" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Datenbank-Name" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Datenbank erstellen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Erfolg!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Fehler bei Einrichtung der Datenbank" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "Zurück" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "abgeschlossene Behandlung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Letzter Behandlungstag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "Fortfahren" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "Operationsgerät" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "System Passwort" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Kann OpenMolar nicht starten !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Auf Wiedersehen!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Login-Fehler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "Fehler beim Holen der Serien-Nr." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "Bitte überprüfen: Ist diese Nummer richtig?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "Frage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "Einige Eingabefelder fehlen, bitte überprüfen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Andere Zahlungsmöglichkeit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "Verschiedenes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "Englisch (Vereinigtes Königreich)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "Englisch (Australien)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "Afrikanisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "Dänisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "Französisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "Deutsch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "Ungarisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "Indonesisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "Italienisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "Okzitanisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "Polnisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "Portugiesisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "Slowakisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "Spanisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "Türkisch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "klicken um Element zu bearbeiten - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "klicken um Element zu löschen - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "klicken um Element vorzubringen - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "Bitte selektieren Sie einen Termin für die Vergabe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "Termin ist bereits vergeben für" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "Bitte einen Termin zum Einfügen auswählen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "Bitte einen anderen Termin auswählen - dieser ist vergeben!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "Sie haben einen Termin gewählt mit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "Bestätigen Sie die Terminvergabe für" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "Fehler bei Rückübertragung des Termins in die Patientenkartei" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "Fehler bei Terminvergabe - Entschuldigung !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "Wollen Sie die selektierte Lücke wieder freigeben?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "Blockieren unmöglich - wurde das Buch irgendwo geändert?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" "kein Termin kann festgelegt werden - wurde das Buch woanders geändert?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "allgemeine Feiertage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "Eingabe der Information für " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "Falsche Datumsangabe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" "Bitte speichern Sie den alten Behnadlungsablauf bevor Sie weitermachen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "Benutzer- Code" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "Kurzbeschreibung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "Füge zum tx plan hinzu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "Füge zum tx Plan des Patienten hinzu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "enthält Einträge:" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "Ausdruck in Honorartabelle nicht gefunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "Benutzer- Code oder -beschreibung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "IN LAUFENDER BENUTZUNG" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "Fehler in Honorartabelle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "Wurden diese Röntgenaufnahmen heute aufgenommen?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "Vollständig" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Abbrechen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Wählen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "Weitersuchen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "Beratung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "nicht gefunden" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "Lösche %d Meldungen?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "Selektierte Meldung entfernen ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "Verknüpfung abgebrochen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "Klicken Sie auf den übergeordneten Eltern- Eintrag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Fortfahren ohne Aktualisierung?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "verändere Zahnarzt in" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "verändere Assistent in" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "Sie haben ungespeicherte Veränderungen am Datensatz von" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "ist nicht länger in dieser Praxis als Zahnarzt aktiv" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "unbekannter Vertrags Zahnarzt - Bitte korrigieren" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "Erneut öffnen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "Wollen Sie dieses Element neu bearbeiten/drucken?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "Keine Information verfügbar für dieses Dokument, Entschuldigung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "Datum eingelesen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "Größe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "Öffnen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "Fehler bei Datei Import" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "Keine Datei ausgewählt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "Möchten Sie eine Kopie dieses Dokumentes öffnen?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "Fehler beim Öffnen des Dokumentes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "Patienten von heute" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "Patienten von heute (ALLE)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "Patient nicht geladen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "Keine Behandler eingerichtet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "BEHANDLER" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "Team" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "verwendet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "Modus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "Frau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "Herr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "Frau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "Frau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "Dr." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "Master" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "Professor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "NEUE FORUM EINTRÄGE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "Öffne Patienten- Datei" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "MÖGLICHERWEISE ERNSTES ZUORDNUNGSPROBLEM MIT DEN PT RECORDS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "kein Datensatz selektiert" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "Schriftgröße" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "Geben Sie ihre bevorzugte Schriftgröße für das Bestellbuch ein" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "Kostenplan verwerfen und alles neu bepreisen?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "Eingabe benötigt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "maximaler Betrag für diesen Patienten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" "Bitte diesen Betrag in Cent angeben, oder 0 lassen für eine vollstaändige " "Befreiung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "Fewhler beim Speichern des neuen Patienten, Entschuldigung!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "Schatten" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "Textbausteine-Verzeichnis" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "BESTÄTIGUNG DER ABRECHNUNG - LETZE MAHNUNG" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "Wir bedauern sehr, daß trotz unserer vorheriger Vereinbarungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "Ihre offenen Zahlungen belaufen sich wie folgt: " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" "Bitte beachten Sie, daß ihre offenen Zahlungen sich wie folgt belaufen : " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "Zahlbetrag :%s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "Dieser Zahlbetrag ist insgesamt fällig. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "Eine frühere Mahnung wurde an Sie verschickt am %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" "Wir erwarten, daß Sie diese Angelegenheit so schnell wie möglich erledigen." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "Wir erwarten den Eingang Ihrer Zahlung innerhalb von 7 Tagen." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "Danach werden wir unsere Forderung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "gerichtlich geltend machen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "Mit freundlichen Grüßen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "* Schecks bitte an:\n" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" "oder teilen Sie uns Ihre Kreditkarten-nummer (Swith/Visa/Matercard) mit." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" "Wir möchten Sie zur nächsten zahnärztlichen Untersuchung in unsere Praxis " "einladen." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" "Bitte treten Sie in Kontakt mit der Praxis, um einen Termin zu vereinbaren. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" "Wir möchten Sie zur nächsten zahnärztlichen Untersuchung in unsere Praxis " "einladen." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" "Bitte kontaktieren Sie uns in unserer Praxis für eine Terminvergabe. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "unsere Verbindung" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "Keine Daten geladen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "Gruppen Einstellungen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "Alles einklappen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "EIn NHS Formular jetzt drucken ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "E-Mail-Adresse" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "PDF ist NONE - (Sagen Sie devs das dies geschah)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "Fehler beim Speichern der PDF Kopie als %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "Nichtsw auszudrucken - ist die Tabelle geladen?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" "ZahntSerien-Nr.Anrede\n" "VornameNachnameDOBNotizLetzte " "U\n" "Letzte RechnunglArtNummerBeendet\n" "Betrag" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "Heil. und Kostenplan für Ihre laufenden Behandlungsfall" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" "

Bitte beachten Sie, daß sich dieser Heil- und Kostenplan\n" "aufgrund nicht vorhersagbarer medizinischer Umstände ändern kann.

" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "Wir hoffen Sie bald zu sehen." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "Sehr geehrte(r) %s %s," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "Bitte geben Sie einen Behandler ein" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "Kein Termin ausgewählt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "Fehler beim Einfügen in die Patientenkartei" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "Aktualisieren auf Aufbau Version" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "Umsetzung auf %s fehlgeschlagen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "Erstelle neue Tabellen" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "Aktualisiere gespeicherte Schema Version" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "Einstellungen aktualisieren" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "Kopiere Daten von alter Honorartabelle" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "übertrage Daten" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "Füge Werte ein" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "Führe die Befehle aus" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Laden fehlgeschlagen" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "Bitte versuchen Sie eine mindestens 24 stündige Notiz zu geben" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "wenn Sie Ihren Termin ändern möchten." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "BEH" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "BISS" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "BT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "FAMILIE" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "FLLG" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "FIT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "HYG" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "IMPS" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "LF" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "ORTHO" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "SCHMERZ" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "PRÄP" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "RCT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "RECEMENT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "REVIEW" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "SP" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "TRY" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "XLA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Montag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Donnerstag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Dienstag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Freitag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Samstag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Sonntag" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "Januar" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "Februar" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "März" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "April" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Mai" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "Juni" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "Juli" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "August" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "September" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "Oktober" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "November" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "Dezember" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Keine" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "Morgen" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "Gestern" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "Wilkomen bei OpenMolar!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Version" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" "Sie können auf Ihre Daten zugreifen, und der Server meldet keine Warnungen." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "Viel Spaß !" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "Benutzer" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "Passwort" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/el.po0000644000175000017500000121437012700510625021714 0ustar neilneil00000000000000# Greek translation for openmolar # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2011. # Efstathios Iosifidis , 2011. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2011-07-29 15:37+0000\n" "Last-Translator: Efstathios Iosifidis \n" "Language-Team: Ελληνικά, ΣÏγχÏονα \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" "Language: el\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Συμβουλευτικός" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Σφάλμα" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "επείγον" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Σφάλμα - μη αναγνωÏίσιμος επαγγελματίας-λυποÏμαστε" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "ΣυγγÏαφέας" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "Îο." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "ΠεÏιγÏαφή" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "ΟδοντίατÏος" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "ΧÏέωση" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Θέμα" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "ΠÏος" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Από" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "ΗμεÏομηνία" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Μήνυμα" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "ΑλλεÏγίες" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "ΚαÏδιά" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "ΑιμοÏÏαγία" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Συκώτι" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Κωδικός" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "ΜετÏητά" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Τσέκ" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Ποσό" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Îο Επιστολής" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "ΣειÏιακός αÏιθμός" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Τίτλος" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Επώνυμο" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Όνομα" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Ηλικία" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Πόλη" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "ΔιεÏθυνση" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Îο Οικογένειας" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "ΤΚ" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "ΗμεÏομηνία Ανάκλησης" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Îομός" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Τηλέφωνο" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "ΟλοκληÏώθηκε" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Εξέταση" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "πεÏιοδοντίτιδα" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "ακτινογÏαφία" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "αναισθησία" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "άλλο" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "Ï€ÏοσαÏμοσμένο" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "ΕπεξεÏγασία" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "ΣήμεÏα" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "ΘεÏαπεία" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "ΙστοÏικά" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "ΠÏοηγοÏμενη συνεδÏία" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "ΈναÏξη" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Λήξη" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "ΠΛΑÎΟ" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "ΟΛΟΚΛΗΡΩΜΕÎΟ" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Καμία θεÏαπεία" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "Διαθέσιμοι Κλινικοί" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "Διαθέσιμοι οδοντίατÏοι" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "Όλα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "ΓεÏμα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "συνάντηση Ï€ÏοσωπικοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Εκτός ΓÏαφείου" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "ΑπÏογÏαμμάτιστο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "ΠÏοβολή ΠεÏασμένων ΡαντεβοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "ΗμεÏομηνία & ÎÏα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Από" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Πλάνο ΘεÏαπείας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "ÎÏες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Οδηγός ΡαντεβοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "ΠÏοσθήκη" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Κλινικός ΙατÏός" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Λήξη" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "ΑντιγÏαφή στο ΠÏόχειÏο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "Επικόλληση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Επιλογές" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Κείμενο Ï€Ïος εφαÏμογή" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Επείγοντα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Τηλεφώνημα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "ÎÏα έναÏξης" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "Ο επιλεγμένος ασθενής είναι
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Αλλαγή" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "Η αιτία για το ÏÎ±Î½Ï„ÎµÎ²Î¿Ï ÎµÎ¯Î½Î±Î¹" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Εισαγωγή Î“Î½Ï‰ÏƒÏ„Î¿Ï Î‘ÏƒÎ¸ÎµÎ½Î®" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "ΠλήÏες, ΗμέÏα, μήνας και ΧÏόνος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Μόνο Μήνας και Έτος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "ΗμεÏομηνία Ï€Ïος χÏήση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "ΣημεÏινή ΗμεÏομηνία" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "Επιλέξτε ΚλινικοÏÏ‚ ΙατÏοÏÏ‚" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Επιλογέας Γλώσσας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Επιλέξτε Δόντι" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "ΠαÏακαλώ επιλέξτε το δόντι για το οποίο σχεδιάστηκε η θεÏαπεία" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Διάλογος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "ΠεÏιγÏαφή ΘεÏαπείας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "ΠÏοβολή ΗμέÏας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "ΠÏοβολή ΤÏέχουσας Εβδομάδας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "ΠÏοβολή Εβδομάδας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Μήνας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "ΕκτÏπωση Εμφάνισης Μήνα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "Επιλογή Κλινικών ΙατÏών" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "ΠÏοβολή Μήνα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "Έτος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "ΠÏοβολή Έτους" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "ΤÏπος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "ΗμεÏομηνία Εξέτασης" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "ÎÏα ΡαντεβοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Κενό ΠÏιν το ΡαντεβοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Κενό Μετά το ΡαντεβοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Θέμα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Σχόλιο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "(0 χαÏακτήÏες)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Esc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "ΠÏοσθήκη Îέου Ασθενή στην βάση δεδομένων." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "ΕÏÏεση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "ΠληÏοφοÏίες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "ΗμεÏομηνία Γέννησης" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "ΔιεÏθυνση3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "αποστολή sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "email2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Φαξ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "email1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "αποστολή ηλεκτÏονικής αλληλογÏαφίας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Απασχόληση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Τηλ (Κινητό)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "ΔιεÏθυνση2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "ΦÏλο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "Α" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "Γ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "ΤΚ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Τηλ (ΣπιτιοÏ)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "αποστολή φαξ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "φαξ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "ΔιεÏθυνση1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Τηλ (ΕÏγασίας)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "Τα φωτισμένα πεδία είναι υποχÏεωτικά για νέους ασθενείς" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "ΠληÏοφοÏίες ΑσθενοÏÏ‚" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Κατάσταση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "ΕκτÏπωση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "ΔιάφοÏα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "ΧÏήματα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Îέο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "ΑκτινογÏαφία" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "ΠληÏωμές" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Σημειώσεις" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "ΑκτινογÏαφίες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "ΠεÏιοδοντίτιδα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Άλλο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "Εμφάνισγ όλων των πληÏωμών στην βάση δεδομένων από αυτόν τον ασθενή" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "ΠÏοβολή ολοκληÏωμένων θεÏαπειών ανά ημέÏα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "μόνο αλλαγές" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "ΕκτÏπωση κειμένου που εμφανίζεται σε αυτή τη σελίδα." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "ΣημεÏινές Σημειώσεις" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Αποθήκευση Αλλαγών" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Εισαγωγή Σημειώσεων." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Βάση Δεδομένων ΑσθενοÏÏ‚" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "ΕγγεγÏαμένος ΟδοντίατÏος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Μετάβαση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "ΕκτÏπωση Δεδομένων" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "ΧÏέος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "Πίστωση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "ΕκτÏπωση Πίνακα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "ΕκτÏπωση Επιλεγμένων Επιστολών" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "ΛογαÏιασμοί" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "ΕκτÏπωση Επιστολών" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "Αναζήτηση για ένα αντικείμενο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "Αναζήτηση ΠεÏιγÏαφής" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "Alt+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "ΔιαγÏαφή" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "Alt+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Αναζήτηση με λέξη κλειδί" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Όλοι" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "Wiki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&ΑÏχείο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Βοήθεια" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&ΠÏοτιμήσεις" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&Εξαγωγή ΑσθενοÏÏ‚ σε δίσκο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&Εισαγωγή ΑσθενοÏÏ‚ από δίσκο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "ΠεÏί &OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&ΤεÏματισμός" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "ΠλήÏης Οθόνη (Ctrl-Alt-F)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "Ctrl+Alt+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Μέγεθος ΓÏαμματοσειÏάς" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Îέο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "ΕκτÏπωση ΚαÏτέλλας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "ΕυÏετήÏιο Ασθενών" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Επανάληψη Τελευταίας Αναζήτησης" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "αναζήτηση ταχυδÏÎ¿Î¼Î¹ÎºÎ¿Ï ÎºÏŽÎ´Î¹ÎºÎ±" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "0.00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "ΠÏοσθήκη ΗμεÏομηνίας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "ΗμεÏομηνίες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "ΚÏυφές Σημειώσεις" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "Εισαγωγή ÏαντεβοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "Î¡Î±Î½Ï„ÎµÎ²Î¿Ï Î¼Îµ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "40 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 ÏŽÏα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "1 ÏŽÏα 15 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "1 ÏŽÏα 20 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 ÏŽÏα 30 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "1 ÏŽÏα 45 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 ÏŽÏες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "2 ÏŽÏες 30 λεπτά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 ÏŽÏες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "Δικαιολογία 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "Δικαιολογία 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "Δικαιολογία 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "ΕÏώτηση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "ΠÏώτη ΕγχείÏιση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "ΔεÏτεÏη ΕγχείÏιση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "ΤÏίτη ΕγχείÏιση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "διαγÏαφή δεδομένων δοντιοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "ΠΡΟΣΘΗΚΗ ΣΧΟΛΙΩÎ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "θεÏαπεία Ïίζας" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "ΕφαÏμογή και μετακίνηση ενός Î´Î¿Î½Ï„Î¹Î¿Ï Ï€Ïος τα πίσω" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "&&" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "ΕφαÏμογή και μετακίνηση στο επόμενο δόντι" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "Αντικείμενα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "Εκτός ΓÏαφείου" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "με" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "ΤετάÏτη" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "ΗΜΕΡΟΜΗÎΙΑ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "Εμφάνιση ΙστοÏικοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "ΑÏιστεÏά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "Δεξιά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Επιβεβαίωση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "επιβαιβέωση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "ΣΥÎΟΛΟ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "σφάλμα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "Δεν μποÏείτε να Ï€ÏογÏαμματίσετε ÏÎ±Î½Ï„ÎµÎ²Î¿Ï ÏƒÏ„Î¿ παÏελθόν" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "ΚοÏώνες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "ΟλοκλήÏωση ΘεÏαπειών" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "Επόμενο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "ΗμέÏες Ï€Ïος εφαÏμογή" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "ΠληÏοφοÏίες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "Επιλογή ΒοηθοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "δεν βÏέθηκε ασθενής" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "Ο επιλεγμένος ασθενής είναι" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "Σφάλμα αφαίÏεσης από το ημεÏολόγιο ασθενή" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "Επιλογή ÎšÎ»Î¹Î½Î¹ÎºÎ¿Ï Î™Î±Ï„ÏοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "ΧÏυσό" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "εμφάνιση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "Επαγγελματικές ΥπηÏεσίες" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "Όνομα ΙατÏείου" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "ΕφαÏμογή Αλλαγών" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "Είναι αυτό σωστό;" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "ΑφαίÏεση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "ΔιεÏθυνση 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "ΔιεÏθυνση 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Κωδικός" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Οι κωδικοί δεν ταιÏιάζουν!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "ΣÏστημα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "ΠόÏτα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Όνομα Βάσης Δεδομένων" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "ΔημιουÏγία Βάσης Δεδομένων" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Επιτυχής!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Αποτυχία ΔημιουÏγίας Βάσης Δεδομένων" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "Πίσω" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "ΟλοκληÏωμένη ΘεÏαπεία" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "Συνέχεια" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "Κωδικός Συστήματος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Αδυναμία Eκτέλεσης του OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Αντίο!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Σφάλμα εισόδου" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "εÏώτηση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Άλλου είδους ΠληÏωμές" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "Αγγλικά (Ηνωμένο Βασίλειο)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "Αγγλικά (ΑυστÏαλία)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "ΑφÏικάνικα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "Δανέζικα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "Γαλλικά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "ΓεÏμανικά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "ΟÏγγÏικα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "Ινδονησιακά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "Ιταλικά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "Πολωνικά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "ΠοÏτογαλικά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "Σλοβάκικα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "Ισπανικά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "ΤουÏκικά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "το ÏÎ±Î½Ï„ÎµÎ²Î¿Ï Î®Î´Î· Ï€ÏογÏαμματίστηκε για" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "ΠαÏακαλώ επιλέξτε ένα ÏÎ±Î½Ï„ÎµÎ²Î¿Ï Î³Î¹Î± να τοποθετήσετε εδώ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "ΠαÏακαλώ επιλέξτε άλλο ÏÎ±Î½Ï„ÎµÎ²Î¿Ï - αυτό έχει Ï€Ïαγματοποιηθεί ήδη!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "Έχετε επιλέξει ένα ÏÎ±Î½Ï„ÎµÎ²Î¿Ï Î¼Îµ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "Επιβεβαίωση ÏÎ±Î½Ï„ÎµÎ²Î¿Ï Î¼Îµ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "Σφάλμα ÏÎ±Î½Ï„ÎµÎ²Î¿Ï - συγγνώμη!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "ΑÏγία" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "Κωδικός ΧÏήστη" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "κωδικοί χÏήστη ή πεÏιγÏαφές" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "ΟλοκληÏωμένο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "ΑκÏÏωση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Επιλογή" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "Αναζήτηση Ξανά" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "δεν βÏέθηκε" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "ΠÏοχωÏήστε με αναβάθμιση;" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "Δεν υπάÏχει διαθέσιμη πληÏοφοÏία για αυτό το έγγÏαφο, συγγνώμη" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "Μέγεθος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "σφάλμα εισαγωγής αÏχείου" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "δεν επιλέχθηκε αÏχείο" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "ΣημεÏινοί Ασθενείς" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "ΣημεÏινοί Ασθενείς (ΟΛΟΙ)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "ΚΛΙÎΙΚΟΣ ΙΑΤΡΟΣ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "ομάδα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "κατάσταση" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "Δις" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "Κος" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "Κα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "Κα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "Dr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "Καθηγητής" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "Μέγεθος ΓÏαμματοσειÏάς" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "μέγιστη χÏέωση για τον πελάτη" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "Σφάλμα αποθήκευσης ασθενή, συγγνώμη!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "Ποσό : %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" "Ή τηλεφωνήστε μας με τις πληÏοφοÏίες για τις switch/visa/mastercard σας." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "δεν φοÏτώθηκαν δεδομένα" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "Email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "Σφάλμα αποθήκευσης αντιγÏάφου PDF %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "ΠαÏακαλώ Ï€ÏοσδιοÏίστε κλινικό ιατÏÏŒ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "Κανένα επιλεγμένο ÏαντεβοÏ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "δημιουÏγία νέων πινάκων" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "ενημέÏωση Ïυθμίσεων" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Αδυναμία φόÏτωσης" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "εάν απαιτείται να αλλάξετε ένα ÏαντεβοÏ." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "ΕΞΕΤΑΣΗ" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "ΟΙΚΟΓΕÎΕΙΑ" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "ΔΟΚΙΜΗ" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "XLA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "ΔευτέÏα" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Πέμπτη" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "ΤÏίτη" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "ΠαÏασκευή" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Σάββατο" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "ΚυÏιακή" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "ΙανουάÏιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "ΦεβÏουάÏιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "ΜάÏτιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "ΑπÏίλιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Μάιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "ΙοÏνιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "ΙοÏλιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "ΑÏγουστος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "ΣεπτέμβÏιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "ΟκτώβÏιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "ÎοέμβÏιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "ΔεκέμβÏιος" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "ΑÏÏιο" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "Χθές" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "Καλώς ήλθατε στο OpenMolar!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Έκδοση" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "Καλή σας μέÏα!" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "χÏήστης" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "κωδικός" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/en_AU.po0000644000175000017500000117210312700510625022300 0ustar neilneil00000000000000# English (Australia) translation for openmolar # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2010-05-20 09:09+0000\n" "Last-Translator: Neil Wallace \n" "Language-Team: English (Australia) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:18+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Advisory" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Error" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "emergency" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Error - unrecognised practitioner- sorry" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Dentist" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Subject" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "To" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "From" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Date" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Message" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Letter No" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Serial No" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Title" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Surname" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "First Name" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Age" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Town" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Address" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Family No" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "PostCode" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Recall Date" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "County" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Exam" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "Perio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "Xray" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "Anaes" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "other" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "custom" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Passwords don't match!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Creating Database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Success!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Error Creating Database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "not found" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Failed to Load" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/en_GB.po0000644000175000017500000122556512700510625022276 0ustar neilneil00000000000000# English (United Kingdom) translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-04-24 03:06+0000\n" "Last-Translator: Neil Wallace \n" "Language-Team: English (United Kingdom) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:18+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Advisory" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Error" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "emergency" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Error - unrecognised practioner- sorry" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "Estimate" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "Author" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Description" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Dentist" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Fee" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Charge" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Subject" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "To" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "From" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Date" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Message" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "Allergies" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Heart" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "Bleeding" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Liver" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Code" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Cash" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Cheque" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Amount" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Letter No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Serial No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Title" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Surname" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "First Name" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Age" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Town" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Address" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Family No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Postcode" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Recall Date" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "County" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "Reception" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telephone" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "Dear" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "Planned" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Completed" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Exam" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "perio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "x-ray" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "anaes" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "other" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "custom" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Edit" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "Today" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Memo" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "Med Notes" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Treatment" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "History" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "Previous Course" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Start" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "End" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "PLAN" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "COMPLETED" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "No treatment" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "Available Clinicians" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "Available Dentists" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "All" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Lunch" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "staff meeting" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Out of Office" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "Unscheduled" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "View past appointments" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Date & Time" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Practitioner" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Length" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "you need to be in the static chart to change tooth state" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "BPE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Form" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "CheckBox" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Plan Treatment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "Add the following Treatment Items to the Current Treatment Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Select Appointment Length" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Hours" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Appointment Wizard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "Add a combination of proposed appointments to the patients diary." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "TextLabel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Add" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Clinicians - DATE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Clinician" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Finish" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "Copy To Clipboard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "Paste the saved values." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "Paste" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Options" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "Would you like to Block (or partially Block) this Slot?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Block Start" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Bock End" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Text to apply" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Blocked//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Emergency" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "Reserved Clinical Time" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "Catch up time" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Phone call" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Insert a Block" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "Insert A Patient into this slot?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Start Time" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "Chosen Patient is
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Change" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "Reason for appointment is" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Insert a Known Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "Bulk mail options" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "Date format for the letters" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Full day, month and year" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Month and year only" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "Date to use" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "Today's date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "The actual recall date for the patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "This date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "Choose Clinicians" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Language Selector" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Choose a tooth" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "Please select the tooth for which this treatment is planned" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Dialog" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Custom Item" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Number of Items" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Treatment Description" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Daylist Printing Wizard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "Specify Dates and Practitioners for a Daylist Print Run" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Start Date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "End Date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "All Practioners on One Page" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "One Practitioner Per Page - Minimal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "One Practioner Per Page - Fill Page" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "Go To Today" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Day View" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "View Current Week" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Week View" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Month" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "Print month view" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "All Clinicians" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "Select Clinicians" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Month View" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "Year" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "Year View" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "Agenda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Exam Wizard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Type" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "Extensive" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Full Case Assessment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Exam Date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "Appointment Time" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Space Before Appointment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 mins" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Space After Appointment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "Forum Input" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Topic" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Comment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "(0 Characters)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "Debridement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "Scale and Polish" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "Extensive Scaling" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "Exit the Current Patient Record." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Esc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Add a New Patient to the database." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "Click on this Button to search for in patient in your database." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Find" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "This cycles back through the history of records loaded today." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Reload the patient from the database." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "This cycles forwards through the history of records loaded today." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" "Show patients who live at the same address, or who have a similar name." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "A drop down box of all patients who have an appointment today." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Details" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Date of Birth" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Address3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "send an sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "email2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "email1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "send an email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Occupation" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Tel (mob)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Address2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Sex" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "M" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Postcode" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Tel (home)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "send a fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Address1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Tel (work)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "Higlighted Fields are Mandatory for New Patients" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "Use the Sname and Address details from the previous patient." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Patient Details" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "Pt is registered with Dentist" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Course Type" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Status" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Write Off Bad Debt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "This label is for displaying Private contractual stuff" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Private" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "This label is for displaying HDP contractual stuff" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "Highland Dental Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "This label is for displaying NHS contractual stuff" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "View Claims History" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "Exemption" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "Exemption text" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "No Details of Pt's Registered Dentist Found" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "Registered Elsewhere" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Contract" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Letters TO the patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Custom Letter to the patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "Print a recall saying the patient is due now." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Print a receipt - useful for duplicates." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Duplicate Receipt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "Referrals (Letters about the patient)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Print" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "Previous Correspondence" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "Generated By OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "Imported into database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "Import A Document" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Correspondence" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "Patient's Diary" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "Print A GP17" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "Apply an exemption" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Miscellaneous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "Money" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "Print &Estimate" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "Print &Account" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "Take &Payment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "Update the Basic Perio Exam (CPITN) score" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "New" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "perform a clinical exam" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "add x-rays to the patient's current course." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "X-ray" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "perform common perio treatments" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "Hyg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "Close This Course" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "check / update the patients medical history" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "Clinical Summary" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Payments" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Notes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Static" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "Treatment Planning" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "X-Rays" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "Perio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "Dentures" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Other" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "Custom Estimate Letter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "ReCalculate Estimate" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "Apply Exemption" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "Course Dentist" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "Close Course" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "Perio Charts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "See all payments in the database made by this patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "View treatments completed by date order" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" "View all courses of treatment. This includes treatment that was planned but " "not completed." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "Courses" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "Estimate history for this patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "Estimates" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "NHS Claims" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "Memos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "debug tools" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "changes only" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "Print the text displayed on this page." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "Today's Notes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "PhraseBook" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "Ins" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "Save the changes made to this record." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Save Changes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Enter Notes." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Patient Database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "Appointments / Diary" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "Registered Dentist" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Go" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "Print the Data" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "Cashbook" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "Daybook" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "Find patient records for this patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "Debt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "Credit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "By more than" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "Load Table" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "Print Table" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "Print Selected Letters" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "TOTAL OUTSTANDING" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Accounts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "Print letters" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Expand All" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "Letter options" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "Bulk Mailings" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "Fee scales available" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "Use this control to select a feescale" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "Search for an item" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "Search for the given phrase in description columns" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "Search descriptions" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "Only search for the given phrase in the usercode column" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "Quickly expand all items" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "Expand All Sections" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "Quickly compress all items" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "Compress All Sections" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "Open A PDF of the latest NHS Regulations" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "Feescales" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Reply" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "Alt+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Delete" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "Del, Backspace" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "&set parent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "Alt+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "New Topic" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Search by keyword" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "Show Topics for" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Everyone" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "Include Deleted Posts" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "Split Replies" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "Group replies" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "&Collapse Replies" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "&Expand Replies" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "FORUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "Wiki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&File" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Help" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Preferences" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&Export Patient to disk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&Import Patient from disk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "About &OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "&About QT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Quit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "Full Screen Mode (Ctrl-Alt-F)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "Ctrl+Alt+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Font Size" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "Show Advanced Options" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "Table View For Charting" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "Set Clinician" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "Set Assistant" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "Advanced record management" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "Clear Today's Emergency Slots" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "New CPITN score" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "New Course" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "Start a new Course of Treatment with the following Criteria?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "Contracted Dentist" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "Acceptance Date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "A wizard to select some common appointment combinations" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "A new appointment for this patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&New" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "Print out the next 5 appointments for this patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "Print Card" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "Patient Finder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" "Fill in a few of the following fields to get a list of possible patients" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Repeat Last Search" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "SNO or Surname" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "check to search for a similar sounding name" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "Address includes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "openMolar will search line1 and line2 of the address for this text" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" "open molar will search tel1, tel2 and mobile for numbers present here." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "search for a postcode" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "NHS current fees (money0)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "NHS payments (money2)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "NHS estimated (money4)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "Private estimate (money5)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "Exempt - NHS gross - Completed treatment (money6)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "Exempt - NHS gross - Estimated current (money7)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "Credit (money8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "Debt (money9)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "Debt2 (money10)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "Private current fees (money1) " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "Private payments (money3)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "ALL AMOUNTS ARE IN PENCE (cents)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "0.00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "Last CE (pd5)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "Add date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "Last ECE (pd6)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "Last FCA (pd7)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "Last OPT (pd8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "Last intraoral x-rays (pd9)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "Last SP (pd10)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "Last account sent (billdate)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "Dates" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "Hidden notes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "Post a memo about this Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "Expiry Policy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "Do Not Expire" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "Expire on this date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "Viewable by" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "Surgery Machines" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "Reception Machines" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "Delete this memo when I close this" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "Enter an appointment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "Appointment with" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "40 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 hour" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "1 hour 15 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "1 hour 20 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 hour 30 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "1 hour 45 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 hours" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "2 hours 30 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 hours" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "Reason 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "Reason 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "Reason 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Question" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "Please set the Surgery Number" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "Reception Machine" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "Surgery One" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "Surgery Two" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "Surgery Three" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "delete tooth data" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "ADD COMMENTS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "AM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "CO" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "GL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "Po" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "extract (plan only!)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "root treatment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "RT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "Apply and move Back a tooth" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "porcelain veneer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "Apply & Add Another Item" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "&&" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "Apply & Move to Next Tooth" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "Tooth Property Editor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "UR8" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "Items" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "Database Line" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "Erroneous exemption category entered" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "Out Of Office" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "with" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "Whoops!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "Bad Time Sequence!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "Edit Memos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "Edit day memos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "Edit public holiday information" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Wednesday" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "DATE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "Toggle Deciduous State" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "Delete All Restorations" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "Show History" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "Left" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "Right" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Confirm" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "confirm" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "TOTAL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "error" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "You cannot schedule an appointment in the past" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "Made" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "at" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "Crowns" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "Fissure Sealants" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "Endodontics" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Hygienist" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "Complete Treatments" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "What treatment has been performed?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "Address Matches" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "Clinician Times" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "values from" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "Next" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "Clinicians" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "Days to apply" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "applying changes for" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "Information" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "Global Memo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "Clinician Memos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "Select an Assistant" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "No patient chosen!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "Start is outside slot bounds (too early)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "Start is outside slot bounds (too late)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "Finish is outside slot bounds (too late)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "Finish is outside slot bounds (too early)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "Length of appointment is too short" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "No reason for the block given" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "no patient selected" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "Unable to commit because" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "patient not found" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "Chosen Patient is" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "no patient chosen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "Error removing from patient diary" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "Fissure Sealant" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "Pulp Extirpation - 1 canal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "Pulp Extirpation - multiple canals" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "Root Canal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "Incomplete Endodontics" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "Extraction" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "Surgical Extraction" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "Apicectomy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "Select a Clinician" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "NONE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Gold" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lava" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Resin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "Error opening PDF file" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "show" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "Error reviewing PDF file" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "Professional Services" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "Practice Name" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "Apply changes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "Is this correct?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "Examination not applied" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "performed by" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "Remove" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "no match found" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Address Line 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Address Line 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Password" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Passwords don't match!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Host" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Port" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Database Name" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Creating Database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Success!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Error Creating Database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "Back" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "Completed treatment" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Completion Date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "Proceed" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "Surgery Machine" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "System Password" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Unable to Run OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Good Bye!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Login Error" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "error getting serialno" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "please check this number is correct?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "question" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "Some fields are missing, please check" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Other Payments" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "Sundries" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "English (United Kingdom)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "English (Australia)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "Afrikaans" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "Danish" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "French" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "German" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "Hungarian" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "Indonesian" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "Italian" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "Occitan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "Polish" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "Portuguese" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "Slovak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "Spanish" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "Turkish" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "click to edit Item - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "click to delete item - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "click to promote Item - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "Please select an appointment to schedule" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "appointment already scheduled for" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "Please select an appointment to place here" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "Please choose another appointment - this one is made already!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "You have chosen an appointment with" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "Confirm Make appointment for" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "Error putting appointment back into patient diary" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "Error making appointment - sorry!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "Do you want to unblock the selected slot?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "unable to block - has the book been altered elsewhere?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "unable to make appointment - has the book been altered elsewhere?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "Public holidays" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "Enter the information for " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "bad date sequence" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "Please save the old course changes before continuing" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "Usercode" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "Brief description" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "Gross Fee" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "Charge to Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "Add to TX plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "Add to TX plan of patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "Items containing" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "Phrase not found in feetable" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "Usercodes or descriptions" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "IN CURRENT USE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "Fee table error" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "Were these x-rays taken today?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "Complete" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Cancel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Choose" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "Help" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "Find Again" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "advisory" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "not found" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "Delete %d Posts?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "Delete selected Post?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "Parenting Cancelled" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "Click on the Parent Item" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Proceed without upgrade?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "changed clinician to" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "changed assistant to" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "You have unsaved changes to the record of" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "is no longer an active dentist in this practice" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "unknown contract dentist - please correct this" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "Re-open" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "Do you want to review and/or reprint this item?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "No information available about this document, sorry" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "Date imported" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "Size" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "opening" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "error importing file" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "no file chosen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "Do you want to open a copy of this document?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "error opening document" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "Today's Patients" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "Today's Patients (ALL)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "Not loading patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "NO CLINICIAN SET" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "CLINICIAN" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "team" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "using" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "mode" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "Miss" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "Mr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "Mrs" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "Ms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "Dr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "Master" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "Professor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "NEW FORUM POSTS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "opening patient file" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "no record selected" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "FontSize" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "Enter your preferred font size for appointment book" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "Scrap the estimate and re-price everything?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "input needed" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "maximum charge for the patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "please enter the amount in pence, or leave as 0 for full exemption" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "Error saving new patient, sorry!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "Shade" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "Phrase Book" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "STATEMENT OF ACCOUNT - FINAL REMINDER" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "We are concerned that despite previous correspondance," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "your account still stands as follows: " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "Please note that your account stands as follows:- " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "Amount : %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "This amount is now due in full. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "A previous account was sent out to you on %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" "It would be appreciated if you would settle this matter as soon as possible." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" "It would be appreciated if this account is settled within seven days." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "On this deadline, we will pass this debt to" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "Scott & Company Sheriff Officers for collection." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "Yours sincerely," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "* Cheques payable to: \"Academy Dental Practice\"\n" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "Or telephone us with your switch/visa/mastercard details." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" "We are writing to inform you that your dental examination is now due." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "Please contact the surgery to arrange an appointment. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" "We are writing to inform you that your dental examinations are now due." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "Please contact the surgery to arrange suitable appointments. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "our ref" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "No data loaded" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "Options set" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "Collapse All" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "Print an NHS form now?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "Email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "PDF is NONE - (tell devs this happened)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "Error saving PDF copy %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "Nothing to print - have you loaded the table?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "Estimate for your current course of treatment." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "We look forward to seeing you in the near future." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "Dear %s %s," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "Please specify a clinician" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "No appointment selected" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "Error putting into dentist's book" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "upgrading to schema version" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "Conversion to %s failed" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "creating new tables" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "updating stored schema version" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "updating settings" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "Copying data across from old Fee Table" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "transfering data" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "inserting values" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "executing statements" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Failed to Load" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "Please try and give at least 24 hours notice" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "if you need to change an appointment." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "EXAM" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "BITE" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "BT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "FAMILY" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "FILL" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "FIT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "HYG" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "IMPS" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "LF" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "ORTHO" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "PAIN" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "PREP" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "RCT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "RECEMENT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "REVIEW" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "SP" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "TRY" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "XLA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Monday" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Thursday" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Tuesday" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Friday" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Saturday" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Sunday" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "January" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "February" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "March" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "April" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "May" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "June" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "July" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "August" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "September" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "October" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "November" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "December" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "None" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "Tomorrow" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "Yesterday" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "Welcome to OpenMolar!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Version" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "Your data is accessible, and the server reports no issues." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "Have a great day!" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "user" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "password" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/es.po0000644000175000017500000123311112700510625021715 0ustar neilneil00000000000000# Spanish translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-11-07 19:12+0000\n" "Last-Translator: Luis Ventura \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:18+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Asesoramiento" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Error" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "emergencia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "tiempo transcurrido desde el último tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "ADVERTENCIA" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "Errores Encontrados" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "¡Esto no debería suceder!" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Error - doctor no reconocido - lo siento" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "Estimado" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "Autor" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Descripción" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Dentista" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Honorario" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Cargar" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Asunto" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "Para" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "De" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Fecha" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Mensaje" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "Alergias" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Corazón" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "Sangría" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Higado" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Código" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Efectivo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Cheque" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Cantidad" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Carta No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "No. de Serie" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Título" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Apellidos" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Nombre" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Edad" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Ciudad" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Dirección" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Familia No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Código postal" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Fecha de Retiro" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Ciudad" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "Recepción" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Teléfono" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "Estimado" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "Planeado" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Completado" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Examen" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "periodoncia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "rayos x" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "necesita anestesia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "otros" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "personallizado" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Editar" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "Hoy" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Memo" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "Notas méd." #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "Historial" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "Proceso anterior" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Empezar" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Fin" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "PLAN" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "COMPLETADO" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Ningún tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "Clínicos disponibles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "Dentistas disponibles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "Todo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Almuerzo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "reunión de personal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Fuera de la Oficina" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "No programada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "Ver las citas anteriores" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Fecha y hora" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Practicante" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Longitud" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" "necesita estar en la gráfica estática para cambiar el estado del diente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "BPE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Formulario" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "Casilla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Planear tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "Añadir los siguientes tratamientos al plan de tratamientos actual" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Seleccione la duración de la cita" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Horas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Asistente de Citas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" "Añadir una combinación de citas propuestas al diario de los pacientes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "CampodeTexto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Añadir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Clinicos - FECHA" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Clínico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Terminar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" "Si copia la configuración de este día al portapapeles podrá crear un " "\"clon\" de este día cuando no hay datos establecidos. Esto es útil cuando " "trate de extender libros." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "Copiar al portapapeles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "Pegar los valores guardados." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "Pegar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Opciones" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "¿Desea bloquear (o bloquear parcialmente) esta ranura?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Inicio bloqueado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Administración" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Texto a aplicar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Bloqueado//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Emergencia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "Tiempo Reservado de Clínica" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "Ponerse al día" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Llamada de teléfono" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Insertar un bloque" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "¿Insertar un paciente a esta ranura?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Hora de comienzo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "El Paciente Elegido es
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Cambiar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "La razón de la cita es" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Inserte un Paciente Conocido" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "Opciones de Correo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "Formato de Fecha para las letras" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Completo, Día, mes y Año" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Sólo Mes y Año" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "Fecha a usar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "Fecha de hoy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "Ultima fecha de aviso para el paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "Esta fecha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "Elegir clínicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Selector de idioma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" "Nota - Si su idioma preferido no está disponible (o está incompleto), por " "favor, visite https://launchpad.net/openmolar y agregue su propia traducción!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Elija un diente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "Elija el diente al que se va a planificar el tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Diálogo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Personalizar elemento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Número de elementos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Descripción del tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Asistente para impresión de la Lista del Dia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" "Especificar Horas y Profesionales para la Impresión de la Lista del Día" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Fecha de Inicio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Fecha de culminación" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "Todos los profesionales en una página" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "Un profesional por página - Mínimo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "Un profesional por página - Página Completa" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "Ir al día" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Vista del día" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "Ver semana en curso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Vista de la semana" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Mes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "Imprimir Vista del Mes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "Todos los clínicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "Elegir clínicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Vista del mes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "Año" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "Vista del año" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "Agenda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Asistente de Exámen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Tipo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Estándar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "Extensivo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Evaluación completa del caso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Fecha de Exámen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "Hora de la cita" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Espacio Antes de la Cita" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 mins" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Espacio después de Cita" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "Entrada de foro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Tema" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Comentario" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "(0 caracteres)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "Desbridamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "Escalar y Limpiar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "Escala Ampliada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "Salir de la ficha del paciente actual." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Esc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Añadir un paciente nuevo a la base de datos." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" "Haga clic en este botón para buscar en el paciente en su base de datos." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Buscar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "Esto vuelve atrás sobre los registros cargados hoy." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Recargar la ficha del paciente desde la base de datos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "Esto vuelve adelante sobre los registros cargados hoy." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" "Muestra los pacientes que viven por la misma dirección o tienen nombre " "similar." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" "Un cuadro desplegable de todos los pacientes que tienen una cita hoy." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Detalles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Fecha de nacimiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Dirección3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "enviar un sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "email2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "email1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "enviar un email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Ocupación" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Tel (mov)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Dirección2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Sexo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "M" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Código postal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Tel (casa)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "enviar un fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Dirección1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Tel (trabajo)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "Los campos resaltados son obligatorios para Nuevos Pacientes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "Usar el mismo apellido y dirección del paciente anterior." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Detalles del paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "Px está registrado con el Dentista" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Tipo de Curso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Estado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Perdonar la deuda impaga" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "Esta etiqueta es para mostrar cosas privadas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Privado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "Esta etiqueta es para mostrar cosas HDP contractuales" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "Plan dental escocés (sólo para uso en el Reino Unido)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "Esta etiqueta es para mostrar cosas NHS contractuales" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "Ver el historial de Reclamos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "Excepción" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "Texto de Excepción" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "No se han encontrado detalles del Dentista Registrado del Paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "Registrado en otra parte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Contrato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Cominicaciones al paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Comunicación personalizada al paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "Imprimir un memorándum diciendo que ahora el paciente es deudor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Imprimir un recibo - útil para los duplicados." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Duplicar recibo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "Referencias (Cartas sobre el paciente)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Imprimir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" "Imprimir un resumen de las notas del paciente (para que ellos se lo lleven). " "No incluye detalles de los honorarios." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "Correspondencia Anterior" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "Generado por OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "Importado a la base de datos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "Importar un documento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Correspondencia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "Pacientes diarios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "Imprimir un GP17" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "Aplicar una excepción" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Miceláneos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "Dinero" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "Imrimir &Estimado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "Imprimir &Cuenta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "Tomar &Pago" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "Actualizar el puntaje del examen periodontal básico (CPITN)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Nuevo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "realizar un examen clínico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "Añadir rayos X para el curso actual del paciente." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "Rayos X" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "realizar tratamientos periódicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "Hyg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "Cerrar Este Curso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "comprobar / actualizar la historia médica de los pacientes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "Informe clínico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Pagos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Notas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Estático" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "Planificación del Tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "Rayos-X" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "Perio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "Dentaduras" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Otros" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "Carta de Presupuesto personalizada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" "Use esta función para volver a ingresar el precio de todos los artículos en " "la categoría \"dientes\"de los tratamientos.E.j. todos los que aparecen en " "los gráficos.\n" "Nota - esto no suprimirá los elementos que están actualmente allí. " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "ReCalcular Estimado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "Aplicar excepción" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "Dentista de Curso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "Cerrar Curso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "Gráficos Periodicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "Ver todos los pagos en la base de datos realizados por este paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "Ver los tratamientos completados, por orden de fecha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" "Vea todos los cursos de tratamiento. Esto incluye tratamientos que fueron " "previstos, pero no se han completado." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "Cursos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "Estimación de la historia de este paciente." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "Estimaciones" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "Reclamaciones al Servicio Nacional de Salud" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "Memos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" "Opciones avanzadas para el uso de desarrolladores. No espere que esto tenga " "mucho sentido!\n" "\n" "Si la casilla de verificación \"cambios sólo\" está marcada, sólo los datos " "que se ha cambiado serán mostrados." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "herramientas de depuración" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "sólo cambios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "Imprimir el texto mostrado en esta página." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "Notas del día" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "Libro de Frases" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "Insertar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "Guardar los cambios realizados en este registro." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Guardar cambios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Introducir notas." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Base de datos del paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "Citas / Diario" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "Dentitas registrado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "IR" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "Imprimir la información" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "Libro de facturas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "Libro del día" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "Buscar registros del paciente cuando está en el" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "Deuda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "Crédito" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "Por más de" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "Cargar tabla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "Imprimir tabla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "Imprimir las cartas seleccionadas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "TOTAL PENDIENTE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Cuentas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "Imprimir Cartas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Expandir todo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "Opciones de correspondencia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "Envíos Masivos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "Aranceles disponibles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "Use este control para seleccionar un arancel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "Buscar un ítem" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "buscar la frase dada en las columnas de descripción" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "Buscar descripciones" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" "buscar sólo por la expresión proporcionada en la columna de código de usuario" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "Expandir rápidamente todos los ítems" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "Expandir todas las secciones" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "Comprimir rápidamente todos los ítems" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "Comprimir todas las secciones" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "Abrir un archivo PDF de las últimas regulaciones del NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "Aranceles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Responder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "Alt+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Eliminar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "Del, Retroceso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "&establecer padre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "Alt+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "Nuevo tema" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Buscar por Palabra Clave" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "Mostrar Temas Para" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Cualquiera" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "Incluir entradas eliminadas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "Dividir Respuestas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "Agrupar respuestas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "&Colapsar respuestas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "&Expandir respuestas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "Foro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "Wiki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&Archivo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "Ay&uda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Preferencias" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&Exportar paciente al disco" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&Importar paciente al disco" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "Acerca de &OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "&Acerca de QT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Salir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "Modo pantalla completa (Ctrl-Alt-F)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "Ctrl+Alt+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Tamaño de la letra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "Ver tabla de gráficos de" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "Fijar clínico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "Establecer asistente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "Gestión de Registros Avenzada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "Limpiar Espacios de Emergencia de Hoy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "Nuevo puntaje CPITN" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "Nuevo Curso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "¿Iniciar un nuevo curso de tratamiento con los siguientes criterios?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "Dentista Contratado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "Fecha de aceptación" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "Un asistente para seleccionar algunas combinaciones comunes de citas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "Una nueva Cita para este paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Nuevo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "Imprimir las siguientes cinco citas para este paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "Imprimir tarjeta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "Buscador de Pacientes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "Llene alguno de los siguientes campos para listar posibles pacientes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Repetir la última búsqueda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "SNO o Apellido" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" "Introduzca el nombre completo o las primeras letras del nombre.\n" "\n" "Si no está seguro de la ortografía, escriba el nombre COMPLETO,\n" "y marque la caja adyacente \"suena como\" ." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "verificación para buscar un nombre que suena similar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" "Introduzca el nombre completo o las primeras letras del nombre.\n" "\n" "Si no está seguro de la ortografía, escriba el nombre COMPLETO,\n" "y marque la caja adyacente \"suena como\" .\n" "Tenga cuidado con el segundo nombre.\n" "E.j. \"Neil\" NO suena como \"Neil Alexander\"!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "Direcciones incluidas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "openMolar buscará línea1 y línea2 de la dirección de este texto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" "open molar buscará tel1, tel2 y un móvil para los números presentes aquí." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "buscar un código postal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "Honorarios actuales del NHS (dinero0)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "Pagos del NHS (dinero2)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "NHS estimado (dinero)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "estimación privado (money5)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "Exento - NHS bruto - Tratamiento completado (moneda6)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "Exento - NHS bruto - Presupuesto actual (moneda7)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "crédito (dinero8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "deuda (dinero9)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "deuda2 (dinero10)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "Honorarios actuales privados (dinero1) " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "pagos privados (dinero3)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "TODAS LAS CANTIDADES ESTÃN EN PENIQUES (céntimos)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "0.00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "Último EC (Examen Clínico)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "Añadir Fecha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "Ultimo ECE (pd6)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "Ultimo FCA (pd7)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "Ultimo OPT (pd8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "Últimos rayos X intraorales (pd9)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "Último escalado/pulido" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "Ultima Cuenta enviada (fecha de cobro)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "Fechas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "Notas Ocultas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "Publicar una nota sobre esta paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "Política de expiración" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "No expira" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "Expirar en esta fecha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "Visible por" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "Máquinas de Cirugía" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "Máquinas de Recepción" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "Borrar este memo al cerrar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "Introduzca una cita" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "Cita con" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "40 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 hora" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "1 hora 15 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "1 hora 20 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 hora 30 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "1 hora 45 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 horas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "2 hooras 30 minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 horas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "Razón 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "Razón 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "Razón 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Pregunta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "Por favor, establece el número de Cirugía" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "Maquina de Cirugía" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "Cirugía Uno" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "Cirugía Dos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "Cirugía Tres" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "suprimir los datos del diente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "AÑADIR COMENTARIOS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "AM (amalgama)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "CO (Composite)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "Cemento de Ionómero de Vidrio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "Po (Porcelana)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "Extracción (sólo plana)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "tratamiento de la raíz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "TR (Tratamiento de raíz)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "Aplicar y volver a diente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "Carilla de porcelana" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "Aplicar y añadir otro elemento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "y" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "Aplicar & mover al siguiente diente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "Editor de propiedades del diente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "UR8" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "Elementos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "Línea de la base de datos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "se ha introducido una exención de categoría errónea" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "Fuera de la oficina" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "con" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "Ups!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "Secuencia de tiempo incorrecta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "Editar apuntes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "Editar memorándums diarios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "Editar información de las vacaciones públicas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Miércoles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "FECHA" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "Borrar todas las restauraciones" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "Mostrar historial" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "Izquierda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "Derecha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Confirmar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "confirmar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "TOTAL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "error" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "No puede planificar una cita en el pasado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "Hecho" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "a" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "Coronas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "Selladores de fisuras" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "Endodoncia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Higienista" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "Tratamientos completos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "¿Qué tratamiento se ha realizado?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "Direcciones coincidentes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "Horarios de clínicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "Valores desde" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "Siguente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "Clinicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "Días a aplicar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "aplicar cambios para" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "Información" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "Memo Global" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "Notas Clinicas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "Seleccionar un asistente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "¡Ningún paciente elegido!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "Fecha de inicio fuera de rango (demasiado pronto)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "Fecha de inicio fuera de rango (demasiado tarde)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "Fecha de finalización fuera de rango (demasiado tarde" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "Fecha de finalización fuera de rango (demasiado pronto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "la longitud de la cita es muy corta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "ningún paciente seleccionado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "No se puede realizar, debido a" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "paciente no encontrado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "El paciente elegido es" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "ningún paciente elegido" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "Error al remover del diario de paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "Sellador de fisuras" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "Extirpado de pulpa - 1 canal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "Extirpación de Pulpa - canales múltiples" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "Canal de Raíz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "Endodoncia incompleta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "Extracción" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "Extracción quirúrgica" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "Apicectomía" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "Seleccionar un dentista" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "Minguno" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "No tiene ningún tratamiento adicional propuesto para este paciente, sin " "embargo, se considera que esta \"en tratamiento\"." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Oro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lava" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Resina" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "Error al abrir fichero PDF" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "mostrar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "Error al mostrar el fichero PDF" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "Servicios profesionales" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "Nombre de práctica" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "Aplicar Cambios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "¿Es esto correcto?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "No se ha aplicado examen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "realizado por" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "Eliminar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "no se ha encontrado coincidencia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Línea 1 de dirección" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Línea 2 de dirección" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Contraseña" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Las contraseñas no coinciden!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Host" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Puerto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Nombre de la base de datos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Creando base de datos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Éxito!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Error creando base de datos." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "Volver" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "Tratamiento Completado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Fecha de culminación" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "Proceder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "Maquina de Cirugía" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "Contraseña del sistema" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Imposible ejecutar OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "¡Adios!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Error de autenticación" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "error al obtener número de serie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "compruebe si es correcto este número" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "pregunta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "Faltan algunos campos, revíselo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Otros pagos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "Varios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "Inglés (Reino Unido)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "Inglés (Australia)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "Afrikaans" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "Danés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "Francés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "Alemán" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "Húngaro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "Indonesio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "Italiano" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "Occitano" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "Polaco" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "Portugués" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "Eslovaco" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "Español" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "Turco" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "Dé click para editar elemento - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "Dé click para borrar elemento - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "Dé click para guardar elemento - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "Elija una cita a concertar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "cita ya planificada para" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "Elija una cita para ubicar aquí" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "Elija otra cita, esta ya está hecha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "Ha elegido una cita con" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "Confirme la creación de cita para" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" "Se ha producido un error al escribir la cita en el diario del paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "Error creando cita. ¡Lo siento!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "¿Quiere desbloquear la ranura seleccionada?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "no se puede bloquear - ¿se ha alterado el libro en otro lugar?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "no se puede hacer la cita - ¿se ha alterado el libro en otro lugar?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "Días festivos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "Introducir la información para " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "secuencia de fecha incorrecta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "Por favor guarde los cambios de la antigua etapa antes de continuar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "Código de usuario" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "descripción breve" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "Agregar al plan de tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "Agregar al plan de tratamiento del paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "Ãtemes conteniendo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "Expresión no encontrada en la tabla de honorarios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "códigos de usuario o descripciones" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "ACTUALMENTE EN USO" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "Error en la tabla de honorarios" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "¿Se tomaron hoy esos rayos X?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "Completo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Cancelar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Seleccione" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "Buscar de nuevo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "consultivo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "no encontrado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "¿Eliminar %d mensajes?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "¿Eliminar mensajes seleccionados" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "Pariente cancelado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "Marcar en el ítem pariente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "¿Proceder sin actualizar?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "Cambiar clínico a" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "Cambiar asistente a" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "No ha guardado los cambios a la ficha de" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "Ya no es un dentista activo en esta consulta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "Desconocido dentista contratado - por favor corregir esto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "Reabrir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "¿Quiere revisar y/o volver a imprimr este ítem?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "No hay información disponible acerca de este documento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "Fecha importada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "Tamaño" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "abriendo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "Error en la importación de archivo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "No se ha elegido ningún archivo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "¿Quiere abrir una copia de este documento?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "error al abrir el documento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "Pacientes de hoy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "Pacientes del día (TODOS)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "No carga paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "No hay dentista clínico determinado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "Dentista clínico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "equipo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "usando" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "Modo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "Srta." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "Sr." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "Sra." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "Sra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "Doctor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "Profesor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "NUEVOS MENSAJES EN EL FORO" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "abriendo archivo de paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" "PROBLEMA DE CONFUSIÓN POTENCIALMENTE SERIO CON LOS REGISTROS DEL PACIENTE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "No se ha elegido ningún registro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "Tamaño de la tipografía" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "Ingrese su tamaño de tipografía favorito para la agenda de citas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "¿Descartar la estimación y calcular de nuevo el precio para todo?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "Se necesita información de entrada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "Máximo cargo para el paciente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" "Por favor ingrese el monto en pence esterlina, o deje como 0 para una " "exención completa" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "¡Error al guardar el paciente nuevo!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "Sombra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "Glosario de términos clínicos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "ESTADO DE CUENTA - RECORDATORIO FINAL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "Estamos preocupados porque, a pesar de la correspondencia previa," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "su cuenta aún permanece como sigue: " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "Por favor, tenga presente que su cuenta se encuentra como sigue:- " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "Importe: %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "Ahora se debe completamente este monto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "Se le envió una cuenta previa el %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" "Estaríamos agradecidos si pudiera resolver este asunto a la mayor brevedad." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" "Le estaríamos agradecidos si saldara esta cuenta en el plazo de siete días." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "Al finalizar este plazo, pasaremos esta deuda a" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "De usted sinceramente," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "Cheques a pagar a : \"Academy Dental Practice\"\n" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" "O llámenos por teléfono para facilitarnos los detalles de su tarjeta de " "crédito." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "Le escribimos para informarle que su exámen dental está vencido" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "Por favor contacte al cirujano para fijar cita" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" "Nosotros le escribimos para informarle que actualmente adeuda sus exámenes " "dentales" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" "Por favor, póngase en contacto con el cirujano para acordar una cita. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "Nuestra referencia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "no se han cargado datos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "Opciones determinadas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "Contraer todo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "¿Imprimir un formulario del Servicio Nacional de Salud?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "Correo electrónico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "PDF es Ninguno - (Decirle a los devs lo que sucede)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "Error al guardar la copia PDF %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "Nada para imprimir - ¿Ha cargado la tabla?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "Presupuesto de proceso actual de tratamiento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" "

Por favor, tenga en cuenta que este presupuesto puede\n" "variar si las condiciones clínicas así lo dictan.

" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "Esperamos verle en futuro cercano" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "Querido %s %s," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "Especifique un clínico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "Ninguna cita seleccionada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "Error al escribir en el libro del dentista" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "actualizando a la versión de esquema" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "Fallo la conversión a %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "creando tablas nuevas" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "actualizando la versión almacenada del esquema" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "actualizando configuraciones" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "Copiando datos desde una tabla antigua de honorarios" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "transfiriendo datos" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "insertando valores" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "ejecutando sentencias" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Error al cargar" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "Por favor intentar y entregar al menos con 24 horas de antelación" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "si necesita cambiar una cita" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "EXAMEN" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "Oclusión" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "Tiempo de sangrado" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "FAMILIA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "RELLENO" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "Adaptación de cualquier restauración dental" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "IMPs (impresiones en molde)" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "RP (Relleno Perdido)" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "Ortodoncia" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "DOLOR" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "PREP (preparación)" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "TCR (Terapia del canal de la raíz)" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "REVISAR" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "EP (Escalado / Pulido)" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "INTENTAR" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Lunes" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Jueves" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Martes" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "viernes" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "sábado" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "domingo" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "enero" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "febrero" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "marzo" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "abril" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "mayo" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "junio" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "julio" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "agosto" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "septiembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "octubre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "noviembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "diciembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Nada" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "Mañana" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "Ayer" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "¡Bienvenido a OpenMolar!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Versión" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "Sus datos son accesibles, y el servidor no informa de problemas." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "Que tenga un buen día" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "usuario" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "contraseña" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/fr.po0000644000175000017500000121104412700510625021716 0ustar neilneil00000000000000# French translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-04-23 06:15+0000\n" "Last-Translator: Dylan A. \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:16+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Conseil" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Erreur" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "urgence" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Erreur - praticien non reconnu - désolé" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "Estimé" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "Auteur" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "No." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Description" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Dentiste" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Honoraires" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Sujet" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "À" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "De" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Date" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Message" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "Allergies" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Cœur" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "Saignement" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Foie" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Code" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Espèce" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Chèque" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Montant" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Numéro de série" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Titre" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Nom de famille" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Prénom" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Âge" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Ville" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Adresse" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Code Postal" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Date de rappel" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Pays" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "Réception" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Téléphone" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Complété" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Examen" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "radio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "autre" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "personnalisé" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Éditer" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "Aujourd'hui" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Mémo" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "Note Médicale" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Traitement" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "Historique" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Début" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Terminer" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "EFFECTUE" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Aucun traitement" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "Tous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Déjeuner" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Absent du bureau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Date & Heure" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Praticien" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Durée" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Formulaire" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "Case à cocher" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Planification du Traitement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Sélectionnez la durée du rendez-vous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Heures" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Assistant des Rendez-vous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" "Ajouter une combinaison possible de rendez-vous dans le journal du patient." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "Étiquette" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Ajouter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Clinicians - DATE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Clinicien" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Fin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Options" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "Voulez vous bloquer ce créneau (ou seulement partiellement) ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Début du Bloc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Fin du Bloc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Texte à appliquer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Bloqué//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Urgence" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Appel téléphonique" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Inserer un bloc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "Insérer un Patient dans ce créneau ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Heure de début" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "Le patient choisi est
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Modifier" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "La raison du Rendez-vous est" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Inserer un patient connu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "Option d'email en masse" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "Format de la date pour les lettres" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Complet, Jour, mois et Année" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Mois et Année seulement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "Date a utiliser" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "Date d'aujourd'hui" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "Cette date" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Sélecteur de langue" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!\r\n" "Note - si votre language prefere n'est pas disponible (ou incomplet), " "veuillez visiter https://launchpad.net/openmolar pour pouvoir y ajouter vos " "propres traductions !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Choisissez une dent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" "Veuilleez choisir la dent pour laquelle le traitement doit s'appliquer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Dialogue" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Item personnalisé" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Nombre d'items" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Description du traitement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Assistant d'impression de la liste journalière" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Date de début" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Date de fin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "Tout les Praticiens sur Une page" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "Un Praticien Par Page - Minimal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "Un Praticien Par Page - Remplir la Page" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "Aujourd'hui" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Vue journalière" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Vue hebdomadaire" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Mois" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Vue mensuelle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "Vue Annuelle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Assistant d'Examen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Type" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Evaluation Complète" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Date de l'examen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "Heure du Rendez-vous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Espace libre avant un Rendez-vous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 mins" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Espace libre apres Rendez-vous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "Message pour le Forum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Sujet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Commentaires" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "Détartrage et Polissage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "Détartrage complet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "Quitter la Session du Patient Actuel." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Echap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Ajouter un nouveau patient dans la base de données" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "Cliquer sur ce bouton pour recherche un patient dans la base" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Rechercher" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Recharger le patient depuis la base de données" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" "Afficher les patients qui habitent à la même adresse, ou qui ont un nom " "similaire" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "Un menu déroulant avec la liste de tous les rendez-vous du jour." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Détails" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Date de Naissance" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Adresse3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "Envoyer un sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "email2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "email1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "Envoyer un Email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "E-mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Occupation" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Tel ( portable )" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Adresse2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Genre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "M" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Code postal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Tel ( maison )" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "envoyer a fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Adresse1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Tel ( travail )" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "Les Champs surlignés sont Obligatoires pour les nouveaux patients" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "Utiliser le Nom de famille et l'Adresse du patient précédent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Détails du Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "Le patient est enregistré avec le Dentiste" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Type de Session" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Statut" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Effacer la Créance irrécouvrable" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" "Cette étiquette est réservée pour les affaires contractuelle d'ordre Privée" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Privé" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "Cette étiquette est réservée pour les affaires contractuelle du HDP" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "Plan Dentaire des Highland" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" "Cette étiquette est réservée pour les affaires contractuelle de la NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "Voir l'Historique des Demandes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "Enregistré ailleurs" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Contrat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Lettres AU patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Lettre personnalisé au patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "Imprime un rappel disant que le patient est prévu maintenant" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Imprimer un reçu - utile pour les doubles" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Double du reçu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "Référence ( Lettres a propos du patient )" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Impression" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" "Imprimer un résumé des notes du patient ( pour qu'il puisse les emporter). " "Ne pas inclure aucun détails des frais." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "Correspondance précédente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "Générer par OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Correspondance" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "Journal du Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "Imprimer un GP17" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Divers" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "Imprimer un &Estimé" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "Imprimer le &Compte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "Accepter &Paiement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Nouveau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "Résumé clinique" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Paiements" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Annotations" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Statique" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "Prévision" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "Planification de Traitement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "Rayons X" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "Prothèses" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Autre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "Lettre d'Estimation personnalisé" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" "Utiliser cette fonction pour recalculer tous les items de la catégories " "\"dent\" de traitements. i.e toutes celles qui apparaissent sur le " "graphique.\n" "\n" "Note - les items déjà présent ne seront pas enlevés. " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "ReCalcul de l'Estimation" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "Fermer la Session" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "Mémos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "les modifications seulement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "Note pour Aujourd'hui" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "Livre de Phrases" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "Ins" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "Sauver les changements de cet enregistrement" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Sauver les modifications" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Entrer des Notes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Base de Données des Patients" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "Rendez-vous / Agenda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "Dentiste Enregistré" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Lancer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "Imprimer les Données" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "Charger le Tableau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "Imprimer le Tableau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "Imprimer les Lettres Sélectionnées" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "TOTAL RESTANT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Comptes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Tout Développer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "Ouvrir Toutes les Sections" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "Fermer Toutes les Sections" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "Ouvrit Un PDF des dernieres Règlementations de la NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "Liste de Frais" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Répondre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Supprimer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "Nouveau sujet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Chercher par mot clef" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "FORUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&Fichier" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Aide" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Préférences" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&Exporter le Patient sur disque" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&Import un Patient depuis un disque" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "A propos de &OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "&A propos de QT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Quitter" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Taille de police" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "Afficher les Options Avancées" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "Selectionner le Clinicien" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "Effacer les Créneaux d'Urgence pour Aujourd'hui" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "Nouveau score CPITN" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" "Démarrer une nouvelle Session de Traitement avec les Critères suivant?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "Date d'acception" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "Nouveau" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "Imprimer la Carte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "Chercher un Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" "Utiliser quelques un des champs pour obtenir une liste des patients probables" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Répéter la dernière Recherche" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" "Entrer au choix le nom complet ou bien les 1ere lettres du nom.\n" "\n" "SI vous n'êtes pas sur de l'orthographe, entrer le nom AU COMPLET,\n" "et sélectionner l'option \"ressemble à\"." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" "Sélectionner pour faire une recherche sur les nom au consonances similaire" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" "Entrer au choix le nom complet ou bien les 1ere lettres du nom.\n" "\n" "SI vous n'êtes pas sur de l'orthographe, entrer le nom AU COMPLET,\n" "et sélectionner l'option \"ressemble à\".\n" "Faites attention au deuxième prénom. \n" "par exemple \"Jean\" n'est pas pareil que \"Jean Marc\"!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "L'Adresse inclut" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" "openMolar va utiliser la ligne1 et la ligne2 de l'adresse pour la recherche " "de ce texte." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "Recherche d'un code postal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "Poster un mémo a propos du Patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "N'expire jamais" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "Date d'expiration" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "Visible par" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "Effacer le mémo à la fermeture" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "Enter un rendez-vous" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "Rendez-vous avec" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "40 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 heure" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "1 heure 15 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "1 heure 20 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 heure 30 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "1 heure 45 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 heures" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "2 heures 30 minutes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 heures" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "Raison 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "Raison 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "Raison 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Question" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "effacer les données sur la dent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "AM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "extraction (planifié seulement!)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "traitement de la racine" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "Appliquer et reculer d'une dent" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "Appliquer & Ajouter un nouvel Item" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "&&" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "Appliquer et passer à la dent suivante" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "avec" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "Éditer les Mémos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Mercredi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Confirmez" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "confirmer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "TOTAL" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Hygiéniste" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "Cliniciens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "Mémo Général" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "Mémos des Cliniciens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "Scellant de fissure" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "Canal Radiculaire" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "Extraction" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "Extraction chirurgicale" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "Vous n'avez plus de traitement planifié pour ce patient alors qu'il est " "toujours marqué comme ayant un \"traitement en cours\"" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Or" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lava" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Résine" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Adresse Ligne 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Adresse Ligne 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Mot de passe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Les mots de passe ne correspondent pas !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Serveur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Port" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Nom de la base de données" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Création de la base de données" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Succès !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Erreur durant la création de la Base de Données" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Date de complétion" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "Mot de passe du Système" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Impossible de démarrer OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Au Revoir !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Erreur durant l'authentification" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Autre Paiements" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "Menues dépenses" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "Voulez-vous debloquer le creneau selectionné ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "Impossible de bloquer - l'agenda a t'il été modifié ailleurs ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" "Impossible de creer un rendez-vous - l'agenda a t'il été modifié ailleurs ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "Frais brut" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "Facturé au patient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Annuler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Choisir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "Aide" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "introuvable" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Continuer sans effectuer la mise à jour?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "E-mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "Aucun rendez-vous sélectionné" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "le chargement a échoué" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "Veuillez essayer d'avoir au moins 24 heure s'avance" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "si vous avez besoin de changer un rendez-vous." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Lundi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Jeudi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Mardi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Vendredi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Samedi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Dimanche" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "Janvier" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "Février" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "Mars" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "Avril" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Mai" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "Juin" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "Juillet" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "Août" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "Septembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "Octobre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "Novembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "Décembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Aucun" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "Demain" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "Hier" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "Bienvenue dans OpenMolar!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Version" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" "Vos données sont accessibles, et le serveur ne signale aucun problème." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "Bonne journée!" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "utilisateur" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "mot de passe" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/hu.po0000644000175000017500000122510512700510625021726 0ustar neilneil00000000000000# Hungarian translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2011-11-09 10:16+0000\n" "Last-Translator: Zoltán Krasznecz \n" "Language-Team: Hungarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Tanácsadó" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Hiba" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "sürgÅ‘sségi" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Hiba - ismeretlen fogorvos - sajnálom" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "Ãrajánlat" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "SzerzÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "Nem." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Leírás" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Fogorvos" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Költség" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Költség" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Tárgy" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "Címzett" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Feladó" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Dátum" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Üzenet" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "Allergia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Szív- és érrendszer" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "Vérzékenység" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Máj" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Kód" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Készpénz" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Csekk" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Összeg" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Levélszám" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Sorszám" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Megszólítás" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Vezetéknév" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Keresztnév" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Életkor" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Település" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Cím" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Család szám" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Irányítószám" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Visszarendelés dátuma" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Megye" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "Recepció" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telefon" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "Tervezett" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Befejezve" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Vizsgálat" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "perio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "rtg" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "anaes" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "egyéb" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "egyedi" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Szerkesztés" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "EmlékeztetÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "Orvosi feljegyzések" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Kezelés" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "ElÅ‘zmények" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "ElÅ‘zÅ‘ kezelési sorozat" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Kezdés" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Vége" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "TERV" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "ELVÉGEZVE" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Kezelés nem történt" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "ElérhetÅ‘ klinikusok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "ElérhetÅ‘ fogorvosok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "Mindenki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "EbédidÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "értekezlet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Nincs rendelés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "Nem tervezett" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "ElÅ‘zÅ‘ idÅ‘pontok megtekintése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Dátum & idÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Orvos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "IdÅ‘tartam" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "csak állapotnézetben változtatható a fog státusza" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "CPITN" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Űrlap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "JelölÅ‘négyzet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Kezelési terv" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "KövetkezÅ‘ tételek hozzáadása a kezelési tervhez" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "IdÅ‘pont hossza" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "óra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "BerendelÅ‘ Segéd" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "Javasolt idÅ‘pontok hozzáadása a páciensnaplóhoz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "SzövegCimke" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Hozzáadás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Orvosok - DÃTUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Klinikus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Befejezés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "Másolás vágólapra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "Mentett értékek beillesztése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "Beillesztés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Opciók" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "Szeretné zárolni (vagy részlegesen zárolni) ezt az idÅ‘pontot?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Zárolás kezdete" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Zárolás vége" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Szövegcimke" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Zárolva//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "SürgÅ‘sségi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "Foglalt karbantartási idÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "Csusztató idÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Telefonhívás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Zárolás beillesztése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "Szeretne beilleszteni egy pácienst ehhez az idÅ‘ponthoz?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Kezdés ideje" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "A kiválasztott páciens
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Módosítás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "Bejelentkezés oka" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Ismert páciens beillesztése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "Tömeglevelezés beállításai" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "Levelek dátumformátuma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Teljes, nap, hónap és év" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Hónap és év" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "Használandó dátum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "Mai dátum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "Páciens visszarendelési dátuma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "Ez a dátum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "Válasszon klinikust" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Nyelvválasztó" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" "Megjegyzés - amennyiben a kiválasztott fordítás nem áll rendelkezésre (vagy " "még folyamatban van), látogasson el a https://launchpad.net/openmolar címre " "és segítsen az elkészítésében!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Válasszon fogat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "Kérem válassza ki melyik fogra tervezi ezt a kezelést" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Párbeszédablak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Egyedi tétel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Tételek száma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Kezelés leírása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Napilista nyomtatási Segéd" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "Dátumok és hallgatók kiválasztása napi nyomtatásra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "KezdÅ‘dátum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "BefejezÅ‘ dátum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "Minden hallgató egy oldalra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "Oldalanként egy hallgató - minimális" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "Oldalanként egy hallgató - teljes oldal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "Mai nap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Napi nézet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Heti nézet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Hónap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "Havi nézet nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Havi nézet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "Év" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "Éves nézet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Vizsgálat Segéd" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Típus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "Kiterjesztett" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Kezelési árajánlat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Vizsgálat dátuma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "IdÅ‘pont" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "IdÅ‘pont elÅ‘tti hely" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "IdÅ‘pont utáni hely" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "Fórum beírás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Téma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Hozzászólás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "(0 karakter)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "Hídeltávolítás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "FogkÅ‘eltávolítás és polírozás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "Kiterjesztett fogkÅ‘eltávolítás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "Aktuális pácienskarton bezárása." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Esc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Új páciens hozzáadása." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "A páciensadatbázisban történÅ‘ kereséshez nyomja meg ezt a gombot." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Keresés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "Ezzel kereshet vissza a mai napra betöltött adatok között." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Pácienskarton újratöltése az adatbázisból." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "Ezzel kereshet elÅ‘re a mai napra betöltött adatok között." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "Azonos címen élÅ‘, vagy azonos nevű páciensek keresése." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "Az összes mai napra berendelt beteget tartalmazó lenyílóablak." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Részletek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Születési idÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Lakcím3 (Irányítószám)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "sms küldése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "email2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "email1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "email küldése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Foglalkozás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Tel (mobil)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Lakcím2(Utca, házszám)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Nem" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "N" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Irányítószám" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Tel (otthoni)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "fax küldése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Lakcím1(Város)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Tel (munkahely)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "A megjelölt mezÅ‘k kitöltése kötelezÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "ElÅ‘zÅ‘ páciens vezetéknevének és lakcímének használata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Páciens adatok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "A páciens rendelkezik körzeti fogorvossal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Kezelési sorozat típusa" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Státusz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Adósság leróva" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "Ez a cimke a magánszerzÅ‘dés részleteit jeleníti meg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Magán" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "Ez a cimke a HDP szerzÅ‘déses részleteket jeleníti meg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "Highland fogászati terv" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "Ez a cimke az OEP szerzÅ‘déses részleteket jeleníti meg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "Követeléslista megtekintése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "Díjmentesség" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "Díjmentesség indoklása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "OEP" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "Nincs információ a páciens körzeti fogorvosáról" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "Máshol szerzÅ‘dött" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "SzerzÅ‘dés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Páciensnek küldött levelek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Egyedi pácienslevél" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "PáciensvisszarendelÅ‘ nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Recept nyomtatása - másolatokhoz használható." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Számla másolása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "Ajánlások (levelek a páciensrÅ‘l)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Nyomtatás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "Kezelési összesítés nyomtatása (elvitelre). Ãrakat nem tartalmaz." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "ElÅ‘zÅ‘ levelezés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "OpenMolar által generált" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "Adatbázisba importált" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "Dokumentum importálása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Levelezés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "Páciensnapló" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "GP17 nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "Díjmentesség megállapítása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Egyéb" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "Pénz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "Ãrajánlat nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "Egyenleg nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "Kivonat &Befizetés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "CPITN értékek aktualizálása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Új" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "klinikai vizsgálat végzése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "röntgenek hozzáadása aktuális kezelési sorozathoz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "Röntgen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "általános periodontális kezelések elvégzése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "Higiénikus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "Kezelési sorozat lezárása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "páciens orvosi történetének ellenÅ‘rzése / frissítése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "Klinikai összefoglaló" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Befizetések" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Feljegyzések" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Ãllapot" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "Terv" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "Kezelési terv készítése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "Rtg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "Perio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "Fogpótlások" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Egyéb" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "Egyedi költséglevél" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" "A \"fog\" kategórián belül ezzel tud minden megjelenÅ‘ tétel átárazni. A " "státuszon ezek jelennek meg.\n" "Megjegyzés - Nem távolítja el a már szereplÅ‘ tételeket. " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "Ãrajánlat újraszámolása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "Díjmentesség hozzáadása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "KezelÅ‘ fogorvos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "Kezelési sorozat lezárása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "Perio státuszok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "Páciens összes befizetésének listázása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "Elvégzett kezelések megtekintése, dátum szerint" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" "Összes kezelési sorozat megtekintése. Tartalmazza a tervezett, de el nem " "végzett sorozatokat is." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "Kezelési sorozatok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "Páciens elÅ‘zÅ‘ kezelési tervei." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "Ãrajánlatok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "OEP követelések" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "EmlékeztetÅ‘k" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" "Haladó opciók fejlesztÅ‘k részére. Nincs sok értelme!\n" "\n" "Ha bejelöli a \"csak változások\" jelölÅ‘négyzetet, csak a megváltozott " "adatok jelennek meg." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "hibakeresÅ‘ eszközök" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "csak díjak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "Aktuális oldal szövegének nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "Mai feljegyzések" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "Kifejezéstár" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "Beilleszt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "Karton változásainak mentése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Változtatások mentése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Ãrja be a feljegyzést." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Páciens adatbázis" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "IdÅ‘pontok / Napló" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "Regisztrált fogorvos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Ugrás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "Adatok nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "Számlaegyenleg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "Mai nap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "Olyan pácienskartonok keresése, ahol a páciens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "Tartozik" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "Követel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "Több, mint" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "Táblázat betöltése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "Táblázat nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "Kijelölt levelek nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "ÖSSZES FENNMARADÓ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Egyenlegek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "Levelek nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Mindent listáz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "Levélopciók" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "Csoportos levelezések" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "Rendelkezésre álló díjszabások" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "A díjszabás beállításához használható" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "Tétel keresése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "kifejezés keresése a leírás oszlopban" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "Leírás keresése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "kifejezés keresése a felhasználókód oszlopban" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "Összes tétel gyors kibontása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "Teljes listanézet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "Összes tétel gyors zárása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "Kompakt listanézet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "Legújabb OEP szabályzat megnyitása PDF-ben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "Díjszabások" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Válaszol" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "Alt+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Töröl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "Del, Backspace" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "Alt+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "Új téma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Keresés kulcsszóra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "Az alábbi témák megjelenítése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Mindenki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "Válaszok felosztása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "Csoportos válaszok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "FÓRUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "Wiki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&Fájl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Súgó" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Beállítások" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&Páciens mentése lemezre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&Páciens betöltése lemezrÅ‘l" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "Névjegy&OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "&Névjegy QT" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Kilépés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "Teljes képernyÅ‘s üzemmód (Ctrl-Alt-F)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "Ctrl+Alt+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Betűméret" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "Státusz táblázatnézetben" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "Klinikus beállítása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "Haladó szintű kartonkezelés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "Mai sürgÅ‘sségi idÅ‘pontok ürítése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "Új CPITN-érték" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "Új kezelési sorozat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "Új kezelési sorozat nyitása az alábbi feltételekkel?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "SzerzÅ‘déses fogorvos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "Bejelentkezés dátuma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "Ez a Segéd megkönnyíti bizonyos idÅ‘pontkombinációk létrehozását" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "Új idÅ‘pont az aktuális páciens részére" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Új" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "Páciens következÅ‘ 5 idÅ‘pontjának nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "Cimke nyomtatása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "Páciens keresÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "Töltsön ki néhány mezÅ‘t a lehetséges találatok megjelenítéséhez." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Utolsó keresés ismétlése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "Vezetéknév" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" "Adja meg a teljes nevet, vagy a név elsÅ‘ betűit\n" "\n" "Ha nem tudja pontosan a vezetéknevet, írja be amire emlékszik,\n" "és jelölje be a szomszédos \"hasonlító\" jelölÅ‘négyzetet." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "jelölje be a hasonlító nevek kereséséhez" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" "Adja meg a teljes nevet, vagy a név elsÅ‘ betűit\n" "\n" "Ha nem tudja pontosan a vezetéknevet, írja be amire emlékszik,\n" "és jelölje be a szomszédos \"hasonlító\" jelölÅ‘négyzetet.\n" "Figyeljen a középsÅ‘ nevekre. \n" "Pl. \"Anna\" nem hasonlít az \"Anna Mária\"-hoz!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "Lakcím tartalmazza" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" "A megadott szöveget az openMolar a lakcím elsÅ‘ és második sorában keresi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "A számsort az openMolar minden megadott telefonszám alatt keresi." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "irányítószám keresése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "OEP aktuális díjai (money0)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "OEP kifizetések (money2)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "OEP tervezett (money4)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "magán tervezett (money5)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "Mentes - OEP bruttó - elvégzett kezelés (money6)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "Mentes - OEP bruttó - tervezett aktuális (money67" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "követel (money8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "tartozik (money9)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "tartozik2 (money10)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "magán aktuális díjak (money1) " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "magán befizetések (money3)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "MINDEN TÉTEL FILLÉRBEN (tized)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "0.00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "Dátum hozzáadása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "Dátumok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "EmlékeztetÅ‘ felvitele pácienshez" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "Lejárati beállítások" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "Sosem jár le" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "Lejárat dátuma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "Megtekintésére jogosult" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "RendelÅ‘i gépek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "Recepciós gépek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "EmlékeztetÅ‘ törlése ablak bezárása után" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "Adjon meg idÅ‘pontot" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "IdÅ‘pont egyeztetve" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "5 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "10 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "15 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "20 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "30 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "40 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "45 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "1 óra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "1 óra 15 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "1 óra 20 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "1 óra 30 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "1 óra 45 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "2 óra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "2 óra 30 perc" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "3 óra" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "Indok 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "Indok 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "Indok 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Kérdés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "Kérem adja meg a rendelÅ‘ számát" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "Recepciós gép" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "Egyes rendelÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "Kettes rendelÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "Hármas rendelÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "fog adatainak törlése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "ÚJ HOZZÃSZÓLÃS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "de." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "ET" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "ÜI" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "FK" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "foghúzás (csak terv)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "gyökérkezelés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "Gyk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "Mentés és következÅ‘ fog" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "kerámia héj" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "Rögzítés, és új tétel hozzáadása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "&&" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "Mentés és elÅ‘zÅ‘ fog" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "Fogtulajdonságok szerkesztése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "BF8" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "Tételek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "Adatbázis sor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "ezzel:" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "Hoppá!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "EmlékeztetÅ‘ szerkesztése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "Nemzeti ünnepek szerkesztése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Szerda" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "DÃTUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "Tejfogstátusz bekapcsolása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "Összes restauráció törlése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "ElÅ‘zmények megjelenítése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "Bal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "Jobb" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "MegerÅ‘sítés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "megerÅ‘sít" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "ÖSSZESEN" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "hiba" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "Nem adhat idÅ‘pontot a múltban" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "Koronák" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "Barázdazárók" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "Endodontológia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Szájhigiénikus" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "Kezelések végrehajtása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "KövetkezÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "Fogorvosok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "HozzárendelendÅ‘ napok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "változások rögzítése" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "Ãltalános emlékeztetÅ‘k" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "Klinikusi emlékeztetÅ‘k" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "Nem választott pácienst!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "nincs kiválasztva páciens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "nincs ilyen páciens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "A kiválasztott páciens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "nincs kiválasztva páciens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "Páciens naplóból eltávolítása sikertelen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "Barázdazáró" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "Pulpa exstirp. - 1 csatorna" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "Pulpa exstirp. - több csatorna" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "Gyökércsatorna" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "Inkomplett gyökérkezelés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "Fogeltávolítás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "Sebészeti fogeltávolítás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "Resectió" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "A páciensnél nincs további kezelési javaslat, mégis \"folyamatban lévÅ‘nek\" " "tűnik." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Arany" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Zirkónium" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Kompozit" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "PDF megnyitása sikertelen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "mutat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "Professzionális szolgáltatások" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "RendelÅ‘ neve" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "A módosítások végrehajtása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "Helyes?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "Vizsgálat nem történt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "Eltávolítás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "nincs egyezés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Címsor 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Cymsor 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Jelszó" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "A jelszavak nem egyeznek!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Host" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Port" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Adatbázis neve" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Adatbázis létrehozása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Sikerült!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Adatbázis létrehozása sikertelen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "Vissza" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "Elvégzett kezelés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Elkészülés dátuma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "Tovább" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "RendelÅ‘i gép" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "Rendszerjelszó" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Az OpenMolar nem futtatható" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Viszontlátásra!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Belépési hiba" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "kérdés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Egyéb fizetési módok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "Instr." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "Afrikaans" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "Francia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "Német" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "Magyar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "Lengyel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "Portugál" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "Szlovák" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "Spanyol" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "Török" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "kattintson a tétel szerkesztéséhez - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "kattintson a tétel törléséhez - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "kattintson a tétel reklámozásához - " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "Kérem válasszon ki egy idÅ‘pontot" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "az alábi beavatkozásra már van idÅ‘pont:" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "Kérem jelöljön ki egy idÅ‘pontot" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "Kérem válasszon új idÅ‘pontot - ez már foglalt!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "IdÅ‘pont az alábbi orvossal egyeztetve:" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "IdÅ‘pontegyeztetés jóváhagyása" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "IdÅ‘pont kijelölése sikertelen - sajnálom!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "Feloldja a kiválasztott idÅ‘pont zárolását?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "nem zárolható - megváltozott az berendelÅ‘?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "nem foglalható idÅ‘pont - megváltozott a berendelÅ‘?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "Nemzeti ünnepek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "helytelen dátumformátum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "Mentse el a régi kezelési sorozat változtatásait mielÅ‘tt folytatná" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "Befejezett" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Mégsem" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Kiválasztás" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "Újrakeresés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "nem található" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "Törli %d hozzászólásokat?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "Törli a kijelölt bejegyzést?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Folytatja frissítés nélkül?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "Az alábbi karton el nem mentett módosításokat tartalmaz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "Újratöltés" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "Ãtnézi és/vagy újranyomtatja ezt az tételt?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "fájlimportálási hiba" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "nincs fájl kiválasztva" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "dokumentum nem nyitható meg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "Mai páciensek (MIND)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "ÚJ FÓRUM BEJEGYZÉSEK" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "Ãrajánlat elvetése és minden tétel újraárazása?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "adjon meg adatot" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "páciens maximális költsége" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "Nem sikerült menteni az új pácienst!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "SZÃMLAEGYENLEG ÉRTESÃTÅ - UTOLSÓ FELSZÓLÃTÃS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "Korábbi levelezésünkre emlékeztetve sajnálattal vettük észre," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "hogy a elvégzett kezelései után az alábbiakkal tartozik: " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "Kérem vegye figyelembe egyenlege jelenlegi állapotát:- " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "Összesen : %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "Kérjük a teljes összeget egyenlítse ki. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "Az elÅ‘zÅ‘ értesítÅ‘t %s napon postáztuk ki." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "Nagyra értékelnénk, ha mihamarabb rendezné tartozását." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "Nagyra értékelnénk, ha számláját 7 munkanapon belül rendezné." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "A határidÅ‘ elmulasztását követÅ‘en" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "jogi lépéseket leszünk kénytelenek tenni." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "Tisztelettel," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "* A tartozás postautalványon rendezhetÅ‘ rendelÅ‘nk nevére és címére\n" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" "egyéb fizetési mód esetén kérjük lépjen velünk kapcsolatba telefonon." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" "Felhívjük szíves figyelmét, hogy nyilvántartásunk szerint fogászati " "ellenÅ‘rzése esedékessé vált." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" "Kérjük idÅ‘pontegyeztetés céljából vegye fel a kapcsolatot rendelÅ‘nkkel. *" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "nincs betöltött adat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "Kinyomtatja az OEP űrlapot?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "E-mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "PDF NINCS - (értesítse a fejlesztÅ‘ket)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "%s PDF mentése sikertelen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "Nincs mit nyomtatni - betöltötte a táblázatot?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" "OrvosSorszámCset\n" "K. névV. névSzülMemoUtoljára\n" "EgyenlegTípusSzámElvégezve\n" "Összesen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "Aktuális kezelési sorozat árajánlata." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" "

Kérem vegye figyelembe, hogyaz árajánlat változhat\n" "amennyiben a körülmények szükségessé teszik.

" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "Reméljük, hogy a közeli jövÅ‘ben ellátogat hozzánk." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "Kedves %s %s," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "Kérem jelöljön ki egy klinikust" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "Nincs kijelölt idÅ‘pont" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "Hiba történt az idÅ‘pont rögzítésekor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "frissítést utáni verzió száma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "Frissítés %s verzióra sikertelen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "új táblázat létrehozása" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "tárolt verzió frissítése" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "beállítások frissítése" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "adatok másolása a régi díjtáblázatból" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Betöltés sikertelen" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "Kérjük jelezze felénk legalább 24 órával korábban," #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "ha az idÅ‘pont nem megfelelÅ‘." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "VIZSG" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "HARAPÃS" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "RAD" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "CSALÃD" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "TÖM" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "ÃTADÃS" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "HYG" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "IMPL" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "AF" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "ORTHO" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "FÃJ" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "CSISZ" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "GYK" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "ÚJRARAGASZTÃS" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "ELLENÅRZÉS" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "DEP" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "PRÓBA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "EXTR" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "HétfÅ‘" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Csütörtök" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Kedd" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Péntek" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Szombat" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Vasárnap" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "Január" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "Február" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "Március" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "Ãprilis" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Május" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "Június" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "Július" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "Augusztus" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "Szeptember" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "Október" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "November" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "December" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Semmi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "Üdvözli az OpenMolar!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "felhasználó" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "jelszó" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/id.po0000644000175000017500000117145512700510625021716 0ustar neilneil00000000000000# Indonesian translation for openmolar # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2010-05-20 09:00+0000\n" "Last-Translator: dadanhrn \n" "Language-Team: Indonesian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "darurat" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "Ke" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Dari" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Tanggal" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Pesan" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "lainnya" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "tidak ditemukan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Gagal memuat" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/it.po0000644000175000017500000120253412700510625021727 0ustar neilneil00000000000000# Italian translation for openmolar # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-12-14 16:58+0000\n" "Last-Translator: Gianluigi Coppola \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Errore" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "emergenza" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "trovato" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "Attenzione - Nessuna data di accettazione della terapia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" "Attenzione - Nessuna data di completamento della terapia, utilizzando Oggi " "per raccogliere oggetti del diario." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "Edita testo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "La Terapia è in Corso" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "La Terapia è terminata" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "giorni dopo l'ultima terapia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "Date della Terapia non trovate nel diario" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "Esaminare questi problemi" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "ATTENZIONE" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "DATI PREVENTIVO NON IDENTIFICATI O NON DISPONIBILI" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "Sono stati trovati degli errori" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "Questo non dovrebbe accadere!" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Errore - Professionista sconosciuto - scusate" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "Pazienti di" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "compreso tra" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "trattati con" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "e" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "Libromastro voci in questo Periodo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "Filtra i risultati" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" "Se questa casella di testo viene lasciata vuota, poi i risultati del " "libromastro che vengono restituiti dipendono dalle date e dai medici " "iscritti." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "È possibile filtrare utilizzando i seguenti campi." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "Esempi" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "Esempio di Studio Dentistico" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "Nessuna cronologia per il preventivo della terapia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "Autore" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "Tariffa agevolata" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "Codice articolo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "N." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Descrizione" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Dentista" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Onorario" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Ricarico" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Oggetto" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "A" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Da" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Data" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Messaggio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Codice" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Importo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Lettera nr." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Nr seriale" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Titolo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Cognome" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Nome" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Età" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Città" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Indrizzo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Famiglia n." #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Codice Postale" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Data del controllo" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Paese" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telefono" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Completato" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Esame" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "Periodonto" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "Raggi x" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "Anestesia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "altro" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "personalizzato" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Modifica" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "Oggi" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Memo" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Trattamento" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Inizio" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Fine" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "PIANO" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "COMPLETATO" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Nessun trattamento" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "Clinici disponibili" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "Dentisti disponibili" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Pranzo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "riunione del personale" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Fuori ufficio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "Non schedulato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "Vedi gli appuntamenti precedenti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Data e ora" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Professionista" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Lunghezza" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Piano di Trattamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Scegli la durata dell'appuntamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Ore" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minuti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Creazione Guidata Appuntamenti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Aggiungi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "Copia negli appunti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "Incolla i valori salvati." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "Incolla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Opzioni" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Emergenza" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Telefonata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minuti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Ora di inizio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "Paziente scelto è
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Cambia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "Il motivo dell'appuntamento è" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minuti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Inserisci un paziente conosciuto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "Formato della data per le lettere" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Intero, Giorno, Mese e Anno" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Mese e anno Solo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "Data da usare" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "Scegli Primari" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Selettore Lingua" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" "Nota - Se la tua lingua preferita non è disponibile (o incompleta), ti " "invito a visitare https://launchpad.net/openmolar e aggiungere tu stesso una " "traduzione!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Scegli un dente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" "Per favore Seleziona il dente al quale è stato pianificato questo trattamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Dialogo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Elemento personalizzato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Numero di elementi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Descrizione trattamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Stampa guidata Lista Giornaliera" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Data di inizio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Data di termine" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Tipo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Data esame" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "Orario appuntamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Spazio prima dell'appuntamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 min" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Spazio dopo l'appuntamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Argomento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Commento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Esci" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Aggiungi un nuovo paziente al database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "Clicca su questo pulsante per cercare un paziente nel tuo database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Cerca" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Ricarica il paziente dal database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" "Mostra pazienti che abitano allo stesso indirizzo , o che hanno un nome " "simile." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" "Un menù a tendina con tutti i pazienti che hanno un appuntamento oggi." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Dettagli" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Data di nascita" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Indirizzo 3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "invia un sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "indirizzo e-mail 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "indirizzo e-mail 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "invia e-mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "e-mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Professione" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Tel (Cellulare)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Indirizzo2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Sesso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "M" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Codice di avviamento postale (CAP)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Tel (Abitazione)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "invia un fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Indirizzo1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Tel (Ufficio)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "I campi evidenziati sono obbligatori per i nuovi pazienti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Dettagli paziente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Stato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Annulla Debito insoluto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Privato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "Esenzione" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "Testo esenzione" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "Servizio Sanitario Nazionale" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "Registrato altrove" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Contratto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Lettere Al paziente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Lettera personalizzata al paziente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Stampa una ricevuta - utile per i duplicati." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Ricevuta duplicata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Stampa" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "Generato da OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "Importato nel database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "Importa un Documento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "Applica un'esenzione" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Nuovo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Note" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Altro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Espandi tutto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Tutti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Esci" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "Un nuovo appuntamento per questo paziente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Nuovo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "Stampa i prossimi 5 appuntamenti per questo paziente" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "con" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Mercoledì" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Conferma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "conferma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "Non puoi fissare un appuntamento nel passato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Igienista" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "Primari" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Oro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Resina" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "È corretto?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Indrizzo - 1a riga" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Indrizzo - 2a riga" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Password" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Le password non coincidono!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Crea un database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Successo!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Errore durante la creazione del database" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Impossibile avviare OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Arrivederci!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Errore di accesso" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "Per favore seleziona un appuntamento da schedulare" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "appuntamento già schedulato per" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "Per favore seleziona un appuntamento da mettere qui" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" "Per favore scegliere un altro appuntamento - questo è stato già fatto!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "Hai scelto un appuntamento con" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "Conferma Creazione appuntamento per" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "Errore durante la creazione dell'appuntamento - Mi dispiace!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Annulla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Seleziona" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "non trovato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Vuoi procedere senza aggiornamento?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "E-mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "Per favore specifica un medico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "Nessun appuntamento selezionato" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "Caricamento Fallito" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Lunedi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Giovedi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Martedi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Venerdi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Sabato" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Domenica" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "Gennaio" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "Febbraio" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "Marzo" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "Aprile" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Maggio" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "Giugno" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "Luglio" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "Agosto" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "Settembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "Ottobre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "Novembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "Dicembre" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Nessuno" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "Domani" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "Ieri" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "Benvenuto in OpenMolar!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Versione" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" "I tuoi dati sono accessibili, e il server non riferisce alcun problema." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "Buona giornata!" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "Si prega di compilare il seguente modulo" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "host" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "porta" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "Banca dati" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "utente" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "password" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "Numero di interventi" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "Chiudere l'applicazione?" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "Selezione manuale" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "Selezionare un numero di serie per caricare" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "Vuoi veramente riconfigurare questa applicazione?" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/messages.pot0000644000175000017500000123131112770450714023312 0ustar neilneil00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR ORGANIZATION # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2016-09-21 10:24+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: pygettext.py 1.5\n" #: /home/neil/openmolar/openmolar1/src/openmolar/__init__.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:198 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "Find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:346 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1523 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:191 msgid "Advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:268 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:194 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:211 msgid "Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/connect.py:185 msgid "Initiating MySQL connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/connect.py:192 msgid "Connection Established" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/connect.py:204 msgid "Connection attempt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/connect.py:204 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:198 msgid "failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:651 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:39 msgid "Lunch" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:373 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1193 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:294 msgid "emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:77 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:94 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:84 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:86 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:114 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:122 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:128 msgid "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:70 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:170 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:153 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:176 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:180 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:194 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:202 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:235 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1214 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:139 msgid "Error - unrecognised practioner- sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:148 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:148 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:148 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:149 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:214 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:89 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:327 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:352 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "If this text box is left blank, then results from the daybook are returned dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:355 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:365 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:257 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:75 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:345 msgid "ACCOUNT FOOTER NOT SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:353 msgid "DEBT COLLECTOR NOT SET" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:44 msgid "DECEASED" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1619 msgid "BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:104 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:110 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:82 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:125 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:125 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:125 msgid "No." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1098 msgid "Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:40 msgid "Edit this Estimate" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:92 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:28 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:72 msgid "Message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:390 msgid "To" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:387 msgid "Subject" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:389 msgid "From" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:121 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:137 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:182 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:195 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:351 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:167 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:174 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:124 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:130 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:168 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:350 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:383 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:398 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:501 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:516 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:564 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:168 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:187 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:266 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:311 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:369 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:384 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:399 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:417 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:433 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:471 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:517 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:532 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:548 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:565 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:828 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:832 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:90 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:53 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:160 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2315 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:127 msgid "Title" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2316 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:137 msgid "First Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:112 msgid "Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2310 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "County" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:166 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:168 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:170 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:172 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:148 msgid "Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:162 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:162 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:162 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:173 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:49 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:86 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:41 msgid "Dear" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:431 msgid "still ongoing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:435 msgid "day" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "days" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:448 msgid "Edit Course Dates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:449 msgid "Edit Treatments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:456 msgid "days earlier" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:470 msgid "Course Number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:471 msgid "PATIENT FAILED TO RETURN" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:473 msgid "Opened" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "Closed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:475 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Duration" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:486 msgid "or incomplete" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1208 msgid "Completed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 msgid "dated" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 msgid "Exam" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:501 msgid "perio" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:502 msgid "xray" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:503 msgid "anaes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "other" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:505 msgid "custom" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:506 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "New Denture (upper)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:507 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "New Denture (lower)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:508 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Denture (upper)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:81 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:84 msgid "Ignore dev login (advanced)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course is still active" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:155 msgid "days after last day treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:157 msgid "Course doesn't tally with daybook entries" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:160 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:180 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:185 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:214 msgid "Estimates for Course Number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:103 msgid "MED" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:170 msgid "Course Activity" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:243 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2346 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2353 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2358 msgid "Edit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:262 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:632 msgid "Today" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:265 msgid "Add a note" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:265 msgid "No notes found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:43 msgid "TODAY!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:50 msgid "year" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:50 msgid "years" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:53 msgid "month" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:53 msgid "months" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:73 msgid "!UNKNOWN POSTCODE!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:93 msgid "exemption" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:95 msgid "NOT EXEMPT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:106 msgid "UNKNOWN COURSETYPE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:114 msgid "Please Set a Dentist for this patient!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:117 msgid "UNDER TREATMENT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:1019 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:428 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:161 msgid "Memo" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:123 msgid "Med Form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 msgid "Med Notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:83 msgid "Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:126 msgid "IO xrays" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Panoral" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Scaling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "History" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:166 msgid "Recall" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Dentist recall disabled" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:174 msgid "(Exam Booked)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:115 msgid "Exam Due" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:181 msgid "Hygienist Due" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:183 msgid "DO NOT RECALL" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:187 msgid "Account" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:191 msgid "in credit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:194 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:139 msgid "End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:142 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:145 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:152 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:158 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:163 msgid "No treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:90 msgid "Contract Dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:96 msgid "this week" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "recently" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "last year" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "years ago." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:105 msgid "Joined the practice" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:110 msgid "Last Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:116 msgid "YES!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:120 msgid "Has seen hygienist on" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:121 msgid "Occasions" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:127 msgid "Telephone (Home)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:128 msgid "Telephone (Work)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Mobile" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:133 msgid "Please get a phone number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:147 msgid "COMPLETED COURSE TODAY" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:42 msgid "Available Clinicians" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Dentists" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Hygienists" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:79 msgid "All" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 msgid "staff meeting" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:295 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:142 msgid "Out of Office" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:132 msgid "Length" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:144 msgid "you need to be in the static chart to change tooth state" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:865 msgid "BPE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:43 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:193 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:37 msgid "Form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:44 msgid "CheckBox" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:52 msgid "Plan Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:53 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:55 msgid "Select Appointment Length" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:56 msgid "Hours" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/finalise_appt_time.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/finalise_appt_time.py:69 msgid "Minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:91 msgid "Clinicians - DATE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:92 msgid "Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:94 msgid "Finish" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:96 msgid "If you copy this day's setup to the clipboard, you can create a \"clone\" of this day when no data is set. This is useful when extending books." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:97 msgid "Copy To Clipboard" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:98 msgid "Paste the saved values." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:99 msgid "Paste" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:147 msgid "Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:135 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:136 msgid "Block Start" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:137 msgid "Bock End" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:138 msgid "Text to apply" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:139 msgid "//Blocked//" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:39 msgid "Emergency" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:141 msgid "Reserved Clinical Time" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:144 msgid "Catch up time" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:145 msgid "Phone Call" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:713 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:172 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:368 msgid "minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:147 msgid "Insert a Block" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:148 msgid "Insert A Patient into this slot?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:149 msgid "Start Time" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:151 msgid "Chosen Patient is
" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:135 msgid "Change" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:153 msgid "Reason for appointment is" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:154 msgid " minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:155 msgid "Insert a Known Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:80 msgid "Bulk Mail Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:81 msgid "Date Format for the letters" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:82 msgid "Full, Day, month and Year" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:83 msgid "Month and Year Only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:84 msgid "Date to use" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:85 msgid "Today's Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:86 msgid "The actual recall date for the patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:87 msgid "This Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:35 msgid "Choose Clinicians" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:68 msgid "Language Selector" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:69 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:71 msgid "Note - if your preferred language is not available (or incomplete), please visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:72 msgid "Many thanks to all who have helped internationalise openMolar, and to the folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:40 msgid "Choose A Tooth" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:41 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:85 msgid "Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:86 msgid "Deciduous Teeth" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:87 msgid "Adult Teeth" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:88 msgid "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the shortcut" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:89 msgid "GO" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:90 msgid "QUIT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:63 msgid "Custom Item" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:64 msgid "Number of Items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:66 msgid "Treatment Description" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:101 msgid "Daylist Printing Wizard" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:102 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:106 msgid "Start Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:107 msgid "End Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:105 msgid "All Practioners on One Page" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:106 msgid "One Practitioner Per Page - Minimal" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:107 msgid "One Practioner Per Page - Fill Page" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:461 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:748 msgid "Go To Today" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:462 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:38 msgid "TextLabel" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:463 msgid "Day View" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:754 msgid "View Current Week" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 msgid "Week View" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 msgid "Month" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 msgid "Print Month View" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "All Clinicians" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Select Clinicians" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Month View" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 msgid "Year" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 msgid "Year View" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "Agenda" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:75 msgid "Exam Wizard" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1100 msgid "Type" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:77 msgid "Standard" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:78 msgid "Extensive" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:79 msgid "Full Case Assessment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:80 msgid "Exam Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:66 msgid "Appointment Time" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:64 msgid "Space Before Appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:69 msgid "0 mins" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:67 msgid "00:00 - 00:00" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:68 msgid "Space After Appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:69 msgid "Forum Input" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:70 msgid "Topic" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:84 msgid "Hygienist Wizard" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:85 msgid "Planned Treatments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:86 msgid "label" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:87 msgid "Ok - I'll be careful!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:89 msgid "Debridement" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:90 msgid "Scale and Polish" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:91 msgid "Extensive Scaling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:92 msgid "Treating Dentist/Hygienist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2286 msgid "Open Molar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2287 msgid "Exit the Current Patient Record." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2288 msgid "Esc" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2289 msgid "Add a New Patient to the database." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 msgid "Click on this Button to search for in patient in your database." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Ctrl+F" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2293 msgid "This cycles back through the history of records loaded today." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2294 msgid "Reload the patient from the database." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2295 msgid "Ctrl+R" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2296 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2297 msgid "Show patients who live at the same address, or who have a similar name." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2298 msgid "&Relatives" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2299 msgid "Ctrl+G" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2300 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2301 msgid "Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:35 msgid "Address3" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2304 msgid "send an sms" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:110 msgid "sms" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2306 msgid "email2" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2307 msgid "Fax" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2311 msgid "email1" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2312 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2319 msgid "send an email" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2313 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2320 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:110 msgid "email" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2314 msgid "Occupation" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2317 msgid "Tel (mob)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:35 msgid "Address2" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2321 msgid "Sex" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2322 msgid "M" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2323 msgid "F" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2324 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Postcode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2325 msgid "Tel (home)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2326 msgid "send a fax" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2327 msgid "fax" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2328 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:35 msgid "Address1" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2330 msgid "Tel (work)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2331 msgid "Abort New Patient Entry" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2332 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2333 msgid "Save New Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2334 msgid "Family Groups" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2335 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2336 msgid "Edit family group" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2337 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3311 msgid "Not a member of a known family" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2338 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2339 msgid "Apply Address of previous record" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2340 msgid "Patient Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2341 msgid "Pt is registered with Dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:76 msgid "Course Type" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2343 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:157 msgid "Status" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2344 msgid "Write Off Bad Debt" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2345 msgid "This label is for displaying Private contractual stuff" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2347 msgid "Private" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2348 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2350 msgid "Highland Dental Plan" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2351 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2352 msgid "View Claims History" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2354 msgid "Exemption" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2355 msgid "Exemption Text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2356 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2388 msgid "NHS" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2357 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2359 msgid "Registered Elsewhere" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2360 msgid "Contract" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2361 msgid "Letters TO the patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2362 msgid " Custom Letter to the patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2363 msgid "Print a recall saying the patient is due now." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2364 msgid "Recall for An Examination" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2365 msgid "Print a receipt - useful for duplicates." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2366 msgid "Duplicate Receipt" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2367 msgid "Print An Account Letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2368 msgid "Referrals (Letters about the patient)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2369 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2385 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:51 msgid "Print" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2370 msgid "Patient \"Notes\"" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2371 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2379 msgid "Print a summary of the patient's notes (for them to take on). Includes No fee details." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2372 msgid "Print the patient's notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2373 msgid "Previous Correspondence" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2374 msgid "Generated By OpenMolar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2375 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:106 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 msgid "1" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2376 msgid "Imported into database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2377 msgid "Import A Document" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2378 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 msgid "Medical History" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2380 msgid "Print a medical history form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2381 msgid "Correspondence" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2382 msgid "Patient's Diary" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2383 msgid "Summary View" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2384 msgid "MED Questionaire" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2386 msgid "Completed by Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2387 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Medical History Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2389 msgid "Print A GP17" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2390 msgid "Apply an Exemption" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2391 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "Miscellaneous" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2392 msgid "Recall Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:289 msgid "Money" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2394 msgid "Print &Estimate" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2395 msgid "Print &Account" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2396 msgid "Take &Payment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:233 msgid "New" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 msgid "perform a clinical exam" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 msgid "add x-rays to the patient's current course." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "X-ray" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "perform common perio treatments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Hyg" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "Close This Course" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "ChildSmile" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "check / update the patients medical history" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "Clinical Summary" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Include" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 msgid "Printing Notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Payments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "Timestamps" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 msgid "Metadata" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "

Use these settings for the clinical summary notes also.

" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "clinical summary" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 msgid "Notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 msgid "Plan" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 msgid "Treatment Planning" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 msgid "X-Rays" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Perio" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 msgid "Dentures" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Other" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Custom" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 msgid "Advanced Tx Planning" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 msgid "Charts / Planning" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "Custom Estimate Letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "" "Use this feature to re-price all items in the \"tooth\" category of treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "ReCalculate Estimate" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "Apply Exemption" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:75 msgid "Course Dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1640 msgid "Close Course" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Perio Charts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "See all payments in the database made by this patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "View treatments completed, by date order" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "View all Courses of treatment. This includes treatment that was planned but not completed." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 msgid "Courses" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Estimate history for this patient." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Estimates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Current Estimate" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "NHS Claims" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Memos" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been changed will be displayed." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "debug tools" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "changes only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 msgid "Print the text displayed on this page." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "Today's Notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:83 msgid "PhraseBook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Ins" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Save the changes made to this record." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 msgid "Save Changes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "Ctrl+S" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Enter Notes." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Phrases" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Patient Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid "Appointments / Diary" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Registered Dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:210 msgid "Go" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Print the Data" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 msgid "All payments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Sundries_only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 msgid "Treatment_only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Cashbook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 msgid "Treating Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Extra Filters" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Daybook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Print Selected Letters" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Load Table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:186 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:259 msgid "TOTAL" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Print Table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 msgid "Click on a row to load a patient record." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "Accounts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Print Letters" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Expand All" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Letter Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 msgid "Bulk Mailings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:194 msgid "Fee Scales Available" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Use this control to select a feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Search Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "search for the given phrase in description columns" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Search Descriptions" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "only search for the given phrase in the usercode column" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "Search Itemcodes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "Display Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hide Rarely Used Codes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Quickly expand all items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "Expand All Sections" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "Quickly compress all items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Compress All Sections" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Resources" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Documents" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 msgid "Advanced Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "FeeScale Tester" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Reload Fee Scales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "Feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1770 msgid "FORUM" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Wiki" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:101 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:56 msgid "&File" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "&Help" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:157 msgid "&Preferences" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "&View" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "&Appointments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 msgid "&Printing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "&Forum" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 msgid "&Charts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "&Mode (reception or surgery)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "&Cashbook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "&Daybook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "&History" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:103 msgid "&Tools" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "&Export Patient to disk" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2546 msgid "&Import Patient from disk" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2547 msgid "About &OpenMolar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "&About QT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "&Quit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 msgid "Select Interface Language" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Ctrl+Alt+F" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Font Size" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "Show Advanced Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Table View For Charting" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "NHS Form Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 msgid "Test Print a GP17" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "Print Daylists" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Set Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Set Assistant" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Surgery Mode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Advanced Record Management" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "Fix Locked New Course of Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 msgid "Allow Full Edit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Set Surgery Number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "Set Surgery Number (used so other applications can see which record is loaded)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2567 msgid "Edit Phrasebooks" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2568 msgid "Allow &Edit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "Enable &Filters" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "Allow Edit &Courses" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Allow Edit &Estimates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 msgid "Allow Edit &Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "Allow &ALL Edits" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:72 msgid "Edit Referral Centres" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 msgid "Edit Feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Open Document Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:87 msgid "Reset Supervisor Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Add User" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Add Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Edit Practice Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Clear Today's Emergency Slots" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Insert Regular Blocks" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:73 msgid "Edit Standard Letters" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Configure Feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 msgid "Set Bookend (last day for appointment search)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 msgid "Check for &Updates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Edit Account Letter Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:104 msgid "New CPITN score" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 msgid "0" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 msgid "2" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 msgid "3" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 msgid "4" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 msgid "*" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:72 msgid "New Course" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:73 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:74 msgid "Contracted Dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Acceptance Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:64 msgid "A Wizard to select some common appointment combinations" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:65 msgid "&Shortcuts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:66 msgid "A New Appointment for this patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:67 msgid "&New" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:68 msgid "Print out the next 5 appointments for this patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:69 msgid "Print Card" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 msgid "

A place to keep a reminder of the patients appointment preferences.

Eg. "30 minute appointments for examinations" etc.

" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:128 msgid "Patient Finder" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:129 msgid "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:130 msgid "Repeat Last Search" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:131 msgid "SNO or Surname" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:132 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:144 msgid "check to search for a similar sounding name" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:138 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:146 msgid "Address includes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:147 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:149 msgid "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:151 msgid "search for a postcode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:274 msgid "NHS current fees (money0)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:275 msgid "NHS payments (money2)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:276 msgid "NHS estimated (money4)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:277 msgid "private estimate (money5)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:278 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:279 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:280 msgid "credit (money8)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:281 msgid "debt (money9)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:282 msgid "debt2 (money10)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:283 msgid "money 11" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:284 msgid "private current fees (money1) " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:285 msgid "private payments (money3)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:286 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:287 msgid "Outstanding amount" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:288 msgid "0.00" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:290 msgid "Last CE (pd5)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:295 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:297 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:299 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:303 msgid "Add Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:292 msgid "Last ECE (pd6)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:294 msgid "Last FCA (pd7)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:296 msgid "Last OPT (pd8)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:298 msgid "Last intraoral Xrays (pd9)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:300 msgid "Last SP (pd10)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:302 msgid "Last Account sent (billdate)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:304 msgid "Dates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 msgid "Hidden Notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:74 msgid "Post a memo about this Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:75 msgid "Expiry Policy" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:76 msgid "Do Not Expire" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:77 msgid "Expire on this date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:78 msgid "Viewable by" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:80 msgid "Surgery Machines" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:81 msgid "Reception Machines" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:49 msgid "Delete this memo when I close this" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:130 msgid "Enter an appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:131 msgid "Appointment with" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:133 msgid "5 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:134 msgid "10 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:135 msgid "15 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "20 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "30 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "40 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "45 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "1 hour" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "1 hour 15 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "1 hour 20 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "1 hour 30 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "1 hour 45 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "2 hours" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "2 hours 30 minutes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "3 hours" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "Memo (optional)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "Reason 2" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "Reason 3" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "Reason 1" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "Schedule Now" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:249 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:394 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:412 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:50 msgid "Please set the Surgery Number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:52 msgid "Surgery One" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:53 msgid "Surgery Two" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:54 msgid "Surgery Three" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:55 msgid "Surgery Four" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:56 msgid "Surgery Five" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:57 msgid "Surgery Six" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:194 msgid "delete tooth data" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:195 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:196 msgid "KUO" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:197 msgid "Mobile Tooth" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:198 msgid "Early Caries" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:199 msgid "Filling Missing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:200 msgid "Chipped" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:201 msgid "Cracked" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:202 msgid "Poor Prognosis" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:203 msgid "Extract Soon" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:204 msgid "Sensitive" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:205 msgid "Non Vital" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:207 msgid "AM" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:208 msgid "CO" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:209 msgid "GL" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:211 msgid "Po" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:212 msgid "extract (plan only!)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:213 msgid "EX" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:214 msgid "root treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:215 msgid "RT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:216 msgid "Apply and move Back a tooth" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:217 msgid "porcelain veneer" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:218 msgid "DR" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:219 msgid "Apply & Add Another Item" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:220 msgid "&&" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:221 msgid "Apply & Move to Next Tooth" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:63 msgid "Tooth Property Editor" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:64 msgid "UR8" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:65 msgid "Items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:66 msgid "Database Line" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:119 msgid "erroneous exemption category entered" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:254 msgid "mins starting at" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:256 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:709 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "with" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:709 msgid "SLOT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:739 msgid "Double Appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:762 msgid "Minutes Free" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:787 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:375 msgid "Load Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:789 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:826 msgid "Add/Edit Memo" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:792 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:827 msgid "Cancel Appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:794 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:836 msgid "Clear Block" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:796 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:844 msgid "Block or use this space" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:798 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:830 msgid "Print A Medical Form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:800 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:829 msgid "Save Medical Form Check Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:872 msgid "Whoops!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:873 msgid "Bad Time Sequence!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:90 msgid "Switch to day view of this date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:94 msgid "Edit Memos" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:96 msgid "Edit Clinician Hours" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:635 msgid "Edit day memos" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:636 msgid "Edit Public Holiday information" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:388 msgid "DATE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:314 msgid "Toggle Deciduous State" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:406 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:323 msgid "Delete" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:328 msgid "Delete All Restorations" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:334 msgid "Add Comments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:338 msgid "Show History" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:478 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:250 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:478 msgid "Left" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:481 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:253 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:481 msgid "Right" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:59 msgid "Are you Sure" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:213 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:428 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:437 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:471 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:548 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:566 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:673 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:523 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3247 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:185 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:209 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Confirm" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:81 msgid "Browsing Mode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:75 msgid "Scheduling Mode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:77 msgid "Blocking Mode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:79 msgid "Notes Mode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:121 msgid "information" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1107 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1155 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:683 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:751 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:770 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:785 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:363 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:180 msgid "confirm" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 msgid "CSET" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Planned Items Total" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Interim Charges" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 msgid "Completed Items Total" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:136 msgid "Diary" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:137 msgid "Open the patient's diary" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:141 msgid "Appointment Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:145 msgid "Previous appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:149 msgid "Next available appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:153 msgid "Next Day or Week" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:157 msgid "Previous Day or Week" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:161 msgid "First available appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:182 msgid "No appointment selected for scheduling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:209 msgid "Select a patient to edit notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:87 msgid "No patient Selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:752 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:193 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:107 msgid "error" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:753 msgid "No patient selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:781 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:264 msgid "OK" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "Please select an appointment to begin scheduling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:850 msgid "appointment is already scheduled" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:853 msgid "Joint appointment Scheduled" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:857 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:869 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:892 msgid "This date is beyond the diary limit." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Please search again with different criteria." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:871 msgid "for instance..." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:872 msgid "no excluded days" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 msgid "ignore emergencies" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:874 msgid "add or view more clinicians" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 msgid "or you have requested an impossible appointment!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:896 msgid "You can't schedule an appointment in the past" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:903 msgid "in this week" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:907 msgid "on this day" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:913 msgid "No Slots Found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:925 msgid "Specified Dentist only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:928 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Any Dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:930 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:938 msgid "Specified Hygienist only for hyg appts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:941 msgid "Any Hygienist for hyg appts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "Any Clinician for hyg appts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:948 msgid "Joint Appointments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:954 msgid "Overwrite Emergencies" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:960 msgid "Any Day" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:963 msgid "Mon" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:963 msgid "Thu" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:963 msgid "Tue" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:963 msgid "Wed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 msgid "Fri" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 msgid "Sat" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 msgid "Sun" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 msgid "No Appointment Selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:974 msgid "Search Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:998 msgid "View/edit today's notes for " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:1024 msgid "Made" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:1026 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:76 msgid "at" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:1035 msgid "last mh form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:1040 msgid "MH CHECK REQUIRED" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:210 msgid "is not recognised" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:211 msgid "do you want to accept anyway" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_letter_dialog.py:43 msgid "Update Account Letter Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_letter_dialog.py:46 msgid "The following fields can be edited." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_letter_dialog.py:52 msgid "Debt Collector" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_letter_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:115 msgid "Footer" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:39 msgid "Account Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:40 msgid "Please Choose the tone of this letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Normal Account - Very Polite" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Mildly assertive request" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:46 msgid "Threaten with Debt Collector" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:44 msgid "Load Accounts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:46 msgid "Please select criteria for loading patients in debt or credit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:47 msgid "Debt" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:427 msgid "Credit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:57 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:75 msgid "Ignore amounts less than" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py:77 msgid "Include Bad Debts" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:43 msgid "Add User Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:50 msgid "Add a new clinician to the system?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add New Login" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:61 msgid "Hygienist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:62 msgid "Therapist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:69 msgid "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:81 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:82 msgid "Name eg. Fred Smith" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:83 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Qualifications" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:85 msgid "Speciality" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Clinician Type" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Additional Data" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:101 msgid "view existing dentists" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:72 msgid "Complete Treatments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:73 msgid "What treatment has been performed?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:46 msgid "Add a new user to the system?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "This is done using initials or a short nickname." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:54 msgid "User Initials or nickname" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:67 msgid "view existing users" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:75 msgid "Initials/nickname must be unique" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 msgid "Forename" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:35 msgid "dob" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "POSTCODE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:46 msgid "Address Matches" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:78 msgid "Top 12 address matches for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:209 msgid "note" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:209 msgid "type" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:101 msgid "Advanced Treatment Planning" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Planned Text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:138 msgid "Completed Text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:144 msgid "Field" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:198 msgid "Show Chart Items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:196 msgid "Hide Chart Items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:156 msgid "Clinician Times" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:47 msgid "Alter Cashbook Entry" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 msgid "Patient Name" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 msgid "Payment Type" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:86 msgid "Enable Full Edit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:57 msgid "Choose from the following options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:81 msgid "You haven't completed this option" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Acrylic Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:296 msgid "You have completed your input." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:297 msgid "Please click on Apply" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:338 msgid "Upper Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:339 msgid "Lower Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:574 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:268 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:344 msgid "Next" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:364 msgid "Whoops" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:456 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:242 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:247 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:423 msgid "Warning" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:445 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:424 msgid "Your upper denture input is invalid" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:436 msgid "Your lower denture input is invalid" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:61 msgid "Open Phrasebook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:111 msgid "No notes found for today!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:41 msgid "Appointment Card for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:47 msgid "Include Today's appointments?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:84 msgid "No appointments to print!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:39 msgid "Staff Meeting" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:50 msgid "Insert a number of blocks to various books" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:52 msgid "Clinicians" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:64 msgid "Days to Apply" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:108 msgid "What time does this recurr?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "What is this block for?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 msgid "reason" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:139 msgid "Please enter the text to use for this block" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:181 msgid "End Date is greater than Start Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "Block has zero duration" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "You have no days selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no clinicians (ie.books) selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:213 msgid "applying changes for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:230 msgid "Appointment(s) inserted" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:234 msgid "Some were rejected by the database as they clashed with existing appointments or blocks" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:194 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:258 msgid "Information" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:248 msgid "Bad Input" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:59 msgid "Global Memo" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:76 msgid "Clinician Memos" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:83 msgid "Public Holiday Text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:85 msgid "Edit Public Holiday Text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:43 msgid "User choice" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:45 msgid "Set the Appointment Viewing Mode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Browsing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Scheduling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:54 msgid "make appointments for a patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:57 msgid "Blocking" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "block time periods. eg. lunch times etc." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:61 msgid "Note Checking" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:62 msgid "check notes for today's patients" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:29 msgid "post" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:59 msgid "Appointment Preferences for Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:65 msgid "Recall Patient Periodically" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:69 msgid "Dentist Recall" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:84 msgid "dentist recall period (months)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:86 msgid "Next Recall Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "Shortcuts (months from today)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:91 msgid "Hygienist Recall" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:104 msgid "hygienist recall period (months)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:106 msgid "Next Recall" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:110 msgid "Post" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:122 msgid "Recall method" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:194 msgid "Recall active with neither Dentist or Hygienist active makes no sense" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:47 msgid "Restore Default Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:49 msgid "Appointment search does not have default settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Would You like to reset these now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:54 msgid "Show Settings Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Keep Custom Settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:82 msgid "Appointment Settings Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:85 msgid "Please set criteria for making appointments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:90 msgid "Dentist selection policy" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:95 msgid "Specified Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:156 msgid "Reset Default Values" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:178 msgid "Check All" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:180 msgid "Clear All" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_wizard_dialog.py:39 msgid "Add" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:35 msgid "Select an Assitant" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:44 msgid "No Assistant" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:39 msgid "Apply Saved Address" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:41 msgid "Address 1" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:41 msgid "Address 2" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Post Code" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:53 msgid "Home Telephone" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 msgid "Existing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:147 msgid "Address changes applied" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:154 msgid "No previous address details found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:187 msgid "Abandon Changes?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:221 msgid "Advanced" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:56 msgid "No patient chosen!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:99 msgid "Start is outwith slot bounds (too early)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:102 msgid "Start is outwith slot bounds (too late)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:105 msgid "Finish is outwith slot bounds (too late" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:108 msgid "Finish is outwith slot bounds (too early" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "length of appointment is too short" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:113 msgid "no reason for the block given" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1989 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:195 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "no patient selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:122 msgid "Unable to commit because" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:139 msgid "patient not found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:148 msgid "Chosen Patient is" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:150 msgid "no patient chosen" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:41 msgid "Bookend Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:44 msgid "Change the last date where appointments are searched for?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:50 msgid "&Yes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:51 msgid "Cancel the appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:56 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:63 msgid "Delete unscheduled appointment?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:70 msgid "Delete this appointment?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:82 msgid "&No" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:83 msgid "Close this dialog, making no changes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:122 msgid "Successfully removed appointment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:117 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Error removing from patient diary" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:35 msgid "Fissure Sealant" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "PRR restoration with composite" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:40 msgid "Pulp Extirpation - 1 canal" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - multiple canals" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Root Canal" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Incomplete Endodontics" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:47 msgid "Extraction" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Surgical Extraction" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Apicectomy" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:60 msgid "Chart Treatment Choice Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:77 msgid "Show Treatments from all feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "No Matching items to show. Perhaps this is due to the feescale for this patient?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:50 msgid "This application is at version" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:52 msgid "The latest release is" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:53 msgid "Released on" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:54 msgid "For more information, please visit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:56 msgid "The OpenMolar Website" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:197 msgid "Check for updates with every run" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:198 msgid "Check for updates daily" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:199 msgid "Check for updates weekly" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:200 msgid "Check for updates monthly" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:201 msgid "Never check for updates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:255 msgid "Checking for updates.... please wait." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:277 msgid "Unable to connect to" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:282 msgid "A newer version of OpenMolar is available" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/check_version_dialog.py:285 msgid "You are running the latest version - thankyou" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:91 msgid "ToothBrushing Instruction Given" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:94 msgid "Dietary Advice Given" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:97 msgid "Fluoride Varnish Applied" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:99 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:168 msgid "Error polling website" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:171 msgid "Timeout polling website" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:175 msgid "RESULT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:197 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:35 msgid "Select a Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:44 msgid "NONE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:88 msgid "Set Clinician as" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:39 msgid "Close Course Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:48 msgid "You have no further treatment proposed for this patient, yet they are deemed to be \"under treatment\"." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:59 msgid "Suggested Completion Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:63 msgid "Close this course now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:66 msgid "Pt failed to return" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:43 msgid "Complete Multiple Treatments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:47 msgid "You have selected multiple treatments." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:107 msgid "Complete All" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Reverse All" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:90 msgid "Blank Letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:102 msgid "Abandon changes and convert to letter type" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:43 msgid "Course Daybook Estimate Checker" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:51 msgid "Polling Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:79 msgid "No advanced options available" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:42 msgid "Edit Treatment Course" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:97 msgid "acceptance date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:100 msgid "completion date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:103 msgid "Set completion date to match Acceptance date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:107 msgid "Add Completion Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:112 msgid "exam date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:115 msgid "No Exam Date on this course" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:130 msgid "Bad Date Sequence" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:42 msgid "Options Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:43 msgid "What do you wish to show?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:45 msgid "Include Estimates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:49 msgid "Include Daybook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:54 msgid "Leave both unchecked for courses only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:47 msgid "Merge Treatment Courses" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:53 msgid "Preview Merged Course" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:92 msgid "Courses can't be merged, both have examinations" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:94 msgid "Merged Course Preview" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:35 msgid "Porcelain Jacket" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:36 msgid "Gold" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 msgid "Porcelain/Metal" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Lava" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Opalite" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Emax" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Everest" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 msgid "Stainless" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Resin" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:57 msgid "Crown Choice Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:75 msgid "Show Crowns types from all feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/database_connection_progress_dialog.py:41 msgid "Connection Progress Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/database_connection_progress_dialog.py:44 msgid "Establishing a database connection... please wait!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/database_connection_progress_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 msgid "Quit OpenMolar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/database_connection_progress_dialog.py:85 msgid "Closing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/database_connection_progress_dialog.py:86 msgid "No Database Connection - Closing OpenMolar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:83 msgid "Inspecting daybook row" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Diagnosis" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "Anaesthetics" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "Misc" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:66 msgid "Other Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:67 msgid "Chart Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:48 msgid "Update the daybook row with these new Totals" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:50 msgid "Update the daybook row with Fee Total Only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:52 msgid "Update the daybook row with Charge Total Only" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:54 msgid "Delete this row from the daybook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:91 msgid "Ok" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:50 msgid "Denture Treatment Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:58 msgid "Plan New Denture(s)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:60 msgid "Alter an Existing Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:90 msgid "Openmolar Documents Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:94 msgid "Please choose a document to open" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:100 msgid "For help configuring this feature, see" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:111 msgid "You have no documents stored in" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:134 msgid "docs.xml is not parseable" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:140 msgid "Open &File" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:169 msgid "Error opening PDF file" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:49 msgid "Duplicate receipts for Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:55 msgid "No previous receipts found!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:58 msgid "Reprint an existing receipt" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:125 msgid "show" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error reviewing PDF file" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:177 msgid "Professional Services" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:183 msgid "duplicate receipt for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:41 msgid "Edit Practice Address Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:44 msgid "Edit the Practice Name and/or address." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "This information is used on receipts and appointment slips." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:53 msgid "Practice Name" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:59 msgid "Address Line" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:87 msgid "Delete the currently selected Centre" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:92 msgid "Add a New Centre" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Greeting" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:220 msgid "Close" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:127 msgid "Apply Changes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:227 msgid "Example Referral Centre" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Dear Sir/Madam" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "My Local Hospital" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Main Street" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Town" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:243 msgid "You should have at least one referral centre in the database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:88 msgid "Delete the currently selected letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:93 msgid "Add a New Letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Desctription" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:114 msgid "Body Text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:49 msgid "Input Required" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 msgid "You should have at least one standard letter in the database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:41 msgid "Edit Treatment Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:74 msgid "No Advanced Options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:86 msgid "Option" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:90 msgid "Edit Completed items?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:91 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:96 msgid "Planned Items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:99 msgid "Completed Items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:71 msgid "Inspecting estimate for Course Number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:119 msgid "Apply Changes?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 msgid "Please enter the examining Dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:86 msgid "is the patient's contracted dentist, but NOT the course dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 msgid "You may wish to correct this." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:93 msgid "is not the patient's contracted dentist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:98 msgid "performed this exam" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:99 msgid "is neither the patient's regular dentist or the course dentist!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Is this correct?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "No Patient Selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 msgid "You already have a completed exam on this course of treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:122 msgid "Unable to perform exam" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:130 msgid "Examination not applied" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:139 msgid "performed by" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:170 msgid "Not updating recall due to patient's recall settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:41 msgid "Address 3" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "TOWN" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:101 msgid "Add Record" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:102 msgid "to this family group?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:122 msgid "Which address should be used?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:165 msgid "Synchronise Addresses" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:169 msgid "Standard Search" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:172 msgid "Address Search" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:176 msgid "Delete this group" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:181 msgid "Add members" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:186 msgid "Manage Group" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:202 msgid "Manage Family Group" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:235 msgid "from group" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:235 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:255 msgid "Unlink" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:270 msgid "This patient does not belong to any family group." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "Create a New Family Group" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:275 msgid "Show similar addresses" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 msgid "Remove" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "from this family group?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:341 msgid "Address(es) updated" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:363 msgid "Delete this family group?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:52 msgid "In use" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:61 msgid "Demote the feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:65 msgid "Promote the feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:115 msgid "Confgure Feescales Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:119 msgid "This dialog enables you to modify the metadata which determines the order feescales are loaded." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:121 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:69 msgid "warning" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:70 msgid "You have no patients in your database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:97 msgid "no match found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:421 msgid "Serialno" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Birth Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Address Line 1" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Address Line 2" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Tel1" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Tel2" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:144 msgid "Load the Selected Patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:199 msgid "Include ALL Patients" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:201 msgid "are hidden" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:205 msgid "Show only active Patients" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "You may wish to enter a password which will hereafter be required to login to the OpenMolar application" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "This password will help prevent an unauthorised person accessing any sensitive data." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "Please enter the hostname and port number where your server can be reached." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "If you do not have a mysql/mariadb server on your computer or local network, please quit this setup, and install one now!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:204 msgid "Host" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Port" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:215 msgid "Step 2 - Where is your database server?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:239 msgid "Host Field is Blank" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:241 msgid "Port Field is Blank" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:243 msgid "Port Field must be a number. Default is 3306" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:255 msgid "Do you already have an openmolar database on this server?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "If not, you should lay out one now." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:262 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:264 msgid "Use an existing database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:272 msgid "Step 3 - select a database option" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:288 msgid "Please enter connection criteria for the database." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "If the user and/or database does not exist, you will be given an opportunity to create them " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:370 msgid "Show Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:304 msgid "Database Name" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "(mysql) user" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:314 msgid "Step 5(a) - Your Database Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:337 msgid "Database Name Field is Blank" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:339 msgid "User Field is Blank" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:341 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:352 msgid "To create a database, and set the privileges for user, OpenMolar must log into mysql as a privileged mysql user." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:354 msgid "OpenMolar does NOT store this username or password." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:356 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:358 msgid "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:372 msgid "Privileged user" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Password for this user" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:453 msgid "A database named" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "exists already" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:456 msgid "Overwrite this database?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:112 msgid "Success!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:487 msgid "Database created successfully!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:493 msgid "Error Creating Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:502 msgid "Testing connection" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:507 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:526 msgid "Your database is accepting connections!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:533 msgid "Your database is NOT accepting connections!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:544 msgid "First Run Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:576 msgid "Back" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:600 msgid "Create Database Now!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:602 msgid "Write Config File and Proceed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:39 msgid "Form options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:49 msgid "use test mode (print boxes)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:51 msgid "use a background image for the form (if available)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Completed Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:75 msgid "Prior Approval" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:97 msgid "GP17 Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:99 msgid "Print a GP17 Form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:111 msgid "Use this dentists stamp?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 msgid "Chart" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 msgid "Completion Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:625 msgid "Treatments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:123 msgid "Include Chart Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:130 msgid "Include Course Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:52 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:35 msgid "Titanium Implant" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Implant Abutment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Crown" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Bridge Retainer" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Pontic" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:52 msgid "Implant Choice Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:41 msgid "Initial Check Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:44 msgid "OpenMolar has found the following issues with your database." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:49 msgid "No Advanced options" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:55 msgid "Proceed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:81 msgid "How do I Fix This?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:77 msgid "Your database contains no dentists" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:84 msgid "Your practice name is" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:93 msgid "Why is this?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:95 msgid "You have no appointment space in your diary!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:104 msgid "The cbcodes table in your database is inadequate." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "This will create problems when accepting payments." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:116 msgid "you have" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:111 msgid "patients" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:114 msgid "active dentists" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:117 msgid "active hygienists" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:119 msgid "appointment search final date is" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:123 msgid "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:127 msgid "Once the application is open, click on Tools - > Menu - > Edit Practice Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "This could be for a variety of reasons" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:136 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:138 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:141 msgid "The BOOKEND value (last day to search for appointments) may simply need adjusting" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "This is not the default database - are you sure you wish to use this database?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:95 msgid "Login Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:97 msgid "Login Required" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:183 msgid "Unable to Run OpenMolar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:184 msgid "Good Bye!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Login Error" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:299 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:338 msgid "Incorrect" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:339 msgid "User/password combination!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:340 msgid "Please Try Again." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:43 msgid "Previously stored dates" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:83 msgid "Medical Form Checked Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:93 msgid "You are about to confirm that the patient has completed a medical history form." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:131 msgid "Date Checked" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:133 msgid "Confirm this date now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:143 msgid "Medical Form Completed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:47 msgid "Medical Form Date Entry Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:56 msgid "Change Year" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:59 msgid "NEVER" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:62 msgid "Please enter the date that this patient has completed a medical history form." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:64 msgid "Last recorded check was" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:89 msgid "Input" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Please select a year" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Sucessfully saved " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:115 msgid "for patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:156 msgid "Error!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 msgid "That date is in the future!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:129 msgid "Confirm Action" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1328 msgid "error getting serialno" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1329 msgid "please check this number is correct?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:46 msgid "Minor administrative correction - (leave no note)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:50 msgid "Please enter the reason for your alterations" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:53 msgid "Updated Medical Notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Corrected Medical Notes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:131 msgid "Medical History for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:172 msgid "Medical Alert" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:177 msgid "Medications" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Bleeding Disorders" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Infectious Diseases" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Endocarditis" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Mark as Medical Alert" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Joint Replacement" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:389 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:400 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:285 msgid "question" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:307 msgid "from your input?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:390 msgid "No changes - mark as checked today?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:401 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:418 msgid "Checked Medical History" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:429 msgid "Abandon your changes?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:41 msgid "MH Form Print Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "Leave fields empty" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:75 msgid "Some fields are missing, please check" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Bonded Porcelain" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:96 msgid "Upper Bridge" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Lower Bridge" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:119 msgid "Bridge Type" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Conventional Bridge" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Resin Retained Bridge" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:143 msgid "Material" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:241 msgid "Chart/Plan a Bridge" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Complete Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:103 msgid "Partial Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New UPPER Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:142 msgid "New LOWER Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:145 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:193 msgid "Chrome Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:195 msgid "Flexible Denture" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:224 msgid "Please select teeth which this denture is to replace" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "You may wish to add the following optional items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:268 msgid "Special Tray" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:269 msgid "Soft Lining" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:307 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:48 msgid "Annual Hdp Payment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:49 msgid "Other Payments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:50 msgid "Patient Refunds" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:84 msgid "Sundries" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:85 msgid "Total" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:171 msgid "unusual payments" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:47 msgid "Raise Permissions Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:49 msgid "Supervisor privileges required to perform this action" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Please enter the supervisor password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:56 msgid "Supervisor Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:843 msgid "whoops" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:78 msgid "incorrect supervisor password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:95 msgid "New Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "Confirm New Password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "new passwords didn't match" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:118 msgid "password changed successfully" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "Password unchanged" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:37 msgid "Cast Precious Metal" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Non-Precious Metal" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:48 msgid "Post Choice Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:66 msgid "Show Post types from all feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:46 msgid "start date (inclusive)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:51 msgid "end date (inclusive)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:43 msgid "Recall Prompt Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "There is a problem with the recall date of this patient." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:50 msgid "Would you like to fix this now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:54 msgid "Fix" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore Recall Date" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:59 msgid "Ignore this for now." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:61 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:59 msgid "Cancel and Continue Editing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:47 msgid "What's changed?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:57 msgid "Discard All Changes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:80 msgid "Are you sure you want to discard these changes?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (United Kingdom)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "English (Australia)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Afrikaans" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "Danish" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "French" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "German" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Hungarian" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Indonesian" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Italian" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Occitan" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Polish" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Portuguese" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Slovak" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Spanish" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Turkish" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Romanian" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:95 msgid "Greek" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:117 msgid "No language selected" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:124 msgid "switched interface to" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:127 msgid "no translation file found for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:285 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:392 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:396 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:417 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:421 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:432 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:463 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:508 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:516 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:524 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:525 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:549 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:750 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:756 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:194 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1033 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1148 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1155 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1159 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1160 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1203 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1235 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1254 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1317 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1410 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1411 msgid "Enter the information for " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:133 msgid "bad date sequence" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:56 msgid "Please save the old course changes before continuing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:65 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:67 msgid "Please allow this other user to commit their changes then reload this record before continuing." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:69 msgid "If you are seeing this message and are sure no other user is using this record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:80 msgid "unable to plan or perform treatment if the patient does not have an active course" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:142 msgid "Successfully started new course of treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:143 msgid "Using Feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:180 msgid "Appointment Preferences Applied" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:248 msgid "A course was closed earlier today." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:250 msgid "A course was closed yesterday." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:252 msgid "A course was closed less than a week ago." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:257 msgid "Would you like to resume this course?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:271 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:292 msgid "no zombied course found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:295 msgid "a situation COULD arise where a new course was started but the client lost connectivity crashed (without cleaning up the temporary row in the currtrtmt2 table)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:299 msgid "Do you wish to recover this row now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:139 msgid "polling database..." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:147 msgid "Bad Query" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:150 msgid "Unknown Error" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:173 msgid "Usercode" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 msgid "brief description" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "Gross Fee" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:83 msgid "Please choose a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:88 msgid "Monies will be allocated to Other Payments, and no receipt offered" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:110 msgid "Overpayment of treatment fees, is this correct?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:250 msgid "Reload feescales now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:273 msgid "Add to tx plan" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:276 msgid "not yet available" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:281 msgid "Add to tx plan of patient" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:320 msgid "Items containing" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:326 msgid "phrase not found in feetable" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "itemcodes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:330 msgid "usercodes or descriptions" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:344 msgid "IN CURRENT USE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:357 msgid "fee table error" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:391 msgid "Move this patient to Bad Debt Status?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:400 msgid "changed patient's status to BAD DEBT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:411 msgid "Loading Accounts Table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:156 msgid "Name" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:153 msgid "Dent" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:422 msgid "Last Tx" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:422 msgid "T/C" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:424 msgid "Fees" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:424 msgid "Last Bill" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:424 msgid "Number" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:450 msgid "Under Treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:107 msgid "Shortcut tester" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 msgid "This feescale handles" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:170 msgid "as a complex code for the following attributes." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:172 msgid "was not found in the patient's default feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "It is matched in another feescale -" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "Shall we add this item from this feescale?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:236 msgid "treatment" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "has not been succesfully priced" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "Please edit the estimate manually" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:286 msgid "Were these xrays taken today?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:319 msgid "Some of the xrays you completed were already planned." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:159 msgid "Complete" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:411 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Cancel" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:449 msgid "Reverse and Delete" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:456 msgid "Reverse" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:541 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:354 msgid "Choose" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:542 msgid "OK to add" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:542 msgid "to patient attribute" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:543 msgid "Recommended" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 msgid "to overide this behaviour" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 msgid "Use Feescale Method" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "Cancel to abandon this addition entirely" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "Help" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:559 msgid "Confirm you wish to use feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:561 msgid "for this item" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "The patient's default table is" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:596 msgid "You appear to be adding a relatively straightforward code to the patient's treatment plan using their default feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "It is normally advisable to add this code conventionally." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:600 msgid "Would you like to do this now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:627 msgid "were added conventionally" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:635 msgid "Exam items can never be added this way" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:639 msgid "This item can not be added to the treatment plan using the feescale method, sorry" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:683 msgid "added to estimate" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:683 msgid "from feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:921 msgid "Couldn't find" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "in the patient's estimate" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:924 msgid "This Shouldn't Happen!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:990 msgid "couldn't pass on delete message for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1056 msgid "Estimate recalculated" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "This item" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1213 msgid "was not found in the patient's estimate" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:43 msgid "Feescale Choice Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:56 msgid "No Match Found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:64 msgid "Compare Items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:92 msgid "Toolbar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:229 msgid "Quit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:88 msgid "Compare" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:90 msgid "with similar ids in other feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:119 msgid "Feescale Editor" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:96 msgid "Preferences Toolbar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:147 msgid "Diffs Toolbar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:102 msgid "&Edit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:155 msgid "&Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 msgid "Diffs" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:168 msgid "Pull" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:170 msgid "generate local files containing the database feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Commit" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:115 msgid "Commit changes to database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:177 msgid "New Feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Create a Feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:181 msgid "Save File" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Save Current File" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File As" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:187 msgid "Save Current File to a new location" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:190 msgid "Save All Files" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save All Local Files" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "refresh local files" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:201 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:121 msgid "Search current file for first forward match of entered text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Find Again" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:125 msgid "Search current file again for text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:207 msgid "Increase/decrease fees" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 msgid "Apply a percentage" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 msgid "Round fees up/down" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Round fees up or down to a specified accuracy" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Relate charges to fees by percentage" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:218 msgid "Zero Patient Contributions" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Show Database Diff" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:227 msgid "Show the diff between the current file and the corresponding file stored in the database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Compare 2 Feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "Show the diff between the current file and a selected other" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:274 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:141 msgid "XML tidy" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:145 msgid "Check Well Formed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:281 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:148 msgid "Check Validity" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:185 msgid "advisory" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:360 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:205 msgid "WARNING - you have unsaved changes!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:206 msgid "Are you sure you want to quit?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:390 msgid "has been deleted!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:391 msgid "Save now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:399 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:742 msgid "File Saved" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:406 msgid "has been modified!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:407 msgid "Do you want to reload now and lose current changes?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "Do you want to reload now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:453 msgid "unable to parse file" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:487 msgid "You appear to have no feescales installed in your database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:506 msgid "Local Feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:507 msgid "differs from the database version" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:514 msgid "Show Diff" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:528 msgid "Keep Local File Unchanged" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:527 msgid "Overwrite Local File" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:570 msgid "feescale is well formed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:574 msgid "feescale is not well formed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:581 msgid "feescale is valid" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:333 msgid "Find Text" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:334 msgid "Please enter the text you wish to search for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:638 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:342 msgid "not found" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 msgid "Zero all patient charges in the current feescale?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 msgid "Save all files?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:700 msgid "Files saved" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:723 msgid "save as" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "xml_files" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:734 msgid "Copy saved to" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:736 msgid "Reload files to edit the new feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File not saved" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:753 msgid "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:755 msgid "Refresh anyway?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:766 msgid "Please save local files before pushing to database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:771 msgid "update all existing feescales with data from the local files?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:787 msgid "Insert new Feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:798 msgid "your local files will now be moved to comply with the database indexes they have been given" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:844 msgid "you have no other files available for comparison" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:848 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:852 msgid "Please make a choice" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:56 msgid "apply to gross fees" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:58 msgid "apply to charges" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:169 msgid "Please enter a percentage" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:98 msgid "gross fees have been increased by" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:100 msgid "charges have been increased by" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:111 msgid "Please enter the precision you require" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:115 msgid "round down" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round up" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:118 msgid "round up/down to nearest value" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:152 msgid "rounded up to the nearest" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:154 msgid "rounded down to the nearest" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:156 msgid "rounded to the nearest" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:159 msgid "gross fees have been" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:161 msgid "charges have been" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:176 msgid "Leave Zero Charges as Zero" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:187 msgid "charges set at" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:187 msgid "of the fees" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:97 msgid "feescale" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:288 msgid "Unknown TableName" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:298 msgid "Unknown Description" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:51 msgid "New Feescale Dialog" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:54 msgid "Click Apply to create a new local feescale file which can be modified and then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:58 msgid "Who is Browsing the Forum?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:69 msgid "Or choose another user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:140 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:141 msgid "Archive Post(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:302 msgid "Toggle Importance" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:144 msgid "Mark Selected Post(s) as Read" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:145 msgid "Set Parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:146 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:147 msgid "Include Archived Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:283 msgid "has unread posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:289 msgid "No User Set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:295 msgid "No message Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:315 msgid "Sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:316 msgid "Anonymous browsing of the forum is not supported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:320 msgid "Browing Forum as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:391 msgid "Post Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:398 msgid "Remove importance" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:401 msgid "Mark as important" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:410 msgid "Parent topic is newer, operation not allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:445 msgid " Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:445 msgid "Archive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:456 msgid "Archived selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:549 msgid "EVERYBODY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:499 msgid "Please set a topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:524 msgid "Mark Selected Posts as read by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:570 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_widget.py:575 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:240 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:266 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:270 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:322 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:333 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:369 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:373 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:377 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:390 msgid "Sorry, you cannot run this version of the openMolar client because your database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:392 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:394 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:396 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:401 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:403 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:405 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:407 msgid "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:409 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:410 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:414 msgid "Proceed without upgrade?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:596 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:603 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:693 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:694 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:732 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:961 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:991 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:974 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:989 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1052 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1066 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1136 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1067 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1088 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1097 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1099 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1101 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1119 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1123 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1816 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1137 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1151 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1162 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1165 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1221 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1235 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1296 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1801 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1322 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1358 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1402 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1412 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1408 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1490 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1492 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1522 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1557 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1559 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1652 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1661 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1663 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1667 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1688 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1690 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1694 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1698 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1699 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1700 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1711 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1711 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1711 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1711 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1712 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1712 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1712 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1784 msgid "Patient File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1805 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1924 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1961 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1963 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2145 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2162 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2163 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2357 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2706 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2724 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3222 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3230 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3231 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3248 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3254 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3255 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3256 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3299 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3302 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3305 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3309 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3333 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3347 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3569 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3574 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3583 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3624 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3630 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3660 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:41 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:61 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:71 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:139 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:146 msgid "insufficient data to create a new record.please fill in all highlighted fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:186 msgid "New Patient not saved." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:62 msgid "Shade" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:122 msgid "Phrase Book" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:76 msgid "Phrasebook Editor" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "New Phrasebook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "Create a new clinician phrasebook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:114 msgid "Commit to Database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:237 msgid "Global Phrasebook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:259 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:286 msgid "Phrasebook is well formed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:290 msgid "Phrasebook is not well formed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:296 msgid "Phrasebook is valid" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:350 msgid "Everyone has a phrasebook already!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "A phrasebook for which clinician?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:364 msgid "commit all local files to database?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:374 msgid "Phrasebook" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:375 msgid "is not valid" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:381 msgid "Books" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:381 msgid "Updated" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:117 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:121 msgid "We are concerned that despite previous correspondence," msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:126 msgid "your account still stands as follows: " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:130 msgid "Please note that your account stands as follows:- " msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "Amount : %s" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:135 msgid "This amount is now due in full. *" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:141 msgid "A previous account was sent out to you on" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:145 msgid "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:150 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:155 msgid "On this deadline, we will pass this debt to" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:159 msgid "for collection." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:162 msgid "Yours Sincerely," msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:41 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:44 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:49 msgid "We are writing to inform you that your dental examinations are now due." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:51 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:54 msgid "Yours sincerely," msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:56 msgid "* P.S If you already have a future appointment with us - please accept our apologies and ignore this letter." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:59 msgid "We are currently accepting new patients to the practice.We would be delighted if you would recommend us to your friends and family." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:322 msgid "no data loaded" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:353 msgid "options set" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:372 msgid "Collapse All" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:115 msgid "Daylist for" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Len" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "Treat" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:128 msgid "memo" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:235 msgid "NHS items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:236 msgid "Private items" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:262 msgid "Please note, this estimate may be subject to change if clinical circumstances dictate." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:129 msgid "NO" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:238 msgid "Work tel" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:238 msgid "Alternate Email" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:254 msgid "Please Circle" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:256 msgid "If 'YES' - Give Details" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:259 msgid "ARE YOU CURRENTLY?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 msgid "Taking any prescribed medicines?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:290 msgid "Carrying a Medical Warning Card?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:307 msgid "Pregnant or Breast Feeding?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:315 msgid "DO YOU SUFFER FROM?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:322 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:338 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:357 msgid "problems, or a stroke?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:372 msgid "Diabetes?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:387 msgid "Arthritis?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "Bruising or persistant bleeding after" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:405 msgid "surgery or tooth extraction?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:420 msgid "Any Infectious Diseases" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:421 msgid "(including HIV and Hepatitis)?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:438 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:443 msgid "Bacterial Endocarditis?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:458 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:474 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:490 msgid "A joint replacement or other implant?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:505 msgid "Heart Surgery?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 msgid "Brain Surgery?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 msgid "Treatment that required you to be" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:537 msgid "in Hospital?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:574 msgid "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:586 msgid "Patient's Signature" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:76 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:85 msgid "Error saving PDF copy" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:129 msgid "letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:148 msgid "Nothing to print - have you loaded the table?" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:154 msgid "SerialNo" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "Cset" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:158 msgid "Last tx" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:221 msgid "Estimate for your current course of treatment." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:417 msgid "All Books" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "We look forward to seeing you in the near future." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "* If you already have a future appointment with us - please accept our apologies and ignore this letter." msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:89 msgid "DUPLICATE RECEIPT" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:121 msgid "relating to:-" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:157 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:254 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:318 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:323 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:324 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:362 msgid "hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:364 msgid "hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:399 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:488 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:479 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:519 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:522 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:526 msgid "Schedule these appointments (custom settings)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:532 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:537 msgid "Schedule this appointment (custom settings)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:544 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:548 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:554 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:73 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:74 msgid "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:78 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:79 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:82 msgid "Sorry, you cannot run this version of the openmolar client without updating your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Sorry, we seem unable to update your schema at this point, Perhaps you have grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:89 msgid "If this is not the case, something odd has happened, please let the developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:105 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:116 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:133 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:140 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:176 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:178 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:184 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:196 msgid "Conversion to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:201 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:207 msgid "Unexpected Error updating the schema please file a bug at http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:221 msgid "Openmolar can not run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:224 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:227 msgid "continuing to openmolar" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:61 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:319 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_3to3_4.py:82 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_4to3_5.py:97 msgid "creating new tables" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_3to3_4.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_4to3_5.py:112 msgid "Successfully moved db to" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:246 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:299 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_3to3_4.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_4to3_5.py:110 msgid "updating stored schema version" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:299 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:294 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:266 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_3to3_4.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_4to3_5.py:105 msgid "updating settings" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:324 msgid "copying data across from old feetable" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:225 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:106 msgid "transfering data" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:297 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:130 msgid "inserting values" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:294 msgid "executing statements" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:122 msgid "converting note" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:128 msgid "creating new tables and indexes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:88 msgid "creating new appt_prefs table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:90 msgid "copying data" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:92 msgid "statements executed" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:232 msgid "creating currtrtmt2 table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:234 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_3to3_4.py:84 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_4to3_5.py:99 msgid "transferring data" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 msgid "deleting void courses" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:225 msgid "creating tables" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:227 msgid "populating est_link table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:229 msgid "populating feescales" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:64 msgid "creating est_link2 table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:116 msgid "populating est_link2 table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_4to3_5.py:102 msgid "executing cleanup statements" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:251 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:257 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:275 msgid "pulling information from patient table" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:260 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:266 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:272 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:207 msgid "inserting information into new tables" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:110 msgid "XRay Request Letter" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:201 msgid "inserting medications" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:205 msgid "pulling information from mednotes" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:221 msgid "Unkown medications" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:228 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:239 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:241 msgid "Failed to Load" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:555 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:692 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:76 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:77 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "IMPLANT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:350 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:632 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:632 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:927 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:928 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:930 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:931 msgid "Have a great day!" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:45 msgid "Please complete the following form" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "host" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:62 msgid "port" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:63 msgid "database" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:64 msgid "user" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:65 msgid "password" msgstr "" #: #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:66 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:110 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:133 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:134 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:181 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/oc.po0000644000175000017500000117504012700510625021715 0ustar neilneil00000000000000# Occitan (post 1500) translation for openmolar # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-04-23 06:16+0000\n" "Last-Translator: Cédric VALMARY (Tot en òc) \n" "Language-Team: Occitan (post 1500) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Conselh" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Error" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "urgéncia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Error - practician pas reconegut - o planhèm" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "N°" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Descripcion" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Dentista" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Carga" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Subjècte" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "A" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "De" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Data" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Messatge" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Còde" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "Letra N°" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Numèro de seria" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Títol" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Nom d'Ostal" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Pichon nom" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Atge" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Vila" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Adreça" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Còde Postal" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Comtat" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telefòn" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Acabat" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Examèn" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "perio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "ràdio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "autre" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "personalizat" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Modificar" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Bremba-te" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Tractament" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Començament" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Acabar" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "PLAN" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "EFECTUAT" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Pas cap de tractament" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Partit(da) manjar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Absent del burèu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Data e ora" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Practician" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Durada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Formulari" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "Casa de marcar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Planificacion del Tractament" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Oras" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minutas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "Etiqueta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Apondre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Clinicians - DATA" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Clinician" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Acabar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Opcions" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Començament del Blòt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Fin del Blòt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "Tèxte d'aplicar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Blocat//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Urgéncia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Sonada telefonica" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minutas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Inserir un blòt" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Ora de començament" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "Lo pacient causit es
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Modificar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minutas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Inserir un pacient conegut" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Complet, Jorn, mes e Annada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Mes e Annada solament" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "Data d'utilizar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "Data d'uèi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "Aquesta data" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Selector de lenga" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Bóstia de dialòg" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Descripcion del tractament" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Data de començament" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Data de fin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Assistent d'Examèn" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Tipe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Estandard" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Avaloracion Completa" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Data de l'examèn" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 min" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Subjècte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Comentari" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "Détartrage et Polissage" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Escap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Recercar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Detalhs" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Data de naissença" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Adreça3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "Mandar un sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "sms" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "email2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "email1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "Mandar un Email" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "E-mail" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Trabalh" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Adreça2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Sèxe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "M" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Còde postal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "mandar un fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "fax" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Adreça1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Detalhs del Pacient" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Tipe de Sesilha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Estat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Privat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "NHS" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "Enregistrat endacòm mai" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Contracte" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Estampar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "Generat per OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Novèl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Nòtas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Comptes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Desvolopar tot" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Quitar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Question" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "amb" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Dimècres" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Confirmar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "confirmar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Igienista" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "Clinicians" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Aur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lava" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Resina" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "Es corrècte ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Adreça Linha 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Adreça Linha 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Senhal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Los senhals correspondon pas !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Òste" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Creacion de la banca de donadas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Òsca !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Data de complecion" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Impossible d'aviar OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Al Reveire !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Error pendent l'autentificacion" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Anullar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Causir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "introbable" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Contunhar sens efectuar la mesa a jorn ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "Corrièr electronic" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "lo cargament a fracassat" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Diluns" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Dijòus" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Dimars" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Divendres" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Dissabte" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Dimenge" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Pas cap" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "utilizaire" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "senhal" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/pl.po0000644000175000017500000117207112700510625021730 0ustar neilneil00000000000000# Polish translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2012-10-10 20:35+0000\n" "Last-Translator: Radek \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Doradczy" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Błąd" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "błąd - nierozpoznana osoba" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "dentysta" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "list nr" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Nazwisko" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Imię" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Wiek" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Miasto" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Adres" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "kod" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "data przypomnienia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "Powiat" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "badanie" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "RTG" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "inny" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "własny" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "Poprzedni plan leczenia" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Zakończ" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "PLAN" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "Zakończone" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "bez leczenia" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Forma" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Godziny" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minuty" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "tworzenie bazy danych" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "błąd w tworzeniu Bazy Danych" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Nie można uruchomić Openmolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Do zobaczenia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "kontynuuj bez upgrade" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "nie może wgrać" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/pt.po0000644000175000017500000117470012700510625021741 0ustar neilneil00000000000000# Portuguese translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-04-23 06:17+0000\n" "Last-Translator: Neil Wallace \n" "Language-Team: Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:17+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Aviso" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Erro" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "Urgência" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Descrição" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Taxa" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Assunto" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "Para" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "De" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Data" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Mensagem" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "Número de série" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Data da consulta de revisão" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Análise" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "Periodontia" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Nota" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Início" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Almoço" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Fora do Escritório" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Duração" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Formulário" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "Caixa de Selecção" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Plano de Tratamento" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "Adicione o seguinte Tratamento ao Plano de Tratamento Actual." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Seleccione a Duração da Consulta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Horas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Assistente de Consultas" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" "Adicionar uma combinação de consultas propostas para a ficha do paciente." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "TextLabel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Adicionar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "Clínico" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Fim" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Opções" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "Deseja bloquear (ou bloquear parcialmente) este período?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Início de bloco" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Fim de Block" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Bloqueado//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Emergência" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "Tempo de Consulta Reservado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Inserir Bloco" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "Inserir um Paciente neste período?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Tempo de Início" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "O Paciente escolhido é
" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Modificar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "A razão da consulta é" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minutos" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Inserir um Paciente conhecido." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "Diálogo" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Item Personalizado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Número de Itens" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Assistente de Impressão de Listagem do Dia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Data de início" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Outro" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Sair" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "Confirme" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "Não tem mais tratamentos propostos para este paciente, contudo este está " "destinado a estar sem tratamento suficiente." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Dourado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lava" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Resina" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Senha" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "As senhas são diferentes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Servidor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "A criar a base de dados" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Sucesso!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Erro ao Criar a Base de Dados" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Data de Conclusão" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Incapaz de executar o OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Erro de Autenticação" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" "Não foi possível bloquear - Será que agenda foi alterada noutro local?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" "Não foi possível criar consulta - Será que agenda foi alterada noutro local?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "Valor Bruto" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "Cancelar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Escolher" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "não encontrado" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Continuar sem actualizar?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "Quantia: %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "Não existem consultas seleccionadas." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "Por favor tentar e avisar pelo menos 24 horas antes" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "Se necessitar de alterar uma marcação." #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "FAMILIA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "ENCHER" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Segunda-feira" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Quinta-feira" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Terça-feira" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Sexta-feira" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Sábado" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Domingo" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "Janeiro" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "Fevereiro" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "Março" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "Abril" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Maio" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "Junho" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "Julho" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "Agosto" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "Setembro" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "Outubro" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "Novembro" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "Dezembro" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "utilizador" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "senha" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/ro.po0000644000175000017500000117135212700510625021736 0ustar neilneil00000000000000# Romanian translation for openmolar # Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2011. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2011-02-17 11:34+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Romanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:18+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/sk.po0000644000175000017500000117201512700510625021730 0ustar neilneil00000000000000# Slovak translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2014-04-23 06:18+0000\n" "Last-Translator: EllordsK \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:18+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Pacient" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "Do" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Od" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Dátum" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Správa" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Poznámka" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "ZaÄiatok" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Obed" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Mimo kancelárie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Dľžka" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "PlánovaÅ¥ oÅ¡etrenie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Hodín" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Minút" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "PridaÅ¥" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Lekáry - DÃTUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Koniec" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Možnosti" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Blokovaný//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "PohotovosÅ¥" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "minút" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Zmeniť" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " minút" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Iný" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Koniec" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Úspešné!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Chyba pri vytváraní Databázy" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "Nebolo možné spusiť OpenMolar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Dovidenia" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Chybné prihlásenie" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/locale/tr.po0000644000175000017500000122477312700510625021751 0ustar neilneil00000000000000# Turkish translation for openmolar # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the openmolar package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: openmolar\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2016-02-29 16:51+0000\n" "PO-Revision-Date: 2015-02-04 20:40+0000\n" "Last-Translator: Volkan Gezer \n" "Language-Team: Turkish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2016-03-01 05:18+0000\n" "X-Generator: Launchpad (build 17925)\n" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1483 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:199 msgid "Advisory" msgstr "Öneri" #: /home/neil/openmolar/openmolar1/src/openmolar/backports/advisor.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:354 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:202 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:207 msgid "Error" msgstr "Hata" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:348 msgid "WITH OTHER CLINICIAN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/appointments.py:1150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:289 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:290 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:291 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:292 msgid "emergency" msgstr "Acil" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:78 msgid "Past Courses of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:100 msgid "found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:85 msgid "Ignoring course number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:87 msgid "as this is active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:115 msgid "no estimate found for courseno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:123 msgid "Warning - No course acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:129 msgid "" "Warning - No course completion date, using today to gather daybook items." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:202 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:72 msgid "Edit Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:169 msgid "Course is Ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:145 msgid "Course closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:175 msgid "days after last treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:179 msgid "Course dates not found in daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:193 msgid "Examine these Issues." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:201 msgid "Merge with previous course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:224 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:164 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:196 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:238 msgid "WARNING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:225 msgid "ORPHANED ESTIMATE DATA" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:234 msgid "Errors Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/courseHistory.py:242 msgid "This shouldn't happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:137 msgid "Error - unrecognised practioner- sorry" msgstr "Hata - bilinmeyen doktor - özür dileriz" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "Patients of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "between" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:146 msgid "treated by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:147 msgid "and" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybookHistory.py:90 msgid "Ests" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:324 msgid "Daybook Items during this Period" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:353 msgid "Filter your results" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:354 msgid "" "If this text box is left blank, then results from the daybook are returned " "dependent on the dates and clinicians entered." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:356 msgid "You can filter using the following fields." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/daybook.py:366 msgid "Examples" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/db_settings.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:85 msgid "Example Dental Practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/distinct_statuses.py:45 msgid "DECEASED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:107 msgid "No estimate history found for course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:113 msgid "Current Estimate Version History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2543 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2552 msgid "Estimate" msgstr "tahmini değer" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:105 msgid "Author" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 msgid "Itemcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:67 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:124 msgid "No." msgstr "Nu:" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1054 msgid "Description" msgstr "Tanım" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:31 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2601 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:70 msgid "Dentist" msgstr "Diş Doktoru" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:92 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Fee" msgstr "Ücret" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/est_logger.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:128 msgid "Charge" msgstr "Ücretlendir" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:46 msgid "Edit this Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/estimatesHistory.py:98 msgid "Past Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 msgid "Subject" msgstr "Konu" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:102 msgid "To" msgstr "E" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:29 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:105 msgid "From" msgstr "Den" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:79 msgid "Date" msgstr "Tarih" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/forum.py:30 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:146 msgid "Message" msgstr "Mesaj" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:123 msgid "Medical History Changelog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:139 msgid "MEDICATIONS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:183 msgid "Warning Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:179 msgid "Medication Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:184 msgid "Allergies" msgstr "Alerjiler" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:185 msgid "Respiratory" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:186 msgid "Heart" msgstr "Kalp" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:187 msgid "Diabetes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:188 msgid "Arthritis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:149 msgid "Bleeding" msgstr "Kanama" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:150 msgid "Infectious disease" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:151 msgid "Endorcarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:196 msgid "Liver" msgstr "Karaciğer" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:197 msgid "Anaesthetic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:154 msgid "Join Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:155 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:199 msgid "Heart Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:156 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:200 msgid "Brain Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:157 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:201 msgid "Hospitalised" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:202 msgid "CJD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:159 msgid "OTHER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "ALERT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:160 msgid "TRUE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:169 msgid "Original values, no date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/medhist.py:176 msgid "End of History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:125 msgid "No memo history found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:131 msgid "Memo History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:142 msgid "Location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:144 msgid "Expires" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:145 msgid "Deleted?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:300 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:348 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:381 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:430 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:451 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:487 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:503 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:519 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:535 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:568 msgid "Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/memos.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:265 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:309 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:349 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:367 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:382 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:415 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:452 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:470 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:552 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:569 msgid "No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:830 msgid "Student Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/patient_class.py:834 msgid "Age Exemption removed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:32 msgid "Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:33 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:68 msgid "Code" msgstr "Kod" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:98 msgid "Cash" msgstr "Nakit" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:99 msgid "Cheque" msgstr "Çek" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:100 msgid "Card" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:55 msgid "Unknown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/paymentHistory.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:80 msgid "Amount" msgstr "Tutar" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Letter No" msgstr "sayı no" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 msgid "Serial No" msgstr "seri no" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2426 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:130 msgid "Title" msgstr "Ünvan" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2427 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:132 msgid "Surname" msgstr "Soyad" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:32 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2440 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:174 msgid "First Name" msgstr "Ad" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:33 msgid "Age" msgstr "Yaş" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2419 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:49 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:136 msgid "Town" msgstr "Şehir" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:34 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:111 msgid "Address" msgstr "Adres" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Family No" msgstr "Aile Sıra No" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "PostCode" msgstr "Posta Kodu" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 msgid "Recall Date" msgstr "Kontrol tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/recall.py:35 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2421 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:50 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "County" msgstr "İlçe" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2508 msgid "Reception" msgstr "Resepsiyon" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:71 msgid "Surgery" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:165 msgid "Record number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:167 msgid "is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:169 msgid "in surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:171 msgid "Lock aquired at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/records_in_use.py:173 msgid "Please reload this record before making any changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:187 msgid "Telephone" msgstr "Telefon" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "home" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "mobile " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:165 msgid "work " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:176 msgid "D.O.B." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/referral.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:47 msgid "Yours Sincerely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/standard_letter.py:87 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:42 msgid "Dear" msgstr "Saygıdeğer" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:420 msgid "still ongoing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:424 msgid "day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:425 msgid "days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:436 msgid "Edit Course Dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:437 msgid "Edit Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:444 msgid "days earlier" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:458 msgid "Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:459 msgid "PATIENT FAILED TO RETURN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:461 msgid "Opened" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:462 msgid "Closed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:112 msgid "Duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 msgid "or incomplete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:57 msgid "Planned" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:477 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2533 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1212 msgid "Completed" msgstr "Tamamlandı" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:482 msgid "dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:485 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2513 msgid "Exam" msgstr "Sınav" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:489 msgid "perio" msgstr "Perio" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:490 msgid "xray" msgstr "Rontgen" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:491 msgid "anaes" msgstr "anastezi" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:492 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:154 msgid "other" msgstr "diğer" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:493 msgid "custom" msgstr "özel" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:494 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:60 msgid "New Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:495 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:61 msgid "New Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:62 msgid "Other Denture (upper)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/dbtools/treatment_course.py:497 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:63 msgid "Other Denture (lower)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:75 msgid "command line options are as follows" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:76 msgid "quiet (minimal logging to console)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:77 msgid "verbose logging to console (for debugging)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:78 msgid "show this text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:79 msgid "offer the firstrun config and demodatabase generation" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:80 msgid "proceed even if client and database versions clash (NOT ADVISABLE!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:82 msgid "show the versioning and exit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/main.py:83 msgid "Ignore dev login (advanced)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:141 msgid "Course is still active" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:147 msgid "days after last day treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:149 msgid "Course doesn't tally with daybook entries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/course_checker.py:152 msgid "No warnings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:164 msgid "no treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:169 msgid "Partially" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/estimates.py:199 msgid "Estimates for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:109 msgid "MED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:177 msgid "Course Activity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2457 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2460 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2464 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2469 msgid "Edit" msgstr "Düzenle" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:604 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Today" msgstr "Bugün" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "Add a note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/formatted_notes.py:272 msgid "No notes found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:47 msgid "TODAY!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:54 msgid "years" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "month" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:57 msgid "months" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:77 msgid "!UNKNOWN POSTCODE!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:97 msgid "exemption" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:99 msgid "NOT EXEMPT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:110 msgid "UNKNOWN COURSETYPE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:118 msgid "Please Set a Dentist for this patient!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:121 msgid "UNDER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2420 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:964 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Memo" msgstr "Bilgi Notu" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:127 msgid "Med Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:128 msgid "Med Notes" msgstr "Tıbbi notlar" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2557 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:91 msgid "Treatment" msgstr "Tedavi" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:130 msgid "IO xrays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:131 msgid "Panoral" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:132 msgid "Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2573 msgid "History" msgstr "Geçmiş" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:171 msgid "Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:177 msgid "(Exam Booked)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:180 #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:117 msgid "Exam Due" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:182 msgid "DO NOT RECALL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:186 msgid "Account" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:190 msgid "in credit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/patientDetails.py:193 msgid "RECORD HAS UNSAVED CHANGES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1620 msgid "Previous Course" msgstr "Bir önceki seans" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:121 msgid "Start" msgstr "Başlat" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:141 msgid "End" msgstr "Sonlandır" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:144 msgid "ONGOING" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:147 msgid "Patient Failed to Return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:154 msgid "PLAN" msgstr "PLAN" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:160 msgid "COMPLETED" msgstr "TAMAMLANDI" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/plan.py:165 msgid "No treatment" msgstr "Tedavi yok" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:92 msgid "Contract Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:98 msgid "this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:100 msgid "recently" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:102 msgid "last year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:104 msgid "years ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:107 msgid "Joined the practice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:112 msgid "Last Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:118 msgid "YES!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:122 msgid "Has seen hygienist on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:123 msgid "Occasions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:129 msgid "Telephone (Home)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:130 msgid "Telephone (Work)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Mobile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:135 msgid "Please get a phone number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/ptModules/reception_summary.py:149 msgid "COMPLETED COURSE TODAY" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:43 msgid "Available Clinicians" msgstr "Mevcut klinisyenler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:44 msgid "Available Dentists" msgstr "Mevcut Diş doktorları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:45 msgid "Available Hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:102 msgid "All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:287 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py:648 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Lunch" msgstr "Öğle yemeği" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:288 msgid "staff meeting" msgstr "personel toplantısı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/list_models.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:169 msgid "Out of Office" msgstr "Ofis dışında" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "Unscheduled" msgstr "planlanmamış" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:38 msgid "View Past Appointments" msgstr "geçmiş randevuları göster" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Date & Time" msgstr "Tarih & Zaman" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 msgid "Practitioner" msgstr "Pratisyen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:138 msgid "Length" msgstr "Süre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:146 msgid "you need to be in the static chart to change tooth state" msgstr "Diş durumunu değiştirebilmek için statik tabloda olmalısınız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/charts/charts_gui.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2509 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:116 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:825 msgid "BPE" msgstr "BPE" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:57 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:465 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:305 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:227 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:51 msgid "Form" msgstr "Biçim" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_activeDentStartFinish.py:58 msgid "CheckBox" msgstr "OnayKutusu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:71 msgid "Plan Treatment" msgstr "Tedavi Planla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_addTreatment.py:73 msgid "Add the following Treatment Items to the Current Treatment Plan" msgstr "Şu tedavi ögelerini mevcut tedavi planına ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:78 msgid "Select Appointment Length" msgstr "Randevu Uzunluğunu seçiniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:79 msgid "Hours" msgstr "Saat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_appointment_length.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:102 msgid "Minutes" msgstr "Dakika" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:66 msgid "Appointment Wizard" msgstr "Randevu Sihirbazı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizard.py:68 msgid "Add a combination of proposed appointments to the patients diary." msgstr "" "Hasta günlüğüne önerilen randevu tarihlerinin bir kombinasyonunu ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2619 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2629 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_treatmentItemWidget.py:52 msgid "TextLabel" msgstr "MetinEtiketi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_apptWizardItem.py:57 msgid "Add" msgstr "Ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:120 msgid "Clinicians - DATE" msgstr "Klinisyenler - TARİH" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:121 msgid "Clinician" msgstr "klinisyen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:123 msgid "Finish" msgstr "Bitir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:126 msgid "" "If you copy this day's setup to the clipboard, you can create a \"clone\" of " "this day when no data is set. This is useful when extending books." msgstr "" "Eğer bu günün ayarlarını panoya kopyalarsanız, herhangi bir veri " "ayarlanmadığı halde bugünün bir \"klonunu\" oluşturabilirsiniz. Bu durum " "randevu defterlerinin uzatılması bakımından yararlı olabilir." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:127 msgid "Copy To Clipboard" msgstr "Panoya Kopyala" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:128 msgid "Paste the saved values." msgstr "Kaydedilmiş değerleri yapıştır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_aslotEdit.py:129 msgid "Paste" msgstr "Yapıştır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2657 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:146 msgid "Options" msgstr "Ayarlar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:162 msgid "Would you like to Block (or partially Block) this Slot?" msgstr "Bu slotu bloklamak (ya da kısmen bloklamak) ister misiniz?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:163 msgid "Block Start" msgstr "Blok başlangıcı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:164 msgid "Bock End" msgstr "Blok bitimi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:165 msgid "Text to apply" msgstr "uygulanacak metin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:166 msgid "//Blocked//" msgstr "//Bloklandı//" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:167 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Emergency" msgstr "Acil Durum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:168 msgid "Reserved Clinical Time" msgstr "Ayırılmış klinik saat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:171 msgid "Catch up time" msgstr "Arayı kapatma zamanı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:172 msgid "Phone Call" msgstr "Telefon Görüşmesi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:702 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:176 msgid "minutes" msgstr "dakika" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:176 msgid "Insert a Block" msgstr "Bir blok girişi yap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:177 msgid "Insert A Patient into this slot?" msgstr "Bu slota bir hasta yerleştir?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:178 msgid "Start Time" msgstr "Başlama Zamanı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:180 msgid "Chosen Patient is
" msgstr "Seçili hasta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:181 msgid "Change" msgstr "Değiştir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:182 msgid "Reason for appointment is" msgstr "Randevunun sebebi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:183 msgid " minutes" msgstr " dakika" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_blockSlot.py:186 msgid "Insert a Known Patient" msgstr "Bilinen bir hasta yerleştir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:104 msgid "Bulk Mail Options" msgstr "Önemsiz Posta Ayarları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:105 msgid "Date Format for the letters" msgstr "mektuplar için tarih formatı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:106 msgid "Full, Day, month and Year" msgstr "Tam, Gün, ay ve Yıl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:107 msgid "Month and Year Only" msgstr "Sadece Ay ve Yıl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:108 msgid "Date to use" msgstr "Kullanılacak Tarih" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:109 msgid "Today's Date" msgstr "bugünün tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:111 msgid "The actual recall date for the patient" msgstr "Hastanın esasen çağırıldığı tarih" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_bulkmail_options.py:112 msgid "This Date" msgstr "Bu Tarih" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_clinicians.py:51 msgid "Choose Clinicians" msgstr "klinisyen seç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:89 msgid "Language Selector" msgstr "Dil Seçici" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:90 msgid "" "Choose from the following available languages.\n" "Please Note that some of these translations are not complete." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:93 msgid "" "Note - if your preferred language is not available (or incomplete), please " "visit https://launchpad.net/openmolar and add a translation of your own!" msgstr "" "Not - Tercih ettiğiniz dil mevcut değilsaq (ya da tamamlanmamışsa), lütfen " "https://launchpad.net/openmolar adresini ziyaret ediniz ve kendi çevirinizi " "ekleyiniz!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_language.py:95 msgid "" "Many thanks to all who have helped internationalise openMolar, and to the " "folks behind the GNU tools and launchpad rosetta team who make this possible." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:57 msgid "Choose A Tooth" msgstr "Diş seçin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_choose_tooth.py:59 msgid "Please Select the tooth to which this treatment is planned" msgstr "Bu tedavinin planlandığı dişi seçiniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:101 msgid "Dialog" msgstr "İletişim Kutusu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:102 msgid "Deciduous Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:103 msgid "Adult Teeth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:105 msgid "" "Enter a Restoration Code (eg. MOD) to see how a feescale interprets the " "shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:106 msgid "GO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_codeChecker.py:107 msgid "QUIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:90 msgid "Custom Item" msgstr "Özel öge" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:91 msgid "Number of Items" msgstr "Öge sayısı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_customTreatment.py:93 msgid "Treatment Description" msgstr "Tedavi Tanımı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:134 msgid "Daylist Printing Wizard" msgstr "Günlük liste yazdırma sihirbazı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:136 msgid "Specify Dates and Practitioners for a Daylist Print Run" msgstr "günlük liste yazdırma işlemi için tarih ve pratisyen belirtin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2585 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2595 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:91 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:109 msgid "Start Date" msgstr "Başlama Tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2586 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2598 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:110 msgid "End Date" msgstr "Bitiş Tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:139 msgid "All Practioners on One Page" msgstr "bütün pratisyenler tek bir sayfada" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:141 msgid "One Practitioner Per Page - Minimal" msgstr "Sayfa başına bir pratisyen - Minimal" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_daylist_print.py:143 msgid "One Practioner Per Page - Fill Page" msgstr "Sayfa başına bir pratisyen - Sayfayı doldur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:466 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:759 msgid "Go To Today" msgstr "Bugüne git" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:468 msgid "Day View" msgstr "Gün Görünümü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:469 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:765 msgid "View Current Week" msgstr "Mevcut haftayı göster" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:470 msgid "Week View" msgstr "Hafta Görünümü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:471 msgid "Month" msgstr "Ay" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:472 msgid "Print Month View" msgstr "Hafta Görünümünü yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:473 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:476 msgid "All Clinicians" msgstr "Bütün klinisyenler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:474 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:477 msgid "Select Clinicians" msgstr "Klinisyen seç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:475 msgid "Month View" msgstr "Ay Görünümü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:478 msgid "Year" msgstr "Yıl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:479 msgid "Year View" msgstr "Yıl görünümü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_diary_widget.py:481 msgid "Agenda" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:96 msgid "Exam Wizard" msgstr "Muayene Sihirbazı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:97 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:121 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1056 msgid "Type" msgstr "Tip" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:98 msgid "Standard" msgstr "Standart" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:99 msgid "Extensive" msgstr "Yaygın" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:100 msgid "Full Case Assessment" msgstr "Tam vaka değerlendirmesi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_exam_wizard.py:101 msgid "Exam Date" msgstr "Muayene Tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:86 msgid "Appointment Time" msgstr "Randevu zamanı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:84 msgid "Space Before Appointment" msgstr "Randevu öncesi boşluk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:89 msgid "0 mins" msgstr "0 dakika" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:87 msgid "00:00 - 00:00" msgstr "00:00 - 00:00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_finalise_appt_time.py:88 msgid "Space After Appointment" msgstr "Randevu sonrası boşluk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:100 msgid "Forum Input" msgstr "Forum girdisi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:101 msgid "Topic" msgstr "Başlık" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:103 msgid "Comment" msgstr "Yorum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_forumPost.py:104 msgid "(0 Characters)" msgstr "(0 Karakter)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:117 msgid "Hygienist Wizard" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:118 msgid "Planned Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:119 msgid "label" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:120 msgid "Ok - I'll be careful!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:122 msgid "Debridement" msgstr "Debridman" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:123 msgid "Scale and Polish" msgstr "Düzle ve Cilala" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:124 msgid "Extensive Scaling" msgstr "Yaygın olarak düzleme" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_hygenist_wizard.py:125 msgid "Treating Dentist/Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2397 msgid "Open Molar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2398 msgid "Exit the Current Patient Record." msgstr "Şu anki hasta kaydından çık." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2399 msgid "Esc" msgstr "Çık" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2400 msgid "Add a New Patient to the database." msgstr "Veritabanına yeni bir hasta ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2625 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2652 msgid "Click on this Button to search for in patient in your database." msgstr "veritabanında hasta aramak için bu tuşa tıklayınız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2402 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2653 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:126 msgid "Find" msgstr "Ara" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2403 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2654 msgid "Ctrl+F" msgstr "Ctrl+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2404 msgid "This cycles back through the history of records loaded today." msgstr "Bugün yüklenen kayıt geçmişini geriye devreder." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2405 msgid "Reload the patient from the database." msgstr "Hastayı veritabanından tekrar yükle." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2406 msgid "Ctrl+R" msgstr "Ctrl+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2407 msgid "This cycles forwards through the history of records loaded today." msgstr "Bugün yüklenen hasta kayıtlarını ileri devreder." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2408 msgid "" "Show patients who live at the same address, or who have a similar name." msgstr "Aynı muhitte yaşayan ya da benzer ismi olan hastaları göster." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2409 msgid "&Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2410 msgid "Ctrl+G" msgstr "Ctrl+G" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2411 msgid "A drop down box of all patients who have an appointment today." msgstr "Bugün randevusu olan tüm hastaların açılır menüsü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2412 msgid "Details" msgstr "Ayrıntılar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2413 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:183 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Date of Birth" msgstr "Doğum Tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address3" msgstr "Adres3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2415 msgid "send an sms" msgstr "kısa mesaj gönder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2416 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "sms" msgstr "kısa mesaj" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2417 msgid "email2" msgstr "eposta2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2418 msgid "Fax" msgstr "Belgegeçer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2422 msgid "email1" msgstr "eposta1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2423 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2430 msgid "send an email" msgstr "eposta yolla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2424 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2431 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "email" msgstr "eposta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2425 msgid "Occupation" msgstr "Meslek" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2428 msgid "Tel (mob)" msgstr "Tel (cep)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address2" msgstr "Adres2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2432 msgid "Sex" msgstr "Cinsiyet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2433 msgid "M" msgstr "E" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2434 msgid "F" msgstr "K" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2435 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "Postcode" msgstr "Posta kodu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2436 msgid "Tel (home)" msgstr "Tel (ev)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2437 msgid "send a fax" msgstr "Belgegeçer yolla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2438 msgid "fax" msgstr "Belgegeçer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2439 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "Address1" msgstr "Adres1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2441 msgid "Tel (work)" msgstr "Tel (iş)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2442 msgid "Abort New Patient Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2443 msgid "Higlighted Fields are Mandatory for New Patients" msgstr "Vurgulanan alanlar Yeni hasta girişi için zorunludur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2444 msgid "Save New Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2445 msgid "Family Groups" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2446 msgid "Raise a dialog to edit the patients family grouping" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2447 msgid "Edit family group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2448 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3343 msgid "Not a member of a known family" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2449 msgid "Use the Sname and Address details from the previous patient." msgstr "Bir önceki hastanın Soyadı ve Adres bilgilerini kullan." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2450 msgid "Apply Address of previous record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2451 msgid "Patient Details" msgstr "Hasta bilgileri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2452 msgid "Pt is registered with Dentist" msgstr "Hst Diş doktoruna kayıtlı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2453 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:88 msgid "Course Type" msgstr "Süreç tipi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:129 msgid "Status" msgstr "Durum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2455 msgid "Write Off Bad Debt" msgstr "Silinmiş Borç (kötü kredi)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2456 msgid "This label is for displaying Private contractual stuff" msgstr "Bu etiket özel sözleşmeli personeli göstermek içindir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2458 msgid "Private" msgstr "Özel" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2459 msgid "This label is for displaying HDP contractual stuff" msgstr "Bu etiket SGK sözleşmeli personeli göstermek içindir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2461 msgid "Highland Dental Plan" msgstr "Sosyal Güvenlik Kurumu Diş muayene planı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2462 msgid "This label is for displaying NHS contractual stuff" msgstr "Bu etiket SGK sözleşmeli personeli göstermek içindir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2463 msgid "View Claims History" msgstr "Hakediş geçmişini göster" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2465 msgid "Exemption" msgstr "Muafiyet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2466 msgid "Exemption Text" msgstr "Muafiyet metni" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2467 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2499 msgid "NHS" msgstr "SGK" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2468 msgid "No Details of Pt's Registered Dentist Found" msgstr "Hst'nın kayıtlı Diş doktoruna ait ayrıntı bulunamadı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2470 msgid "Registered Elsewhere" msgstr "Başka yerde kayıtlı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2471 msgid "Contract" msgstr "Sözleşme" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2472 msgid "Letters TO the patient" msgstr "Hastaya gönderilmiş Mektuplar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2473 msgid " Custom Letter to the patient" msgstr " Hastaya özel mektup gönder" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2474 msgid "Print a recall saying the patient is due now." msgstr "Hastanın bu ara olduğunu belirten bir çağrı yazdır." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2475 msgid "Recall for An Examination" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2476 msgid "Print a receipt - useful for duplicates." msgstr "Fatura yazdır - Kopya tipi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2477 msgid "Duplicate Receipt" msgstr "Faturanın kopyasını çıkar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2478 msgid "Print An Account Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2479 msgid "Referrals (Letters about the patient)" msgstr "Sevkler (hasta hakkında mektuplar)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2480 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2496 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2572 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2590 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2600 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:52 msgid "Print" msgstr "Yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2481 msgid "Patient \"Notes\"" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2482 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2490 msgid "" "Print a summary of the patient's notes (for them to take on). Includes No " "fee details." msgstr "" "Hasta notlarının özetini yazdır (bundan sonra yer almaları için). Ücret " "ayrıntları içermeyecektir." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2483 msgid "Print the patient's notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2484 msgid "Previous Correspondence" msgstr "Önceki uyuşum" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2485 msgid "Generated By OpenMolar" msgstr "OpenMolar tarafından oluşturulmuştur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2486 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:132 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:156 msgid "1" msgstr "1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2487 msgid "Imported into database" msgstr "Veritabanına aktarılmış" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2488 msgid "Import A Document" msgstr "Belge içe aktar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2565 msgid "Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2491 msgid "Print a medical history form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2492 msgid "Correspondence" msgstr "Uygunluk" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2493 msgid "Patient's Diary" msgstr "Hastanın Günlüğü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2494 msgid "Summary View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2495 msgid "MED Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2497 msgid "Completed by Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2498 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2521 msgid "Medical History Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2500 msgid "Print A GP17" msgstr "GP17 yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2501 msgid "Apply an Exemption" msgstr "İstisna uygula" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2502 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:344 msgid "Miscellaneous" msgstr "Muhtelif" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2503 msgid "Recall Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2504 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:323 msgid "Money" msgstr "Para" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2505 msgid "Print &Estimate" msgstr "Yazdır &Değerlendir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2506 msgid "Print &Account" msgstr "Yazdır &Hesap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2507 msgid "Take &Payment" msgstr "Alış &Ödeme" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2510 msgid "Update the Basic Perio Exam (CPITN) score" msgstr "Basit Perio Muayenesi skorunu (CPTIN) güncelle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2511 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:234 msgid "New" msgstr "Yeni" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2512 msgid "perform a clinical exam" msgstr "klinik muayene gerçekleştir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2514 msgid "add x-rays to the patient's current course." msgstr "hastanın devam eden sürecine radyografiler ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2515 msgid "X-ray" msgstr "Radyografi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2516 msgid "perform common perio treatments" msgstr "Genel perio tedavileri uygula" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2517 msgid "Hyg" msgstr "Hij" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2518 msgid "Close This Course" msgstr "Bu süreci kapat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2519 msgid "ChildSmile" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2520 msgid "check / update the patients medical history" msgstr "hastaların tıbbi geçmişini kontrol et / güncelle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2522 msgid "Clinical Summary" msgstr "Klinik özet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2523 msgid "Include" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2524 msgid "Printing Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2525 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2555 msgid "Payments" msgstr "Ödemeler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2526 msgid "Timestamps" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2527 msgid "Metadata" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2528 msgid "" "

Use these settings for the clinical summary notes " "also.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2529 msgid "clinical summary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2530 msgid "Notes" msgstr "Notlar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2531 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:55 msgid "Static" msgstr "Durağan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2532 msgid "Plan" msgstr "Plan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2534 msgid "Treatment Planning" msgstr "Tedavi Planlaması" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2535 msgid "X-Rays" msgstr "Radyografiler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2536 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:57 msgid "Perio" msgstr "Perio" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2537 msgid "Dentures" msgstr "Protezler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2538 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:203 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:40 msgid "Other" msgstr "Diğer" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2539 msgid "Custom" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2540 msgid "Advanced Tx Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2541 msgid "Patient is not currently under treatment - click here to begin" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2542 msgid "Charts / Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2544 msgid "Custom Estimate Letter" msgstr "Özel tahmini değer mektubu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2545 msgid "" "Use this feature to re-price all items in the \"tooth\" category of " "treatments. i.e all those which appear on the charts.\n" "\n" "Note - this will not remove items which are currently there. " msgstr "" "\"diş\" kategorisi tedavilerindeki bütün ögeleri yeniden fiyatlandırmak için " "bu özelliği kullan. Örn: çizelgelerde görülenlerin tümünü.\n" "\n" "Not - Bu durum şu an mevcut olan ögeleri ortadan kaldırmayacak. " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2548 msgid "ReCalculate Estimate" msgstr "Tahmini değeri yeniden hesapla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2549 msgid "Apply Exemption" msgstr "İstisna uygula" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2550 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:87 msgid "Course Dentist" msgstr "süreç hekimi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2551 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1600 msgid "Close Course" msgstr "Süreci Kapat" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2553 msgid "Perio Charts" msgstr "Perio Tabloları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2554 msgid "See all payments in the database made by this patient" msgstr "Bu hasta tarafından yapılmış veritabanındaki bütün ödemeleri göster" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2556 msgid "View treatments completed, by date order" msgstr "Tamamlanmış tedavileri göster, tarihe göre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2558 msgid "" "View all Courses of treatment. This includes treatment that was planned but " "not completed." msgstr "" "Bütün tedavi süreçlerimi göster. Bu planlanmış fakat tamamlanmamış " "tedavileri de kapsar." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2559 msgid "Courses" msgstr "Süreçler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2560 msgid "Estimate history for this patient." msgstr "Bu hasta için tahmin geçmişi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2561 msgid "Estimates" msgstr "Tahminler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2562 msgid "Current Estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2563 msgid "NHS Claims" msgstr "SGK Hakedişleri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2564 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2581 msgid "Memos" msgstr "Notlar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2566 msgid "" "Advanced options for developer use. Don't expect this to make much sense!\n" "\n" "If the \"changes only\" checkbox is checked, only data which has been " "changed will be displayed." msgstr "" "Geliştirici kullanımı için ileri seviye seçenekler. Bunların anlamlı " "birşeyler ifade etmesini \n" "\n" "Eğer \"sadece değişiklikler\" kutucuğu işaretli ise sadece değişiklik " "yapılan veriler gösterilecektir." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2569 msgid "debug tools" msgstr "hatasızlaştırma araçları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2570 msgid "changes only" msgstr "sadece değişiklikler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2571 msgid "Print the text displayed on this page." msgstr "Bu sayfada gösterilen metni yazdır." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2574 msgid "Today's Notes" msgstr "Bugünün notları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2575 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:106 msgid "PhraseBook" msgstr "cümle defteri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2576 msgid "Ins" msgstr "Araya ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2577 msgid "Save the changes made to this record." msgstr "Bu kayıtta yapılan değişiklikleri kaydet." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2578 msgid "Save Changes" msgstr "Değişiklikleri Kaydet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2579 msgid "Ctrl+S" msgstr "Ctrl+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2580 msgid "Enter Notes." msgstr "Not girişi yapın" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2582 msgid "Phrases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2583 msgid "Patient Database" msgstr "Hasta Veritabanı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2584 msgid "Appointments / Diary" msgstr "Randevular / Günlükler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2587 msgid "Registered Dentist" msgstr "Kayıtlı Diş Hekimi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2588 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2596 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:244 msgid "Go" msgstr "Git" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2589 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2599 msgid "Print the Data" msgstr "Veriyi yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2591 msgid "All payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2592 msgid "Sundries_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2593 msgid "Treatment_only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2594 msgid "Cashbook" msgstr "Nakit defteri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2597 msgid "Treating Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2602 msgid "Extra Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2603 msgid "Daybook" msgstr "Gün defteri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2604 msgid "Find Patient Records where the patient is in" msgstr "Hastanın içinde bulunduğu hasta kayıtlarını bul" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2605 msgid "Debt" msgstr "Borç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2606 msgid "Credit" msgstr "Kredi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2607 msgid "By More than" msgstr "Şundan fazla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2608 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2614 msgid "Load Table" msgstr "Tabloyu yükle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2609 msgid "Print Table" msgstr "Tabloyu yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2610 msgid "Print Selected Letters" msgstr "Seçili mektupları yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2612 msgid "TOTAL OUTSTANDING" msgstr "TOPLAM ÖDENMEMİŞ" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2613 msgid "Accounts" msgstr "Hesaplar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2615 msgid "Print Letters" msgstr "Mektupları yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2616 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:378 msgid "Expand All" msgstr "Tümünü Aç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2617 msgid "Letter Options" msgstr "Mektup seçenekleri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2618 msgid "Bulk Mailings" msgstr "Gereksiz Postalar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2620 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:183 msgid "Fee Scales Available" msgstr "Mevcut ücret tabloları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2621 msgid "Use this control to select a feescale" msgstr "Ücret tablosu seçmek için bu kontrolü kullanın" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2622 msgid "Search For an Item" msgstr "Bir ögeyi ara" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2623 msgid "search for the given phrase in description columns" msgstr "Tanımlama satırlarında verilen kelimeyi ara" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2624 msgid "Search Descriptions" msgstr "Tanımlamaları ara" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2627 msgid "only search for the given phrase in the usercode column" msgstr "Kullanıcı kodu satırında sadece verilen kelimeyi ara" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2628 msgid "Search Itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2630 msgid "Hide Rarely Used Codes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2631 msgid "Quickly expand all items" msgstr "Bütün ögeleri genişlet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2632 msgid "Expand All Sections" msgstr "Bütün kısımları genişlet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2633 msgid "Quickly compress all items" msgstr "Bütün ögeleri sıkıştır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2634 msgid "Compress All Sections" msgstr "Bütün kısımları sıkıştır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2635 msgid "Resources" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2636 msgid "Open A PDF of the latest NHS Regulations" msgstr "En son SGK düzenlemelerinin bir PDF'ini aç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2637 msgid "Documents" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2638 msgid "Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2639 msgid "FeeScale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2640 msgid "FeeScale Tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2641 msgid "Reload Fee Scales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2642 msgid "Feescales" msgstr "Ücret tabloları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2644 msgid "Reply" msgstr "Yanıtla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2645 msgid "Alt+R" msgstr "Alt+R" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2646 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:323 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:68 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:409 msgid "Delete" msgstr "Sil" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2647 msgid "Del, Backspace" msgstr "Sil, Geri al" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2648 msgid "&set parent" msgstr "& ana olarak ayarla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2649 msgid "Alt+S" msgstr "Alt+S" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2650 msgid "New Topic" msgstr "Yeni Konu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2651 msgid "Search by keyword" msgstr "Anahtar kelime ile ara" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2655 msgid "Show Topics for" msgstr "için Başlıkları göster" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2656 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:59 msgid "Everyone" msgstr "Herkes" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2658 msgid "Include Deleted Posts" msgstr "Silinmiş gönderileri dahil et" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2659 msgid "Split Replies" msgstr "Cevapları böl" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2660 msgid "Group replies" msgstr "Grup cevapları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2661 msgid "&Collapse Replies" msgstr "& cevapları küçült" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2662 msgid "&Expand Replies" msgstr "& cevapları genişlet" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2663 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1729 msgid "FORUM" msgstr "FORUM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2664 msgid "Wiki" msgstr "Wiki" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2665 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:109 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:57 msgid "&File" msgstr "&Dosya" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2666 msgid "&Help" msgstr "&Yardım" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2667 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:162 msgid "&Preferences" msgstr "&Tercihler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2668 msgid "&View" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2669 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2678 msgid "&Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2670 msgid "&Printing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2671 msgid "&Forum" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2672 msgid "&Charts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2673 msgid "&Mode (reception or surgery)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2674 msgid "&Cashbook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2675 msgid "&Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2676 msgid "&History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2677 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:161 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:111 msgid "&Tools" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2679 msgid "&Export Patient to disk" msgstr "&Hastayı diske dışa aktar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2680 msgid "&Import Patient from disk" msgstr "&Diskten Hastayı içe aktar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2681 msgid "About &OpenMolar" msgstr "&OpenMolar hakkında" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2682 msgid "&About QT" msgstr "&QT Hakkında" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2683 msgid "&Quit" msgstr "&Çık" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2684 msgid "Select Interface Language" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2685 msgid "Full Screen Mode (Ctrl-Alt-F)" msgstr "Tam Ekran Kipi (Ctrl-Alt-F)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2686 msgid "Ctrl+Alt+F" msgstr "Ctrl+Alt+F" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2687 msgid "Font Size" msgstr "Yazıtipi Boyutu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2688 msgid "Show Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2689 msgid "Table View For Charting" msgstr "Grafikleme için tablo görünümü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2690 msgid "NHS Form Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2691 msgid "Test Print a GP17" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2692 msgid "Print Daylists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2693 msgid "Set Clinician" msgstr "Klinisyen ayarla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2694 msgid "Set Assistant" msgstr "Yardımcı ayarla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2695 msgid "Surgery Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2696 msgid "Advanced Record Management" msgstr "İleri seviye Kayıt idaresi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2697 msgid "Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2698 msgid "Allow Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2699 msgid "Set Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2700 msgid "" "Set Surgery Number (used so other applications can see which record is " "loaded)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2701 msgid "Edit Phrasebooks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2702 msgid "Allow &Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2703 msgid "Enable &Filters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2704 msgid "Allow Edit &Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2705 msgid "Allow Edit &Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2706 msgid "Allow Edit &Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2707 msgid "Allow &ALL Edits" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2708 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:71 msgid "Edit Referral Centres" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2709 msgid "Edit Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2710 msgid "Open Document Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2711 msgid "Reset Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2712 msgid "Add User" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2713 msgid "Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2714 msgid "Edit Practice Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2715 msgid "Clear Today's Emergency Slots" msgstr "Bugünün acil slotlarını temizle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2716 msgid "Insert Regular Blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:71 msgid "Edit Standard Letters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2718 msgid "Configure Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_main.py:2719 msgid "Set Bookend (last day for appointment search)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:124 msgid "New CPITN score" msgstr "Yeni CPITN skoru" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:131 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:143 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:155 msgid "0" msgstr "0" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:151 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:157 msgid "2" msgstr "2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:140 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:146 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:158 msgid "3" msgstr "3" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:141 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:153 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:159 msgid "4" msgstr "4" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newBPE.py:160 msgid "*" msgstr "*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:83 msgid "New Course" msgstr "Yeni Süreç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:85 msgid "Start a new Course of Treatment with the following Criteria?" msgstr "Şu kriter ile yeni bir tedavi süreci başlat?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:86 msgid "Contracted Dentist" msgstr "Kontratlı Diş doktoru" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_newCourse.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:118 msgid "Acceptance Date" msgstr "Kabul ediliş tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:71 msgid "A Wizard to select some common appointment combinations" msgstr "Ortak Randevu kombinasyonlarını seçme sihirbazı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:72 msgid "&Shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:73 msgid "A New Appointment for this patient" msgstr "Bu hasta için yeni randevu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:74 msgid "&New" msgstr "&Yeni" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:75 msgid "Print out the next 5 appointments for this patient" msgstr "bu hasta için sonraki 5 randevuyu bul" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:76 msgid "Print Card" msgstr "Kart yazdır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_diary.py:77 msgid "" "

A place to keep a reminder of the patients appointment " "preferences.

Eg. "30 minute appointments for examinations" " "etc.

" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:163 msgid "Patient Finder" msgstr "Hasta bulucu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:165 msgid "" "Fill in a few of the following fields to get a list of possible patients" msgstr "" "Muhtemel hastaların bir listesini edinmek için aşağıdaki alanlardan " "birkaçını dolurunuz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:166 msgid "Repeat Last Search" msgstr "Son yapılan aramayı tekrar et" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:167 msgid "SNO or Surname" msgstr "SNO ya da Soyisim" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:168 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box." msgstr "" "İsmin tamamını ya da ilk birkaç harfini giriniz.\n" "\n" "Eğer tam olarak nasıl hecelendiğinden emin değilseniz ismin tamamını " "yazınız\n" " ve yakınındaki \"benzer olanlar\" kutucuğunu işaretleyiniz." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:173 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:182 msgid "check to search for a similar sounding name" msgstr "benzer şekidle duyulan isimleri aramak için işaretleyiniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:175 msgid "" "Enter either the full name or the first few letters of the name.\n" "\n" "If you are unsure of the spelling, type in the COMPLETE name,\n" "and check the adjacent \"sounds like\" box.\n" "Be wary of middle names. \n" "eg. \"Neil\" does NOT sound like \"Neil Alexander\"!" msgstr "" "Eİsmin tamamını ya da ilk birkaç harfini giriniz.\n" "\n" "Eğer tam olarak nasıl hecelendiğinden emin değilseniz ismin tamamını yazınız " "\n" "ve yakınındaki \"benzer olanlar\" kutucuğunu işaretleyiniz. \n" "Göbek adlarına dikkat ediniz.\n" "örn. \"Devrim\" ismi \"Devrim Ata\" ile benzer olarak duyulmamaktadır!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:184 msgid "Address includes" msgstr "Adres şunu içerir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:186 msgid "openMolar will search line1 and line2 of the address for this text" msgstr "Bu metin için openMolar satır 1 ve satır 2'yi arayacaktır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:189 msgid "" "open molar will search tel1, tel2 and mobile for numbers present here." msgstr "" "Buradaki mevcut numaraları open molar tel1, tel2 ve cep satırlarında " "arayacaktır." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_patient_finder.py:191 msgid "search for a postcode" msgstr "postakodu için arama yap" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:306 msgid "NHS current fees (money0)" msgstr "SGK şuanki ücretler (para0)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:307 msgid "NHS payments (money2)" msgstr "SGK ödemeleri (para2)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:308 msgid "NHS estimated (money4)" msgstr "SGK tahminleri (para4)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:309 msgid "private estimate (money5)" msgstr "özel tahminler (para5)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:311 msgid "Exempt - nhs gross - completed treatment (money6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:313 msgid "Exempt - NHS gross - estimated current (money7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:314 msgid "credit (money8)" msgstr "kredi (para8)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:315 msgid "debt (money9)" msgstr "borç (para9)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:316 msgid "debt2 (money10)" msgstr "borç2 (para10)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:317 msgid "money 11" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:318 msgid "private current fees (money1) " msgstr "şu anki özel ücretler (para1) " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:319 msgid "private payments (money3)" msgstr "Özel Ödemeler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:320 msgid "ALL AMOUNTS ARE IN PENCE (cents)" msgstr "Bütün Ödemeler Kuruş bazında" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:321 msgid "Outstanding amount" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:322 msgid "0.00" msgstr "0.00" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:324 msgid "Last CE (pd5)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:325 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:327 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:329 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:331 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:333 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:335 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:337 msgid "Add Date" msgstr "Tarih Ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:326 msgid "Last ECE (pd6)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:328 msgid "Last FCA (pd7)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:330 msgid "Last OPT (pd8)" msgstr "Son Panaromik Rontgen" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:332 msgid "Last intraoral Xrays (pd9)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:334 msgid "Last SP (pd10)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:336 msgid "Last Account sent (billdate)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:340 msgid "Dates" msgstr "Tarihler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_record_tools.py:341 msgid "Hidden Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:97 msgid "Post a memo about this Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:98 msgid "Expiry Policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:99 msgid "Do Not Expire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:100 msgid "Expire on this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:101 msgid "Viewable by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:103 msgid "Surgery Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_saveMemo.py:104 msgid "Reception Machines" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_showMemo.py:66 msgid "Delete this memo when I close this" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:136 msgid "Enter an appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:137 msgid "Appointment with" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:139 msgid "5 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:140 msgid "10 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:141 msgid "15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:142 msgid "20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:143 msgid "30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:144 msgid "40 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:145 msgid "45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:146 msgid "1 hour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:147 msgid "1 hour 15 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:148 msgid "1 hour 20 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:149 msgid "1 hour 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:150 msgid "1 hour 45 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:151 msgid "2 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:152 msgid "2 hours 30 minutes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:153 msgid "3 hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:155 msgid "Memo (optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:156 msgid "Reason 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:157 msgid "Reason 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:158 msgid "Reason 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_specify_appointment.py:159 msgid "Schedule Now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:255 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:233 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:396 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:53 msgid "Question" msgstr "Soru" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:74 msgid "Please set the Surgery Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:107 msgid "Reception Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:76 msgid "Surgery One" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:77 msgid "Surgery Two" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:78 msgid "Surgery Three" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:79 msgid "Surgery Four" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:80 msgid "Surgery Five" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_surgeryNumber.py:81 msgid "Surgery Six" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:228 msgid "delete tooth data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:383 msgid "ADD COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:230 msgid "KUO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:231 msgid "Mobile Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:232 msgid "Early Caries" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:233 msgid "Filling Missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:234 msgid "Chipped" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:235 msgid "Cracked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:236 msgid "Poor Prognosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:237 msgid "Extract Soon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:238 msgid "Sensitive" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:239 msgid "Non Vital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:385 msgid "DELETE ALL COMMENTS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:241 msgid "AM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:242 msgid "CO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:243 msgid "GL" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:245 msgid "Po" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:246 msgid "extract (plan only!)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:247 msgid "EX" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:248 msgid "root treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:249 msgid "RT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:250 msgid "Apply and move Back a tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:251 msgid "porcelain veneer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:252 msgid "DR" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:253 msgid "Apply & Add Another Item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:254 msgid "&&" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothProps.py:255 msgid "Apply & Move to Next Tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:80 msgid "Tooth Property Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:81 msgid "UR8" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:82 msgid "Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/compiled_uis/Ui_toothprops_full_edit.py:83 msgid "Database Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/contract_gui_module.py:120 msgid "erroneous exemption category entered" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:141 msgid "Out Of Office" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 msgid "SLOT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:698 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:74 msgid "with" msgstr "ile" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:727 msgid "Double Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:750 msgid "Minutes Free" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:775 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:811 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:374 msgid "Load Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:777 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:814 msgid "Add/Edit Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:780 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:815 msgid "Cancel Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:782 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:824 msgid "Clear Block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:784 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:832 msgid "Block or use this space" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:786 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:818 msgid "Print A Medical Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:817 msgid "Save Medical Form Check Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:861 msgid "Whoops!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/appointmentwidget.py:862 msgid "Bad Time Sequence!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:89 msgid "Switch to day view of this date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:93 msgid "Edit Memos" msgstr "Bilgi notlarını düzenle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py:95 msgid "Edit Clinician Hours" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:638 msgid "Edit day memos" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:304 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:639 msgid "Edit Public Holiday information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:351 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Wednesday" msgstr "Çarşamba" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/calendars.py:391 msgid "DATE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:314 msgid "Toggle Deciduous State" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:328 msgid "Delete All Restorations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:334 msgid "Add Comments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:338 msgid "Show History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:476 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:249 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:220 msgid "Left" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/chartwidget.py:479 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py:252 #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/chart_widget.py:223 msgid "Right" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 msgid "Are you Sure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/confirming_check_box.py:58 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:174 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:101 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:94 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:432 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:450 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:484 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:559 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1220 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:269 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:372 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:569 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:607 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:370 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:513 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:674 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:216 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:108 msgid "Confirm" msgstr "Onayla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:80 msgid "Browsing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:74 msgid "Scheduling Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:76 msgid "Blocking Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/diary_view_controller.py:78 msgid "Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:400 msgid "completed already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:404 msgid "There are multiple treatments associated with this estimate item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:407 msgid "All must be completed for the full charge to be applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:409 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:120 msgid "information" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:428 msgid "Not Allowed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:429 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1159 msgid "You have no clinician login. Treatments cannot be completed by you!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:436 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:684 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:754 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:773 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:788 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:366 #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:178 msgid "confirm" msgstr "onayla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py:437 msgid "Delete examination from this treatment plan and estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:72 msgid "CSET" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:115 msgid "Planned Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:116 msgid "Interim Charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:117 msgid "Completed Items Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/estimate_widget.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:180 msgid "TOTAL" msgstr "TOPLAM" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:126 msgid "Diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:127 msgid "Open the patient's diary" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:131 msgid "Appointment Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:135 msgid "Previous appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:139 msgid "Next available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:143 msgid "Next Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:147 msgid "Previous Day or Week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:151 msgid "First available appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:172 msgid "No appointment selected for scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:199 msgid "Select a patient to edit notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:317 msgid "No patient Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:717 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:626 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:108 msgid "error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:718 msgid "No patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:741 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:124 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:222 msgid "Close" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:804 msgid "Please select an appointment to begin scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:808 msgid "appointment is already scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:810 msgid "Joint appointment Scheduled" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:813 msgid "Joint appointment is not possible with the chosen primary appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:823 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:842 msgid "This date is beyond the diary limit." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:824 msgid "Please search again with different criteria." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:825 msgid "for instance..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:826 msgid "no excluded days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:827 msgid "ignore emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:828 msgid "add or view more clinicians" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:829 msgid "or you have requested an impossible appointment!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:835 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:845 msgid "You can't schedule an appointment in the past" msgstr "geçmiş tarihte ibr randevu oluşturamazsınız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:851 msgid "in this week" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:855 msgid "on this day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:861 msgid "No Slots Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:870 msgid "Specified Dentist only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:873 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:97 msgid "Any Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:875 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:115 msgid "Any Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:883 msgid "Specified Hygienist only for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:886 msgid "Any Hygienist for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:888 msgid "Any Clinician for hyg appts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:893 msgid "Joint Appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:899 msgid "Overwrite Emergencies" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:905 msgid "Any Day" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Mon" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Thu" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Tue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:908 msgid "Wed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Fri" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:909 msgid "Sun" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:916 msgid "No Appointment Selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:919 msgid "Search Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:943 msgid "View/edit today's notes for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:969 msgid "Made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:971 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:78 msgid "at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:980 msgid "last mh form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/schedule_control.py:985 msgid "MH CHECK REQUIRED" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:42 msgid "Mark the selected tooth as missing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:46 msgid "Mark the selected tooth as artificial" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:50 msgid "Mark the selected tooth as root present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:54 msgid "Permanent Tooth Also Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:58 msgid "Supernumary Tooth Present" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:70 msgid "Mark the selected tooth as partially erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:66 msgid "Mark the selected tooth as over erupted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/static_control_panel.py:74 msgid "Toggle selected tooth/teeth as deciduous" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:284 msgid "Toggle Pin Retention for current Filling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:302 msgid "Crowns" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:303 msgid "Posts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:304 msgid "Bridges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:305 msgid "Implants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:306 msgid "Fissure Sealants" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:307 msgid "Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/customwidgets/toothProps.py:308 msgid "Surgical Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:37 msgid "Account Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:38 msgid "Please Choose the tone of this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:41 msgid "Normal Account - Very Polite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:42 msgid "Mildly assertive request" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/account_severity_dialog.py:44 msgid "Threaten with Debt Collector" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:44 msgid "Add User Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:53 msgid "Add a new clinician to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:56 msgid "Add New Login" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:64 msgid "Hygienist" msgstr "Yardımcı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:65 msgid "Therapist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:72 msgid "" "Create a new diary for this clinician (uncheck to map to an existing diary)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:84 msgid "Initials/Nickname (must be an existing Login)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:86 msgid "Name eg. Fred Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:87 msgid "Formal Name eg. Dr.F. Smith" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:88 msgid "Qualifications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:89 msgid "Speciality" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:90 msgid "Clinician Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:92 msgid "Additional Data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py:104 msgid "view existing dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:75 msgid "Complete Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py:76 msgid "What treatment has been performed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:47 msgid "Add a new user to the system?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:48 msgid "This is done using initials or a short nickname." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:49 msgid "Must be unique and Maximum allowed in 5 characters" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:55 msgid "User Initials or nickname" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:66 msgid "view existing users" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/add_user_dialog.py:73 msgid "Initials/nickname mut be unique" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:36 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:131 msgid "Forename" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:37 msgid "dob" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:38 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:137 msgid "POSTCODE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:48 msgid "Address Matches" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/address_match_dialog.py:81 msgid "Top 12 address matches for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py:211 msgid "type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:100 msgid "Advanced Treatment Planning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:108 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:132 msgid "Planned Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:135 msgid "Completed Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:117 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:141 msgid "Field" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:170 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:195 msgid "Show Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py:193 msgid "Hide Chart Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:152 msgid "Clinician Times" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alterAday.py:174 msgid "values from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:46 msgid "Alter Cashbook Entry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:67 msgid "Patient Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:68 msgid "Patient Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:71 msgid "Payment Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py:85 msgid "Enable Full Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:55 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:55 msgid "Choose from the following options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:79 msgid "You haven't completed this option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:94 msgid "What are you Modifying?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:97 msgid "An existing Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:99 msgid "An existing Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:174 msgid "What best describes the denture type?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:190 msgid "Acrylic Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:177 msgid "Metal Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:206 msgid "Please select teeth to be added to this denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:254 msgid "How Many Clasps?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:284 msgid "Does this work require the taking of an impression?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:317 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:230 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:293 msgid "You have completed your input." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:318 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:231 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:294 msgid "Please click on Apply" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:328 msgid "Alterations to an existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:362 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:336 msgid "Upper Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:363 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:337 msgid "Lower Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:368 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:580 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:610 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:342 msgid "Next" msgstr "İleri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:388 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:288 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:362 msgid "Whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:443 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:454 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:244 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:248 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:421 msgid "Warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:444 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:422 msgid "Your upper denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py:455 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:434 msgid "Your lower denture input is invalid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:62 msgid "Open Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:59 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:75 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:271 msgid "message" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/alter_todays_notes.py:106 msgid "No notes found for today!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:42 msgid "Appointment Card for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:48 msgid "Include Today's appointments?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py:86 msgid "No appointments to print!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:42 msgid "Staff Meeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:53 msgid "Insert a number of blocks to various books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:55 msgid "Clinicians" msgstr "klinisyenler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:67 msgid "Days to Apply" msgstr "uygulanacak günler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:111 msgid "What time does this recurr?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:113 msgid "What is this block for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:141 msgid "reason" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:142 msgid "Please enter the text to use for this block" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:184 msgid "End Date is greater than Start Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:187 msgid "Block has zero duration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:190 msgid "You have no days selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:193 msgid "You have no clinicians (ie.books) selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:216 msgid "applying changes for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:233 msgid "Appointment(s) inserted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:237 msgid "" "Some were rejected by the database as they clashed with existing " "appointments or blocks" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:240 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:332 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:339 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:169 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:254 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:488 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:264 msgid "Information" msgstr "Bilgi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py:251 msgid "Bad Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:45 msgid "Edit Memos for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:61 msgid "Global Memo" msgstr "Küresel bilgi notu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:77 msgid "Clinician Memos" msgstr "klinik bilgi notu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:84 msgid "Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py:86 msgid "Edit Public Holiday Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:47 msgid "User choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:49 msgid "Set the Appointment Viewing Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:53 msgid "Browsing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:58 msgid "Scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:59 msgid "make appointments for a patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:63 msgid "Blocking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:64 msgid "block time periods. eg. lunch times etc." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:68 msgid "Note Checking" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py:69 msgid "check notes for today's patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:63 msgid "Appointment Preferences for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:68 msgid "Recall Patient Periodically" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:72 msgid "Dentist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:87 msgid "dentist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:89 msgid "Next Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:90 msgid "Shortcuts (months from today)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:94 msgid "Hygienist Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:107 msgid "hygienist recall period (months)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:109 msgid "Next Recall" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:113 msgid "Post" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py:125 msgid "Recall method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:48 msgid "Restore Default Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:50 msgid "Appointment search does not have default settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:51 msgid "Would You like to reset these now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:55 msgid "Show Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:56 msgid "Keep Custom Settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:83 msgid "Appointment Settings Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:86 msgid "Please set criteria for making appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:91 msgid "Dentist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:96 msgid "Specified Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:107 msgid "Hygienist selection policy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:112 msgid "Specified Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:113 msgid "Any Hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:125 msgid "Emergency time management" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:127 msgid "Ignore Emergency Spaces" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:136 msgid "Look for appointments on these days" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:141 msgid "Clear all" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:169 msgid "Check All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py:171 msgid "Clear All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:34 msgid "Select an Assitant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py:43 msgid "No Assistant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:38 msgid "Apply Saved Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:48 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:51 msgid "Post Code" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:52 msgid "Home Telephone" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:78 msgid "Existing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:146 msgid "Address changes applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/auto_address_dialog.py:153 msgid "No previous address details found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/base_dialogs.py:99 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:189 msgid "Abandon Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:58 msgid "No patient chosen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:101 msgid "Start is outwith slot bounds (too early)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:104 msgid "Start is outwith slot bounds (too late)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:107 msgid "Finish is outwith slot bounds (too late" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:110 msgid "Finish is outwith slot bounds (too early" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:112 msgid "length of appointment is too short" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:115 msgid "no reason for the block given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1940 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:96 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:119 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:190 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:211 msgid "no patient selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:124 msgid "Unable to commit because" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:142 msgid "patient not found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:152 msgid "Chosen Patient is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/blockslot.py:154 msgid "no patient chosen" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:42 msgid "Bookend Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bookend_dialog.py:45 msgid "Change the last date where appointments are searched for?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:43 msgid "Bridge Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:51 msgid "Plan a New Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/bridge_dialog.py:53 msgid "Recement/Repairs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:52 msgid "&Yes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:53 msgid "Cancel the appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:58 msgid "Yes, but &Keep for re-scheduling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:65 msgid "Delete unscheduled appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:72 msgid "Delete this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:84 msgid "&No" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:85 msgid "Close this dialog, making no changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:124 msgid "Successfully removed appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:119 msgid "Are you sure you want to completely cancel this appointment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py:126 msgid "Error removing from patient diary" msgstr "hasta günlüğünden silme hatası" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:36 msgid "Fissure Sealant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:37 msgid "PRR restoration with composite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:41 msgid "Pulp Extirpation - 1 canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:42 msgid "Pulp Extirpation - multiple canals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:43 msgid "Root Canal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:44 msgid "Incomplete Endodontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:48 msgid "Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:49 msgid "Surgical Extraction" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:50 msgid "Apicectomy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:61 msgid "Chart Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:78 msgid "Show Treatments from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:106 msgid "" "No Matching items to show. Perhaps this is due to the feescale for this " "patient?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py:126 msgid "No items of this type have found in any feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:92 msgid "ToothBrushing Instruction Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:95 msgid "Dietary Advice Given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:98 msgid "Fluoride Varnish Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:100 msgid "Fee claimable for patients betwen 2 and 5" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:133 msgid "Please enter a valid postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:145 msgid "KNOWN SIMD" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:152 msgid "Polling website with Postcode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:167 msgid "Error polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:170 msgid "Timeout polling website" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:174 msgid "RESULT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:192 msgid "Manual Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/child_smile_dialog.py:194 msgid "Online lookup has failed, please enter the SIMD manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:34 msgid "Select a Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:43 msgid "NONE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py:86 msgid "Set Clinician as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:38 msgid "Close Course Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:47 msgid "" "You have no further treatment proposed for this patient, yet they are deemed " "to be \"under treatment\"." msgstr "" "Halihazırda \"tedavi altında\" sayılmıyorlar ise, bu hasta için önerilmiş " "ileri bir tedaviniz bulunmamaktadır." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:58 msgid "Suggested Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:62 msgid "Close this course now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/close_course_dialog.py:65 msgid "Pt failed to return" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:45 msgid "Complete Multiple Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:48 msgid "You have selected multiple treatments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:49 msgid "Please complete, reverse or delete then apply changes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:110 msgid "Complete All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py:113 msgid "Reverse All" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:52 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:91 msgid "Blank Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/correspondence_dialog.py:103 msgid "Abandon changes and convert to letter type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:42 msgid "Course Daybook Estimate Checker" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:51 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:50 msgid "Polling Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py:53 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:56 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:78 msgid "No advanced options available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:41 msgid "Edit Treatment Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:96 msgid "acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:99 msgid "completion date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:102 msgid "Set completion date to match Acceptance date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:106 msgid "Add Completion Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:111 msgid "exam date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:113 msgid "No Exam Date on this course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_edit_dialog.py:128 msgid "Bad Date Sequence" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:40 msgid "Options Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:41 msgid "What do you wish to show?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:44 msgid "Include Estimates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:48 msgid "Include Daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py:52 msgid "Leave both unchecked for courses only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:46 msgid "Merge Treatment Courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:52 msgid "Preview Merged Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:91 msgid "Courses can't be merged, both have examinations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/course_merge_dialog.py:93 msgid "Merged Course Preview" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:36 msgid "Porcelain Jacket" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:37 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:37 msgid "Gold" msgstr "Altın" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:38 msgid "Porcelain/Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:39 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:39 msgid "Lava" msgstr "Lava" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:40 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:40 msgid "Opalite" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:41 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:41 msgid "Emax" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:42 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:42 msgid "Everest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:43 msgid "Stainless" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:43 msgid "Resin" msgstr "Rezin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:59 msgid "Crown Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py:77 msgid "Show Crowns types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:44 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:82 msgid "Inspecting daybook row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:56 msgid "Diagnosis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:58 msgid "Anaesthetics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:59 msgid "Misc" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:64 msgid "Other Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py:65 msgid "Chart Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:47 msgid "Update the daybook row with these new Totals" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:49 msgid "Update the daybook row with Fee Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:51 msgid "Update the daybook row with Charge Total Only" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:53 msgid "Delete this row from the daybook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:90 msgid "Ok" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:123 msgid "No Information found in estimates for this daybook item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:148 msgid "Fee Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:150 msgid "Charge Differs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:157 msgid "Successfully applied changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:171 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:177 msgid "No changes made" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:163 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:169 msgid "Successfully applied change" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py:175 msgid "Successfully deleted row" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:51 msgid "Denture Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:59 msgid "Plan New Denture(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/denture_dialog.py:61 msgid "Alter an Existing Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:91 msgid "Openmolar Documents Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:95 msgid "Please choose a document to open" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:101 msgid "For help configuring this feature, see" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:112 msgid "You have no documents stored in" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:136 msgid "docs.xml is not parseable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/document_dialog.py:170 msgid "Error opening PDF file" msgstr "PDF dosyasının açılmasında hata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:51 msgid "Duplicate receipts for Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:56 msgid "No previous receipts found!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:59 msgid "Reprint an existing receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:66 msgid "Generate a Duplicate receipt" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:126 msgid "show" msgstr "göster" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1038 msgid "error reviewing PDF file" msgstr "PDF dosyasının değerlendirilmesinde hata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:178 msgid "Professional Services" msgstr "Profesyonel Servisler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py:184 msgid "duplicate receipt for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:42 msgid "Edit Practice Address Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:45 msgid "Edit the Practice Name and/or address." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:46 msgid "This information is used on receipts and appointment slips." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:54 msgid "Practice Name" msgstr "Muayenehane adı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py:60 msgid "Address Line" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:86 msgid "Delete the currently selected Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:91 msgid "Add a New Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:110 msgid "Greeting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:123 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:125 msgid "Apply Changes" msgstr "Değişiklikleri Uygula" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:228 msgid "Example Referral Centre" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "Dear Sir/Madam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:229 msgid "My Local Hospital" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "Main Street" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:230 msgid "My Town" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py:245 msgid "You should have at least one referral centre in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:86 msgid "Delete the currently selected letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:91 msgid "Add a New Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:111 msgid "Desctription" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:112 msgid "Body Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:113 msgid "Footer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:223 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:50 msgid "Input Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:224 msgid "Please enter a unique descriptive name for this letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:231 msgid "this name is already in use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py:249 msgid "You should have at least one standard letter in the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:39 msgid "Edit Treatment Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:44 msgid "Option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:46 msgid "Edit Completed items?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:47 msgid "Choosing 'NO' will offer edit of planned items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:54 msgid "Planned Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:57 msgid "Completed Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py:89 msgid "No Advanced Options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:70 msgid "Inspecting estimate for Course Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py:117 msgid "Apply Changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:68 msgid "Please enter the examining Dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:87 msgid "is now both the registered and course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:447 msgid "Is this correct?" msgstr "Bu doğru mu?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:89 msgid "confirming this will remove reference to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:104 msgid "performed this exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:109 msgid "confirming this will change the course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:110 msgid "but not the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:114 msgid "consider making" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:116 msgid "the registered dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:142 msgid "You already have a completed exam on this course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:144 msgid "Unable to perform exam" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:152 msgid "Examination not applied" msgstr "Muayene uygulanmadı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:188 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:145 msgid "performed by" msgstr "tarafından gerçekleştirildi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/exam_wizard.py:197 msgid "Not updating recall due to patient's recall settings" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:42 msgid "Address 3" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:43 msgid "TOWN" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:104 msgid "Add Record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:105 msgid "to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:125 msgid "Which address should be used?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:167 msgid "Synchronise Addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:171 msgid "Standard Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:174 msgid "Address Search" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:178 msgid "Delete this group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:183 msgid "Add members" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:188 msgid "Manage Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:204 msgid "Manage Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 msgid "from group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:237 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:257 msgid "Unlink" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:272 msgid "This patient does not belong to any family group." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:274 msgid "Create a New Family Group" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:277 msgid "Show similar addresses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:293 msgid "Remove" msgstr "Kaldır" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:294 msgid "from this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:333 msgid "Addresses are all identical - nothing to do!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:340 msgid "Address(es) updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/family_manage_dialog.py:362 msgid "Delete this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:49 msgid "In use" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:58 msgid "Demote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:62 msgid "Promote the feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:112 msgid "Confgure Feescales Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:114 msgid "" "This dialog enables you to modify the metadata which determines the order " "feescales are loaded." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py:116 msgid "You can also archive a feescale by unchecking 'in use'." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:72 msgid "warning" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:73 msgid "You have no patients in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:100 msgid "no match found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:128 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Serialno" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:133 msgid "Birth Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:134 msgid "Address Line 1" msgstr "Adres satırı 1" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:135 msgid "Address Line 2" msgstr "Adres satırı 2" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:138 msgid "Tel1" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:139 msgid "Tel2" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:147 msgid "Load the Selected Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:202 msgid "Include ALL Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:204 msgid "are hidden" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/find_patient_dialog.py:208 msgid "Show only active Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:104 msgid "This Dialog will help you" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:105 msgid "secure openmolar with a password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:106 msgid "note the location of your mysql/mariadb server" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:107 msgid "install a blank database schema if required." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:108 msgid "save a settings file so you do not have to endure this again!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:112 msgid "Click Next to continue, or Quit to leave OpenMolar now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:120 msgid "This appears to be your first running of OpenMolar." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:121 msgid "We need to save a few settings to continue." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:131 msgid "" "You may wish to enter a password which will hereafter be required to login " "to the OpenMolar application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:133 msgid "" "This password will help prevent an unauthorised person accessing any " "sensitive data." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:135 msgid "If your data is simply demonstration data, this can be left blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:143 msgid "Show Passwords" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:144 msgid "Password" msgstr "Şifre" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:145 msgid "Confirm Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:154 msgid "Step 1 - Set a password for OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:173 msgid "Passwords don't match!" msgstr "Şifreler eşleşmiyor." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:182 msgid "OpenMolar is simply a database client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:183 msgid "It requires a database server such as MySQL or MariaDB." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:184 msgid "" "Please enter the hostname and port number where your server can be reached." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:189 msgid "" "If you do not have a mysql/mariadb server on your computer or local network, " "please quit this setup, and install one now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:192 msgid "Make a note of the root password you create during this set up." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:205 msgid "Host" msgstr "Sunucu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:206 msgid "Port" msgstr "Bağ. Nok." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:216 msgid "Step 2 - Where is your database server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:336 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:401 msgid "The Following errors were found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:240 msgid "Host Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:242 msgid "Port Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:244 msgid "Port Field must be a number. Default is 3306" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:256 msgid "Do you already have an openmolar database on this server?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:257 msgid "If not, you should lay out one now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:263 msgid "Create a database user and install a blank (demo) Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:265 msgid "Use an existing database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:273 msgid "Step 3 - select a database option" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:289 msgid "Please enter connection criteria for the database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:290 msgid "" "If the user and/or database does not exist, you will be given an opportunity " "to create them " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:303 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:371 msgid "Show Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:305 msgid "Database Name" msgstr "Veritabanı Adı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:306 msgid "(mysql) user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:307 msgid "(mysql) password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:315 msgid "Step 5(a) - Your Database Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:338 msgid "Database Name Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:340 msgid "User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:342 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:405 msgid "Password Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:353 msgid "" "To create a database, and set the privileges for user, OpenMolar must log " "into mysql as a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:355 msgid "OpenMolar does NOT store this username or password." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:359 msgid "Please enter the username and password of a privileged mysql user." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:361 msgid "" "(note - on most mysql setups, login by 'root' is only allowed on localhost)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:373 msgid "Privileged user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:374 msgid "Password for this user" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:382 msgid "Step 5b - Create an authenticated user and database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:403 msgid "Privileged User Field is Blank" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:416 msgid "Creating Database" msgstr "Veritabanı oluşturuluyor." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:425 msgid "Step 6 - Create Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:455 msgid "A database named" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:457 msgid "exists already" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:459 msgid "Overwrite this database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:489 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:113 msgid "Success!" msgstr "Başarılı!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:490 msgid "Database created successfully!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:496 msgid "Error Creating Database" msgstr "Veritabanı oluşturma hatası." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:506 msgid "Testing connection" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:513 msgid "Final Step - Test Connection & Write Config File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:532 msgid "Your database is accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:539 msgid "Your database is NOT accepting connections!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:550 msgid "First Run Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:582 msgid "Back" msgstr "Geri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:586 msgid "Quit OpenMolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:606 msgid "Create Database Now!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/first_run_dialog.py:608 msgid "Write Config File and Proceed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:38 msgid "Form options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:48 msgid "use test mode (print boxes)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:50 msgid "use a background image for the form (if available)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:73 msgid "Completed Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:74 msgid "Prior Approval" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:96 msgid "GP17 Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:98 msgid "Print a GP17 Form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:110 msgid "Use this dentists stamp?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:115 msgid "Chart" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:119 msgid "Completion Date" msgstr "Bitim Tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:628 msgid "Treatments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:122 msgid "Include Chart Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/gp17_printdialog.py:129 msgid "Include Course Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:51 msgid "WARNING - THE FOLLOWING TREATMENTS ARE ALREADY PLANNED." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/hygTreatWizard.py:102 msgid "Please enter a dentist / hygienist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:36 msgid "Titanium Implant" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:37 msgid "Implant Abutment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:38 msgid "Implant Crown" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:39 msgid "Implant Bridge Retainer" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:40 msgid "Implant Bridge Pontic" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py:54 msgid "Implant Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:42 msgid "Initial Check Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:45 msgid "OpenMolar has found the following issues with your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:50 msgid "No Advanced options" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:56 msgid "Proceed" msgstr "Devam et" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:76 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:82 msgid "How do I Fix This?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:78 msgid "Your database contains no dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:85 msgid "Your practice name is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:94 msgid "Why is this?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:96 msgid "You have no appointment space in your diary!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:105 msgid "The cbcodes table in your database is inadequate." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:106 msgid "This will create problems when accepting payments." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 msgid "patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:112 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "you have" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:115 msgid "active dentists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:118 msgid "active hygienists" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:121 msgid "appointment search final date is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:126 msgid "" "Once the application is open, click on Tools - > Menu - > Add Clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:130 msgid "" "Once the application is open, click on Tools - > Menu - > Edit Practice " "Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:134 msgid "This could be for a variety of reasons" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:135 msgid "You need to have at least one clinician with an appointment book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:137 msgid "No Clinicians have any days contracted to work in the practice?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:139 msgid "Perhaps all future clinical time is already booked?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/initial_check_dialog.py:140 msgid "" "The BOOKEND value (last day to search for appointments) may simply need " "adjusting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:52 msgid "Default" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:67 msgid "You have selected to connect to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:69 msgid "" "This is not the default database - are you sure you wish to use this " "database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:96 msgid "Login Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:98 msgid "Login Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:108 msgid "Surgery Machine" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:114 msgid "System Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:116 msgid "User 1 (Required)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:117 msgid "User 2 (Optional)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:141 msgid "Database choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:162 msgid "Are you sure you wish to cancel the login process?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:181 msgid "Unable to Run OpenMolar" msgstr "OpenMolar Çalıştırılamıyor." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:182 msgid "Good Bye!" msgstr "Hoşçakalın !" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:293 msgid "Login Error" msgstr "Giriş Hatası" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:295 msgid "Incorrect" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:296 msgid "User/password combination!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/login_dialog.py:297 msgid "Please Try Again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:44 msgid "Previously stored dates" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:84 msgid "Medical Form Checked Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:94 msgid "" "You are about to confirm that the patient has completed a medical history " "form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:105 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:132 msgid "Date Checked" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:109 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:134 msgid "Confirm this date now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py:141 msgid "Medical Form Completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:48 msgid "Medical Form Date Entry Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:57 msgid "Change Year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:60 msgid "NEVER" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:63 msgid "" "Please enter the date that this patient has completed a medical history form." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:65 msgid "Last recorded check was" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:90 msgid "Input" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:91 msgid "Please select a year" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:114 msgid "Sucessfully saved " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:116 msgid "for patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:125 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:157 msgid "Error!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:126 msgid "That date is in the future!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:130 msgid "Confirm Action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:158 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1286 msgid "error getting serialno" msgstr "hata seri numarasının bulunmasında hata var" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py:160 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1287 msgid "please check this number is correct?" msgstr "lütfen bu numaranın doğruluğunu kontrol ediniz?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:47 msgid "Minor administrative correction - (leave no note)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:51 msgid "Please enter the reason for your alterations" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:54 msgid "Updated Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:55 msgid "Corrected Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:132 msgid "Medical History for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:173 msgid "Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:178 msgid "Medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:189 msgid "Bleeding Disorders" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:190 msgid "Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:191 msgid "Endocarditis" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:192 msgid "Mark as Medical Alert" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:198 msgid "Joint Replacement" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:292 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:393 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:404 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:302 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:288 msgid "question" msgstr "soru" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:295 msgid "is not a known drug on the system" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:296 msgid "Would you like to add it?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:310 msgid "from your input?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:394 msgid "No changes - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:405 msgid "Blank Medical History Entered - mark as checked today?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:422 msgid "Checked Medical History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/medical_history_dialog.py:433 msgid "Abandon your changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:42 msgid "MH Form Print Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:43 msgid "Leave fields empty" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:44 msgid "Populate with current MH" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:47 msgid "No Patient Selected, A blank form will be produced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:50 msgid "Medical History form for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/mh_form_dialog.py:52 msgid "Use this date for the form" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/newCourse.py:72 msgid "Some fields are missing, please check" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:38 msgid "Bonded Porcelain" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:97 msgid "Upper Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:98 msgid "Lower Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:120 msgid "Bridge Type" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:121 msgid "Conventional Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:122 msgid "Resin Retained Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:144 msgid "Material" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:176 msgid "Please select teeth which are to be used as retainers" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:203 msgid "Please select teeth which are to be used as pontics" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py:242 msgid "Chart/Plan a Bridge" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:99 msgid "Complete Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:101 msgid "Partial Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:138 msgid "New UPPER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:140 msgid "New LOWER Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:143 msgid "Complete Upper AND Lower Acrylic Dentures" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:191 msgid "Chrome Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:192 msgid "Flexible Denture" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:221 msgid "Please select teeth which this denture is to replace" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:263 msgid "You may wish to add the following optional items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:265 msgid "Special Tray" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:266 msgid "Soft Lining" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/new_denture_dialog.py:304 msgid "Add A New Denture To The Treatment Plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:45 msgid "Left Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:46 msgid "Top Offset" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:47 msgid "Horizontal Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:48 msgid "Vertical Scaling" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py:79 msgid "NHS Form Configuration" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:61 msgid "Other Treatment Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:62 msgid "Add the following items to the treament plan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py:70 msgid "Items from other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:56 msgid "Annual Hdp Payment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:57 msgid "Other Payments" msgstr "Diğer ödemeler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:58 msgid "Patient Refunds" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:92 msgid "Sundries" msgstr "ilaveler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:93 msgid "Total" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/payment_dialog.py:175 msgid "unusual payments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:48 msgid "Raise Permissions Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:50 msgid "Supervisor privileges required to perform this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:51 msgid "Please enter the supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:58 msgid "Supervisor Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:846 msgid "whoops" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:80 msgid "incorrect supervisor password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:96 msgid "New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:97 msgid "Confirm New Password" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:109 msgid "new passwords didn't match" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:117 msgid "password changed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/permissions.py:119 msgid "Password unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:38 msgid "Cast Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:39 msgid "Cast Non-Precious Metal" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:50 msgid "Post Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/post_choice_dialog.py:68 msgid "Show Post types from all feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/print_record_dialog.py:43 msgid "Print the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:45 msgid "start date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:50 msgid "end date (inclusive)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_dialog.py:56 msgid "Dentist choice (leave unchecked for all)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:42 msgid "Recall Prompt Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:48 msgid "There is a problem with the recall date of this patient." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:49 msgid "Would you like to fix this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:53 msgid "Fix" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:57 msgid "Ignore Recall Date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:58 msgid "Ignore this for now." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py:60 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:55 msgid "Cancel and Continue Editing" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:43 msgid "What's changed?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:53 msgid "Discard All Changes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/save_discard_cancel.py:76 msgid "Are you sure you want to discard these changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:78 msgid "English (United Kingdom)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:79 msgid "English (Australia)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:80 msgid "Afrikaans" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:81 msgid "Danish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:82 msgid "French" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:83 msgid "German" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:84 msgid "Hungarian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:85 msgid "Indonesian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:86 msgid "Italian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:87 msgid "Occitan" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:88 msgid "Polish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:89 msgid "Portuguese" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:90 msgid "Slovak" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:91 msgid "Spanish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:92 msgid "Turkish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:93 msgid "Romanian" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:94 msgid "Greek" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:115 msgid "No language selected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:122 msgid "switched interface to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/select_language.py:125 msgid "no translation file found for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Demote" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Erase" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:71 msgid "Item Shortcut" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:102 msgid "click to edit Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:115 msgid "click to delete item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py:122 msgid "click to promote Item - " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:288 msgid "Adding day memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:405 msgid "Please select an appointment to schedule" msgstr "planlama yapmak için lütfen bir randevu seçiniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:409 msgid "appointment already scheduled for" msgstr "randevu halihazırda planlanmış" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:430 msgid "Please select an appointment to place here" msgstr "buraya yerleştirmek için lütfen bir randevu seçiniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:434 msgid "Please choose another appointment - this one is made already!" msgstr "lütfen başka bir randevu seçiniz - bu randevu halihazırda yapılmış!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:445 msgid "You have chosen an appointment with" msgstr "ile bir randevu seçtiniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:476 msgid "Confirm Make appointment for" msgstr "için randevu onayla oluştur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:520 msgid "Error putting appointment back into patient diary" msgstr "randevunun hasta günlüğüne tekrar konulmasında hata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:527 msgid "more appointments to schedule" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:535 msgid "Error making appointment - sorry!" msgstr "randevu oluşturma hatası - özür dileriz!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:536 msgid "It is most likely that another user utilised this space." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:538 msgid "Please try again." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:560 msgid "Print Appointment Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:761 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:767 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:199 msgid "Refresh" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1043 msgid "No books to show!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1158 msgid "multiple appointments selected, unable to edit memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1165 msgid "unable to locate appointment memo, sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1169 msgid "New Memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1170 msgid "Please enter Memo for this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1213 msgid "Do you want to unblock the selected slot?" msgstr "Seçili slotu bloklamak ister misiniz?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1245 msgid "unable to block - has the book been altered elsewhere?" msgstr "bloklama sorunu - kitabın başka bir yerinde değişişiklik yapıldı mı?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1264 msgid "unable to make appointment - has the book been altered elsewhere?" msgstr "" "randevu oluşturulamadı - kitap başka bir yerde edğiştirilmiş olabilir mi?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1327 msgid "Cancelling Notes Mode" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1420 msgid "Public Holidays" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/diary_widget.py:1421 msgid "Enter the information for " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/cashbook_module.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:134 msgid "bad date sequence" msgstr "hatalı tarih sırası" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:57 msgid "Please save the old course changes before continuing" msgstr "Lütfen devam etmeden önce eski süreçleri kaydediniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:66 msgid "It looks as if another user is starting a course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:68 msgid "" "Please allow this other user to commit their changes then reload this record " "before continuing." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:70 msgid "" "If you are seeing this message and are sure no other user is using this " "record, use menu->tools->Fix Locked New Course of Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:81 msgid "" "unable to plan or perform treatment if the patient does not have an active " "course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:146 msgid "Successfully started new course of treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:147 msgid "Using Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:179 msgid "Appointment Preferences Applied" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:247 msgid "A course was closed earlier today." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:249 msgid "A course was closed yesterday." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:251 msgid "A course was closed less than a week ago." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:256 msgid "Would you like to resume this course?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:270 msgid "Are you sure you wish to Resume the previous course of treatment?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:291 msgid "no zombied course found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:294 msgid "" "a situation COULD arise where a new course was started but the client lost " "connectivity crashed (without cleaning up the temporary row in the " "currtrtmt2 table)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/course_module.py:298 msgid "Do you wish to recover this row now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:140 msgid "polling database..." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:148 msgid "Bad Query" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/daybook_module.py:151 msgid "Unknown Error" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:175 msgid "Usercode" msgstr "Kullanıcı kodu" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:179 msgid "brief description" msgstr "Kısa tanım" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:181 msgid "Gross Fee" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fee_table_model.py:183 msgid "Charge to Patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:154 msgid "error applying payment.... sorry!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:155 msgid "This shouldn't happen - please report as an urgent bug" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:234 msgid "Reload feescales now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:257 msgid "Add to tx plan" msgstr "Tx planına ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:260 msgid "not yet available" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:265 msgid "Add to tx plan of patient" msgstr "hastanın tx planına ekle" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:304 msgid "Items containing" msgstr "Şunu içeren ögeler" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:310 msgid "phrase not found in feetable" msgstr "ifade ücret tablosunda bulunamadı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:312 msgid "itemcodes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:314 msgid "usercodes or descriptions" msgstr "kullanıcı kodları ya da tanımlamalar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:328 msgid "IN CURRENT USE" msgstr "ŞU AN KULLANIMDA" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:341 msgid "fee table error" msgstr "ücret tablosu hatası" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:373 msgid "Move this patient to Bad Debt Status?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:382 msgid "changed patient's status to BAD DEBT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:390 msgid "Loading Accounts Table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Dent" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "First" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:396 msgid "Last" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "DOB" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Bill" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:397 msgid "Last Tx" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "Number" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:398 msgid "T/C" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/fees_module.py:431 msgid "Under Treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:110 msgid "Shortcut tester" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:171 msgid "This feescale handles" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/feescale_tester.py:172 msgid "as a complex code for the following attributes." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:174 msgid "was not found in the patient's default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:149 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:176 msgid "It is matched in another feescale -" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:179 msgid "Shall we add this item from this feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:239 msgid "treatment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:241 msgid "has not been succesfully priced" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:242 msgid "Please edit the estimate manually" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:289 msgid "Were these xrays taken today?" msgstr "Bu radyografiler bugün mü alındı?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:322 msgid "Some of the xrays you completed were already planned." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:404 msgid "Complete" msgstr "Tamamlanmış" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:414 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:463 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:98 msgid "Cancel" msgstr "İptal Et" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:452 msgid "Reverse and Delete" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:459 msgid "Reverse" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:544 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:358 msgid "Choose" msgstr "Seç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "OK to add" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:545 msgid "to patient attribute" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:546 msgid "Recommended" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 msgid "to overide this behaviour" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:547 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:610 msgid "Use Feescale Method" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:548 msgid "Cancel to abandon this addition entirely" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:550 msgid "Help" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:562 msgid "Confirm you wish to use feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:564 msgid "for this item" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:565 msgid "The patient's default table is" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:599 msgid "" "You appear to be adding a relatively straightforward code to the patient's " "treatment plan using their default feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:602 msgid "It is normally advisable to add this code conventionally." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:603 msgid "Would you like to do this now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:630 msgid "were added conventionally" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:638 msgid "Exam items can never be added this way" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:642 msgid "" "This item can not be added to the treatment plan using the feescale method, " "sorry" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "added to estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:686 msgid "from feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:923 msgid "Couldn't find" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:925 msgid "in the patient's estimate" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:926 msgid "This Shouldn't Happen!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:992 msgid "couldn't pass on delete message for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/fees/manipulate_plan.py:1060 msgid "Estimate recalculated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py:44 msgid "Feescale Choice Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:57 msgid "No Match Found" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py:65 msgid "Compare Items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:49 msgid "Diff Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:54 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:100 msgid "Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:74 msgid "Show Standard Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:75 msgid "Show Full Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:228 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:199 msgid "Quit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py:255 msgid "Files are identical" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:93 msgid "Compare" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:95 msgid "with similar ids in other feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:124 msgid "Feescale Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:104 msgid "Preferences Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:152 msgid "Diffs Toolbar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:159 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:110 msgid "&Edit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:160 msgid "&Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:163 msgid "Diffs" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:173 msgid "Pull" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:175 msgid "generate local files containing the database feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:178 msgid "Commit" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:179 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:123 msgid "Commit changes to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:182 msgid "New Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:183 msgid "Create a Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:186 msgid "Save File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:188 msgid "Save Current File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:191 msgid "Save File As" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:192 msgid "Save Current File to a new location" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:195 msgid "Save All Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:196 msgid "Save All Local Files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:200 msgid "refresh local files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:129 msgid "Search current file for first forward match of entered text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:208 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:131 msgid "Find Again" msgstr "Tekrar Bul" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:210 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:133 msgid "Search current file again for text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:212 msgid "Increase/decrease fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:213 msgid "Apply a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:215 msgid "Round fees up/down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:217 msgid "Round fees up or down to a specified accuracy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:220 msgid "Relate charges to fees by percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:223 msgid "Zero Patient Contributions" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:225 msgid "Set all patient charges to Zero in the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:230 msgid "Show Database Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:232 msgid "" "Show the diff between the current file and the corresponding file stored in " "the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:235 msgid "Compare 2 Feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:237 msgid "Show the diff between the current file and a selected other" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:149 msgid "XML tidy" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:283 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:153 msgid "Check Well Formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:286 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:156 msgid "Check Validity" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:345 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:193 msgid "advisory" msgstr "öneri" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:365 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:213 msgid "WARNING - you have unsaved changes!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:366 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:214 msgid "Are you sure you want to quit?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:392 msgid "has been deleted!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:393 msgid "Save now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:401 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:745 msgid "File Saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:408 msgid "has been modified!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:409 msgid "Do you want to reload now and lose current changes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:410 msgid "Do you want to reload now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:455 msgid "unable to parse file" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:489 msgid "You appear to have no feescales installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:508 msgid "Local Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:509 msgid "differs from the database version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:510 msgid "Do you wish to overwrite it with the stored data?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:516 msgid "Show Diff" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:518 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:530 msgid "Keep Local File Unchanged" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:520 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:529 msgid "Overwrite Local File" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:571 msgid "feescale is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:575 msgid "feescale is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:582 msgid "feescale is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:630 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:338 msgid "Find Text" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:631 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:339 msgid "Please enter the text you wish to search for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:639 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:347 msgid "not found" msgstr "bulunamadı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:675 msgid "Zero all patient charges in the current feescale?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:685 msgid "Save all files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:701 msgid "Files saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:725 msgid "save as" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:727 msgid "xml_files" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:737 msgid "Copy saved to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:739 msgid "Reload files to edit the new feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:748 msgid "File not saved" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:756 msgid "" "Warning - you have unsaved changes, if you refresh now, these will be lost" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:758 msgid "Refresh anyway?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:769 msgid "Please save local files before pushing to database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:774 msgid "update all existing feescales with data from the local files?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:790 msgid "Insert new Feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:801 msgid "" "your local files will now be moved to comply with the database indexes they " "have been given" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:847 msgid "you have no other files available for comparison" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:851 msgid "Which feescale would you like to compare with the current feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_editor.py:855 msgid "Please make a choice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:57 msgid "apply to gross fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:59 msgid "apply to charges" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:88 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:170 msgid "Please enter a percentage" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:99 msgid "gross fees have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:101 msgid "charges have been increased by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:112 msgid "Please enter the precision you require" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:116 msgid "round down" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:117 msgid "round up" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:119 msgid "round up/down to nearest value" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:153 msgid "rounded up to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:155 msgid "rounded down to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:157 msgid "rounded to the nearest" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:160 msgid "gross fees have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:162 msgid "charges have been" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:177 msgid "Leave Zero Charges as Zero" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "charges set at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py:188 msgid "of the fees" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:99 msgid "feescale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:290 msgid "Unknown TableName" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/feescale_parser.py:300 msgid "Unknown Description" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:52 msgid "New Feescale Dialog" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py:55 msgid "" "Click Apply to create a new local feescale file which can be modified and " "then inserted into the database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:201 msgid "Delete %d Posts?" msgstr "%d gönderileri sil?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:213 msgid "Delete selected Post?" msgstr "Seçili Gönderiyi sil?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:260 msgid "Parenting Cancelled" msgstr "Parenting iptal edildi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/forum_gui_module.py:265 msgid "Click on the Parent Item" msgstr "Ana Öge üzerine tıklayınız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:236 msgid "OFFLINE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:260 msgid "connected to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:264 msgid "CRITICAL MESSAGE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:310 msgid "Login Cancelled- Closing Application" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:314 msgid "Login by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:327 msgid "Warning - ignoring schema check!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:331 msgid "database schema is up to date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:335 msgid "database schema is incompatible" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:348 msgid "" "Sorry, you cannot run this version of the openMolar client because your " "database schema is more advanced." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:350 msgid "this client requires schema version " msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:352 msgid "but your database is at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:354 msgid "Please Update openMolar now" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:359 msgid "This openMolar client has fallen behind your database schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:361 msgid "This client was written for schema version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:363 msgid "and your database is now at" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:365 msgid "" "However, the differences are not critical, and you can continue if you wish" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:367 msgid "It would still be wise to update this client ASAP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:368 msgid "Do you wish to continue?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:372 msgid "Proceed without upgrade?" msgstr "Güncelleme yapmadan devam edilsin mi ?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:552 msgid "changed clinician to" msgstr "klinisyen değiştirildi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:559 msgid "changed assistant to" msgstr "yardımcı değiştirildi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:649 msgid "Add comment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:650 msgid "Add a comment to tooth" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:688 msgid "You have unsaved changes to the record of" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:921 msgid "You have no dentists in your database." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:931 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:951 msgid "is no longer an active dentist in this practice" msgstr "bu muayenehanede artık aktif olarak çalışmayan bir diş doktorudur" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:934 msgid "unknown contract dentist - please correct this" msgstr "bilinmeyen diş doktoru - lüften bu durumu düzeltin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:949 msgid "Course dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1012 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1025 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1092 msgid "Re-open" msgstr "Yeniden aç" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1013 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1026 msgid "Do you want to review and/or reprint this item?" msgstr "" "Bu ögenin gözden geçirilmesi ve/veya yeniden basılmasını ister misiniz?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1043 msgid "No information available about this document, sorry" msgstr "Bu belge hakkında herhangi bir bilgi bulunmamakta, özür dileriz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1053 msgid "Date imported" msgstr "Aktarılma tarihi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1055 msgid "Size" msgstr "Boyut" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1057 msgid "Index" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1075 msgid "opening" msgstr "açılıyor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1079 msgid "error importing file" msgstr "dosyaların içeri aktarımında hata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1081 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1772 msgid "no file chosen" msgstr "herhangi bir dosya seçilmemiş" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1093 msgid "Do you want to open a copy of this document?" msgstr "Bu belgenin bir kopyasını açmak ister misiniz?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1107 msgid "error opening document" msgstr "belge açılmasında hata" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1118 msgid "Today's Patients" msgstr "Günün hastaları" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1121 msgid "Today's Patients (ALL)" msgstr "Günün hastaları (TAMAMI)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1177 msgid "Reached End of Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1191 msgid "Reached Start Record History" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1254 msgid "Patient already loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1259 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1757 msgid "Not loading patient" msgstr "Hastayı yükleyemiyor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1280 msgid "Error populating interface" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1316 msgid "Reloading record" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1360 msgid "MH form has never been completed!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1361 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1370 msgid "PLEASE GET MH FORM" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1366 msgid "Form confirmed by patient on" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1448 msgid "Setting" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1450 msgid "as patient's dentist" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1482 msgid "Please set a Valid Course Type for this patient" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1517 msgid "Message from" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1519 msgid "Dated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1612 msgid "Active Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1613 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1621 msgid "started" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1623 msgid "completed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1627 msgid "Resume Existing Course" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1648 msgid "NO CLINICIAN SET" msgstr "HERHANGİ BİR KLİNİSYEN AYARLANMADI" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1650 msgid "You are in surgery mode without a clinician" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1654 msgid "CLINICIAN" msgstr "KLİNİSYEN" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1658 msgid "team" msgstr "takım" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1659 msgid "using" msgstr "kullanarak" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1660 msgid "mode" msgstr "kip" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Miss" msgstr "Miss" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mr" msgstr "Bay" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Mrs" msgstr "Bayan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1671 msgid "Ms" msgstr "Bayan" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Dr" msgstr "Dr" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Master" msgstr "Master" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1672 msgid "Professor" msgstr "Profesör" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1723 msgid "NEW FORUM POSTS" msgstr "YENİ FORUM POSTASI" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1761 msgid "opening patient file" msgstr "hasta dosyasını açıyor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1875 msgid "Updated/Checked Medical Notes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1912 msgid "POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS" msgstr "PT KAYITLARI İLE POTANSİYEL OLAN CİDDİ BİR KARIŞIKLIK SORUNU" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:1914 msgid "AND" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2099 msgid "no record selected" msgstr "herhangi bir kayıt seçilmedi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2116 msgid "FontSize" msgstr "Font büyüklüğü" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2117 msgid "Enter your preferred font size for appointment book" msgstr "Randevu defteri için tercih ettiğiniz font büyüklüğünü giriniz" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2311 msgid "Moving existing treatment from plan to completed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2730 msgid "use the checkboxes on the notes tab to control what is printed." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:2748 msgid "updated med form check date" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3253 msgid "Recalculate Estimate is not normally used on closed courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3261 msgid "Scrap the estimate and re-price everything?" msgstr "Tahmini değeri sil ve herşeyi yeniden ücretlendir?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3262 msgid "Custom items and items added using feescale method will be unaffected" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3280 msgid "apply an exemption to the NHS items on this estimate?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3286 msgid "input needed" msgstr "girdi gereklidir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3287 msgid "maximum charge for the patient" msgstr "hasta için maksimum ücret" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3288 msgid "please enter the amount in pence, or leave as 0 for full exemption" msgstr "" "lütfen miktarı kuruş olarak giriniz, ya da ihmal için 0 olarak bırakınız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3331 msgid "Relatives" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3334 msgid "Family ID" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3337 msgid "Member(s)" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3341 msgid "No Patient Loaded" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3365 msgid "error loading feetable" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3378 msgid "Reloading feescales from database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3600 msgid "New user added to login table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3605 msgid "Please exit any record before taking this action" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3614 msgid "Practice Name and/or Address modified." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3650 msgid "Record is locked by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3656 msgid "Record also used by" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/maingui.py:3686 msgid "Bookend altered to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:43 msgid "Use details from the previous record?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:63 msgid "Start a new family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:73 msgid "Add the new patient to this family group?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:142 msgid "Error saving new patient, sorry!" msgstr "Hata yeni hastanı kaydedilmesinde hata, özür dileriz!" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:149 msgid "" "insufficient data to create a new record.please fill in all highlighted " "fields" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/new_patient_gui.py:188 msgid "New Patient not saved." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:47 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:68 msgid "Shade" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py:128 msgid "Phrase Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:84 msgid "Phrasebook Editor" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:118 msgid "New Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:119 msgid "Create a new clinician phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:122 msgid "Commit to Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:244 msgid "Global Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:265 msgid "You appear to have no phrasebooks installed in your database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:291 msgid "Phrasebook is well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:295 msgid "Phrasebook is not well formed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:301 msgid "Phrasebook is valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:355 msgid "Everyone has a phrasebook already!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:359 msgid "A phrasebook for which clinician?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:367 msgid "commit all local files to database?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "Phrasebook" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:378 msgid "is not valid" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Books" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py:384 msgid "Updated" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:127 msgid "STATEMENT OF ACCOUNT - FINAL REMINDER" msgstr "HESAP BİLDİRİMİ - SON HATIRLATICI" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:132 msgid "We are concerned that despite previous correspondance," msgstr "Önceki örtüşmeye rağmen endişeliyiz." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:137 msgid "your account still stands as follows: " msgstr "hesabınız halen şu şekilde bulunmaktadır: " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:142 msgid "Please note that your account stands as follows:- " msgstr "Hesabınızın şu şekilde olduğunu lütfen not alınız:- " #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:144 msgid "Amount : %s" msgstr "Miktar %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:147 msgid "This amount is now due in full. *" msgstr "Bu miktar şu an tamdır.*" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:152 msgid "A previous account was sent out to you on %s" msgstr "geçmiş bir hesap %s üzerinde size gönderilmiştir" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:158 msgid "" "It would be appreciated if you would settle this matter as soon as possible." msgstr "" "Bu konuyu olabildiğince çabuk bir şekilde çözebilirseniz memnun oluruz." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:163 msgid "It would be appreciated if this account is settled within seven days." msgstr "" "Bu hesabın yedi gün içinde kapatılması memnuniyetler karşılanacaktır." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:168 msgid "On this deadline, we will pass this debt to" msgstr "Bu vadede; bu borcu şuraya aktaracağız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:173 msgid "Scott & Company Sheriff Officers for collection." msgstr "Tahsilat için muhasebe" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:176 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:55 msgid "Yours sincerely," msgstr "Saygılarımızla" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:191 msgid "* Cheques payable to: \"Academy Dental Practice\"\n" msgstr "Çek ödemeleri yapılabilir\n" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/accountPrint.py:192 msgid "Or telephone us with your switch/visa/mastercard details." msgstr "" "Ya da bize switch/visa/mastercard ayrıntıları için telefonla ulaşınız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:45 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:39 msgid "We are writing to inform you that your dental examination is now due." msgstr "Size diş muayene zamanınızın geldiğini bildirmek için yazmaktayız." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:46 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:42 msgid "Please contact the surgery to arrange an appointment. *" msgstr "" "Lütfen uygun bir randevu ayarlamak üzere Randevu merkezimiz ile temasa geçin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:50 msgid "" "We are writing to inform you that your dental examinations are now due." msgstr "Size diş muayene zamanınızın geldiğini bildirmek için yazmaktayız." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:52 msgid "Please contact the surgery to arrange suitable appointments. *" msgstr "Lütfen uygun bir randevu ayarlamak üzere Cerrahi ile temasa geçin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:57 msgid "" "* P.S If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:60 msgid "" "We are currently accepting new patients to the practice.We would be " "delighted if you would recommend us to your friends and family." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:131 msgid "our ref" msgstr "bizim ref" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:149 msgid "Patients" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:324 msgid "no data loaded" msgstr "herhangi bir veri yüklenmedi" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:356 msgid "options set" msgstr "seçenekler ayarlandı" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/bulk_mail.py:375 msgid "Collapse All" msgstr "Tümünü Küçült" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:102 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:114 msgid "Daylist for" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:122 msgid "Len" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:123 msgid "Name" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:114 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:126 msgid "Treat" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/multiDayListPrint.py:127 msgid "memo" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:127 msgid "mins" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/daylistprint.py:148 msgid "Printed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:103 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:231 msgid "NHS items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/estimatePrint.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:232 msgid "Private items" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/gp17/gp17_printer.py:54 msgid "Print an NHS form now?" msgstr "NHS formunu şimdi yazdır?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:130 msgid "NO" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:144 msgid "YES" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:180 msgid "Confidential Medical History Questionaire" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:199 msgid "PLEASE CHECK/COMPLETE THESE DETAILS" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 msgid "Home tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:205 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Work tel" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 msgid "Email" msgstr "E-Posta" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:206 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:237 msgid "Alternate Email" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:226 msgid "Name & Address" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:253 msgid "Please Circle" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:255 msgid "If 'YES' - Give Details" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:258 msgid "ARE YOU CURRENTLY?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:263 msgid "Taking any prescribed medicines?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:289 msgid "Carrying a Medical Warning Card?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:306 msgid "Pregnant or Breast Feeding?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:313 msgid "DO YOU SUFFER FROM?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:318 msgid "Allergies to Any Medicines or Substances?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:320 msgid "eg. Penicillin, aspirin or latex." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:336 msgid "Bronchitis, Asthma, other Chest Conditions?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:353 msgid "Heart Problems, Angina, Blood pressure" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:355 msgid "problems, or a stroke?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:370 msgid "Diabetes?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:385 msgid "Arthritis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:401 msgid "Bruising or persistant bleeding after" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:403 msgid "surgery or tooth extraction?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:418 msgid "Any Infectious Diseases" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:419 msgid "(including HIV and Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:436 msgid "DID YOU, AS A CHILD OR SINCE HAVE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:440 msgid "Bacterial Endocarditis?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:457 msgid "Liver Disease (eg. Jaundice or Hepatitis)?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:475 msgid "A bad reaction to a Local or General Anaesthetic?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:492 msgid "A joint replacement or other implant?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:508 msgid "Heart Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:524 msgid "Brain Surgery?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:539 msgid "Treatment that required you to be" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:541 msgid "in Hospital?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:556 msgid "A close relative with Creutzfeldt Jacob Disease?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:578 msgid "" "PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK MAY BE RELEVANT TO YOUR DENTIST" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/mh_print.py:590 msgid "Patient's Signature" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:80 msgid "PDF is NONE - (tell devs this happened)" msgstr "PDF yok - (devs'e bunun meydana geldiğini bildirin)" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:88 msgid "Error saving PDF copy %s" msgstr "Hata PDF kopyasını kaydediyor %s" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:132 msgid "letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:151 msgid "Nothing to print - have you loaded the table?" msgstr "Yazdırılacak belge yok - tabloyu yüklediniz mi?" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:155 msgid "" "DentSerialNoCset\n" "FNameSnameDOBMemoLast Appt\n" "Last BillTypeNumberComplete\n" "Amount" msgstr "" "DentSeriNoCset\n" "FAdıSadıDOBNotSon Rndv\n" "Son faturaTipNumaraTamamlandı\n" "Miktar" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:216 msgid "Estimate for your current course of treatment." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:253 msgid "" "TOTAL\n" "%s" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/om_printing.py:257 msgid "" "

Please note, this estimate may be subject\n" "to change if clinical circumstances dictate.

" msgstr "" "

Lütfen bu tahmini değerin klinik şartlar\n" "gerektirdiğinde değişebileceğini göz önünde bulundurunuz.

" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:45 msgid "We look forward to seeing you in the near future." msgstr "Sizi yakın bir zamanda görmek için sabırsızlanıyoruz." #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:107 msgid "Dear %s %s," msgstr "Sayın %s %s," #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/recallprint.py:134 msgid "" "* If you already have a future appointment with us - please accept our " "apologies and ignore this letter." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/printing/receiptPrint.py:154 msgid "Thankyou for your custom." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:256 msgid "Please specify a clinician" msgstr "lütfen bir klinisyen seçin" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:320 msgid "You need to select a patient before performing this action." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:325 msgid "Patient doesn't have a dentist set" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:326 msgid "please correct this before using these shortcuts" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:397 #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:486 msgid "No appointment selected" msgstr "seçili randevu yok" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:477 msgid "Error putting into dentist's book" msgstr "diş doktorunun kitapçığına işleme hatası" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:517 msgid "Modify Appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:520 msgid "Schedule these appointments" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:525 msgid "Schedule this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:531 msgid "Delete this (unscheduled) appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:535 msgid "Show in Book" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/pt_diary_widget.py:541 msgid "Cancel this appointment" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:43 msgid "Update required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:44 msgid "" "Your Openmolar database schema is out of date for this version of the client." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:48 msgid "Would you like to Upgrade Now?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:49 msgid "WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:52 msgid "" "Sorry, you cannot run this version of the openmolar client without updating " "your database schema." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:56 msgid "" "Sorry, we seem unable to update your schema at this point, Perhaps you have " "grabbed a development version of the program?" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:59 msgid "" "If this is not the case, something odd has happened, please let the " "developers of openmolar know ASAP." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:75 msgid "Updating Database" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:86 msgid "Continue" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:103 msgid "Schema Update Required" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:112 msgid "Operation Cancelled." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:150 msgid "Converting Database Schema from version" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:152 msgid "to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:158 msgid "upgrading to schema version" msgstr "Şema versiyonuna güncelleniyor" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:171 msgid "Conversion to %s failed" msgstr "%s'ye dönüştürülme başarısız" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:174 msgid "Schema Upgrade Halted" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:180 msgid "" "Unexpected Error updating the schema please file a bug at " "http:www.openmolar.com" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:194 msgid "All updates successully applied!" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/qt4gui/schema_updater.py:197 msgid "continuing to openmolar" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:165 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:62 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:321 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:104 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:63 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:138 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:293 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:65 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:263 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:68 msgid "creating new tables" msgstr "yeni tablolar oluşturuluyor" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_0to1_1.py:177 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:340 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:314 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:122 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:150 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:100 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:252 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:241 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:81 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:154 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:80 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:137 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:278 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:83 msgid "Successfully moved db to" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_1to1_2.py:111 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:338 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:93 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:142 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:312 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:148 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:98 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:250 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:239 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:134 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:79 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:77 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:152 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:306 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:135 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:83 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:81 msgid "updating stored schema version" msgstr "saklanan şema versiyonu güncelleniyor" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_2to1_3.py:64 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:334 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:89 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:139 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:310 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:118 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:145 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:95 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:245 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:236 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:129 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:74 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:113 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:72 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:147 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:301 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:73 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:130 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:271 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_1to3_2.py:78 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_2to3_3.py:76 msgid "updating settings" msgstr "ayarlar güncelleniyor" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_3to1_4.py:326 msgid "copying data across from old feetable" msgstr "eski ücret tablosundan veri kopyalanıyor" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_4to1_5.py:85 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:133 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:229 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:182 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:211 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:113 msgid "transfering data" msgstr "veri transferi" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_5to1_6.py:136 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:308 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_7to1_8.py:115 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:142 msgid "inserting values" msgstr "değerlerin girilmesi" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_6to1_7.py:305 msgid "executing statements" msgstr "çalıştırma ifadeleri" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:134 msgid "converting note" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_8to1_9.py:140 msgid "creating new tables and indexes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:89 msgid "creating new appt_prefs table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:91 msgid "copying data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema1_9to2_0.py:93 msgid "statements executed" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:236 msgid "creating currtrtmt2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:238 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:107 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:66 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:141 msgid "transferring data" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_0to2_1.py:242 msgid "deleting void courses" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:230 msgid "creating tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:232 msgid "populating est_link table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_1to2_2.py:234 msgid "populating feescales" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:120 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:68 msgid "creating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:123 msgid "populating est_link2 table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_2to2_3.py:126 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_3to2_4.py:71 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_4to2_5.py:110 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_5to2_6.py:69 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_6to2_7.py:144 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:298 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_8to2_9.py:70 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:127 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:268 msgid "executing cleanup statements" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:258 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:264 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:270 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:276 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:282 msgid "pulling information from patient table" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:261 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:267 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:273 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:279 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_7to2_8.py:285 #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:212 msgid "inserting information into new tables" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema2_9to3_0.py:115 msgid "XRay Request Letter" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:206 msgid "inserting medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:210 msgid "pulling information from mednotes" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:226 msgid "Unkown medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/schema_upgrades/schema3_0to3_1.py:233 msgid "Previous medications" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:249 msgid "feesscale" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:251 msgid "Failed to Load" msgstr "yüklenemedi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:558 msgid "OTHER TREATMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/fee_tables.py:695 msgid "No reason given by feescale author." msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:66 msgid "translation tools are installed successfully" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:86 msgid "Please try and give at least 24 hours notice" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:87 msgid "if you need to change an appointment." msgstr "bir randevuyu değiştirmeye ihtiyaç duyarsanız" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:332 msgid "EXAM" msgstr "MUA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:333 msgid "BITE" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:334 msgid "BT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:335 msgid "FAMILY" msgstr "AİLE" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:336 msgid "FILL" msgstr "DOLGU" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:337 msgid "FIT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:338 msgid "HYG" msgstr "HİJ" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:339 msgid "IMPS" msgstr "İMP" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:340 msgid "LF" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:341 msgid "ORTHO" msgstr "ORTO" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:342 msgid "PAIN" msgstr "AĞRI" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:343 msgid "PREP" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:344 msgid "RCT" msgstr "RCT" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:345 msgid "RECEMENT" msgstr "" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:346 msgid "REVIEW" msgstr "Gözden geçirme" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:347 msgid "SP" msgstr "SP" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:348 msgid "TRY" msgstr "TRY" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:349 msgid "XLA" msgstr "XLA" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Monday" msgstr "Pazartesi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Thursday" msgstr "Perşembe" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:522 msgid "Tuesday" msgstr "Salı" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Friday" msgstr "Cuma" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Saturday" msgstr "Cumartesi" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:523 msgid "Sunday" msgstr "Pazar" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:558 msgid "January" msgstr "Ocak" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:559 msgid "February" msgstr "Şubat" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:560 msgid "March" msgstr "Mart" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:561 msgid "April" msgstr "Nisan" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:562 msgid "May" msgstr "Mayıs" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:563 msgid "June" msgstr "Haziran" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:564 msgid "July" msgstr "Temmuz" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:565 msgid "August" msgstr "Ağustos" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:566 msgid "September" msgstr "Eylül" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:567 msgid "October" msgstr "Ekim" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:568 msgid "November" msgstr "Kasım" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:569 msgid "December" msgstr "Aralık" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:601 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "None" msgstr "Yok" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:606 msgid "Tomorrow" msgstr "Yarın" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:608 #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:618 msgid "Yesterday" msgstr "Dün" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:913 msgid "Welcome to OpenMolar!" msgstr "Openmolar'a Hoşgeldiniz!" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:914 msgid "Version" msgstr "Versiyon" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:916 msgid "Your Data is Accessible, and the server reports no issues." msgstr "" "verileriniz erişilebilir durumda ve server herhangi bir sorun bildirmiyor" #: /home/neil/openmolar/openmolar1/src/openmolar/settings/localsettings.py:917 msgid "Have a great day!" msgstr "İyi günler" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:42 msgid "Please complete the following form" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:56 msgid "host" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:57 msgid "port" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:58 msgid "database" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:59 msgid "user" msgstr "kullanıcı" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:60 msgid "password" msgstr "parola" #: /home/neil/openmolar/openmolar1/src/standalone_chart/lib_om_chart/config_dialog.py:61 msgid "Surgery number" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:109 msgid "Quit Application?" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:131 msgid "Manual Select" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:132 msgid "Select a serialno to load" msgstr "" #: /home/neil/openmolar/openmolar1/src/standalone_chart/om_chart.py:179 msgid "Do you really want to reconfigure this application?" msgstr "" openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/0000755000175000017500000000000013024000134021446 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/__init__.py0000644000175000017500000000312412710144045023572 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/course_checker.py0000644000175000017500000001771612710144045025033 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import datetime import logging import re from openmolar.dbtools.treatment_course import TreatmentCourse from openmolar.dbtools import estimatesHistory from openmolar.dbtools import daybook LOGGER = logging.getLogger("openmolar") class CourseChecker(object): ''' look to see if there is consistency accross three tables currtrtmt2, daybook and newestimates ''' def __init__(self, course, estimates, daybook_entries): self.course = course self.estimates = estimates self.daybook_entries = daybook_entries self._daybook_course = None self._courses_match = None @property def serialno(self): return self.course.serialno @property def courseno(self): return self.course.courseno @property def is_ongoing(self): return self.course.cmpd is None @property def days_at_course_end(self): if self.is_ongoing: return 0 dead_space = 0 for daybook_entry in self.daybook_entries: days = (self.course.cmpd - daybook_entry.date).days if dead_space > days: dead_space = days return dead_space @property def daybook_course(self): ''' This is the daybook entries converted to a Treatment Course ''' if self._daybook_course is None: self._daybook_course = TreatmentCourse(self.serialno, 0) self._daybook_course.courseno = self.courseno accd, cmpd = None, None for daybook_entry in self.daybook_entries: if not accd or daybook_entry.date < accd: accd = daybook_entry.date if not cmpd or daybook_entry.date > cmpd: cmpd = daybook_entry.date # diagn m = re.search("(E?CE) ", daybook_entry.diagn) if m: self._daybook_course.examt += m.groups()[0] self._daybook_course.examd = daybook_entry.date # xray for xray in re.findall(r"\d?[S|M|P] ", daybook_entry.diagn): self._daybook_course.xraycmp += xray # perio if daybook_entry.perio.strip(" "): self._daybook_course.periocmp += \ daybook_entry.perio.strip(" ") + " " # anaes if daybook_entry.anaes.strip(" "): self._daybook_course.anaescmp += \ daybook_entry.anaes.strip(" ") + " " # misc if daybook_entry.misc.strip(" "): self._daybook_course.customcmp += \ daybook_entry.misc.strip(" ") + " " # ndu if daybook_entry.ndu.strip(" "): self._daybook_course.nducmp += \ daybook_entry.ndu.strip(" ") + " " # ndl if daybook_entry.ndl.strip(" "): self._daybook_course.ndlcmp += \ daybook_entry.ndl.strip(" ") + " " # odu if daybook_entry.odu.strip(" "): self._daybook_course.oducmp += \ daybook_entry.odu.strip(" ") + " " # odl if daybook_entry.odl.strip(" "): self._daybook_course.odlcmp += \ daybook_entry.odl.strip(" ") + " " # other if daybook_entry.other.strip(" "): self._daybook_course.othercmp += \ daybook_entry.other.strip(" ") + " " # chart chart_entries = daybook_entry.chart.decode("utf8").split(" ") for chart_entry in chart_entries: m = re.match("([UL][LR][1-8]) (.*)", chart_entry) if m: att = "%scmp" % m.groups()[0].lower() tx = m.groups()[1] + " " self._daybook_course.__dict__[att] += tx if accd is None or (self.course.accd and self.course.accd < accd): self._daybook_course.accd = self.course.accd else: self._daybook_course.accd = accd self._daybook_course.cmpd = cmpd return self._daybook_course def completed_txs_match_daybook(self): for hash_, att, tx in self.course.completed_tx_hash_tups: print("checking '%s' '%s'" % (att, tx)) @property def results(self): message = "
    " if self.is_ongoing: message += "
  • %s
  • " % _("Course is still active") dead_days = self.days_at_course_end if dead_days: message += "
  • %s %d %s.
  • " % ( _("Course closed"), dead_days, _("days after last day treatment")) if not self.courses_match: message += "
  • %s
  • " % _( "Course doesn't tally with daybook entries") message += "
" return message if message != "
    " else _("No warnings") @property def courses_match(self): if self._courses_match is None: html = self.daybook_course.to_html() html1c = self.course.to_html(completed_only=True) self._courses_match = html == html1c return self._courses_match @property def has_errors(self): ''' currently this looks for consistency betwwen the daybook and treatment plan only ''' return (self.days_at_course_end > 0 or self.is_ongoing or not self.courses_match) def get_course_checker(serialno, courseno): course = TreatmentCourse(serialno, courseno) ests = estimatesHistory.getEsts(serialno, courseno) daybook_list = [] accd = datetime.date.today() if course.accd is None else course.accd cmpd = datetime.date.today() if course.cmpd is None else course.cmpd for daybook_entry in daybook.all_data(serialno): if accd <= daybook_entry.date <= cmpd: daybook_list.append(daybook_entry) return CourseChecker(course, ests, daybook_list) if __name__ == "__main__": serialno = 11956 courseno = 29749 course_check = get_course_checker(serialno, courseno) print(course_check.results) course_check.completed_txs_match_daybook() print(course_check.daybook_course.to_html()) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/debug_html.py0000644000175000017500000000734712710144045024160 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.dbtools import patient_class from openmolar.dbtools.treatment_course import CURRTRT_ATTS existing = "" def toHtml(pt, tableCalled=None, changesOnly=False): ''' this sub puts all the attributes found for patient 1 and patient 2 (normaly a deep copy of patient 1 taken at the moment of load from db) into an html table (for comparison) ''' global existing retarg = '
    ' # attribs=p1.__dict__.keys() # attribs.sort() attributesDict = {} if tableCalled == "Patient": attributesDict["Patient Table"] = patient_class.patientTableAtts elif tableCalled == "Treatment": attributesDict["Treatment Items"] = ("treatment_course",) elif tableCalled == "HDP": attributesDict["HDP"] = ("plandata",) elif tableCalled == "Estimates": attributesDict["Estimates"] = ("estimates", ) else: attributesDict["all attributes"] = list(pt.dbstate.__dict__.keys()) changes = False for key in sorted(attributesDict.keys()): attribs = attributesDict[key] if changesOnly: title = "%s (changes only)" % key else: title = key retarg += "

    %s

    " % title retarg += '' retarg += '' for att in sorted(attribs): orig = pt.__dict__[att] new = pt.dbstate.__dict__.get(att, "") if not changesOnly or str(orig) != str(new): changes = True retarg += '''''' % (att, orig, new) retarg += "
    Attributeorigchanged
    %s%s%s
    " existing = key if not changes: retarg += "
    No data or relevant changes found" retarg += '
    ' return retarg if __name__ == "__main__": from openmolar.settings import localsettings import sys localsettings.initiate() try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 29283 pt = patient_class.patient(serialno) print(toHtml(pt, changesOnly=True)) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/dec_perm.py0000644000175000017500000000551512710144045023617 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # def toSignedByte(val): lav = list(val) if lav[0] == "1": retarg = -128 i = 6 for c in lav[1:8]: if c == "1": retarg += 2 ** i i -= 1 else: retarg = 0 i = 7 for c in lav: if c == "1": retarg += 2 ** i i -= 1 return retarg def fromSignedByte(val): ''' this returns a bit by bit representation of a signed byte - used for deciduous tooth ''' if val >= 0: base = (128, 64, 32, 16, 8, 4, 2, 1) bstring = "" for b in base: if val >= b: bstring += "1" val -= b else: bstring += "0" else: base = (-64, -32, -16, -8, -4, -2, -1) bstring = "1" # set the negative bit for b in base: if val < b: bstring += "0" val -= b else: bstring += "1" return bstring if __name__ == "__main__": for byte in(-127, -126, -125, -8, 120, 32): print(byte, end=' ') result = fromSignedByte(int(byte)) print("chart =", result, end=' ') print("and back =", toSignedByte(result)) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/estimates.py0000644000175000017500000002364412710144046024043 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import copy import logging import re import sys from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") class TXHash(object): def __init__(self, hash_, completed=False): self.hash = hash_ self.completed = completed def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): ''' compare the object with another hash note - completion state is irrelevant ''' if isinstance(other, TXHash): return self.hash == other.hash return self.hash == other def __repr__(self): return "TXHash %s completed=%s" % (self.hash, self.completed) class Estimate(object): ''' this class has attributes suitable for storing in the estimates table ''' COMPLETED = 2 PARTIALLY_COMPLETED = 1 PLANNED = 0 def __init__(self): self.ix = None self.serialno = None self.courseno = None self.number = 1 self.itemcode = "-----" self.description = None self.fee = None self.ptfee = None self.feescale = None self.csetype = None self.dent = None self.tx_hashes = [] @property def completed(self): ''' returns a tri-state value. 0 = nothing completed 1 = some treatments completed 2 = all related treatments completed ''' if self.n_completed == len(self.tx_hashes): return 2 if self.n_completed == 0: return 0 return 1 @property def n_completed(self): n_completed = 0 for tx_hash in self.tx_hashes: if tx_hash.completed: n_completed += 1 return n_completed @property def interim_fee(self): if self.tx_hashes == []: return 0 return self.n_completed * self.fee // len(self.tx_hashes) @property def interim_pt_fee(self): if self.tx_hashes == []: return 0 return self.n_completed * self.ptfee // len(self.tx_hashes) def __repr__(self): return self.__str__() def __str__(self): return "Estimate (%s %s %s %s %s %s %s %s %s %s %s %s)" % ( self.ix, self.serialno, self.courseno, self.number, self.fee, self.ptfee, self.dent, self.itemcode, self.description, self.csetype, self.feescale, self.tx_hashes) @property def log_text(self): ''' estimate data formatted so as to be useful in a log || can be used to separate values ''' return "%s || %s || %s || %s || %s || %s || %s || %s||\n" % ( self.number, self.itemcode, self.description, self.csetype, self.feescale, self.dent, self.fee, self.ptfee) def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): return str(self) == str(other) def __ne__(self, other): return str(self) != str(other) def __lt__(self, other): try: return (self.itemcode.replace("-", "Z") < other.itemcode.replace("-", "Z")) except AttributeError: return False def __gt__(self, other): try: return (self.itemcode.replace("-", "Z") > other.itemcode.replace("-", "Z")) except AttributeError: return False def toHtmlRow(self): hash_string = "" for tx_hash in self.tx_hashes: hash_string += "
  • %s
  • " % tx_hash.hash if hash_string: hash_string = "
      %s
    " % hash_string else: hash_string = _("no treatments") if self.completed == 2: completed = _("Yes") elif self.completed == 1: completed = _("Partially") else: completed = _("No") return ''' %s %s %s %s %s %s %s %s %s %s ''' % (localsettings.ops.get(self.dent), self.number, self.itemcode, self.description, localsettings.formatMoney(self.fee), localsettings.formatMoney(self.ptfee), self.feescale, self.csetype, completed, hash_string) def htmlHeader(self): color_string = ' bgcolor="#ffff99"' sub_values = (color_string, _("Estimates for Course Number"), self.courseno) + (color_string,) * 10 return ''' %s %s Dentist number code Description fee pt fee feescale cset completed Hashes ''' % sub_values def filteredDescription(self): ''' removes {1 of 3} from the description ''' retarg = copy.copy(self.description) gunks = re.findall(" {.*}", retarg) for gunk in gunks: retarg = retarg.replace(gunk, "") return retarg @property def is_exam(self): ''' important that feescales use an itemcode that matches this! examples are 0101, 0111, 0121 can also be prepended with a single character eg E0101 ''' try: return bool(re.match(".?01[012]1$", self.itemcode)) except TypeError: return False @property def is_custom(self): return self.itemcode == "CUSTO" @property def has_one_tx(self): return len(self.tx_hashes) == 1 @property def has_multi_txs(self): return len(self.tx_hashes) > 1 def strip_curlies(description): ''' comments such as {2 of 2} are present in the estimates... this removes such stuff ''' if re.search("{.*}", description): return description[:description.index("{")] else: return description def sorted_estimates(ests): ''' compresses a list of estimates down into number*itemcode ''' def combineEsts(est): for se in combined_estimates: if se.itemcode == est.itemcode: if se.description == strip_curlies(est.description): # don't combine items where description has changed if est.number is not None and se.number is not None: se.number += est.number se.fee += est.fee se.ptfee += est.ptfee return True combined_estimates = [] for est in ests: if not combineEsts(est): ce = copy.copy(est) ce.description = strip_curlies(ce.description) combined_estimates.append(ce) return sorted(combined_estimates) def apply_exemption(pt, maxCharge=0): ''' apply an exemption ''' total = 0 for est in pt.estimates: if "N" not in est.csetype: continue if maxCharge - total >= est.ptfee: pass else: if maxCharge - total > 0: est.ptfee = maxCharge - total else: est.ptfee = 0 total += est.ptfee return True if __name__ == "__main__": from openmolar.dbtools import patient_class localsettings.initiate() try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 23664 pt = patient_class.patient(serialno) print("RAW") print(str(pt.estimates)) print("HTML") for estimate in pt.estimates: print(estimate.toHtmlRow()) print("SORTED") for estimate in sorted_estimates(pt.estimates): print(estimate.toHtmlRow()) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/formatted_notes.py0000644000175000017500000002225612730564733025253 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module replaces notes.py with schema version 1.9 ''' from collections import OrderedDict import logging import re import sys from openmolar.settings import localsettings from openmolar.dbtools import db_notes LOGGER = logging.getLogger("openmolar") # some user variables which determine the verbosity of the notes show_printed = False show_payments = False show_timestamps = False show_metadata = False # use these variables for the summary notes also? same_for_clinical = False HEADER = ''' ''' % localsettings.stylesheet def get_notes_dict(serialno, today_only=False): ''' ''' results_tuple = db_notes.notes(serialno, today_only) notes_dict = OrderedDict() for ndate, op1, op2, ntype, note in results_tuple: ops = op1 if op2: ops += "/%s" % op2 key = (ndate, ops) if key in notes_dict: notes_dict[key].append((ntype, note)) else: notes_dict[key] = [(ntype, note)] return notes_dict def s_t_l(note): ''' strip trailing linebreaks ''' return re.sub("(
    *)*$", "", note) def get_notes_for_date(lines, full_notes=False): ''' this is the actual user clinically relevant stuff! ''' def non_blocking_repl(m): return " " * m.end() txs = [] rev_txs = [] tx, note, metadata = "", "", "" for ntype, noteline in lines: if "NOTE" in ntype and noteline != "": note += "%s " % noteline.replace("<", "<").replace(">", ">") note = re.sub(r"^\s+", non_blocking_repl, note) else: if "TC" in ntype: txs.append((ntype, noteline.strip("\n"))) elif ntype == "UNCOMPLETED": rev_txs.append((ntype, noteline)) elif ntype == "UPDATED:Medical Notes": mh_message = (_("MED"), noteline.strip("\n")) if mh_message not in txs: txs.insert(0, mh_message) elif full_notes: if "RECEIVED" in ntype: receipt_text = noteline.replace("sundries 0.00", "") receipt_text = receipt_text.replace("treatment 0.00", "") if show_payments: tx += "%s %s
    " % (ntype, receipt_text) elif "PRINT" in ntype: if show_printed: tx += "%s %s
    " % (ntype, noteline) elif ntype in ("opened", "closed"): if show_timestamps: note += "%s %s
    " % (ntype, noteline) elif show_metadata: metadata += "%s%s
    " % (ntype, noteline) note = note.replace("\n", "
    ") for tuple_ in set(txs): n = txs.count(tuple_) ntype, treatment = tuple_ if n != 1: tx += "%d%s
    " % (n, treatment) else: tx += "%s
    " % treatment for tuple_ in rev_txs: ntype, treatment = tuple_ tx += "%s
    " % treatment return s_t_l(tx), s_t_l(note), s_t_l(metadata) def get_rec_summary(op, lines): ''' this is the reception summary (what has been charged and/or printed) ''' note_list = [] for ntype, noteline in lines: if "PRINTED" in ntype: note_list.append(' %s' % ( localsettings.printer_png, noteline)) elif "UPDATED" in ntype: note_list.append(' %s' % ( localsettings.medical_png, noteline)) elif "RECEIVED:" in ntype: noteline = noteline.replace("sundries 0.00", "") noteline = noteline.replace("treatment 0.00", "") note_list.append(' %s' % ( localsettings.money_png, noteline)) elif "REC" in op and ntype == "newNOTE": note_text = noteline.replace("<", "<").replace(">", ">>") if note_text.strip(" \n\r"): note_list.append('%s' % note_text) return "
    \n".join(note_list) def rec_notes(notes_dict, startdate=None): ''' returns an html string of notes, designed to fit into the reception notes panel (ie. vertical) ''' retarg = HEADER if startdate: retarg += "

    %s

    \n" % _("Course Activity") keys = list(notes_dict.keys()) # keys.sort() for key in keys: date, op = key if startdate and date >= startdate: lines = notes_dict[key] note = get_rec_summary(op, lines) if note: retarg += '

    \n   %s\n
    \n%s

    \n' % ( localsettings.formatDate(date), note) retarg += '\n' return retarg def summary_notes(notes_dict): return notes(notes_dict, same_for_clinical) def notes(notes_dict, full_notes=True): ''' returns an html string of notes... ''' retarg = HEADER + ''' ''' keys = list(notes_dict.keys()) if full_notes and show_metadata: retarg += '' retarg += '\n' previousdate = "" # necessary to group notes on same day rowspan = 1 newline = "" for key in keys: date, op = key data = notes_dict[key] tx, notes, metadata = get_notes_for_date(data, full_notes) if tx == "" and notes == "" and not show_metadata: continue newline += "\n" if date != previousdate: previousdate = date rowspan = 1 retarg += newline link = "" newline = ' ' % ( localsettings.notesDate(date), link) else: # alter the previous html, so that the rows are spanned rowspan += 1 newline = re.sub( 'class="date"( rowspan="\d")*', 'class="date" rowspan="%d"' % rowspan, newline) subline = '''' % (subline, tx, notes) if show_metadata: newline += '\n\n' % metadata else: newline += '\n\n' retarg += newline retarg += '
    Date ops Tx Notesmetadata
    %s %s%s' % op if (date == localsettings.currentDay() and op == localsettings.operator): subline += '
    %s' % _("Edit") newline += ''' %s
    %s %s%s
    ' return retarg def todays_notes(serialno): html = notes(get_notes_dict(serialno, True)) if not _("Today") in html: html = HEADER html += "%s %s" % ( _("No notes found"), serialno, _("Add a note")) return html.replace("__SNO__", str(serialno)) if __name__ == "__main__": import datetime LOGGER.setLevel(logging.DEBUG) from openmolar.dbtools import patient_class try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 303 # 1 notes_ = notes(patient_class.patient(serialno).notes_dict) print(notes_) notes_ = rec_notes( patient_class.patient(serialno).notes_dict, datetime.date(2015, 10, 1)) # print(notes_) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/hidden_notes.py0000644000175000017500000000440212710144045024476 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import re from openmolar.settings import localsettings def toHtml(pt): ''' return the patient HiddenNotes in a readable form ''' retarg = "" for ntype, note in pt.HIDDENNOTES: retarg += "%s
    " % note return retarg if __name__ == "__main__": import sys from openmolar.dbtools import patient_class localsettings.initiate() try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 1 pt = patient_class.patient(serialno) pt.addHiddenNote("exam", "CE ") pt.addHiddenNote("perio_treatment", "SP ") pt.addHiddenNote("printed", "appt card") print(pt.HIDDENNOTES) print(toHtml(pt)) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/nhsDetails.py0000644000175000017500000000625212710144045024136 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.settings import localsettings def toHtml(pt): ''' returns an HTML table of the patients pt ''' retarg = '''

    NHS DETAILS

    ''' retarg += "" % pt.exemption retarg += "" % pt.exempttext retarg += "" % pt.psn retarg += "" % pt.nhsno retarg += "" % ( localsettings.formatDate(pt.pd3)) retarg += "" % ( localsettings.formatDate(pt.pd12)) retarg += "" % ( localsettings.formatDate(pt.pd14)) retarg += "" % ( localsettings.formatDate(pt.expiry)) retarg += "" % ( localsettings.formatDate(pt.cstatus)) retarg += "" % ( localsettings.formatDate(pt.transfer)) if pt.sex == "F": retarg += "" % ( localsettings.formatDate(pt.cnfd)) retarg += '
    EXEMPTION%s
    EXEMPTION TEXT%s
    PREVIOUS SURNAME%s
    NHS NUMBER%s
    LAST CLAIM%s
    INITIAL ACCEPTANCE%s
    LAST REACCEPTANCE%s
    EXPIRY%s
    CSTATUS%s
    TRANSFER%s
    CONFINEMENT DATE%s
    ' return retarg if __name__ == "__main__": from openmolar.dbtools import patient_class localsettings.initiate(False) try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 707 pt = patient_class.patient(serialno) print(toHtml(pt.pt)) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/notes.py0000644000175000017500000003577212710144045023201 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module is deprecated with schema version 1.9 It is, however, legacy code required for the upgrade schema process ''' import datetime import re import sys from openmolar.settings import localsettings CHART = { 136: "UR8", 135: "UR7", 134: "UR6", 133: "UR5", 132: "UR4", 131: "UR3", 130: "UR2", 129: "UR1", 144: "UL1", 145: "UL2", 146: "UL3", 147: "UL4", 148: "UL5", 149: "UL6", 150: "UL7", 151: "UL8", 166: "LL8", 165: "LL7", 164: "LL6", 163: "LL5", 162: "LL4", 161: "LL3", 160: "LL2", 159: "LL1", 174: "LR1", 175: "LR2", 176: "LR3", 177: "LR4", 178: "LR5", 179: "LR6", 180: "LR7", 181: "LR8", 142: "URE", 141: "URD", 140: "URC", 139: "URB", 138: "URA", 153: "ULA", 154: "ULB", 155: "ULC", 156: "ULD", 157: "ULE", 172: "LLE", 171: "LLD", 170: "LLC", 169: "LLB", 168: "LLA", 183: "LRA", 184: "LRB", 185: "LRC", 186: "LRD", 187: "LRE"} def rec_notes(notes_dict): ''' returns an html string of notes, designed to fit into the reception notes panel (ie. vertical) ''' retarg = '''''' % localsettings.stylesheet keys = sorted(notes_dict.keys()) previousdate = "" # necessary to group notes on same day divopen = False for key in keys: date, op = key d = get_date_from_date(date) ests = get_estimate_for_date(notes_dict[key]) rec = get_reception_for_date(notes_dict[key]) if ests or rec: if d != previousdate: previousdate = d retarg += '
    %s' % d divopen = True retarg += "
      " if ests: retarg += '
    • %s
    • ' % ests if rec: rec = rec.replace("
    • ", '
    • ') rec = rec.replace("PRINTED:", '' % ( localsettings.printer_png)) rec = rec.replace("RECEIVED:", '' % ( localsettings.money_png)) retarg += rec retarg += "
    " if divopen: retarg += "
    " divopen = False retarg += '' return retarg def notes(notes_dict, verbosity=0, ignoreRec=False): ''' returns an html string of notes... if verbose=1 you get reception stuff too. if verbose =2 you get full notes ''' retarg = '''''' % localsettings.stylesheet keys = sorted(notes_dict.keys()) retarg += ''' ''' if verbosity > 0: retarg += '' if verbosity == 2: # this is for development/debugging purposes retarg += '' retarg += '' wstring = "70%" previousdate = "" # necessary to group notes on same day rowspan = 1 newline = "" for key in keys: date, op = key notes = get_notes_for_date(notes_dict[key]) if ("REC" in op and notes != "") or ( "REC" in op and not ignoreRec) or "REC" not in op: newline += "" d = get_date_from_date(date) if d != previousdate: previousdate = d rowspan = 1 retarg += newline newline = '' % d else: # alter the previous html, so that the rows are spanned rowspan += 1 newline = re.sub( 'class="date"( rowspan="\d")*', 'class="date" rowspan="%d"' % rowspan, newline) newline += '''''' % ( op, get_codes_for_date(notes_dict[key]), wstring, notes) ests = get_estimate_for_date(notes_dict[key]) rec = get_reception_for_date(notes_dict[key]) if verbosity > 0: newline += '' % rec elif rec == "" and ests != "": newline += '%s' % ests else: newline += "%s
    %s" % (ests, rec) if verbosity == 2: text = "" for item in notes_dict[key]: text += "%s
    " % str(item) newline += "" % text newline += "" retarg += newline retarg += '
    Date ops Tx NotesreceptionDetailed
    %s%s %s%s' if rec != "" and ests == "": newline += '%s%s
    ' return retarg def get_date_from_date(key): ''' converts to a readable date ''' try: k = key.split('_') d = datetime.date(int(k[0]), int(k[1]), int(k[2])) return localsettings.formatDate(d) # return k[2]+"/"+k[1]+"/"+k[0] except IndexError: return "IndexERROR converting date %s" % key except ValueError: return "TypeERROR converting date %s" % key def get_codes_for_date(line): code = "" for l in line: if "TC" in l[0]: code += "" tx = l[1] while len(tx) > 8 and " " in tx[8:]: pos = tx.index(" ", 8) code += "%s
    " % tx[:pos] tx = tx[pos:] code += "%s
    " % tx if code == "": return "-" else: return code def get_notes_for_date(line): ''' this is the actual user entered stuff! ''' note = "" for l in line: if "NOTE" in l[0]: mytext = l[1].replace("<", "<").replace(">", ">") note += "%s " % mytext match = re.search(r"[\n ]*$", note) if match: note = note[:note.rindex(match.group())] return note.replace("\n", "
    ") def get_reception_for_date(line): ''' was anything printed etc.... ''' recep = "" for action, value, user in line: value = value.replace("sundries 0.00", "") value = value.replace("==========", "") if (("PRINT" in action) or ("RECEIVED" in action) or ("FINAL" in action) or ("UNKNOWN" in action) or ("UPDATE" in action) or ("COURSE" in action)): recep += "
  • %s %s
  • " % (action, value) return recep def get_estimate_for_date(line): est = "" for l in line: if "ESTIMATE" in l[0]: est += "%s%s" % (l[0], l[1]) return est def decipher_noteline(noteline): ''' returns a list. ["type","note","operator","date"] ''' retarg = ["", "", "", ""] if len(noteline) == 0: # sometimes a line is blank return retarg # important - this line give us operator and date. if noteline[0] == chr(1): retarg[0] = "opened" operator = "" i = 1 while noteline[i] >= "A" or noteline[i] == "/": operator += noteline[i] i += 1 # arghh!!! 2 character year field!!!!!! workingdate = "%s_%02d_%02d" % (1900 + char(noteline[i + 2]), char(noteline[i + 1]), char(noteline[i])) retarg[2] = operator retarg[3] = workingdate try: systemdate = "%s/%s/%s" % ( char(noteline[i + 3]), char(noteline[i + 4]), 1900 + char(noteline[i + 5])) # systemdate includes time systemdate += " %02d:%02d" % ( char(noteline[i + 6]), char(noteline[i + 7])) retarg[1] += "System date - %s" % systemdate except IndexError as e: print("error getting system date for patient notes - %s", e) retarg[1] += "System date - ERROR!!!!!" elif noteline[0] == "\x02": # retarg[0] = "closed" operator = "" i = 1 while noteline[i] >= "A" or noteline[i] == "/": operator += noteline[i] i += 1 systemdate = "%s/%s/%s" % ( char(noteline[i]), char(noteline[i + 1]), 1900 + char(noteline[i + 2])) systemdate += " %02d:%02d" % ( char(noteline[i + 3]), char(noteline[i + 4])) retarg[1] += "%s %s" % (operator, systemdate) elif noteline[0] == chr(3): # hidden nodes start with chr(3) then another character if noteline[1] == chr(97): retarg[0] = "COURSE CLOSED" retarg[1] = "=" * 10 elif noteline[1] == chr(100): retarg[0] = "UPDATED:" retarg[1] = "Medical Notes " + noteline[2:] elif noteline[1] == chr(101): retarg[0] = "UPDATED:" retarg[1] = "Perio Chart" elif noteline[1] == chr(104): retarg[0] = "TC: XRAY" retarg[1] = noteline[2:] elif noteline[1] == chr(105): retarg[0] = "TC: PERIO" retarg[1] = noteline[2:] elif noteline[1] == chr(106): retarg[0] = "TC: ANAES" retarg[1] = noteline[2:] elif noteline[1] == chr(107): retarg[0] = "TC: OTHER" retarg[1] = noteline[2:] elif noteline[1] == chr(108): retarg[0] = "TC: NEW Denture Upper" retarg[1] = noteline[2:] elif noteline[1] == chr(109): retarg[0] = "TC: NEW Denture Lower" retarg[1] = noteline[2:] elif noteline[1] == chr(110): retarg[0] = "TC: Existing Denture Upper" retarg[1] = noteline[2:] elif noteline[1] == chr(111): retarg[0] = "TC: Existing Denture Lower" retarg[1] = noteline[2:] elif noteline[1] == chr(112): retarg[0] = "TC: EXAM" retarg[1] = noteline[2:] elif noteline[1] == chr(113): retarg[0] = "TC:" retarg[1] = tooth(noteline[2:]) elif noteline[1] == chr(114): retarg[ 0] = "STATIC: " # (1st line):" retarg[1] = tooth(noteline[2:]) elif noteline[1] == chr(115): retarg[0] = "PRINTED: " retarg[1] = "GP17(A)" elif noteline[1] == chr(116): retarg[0] = "PRINTED: " retarg[1] = "GP17(C)" elif noteline[1] == chr(117): retarg[0] = "PRINTED: " retarg[1] = "GP17(DC)" elif noteline[1] == chr(119): retarg[0] = "RECEIVED: " retarg[1] = noteline[2:] elif noteline[1] == chr(120): retarg[0] = "REVERSE PAYMENT:" retarg[1] = noteline[2:] elif noteline[1] == chr(121): retarg[ 0] = "STATIC: " # (additional Line):" retarg[1] = tooth(noteline[2:]) elif noteline[1] == chr(123): retarg[0] = "PRINTED: " retarg[1] = "GP17" elif noteline[1] == chr(124): retarg[0] = "PRINTED: " retarg[1] = "GP17PR" elif noteline[1] == chr(130): retarg[0] = "ESTIMATE: " retarg[1] = noteline[2:] elif noteline[1] == chr(131): retarg[0] = "INTERIM: " retarg[1] = noteline[2:] elif noteline[1] == chr(132): retarg[0] = "FINAL: " retarg[1] = noteline[2:] elif noteline[1] == chr(133): retarg[0] = "ACTUAL: " retarg[1] = tooth(noteline[2:]) elif noteline[1] == chr(134): retarg[0] = "FILED: " retarg[1] = "Claim" elif noteline[1] == chr(136): retarg[0] = "FILED: " retarg[1] = "Registration" elif noteline[1] == "v": retarg[0] = "PRINTED: " retarg[1] = noteline[2:] elif noteline[1] == chr(125): retarg[0] = "PRINTED: " retarg[1] = "GP17RA" elif noteline[1] == chr(98): retarg[0] = "WYSDOM ERROR: " retarg[1] = "PREVIOUS NOTES LOST" else: retarg[0] = 'UNKNOWN LINE: ' retarg[1] += "%s | " % noteline[1:] for ch in noteline[1:]: retarg[1] += "'%s' " % str(char(ch)) if "TC" in retarg[0]: retarg[1] = "%s" % retarg[1] elif noteline[0] == "\t": # this is the first character of any REAL line of old (pre MYSQL) notes retarg[0] = "oldNOTE" retarg[1] = "%s" % noteline[1:] else: # new note lines don't have the tab retarg[0] = "newNOTE" retarg[1] += "%s" % noteline return retarg def char(c): i = 0 while i < 256: if chr(i) == c: return i break i += 1 def tooth(data): # return str(data.split("\t")) retarg = "" for c in data: i = char(c) if i in CHART: retarg += CHART[i] + " " else: retarg += c return retarg if __name__ == "__main__": sys.path.append("/home/neil/openmolar") from openmolar.dbtools import patient_class try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 1 if "-v" in sys.argv: verbose = True else: verbose = False # print "getting notes" # print rec_notes(patient_class.patient(serialno).notes_dict) print(notes(patient_class.patient(serialno).notes_dict, verbose)) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/patientDetails.py0000644000175000017500000002003413021557654025016 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides an html summary of the patient's details ''' import datetime import logging import sys from openmolar.settings import localsettings from openmolar.dbtools import patient_class LOGGER = logging.getLogger("openmolar") def getAge(pt): ''' display the patient's age in human readable form ''' ageYears, months, isToday = pt.getAge() if isToday: return "
    %s %s
    " % (ageYears, _("TODAY!")) if ageYears > 18: return "(%syo)" % ageYears else: html = "
    %s %s" % ( ageYears, _("years") if ageYears == 1 else _("year")) html += " %s %s" % ( months, _("months") if months == 1 else _("month")) return html def header(pt): html = '''

    Patient %d

    %s %s %s

    %s %s
    ''' % ( localsettings.stylesheet, pt.serialno, pt.title.title(), pt.fname.title(), pt.sname.title(), localsettings.formatDate(pt.dob), getAge(pt)) address = (pt.addr1, pt.addr2, pt.addr3, pt.town, pt.county, pt.pcde) html += "
    ".join([l for l in address if l != ""]) if pt.pcde == "": html += "%s" % _("!UNKNOWN POSTCODE!") if pt.status not in ("Active", "", None): html += "

    %s

    " % pt.status return html def details(pt): ''' returns an html set showing pt name etc... ''' try: html = header(pt) + '
    ' if "N" in pt.cset: html += '''NHS
    ''' % localsettings.resources_path if pt.exemption != "": html += "%s=%s" % (_("exemption"), pt.exemption) else: html += _("NOT EXEMPT") html += "
    " elif "I" in pt.cset: html += '''HDP
    ''' % localsettings.resources_path elif "M" in pt.cset: html += '''HDP-Maint
    ''' % localsettings.resources_path elif "P" in pt.cset: html += '''PRIVATE
    ''' % localsettings.resources_path else: html += '%s = %s
    ' % (_("UNKNOWN COURSETYPE"), pt.cset) html += "%s
    " % pt.fee_table.briefName try: html += 'dentist = %s' % localsettings.ops[pt.dnt1] if pt.dnt2 != 0 and pt.dnt1 != pt.dnt2: html += '/%s' % localsettings.ops[pt.dnt2] except KeyError: html += '

    %s


    ' % _( "Please Set a Dentist for this patient!") if pt.underTreatment: html += '

    %s


    ' % _( "UNDER TREATMENT") if pt.memo != '': html += '

    %s

    %s
    ' % (_("Memo"), pt.memo) tx_dates = [ (_("Med Form"), pt.mh_form_date), (_("Med Notes"), pt.mh_chkdate), (_("Treatment"), pt.last_treatment_date), (_("IO xrays"), pt.pd9), (_("Panoral"), pt.pd8), (_("Scaling"), pt.pd10) ] letype, le_date = "", datetime.date(1, 1, 1) for i, date_ in enumerate((pt.pd5, pt.pd6, pt.pd7)): if date_ and date_ > le_date: le_date = date_ letype = ("(CE)", "(ECE)", "(FCA)")[i] if le_date == datetime.date(1, 1, 1): le_date = None if letype != "": tx_dates.append(('%s %s' % (_("Exam"), letype), le_date)) html += '

    %s

    ' % _("History") for i, (att, val) in enumerate(tx_dates): markup = ("", "") if i in (2, 6): markup = ("", "!!', "") elif i == 1: try: if pt.mh_chkdate < pt.mh_form_date: markup = ('', "") except TypeError: pass html += ''' ''' % (att, markup[0], localsettings.formatDate(val), markup[1]) html += "
    %s %s%s%s
    " html += "

    %s

    " % _("Recall") if pt.recall_active: month_start = datetime.date(localsettings.currentDay().year, localsettings.currentDay().month, 1) if pt.appt_prefs.recdent_period is None: html += _("Dentist recall disabled") elif pt.recd > month_start or pt.has_exam_booked: html += "%s " % localsettings.formatDate(pt.recd) html += _("(Exam Booked)") if pt.has_exam_booked else "" else: html += '
    %s
    %s
    ' % ( localsettings.formatDate(pt.recd), _("Exam Due")) if (pt.appt_prefs.rechyg_period and pt.appt_prefs.rechyg > month_start): html += '
    %s
    ' % ( _("Hygienist Due")) else: html += '
    %s
    ' % _("DO NOT RECALL") if pt.fees > 0: amount = localsettings.formatMoney(pt.fees) html += '

    %s = %s

    ' % (_("Account"), amount) if pt.fees < 0: amount = localsettings.formatMoney(-pt.fees) html += '

    %s %s

    ' % (amount, _("in credit")) if pt.has_changes: html += '

    %s

    ' % ( _("RECORD HAS UNSAVED CHANGES")) return '''%s\n
    ''' % html except Exception as exc: LOGGER.exception("error in patientDetails.details") return "error displaying details, sorry
    %s" % exc if __name__ == '__main__': localsettings.initiate() localsettings.loadFeeTables() try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 4792 print(details(patient_class.patient(serialno))) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/plan.py0000644000175000017500000001753412710144045022777 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re import sys from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") treatmentTypeHeaders = { "Diagnosis": ("Exam", "xray", "Diagnosis", "Preventive"), "Perio": ("perio", ), "Tooth": ("UL", "LL", "UR", "LR", "Conservation"), "Prosthetics": ("ndu", "nld", "odu", "odl", "Prosthetics"), "Other": ("other", "Surgical", "Occasional",), "Orthodontics": ("Orthodontics",), "Child Specific": ("Capitation",), "Custom": ("custom",)} templist = [] for quad in ("ur", "ul", "ll", "lr"): for tooth in range(1, 9): templist.append("%s%d" % (quad, tooth)) tup_toothAtts = tuple(templist) tup_Atts = ( 'xray', 'perio', 'anaes', 'other', 'ndu', 'ndl', 'odu', 'odl', 'custom') def plannedItems(pt): plannedList = [] if pt.treatment_course.examt != "" and not pt.treatment_course.examd: plannedList.append(("Exam", pt.treatment_course.examt),) for attrib in tup_Atts + tup_toothAtts: tx = pt.treatment_course.__dict__[attrib + "pl"] if tx not in ("", None): items = tx.strip(" ").split(" ") for item in set(items): if item == "": continue n = items.count(item) if n != 1: item = "%d%s" % (n, item) if re.match("[ul][lr][1-8]", attrib): # check for deciduous toothName = str(pt.chartgrid.get(attrib)).upper() plannedList.append((toothName, item),) else: plannedList.append((attrib, item), ) return plannedList def completedItems(pt, teethOnly=False): compList = [] if teethOnly: for tooth in tup_toothAtts: tx = pt.treatment_course.__dict__[tooth + "cmp"] if tx not in ("", None): items = tx.strip(" ").split(" ") for item in items: if item == "": continue if re.match("[ul][lr][1-8]", tooth): compList.append((tooth, item),) else: if pt.treatment_course.examt != "" and pt.treatment_course.examd: compList.append(("Exam", pt.treatment_course.examt),) for attrib in tup_Atts + tup_toothAtts: tx = pt.treatment_course.__dict__[attrib + "cmp"] if tx not in ("", None): items = tx.strip(" ").split(" ") for item in set(items): if item == "": continue n = items.count(item) if n != 1: item = "%d%s" % (n, item) if re.match("[ul][lr][1-8]", attrib): # check for deciduous toothName = str(pt.chartgrid.get(attrib)).upper() compList.append((toothName, item),) else: compList.append((attrib, item), ) return compList def summary(pt): ''' returns html set showing a summary of planned or completed treatment ''' if pt.treatment_course is None or pt.treatment_course.accd is None: return "" retarg = ''' \n''' % localsettings.stylesheet if not pt.underTreatment: retarg += "

    %s

    " % _("Previous Course") if pt.treatment_course.accd is not None: retarg += '%s %s
    ' % ( _("Start"), localsettings.formatDate(pt.treatment_course.accd)) if pt.treatment_course.cmpd is not None: retarg += '%s %s
    ' % ( _('End'), localsettings.formatDate(pt.treatment_course.cmpd)) else: retarg += '%s
    ' % _("ONGOING") if pt.treatment_course.ftr: retarg += '%s
    ' % _( "Patient Failed to Return") plan = "" for item in plannedItems(pt): plan += '%s - %s
    ' % (item) if plan != "": plan = "
    %s
    %s" % (_("PLAN"), plan) comp = "" for item in completedItems(pt): comp += '%s - %s
    ' % (item) if comp != "": comp = "
    %s
    %s" % (_("COMPLETED"), comp) if plan != "": plan = "
    " + plan if plan == "" and comp == "": return "%s%s" % (retarg, _("No treatment")) else: return '%s%s%s' % (retarg, plan, comp) return retarg def completedFillsToStatic(pt): ''' take completed items, and update the static chart ''' items = completedItems(pt, teethOnly=True) for tooth, prop in items: tooth = tooth.lower() if re.match("EX", prop): pt.__dict__["%sst" % tooth] = "TM " elif len(prop) > 33: pass else: existing = pt.__dict__.get("%sst" % tooth).split(" ") existing.append(prop.strip(" ")) i = 0 correct = False while not correct: new = " ".join([s for s in existing[i:] if s != ""]) + " " correct = len(new) < 34 i += 1 pt.__dict__["%sst" % tooth] = new def reverse_completedFillsToStatic(pt): ''' undo above procedure if a course is "resumed" take completed items, and update the static chart ''' items = completedItems(pt, teethOnly=True) for tooth, prop in items: tooth = tooth.lower() existing = pt.__dict__["%sst" % tooth].split(" ") if re.match("EX", prop): removal = "TM" else: removal = prop.strip(" ") existing.reverse() try: existing.remove(removal) except ValueError: pass # property not found existing.reverse() new = " ".join([s for s in existing if s != ""]) + " " pt.__dict__["%sst" % tooth] = new if __name__ == "__main__": from openmolar.dbtools import patient_class localsettings.initiate() try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 14860 pt = patient_class.patient(serialno) print(plannedItems(pt)) print(completedItems(pt)) print(summary(pt)) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/planDetails.py0000644000175000017500000000550212710144045024275 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.settings import localsettings def toHtml(plandata): ''' returns an HTML table of the patients plandata ''' if not plandata.retrieved: return "There was an error retrieving this information" retarg = '''

    PLAN DETAILS

    ''' retarg += "" % plandata.plantype retarg += "" % plandata.band retarg += "" % ( localsettings.formatMoney(plandata.grosschg)) retarg += "" % plandata.discount retarg += "" % ( localsettings.formatMoney(plandata.netchg)) retarg += "" % plandata.catcode retarg += "" % plandata.planjoin retarg += \ "" % plandata.regno retarg += '
    PLAN TYPE%s
    BAND%s
    GROSS CHARGE%s
    DISCOUNT%s%
    NET CHARGE%s
    CATEGORY%s
    DATE JOINED%s
    REGISTRATION NUMBER%s
    ' return retarg if __name__ == "__main__": from openmolar.dbtools import patient_class localsettings.initiate() pt = patient_class.patient(1) print(toHtml(pt.plandata)) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/reception_summary.py0000644000175000017500000001207012710144045025600 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides an html summary of the patient's reception activity ''' from openmolar.settings import localsettings from openmolar.dbtools import paymentHistory from openmolar.dbtools import estimate_synopsis HTML_TEMPLATE = ''' {{CONTENT}} ''' % localsettings.stylesheet ACTIVE_HTML_TEMPLATE = HTML_TEMPLATE.replace("{{CONTENT}}", ''' {{HEADER}}
    {{TREATMENTS}}
    {{PAYMENTS}} ''') UNKNOWN_DENT = ("??", _("Unknown"), _("Unknown"), "", "") def header_html(pt): if pt.underTreatment: html_ = "

    Patient is under Treatment

    course started %s" % ( localsettings.readableDate(pt.treatment_course.accd)) else: html_ = "

    Last course of treatment

    completed %s" % ( localsettings.readableDate(pt.treatment_course.cmpd)) return html_ def treatment_html(pt): return "

    Treatments (courseno %s)

    %s" % ( pt.courseno0, estimate_synopsis.html(pt.serialno, pt.courseno0)) def payments_html(pt): return '''

    Payments Since this course began (excluding Sundries)

    %s ''' % paymentHistory.summary_details( pt.serialno, pt.treatment_course.accd) def active_course_html(pt): html_ = ACTIVE_HTML_TEMPLATE.replace("{{TREATMENTS}}", treatment_html(pt)) html_ = html_.replace("{{PAYMENTS}}", payments_html(pt)) html_ = html_.replace("{{HEADER}}", header_html(pt)) return html_ def summary_html(pt): key_values = [] key_values.append(( _("Contract Dentist"), localsettings.dentDict.get(pt.dnt1, UNKNOWN_DENT)[1] )) days = (localsettings.currentDay() - pt.first_note_date).days if days < 7: duration = _("this week") elif days < 365: duration = _("recently") elif days < 730: duration = _("last year") else: duration = "%s %s" % (days//365, _("years ago.")) key_values.append(( _("Joined the practice"), duration )) key_values.append(( _("Last Treatment"), localsettings.formatDate(pt.last_treatment_date) )) key_values.append(( _("Exam Due"), _("YES!") if pt.exam_due else _("No") )) key_values.append(( _("Has seen hygienist on"), "%s %s" % (pt.n_hyg_visits, _("Occasions")) )) phone = False for i, val in enumerate((pt.tel1, pt.tel2, pt.mobile)): if val: key = (_("Telephone (Home)"), _("Telephone (Work)"), _("Mobile"))[i] key_values.append((key, val)) phone = True if not phone: key_values.append((_("Telephone"), _("Please get a phone number"))) content = "
      " for key, value in key_values: content += "
    • %s - %s
    • " % (key, value) content += "
    " html_ = HTML_TEMPLATE.replace("{{CONTENT}}", content) return html_ def finished_today_html(pt): return active_course_html(pt).replace( "", _("COMPLETED COURSE TODAY") ) def html(pt, summary=True): if summary: return summary_html(pt) if pt.last_treatment_date == localsettings.currentDay(): return finished_today_html(pt) return active_course_html(pt) if __name__ == '__main__': from openmolar.dbtools.patient_class import patient localsettings.initiate() pt = patient(26041) html = html(pt) print(html) openmolar-1.0.15-gd81f9e5/src/openmolar/ptModules/tooth_history.py0000644000175000017500000000507712710144045024762 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import re from openmolar.settings import localsettings def getHistory(pt, tooth): ''' get daybook history for this tooth ''' tooth = tooth.upper() hist = "" for tdate, apptix, items in pt.dayBookHistory: regex = "%s (.*)" % tooth for item in items.split(" "): for tx in re.findall(regex, item): hist += "
  • %s - %s - %s
  • " % ( localsettings.formatDate(tdate), localsettings.ops.get(int(apptix)), tx) if hist == "": hist = "None Found" else: hist = "
      %s
    " % hist return "History for %s
    %s" % (tooth, hist) if __name__ == "__main__": import sys from openmolar.dbtools import patient_class localsettings.initiate() try: serialno = int(sys.argv[len(sys.argv) - 1]) except: serialno = 11283 pt = patient_class.patient(serialno) print(pt.dayBookHistory) print(getHistory(pt, "lr5")) openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/0000755000175000017500000000000013024000134021714 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/activeDentStartFinish.ui0000644000175000017500000000371112033133562026535 0ustar neilneil00000000000000 Form 0 0 562 25 Form 1 1 92 23 Qt::RightToLeft CheckBox Qt::Horizontal 40 20 80 0 80 0 160 0 30 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/addTreatment.ui0000644000175000017500000000534212033133562024706 0ustar neilneil00000000000000 Dialog 0 0 459 245 Plan Treatment Add the following Treatment Items to the Current Treatment Plan Qt::AlignCenter true true 0 0 439 173 0 0 QFrame::NoFrame QFrame::Raised Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok false buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/appointment_length.ui0000644000175000017500000000640312033133562026170 0ustar neilneil00000000000000 Dialog Qt::NonModal 0 0 256 134 Select Appointment Length :/logo.png:/logo.png Hours Qt::AlignCenter Minutes Qt::AlignCenter 70 16777215 8 70 16777215 55 5 Qt::Vertical 20 29 Qt::Horizontal QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 Dialog rejected() Dialog accept() 127 66 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/aslotEdit.ui0000644000175000017500000001444212033133562024223 0ustar neilneil00000000000000 Dialog 0 0 602 457 Clinicians - DATE QFrame::NoFrame QFrame::Raised 40 0 40 0 0 0 92 0 Clinician Qt::AlignCenter Qt::Horizontal 40 20 80 0 Start Qt::AlignCenter 80 0 Finish Qt::AlignCenter 160 0 Memo Qt::AlignCenter 346 0 QFrame::NoFrame true 0 0 584 380 QFrame::NoFrame QFrame::Raised If you copy this day's setup to the clipboard, you can create a "clone" of this day when no data is set. This is useful when extending books. Copy To Clipboard Qt::Horizontal 188 24 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok false Paste the saved values. Paste buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/blockSlot.ui0000644000175000017500000002303112104742000024211 0ustar neilneil00000000000000 Dialog 0 0 345 361 Options 0 Insert a Block Would you like to Block (or partially Block) this Slot? Qt::AlignCenter Block Start Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Bock End Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Text to apply Qt::AlignCenter true //Blocked// Emergency Reserved Clinical Time Out of Office Lunch Catch up time Phone Call Qt::Vertical 20 34 0 0 QFrame::NoFrame QFrame::Raised QFrame::NoFrame QFrame::Raised minutes Qt::AlignCenter Insert a Known Patient Insert A Patient into this slot? Qt::AlignCenter 100 0 Start Time Qt::AlignCenter 100 0 Length Qt::AlignCenter 0 50 Chosen Patient is<br /> Qt::AutoText Qt::AlignCenter Change Reason for appointment is Qt::AutoText Qt::AlignCenter Qt::Vertical 20 99 minutes -600 600 5 QFrame::NoFrame QFrame::Raised Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/bulkmail_options.ui0000644000175000017500000001110412033133562025636 0ustar neilneil00000000000000 Dialog 0 0 410 367 Bulk Mail Options QFrame::NoFrame QFrame::Raised Date Format for the letters Qt::AlignCenter Full, Day, month and Year true Month and Year Only Qt::Horizontal QFrame::NoFrame QFrame::Raised Date to use Qt::AlignCenter Today's Date true The actual recall date for the patient This Date false true Qt::Vertical 20 40 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/choose_clinicians.ui0000644000175000017500000000326212033133562025745 0ustar neilneil00000000000000 Dialog 0 0 342 385 Choose Clinicians QFrame::NoFrame QFrame::Raised Qt::Horizontal QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/choose_language.ui0000644000175000017500000001031512236545603025421 0ustar neilneil00000000000000 Dialog 0 0 426 602 Language Selector 0 60 Choose from the following available languages. Please Note that some of these translations are not complete. Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter true true 0 0 406 351 QFrame::NoFrame QFrame::Raised 408 40 Note - if your preferred language is not available (or incomplete), please visit https://launchpad.net/openmolar and add a translation of your own! Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter true 0 80 true Many thanks to all who have helped internationalise openMolar, and to the folks behind the GNU tools and launchpad rosetta team who make this possible. Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter true 0 27 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok false buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/choose_tooth.ui0000644000175000017500000000415512033133562024770 0ustar neilneil00000000000000 Dialog 0 0 736 300 Choose A Tooth Please Select the tooth to which this treatment is planned Qt::AlignCenter 0 200 QFrame::StyledPanel QFrame::Raised Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/codeChecker.ui0000644000175000017500000000751312237260211024471 0ustar neilneil00000000000000 Dialog 0 0 907 686 Dialog 0 0 Qt::Horizontal QFrame::StyledPanel QFrame::Raised 0 200 QFrame::StyledPanel QFrame::Raised Deciduous Teeth false QFrame::StyledPanel QFrame::Raised 0 0 Adult Teeth false false Enter a Restoration Code (eg. MOD) to see how a feescale interprets the shortcut 40 16777215 GO QUIT openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/customTreatment.ui0000644000175000017500000000757112033133562025476 0ustar neilneil00000000000000 Dialog 0 0 346 192 Custom Item Number of Items Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter number_spinBox Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 1 Fee Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter fee_doubleSpinBox Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 3000.000000000000000 1.000000000000000 Qt::Vertical 20 50 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok 50 Treatment Description Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter description_lineEdit number_spinBox fee_doubleSpinBox buttonBox buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/daylist_print.ui0000644000175000017500000001216712033133562025162 0ustar neilneil00000000000000 Dialog 0 0 376 486 50 false Daylist Printing Wizard 0 0 16777215 100 75 true Specify Dates and Practitioners for a Daylist Print Run Qt::AlignCenter 0 0 Start Date Qt::AlignCenter 0 0 End Date Qt::AlignCenter true true 0 0 0 200 true 0 0 354 196 All Practioners on One Page true One Practitioner Per Page - Minimal false One Practioner Per Page - Fill Page Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/diary_widget.ui0000644000175000017500000007644312573265422024771 0ustar neilneil00000000000000 Form 0 0 732 551 Form true 0 0 0 Day View 2 3 6 220 0 220 16777215 QFrame::StyledPanel QFrame::Raised 3 0 0 200 180 16777215 200 true 16777215 24 Go To Today :/agt_reload.png:/agt_reload.png 0 0 QFrame::NoFrame QFrame::Plain 0 0 0 0 300 Qt::Horizontal Qt::Vertical 0 150 16777215 200 about:blank 0 0 12 75 true TextLabel Qt::AlignCenter Week View 3 1 220 0 220 16777215 QFrame::StyledPanel QFrame::Raised 3 0 0 30 180 16777215 200 true 16777215 24 View Current Week :/agt_reload.png:/agt_reload.png 0 0 QFrame::NoFrame QFrame::Plain 0 0 0 Qt::Horizontal 3 0 60 QFrame::Box QFrame::Raised 2 0 40 QFrame::Box QFrame::Raised 2 0 40 QFrame::Box QFrame::Raised 2 0 40 QFrame::Box QFrame::Raised 2 0 40 QFrame::Box QFrame::Raised 2 0 0 QFrame::NoFrame QFrame::Sunken 0 0 QFrame::StyledPanel QFrame::Plain 0 0 QFrame::NoFrame QFrame::Sunken 0 0 QFrame::NoFrame QFrame::Sunken 0 0 QFrame::NoFrame QFrame::Sunken 0 0 0 40 QFrame::Box QFrame::Raised 2 0 0 QFrame::NoFrame QFrame::Sunken 0 0 0 40 QFrame::Box QFrame::Raised 2 0 0 QFrame::NoFrame QFrame::Sunken Month View 3 true 0 0 702 456 Qt::Horizontal 40 20 28 20 :/back.png:/back.png 16777215 20 Month Qt::AlignCenter 28 20 :/forward.png:/forward.png Qt::Horizontal 40 20 Print Month View :/ps.png:/ps.png All Clinicians true Select Clinicians Year View 3 16777215 200 0 0 QFrame::StyledPanel QFrame::Raised All Clinicians true Select Clinicians Qt::Horizontal 40 20 28 20 :/back.png:/back.png 16777215 20 Year Qt::AlignCenter 28 20 :/forward.png:/forward.png Qt::Horizontal 40 20 Agenda 3 3 0 0 220 180 220 200 QFrame::StyledPanel QFrame::Raised false 220 0 220 24 Go To Today :/agt_reload.png:/agt_reload.png 0 0 220 0 220 16777215 QFrame::NoFrame QFrame::Plain 0 QWebView QWidget
    QtWebKit/QWebView
    openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/exam_wizard.ui0000644000175000017500000000777612033133562024621 0ustar neilneil00000000000000 Dialog 0 0 333 272 Exam Wizard 75 true Type Qt::AlignCenter Standard true Extensive Full Case Assessment 75 true Exam Date Qt::AlignCenter 100 0 true 75 true Dentist Qt::AlignCenter false Qt::Vertical 20 40 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/finalise_appt_time.ui0000644000175000017500000000736212033133562026132 0ustar neilneil00000000000000 Dialog 0 0 321 159 Appointment Time Space Before Appointment Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 mins Qt::AlignCenter true 0 true Qt::Vertical true false QSlider::NoTicks Appointment Time Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 00:00 - 00:00 Qt::AlignCenter Space After Appointment Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 mins Qt::AlignCenter Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/forumPost.ui0000644000175000017500000000674312757253657024323 0ustar neilneil00000000000000 Dialog 0 0 501 356 Forum Input 75 true Topic Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 75 true To Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 200 16777215 20 75 true Message Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter false Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Save true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/hygenist_wizard.ui0000644000175000017500000001321312235167256025513 0ustar neilneil00000000000000 Dialog 0 0 339 350 0 0 Hygienist Wizard 16777215 200 Planned Treatments color:red; label false Ok - I'll be careful! Type Debridement Scale and Polish true Extensive Scaling false Qt::Vertical 20 40 0 0 Treating Dentist/Hygienist Qt::Horizontal 89 20 100 0 16777215 16777215 75 true Qt::Horizontal 88 20 Qt::Vertical 20 29 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/main.ui0000644000175000017500000066430013022003273023215 0ustar neilneil00000000000000 MainWindow 0 0 991 651 0 0 16777215 16777215 Open Molar :/openmolar.svg:/openmolar.svg false false 0 0 QFrame::NoFrame true 0 0 991 608 0 0 QTabWidget::North QTabWidget::Rounded 0 false :/kfm.png:/kfm.png Patient Database 6 0 0 180 16 200 16777215 QFrame::NoFrame QFrame::Plain 0 0 QFrame::NoFrame QFrame::Raised 3 0 32 0 32 28 Exit the Current Patient Record. :/kfm_home.png:/kfm_home.png 32 24 Esc 0 0 32 0 32 28 Add a New Patient to the database. :/add_user.png:/add_user.png 32 16 0 0 80 28 16777215 28 Click on this Button to search for in patient in your database. Find :/search.png:/search.png 24 24 Ctrl+F QFrame::NoFrame QFrame::Raised 2 0 0 0 24 28 This cycles back through the history of records loaded today. :/back.png:/back.png 32 16 0 0 24 28 Reload the patient from the database. :/agt_reload.png:/agt_reload.png Ctrl+R 0 0 24 28 This cycles forwards through the history of records loaded today. :/forward.png:/forward.png 32 16 60 28 Show patients who live at the same address, or who have a similar name. &Relatives :/agt_family.png:/agt_family.png Ctrl+G 0 0 A drop down box of all patients who have an appointment today. 40 QComboBox::AdjustToContentsOnFirstShow 0 0 Qt::Vertical false 4 Patient Details 0 0 true 0 0 770 646 0 0 Details 3 6 Date of Birth Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Address3 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter addr3Edit false 60 16777215 send an sms sms :/button_ok.png:/button_ok.png 8 8 16777215 16777215 email2 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter email2Edit true 16777215 16777215 Fax Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter faxEdit Town Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter townEdit 16777215 16777215 30 Memo Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter memoEdit 0 0 16777215 100 false County Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter countyEdit 16777215 16777215 email1 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter email1Edit 0 0 150 0 16777215 100 50 true 60 16777215 send an email email :/button_ok.png:/button_ok.png 8 8 16777215 16777215 30 16777215 16777215 Occupation Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter occupationEdit 0 0 16777215 100 30 Title Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter titleEdit Surname Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter snameEdit 16777215 16777215 Tel (mob) Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter mobileEdit Address2 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter addr2Edit 16777215 16777215 30 0 0 150 0 16777215 100 50 true 60 16777215 send an email email :/button_ok.png:/button_ok.png 8 8 101 16777215 30 16777215 16777215 Sex Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter sexEdit 50 0 16777215 16777215 M F 16777215 16777215 30 Postcode Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter pcdeEdit 16777215 25 Tel (home) Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter tel1Edit false 60 16777215 send a fax fax :/button_ok.png:/button_ok.png 8 8 Address1 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter addr1Edit 16777215 16777215 30 16777215 16777215 30 First Name(s) Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter fnameEdit 16777215 16777215 Tel (work) Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter tel2Edit 0 0 16777215 100 30 0 0 16777215 100 30 0 0 16777215 100 30 0 0 16777215 100 30 16777215 16777215 false 30 16777215 16777215 false 30 Advanced QFrame::NoFrame QFrame::Raised 0 0 0 100 Abort New Patient Entry 0 0 Higlighted Fields are Mandatory for New Patients Qt::AlignCenter 0 0 0 100 Save New Patient :/save_all.png:/save_all.png Qt::Vertical 20 40 Qt::Vertical 20 40 0 0 Family Groups 6 3 true Raise a dialog to edit the patients family grouping Edit family group Not a member of a known family Qt::AlignCenter Use the Sname and Address details from the previous patient. Apply Address of previous record Qt::Vertical 20 40 Contract Pt is registered with Dentist 50 16777215 Course Type Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 50 16777215 Qt::Horizontal 368 20 QFrame::StyledPanel QFrame::Raised Status Qt::Vertical 20 242 false Write Off Bad Debt 0 Private This label is for displaying Private contractual stuff Qt::AlignCenter true :/private.png Qt::AlignCenter Qt::Vertical 147 281 150 16777215 Edit Highland Dental Plan This label is for displaying HDP contractual stuff Qt::AlignCenter true Qt::Vertical 108 162 150 16777215 Edit 150 16777215 :/hdp.png contractHDP_label verticalSpacer_5 editHDP_pushButton label_20 HDP Maintenance Plan Maintenance Label NHS This label is for displaying NHS contractual stuff Qt::AlignCenter true 16777215 16777215 :/nhs_scot.png true View Claims History Qt::Vertical 20 40 150 16777215 Edit Exemption 10 Exemption Text 50 Registered Elsewhere No Details of Pt's Registered Dentist Found Qt::AlignCenter true Qt::Vertical 147 281 150 16777215 Edit Correspondence true 0 0 752 423 Letters TO the patient 0 0 Custom Letter to the patient Print a recall saying the patient is due now. Recall for An Examination 0 0 16777215 32 Print a receipt - useful for duplicates. Duplicate Receipt 0 0 Print An Account Letter Referrals (Letters about the patient) 0 0 240 0 0 0 16777215 16777215 Print Patient "Notes" 0 0 16777215 16777215 Print a summary of the patient's notes (for them to take on). Includes No fee details. Print the patient's notes 0 0 Previous Correspondence Generated By OpenMolar 0 0 true true 1 Imported into database 0 0 1 Import A Document Qt::Vertical 20 40 Medical History 0 0 16777215 16777215 Print a summary of the patient's notes (for them to take on). Includes No fee details. Print a medical history form Reception 3 3 QFrame::NoFrame true 0 0 766 471 3 0 6 0 0 0 200 16777215 200 Patient's Diary 0 0 3 3 Qt::Horizontal 0 0 100 0 16777215 16777215 about:blank 0 0 100 0 16777215 16777215 about:blank 3 0 3 3 3 Summary View 0 0 MED Questionaire 2 3 16777215 16777215 Print :/ps.png:/ps.png Completed by Patient :/icons/pencil.png:/icons/pencil.png Medical History Dialog 16777215 100 Qt::Vertical 20 40 0 0 Qt::WheelFocus NHS 3 2 Print A GP17 Apply an Exemption Miscellaneous Recall Settings 0 0 Money 3 2 16777215 16777215 Print &Estimate :/ps.png:/ps.png 16777215 16777215 Print &Account :/ps.png:/ps.png 16777215 16777215 Take &Payment :/vcard.png:/vcard.png Clinical Summary 3 3 QFrame::NoFrame true 0 0 766 468 0 6 0 180 16777215 180 10 false QFrame::StyledPanel QFrame::Raised 10 75 true true color:red 140 about:blank 0 0 145 135 BPE 3 3 9 3 0 0 16777215 65 Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff 0 0 Update the Basic Perio Exam (CPITN) score New 0 0 150 16777215 0 40 0 40 QFrame::StyledPanel QFrame::Raised 2 16777215 28 perform a clinical exam Exam add x-rays to the patient's current course. X-ray perform common perio treatments Hyg Qt::Horizontal 40 20 Close This Course ChildSmile Qt::Horizontal 40 20 0 0 100 0 check / update the patients medical history Medical History Notes about:blank Include Printing Notes true Payments true Timestamps Metadata Qt::Horizontal 40 20 <html><head/><body><p>Use these settings for the clinical summary notes also.</p></body></html> clinical summary Charts / Planning 1 16777215 500 true QAbstractItemView::SelectItems 3 120 16777215 120 16777215 true Qt::ClickFocus Static false Plan 0 120 120 16777215 QFrame::StyledPanel QFrame::Raised Completed 160 0 200 16777215 QFrame::NoFrame QFrame::Raised 0 0 0 0 16777215 50 Treatment Planning 0 0 0 0 0 0 16777215 16777215 X-Rays 0 0 16777215 16777215 Perio Dentures 0 0 16777215 16777215 Other Custom Advanced Tx Planning 12 0 Patient is not currently under treatment - click here to begin Estimate 0 202 true 0 0 559 377 0 0 200 0 true 0 0 198 377 Estimate Custom Estimate Letter false Use this feature to re-price all items in the "tooth" category of treatments. i.e all those which appear on the charts. Note - this will not remove items which are currently there. ReCalculate Estimate false false Apply Exemption Qt::Vertical 20 40 Qt::LeftToRight Course Dentist Qt::AlignCenter 16777215 16777215 true Close Course Perio Charts 0 0 true 0 0 783 395 History 3 3 100 0 QFrame::StyledPanel QFrame::Raised 3 3 See all payments in the database made by this patient Payments View treatments completed, by date order Treatment View all Courses of treatment. This includes treatment that was planned but not completed. Courses Estimate history for this patient. Estimates Current Estimate NHS Claims Memos Medical History Qt::Vertical 20 123 Qt::Horizontal 0 0 Advanced options for developer use. Don't expect this to make much sense! If the "changes only" checkbox is checked, only data which has been changed will be displayed. debug tools false false QToolButton::InstantPopup changes only Qt::Vertical 20 40 Qt::Vertical 20 40 0 0 Print the text displayed on this page. Print :/ps.png:/ps.png 0 80 QFrame::NoFrame QFrame::Raised 0 3 0 0 Qt::Vertical 0 0 120 1200 Qt::ScrollBarAlwaysOff true 0 0 118 130 0 0 0 0 70 0 Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop true 0 0 Today's Notes Qt::AlignCenter 0 0 Qt::Vertical PhraseBook :/txt.png:/txt.png Ins 0 0 16777215 16777215 Save the changes made to this record. Save Changes :/save_all.png:/save_all.png Ctrl+S 0 0 16777215 16777215 Enter Notes. QFrame::NoFrame Phrases :/txt.png:/txt.png 0 0 Memos :/icons/memos.png:/icons/memos.png 0 0 Location :/vcalendar.png:/vcalendar.png Appointments / Diary 0 0 :/vcard.png:/vcard.png Cashbook Start Date End Date Registered Dentist 0 0 Go :/button_ok.png:/button_ok.png 24 24 0 0 16777215 16777215 Print the Data Print :/ps.png:/ps.png 32 24 0 0 100 0 true 0 0 100 0 true Qt::Horizontal 389 20 All payments true Sundries_only Treatment_only 0 0 :/txt.png:/txt.png Daybook 3 0 0 0 0 0 true Start Date 100 16777215 0 0 100 16777215 Go :/button_ok.png:/button_ok.png 24 24 100 16777215 Treating Clinician End Date 0 0 0 0 true 0 0 100 16777215 Print the Data Print :/ps.png:/ps.png 32 32 Dentist 0 0 QFrame::NoFrame QFrame::Raised 0 0 Extra Filters 40 16777215 Accounts 9 9 0 0 Print Selected Letters :/ps.png:/ps.png 9 true QAbstractItemView::SelectRows false true 150 0 12 75 true Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter true 1000000.000000000000000 0 0 Load Table :/button_ok.png:/button_ok.png Qt::Horizontal 206 20 TOTAL 0 0 Print Table :/ps.png:/ps.png Click on a row to load a patient record. Bulk Mailings Load Table Print Letters :/ps.png:/ps.png 24 24 Expand All Letter Options Qt::Horizontal 40 20 Feescales 3 TextLabel true 180 0 200 16777215 QFrame::StyledPanel QFrame::Raised 3 3 Fee Scales Available Qt::AlignCenter true Use this control to select a feescale true Search Options false 2 3 2 3 4 0 0 0 0 70 28 Click on this Button to search for in patient in your database. :/search.png:/search.png 24 24 Ctrl+F TextLabel Qt::AlignCenter search for the given phrase in description columns Search Descriptions true only search for the given phrase in the usercode column Search Itemcodes false Display Options 4 2 6 2 6 Hide Rarely Used Codes true true Quickly expand all items Expand All Sections true Quickly compress all items Compress All Sections true Resources 3 3 Open A PDF of the latest NHS Regulations Documents :/txt.png:/txt.png Qt::Vertical 20 40 true Advanced Options false false 3 FeeScale Tester Reload Fee Scales FORUM 3 Qt::Horizontal Qt::Vertical :/icons/wikipedia.png:/icons/wikipedia.png Wiki 3 about:blank 0 0 991 21 &File &Help &Preferences &View &Appointments &Printing &Forum &Charts &Mode (reception or surgery) &Cashbook &Daybook &History &Tools &Appointments &Export Patient to disk &Import Patient from disk About &OpenMolar &About QT :/exit.png:/exit.png &Quit Select Interface Language true Full Screen Mode (Ctrl-Alt-F) Ctrl+Alt+F Font Size true Show Advanced Options true Table View For Charting NHS Form Settings Test Print a GP17 Print Daylists Set Clinician Set Assistant true Surgery Mode Advanced Record Management Fix Locked New Course of Treatment true Allow Full Edit Set Surgery Number Set Surgery Number (used so other applications can see which record is loaded) Edit Phrasebooks true Allow &Edit true Enable &Filters true Allow Edit &Courses true Allow Edit &Estimates true Allow Edit &Treatment true Allow &ALL Edits Edit Referral Centres Edit Feescales Open Document Dialog Reset Supervisor Password Add User Add Clinician Edit Practice Details Clear Today's Emergency Slots Insert Regular Blocks Edit Standard Letters Configure Feescales Set Bookend (last day for appointment search) Check for &Updates Edit Account Letter Settings Clear All Patient Locations QWebView QWidget
    QtWebKit/QWebView
    debugBrowser dayList_comboBox detailsBrowser cashbookGoPushButton cashbookPrintButton cashbookStartDateEdit cashbookEndDateEdit cashbookDentComboBox daybookPrintButton daybookStartDateEdit daybookEndDateEdit daybookDent1ComboBox daybookDent2ComboBox daybookTextBrowser printAccount_pushButton dnt1comboBox scrollArea accounts_tableWidget printSelectedAccounts_pushButton titleEdit fnameEdit snameEdit dobEdit addr1Edit addr2Edit addr3Edit townEdit countyEdit pcdeEdit sexEdit tel1Edit tel2Edit mobileEdit faxEdit email1Edit email2Edit occupationEdit memoEdit email2_button pushButton email1_button pushButton_6 printEst_pushButton bpe_textBrowser newBPE_pushButton planSummary_textBrowser contract_tabWidget notesPrintButton
    openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/newBPE.ui0000644000175000017500000001626512033133562023420 0ustar neilneil00000000000000 Dialog 0 0 261 161 New CPITN score 120 90 200 90 300 90 QFrame::StyledPanel QFrame::Raised 0 1 2 3 4 * 0 1 2 3 4 * 0 1 2 3 4 * 0 1 2 3 4 * 0 1 2 3 4 * 0 1 2 3 4 * Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Save true buttonBox bpe_comboBox bpe2_comboBox bpe3_comboBox bpe6_comboBox bpe5_comboBox bpe4_comboBox buttonBox accepted() Dialog accept() 251 145 157 160 buttonBox rejected() Dialog reject() 251 145 260 160 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/newCourse.ui0000644000175000017500000000721012033133562024240 0ustar neilneil00000000000000 Dialog 0 0 272 310 New Course Start a new Course of Treatment with the following Criteria? Qt::AlignCenter true Contracted Dentist Course Dentist Course Type Acceptance Date Qt::Vertical 188 89 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true true label label_2 label_3 label_5 label_4 buttonBox dateEdit cseType_comboBox dnt1_comboBox dnt2_comboBox buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/patient_diary.ui0000644000175000017500000000656012632311307025131 0ustar neilneil00000000000000 Form 0 0 829 205 Form true 0 0 A Wizard to select some common appointment combinations &Shortcuts 0 0 16777215 16777215 A New Appointment for this patient &New :/add_user.png:/add_user.png true 0 0 16777215 16777215 Print out the next 5 appointments for this patient Print Card :/ps.png:/ps.png <html><head/><body><p>A place to keep a reminder of the patients appointment preferences.</p><p>Eg. &quot;30 minute appointments for examinations&quot; etc. </p></body></html> color:rgb(255, 0, 0) openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/patient_finder.ui0000644000175000017500000002117012350030721025255 0ustar neilneil00000000000000 Dialog 0 0 386 360 Patient Finder :/logo.png:/logo.png Fill in a few of the following fields to get a list of possible patients Qt::AlignCenter true Repeat Last Search :/agt_reload.png:/agt_reload.png Qt::Horizontal Qt::RightToLeft SNO or Surname sname Qt::StrongFocus Enter either the full name or the first few letters of the name. If you are unsure of the spelling, type in the COMPLETE name, and check the adjacent "sounds like" box. 60 24 check to search for a similar sounding name :/speaker.svg:/speaker.svg Qt::RightToLeft First Name fname Qt::StrongFocus Enter either the full name or the first few letters of the name. If you are unsure of the spelling, type in the COMPLETE name, and check the adjacent "sounds like" box. Be wary of middle names. eg. "Neil" does NOT sound like "Neil Alexander"! 60 24 check to search for a similar sounding name :/speaker.svg:/speaker.svg Qt::RightToLeft Date of Birth Qt::RightToLeft Address includes addr1 Qt::StrongFocus openMolar will search line1 and line2 of the address for this text Qt::RightToLeft Telephone tel Qt::StrongFocus open molar will search tel1, tel2 and mobile for numbers present here. Qt::RightToLeft Postcode pcde Qt::StrongFocus search for a postcode Qt::Vertical 20 21 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true 0 0 0 1900 1 1 true sname fname dateEdit addr1 tel pcde buttonBox repeat_pushButton snameSoundex_checkBox fnameSoundex_checkBox buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/record_tools.ui0000644000175000017500000004066412354271556025012 0ustar neilneil00000000000000 Form 0 0 497 585 Form 0 Money true 0 0 455 503 NHS current fees (money0) 1000000 NHS payments (money2) 1000000 NHS estimated (money4) 1000000 private estimate (money5) 1000000 Exempt - nhs gross - completed treatment (money6) 1000000 Exempt - NHS gross - estimated current (money7) 1000000 credit (money8) 1000000 debt (money9) 1000000 debt2 (money10) 1000000 money 11 1000000 private current fees (money1) 1000000 1000000 private payments (money3) Qt::Vertical 20 40 ALL AMOUNTS ARE IN PENCE (cents) Outstanding amount Qt::AlignCenter true 75 true 0.00 Qt::AlignCenter Dates true 0 0 455 520 Last CE (pd5) true Add Date Last ECE (pd6) true Add Date Last FCA (pd7) true Add Date Last OPT (pd8) true Add Date Last intraoral Xrays (pd9) true Add Date Last SP (pd10) true Add Date Last Account sent (billdate) true Add Date Qt::Vertical 20 40 Miscellaneous Hidden Notes false openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/saveMemo.ui0000644000175000017500000000766612033133562024061 0ustar neilneil00000000000000 Dialog 0 0 584 236 Post a memo about this Patient false Expiry Policy Do Not Expire true Expire on this date Viewable by All true Surgery Machines Reception Machines Author PhraseBook Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Save buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/showMemo.ui0000644000175000017500000000501512033133562024065 0ustar neilneil00000000000000 Dialog 0 0 611 262 Memo :/newlogo_launchpadSize.png true 12 TextLabel Qt::AlignCenter true Delete this memo when I close this Qt::Horizontal QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/specify_appointment.ui0000644000175000017500000002340012642753666026370 0ustar neilneil00000000000000 Dialog 0 0 445 404 Enter an appointment Appointment with Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Length Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 20 5 minutes 10 minutes 15 minutes 20 minutes 30 minutes 40 minutes 45 minutes 1 hour 1 hour 15 minutes 1 hour 20 minutes 1 hour 30 minutes 1 hour 45 minutes 2 hours 2 hours 30 minutes 3 hours other Qt::Vertical 20 40 180 0 300 16777215 20 16777215 30 Memo (optional) Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 176 0 20 16777215 24 Reason 2 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 176 0 20 16777215 24 Reason 3 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 176 0 20 16777215 24 Reason 1 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Qt::Vertical 20 40 Schedule Now Qt::Horizontal 128 20 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Save false buttonBox accepted() Dialog accept() 553 258 157 274 buttonBox rejected() Dialog reject() 553 258 286 274 scheduleNow_pushButton clicked() Dialog accept() 90 305 296 175 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/surgeryNumber.ui0000644000175000017500000000620612320216112025133 0ustar neilneil00000000000000 Dialog 0 0 301 167 Question :/logo.png:/logo.png Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true Please set the Surgery Number Qt::AlignCenter Qt::Vertical 20 40 Reception Machine Surgery One Surgery Two Surgery Three Surgery Four Surgery Five Surgery Six buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/toothProps.ui0000644000175000017500000003326612414752522024467 0ustar neilneil00000000000000 Form 0 0 150 479 150 459 Form 4 2 0 20 16777215 16777215 :/icons/pencil.png:/icons/pencil.png true 16777215 16777215 14 Qt::AlignCenter 0 0 0 20 16777215 16777215 delete tooth data :/eraser.png:/eraser.png true 0 0 131 24 16777215 24 QFrame::NoFrame QFrame::Plain true ADD COMMENTS KUO Mobile Tooth Early Caries Filling Missing Chipped Cracked Poor Prognosis Extract Soon Sensitive Non Vital DELETE ALL COMMENTS 0 120 QFrame::StyledPanel QFrame::Raised 2 2 0 20 48 24 true AM 0 20 48 24 true CO 0 20 48 24 true GL 0 20 48 24 true Go 0 20 48 24 true Po 32 24 80 40 extract (plan only!) EX 32 24 80 40 root treatment RT 32 24 80 16777215 Apply and move Back a tooth :/back.png:/back.png 24 18 true 32 24 80 40 porcelain veneer DR 32 24 80 40 Apply & Add Another Item && 18 24 false 32 24 80 16777215 Apply & Move to Next Tooth :/forward.png:/forward.png 24 18 true Qt::Horizontal 0 140 QFrame::StyledPanel true 0 0 144 149 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/toothprops_full_edit.ui0000644000175000017500000000662512243660333026553 0ustar neilneil00000000000000 Dialog 0 0 360 420 Tooth Property Editor 10 UR8 Qt::AlignCenter Items Qt::AlignCenter 50 50 true false 50 50 false Database Line Qt::AlignCenter 0 32 QFrame::NoFrame QFrame::Raised Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok true buttonBox accepted() Dialog accept() 248 254 157 274 buttonBox rejected() Dialog reject() 316 260 286 274 openmolar-1.0.15-gd81f9e5/src/openmolar/qt-designer/treatmentItemWidget.ui0000644000175000017500000000246712033133562026265 0ustar neilneil00000000000000 Form 0 0 415 31 Form 4 3 3 60 16777215 0 0 TextLabel Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/0000755000175000017500000000000013024000134020707 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/appointment_gui_modules/0000755000175000017500000000000013024000134025641 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/appointment_gui_modules/__init__.py0000644000175000017500000000312412710144046027766 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py0000644000175000017500000001072412710144046032703 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.dbtools import appointments from openmolar.settings import localsettings class ClinicianSelectModel(QtCore.QAbstractListModel): ''' A simple model used to populate a combobox to select how the appointment books are managed. ''' def __init__(self, parent=None): QtCore.QAbstractListModel.__init__(self, parent) self.options_list = [ _("Available Clinicians"), _("Available Dentists"), _("Available Hygienists"), _("All") ] self.om_gui = parent self.manual_index = 5 # used if manual is called by another widget def rowCount(self, parent=QtCore.QModelIndex()): return len(self.options_list) def data(self, index, role): if not index.isValid(): return None if role == QtCore.Qt.DisplayRole: return self.options_list[index.row()] return None @property def all_clinicians(self): ''' returns a numeric version of localsettings.activedents + localsettings.activehygs ''' retlist = [] for dent in localsettings.activedents + localsettings.activehygs: retlist.append(localsettings.apptix.get(dent)) return tuple(retlist) def clinician_list(self, row, date): ''' returns a tuple of values showing who is working. ''' if row == 0: return appointments.getWorkingDents(date, include_non_working=False) elif row == 1: chkset = localsettings.activedent_ixs return appointments.getWorkingDents(date, chkset, include_non_working=False) elif row == 2: chkset = localsettings.activehyg_ixs return appointments.getWorkingDents(date, chkset, include_non_working=False) return appointments.getAllClinicians(date) if __name__ == "__main__": def but_clicked(): message = "" for d_day in model.clinician_list( cb.currentIndex(), cal.date().toPyDate()): message += "%s
    " % d_day QtWidgets.QMessageBox.information(mw, "result", message) localsettings.initiate() app = QtWidgets.QApplication([]) model = ClinicianSelectModel() mw = QtWidgets.QMainWindow() frame = QtWidgets.QWidget() cb = QtWidgets.QComboBox() cb.setModel(model) cal = QtWidgets.QDateEdit() cal.setDate(QtCore.QDate(2013, 2, 1)) button = QtWidgets.QPushButton("who's chosen?") button.clicked.connect(but_clicked) layout = QtWidgets.QVBoxLayout(frame) layout.addWidget(cb) layout.addWidget(cal) layout.addWidget(button) mw.setCentralWidget(frame) mw.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/appointment_gui_modules/draggable_list.py0000644000175000017500000000651312710144046031177 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import pickle import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets LOGGER = logging.getLogger("openmolar") class DraggableList(QtWidgets.QListView): ''' a listView whose items can be moved ''' def __init__(self, parent=None): QtWidgets.QListView.__init__(self, parent) self.setDragEnabled(True) self.setMinimumHeight(100) def sizeHint(self): return QtCore.QSize(150, 200) def startDrag(self, event): LOGGER.debug("Starting drag from position %s", event.pos()) index = self.indexAt(event.pos()) if not index.isValid(): event.ignore() return # selected is the relevant person object selectedApp = self.model().data(index, QtCore.Qt.UserRole) LOGGER.debug("Dragging appointment %s", selectedApp) if not selectedApp.unscheduled: event.ignore() return if index not in self.selectedIndexes(): self.setCurrentIndex(index) # convert to a bytestream bstream = pickle.dumps(selectedApp) mimeData = QtCore.QMimeData() mimeData.setData("application/x-appointment", bstream) drag = QtGui.QDrag(self) drag.setMimeData(mimeData) drag.setDragCursor(QtGui.QPixmap(), QtCore.Qt.MoveAction) # allow for scroll area real_point = QtCore.QPoint( event.pos().x(), event.pos().y() - self.verticalOffset()) index = self.indexAt(real_point) pixmap = self.grab(self.rectForIndex(index)) drag.setPixmap(pixmap) drag.setHotSpot(QtCore.QPoint(-10, 0)) drag.exec_(QtCore.Qt.CopyAction) def mouseMoveEvent(self, event): self.startDrag(event) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/appointment_gui_modules/list_models.py0000644000175000017500000002523212734213611030552 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import appointments from openmolar.qt4gui import colours LOGGER = logging.getLogger("openmolar") class ColouredItemDelegate(QtWidgets.QItemDelegate): ''' A custom delete allows for a change in the behaviour of QListView so that highlighted items aren't the default white text on darkBlue background ''' dark_brush = QtGui.QBrush(QtCore.Qt.darkBlue) brush = (QtGui.QBrush(colours.APPTCOLORS["SLOT"])) brush2 = (QtGui.QBrush(colours.APPTCOLORS["SLOT2"])) def paint(self, painter, option, index): app = index.data(QtCore.Qt.UserRole) model = index.model() if app == model.currentAppt: pal = option.palette pal.setBrush(pal.Highlight, self.brush) pal.setBrush(pal.HighlightedText, self.dark_brush) elif app == model.secondaryAppt: pal = option.palette pal.setBrush(pal.Highlight, self.brush2) pal.setBrush(pal.HighlightedText, self.dark_brush) QtWidgets.QItemDelegate.paint(self, painter, option, index) class DoubleSelectionModel(QtCore.QItemSelectionModel): ''' A selection model which allows the selection of a maximum of 2 items. ''' def select(self, selection, command): ''' overwrite the select function selection is either a QModelIndex, (handled normally), or a QItemSelection ''' if isinstance(selection, QtCore.QModelIndex): QtCore.QItemSelectionModel.select(self, selection, command) return if len(selection.indexes()) > 2: LOGGER.debug("restricting appointment selection to 2 items") new_selection = QtCore.QItemSelection() new_selection.append( QtCore.QItemSelectionRange(selection.indexes()[0])) new_selection.append( QtCore.QItemSelectionRange(selection.last().indexes()[0])) selection = new_selection # now some openmolar specific code... I want scheduled appointment # to take priority if len(selection.indexes()) == 2: index1, index2 = selection.indexes() app1 = index1.model().data(index1, QtCore.Qt.UserRole) app2 = index2.model().data(index2, QtCore.Qt.UserRole) swap_required = app1.unscheduled and not app2.unscheduled LOGGER.debug("swap required = %s", swap_required) if swap_required: selection.swap(0, 1) if app1.dent == app2.dent: # joint appointments are dumb if dentist is the same! selection.removeAt(1) # send via base class QtCore.QItemSelectionModel.select(self, selection, command) class SimpleListModel(QtCore.QAbstractListModel): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.unscheduledList = [] self.scheduledList = [] # BROKEN WITH PYQT5 ???? #self.setSupportedDragActions(QtCore.Qt.MoveAction) self.selection_model = DoubleSelectionModel(self) self.normal_icon = QtGui.QIcon() self.normal_icon.addPixmap(QtGui.QPixmap(":/schedule.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.selected_icon = QtGui.QIcon() self.selected_icon.addPixmap( QtGui.QPixmap(":/icons/schedule_active.png")) def clear(self): self.beginResetModel() self.unscheduledList = [] self.scheduledList = [] self.endResetModel() @property def items(self): return self.scheduledList + self.unscheduledList @property def selectedAppts(self): appts = [] for index in self.selection_model.selectedRows(): appts.append(self.items[index.row()]) return appts @property def currentAppt(self): try: return self.selectedAppts[0] except IndexError: return None @property def secondaryAppt(self): for appt in self.selectedAppts: if appt != self.currentAppt: return appt return None @property def involvedClinicians(self): ''' returns a set containing all clinicians referred to by the itemss within ''' retarg = set() for app in self.items: retarg.add(app.dent) return tuple(retarg) @property def selectedClinicians(self): ''' returns a set containing all clinicians whose appointments have been highlighted ''' retarg = set() for app in self.selectedAppts: retarg.add(app.dent) return tuple(retarg) @property def selectedClinician(self): ''' returns the clinician of the selected appointment ''' try: return (self.currentAppt.dent,) except AttributeError: return () @property def dentists_involved(self): ''' is there a dentist in the selected appointments? ''' for clinician in self.selectedClinicians: if clinician in localsettings.activedent_ixs: return True return False @property def hygienists_involved(self): ''' is there a hygienist in the selected appointments? ''' for clinician in self.selectedClinicians: if clinician in localsettings.activehyg_ixs: return True return False def set_appointments(self, appts, selected_apps): ''' add appointments, and highlight any selected ones. ''' self.clear() self.beginResetModel() for appt in appts: if appt.past: pass elif appt.unscheduled: self.unscheduledList.append(appt) else: self.scheduledList.append(appt) self.endResetModel() self.set_selected_appointments(selected_apps) def set_selected_appointments(self, selected_apps): ''' programatically make a selection (to sync with other ways of selecting an appointment, eg pt_diary) ''' selection = QtCore.QItemSelection() # for app in sorted(selected_apps, # key=lambda x: x.unscheduled, reverse=True): for app in selected_apps: LOGGER.debug("Need to reselect appointment %s", app) try: row = self.items.index(app) index = self.index(row) selection.append(QtCore.QItemSelectionRange(index)) except ValueError: # app not in list pass self.selection_model.select(selection, QtCore.QItemSelectionModel.Select) def rowCount(self, parent=QtCore.QModelIndex()): return len(self.items) def data(self, index, role): if not index.isValid(): return None app = self.items[index.row()] if role == QtCore.Qt.DisplayRole: if app.flag == -128: info = "%s (%s)" % (app.name, app.length) elif app.unscheduled: info = "%s %s - %s" % ( app.length, " ".join( [tx for tx in ( app.trt1, app.trt2, app.trt3) if tx != ""]), app.dent_inits) else: info = "%s %s with %s" % (app.readableDate, app.readableTime, app.dent_inits) return info elif role == QtCore.Qt.ForegroundRole: if app.unscheduled: return QtGui.QBrush(QtGui.QColor("red")) elif role == QtCore.Qt.DecorationRole: if app.unscheduled: if app in self.selectedAppts: return self.selected_icon return self.normal_icon elif role == QtCore.Qt.UserRole: # return the whole python object return app return None def load_from_database(self, pt): LOGGER.debug( "loading apps from database, selected = %s", self.selectedAppts) appts = appointments.get_pts_appts(pt) self.set_appointments(appts, self.selectedAppts) class BlockListModel(SimpleListModel): ''' customise the above model just for blocks ''' def __init__(self, parent=None): super(BlockListModel, self).__init__(parent) for val, length in ( (_("Lunch"), 60), (_("Lunch"), 30), (_("staff meeting"), 15), (_("emergency"), 10), (_("emergency"), 15), (_("emergency"), 20), (_("emergency"), 30), (_("Out of Office"), 30)): block = appointments.APR_Appointment() block.name = val block.length = length block.flag = -128 self.unscheduledList.append(block) def reset(self): pass openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py0000644000175000017500000003660512710144046032114 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides the model class that is displayed in the patients diary view found under the reception tab ''' import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui import colours CATEGORIES = ("", _("View Past Appointments"), _("Unscheduled")) HORIZONTAL_HEADERS = (_("Date & Time"), _("Practitioner"), _("Length"), _("Treatment"), "ix", _("Memo")) LOGGER = logging.getLogger("openmolar") class TreeItem(object): def __init__(self, category, appointment, parent=None, index=0): self.appointment = appointment self.isAppointment = True try: if appointment.date: self.headerCol = "%s\t%s" % ( localsettings.wystimeToHumanTime(appointment.atime), localsettings.readableDate(appointment.date)) else: self.headerCol = "TBA" # used to be "TBA" except AttributeError: self.headerCol = category self.isAppointment = False self.parentItem = parent self.myindex = index self.childItems = [] def appendChild(self, item): self.childItems.append(item) def child(self, row): return self.childItems[row] def childCount(self): return len(self.childItems) def columnCount(self): return len(HORIZONTAL_HEADERS) def data(self, column): if column == 0: return self.headerCol if not self.isAppointment: return None if column == 1: return self.appointment.dent_inits if column == 2: return self.appointment.length if column == 3: trt = "%s %s %s" % (self.appointment.trt1, self.appointment.trt2, self.appointment.trt3) return trt if column == 5: return self.appointment.memo if column == 4: return self.appointment.aprix return None def parent(self): return self.parentItem def row(self): if self.parentItem: return self.parentItem.childItems.index(self) return 0 class DoubleRowSelectionModel(QtCore.QItemSelectionModel): ''' A selection model which allows the selection of a maximum of 2 rows. ''' is_reversed = False def select(self, selection, command): ''' overwrite the select function selection is either a QModelIndex, (handled normally), or a QItemSelection ''' self.is_reversed = False LOGGER.debug( "DoubleRowSelectionModel.select %s,%s", selection, command) if isinstance(selection, QtCore.QModelIndex): LOGGER.debug("Model Index selected") elif len(selection.indexes()) >= 2: LOGGER.debug("restricting appointment selection to 2 items") new_selection = QtCore.QItemSelection() index1 = selection.indexes()[0] index2 = self.currentIndex() if index2.row() == index1.row(): index2 = selection.last().indexes()[-1] self.is_reversed = True new_selection.append(QtCore.QItemSelectionRange(index1)) new_selection.append(QtCore.QItemSelectionRange(index2)) selection = new_selection else: for index in selection.indexes(): LOGGER.debug("index = %s", index) QtCore.QItemSelectionModel.select(self, selection, command) class PatientDiaryTreeModel(QtCore.QAbstractItemModel): ''' a model to display a feetables data ''' appointments_changed_signal = QtCore.pyqtSignal() def __init__(self, parent): super().__init__(parent) self.appointments = [] self.rootItem = TreeItem("Appointments", None, None, None) self.parents = {0: self.rootItem} self.om_gui = parent self.selection_model = DoubleRowSelectionModel(self) self.normal_icon = QtGui.QIcon() self.normal_icon.addPixmap(QtGui.QPixmap(":/schedule.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.selected_icon = QtGui.QIcon() self.selected_icon.addPixmap( QtGui.QPixmap(":/icons/schedule_active.png")) def addAppointments(self, appointments): self.clear() self.appointments = appointments self.setupModelData() self.appointments_changed_signal.emit() def clear(self): self.beginResetModel() self.appointments = [] self.rootItem = TreeItem("Appointments", None, None, None) self.parents = {0: self.rootItem} self.endResetModel() self.setupModelData() def columnCount(self, parent=None): if parent and parent.isValid(): return parent.internalPointer().columnCount() else: return len(HORIZONTAL_HEADERS) def data(self, index, role): if not index.isValid(): return None item = index.internalPointer() if role == QtCore.Qt.DisplayRole: return item.data(index.column()) if role == QtCore.Qt.ForegroundRole: if item.appointment and item.appointment.today: return QtGui.QBrush(colours.DIARY.get("TODAY")) if item.appointment and item.appointment.future: return QtGui.QBrush(colours.DIARY.get("Future")) if item.appointment and item.appointment.unscheduled: return QtGui.QBrush(colours.DIARY.get("Unscheduled")) elif role == QtCore.Qt.DecorationRole: if (index.column() == 0 and item.appointment and item.appointment.unscheduled): # if (self.selectedAppt and # item.appointment.aprix == self.selectedAppt.aprix): # return self.selected_icon return self.normal_icon if role == QtCore.Qt.UserRole: # a user role which simply returns the python object if item: return item.appointment return None def flags(self, index): if not index.isValid(): return QtCore.Qt.NoItemFlags return QtCore.Qt.ItemIsEnabled | QtCore.Qt.ItemIsSelectable def headerData(self, column, orientation, role): if (orientation == QtCore.Qt.Horizontal and role == QtCore.Qt.DisplayRole): try: return HORIZONTAL_HEADERS[column] except IndexError: pass return None def index(self, row, column, parent): if not self.hasIndex(row, column, parent): return QtCore.QModelIndex() if not parent.isValid(): parentItem = self.rootItem else: parentItem = parent.internalPointer() childItem = parentItem.child(row) if childItem: return self.createIndex(row, column, childItem) else: return QtCore.QModelIndex() def parent(self, index): if not index.isValid(): return QtCore.QModelIndex() childItem = index.internalPointer() if not childItem: return QtCore.QModelIndex() parentItem = childItem.parent() if parentItem is None: return QtCore.QModelIndex() return self.createIndex(parentItem.row(), 0, parentItem) def rowCount(self, parent=QtCore.QModelIndex()): if parent.column() > 0: return 0 if not parent.isValid(): parentItem = self.rootItem else: parentItem = parent.internalPointer() return parentItem.childCount() def setupModelData(self): self.beginResetModel() unscheduled = [] scheduled = [] # jump through hoops to ensure "unscheduled appear at the bottom # of the model for appt in self.appointments: if appt.unscheduled: unscheduled.append(appt) else: scheduled.append(appt) for appt in scheduled + unscheduled: cat_no = 1 if appt.past else 0 if cat_no not in self.parents: try: category = CATEGORIES[cat_no] except IndexError: category = "CATEGORY %d" % cat_no parent = TreeItem(category, None, None, self.rootItem) self.rootItem.appendChild(parent) self.parents[cat_no] = parent self.parents[cat_no].appendChild( TreeItem("", appt, self.parents[cat_no])) self.endResetModel() def searchModel(self, appt): ''' get the modelIndex for a given appointment ''' def searchNode(node): ''' a function called recursively, looking at all nodes beneath node ''' for child in node.childItems: data = child.appointment if appt == data: index = self.createIndex(child.row(), 0, child) return index if child.childCount() > 0: result = searchNode(child) if result: return result return searchNode(self.parents[0]) def findItem(self, apr_ix): ''' get the model index of a specific appointment ''' appt = None for appmt in self.appointments: if appmt.aprix == apr_ix: appt = appmt break if appt: index = self.searchModel(appt) return (True, index) return (False, None) @property def selected_appointments(self): for appt in (self.appt_1, self.appt_2): if appt is not None: yield appt def appt_1_index(self): i = 1 if self.selection_model.is_reversed else 0 try: return self.selection_model.selectedRows()[i] except IndexError: pass def appt_2_index(self): i = 0 if self.selection_model.is_reversed else 1 try: return self.selection_model.selectedRows()[i] except IndexError: pass @property def appt_1(self): try: return self.data(self.appt_1_index(), QtCore.Qt.UserRole) except AttributeError: return None @property def appt_2(self): try: return self.data(self.appt_2_index(), QtCore.Qt.UserRole) except AttributeError: return None class ColouredItemDelegate(QtWidgets.QItemDelegate): ''' A custom delete allows for a change in the behaviour of QListView so that highlighted items aren't the default white text on darkBlue background ''' dark_brush = QtGui.QBrush(QtCore.Qt.darkBlue) brush = (QtGui.QBrush(colours.APPTCOLORS["SLOT"])) brush2 = (QtGui.QBrush(colours.APPTCOLORS["SLOT2"])) def __init__(self, parent=None): QtWidgets.QItemDelegate.__init__(self, parent) def paint(self, painter, option, index): app = index.data(QtCore.Qt.UserRole) model = index.model() pal = option.palette if app == model.appt_1: # app == model.currentAppt: pal.setBrush(pal.Highlight, self.brush) pal.setBrush(pal.HighlightedText, self.dark_brush) elif app == model.appt_2: # app == model.secondaryAppt: pal.setBrush(pal.Highlight, self.brush2) pal.setBrush(pal.HighlightedText, self.dark_brush) QtWidgets.QItemDelegate.paint(self, painter, option, index) def _test(): from openmolar.dbtools import appointments class DuckPt(object): ''' a mock of the patient class ''' def __init__(self): self.serialno = 1 self.sname = "Neil" self.fname = "Wallace" self.cset = "P" def resize(arg=None): for col in range(model.columnCount(arg)): tv.resizeColumnToContents(col) def appt_clicked(index): LOGGER.debug("appointment clicked %s", tv.model().data(index, QtCore.Qt.UserRole)) def but_clicked(): LOGGER.debug("Button clicked, will search for appointment %s", mw.sender().text()) appoint_number = int(mw.sender().text()) result, index = model.findItem(appoint_number) if result: if index: tv.setCurrentIndex(index) return LOGGER.debug("NOT FOUND!") tv.clearSelection() localsettings.initiate() appts = appointments.get_pts_appts(DuckPt()) model = PatientDiaryTreeModel() model.addAppointments(appts) mw = QtWidgets.QMainWindow() mw.setMinimumSize(800, 300) frame = QtWidgets.QFrame(mw) layout = QtWidgets.QVBoxLayout(frame) tv = QtWidgets.QTreeView() tv.setModel(model) tv.setAlternatingRowColors(True) tv.setSelectionMode(tv.ContiguousSelection) tv.setSelectionModel(model.selection_model) layout.addWidget(tv) tv.expandAll() buts = [] but_frame = QtWidgets.QFrame() layout2 = QtWidgets.QHBoxLayout(but_frame) for appt in sorted(appts, key=lambda a: a.aprix)[-20:]: but = QtWidgets.QPushButton(str(appt.aprix), mw) buts.append(but) layout2.addWidget(but) but.clicked.connect(but_clicked) layout.addWidget(but_frame) index = model.parents.get(1, None) if index: tv.collapse(model.createIndex(0, 0, index)) resize() tv.expanded.connect(resize) tv.clicked.connect(appt_clicked) but = QtWidgets.QPushButton("Clear Selection") layout.addWidget(but) but.clicked.connect(tv.clearSelection) mw.setCentralWidget(frame) mw.show() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) _test() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/charts/0000755000175000017500000000000013024000134022173 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/charts/__init__.py0000755000175000017500000000312412710144046024323 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/charts/charts_gui.py0000644000175000017500000002476312710144046024725 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides some logic functions for the charts within openmolar gui. ''' import copy import logging import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") def navigateCharts(om_gui, direction): ''' called by a keypress in the tooth prop LineEdit or a click on one of the tooth prop buttons. entry will have been checked. ''' [x, y] = om_gui.ui.staticChartWidget.selected if y == 0: # upper teeth if direction == "up": if x != 0: x -= 1 else: if x == 15: x, y = 15, 1 else: x += 1 else: # lower teeth if direction == "up": if x == 15: x, y = 15, 0 else: x += 1 else: if x != 0: x -= 1 selectChartedTooth(om_gui, x, y) tooth = om_gui.ui.staticChartWidget.grid[y][x] row = (16 * y) + x om_gui.ui.chartsTableWidget.setCurrentCell(row, 0) om_gui.ui.toothPropsWidget.setTooth(tooth, om_gui.selectedChartWidget) def deleteComments(om_gui): ''' called when user has trigger deleted comments in the toothProp ''' tooth = str(om_gui.ui.chartsTableWidget.item( om_gui.ui.chartsTableWidget.currentRow(), 0).text()) if tooth in om_gui.ui.staticChartWidget.commentedTeeth: om_gui.ui.staticChartWidget.commentedTeeth.remove(tooth) om_gui.ui.staticChartWidget.update() existing = om_gui.pt.__dict__[tooth + "st"] om_gui.pt.__dict__[tooth + "st"] = re.sub("![^ ]* ", "", existing) def updateCharts(om_gui, arg): ''' called by a signal from the toothprops widget - args are the new tooth properties eg modbl,co ''' LOGGER.debug(arg) tooth = om_gui.ui.toothPropsWidget.selectedTooth if om_gui.selectedChartWidget == "st": om_gui.pt.__dict__[tooth + om_gui.selectedChartWidget] = arg # update the patient!! om_gui.ui.staticChartWidget.setToothProps(tooth, arg) om_gui.ui.summaryChartWidget.setToothProps(tooth, arg) om_gui.ui.staticChartWidget.update() else: om_gui.handle_chart_treatment_input( tooth, arg, om_gui.selectedChartWidget == "cmp") def updateChartsAfterTreatment(om_gui, tooth, newplan, newcompleted): ''' update the charts when a planned item has moved to completed ''' # print "update charts after treatment", tooth, newplan, newcompleted om_gui.ui.planChartWidget.setToothProps(tooth, newplan) om_gui.ui.planChartWidget.update() om_gui.ui.completedChartWidget.setToothProps(tooth, newcompleted) om_gui.ui.completedChartWidget.update() def flipDeciduous(om_gui): ''' change a tooth state from deciduous to permanent or back again ''' if om_gui.selectedChartWidget == "st": selectedCells = om_gui.ui.chartsTableWidget.selectedIndexes() for cell in selectedCells: row = cell.row() selectedTooth = str( om_gui.ui.chartsTableWidget.item(row, 0).text()) om_gui.pt.flipDec_Perm(selectedTooth) for chart in (om_gui.ui.staticChartWidget, om_gui.ui.planChartWidget, om_gui.ui.completedChartWidget, om_gui.ui.summaryChartWidget ): chart.chartgrid = om_gui.pt.chartgrid # necessary to restore the chart to full dentition chart.update() else: om_gui.advise( _("you need to be in the static chart to change tooth state"), 1) def checkPreviousEntry(om_gui): ''' check to see if the toothProps widget has unfinished business ''' if not om_gui.ui.toothPropsWidget.lineEdit.unsavedChanges(): return True else: return om_gui.ui.toothPropsWidget.lineEdit.additional() def chartNavigation(om_gui, teeth, callerIsTable=False): ''' one way or another, a tooth has been selected... this updates all relevant widgets ''' # called by a navigating a chart or the underlying table LOGGER.debug("chartNavigation %s table=%s", teeth, callerIsTable) grid = (["ur8", "ur7", "ur6", "ur5", 'ur4', 'ur3', 'ur2', 'ur1', 'ul1', 'ul2', 'ul3', 'ul4', 'ul5', 'ul6', 'ul7', 'ul8'], ["lr8", "lr7", "lr6", "lr5", 'lr4', 'lr3', 'lr2', 'lr1', 'll1', 'll2', 'll3', 'll4', 'll5', 'll6', 'll7', 'll8']) if teeth == []: LOGGER.warning( "chartNavigation called with teeth=[] THIS SHOULDN'T HAPPEN!!!!") return tooth = teeth[0] om_gui.ui.toothPropsWidget.setTooth(tooth, om_gui.selectedChartWidget) # calculate x, y co-ordinates for the chartwidgets if tooth in grid[0]: y = 0 else: y = 1 x = grid[y].index(tooth) selectChartedTooth(om_gui, x, y) om_gui.ui.chartsTableWidget.setCurrentCell(x + y * 16, 0) for tooth in teeth: # other teeth have been selected # ie. ctrl-click or shift ciick if tooth in grid[0]: y = 0 else: y = 1 x = grid[y].index(tooth) om_gui.ui.chartsTableWidget.setCurrentCell( x + y * 16, 0, QtCore.QItemSelectionModel.Select) def selectChartedTooth(om_gui, x, y): ''' only one tooth can be 'selected' ''' om_gui.ui.planChartWidget.setSelected( x, y, showSelection=om_gui.selectedChartWidget == "pl") om_gui.ui.completedChartWidget.setSelected( x, y, showSelection=om_gui.selectedChartWidget == "cmp") om_gui.ui.staticChartWidget.setSelected( x, y, showSelection=om_gui.selectedChartWidget == "st") def bpe_table(om_gui, arg): ''' updates the BPE chart on the clinical summary page ''' if om_gui.pt.bpe != []: last_bpe_date = localsettings.formatDate(om_gui.pt.bpe[-1][0]) om_gui.ui.bpe_groupBox.setTitle("BPE " + last_bpe_date) l = copy.deepcopy(om_gui.pt.bpe) l.reverse() bpestring = l[arg][1] bpe_html = '' for i in range(len(bpestring)): if i == 3: bpe_html += "" bpe_html += '' % bpestring[i] for i in range(i + 1, 6): if i == 3: bpe_html += "" bpe_html += '' bpe_html += '
    %s
    _
    ' om_gui.ui.bpe_textBrowser.setHtml(bpe_html) else: # necessary in case of the "NO DATA FOUND" option om_gui.ui.bpe_groupBox.setTitle(_("BPE")) om_gui.ui.bpe_textBrowser.setHtml("") def chartsTable(om_gui): ''' update the charts table ''' om_gui.ui.chartsTableWidget.clear() om_gui.ui.chartsTableWidget.setSortingEnabled(False) om_gui.ui.chartsTableWidget.setRowCount(32) headers = ["Tooth", "Deciduous", "Static", "Plan", "Completed"] om_gui.ui.chartsTableWidget.setColumnCount(5) om_gui.ui.chartsTableWidget.setHorizontalHeaderLabels(headers) om_gui.ui.chartsTableWidget.verticalHeader().hide() for chart in (om_gui.ui.summaryChartWidget, om_gui.ui.staticChartWidget, om_gui.ui.planChartWidget, om_gui.ui.completedChartWidget, ): chart.chartgrid = om_gui.pt.chartgrid # sets the tooth numbering row = 0 for tooth in ("ur8", "ur7", "ur6", "ur5", 'ur4', 'ur3', 'ur2', 'ur1', 'ul1', 'ul2', 'ul3', 'ul4', 'ul5', 'ul6', 'ul7', 'ul8', "lr8", "lr7", "lr6", "lr5", 'lr4', 'lr3', 'lr2', 'lr1', 'll1', 'll2', 'll3', 'll4', 'll5', 'll6', 'll7', 'll8'): item1 = QtWidgets.QTableWidgetItem(tooth) static_text = om_gui.pt.__dict__[tooth + "st"] staticitem = QtWidgets.QTableWidgetItem(static_text) decidousitem = QtWidgets.QTableWidgetItem(om_gui.pt.chartgrid[tooth]) om_gui.ui.chartsTableWidget.setRowHeight(row, 15) om_gui.ui.chartsTableWidget.setItem(row, 0, item1) om_gui.ui.chartsTableWidget.setItem(row, 1, decidousitem) om_gui.ui.chartsTableWidget.setItem(row, 2, staticitem) row += 1 om_gui.ui.summaryChartWidget.setToothProps(tooth, static_text) om_gui.ui.staticChartWidget.setToothProps(tooth, static_text) pItem = om_gui.pt.treatment_course.__dict__[tooth + "pl"] cItem = om_gui.pt.treatment_course.__dict__[tooth + "cmp"] planitem = QtWidgets.QTableWidgetItem(pItem) cmpitem = QtWidgets.QTableWidgetItem(cItem) om_gui.ui.chartsTableWidget.setItem(row, 3, planitem) om_gui.ui.chartsTableWidget.setItem(row, 4, cmpitem) om_gui.ui.planChartWidget.setToothProps(tooth, pItem.lower()) om_gui.ui.completedChartWidget.setToothProps(tooth, cItem.lower()) om_gui.ui.chartsTableWidget.resizeColumnsToContents() om_gui.ui.chartsTableWidget.setCurrentCell(0, 0) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/compiled_uis/0000755000175000017500000000000013024000134023363 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/compiled_uis/__init__.py0000755000175000017500000000002312710144046025506 0ustar neilneil00000000000000#! /usr/bin/python openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/0000755000175000017500000000000013024000134023610 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/__init__.py0000755000175000017500000000312412710144046025740 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py0000755000175000017500000007377112734441423031715 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides one class - the appointment overview widget used in the weekview ''' import datetime import logging import pickle from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import appointments from openmolar.qt4gui import colours from openmolar.qt4gui.customwidgets.schedule_control \ import DiaryScheduleController LOGGER = logging.getLogger("openmolar") LINECOLOR = QtGui.QColor("#dddddd") TRANSPARENT = QtCore.Qt.transparent APPTCOLORS = colours.APPTCOLORS BGCOLOR = APPTCOLORS["BACKGROUND"] ORANGE_PEN = QtGui.QPen(QtGui.QColor("orange"), 2) RED_PEN = QtGui.QPen(QtCore.Qt.red, 2) BIG_RED_PEN = QtGui.QPen(QtCore.Qt.red, 4) GREY_PEN = QtGui.QPen(QtCore.Qt.gray, 1) GREYLINE_PEN = QtGui.QPen(colours.APPT_LINECOLOUR, 1) # GREYLINE_PEN.setStyle(QtCore.Qt.DashLine) BLACK_PEN = QtGui.QPen(QtCore.Qt.black, 1) CENTRE_OPTION = QtGui.QTextOption(QtCore.Qt.AlignCenter) CENTRE_OPTION.setWrapMode(QtGui.QTextOption.WordWrap) class BlinkTimer(QtCore.QTimer): ''' A singleton shared accross all canvas widgets to ensure flashing appointments are synchronised. ''' _instance = None _initiated = False state = True def __new__(cls, *args, **kwargs): if not cls._instance: cls._instance = super( BlinkTimer, cls).__new__(cls, *args, **kwargs) return cls._instance def __init__(self, parent=None): if not self._initiated: super(BlinkTimer, self).__init__(parent) self.start(1000) self.timeout.connect(self._toggle) self._initiated = True def _toggle(self): self.state = not self.state class AppointmentOverviewWidget(QtWidgets.QWidget): ''' a custom widget to provide a week view for a dental appointment book ''' BROWSING_MODE = 0 SCHEDULING_MODE = 1 BLOCKING_MODE = 2 mode = None slot_clicked_signal = QtCore.pyqtSignal(object) appt_clicked_signal = QtCore.pyqtSignal(object) appt_dropped_signal = QtCore.pyqtSignal(object, object) header_clicked_signal = QtCore.pyqtSignal(object, object) cancel_appointment_signal = QtCore.pyqtSignal( object, object, object, object) clear_slot_signal = QtCore.pyqtSignal(object, object, object, object) def __init__(self, sTime, fTime, slotLength, textDetail, diary_widget): ''' useage is (day, startTime,finishTime,slotLength, textDetail, parent) startTime,finishTime in format HHMM or HMM or HH:MM or H:MM slotLength is the minimum slot length - typically 5 minutes textDetail is the number of slots to draw before writing the time text parentWidget =optional textDetail determines how many slots before a time is printed, I like 15minutes ''' super(AppointmentOverviewWidget, self).__init__(diary_widget) self.diary_widget = diary_widget self.setMinimumSize(self.minimumSizeHint()) self.setSizePolicy(QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)) self.font = QtGui.QFont() self.font.setPointSize(10) fm = QtGui.QFontMetrics(self.font) self.timeOffset = fm.width(" 88:88 ") self.headingHeight = fm.height() # convert times to "minutes past midnight" self.startTime = localsettings.minutesPastMidnight(sTime) self.endTime = localsettings.minutesPastMidnight(fTime) self.slotLength = slotLength self.slotCount = (self.endTime - self.startTime) // slotLength self.slotHeight = ((self.height() - self.headingHeight) / self.slotCount) self.textDetail = textDetail self.date = None self.dents = [] self.daystart = {} self.dayend = {} self.memoDict = {} self.flagDict = {} self.selected_rect = None self.setMouseTracking(True) self.clear() self.init_dicts() self.setAcceptDrops(True) self.drag_appt = None self.dropPos = None self.enabled_clinicians = () self._mouse_drag_rects = None self.mouse_drag_rect = None self.blink_on = True # for flashing effect self.blink_timer = BlinkTimer() self.blink_timer.timeout.connect(self.toggle_blink) def clear(self): self.appts = {} self.eTimes = {} self.clearSlots() self.lunches = {} self._mouse_drag_rects = None def clearSlots(self): self.active_slots = [] self.freeslots = {} for dent in self.dents: self.freeslots[dent.ix] = [] self.enabled_clinicians = () self._mouse_drag_rects = None def set_active_slots(self, primary_slot, secondary_slots): ''' 1 primary slot can be active, and multiple secondary slots ''' self.active_slots = [] self.active_slots.append(primary_slot) for slot in secondary_slots: self.active_slots.append(slot) def enable_clinician_slots(self, clinicians): self.enabled_clinicians = clinicians def init_dicts(self): for dent in self.dents: self.freeslots[dent.ix] = [] self.appts[dent.ix] = () self.eTimes[dent.ix] = () self.lunches[dent.ix] = () self.memoDict[dent.ix] = "" def setStartTime(self, dent): self.daystart[dent.ix] = localsettings.minutesPastMidnight(dent.start) def setEndTime(self, dent): self.dayend[dent.ix] = localsettings.minutesPastMidnight(dent.end) def setMemo(self, dent): self.memoDict[dent.ix] = dent.memo def addSlot(self, slot): try: self.freeslots[slot.dent].append(slot) except KeyError: LOGGER.warning( "unable to show a slot for clinician %s", slot.dent) def setFlags(self, dent): self.flagDict[dent.ix] = dent.flag def sizeHint(self): return QtCore.QSize(40, 600) def minimumSizeHint(self): return QtCore.QSize(30, 200) def mouseMoveEvent(self, event): columnCount = len(self.dents) if columnCount == 0: return # nothing to do... and division by zero errors! columnWidth = (self.width() - self.timeOffset) / columnCount rect = QtCore.QRectF(0, self.headingHeight, self.timeOffset, self.height() - self.headingHeight) if rect.contains(event.pos()): # mouse is over the time column self.leaveEvent(event) return for col, dent in enumerate(self.dents): leftx = self.timeOffset + col * columnWidth # headings rect = QtCore.QRectF(leftx, 0, columnWidth, self.headingHeight) if rect.contains(event.pos()): self.selected_rect = rect QtWidgets.QToolTip.showText(event.globalPos(), dent.memo) return for slot in self.freeslots.get(dent.ix, []): slotstart = localsettings.pyTimeToMinutesPastMidnight( slot.date_time.time()) startcell = ( slotstart - self.startTime) / self.slotLength rect = QtCore.QRectF( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (slot.length / self.slotLength) * self.slotHeight) if rect.contains(event.pos()): self.selected_rect = rect feedback = '%d %s %s %s %s' % ( slot.length, _("mins starting at"), slot.date_time.strftime("%H:%M"), _("with"), dent.initials) QtWidgets.QToolTip.showText(event.globalPos(), feedback) self.update() return for appt in (self.appts[dent.ix] + self.eTimes[dent.ix] + self.lunches[dent.ix]): if (self.daystart[dent.ix] <= appt.mpm < self.dayend[dent.ix]): startcell = (appt.mpm - self.startTime) / self.slotLength rect = QtCore.QRectF( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (appt.length / self.slotLength) * self.slotHeight) if rect.contains(event.pos()): self.selected_rect = rect self.update() return self.selected_rect = None self.update() def mousePressEvent(self, event): ''' catch the mouse press event - and if you have clicked on an appointment, emit a signal the signal has a LIST as argument - in case there are overlapping appointments or doubles etc... ''' columnCount = len(self.dents) if columnCount == 0: return # nothing to do... and division by zero errors! columnWidth = (self.width() - self.timeOffset) / columnCount for col, dent in enumerate(self.dents): # did user click a heading? leftx = self.timeOffset + col * columnWidth rect = QtCore.QRect(leftx, 0, columnWidth, self.headingHeight) if rect.contains(event.pos()): self.selected_rect = rect self.header_clicked_signal.emit(dent.ix, self.date) return for slot in self.freeslots.get(dent.ix, []): slotstart = localsettings.pyTimeToMinutesPastMidnight( slot.date_time.time()) startcell = ( slotstart - self.startTime) / self.slotLength rect = QtCore.QRect( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (slot.length / self.slotLength) * self.slotHeight) if rect.contains(event.pos()): self.slot_clicked_signal.emit(slot) return special_click = ( event.type() == QtCore.QEvent.MouseButtonDblClick or event.button() == QtCore.Qt.RightButton ) # double or right click leftx = self.timeOffset + col * columnWidth for appt in self.appts[dent.ix]: startcell = (appt.mpm - self.startTime) / self.slotLength rect = QtCore.QRect( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (appt.length / self.slotLength) * self.slotHeight) if rect.contains(event.pos()): self.selected_rect = rect if special_click: self.cancel_appointment_signal.emit( (appt.serialno,), "%d:%02d" % (appt.mpm // 60, appt.mpm % 60), dent.ix, self.date.toPyDate()) else: self.appt_clicked_signal.emit( appt.to_appt(self.date.toPyDate(), dent.ix)) return self.appt_clicked_signal.emit(None) for appt in self.lunches[dent.ix] + self.eTimes[dent.ix]: startcell = (appt.mpm - self.startTime) / self.slotLength rect = QtCore.QRect( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (appt.length / self.slotLength) * self.slotHeight) if rect.contains(event.pos()): self.selected_rect = rect start = "%d:%02d" % (appt.mpm // 60, appt.mpm % 60) finish = "%d:%02d" % ((appt.mpm + appt.length) // 60, (appt.mpm + appt.length) % 60) self.clear_slot_signal.emit(start, finish, dent.ix, self.date.toPyDate()) return def leaveEvent(self, event): self.selected_rect = None self.update() def dragEnterEvent(self, event): self._mouse_drag_rects = None self.mouse_drag_rect = None self.drag_appt = None if event.mimeData().hasFormat("application/x-appointment"): data = event.mimeData() bstream = data.retrieveData("application/x-appointment", QtCore.QVariant.ByteArray) appt = pickle.loads(bstream) if self.date >= localsettings.currentDay(): self.drag_appt = appt event.accept() else: event.ignore() else: event.ignore() @property def is_dragging(self): return self.mouse_drag_rect is not None @property def mouse_drag_rects(self): if self._mouse_drag_rects is None: self._mouse_drag_rects = [] columnCount = len(self.dents) if columnCount == 0: return self._mouse_drag_rects columnWidth = (self.width() - self.timeOffset) / columnCount for col, dent in enumerate(self.dents): left_x = self.timeOffset + (col) * columnWidth if DiaryScheduleController.ignore_emergency_spaces(): e_times = () else: e_times = self.eTimes[dent.ix] busy_times = [(0, dent.start_mpm)] for block in sorted( e_times + self.lunches[dent.ix] + self.appts[dent.ix]): busy_times.append((block.mpm, block.end_mpm)) busy_times.append((dent.end_mpm, 1440)) for pos, (start, finish) in enumerate((busy_times)[:-1]): next_start = busy_times[pos + 1][0] if next_start - finish >= self.drag_appt.length: startcell = (finish - self.startTime) / self.slotLength top_y = startcell * \ self.slotHeight + self.headingHeight height = ((next_start - finish) / self.slotLength) * \ self.slotHeight rect = QtCore.QRectF( left_x, top_y, columnWidth, height) self._mouse_drag_rects.append((dent.ix, rect)) return self._mouse_drag_rects def dragMoveEvent(self, event): self.mouse_drag_rect = None if (self.date >= localsettings.currentDay() and event.mimeData().hasFormat("application/x-appointment")): self.dropPos = QtCore.QPointF(event.pos()) for dent_ix, rect_f in self.mouse_drag_rects: if rect_f.contains(self.dropPos): self.mouse_drag_rect = (dent_ix, rect_f) # now handle the situation where the drag lower border # is outwith the slot height = (self.drag_appt.length / self.slotLength) \ * self.slotHeight if self.dropPos.y() + height >= rect_f.bottom(): self.dropPos = QtCore.QPointF( self.dropPos.x(), rect_f.bottom() - height) break if self.is_dragging: event.accept() else: event.ignore() self.update() else: event.ignore() def dragLeaveEvent(self, event): self.mouse_drag_rect = None self.update() event.accept() def dropEvent(self, event): if not self.is_dragging: event.ignore() LOGGER.debug("%s was dropped at %s", self.drag_appt, self.dropPos) date_time = datetime.datetime.combine( self.date.toPyDate(), localsettings.minutesPastMidnightToPyTime(self.drop_time())) dent = self.mouse_drag_rect[0] slot = appointments.FreeSlot(date_time, dent, self.drag_appt.length) self.appt_dropped_signal.emit(self.drag_appt, slot) self.mouse_drag_rect = None self.drag_appt = None event.accept() def drop_time(self): ''' returns minutes past midnight of the drop. ''' current_row = (self.dropPos.y() - self.headingHeight) / self.slotHeight mpm = self.startTime + (current_row * self.slotLength) mpm = int(5 * round(float(mpm) / 5)) return mpm def paintEvent(self, event=None): ''' draws the widget - recalled at any point by instance.update() ''' if len(self.dents) == 0: return # blank widget if no dents working self.dragLine = None painter = QtGui.QPainter(self) painter.setBrush(BGCOLOR) currentSlot = 0 self.font.setPointSize(localsettings.appointmentFontSize) fm = QtGui.QFontMetrics(self.font) painter.setFont(self.font) self.timeOffset = fm.width(" 88:88 ") self.headingHeight = fm.height() self.slotHeight = ( self.height() - self.headingHeight) / self.slotCount columnCount = len(self.dents) if columnCount == 0: columnCount = 1 # avoid division by zero!! columnWidth = (self.width() - self.timeOffset) / columnCount # put the times down the side while currentSlot < self.slotCount: # offset the first time. if (currentSlot + 2) % self.textDetail == 0: y = 0.8 * self.headingHeight + currentSlot * self.slotHeight trect = QtCore.QRectF( 0, y, self.timeOffset, self.textDetail * self.slotHeight) painter.setPen(BLACK_PEN) slot_time = self.startTime + currentSlot * self.slotLength painter.drawText( trect, QtCore.Qt.AlignHCenter, localsettings.humanTime(slot_time)) currentSlot += 1 col = 0 highlighted_rect = None highlighted_rects = [] for dent in self.dents: leftx = self.timeOffset + col * columnWidth rightx = self.timeOffset + (col + 1) * columnWidth # headings painter.setPen(BLACK_PEN) painter.setBrush(APPTCOLORS["HEADER"]) rect = QtCore.QRectF(leftx, 0, columnWidth, self.headingHeight) painter.drawRoundedRect(rect, 5, 5) initials = localsettings.apptix_reverse.get(dent.ix) if dent.memo != "": initials = "*%s*" % initials painter.drawText(rect, QtCore.Qt.AlignHCenter, initials) # dentist start/finish painter.setBrush(BGCOLOR) startcell = ((self.daystart[dent.ix] - self.startTime) / self.slotLength) length = self.dayend[dent.ix] - self.daystart[dent.ix] startY = startcell * self.slotHeight + self.headingHeight endY = (length / self.slotLength) * self.slotHeight rect = QtCore.QRectF(leftx, startY, columnWidth, endY) if self.flagDict[dent.ix]: # don't draw a white canvas if dentist is out of office # a white canvas painter.save() painter.drawRect(rect) # grey lines painter.setPen(GREYLINE_PEN) y = startY while y < startY + endY: painter.drawLine(leftx, y, rightx, y) y += self.slotHeight / 2 painter.restore() painter.setPen(BLACK_PEN) # emergencies for appt in self.eTimes[dent.ix]: painter.save() if (self.daystart[dent.ix] <= appt.mpm < self.dayend[dent.ix]): startcell = ( appt.mpm - self.startTime) / self.slotLength rect = QtCore.QRectF( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (appt.length / self.slotLength) * self.slotHeight) if self.mode == self.SCHEDULING_MODE: painter.setBrush(APPTCOLORS["BUSY"]) painter.setPen(GREY_PEN) elif appt.isEmergency: painter.setBrush(APPTCOLORS["EMERGENCY"]) elif appt.name.upper() in APPTCOLORS: painter.setBrush(APPTCOLORS[appt.name.upper()]) # elif appt.cset in APPTCOLORS: # painter.setBrush(APPTCOLORS[appt.cset]) else: painter.setBrush(APPTCOLORS["default"]) painter.drawRect(rect) text = appt.name[:5] if len(text) < len(appt.name): text += ".." painter.drawText(rect, QtCore.Qt.AlignLeft, text) painter.restore() painter.save() painter.setBrush(APPTCOLORS["LUNCH"]) for appt in self.lunches[dent.ix]: if (self.daystart[dent.ix] <= appt.mpm < self.dayend[dent.ix]): startcell = \ (appt.mpm - self.startTime) / self.slotLength rect = QtCore.QRectF( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (appt.length / self.slotLength) * self.slotHeight) if self.mode == self.SCHEDULING_MODE: painter.setPen(GREY_PEN) else: painter.setPen(BLACK_PEN) painter.drawRect(rect) painter.drawText(rect, _("Lunch"), CENTRE_OPTION) painter.restore() # appts for appt in self.appts[dent.ix]: if (self.diary_widget.pt and appt.serialno == self.diary_widget.pt.serialno): painter.setBrush(APPTCOLORS["current_patient"]) elif self.mode == self.SCHEDULING_MODE: painter.setPen(GREY_PEN) painter.setBrush(APPTCOLORS["BUSY"]) elif appt.name.upper() in APPTCOLORS: painter.setBrush(APPTCOLORS[appt.name.upper()]) elif appt.cset in APPTCOLORS: painter.setBrush(APPTCOLORS[appt.cset]) else: painter.setBrush(APPTCOLORS["BUSY"]) startcell = (appt.mpm - self.startTime) / self.slotLength rect = QtCore.QRectF( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (appt.length / self.slotLength) * self.slotHeight ) painter.drawRoundedRect(rect, 5, 5) text = appt.trt[:5] if len(text) < len(appt.trt): text += ".." painter.drawText(rect, text, CENTRE_OPTION) h_app = self.diary_widget.highlighted_appointment if h_app: # print h_app, appt if appt.serialno == h_app.serialno: appt.apptix = dent.ix if h_app == appt: highlighted_rect = rect else: highlighted_rects.append(rect) # slots painter.save() for slot in self.freeslots.get(dent.ix, []): slotstart = localsettings.pyTimeToMinutesPastMidnight( slot.date_time.time()) startcell = ( slotstart - self.startTime) / self.slotLength rect = QtCore.QRectF( leftx, startcell * self.slotHeight + self.headingHeight, columnWidth, (slot.length / self.slotLength) * self.slotHeight) if slot.is_primary: brush = APPTCOLORS["SLOT"] else: brush = APPTCOLORS["SLOT2"] if slot in self.active_slots: painter.setPen(BIG_RED_PEN) if self.blink_on: painter.setOpacity(1) else: painter.setOpacity(0.3) else: painter.setPen(RED_PEN) painter.setOpacity(0.6) painter.setBrush(brush) painter.drawRoundedRect( rect.adjusted(1, 0, -1, 0), 5, 5) painter.setOpacity(1) painter.drawText(rect, QtCore.Qt.AlignCenter, "%s" % slot.length) painter.restore() # drag drop if (self.is_dragging and self.mouse_drag_rect[0] == dent.ix): painter.save() rect = self.mouse_drag_rect[1] painter.setBrush(APPTCOLORS["ACTIVE_SLOT"]) painter.drawRect(rect) painter.setPen(RED_PEN) height = (self.drag_appt.length / self.slotLength) \ * self.slotHeight rect = QtCore.QRectF(leftx, self.dropPos.y(), columnWidth - 1, height) painter.drawRect(rect) self.dragLine = QtCore.QLine(0, self.dropPos.y(), self.width(), self.dropPos.y()) trect = QtCore.QRectF(0, self.dropPos.y(), self.timeOffset, height) painter.drawRect(trect) painter.drawText(trect, QtCore.Qt.AlignHCenter, localsettings.humanTime(self.drop_time())) painter.restore() if col > 0: painter.save() painter.setPen(BLACK_PEN) painter.drawLine(leftx, 0, leftx, self.height()) painter.restore() col += 1 painter.setBrush(TRANSPARENT) if self.selected_rect is not None: painter.setPen(ORANGE_PEN) painter.drawRoundedRect(self.selected_rect, 5, 5) if highlighted_rect: painter.setPen(BIG_RED_PEN) painter.drawRect(highlighted_rect.adjusted(2, 0, -2, 0)) for h_rect in highlighted_rects: painter.setPen(RED_PEN) painter.drawRect(h_rect) if self.dragLine: painter.setPen(RED_PEN) painter.drawLine(self.dragLine) def toggle_blink(self): if self.mode != self.SCHEDULING_MODE: return self.blink_on = self.blink_timer.state self.update() if __name__ == "__main__": app = QtWidgets.QApplication([]) form = AppointmentOverviewWidget("0800", "1900", 15, 2, None) form.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/appointmentwidget.py0000644000175000017500000013014713015432051027741 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides one class - the appointment widget the canvas is a subclass of this ''' import datetime from functools import partial import logging import pickle from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui import colours from openmolar.qt4gui.dialogs.blockslot import BlockDialog from openmolar.qt4gui.customwidgets.schedule_control \ import DiaryScheduleController LOGGER = logging.getLogger("openmolar") BGCOLOR = QtCore.Qt.transparent FREECOLOR = colours.APPT_Background LINECOLOR = colours.APPT_LINECOLOUR APPTCOLORS = colours.APPTCOLORS TRANSPARENT = colours.TRANSPARENT BLACK_PEN = QtGui.QPen(QtCore.Qt.black, 1) GREY_PEN = QtGui.QPen(QtCore.Qt.gray, 1) RED_PEN = QtGui.QPen(QtCore.Qt.red, 2) BIG_RED_PEN = QtGui.QPen(QtCore.Qt.red, 4) BLUE_PEN = QtGui.QPen(QtCore.Qt.blue, 2) CENTRE_OPTION = QtGui.QTextOption(QtCore.Qt.AlignCenter) CENTRE_OPTION.setWrapMode(QtGui.QTextOption.WordWrap) RIGHT_OPTION = QtGui.QTextOption(QtCore.Qt.AlignRight|QtCore.Qt.AlignVCenter) class AppointmentWidget(QtWidgets.QFrame): ''' a custom widget to for a dental appointment book useage is (startTime,finishTime, parentWidget - optional) startTime,finishTime in format HHMM or HMM or HH:MM or H:MM slotDuration is the minimum slot length - typically 5 minutes textDetail is the number of slots to draw before writing the time text parentWidget =optional ''' selected_serialno = None locations = {} BROWSING_MODE = 0 SCHEDULING_MODE = 1 BLOCKING_MODE = 2 NOTES_MODE = 3 mode = None # signal has dent, time, length slot_clicked_signal = QtCore.pyqtSignal(object) print_me_signal = QtCore.pyqtSignal(object) print_mh_signal = QtCore.pyqtSignal(object) mh_form_date_signal = QtCore.pyqtSignal(object) new_memo_signal = QtCore.pyqtSignal(object, object) location_signal = QtCore.pyqtSignal(object) edit_memo_signal = QtCore.pyqtSignal(object, object, object) block_empty_slot_signal = QtCore.pyqtSignal(object) appt_empty_slot_signal = QtCore.pyqtSignal(object) cancel_appointment_signal = QtCore.pyqtSignal(object, object, object) clear_slot_signal = QtCore.pyqtSignal(object, object, object) load_patients_signal = QtCore.pyqtSignal(object) appt_clicked_signal = QtCore.pyqtSignal(object) appt_dropped_signal = QtCore.pyqtSignal(object, object, object) def __init__(self, sTime, fTime, diary_widget): QtWidgets.QFrame.__init__(self, diary_widget) LOGGER.debug("Initiating diary widget %s with parent %s", self, diary_widget) self.header_frame = QtWidgets.QFrame(self) self.diary_widget = diary_widget icon = QtGui.QIcon(QtGui.QPixmap(":/ps.png")) self.printButton = QtWidgets.QPushButton(icon, "", self) self.printButton.setMaximumWidth(50) self.printButton.clicked.connect(self.printme) self.header_label = QtWidgets.QLabel("dent", self.header_frame) self.header_label.setAlignment(QtCore.Qt.AlignCenter) font = QtGui.QFont("Sans", 14, 75) self.header_label.setFont(font) self.memo_lineEdit = QtWidgets.QLineEdit(self) self.memo_lineEdit.setText("hello") self.memo_lineEdit.setAlignment(QtCore.Qt.AlignCenter) self.memo_lineEdit.setMaxLength(30) # due to schema restrictions :( font = QtGui.QFont("Sans", 12, 75, True) self.memo_lineEdit.setFont(font) # self.memo_lineEdit.setStyleSheet("background:white") self.dentist = "DENTIST" self.apptix = 0 glay = QtWidgets.QGridLayout(self.header_frame) glay.setSpacing(2) glay.setContentsMargins(1, 1, 1, 1) glay.addWidget(self.printButton, 0, 1) glay.addWidget(self.header_label, 0, 0) glay.addWidget(self.memo_lineEdit, 1, 0, 1, 2) self.scrollArea = QtWidgets.QScrollArea() self.scrollArea.setWidgetResizable(True) self.canvas = AppointmentCanvas(self) self.scrollArea.setWidget(self.canvas) self.setDayStartTime(sTime) self.setStartTime(sTime) self.setDayEndTime(fTime) self.setEndTime(fTime) self.OOlabel = QtWidgets.QLabel(_("Out Of Office")) self.OOlabel.setWordWrap(True) self.OOlabel.setAlignment(QtCore.Qt.AlignCenter) self.OOlabel.setSizePolicy(QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)) lay = QtWidgets.QVBoxLayout(self) lay.setSpacing(0) lay.setContentsMargins(1, 1, 1, 1) lay.addWidget(self.header_frame) lay.addWidget(self.OOlabel) lay.addWidget(self.scrollArea) self.outofoffice = False self.setOutOfOffice(False) self.setMinimumSize(self.minimumSizeHint()) # self.setMaximumSize(self.maximumSizeHint()) self.signals() def setOutOfOffice(self, val): ''' toggle out of office ''' self.outofoffice = val self.OOlabel.setVisible(val) self.scrollArea.setVisible(not val) def setDentist(self, apptix): ''' update the dentist the widget relates to ''' self.apptix = apptix self.dentist = localsettings.apptix_reverse.get(apptix, "??") def sizeHint(self): ''' set an (arbitrary) size for the widget ''' return QtCore.QSize(200, 400) def minimumSizeHint(self): ''' set an (arbitrary) minimum size for the widget ''' return QtCore.QSize(120, 300) def maximumSizeHint(self): ''' widget looks daft if too wide ''' return QtCore.QSize(500, 16777215) def setDayStartTime(self, sTime): ''' a public method to set the Practice Day Start ''' self.canvas.setDayStartTime(sTime) def setDayEndTime(self, fTime): ''' a public method to set the Practice Day End ''' self.canvas.setDayEndTime(fTime) def setStartTime(self, sTime): ''' a public method to set the earliest appointment available ''' self.canvas.setStartTime(sTime) def setEndTime(self, fTime): ''' a public method to set the end of the working day ''' self.canvas.setEndTime(fTime) def setCurrentTime(self, t): ''' send it a value like "HHMM" or "HH:MM" to draw a marker at that time ''' return self.canvas.setCurrentTime(t) def clearAppts(self): ''' resets - the widget values - DOES NOT REDRAW THE WIDGET ''' self.canvas.appts = [] self.canvas.doubleAppts = [] self.canvas._rows = {} self.canvas._drag_rows = None self.canvas.freeslots = [] self.clear_active_slots() self.locations = {} def clear_active_slots(self): self.canvas.active_slots = [] def printme(self): ''' emits a signal when the print button is clicked ''' self.print_me_signal.emit(self.apptix) def newMemo(self): ''' user has edited the memo line Edit - emit a signal so the gui can handle it ''' self.new_memo_signal.emit(self.dentist, self.memo_lineEdit.text()) def signals(self): ''' set up the widget's signals and slots ''' self.memo_lineEdit.editingFinished.connect(self.newMemo) def showEvent(self, event=None): if self.diary_widget.pt: self.selected_serialno = self.diary_widget.pt.serialno else: self.selected_serialno = None def update(self): if not self.outofoffice: self.canvas.update() def setAppointment(self, app): ''' adds an appointment to the widget dictionary of appointments typical useage is instance.setAppointment ("0820","0900","NAME","serialno","trt1", "trt2","trt3","Memo", modtime) NOTE - this also appts to the widgets dictionary which has row number as key, used for signals when appts are clicked (5, 915, 930, 'MCPHERSON I', 6155L, 'EXAM', '', '', '', 1, 73, 0, 0, timestamp) (5, 1100, 1130, 'EMERGENCY', 0L, '', '', '', '', -128, 0, 0, 0, timestamp) ''' app.startcell = self.canvas.getCell_from_time(str(app.start)) app.endcell = self.canvas.getCell_from_time(str(app.end)) app.location = self.locations.get(app.serialno) if app.endcell == app.startcell: # double and family appointments!! app.endcell += 1 self.canvas.doubleAppts.append(app) else: self.canvas.appts.append(app) if app.serialno == 0: app.serialno = self.canvas.duplicateNo self.canvas.duplicateNo -= 1 for row in range(app.startcell, app.endcell): if row in self.canvas.rows: self.canvas.rows[row].append(app.serialno) else: self.canvas.rows[row] = [app.serialno] def set_locations(self, locations): ''' pass a dictionary of patients who are in the building ''' self.locations = locations def addSlot(self, slot): ''' adds a slot to the widget's data ''' if slot.dent != self.apptix: return self.canvas.freeslots.append(slot) def set_active_slot(self, slot): ''' returns true if the slot is accepted (ie.. this book is for that dentist) ''' if slot is not None and slot.dent == self.apptix: startcell = self.canvas.getCell_from_mpm(slot.mpm) endcell = self.canvas.getCell_from_mpm(slot.mpm_end) self.canvas.active_slots.append((startcell, endcell)) self.canvas.ensure_slot_visible = True return True return False def enable_slots(self, bool_): self.canvas.enabled_slots = ( bool_ or self.canvas.active_slots != []) def set_scroll_bar(self, scroll_bar): self.scrollArea.setVerticalScrollBar(scroll_bar) def scroll_bar_off(self): policy = QtCore.Qt.ScrollBarAlwaysOff self.scrollArea.setVerticalScrollBarPolicy(policy) def cancel_appt(self, snos, time, apptix): self.cancel_appointment_signal.emit(snos, time, apptix) class BlinkTimer(QtCore.QTimer): ''' A singleton shared accross all canvas widgets to ensure flashing appointments are synchronised. ''' _instance = None _initiated = False state = True def __new__(cls, *args, **kwargs): if not cls._instance: cls._instance = super( BlinkTimer, cls).__new__(cls, *args, **kwargs) return cls._instance def __init__(self, parent=None): if not self._initiated: super(BlinkTimer, self).__init__(parent) self.start(1000) self.timeout.connect(self._toggle) self._initiated = True def _toggle(self): self.state = not self.state class AppointmentCanvas(QtWidgets.QWidget): ''' the canvas for me to draw on ''' blink_on = True # a boolean which toggles value enabled_slots = True ensure_slot_visible = True LOCATION_FONT = QtGui.QFont("Sans", 14, 75) def __init__(self, pWidget): QtWidgets.QWidget.__init__(self, pWidget) self.setSizePolicy(QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)) self.setMinimumSize(self.minimumSizeHint()) self.pWidget = pWidget self.slotDuration = 5 # 5 minute slots self.textDetail = 3 # time printed every 3 slots self.slotNo = 12 self.dayEndTime = 60 self.dayStartTime = 0 self.startTime = 0 self.endTime = 60 self.appts = [] self.freeslots = [] self.doubleAppts = [] self._rows = {} self._drag_rows = None self.setTime = None self.selected_rows = (0, 0) self.setMouseTracking(True) self.duplicateNo = -1 # use this for serialnos =0 self.dragging = False self.drag_appt = None self.drop_time = None self.setAcceptDrops(True) self.qmenu = None self.mouse_freeslot = None self.active_slots = [] self.font = QtGui.QFont(self.fontInfo().family(), localsettings.appointmentFontSize) self.fm = QtGui.QFontMetrics(self.font) self.timeWidth = self.fm.width(" 88:88 ") self.slotHeight = self.fm.height() / self.textDetail self.blink_timer = BlinkTimer() self.blink_timer.timeout.connect(self.toggle_blink) @property def rows(self): return self._rows @property def drag_rows(self): if not DiaryScheduleController.ignore_emergency_spaces(): return self.rows if self._drag_rows is None: self._drag_rows = self.rows.copy() for key, values in self.rows.items(): if values < [0]: self.drag_rows.pop(key) return self._drag_rows def setDayStartTime(self, sTime): ''' a public method to set the Practice Day Start ''' self.dayStartTime = self.minutesPastMidnight(sTime) def setDayEndTime(self, fTime): ''' a public method to set the Practice Day End ''' self.dayEndTime = self.minutesPastMidnight(fTime) self.calcSlotNo() def setStartTime(self, sTime): ''' a public method to set the earliest appointment available ''' self.startTime = self.minutesPastMidnight(sTime) self.firstSlot = self.getCell_from_time(sTime) + 1 def setEndTime(self, fTime): ''' a public method to set the end of the working day ''' self.endTime = self.minutesPastMidnight(fTime) self.lastSlot = self.getCell_from_time(fTime) def calcSlotNo(self): ''' work out how many 'slots' there are given the lenght of day and length of slots ''' self.slotNo = ( self.dayEndTime - self.dayStartTime) // self.slotDuration self.slotHeight = self.fm.height() / self.textDetail min_height_required = self.slotHeight * self.slotNo if min_height_required < self.pWidget.scrollArea.height() * .98: self.setMinimumHeight(self.pWidget.scrollArea.height() * .98) self.slotHeight = self.height() / self.slotNo else: self.setMinimumHeight(min_height_required) def resizeEvent(self, event): self.calcSlotNo() def minutesPastMidnight(self, t): ''' converts a time in the format of 'HHMM' or 'H:MM' (both strings) to minutes past midnight ''' hour, minute = int(t) // 100, int(t) % 100 return hour * 60 + minute def humanTime(self, t): ''' converts minutes past midnight(int) to format "HH:MM" ''' hour, minute = t // 60, int(t) % 60 return "%s:%02d" % (hour, minute) def setslotDuration(self, arg): ''' set the slotDuration (default is 5 minutes) ''' self.slotDuration = arg def setTextDetail(self, arg): ''' set the number of rows between text time slots ''' self.textDetail = arg def sizeHint(self): ''' set an (arbitrary) size for the widget ''' return QtCore.QSize(200, 500) def minimumSizeHint(self): ''' set an (arbitrary) minimum size for the widget ''' return QtCore.QSize(100, 200) def setCurrentTime(self, t): ''' send it a value like "HHMM" or "HH:MM" to draw a marker at that time ''' self.setTime = t if t and self.startTime < self.minutesPastMidnight(t) < self.endTime: return True def qTime(self, t): ''' converts minutes past midnight(int) to a QTime ''' hour, minute = t // 60, int(t) % 60 return QtCore.QTime(hour, minute) def getCell_from_time(self, t): ''' send a time - return the row number of that time ''' return self.getCell_from_mpm(self.minutesPastMidnight(t)) def getCell_from_mpm(self, mpm): ''' send a time - return the row number of that time ''' return (mpm - self.dayStartTime) // self.slotDuration def getTime_from_Cell(self, row): ''' you know the row.. what time is that ''' mpm = self.slotDuration * row + self.dayStartTime return localsettings.minutesPastMidnightToPyTime(mpm) def getPrev(self, arg): ''' what slot is the previous appt? ''' lower = arg while lower >= self.firstSlot: if lower in self.rows: lower += 1 break lower -= 1 return lower def getNext(self, arg): ''' what slot is the next appt? ''' upper = arg while upper < self.lastSlot: if upper in self.rows: break upper += 1 return upper def getApptBounds(self, row, patients): ''' get the start and finish of an appt this is complicated because the same patient may have 2 appointments on one day ''' row_list = sorted(self.rows.keys())[:] start_row, end_row = row, row chk_row = row while chk_row >= row_list[0]: chk_row -= 1 if self.rows.get(chk_row) == patients: start_row = chk_row else: break chk_row = row while chk_row <= row_list[-1]: chk_row += 1 if self.rows.get(chk_row) == patients: end_row = chk_row else: break return (start_row, end_row+1) def dragEnterEvent(self, event): if event.mimeData().hasFormat("application/x-appointment"): data = event.mimeData() bstream = data.retrieveData("application/x-appointment", QtCore.QVariant.ByteArray) self.drag_appt = pickle.loads(bstream) event.accept() else: event.ignore() def dragMoveEvent(self, event): if event.mimeData().hasFormat("application/x-appointment"): y = event.pos().y() yOffset = self.height() / self.slotNo self.drag_startrow = int(y // yOffset) if (self.drag_startrow < self.firstSlot - 1 or self.drag_startrow >= self.lastSlot or self.drag_startrow in self.drag_rows): allowDrop = False else: n_rows = self.drag_appt.length // self.slotDuration self.drag_endrow = self.drag_startrow + n_rows # see if there's a long enough slot either side of the selected # row allowDrop = True row = None for row in range(self.drag_startrow, self.drag_endrow): if row in self.drag_rows or row >= self.lastSlot: allowDrop = False break if not allowDrop: allowDrop = True self.drag_startrow = row - n_rows self.drag_endrow = row for row in range(self.drag_startrow, row): if row in self.drag_rows or row < self.firstSlot - 1: allowDrop = False break if allowDrop: self.dragging = True self.drop_time = self.getTime_from_Cell(self.drag_startrow) self.update() event.accept() else: self.dragging = False self.update() event.ignore() else: self.update() event.accept() def dragLeaveEvent(self, event): self.dragging = False self.update() event.accept() def dropEvent(self, event): self.dragging = False self.pWidget.appt_dropped_signal.emit(self.drag_appt, self.drop_time, self.pWidget.apptix) self.drag_appt = None self.dropOffset = 0 event.accept() def appointment_clicked(self, start, finish, serialno): for appt in self.appts: if (appt.serialno == serialno and start == localsettings.wystimeToHumanTime(appt.start) and finish == localsettings.wystimeToHumanTime(appt.end)): self.pWidget.appt_clicked_signal.emit(appt) break def mouse_over_freeslot(self, pos): self.mouse_freeslot = None for slot in self.freeslots: startcell = self.getCell_from_mpm(slot.mpm) endcell = self.getCell_from_mpm(slot.mpm_end) rect = QtCore.QRectF( self.timeWidth, startcell * self.slotHeight, self.width() - self.timeWidth, (endcell - startcell) * self.slotHeight) if rect.contains(QtCore.QPointF(pos)): self.mouse_freeslot = slot return True def mouseMoveEvent(self, event): y = event.y() yOffset = self.height() / self.slotNo row = int(y // yOffset) if not (self.firstSlot - 1) < row < self.lastSlot: self.selected_rows = (0, 0) self.update() self.setToolTip("") return if self.mouse_over_freeslot(event.pos()): startcell = self.getCell_from_mpm(self.mouse_freeslot.mpm) endcell = self.getCell_from_mpm(self.mouse_freeslot.mpm_end) feedback = '''
    %s %s %s
    %s
    (%d %s)
    ''' % ( _("SLOT"), _("with"), self.pWidget.dentist, self.getTime_from_Cell(startcell).strftime("%H:%M"), (endcell - startcell) * self.slotDuration, _("minutes") ) self.setToolTip(feedback) self.selected_rows = (startcell, endcell) elif self.pWidget.mode in (self.pWidget.BROWSING_MODE, self.pWidget.NOTES_MODE, self.pWidget.SCHEDULING_MODE): feedback = "" if row in self.rows: sno_list = self.rows[row] self.selected_rows = self.getApptBounds(row, sno_list) self.update() for sno in sno_list: if sno < 1: continue for app in self.doubleAppts: if app.serialno == sno: feedback += '''%s
    %s
    %s - %s
    %s %s ''' % ( _("Double Appointment"), app.name, app.start, app.end, "
    ".join( ["  %s" % val for val in ( app.trt1, app.trt2, app.trt3) if val != ""]), '
    %s
    ' % app.memo if app.memo else "" ) else: newSelection = (self.getPrev(row), self.getNext(row)) if self.selected_rows != newSelection: self.selected_rows = newSelection self.update() start = int( self.dayStartTime + self.selected_rows[0] * self.slotDuration) finish = int( self.dayStartTime + self.selected_rows[1] * self.slotDuration) feedback = "%s %s" % (finish - start, _("Minutes Free")) self.setToolTip(feedback) if not feedback: QtWidgets.QToolTip.hideText() def mouseDoubleClickEvent(self, event): self.mousePressEvent(event) def mousePressEvent(self, event): ''' catch the mouse press event - and if you have clicked on an appointment, emit a signal the signal has a LIST as argument - in case there are overlapping appointments or doubles etc... ''' def singleClickMenuResult(result): ''' handle any qmenu input ''' if not result: return dent = localsettings.apptix.get(self.pWidget.dentist) if result.text() == _("Load Patient"): self.pWidget.load_patients_signal.emit(tuple(sno_list)) elif result.text() == _("Add/Edit Memo"): self.pWidget.edit_memo_signal.emit(tuple(sno_list), start, dent) elif result.text() == _("Set Patient Location"): self.pWidget.location_signal.emit(sno_list[0]) elif result.text() == _("Cancel Appointment"): self.pWidget.cancel_appt(tuple(sno_list), start, dent) elif result.text() == _("Clear Block"): self.pWidget.clear_slot_signal.emit(start, finish, dent) elif result.text() == _("Block or use this space"): self.block_use_space(qstart, qfinish) elif result.text() == _("Print A Medical Form"): self.pWidget.print_mh_signal.emit(tuple(sno_list)) elif result.text() == _("Save Medical Form Check Date"): self.pWidget.mh_form_date_signal.emit(tuple(sno_list)) yOffset = self.height() / self.slotNo row = event.y() // yOffset actions = [] if self.mouse_over_freeslot(event.pos()): self.pWidget.slot_clicked_signal.emit(self.mouse_freeslot) return elif self.selected_rows == (0, 0): return elif row in self.rows: start = self.humanTime(int( self.dayStartTime + self.selected_rows[0] * self.slotDuration)) finish = self.humanTime(int( self.dayStartTime + self.selected_rows[1] * self.slotDuration)) sno_list = self.rows[row] # ignore lunch and emergencies - serialno number is positive if sno_list[0] > 0: actions.append(_("Load Patient")) actions.append(None) actions.append(_("Set Patient Location")) actions.append(_("Add/Edit Memo")) actions.append(_("Cancel Appointment")) actions.append(None) actions.append(_("Print A Medical Form")) actions.append(_("Save Medical Form Check Date")) # this next function will emit the appt_clicked_signal self.appointment_clicked(start, finish, sno_list[0]) else: self.pWidget.appt_clicked_signal.emit(None) actions.append(_("Clear Block")) else: # no-one in the book... qstart = self.qTime(int( self.dayStartTime + self.selected_rows[0] * self.slotDuration)) qfinish = self.qTime(int( self.dayStartTime + self.selected_rows[1] * self.slotDuration)) if (self.firstSlot - 1) < row < self.lastSlot: actions.append(_("Block or use this space")) if self.qmenu and event.type() == QtCore.QEvent.MouseButtonDblClick: singleClickMenuResult(self.qmenu.defaultAction()) self.qmenu.clear() return self.qmenu = QtWidgets.QMenu(self) for i, action in enumerate(actions): if action is None: self.qmenu.addSeparator() continue q_act = self.qmenu.addAction(action) if i == 0: self.qmenu.setDefaultAction(q_act) if event.button() == QtCore.Qt.RightButton: singleClickMenuResult(self.qmenu.exec_(event.globalPos())) def block_use_space(self, start, finish): dl = BlockDialog(self.pWidget) dl.setTimes(start, finish) dl.setPatient(self.pWidget.diary_widget.pt) if dl.exec_(): adjstart = dl.start_timeEdit.time() adjfinish = dl.finish_timeEdit.time() if finish < start: QtWidgets.QMessageBox.information(self, _("Whoops!"), _("Bad Time Sequence!")) if dl.block: reason = str(dl.comboBox.currentText())[:30] args = (start, finish, adjstart, adjfinish, localsettings.apptix.get(self.pWidget.dentist), reason) self.pWidget.block_empty_slot_signal.emit(args) else: reason = dl.reason_comboBox.currentText() self.pWidget.appt_empty_slot_signal.emit( (start, finish, adjstart, adjfinish, localsettings.apptix.get(self.pWidget.dentist), reason, dl.patient)) def leaveEvent(self, event): self.mouse_down = False self.selected_rows = (0, 0) self.update() def paintEvent(self, event=None): ''' draws the book - recalled at any point by instance.update() ''' painter = QtGui.QPainter(self) painter.setFont(self.font) # define and draw the white boundary painter.setBrush(colours.APPT_Background) painter.setPen(QtGui.QPen(colours.APPT_Background, 1)) top = (self.firstSlot - 1) * self.slotHeight bottom = (self.lastSlot + 1 - self.firstSlot) * self.slotHeight colwidth = self.width() - self.timeWidth mh_width = painter.fontMetrics().width("+") rect = QtCore.QRectF(self.timeWidth, top, colwidth, bottom) painter.drawRect(rect) # DRAW HORIZONTAL LINES AND TIMES for currentSlot in range(self.slotNo): textneeded = True if currentSlot % self.textDetail == 0 else False y = currentSlot * self.slotHeight # code to check if within the appointment hours if self.firstSlot <= currentSlot <= self.lastSlot: painter.setPen(QtGui.QPen(LINECOLOR, 1)) painter.drawLine(self.timeWidth + 1, y, self.width() - 1, y) if textneeded: trect = QtCore.QRectF(0, y, self.timeWidth, y + self.textDetail * self.slotHeight) painter.setPen(QtGui.QPen(QtCore.Qt.black, 1)) painter.drawLine(0, y, self.timeWidth, y) painter.drawText( trect, QtCore.Qt.AlignLeft, self.humanTime( self.dayStartTime + (currentSlot * self.slotDuration))) # layout appts painter.save() painter.setPen(BLACK_PEN) selected_rect, highlighted_rect = None, None highlighted_rects = [] locations = [] for app in self.appts: painter.save() rect = QtCore.QRectF( self.timeWidth, app.startcell * self.slotHeight, colwidth - painter.pen().width(), (app.endcell - app.startcell) * self.slotHeight) if app.location: locations.append((app.location, rect.adjusted(0,-10, 0, 10))) if (app.serialno != 0 and app.serialno == self.pWidget.selected_serialno): painter.setBrush(QtGui.QColor("orange")) elif self.pWidget.mode == self.pWidget.SCHEDULING_MODE: painter.setBrush(APPTCOLORS["BUSY"]) painter.setPen(GREY_PEN) elif app.cset in APPTCOLORS: painter.setBrush(APPTCOLORS[app.cset]) elif app.name.upper() in APPTCOLORS: painter.setBrush(APPTCOLORS[app.name.upper()]) elif app.flag0 == -128: painter.setBrush(APPTCOLORS["BUSY"]) else: painter.setBrush(APPTCOLORS["default"]) if not (app.serialno == 0 and (app.endcell < self.firstSlot or app.startcell > self.lastSlot)): painter.drawRoundedRect(rect, 5, 5) mytext = " ".join((app.name.title(), app.trt1, app.trt2, app.trt3, app.memo)) if app.location == "waiting room": painter.setPen(BLUE_PEN) painter.drawText(rect, mytext, CENTRE_OPTION) # highlight any appointments booked today if app.serialno > 0: if app.timestamp and \ app.timestamp.date() == localsettings.currentDay(): e_height = app.endcell - app.startcell if e_height == 0: e_height = 2 elif e_height > 5: e_height = 5 e_rect = QtCore.QRectF( self.width() - self.timeWidth / 2, app.startcell * self.slotHeight, self.timeWidth / 2, self.slotHeight * e_height # rect.height() ).adjusted(2, 2, -2, -2) painter.setPen(colours.BOOKED_TODAY) painter.setBrush(colours.BOOKED_TODAY) painter.drawEllipse(e_rect) if app.mh_form_required: m_height = app.endcell - app.startcell if m_height > 3: m_height = 3 med_rect = QtCore.QRectF( self.timeWidth, app.startcell * self.slotHeight, mh_width * 2, self.slotHeight * m_height ).adjusted(2, 2, 0, 0) painter.setBrush(colours.APPT_MED_BACKGROUND) painter.setPen(colours.APPT_Background) painter.drawRect(med_rect) painter.setPen(colours.APPT_MED_FORM) painter.drawText(med_rect, "+", CENTRE_OPTION) if app == self.pWidget.diary_widget.highlighted_appointment: highlighted_rect = rect elif (self.pWidget.diary_widget.highlighted_appointment and app.serialno == self.pWidget.diary_widget.highlighted_appointment.serialno): highlighted_rects.append(rect) elif self.selected_rows == (app.startcell, app.endcell): selected_rect = rect painter.restore() painter.restore() painter.save() for appt in self.doubleAppts: rect = QtCore.QRectF( colwidth, app.startcell * self.slotHeight, colwidth, self.slotHeight) painter.setBrush(APPTCOLORS["DOUBLE"]) painter.drawRect(rect) painter.restore() painter.save() for slot in self.freeslots: startcell = self.getCell_from_mpm(slot.mpm) endcell = self.getCell_from_mpm(slot.mpm_end) if slot.is_primary: brush = APPTCOLORS["SLOT"] else: brush = APPTCOLORS["SLOT2"] if (startcell, endcell) in self.active_slots: painter.setPen(BIG_RED_PEN) if self.blink_on: painter.setOpacity(1) # brush = APPTCOLORS["ACTIVE_SLOT_BOLD"] else: painter.setOpacity(0.3) if self.ensure_slot_visible: self.ensure_visible(0, startcell * self.slotHeight) else: painter.setPen(RED_PEN) painter.setOpacity(0.6) painter.setBrush(brush) rect = QtCore.QRectF( self.timeWidth + 1, startcell * self.slotHeight, colwidth - 3, (endcell - startcell) * self.slotHeight) painter.drawRoundedRect(rect, 5, 5) slot_duration = (endcell - startcell) * self.slotDuration painter.setOpacity(1) painter.drawText(rect, "%s mins" % slot_duration, CENTRE_OPTION) painter.restore() # highlight current time if self.setTime: cellno = self.getCell_from_time(self.setTime) painter.setPen(BLUE_PEN) painter.setBrush(QtCore.Qt.blue) corner1 = [self.timeWidth * 1.4, cellno * self.slotHeight] corner2 = [self.timeWidth, (cellno - 0.5) * self.slotHeight] corner3 = [self.timeWidth, (cellno + 0.5) * self.slotHeight] triangle = corner1 + corner2 + corner3 polygon = QtGui.QPolygon() polygon.setPoints(triangle) painter.drawPolygon(polygon) corner1 = [self.width() - self.timeWidth * 0.4, cellno * self.slotHeight] corner2 = [self.width(), (cellno - 0.5) * self.slotHeight] corner3 = [self.width(), (cellno + 0.5) * self.slotHeight] triangle = corner1 + corner2 + corner3 polygon = QtGui.QPolygon() polygon.setPoints(triangle) painter.drawPolygon(polygon) painter.setBrush(QtGui.QBrush(BGCOLOR)) painter.save() painter.setPen(BLUE_PEN) painter.setFont(self.LOCATION_FONT) painter.setBrush(colours.BOOKED_TODAY) for location, rect in locations: painter.drawText(rect, "%s " % location[0], RIGHT_OPTION) painter.restore() if self.dragging: painter.setPen(RED_PEN) y = self.drag_startrow * self.slotHeight y2 = self.drag_endrow * self.slotHeight painter.drawLine(0, y, self.width(), y) painter.setBrush(QtGui.QColor("yellow")) trect = QtCore.QRectF(self.timeWidth, y, self.width() - self.timeWidth, y2 - y) painter.drawRect(trect) droptime = self.drop_time.strftime("%H:%M") trect = QtCore.QRectF(0, y, self.timeWidth, y2 - y) painter.drawRect(trect) painter.drawText(trect, QtCore.Qt.AlignHCenter, droptime) elif (selected_rect is None and self.selected_rows != (0, 0) and self.pWidget.mode == self.pWidget.BROWSING_MODE): startcell, endcell = self.selected_rows selected_rect = QtCore.QRectF( self.timeWidth + 1, startcell * self.slotHeight, colwidth - 3, (endcell - startcell) * self.slotHeight) if selected_rect: painter.setPen(QtGui.QPen(QtGui.QColor("orange"), 3)) painter.drawRect(selected_rect) if highlighted_rect: painter.setPen(QtGui.QPen(QtGui.QColor("red"), 5)) painter.drawRect(highlighted_rect.adjusted(2, 0, -2, 0)) for h_rect in highlighted_rects: painter.setPen(QtGui.QPen(QtGui.QColor("red"), 3)) painter.drawRect(h_rect) def toggle_blink(self): if self.pWidget.mode != self.pWidget.SCHEDULING_MODE: return self.blink_on = self.blink_timer.state self.update() def ensure_visible(self, x, y): QtCore.QTimer.singleShot( 5, partial(self.pWidget.scrollArea.ensureVisible, x, y)) if __name__ == "__main__": from openmolar.dbtools import appointments from openmolar.dbtools.brief_patient import BriefPatient def clicktest(*args): print("clicktest", args) import sys localsettings.initiate() app = QtWidgets.QApplication(sys.argv) # -initiate a book starttime 08:00 endtime 10:00 # -five minute slots, text every 3 slots # from openmolar.qt4gui import maingui # parent = maingui.OpenmolarGui() parent = QtWidgets.QFrame() parent.highlighted_appointment = None parent.pt = BriefPatient(1) form = AppointmentWidget("0800", "1500", parent) form.setStartTime("0830") form.setEndTime("1430") form.apptix = 5 print(''' created a calendar with start %d minutes past midnight 1st appointment %d minutes past midnight appointments finish %d minutes past midnight day end %d minutes past midnight - %d %d minutes slots''' % ( form.canvas.dayStartTime, form.canvas.startTime, form.canvas.endTime, form.canvas.dayEndTime, form.canvas.slotNo, form.canvas.slotDuration)) form.setCurrentTime("945") form.clearAppts() dt = datetime.datetime.now() for tup in ( (5, 915, 930, 'MCDONALD I', 6155, 'EXAM', '', '', '', 1, 73, 0, 0, dt, dt.date()), (5, 1100, 1130, 'EMERGENCY', 0, '', '', '', '', -128, 0, 0, 0, dt, dt.date()), (5, 1300, 1400, 'LUNCH', 0, '', '', '', '', -128, 0, 0, 0, dt, dt.date()), (5, 1400, 1410, 'STAFF MEETING', 0, '', '', '', '', -128, 0, 0, 0, dt, dt.date()), (5, 930, 1005, 'TAYLOR J', 19373, 'FILL', '', '', '', 1, 80, 0, 0, dt, dt.date()), (5, 1210, 1230, 'TAYLOR J', 19373, 'FILL', '', '', '', 1, 80, 0, 0, dt, dt.date()),): appt = appointments.Appointment(tup) form.setAppointment(appt) slot_date = datetime.datetime.combine(dt.date(), datetime.time(11, 30)) slot = appointments.FreeSlot(slot_date, 5, 40) form.addSlot(slot) slot = appointments.FreeSlot( slot_date + datetime.timedelta(minutes=60), 5, 30) form.addSlot(slot) form.set_active_slot(slot) form.load_patients_signal.connect(clicktest) form.clear_slot_signal.connect(clicktest) form.block_empty_slot_signal.connect(clicktest) form.print_me_signal.connect(clicktest) form.appt_empty_slot_signal.connect(clicktest) form.mode = form.SCHEDULING_MODE # form.mode = form.BROWSING_MODE v = QtWidgets.QVBoxLayout() v.setSpacing(0) v.addWidget(form) parent.setLayout(v) parent.show() sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/aptOVcontrol.py0000755000175000017500000001155412710144046026641 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from functools import partial import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") class control(QtWidgets.QLabel): ''' a custom label for the top of the appointment overview widgets ''' dayview_signal = QtCore.pyqtSignal(object) edit_hours_signal = QtCore.pyqtSignal(object) edit_memo_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): super(control, self).__init__(parent) self.setMinimumSize(80, 40) self.memo = "" self.setWordWrap(True) self.date = QtCore.QDate(1900, 1, 1) self.recent_double_click = False def setDate(self, arg): ''' takes a QDate ''' self.date = arg self.memo = "" self.updateLabels() def setMemo(self, arg): ''' takes a string ''' self.memo = arg self.updateLabels() def updateLabels(self): day = localsettings.readableDate(self.date.toPyDate()).replace( ",", "
    ") if self.memo != "": str = "
    %s
    %s
    " % (day, self.memo) else: str = "
    %s
    " % day self.setText(str) def mouseMoveEvent(self, e): self.setStyleSheet("background:white") def leaveEvent(self, e): self.setStyleSheet("") def mousePressEvent(self, event): QtCore.QTimer.singleShot( 200, partial(self.raise_context_menu, event.globalPos())) def raise_context_menu(self, point): if not self.recent_double_click: menu = QtWidgets.QMenu(self) action = menu.addAction(_("Switch to day view of this date")) action.triggered.connect(self.call_day_view) menu.setDefaultAction(action) menu.addSeparator() action = menu.addAction(_("Edit Memos")) action.triggered.connect(self.call_edit_memo) action = menu.addAction(_("Edit Clinician Hours")) action.triggered.connect(self.call_edit_hours) menu.exec_(point) def mouseDoubleClickEvent(self, event): LOGGER.debug("doubleclick") self.recent_double_click = True self.call_day_view() QtCore.QTimer.singleShot(500, self.reset_double_click) def reset_double_click(self): self.recent_double_click = False def call_day_view(self): LOGGER.debug("Call for Day View") self.dayview_signal.emit(self.date) def call_edit_hours(self): self.edit_hours_signal.emit(self.date) def call_edit_memo(self): self.edit_memo_signal.emit(self.date.toPyDate()) class _TestBook(QtWidgets.QWidget): def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.control = control() self.control.setDate(QtCore.QDate.currentDate().addDays(3)) layout = QtWidgets.QVBoxLayout(self) layout.addWidget(self.control) layout.addWidget(QtWidgets.QTextEdit()) def sizeHint(self): return QtCore.QSize(100, 400) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) widg = _TestBook() widg.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/calendars.py0000644000175000017500000007445012710144046026144 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import calendar import datetime from functools import partial import sys from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings CENTRE = QtGui.QTextOption(QtCore.Qt.AlignCenter | QtCore.Qt.AlignVCenter) RIGHT = QtGui.QTextOption(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter) LEFT = QtGui.QTextOption(QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter) class DayData(object): ''' a custom data object to hold information about the selected day ''' def __init__(self, dayDate): self.dayName = localsettings.longDate(dayDate) self.publicHoliday = "" self.dents = {} class controlCalendar(QtWidgets.QCalendarWidget): ''' a customised QCalendarWidget, overriding the defeault behaviour of the month foreward and back buttons ''' def __init__(self, *args): QtWidgets.QCalendarWidget.__init__(self, *args) self.setFirstDayOfWeek(QtCore.Qt.Monday) self.setGridVisible(True) self.setHorizontalHeaderFormat( QtWidgets.QCalendarWidget.SingleLetterDayNames) self.setVerticalHeaderFormat(QtWidgets.QCalendarWidget.NoVerticalHeader) self.setDateEditEnabled(True) self.setSelectedDate(QtCore.QDate.currentDate()) def jumpMonth(self, year, month): ''' a customisation so that the arrow buttons actually change the date jump through hoops to ensure that a null date isn't chosen eg february 30th ''' cur_date = self.selectedDate() d = QtCore.QDate() day = cur_date.day() while day and not d.setDate(year, month, day): day -= 1 if d != cur_date: self.setSelectedDate(d) def changeDate(self, d): ''' and alternative to setSelectedDate in that it will return False if no change has been made this is necessary as the ui relies on a signal from this widget ''' if self.selectedDate() == d: return False else: self.setSelectedDate(d) return True class weekCalendar(controlCalendar): week_changed_signal = QtCore.pyqtSignal(object) def __init__(self, *args): controlCalendar.__init__(self, *args) self.color = QtGui.QColor( self.palette().color(QtGui.QPalette.Highlight)) self.color.setAlpha(64) self.weekNo = self.selectedDate().weekNumber() self.selectionChanged.connect(self.update_) def update_(self): ''' emit a signal indicating the chosen week has changed ''' weekNo = self.selectedDate().weekNumber() if weekNo != self.weekNo: self.week_changed_signal.emit(self.selectedDate()) self.weekNo = weekNo self.updateCells() def paintCell(self, painter, rect, date): QtWidgets.QCalendarWidget.paintCell(self, painter, rect, date) if date.weekNumber()[0] == self.selectedDate().weekNumber()[0]: painter.fillRect(rect, self.color) class monthCalendar(QtWidgets.QWidget): ''' A month calendar ''' memo_dialog_signal = QtCore.pyqtSignal(object) public_holiday_signal = QtCore.pyqtSignal(object) selected_date_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): ''' initiate the widget ''' super(monthCalendar, self).__init__(parent) self.setSizePolicy( QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)) self.parent = parent self.rowNo = 1 self.colNo = 1 self.monthStarts = {} self.headingdata = {} self.data = {} self.dents = (0,) self.dentColWidths = {} self.defaultColWidth = 100 self.font = None self.setFont() self.setSelectedDate(datetime.date.today()) self.setMouseTracking(True) self.mouseBrush = QtGui.QColor(self.palette().color( QtGui.QPalette.Highlight)) self.mouseBrush.setAlpha(64) self.highlightedDate = None self.setMinimumSize(self.minimumSizeHint()) def sizeHint(self): ''' set an (arbitrary) size for the widget ''' return QtCore.QSize(400, 400) def minimumSizeHint(self): ''' set an (arbitrary) minimum size for the widget ''' return QtCore.QSize(200, 400) def minimumWidth(self): ''' calculate how much space we need to display the data ''' self.defaultColWidth = (self.width() - self.bankHolColwidth - self.vheaderwidth) / self.colNo vheaders_total = self.bankHolColwidth + self.vheaderwidth dentwidth = 0 for dent in self.dents: width = self.dentColWidths.get(dent, self.defaultColWidth) dentwidth += width minrequiredWidth = vheaders_total + dentwidth # if there is space, fill it up.... if self.width() > minrequiredWidth: factor = (self.width() - vheaders_total) / (dentwidth) for dent in self.dents: self.dentColWidths[dent] = self.dentColWidths[dent] * factor return minrequiredWidth def setDents(self, dents): ''' make the widget aware who's data it's showing dents is a tuple like (4, 5) ''' self.dents = (0,) + tuple(dents) self.colNo = len(self.dents) def setHeadingData(self, data): ''' sets attributes for any given day useful for Bank Hols etc... data is a dictionary {"mdd":"New Year's Day" , ...} ''' self.headingdata = data self.setBankHolColWidth() def setBankHolColWidth(self): ''' determine the width needed to display the public hols ''' self.bankHolColwidth = 20 for value in list(self.headingdata.values()): width = self.fm.width("%s " % value) if width > self.bankHolColwidth: self.bankHolColwidth = width def setData(self, data): ''' pass a dictionary like {"1209":[d1,d2]} where d1 and d2 are instances of appointments.DentistDay ''' self.data = {} for key in data: self.data[key] = {} for dent in data[key]: self.data[key][dent.ix] = dent self.setColWidths() def setColWidths(self): ''' update the widget's size (because data or font have changed) ''' self.dentColWidths = {} for ix in self.dents: self.dentColWidths[ix] = self.fm.width( localsettings.apptix_reverse.get(ix, "------")) for ix in self.dents: memo = "" for dentDict in list(self.data.values()): if ix in dentDict: dent = dentDict.get(ix) if dent: memo = dentDict[ix].memo if ix == 0: memo = memo.upper() elif dent.flag: memo += "18:55 - 18:55 " width = self.fm.width(memo) if width > self.dentColWidths[ix]: self.dentColWidths[ix] = width def setRowNo(self): ''' work out how many rows are required somewhere between (28-31) + one for a header ''' self.rowNo = calendar.monthrange(self.year, self.month)[1] + 2 def getDateFromPosition(self, xpos, ypos): rowheight = self.height() / self.rowNo day = int(ypos // rowheight) - 1 try: d = datetime.date(self.year, self.month, day) return d except ValueError: # date threw an error. pass def mouseMoveEvent(self, event): ''' note this function works because I set self.setMouseTracking(True) catch the mouse Mouse so user knows the widget has capabilities ''' d = self.getDateFromPosition(event.x(), event.y()) if d != self.highlightedDate: self.highlightedDate = d self.update() def mousePressEvent(self, event): ''' catch the mouse press event - ''' d = self.getDateFromPosition(event.x(), event.y()) if d and d != self.selectedDate: self.setSelectedDate(d) self.selected_date_signal.emit(d) else: menu = QtWidgets.QMenu(self) action = menu.addAction(_("Edit day memos")) action2 = menu.addAction(_("Edit Public Holiday information")) action.triggered.connect( partial(self.memo_dialog_signal.emit, self.selectedDate)) action2.triggered.connect( partial(self.public_holiday_signal.emit, self.selectedDate)) menu.setDefaultAction(action) menu.exec_(event.globalPos()) def mouseDoubleClickEvent(self, event): ''' catch the double click ''' d = self.getDateFromPosition(event.x(), event.y()) if d and d != self.selectedDate: self.setSelectedDate(d) self.selected_date_signal.emit(d) if d: self.memo_dialog_signal.emit(d) def leaveEvent(self, event): ''' clear any false stuff from the mouse ''' self.highlightedDate = None self.update() def setSelectedDate(self, d): ''' d is a pydate ''' self.selectedDate = d self.year = d.year self.month = d.month self.setRowNo() self.update() def setFont(self): ''' set the Font, and adjust the header column widths ''' font = QtGui.QFont(self.fontInfo().family(), localsettings.appointmentFontSize) if self.font != font: self.font = font self.fm = QtGui.QFontMetrics(font) self.vheaderwidth = self.fm.width(_("Wednesday") + " 28 ") self.setBankHolColWidth() self.setColWidths() def paintEvent(self, event=None): ''' draws the widget - recalled at any point by instance.update() ''' self.setFont() self.setMinimumWidth(self.minimumWidth()) painter = QtGui.QPainter(self) painter.setFont(self.font) rowHeight = self.height() / (self.rowNo) # HEADER ROW - the month and year, highlighted painter.setBrush(self.palette().highlight()) rect = QtCore.QRectF(0, 0, self.width(), rowHeight) painter.drawRect(rect) painter.setPen(self.palette().color(self.palette().HighlightedText)) self.font.setBold(True) painter.setFont(self.font) c_date = datetime.date(self.year, self.month, 1) my_text = "%s %s" % (localsettings.monthName(c_date), self.year) painter.drawText(rect, my_text, CENTRE) self.font.setBold(False) painter.setFont(self.font) for day in range(0, self.rowNo - 1): rect = QtCore.QRectF(0, (day + 1) * rowHeight, self.vheaderwidth, rowHeight) painter.setPen(self.palette().color(self.palette().WindowText)) brush = self.palette().base() if day == 0: option = CENTRE my_text = _("DATE") c_date = datetime.date(1900, 1, 1) brush = self.palette().button() else: option = RIGHT c_date = datetime.date(self.year, self.month, day) my_text = "%s %2s " % (localsettings.dayName(c_date), day) brush = self.palette().base() if c_date.isoweekday() > 5: brush = self.palette().alternateBase() if c_date == self.selectedDate: brush = self.palette().highlight() elif c_date == self.highlightedDate: brush = self.mouseBrush painter.setBrush(brush) painter.save() painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) painter.drawRect(rect) painter.restore() if c_date in (self.selectedDate, self.highlightedDate): painter.setPen( self.palette().color(self.palette().HighlightedText)) painter.drawText(rect, my_text, option) elif c_date.isoweekday() < 6: painter.setPen( self.palette().color(self.palette().WindowText)) painter.drawText(rect, my_text, option) else: painter.save() painter.setPen(QtCore.Qt.red) painter.drawText(rect, my_text, option) painter.restore() rect = rect.adjusted(self.vheaderwidth, 0, self.bankHolColwidth, 0) painter.save() painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) painter.drawRect(rect) painter.restore() key = "%d%02d" % (self.month, day) if key in self.headingdata: my_text = str(self.headingdata.get(key)) self.font.setItalic(True) painter.setFont(self.font) painter.drawText(rect, my_text, CENTRE) self.font.setItalic(False) painter.setFont(self.font) # text column rect = rect.adjusted(self.bankHolColwidth, 0, 0, 0) for col in range(self.colNo): dentix = self.dents[col] my_text = "" colWidth = self.dentColWidths[dentix] rect = rect.adjusted(0, 0, colWidth, 0) painter.save() painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) painter.drawRect(rect) painter.restore() option = LEFT if day == 0: my_text = "%s" % localsettings.apptix_reverse.get(dentix, "all") option = CENTRE elif key in self.data: dent = self.data[key].get(dentix) if dent: if dentix == 0: my_text = dent.memo.upper() else: if not dent.flag: times = "" else: times = "%s - %s " % ( localsettings.wystimeToHumanTime( dent.start), localsettings.wystimeToHumanTime(dent.end)) my_text = "%s%s" % (times, dent.memo) if my_text: painter.drawText( rect.adjusted(2, 0, 0, 0), my_text, option) rect = rect.adjusted(colWidth, 0, 0, 0) painter.setPen(QtGui.QColor("black")) painter.drawLine(self.bankHolColwidth + self.vheaderwidth, rowHeight, self.bankHolColwidth + self.vheaderwidth, self.height()) class yearCalendar(QtWidgets.QWidget): ''' a pyqt4 custom widget to show a year calendar ''' memo_dialog_signal = QtCore.pyqtSignal(object) public_holiday_signal = QtCore.pyqtSignal(object) selected_date_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): ''' initiate the widget ''' super(yearCalendar, self).__init__(parent) self.setSizePolicy( QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)) self.setMinimumSize(self.minimumSizeHint()) self.monthStarts = {} self.headingdata = {} self.data = {} self.flags = {} self.dents = (0,) self.setFont() self.startDOW = 0 self.setSelectedDate(datetime.date.today()) self.setMouseTracking(True) self.mouseBrush = QtGui.QColor(self.palette().color( QtGui.QPalette.Highlight)) self.mouseBrush.setAlpha(64) self.highlightedDate = None def sizeHint(self): ''' set an (arbitrary) size for the widget ''' return QtCore.QSize(700, 400) def minimumSizeHint(self): ''' set an (arbitrary) minimum size for the widget ''' return QtCore.QSize(700, 400) def setFont(self): ''' set the font (and by association, the width of the month column ''' font = QtGui.QFont(self.fontInfo().family(), localsettings.appointmentFontSize) if self.font != font: self.font = font fm = QtGui.QFontMetrics(font) self.vheaderwidth = fm.width("-September-") def setHeadingData(self, data): ''' sets attributes for any given day data is a dictionary {"mdd":"New Year's Day" , ...} ''' self.headingdata = data def setData(self, data): ''' sets attributes for any given day and any given book owner data is a dictionary {"mdd":((4,"Memo"),(2,"note"),) , ...} ''' self.data = {} self.flags = {} for key in data: self.data[key] = {} for dent in data[key]: self.data[key][dent.ix] = dent if dent.memo: self.flags[key] = True def setDents(self, dents): ''' make the widget aware who's data it's showing dents is a tuple like (4, 5) ''' self.dents = (0,) + tuple(dents) def setColumnNo(self): ''' work out how many columns are required the minimum is 31 (when all months start on the same day) ''' startday = 6 # assume sunnday self.columnNo = 31 for month in range(1, 13): c_date = datetime.date(self.year, month, 1) firstDayOfMonth = c_date.weekday() self.monthStarts[month] = firstDayOfMonth if c_date.weekday() < startday: startday = firstDayOfMonth colsRequired = firstDayOfMonth + \ calendar.monthrange(self.year, month)[1] if colsRequired > self.columnNo: self.columnNo = colsRequired self.startDOW = startday def getDateFromPosition(self, xpos, ypos): rowheight = self.height() / 13 month = int(ypos // rowheight) if 0 < month < 13: day = (xpos - self.vheaderwidth) // self.columnWidth day = day - self.monthStarts[month] + 1 try: d = datetime.date(self.year, month, int(day)) return d except ValueError: # date threw an error. pass def mouseMoveEvent(self, event): ''' note this function works because I set self.setMouseTracking(True) catch the mouse Mouse so user knows the widget has capabilities ''' d = self.getDateFromPosition(event.x(), event.y()) if d != self.highlightedDate: self.highlightedDate = d self.update() def mousePressEvent(self, event): ''' catch the mouse press event ''' d = self.getDateFromPosition(event.x(), event.y()) if d: if d != self.selectedDate: self.setSelectedDate(d) self.selected_date_signal.emit(d) else: menu = QtWidgets.QMenu(self) action = menu.addAction(_("Edit day memos")) action2 = menu.addAction(_("Edit Public Holiday information")) action.triggered.connect( partial(self.memo_dialog_signal.emit, self.selectedDate)) action2.triggered.connect( partial(self.public_holiday_signal.emit, self.selectedDate)) menu.setDefaultAction(action) menu.exec_(event.globalPos()) def getDayData(self): ''' return a DayData object ''' d = self.selectedDate retarg = DayData(d) datekey = "%d%02d" % (d.month, d.day) if datekey in self.headingdata: retarg.publicHoliday = self.headingdata[datekey] if datekey in self.data: retarg.dents = self.data[datekey] return retarg def mouseDoubleClickEvent(self, event): ''' catch the double click ''' d = self.getDateFromPosition(event.x(), event.y()) if d and d != self.selectedDate: self.setSelectedDate(d) self.selected_date_signal.emit(d) if d: self.memo_dialog_signal.emit(self.selectedDate) def leaveEvent(self, event): ''' clear any false stuff from the mouse ''' if self.highlightedDate is not None: self.highlightedDate = None self.update() def setSelectedDate(self, d): ''' d is a pydate ''' self.selectedDate = d self.year = d.year self.setColumnNo() self.update() def paintEvent(self, event=None): ''' draws the widget - recalled at any point by instance.update() ''' self.setFont() painter = QtGui.QPainter(self) painter.setFont(self.font) rowHeight = self.height() / 13 self.columnWidth = (self.width() - self.vheaderwidth) / self.columnNo for month in range(13): rect = QtCore.QRectF(0, month * rowHeight, self.vheaderwidth, rowHeight) painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) if month == 0: # draw the year painter.setBrush(self.palette().highlight()) painter.drawRect(rect) painter.setPen(self.palette().color( self.palette().HighlightedText)) painter.drawText(rect, QtCore.Qt.AlignCenter, str(self.year)) # rectLeft = rect.adjusted(0, 0,-rect.width()/4, 0) # painter.drawPixmap(rectLeft, QtGui.QPixmap(":/back.png")) # return for col in range(self.columnNo): rect = QtCore.QRectF( self.vheaderwidth + col * self.columnWidth, month * rowHeight, self.columnWidth, rowHeight) painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) painter.drawRect(rect) dayno = col % 7 my_text = ("M", "Tu", "W", "Th", "F", "Sa", "Su")[dayno] painter.setPen(self.palette().color( self.palette().HighlightedText)) painter.drawText(rect, QtCore.Qt.AlignCenter, my_text) else: if month % 2 == 0: painter.setBrush(self.palette().base()) else: painter.setBrush(self.palette().alternateBase()) painter.drawRect(rect) painter.setPen(self.palette().color( self.palette().WindowText)) c_date = datetime.date(self.year, month, 1) my_text = str(localsettings.monthName(c_date)) painter.drawText(rect, QtCore.Qt.AlignCenter, my_text) startday = c_date.weekday() for col in range(self.columnNo): rect = QtCore.QRectF( self.vheaderwidth + col * self.columnWidth, month * rowHeight, self.columnWidth, rowHeight) painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) painter.drawRect(rect) painter.setPen(self.palette().color( self.palette().WindowText)) if col >= startday: try: c_date = datetime.date(self.year, month, col - startday + 1) my_text = str(c_date.day) if c_date == self.selectedDate: painter.save() painter.setBrush(self.palette().color( self.palette().Highlight)) painter.setPen(self.palette().color( self.palette().HighlightedText)) painter.drawRect(rect) painter.drawText( rect, QtCore.Qt.AlignCenter, my_text) painter.restore() elif c_date == self.highlightedDate: # mouseOver painter.save() painter.setBrush(self.mouseBrush) painter.setPen(self.palette().color( self.palette().HighlightedText)) painter.drawRect(rect) painter.drawText( rect, QtCore.Qt.AlignCenter, my_text) painter.restore() elif c_date.isoweekday() > 5: # weekend painter.setPen(QtCore.Qt.red) painter.drawText( rect, QtCore.Qt.AlignCenter, my_text) else: painter.setPen(self.palette().color( self.palette().WindowText)) painter.drawText( rect, QtCore.Qt.AlignCenter, my_text) datekey = "%d%02d" % (month, c_date.day) if datekey in self.headingdata: # draw a gray underscore! painter.save() painter.setBrush(QtCore.Qt.lightGray) painter.setPen(QtCore.Qt.lightGray) rheight = rect.height() * 0.8 painter.drawRect( rect.adjusted(1, rheight, -1, 0)) painter.restore() if self.flags.get(datekey, False): # draw a blue triangle! painter.save() painter.setBrush(QtCore.Qt.blue) painter.setPen(QtCore.Qt.blue) topleftX = rect.topLeft().x() +\ rect.width() / 2 topY = rect.topLeft().y() + 2 rightX = rect.topRight().x() bottomrightY = rect.topRight().y() +\ rect.width() / 2 shape = QtGui.QPolygon() shape.setPoints([topleftX, topY, rightX, topY, rightX, bottomrightY]) painter.drawPolygon(shape) painter.restore() except ValueError: # month doesn't have this day eg feb 30th pass if __name__ == "__main__": def signal_trap(*args): print(cal.selectedDate()) def week_signal_trap(*args): print("week - %s" % wcal.selectedDate()) app = QtWidgets.QApplication(sys.argv) cal = controlCalendar() wcal = weekCalendar() mcal = monthCalendar() ycal = yearCalendar() wcal.show() wcal.week_changed_signal.connect(week_signal_trap) if True: localsettings.initiate() from openmolar.dbtools import appointments startdate = datetime.date(2010, 2, 1) enddate = datetime.date(2010, 2, 28) rows = appointments.getDayInfo(startdate, enddate, (4, 6, 7)) data = appointments.getBankHols(startdate, enddate) for c in (mcal, ycal): c.setDents((4, 6, 7)) c.setData(rows) c.setHeadingData(data) c.show() sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/chainLabel.py0000644000175000017500000000543312710144046026225 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.qt4gui import resources_rc class ChainLabel(QtWidgets.QLabel): ''' a custom label with a chain link ''' toggled = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QLabel.__init__(self, parent) self.chainpic = QtGui.QPixmap(":/icons/chain.png") self.unchainpic = QtGui.QPixmap(":/icons/chain-broken.png") self.setFixedWidth(30) self._chained = True self._update() def mousePressEvent(self, event): self._chained = not self._chained self._update() def setValue(self, chained): self._chained = chained self._update() def _update(self): if self._chained: self.setPixmap(self.chainpic) else: self.setPixmap(self.unchainpic) self.toggled.emit(self._chained) if __name__ == "__main__": def test(arg): print(("chained = %s" % arg)) import sys app = QtWidgets.QApplication(sys.argv) widg = ChainLabel() widg.setMinimumSize(QtCore.QSize(100, 100)) widg.toggled.connect(test) widg.show() sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/chartwidget.py0000644000175000017500000015533212710144046026514 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' has one class, a custom widget which inherits from QWidget ''' from functools import partial import logging import re import sys from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtSvg from PyQt5 import QtWidgets from openmolar.qt4gui import colours LOGGER = logging.getLogger("openmolar") class chartWidget(QtWidgets.QWidget): ''' a custom widget to show a standard UK dental chart - allows for user navigation with mouse and/or keyboard ''' teeth_selected_signal = QtCore.pyqtSignal(object) flip_deciduous_signal = QtCore.pyqtSignal() add_comments_signal = QtCore.pyqtSignal(object) show_history_signal = QtCore.pyqtSignal(object) delete_all_signal = QtCore.pyqtSignal() delete_prop_signal = QtCore.pyqtSignal(object) complete_treatments_signal = QtCore.pyqtSignal(object) request_tx_context_menu_signal = QtCore.pyqtSignal(object, object, object) def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.setSizePolicy(QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)) self.grid = (["ur8", "ur7", "ur6", "ur5", 'ur4', 'ur3', 'ur2', 'ur1', 'ul1', 'ul2', 'ul3', 'ul4', 'ul5', 'ul6', 'ul7', 'ul8'], ["lr8", "lr7", "lr6", "lr5", 'lr4', 'lr3', 'lr2', 'lr1', 'll1', 'll2', 'll3', 'll4', 'll5', 'll6', 'll7', 'll8']) self.clear() self.isStaticChart = True self.isPlanChart = False self.setMinimumSize(self.minimumSizeHint()) self.showLeftRight = True self.showSelected = False self.setMouseTracking(True) def clear(self, keepSelection=False): ''' clears all fillings etc from the chart ''' # clear individual teeth self.ur8, self.ur7, self.ur6, self.ur5, self.ur4, self.ur3, self.ur2, \ self.ur1 = [], [], [], [], [], [], [], [] self.ul8, self.ul7, self.ul6, self.ul5, self.ul4, self.ul3, self.ul2, \ self.ul1 = [], [], [], [], [], [], [], [] self.ll8, self.ll7, self.ll6, self.ll5, self.ll4, self.ll3, self.ll2, \ self.ll1 = [], [], [], [], [], [], [], [] self.lr8, self.lr7, self.lr6, self.lr5, self.lr4, self.lr3, self.lr2, \ self.lr1 = [], [], [], [], [], [], [], [] # clear comments self.commentedTeeth = [] # select the ur8 if keepSelection: LOGGER.debug("keeping existing chart selection(s)") else: # set to an adult dentition self.chartgrid = { 'lr1': 'lr1', 'lr3': 'lr3', 'lr2': 'lr2', 'lr5': 'lr5', 'lr4': 'lr4', 'lr7': 'lr7', 'lr6': 'lr6', 'lr8': 'lr8', 'ul8': 'ul8', 'ul2': 'ul2', 'ul3': 'ul3', 'ul1': 'ul1', 'ul6': 'ul6', 'ul7': 'ul7', 'ul4': 'ul4', 'ul5': 'ul5', 'ur4': 'ur4', 'ur5': 'ur5', 'ur6': 'ur6', 'ur7': 'ur7', 'ur1': 'ur1', 'ur2': 'ur2', 'ur3': 'ur3', 'ur8': 'ur8', 'll8': 'll8', 'll3': 'll3', 'll2': 'll2', 'll1': 'll1', 'll7': 'll7', 'll6': 'll6', 'll5': 'll5', 'll4': 'll4' } self.showSelected = False self.selected = [0, 0] self.multiSelection = [] self.highlighted = [-1, -1] self.update() def sizeHint(self): ''' set an arbitrary size ''' return QtCore.QSize(500, 200) def minimumSizeHint(self): ''' arbitrary minimum size ''' return QtCore.QSize(300, 100) def setShowLeftRight(self, arg): ''' a boolean for user preference whether to display right / left text on the widget ''' self.showLeftRight = arg def setShowSelected(self, arg): ''' a boolean as to whether to "select" a tooth by default the overview (summary) chart doesn't ''' self.showSelected = arg def multiSelectADD(self): ''' select multiple teeth ''' if self.selected == [-1, -1]: return True if self.selected in self.multiSelection: while self.selected in self.multiSelection: self.multiSelection.remove(self.selected) return False if self.selected not in self.multiSelection: self.multiSelection.append(self.selected) return True def multiSelectCLEAR(self): ''' select just one tooth ''' self.multiSelection = [] def setHighlighted(self, x, y): ''' for mouseOver. indicates a faint line is required around the tooth ''' if [x, y] != self.highlighted: self.highlighted = [x, y] self.update() def setSelected(self, x, y, showSelection=False): ''' set the tooth which is currently selected ''' updateRequired = False if self.selected != [x, y]: self.selected = [x, y] updateRequired = True if self.showSelected != showSelection: self.showSelected = showSelection updateRequired = True if updateRequired: self.update() def setToothProps(self, tooth, props): ''' adds fillings and comments to a tooth ''' if tooth in self.commentedTeeth: self.commentedTeeth.remove(tooth) if "!" in props: self.commentedTeeth.append(tooth) proplist = props.split(" ") self.__dict__[tooth] = [] for prop in proplist: if prop != "": if not re.match("!.*", prop): prop = "%s " % prop.lower() else: prop = "%s " % prop self.__dict__[tooth].append(prop) def mouseMoveEvent(self, event): ''' overrides QWidget's mouse event ''' xOffset = self.width() / 16 yOffset = self.height() / 2 x = int(event.x() / xOffset) if event.y() < yOffset: y = 0 else: y = 1 self.setHighlighted(x, y) # show detailed info try: tooth = self.grid[y][x] fills = [] for fill in self.__dict__[tooth]: if re.match("!.*", fill): fills.append(fill) else: fills.append(fill.upper()) if fills: advisory = "
    %s

    %s" % ( tooth.upper(), "
    ".join(fills)) else: advisory = "" QtWidgets.QToolTip.showText(event.globalPos(), advisory) except IndexError: pass def leaveEvent(self, event): ''' cursor is leaving the widget clear any selections ''' self.setHighlighted(-1, -1) def mousePressEvent(self, event): '''overrides QWidget's mouse event''' xOffset = self.width() / 16 yOffset = self.height() / 2 x = int(event.x() / xOffset) if event.y() < yOffset: y = 0 else: y = 1 self.selectEvent(x, y, event) def selectEvent(self, x, y, event): ''' handles stuff common to mousepress and keypress ''' ctrlClick = (event.modifiers() == QtCore.Qt.ControlModifier) shiftClick = (event.modifiers() == QtCore.Qt.ShiftModifier) [px, py] = self.selected if px == -1: px = 0 if py == -1: py = 0 # needed for shiftClick if px <= x: lowx, highx = px, x else: lowx, highx = x, px if shiftClick: for row in set((py, y)): for column in range(lowx, highx + 1): if [column, row] not in self.multiSelection: self.multiSelection.append([column, row]) self.setSelected(x, y, showSelection=True) if ctrlClick: if [px, py] not in self.multiSelection: self.multiSelection.append([px, py]) if not self.multiSelectADD(): try: x, y = self.multiSelection[-1] except IndexError: pass self.setSelected(x, y, showSelection=True) else: if not shiftClick: self.multiSelectCLEAR() teeth = [] if x != -1: teeth.append(self.grid[y][x]) for (a, b) in self.multiSelection: if (a, b) != (x, y): teeth.append(self.grid[b][a]) self.teeth_selected_signal.emit(teeth) try: if event.button() == 2: tooth = teeth[0] QtCore.QTimer.singleShot(200, partial( self.raise_context_menu, tooth, event.globalPos())) except AttributeError: pass # keyboard events have no attribute "button" except IndexError: pass # teeth is an empty list! def raise_context_menu(self, tooth, point): if self.isStaticChart: menu = QtWidgets.QMenu(self) action = menu.addAction(_("Toggle Deciduous State")) action.triggered.connect(self.flip_deciduous_signal.emit) menu.setDefaultAction(action) menu.addSeparator() for prop in self.__dict__[tooth]: prop = prop.upper().strip(" ") action = menu.addAction("%s %s" % (_("Delete"), prop)) action.triggered.connect(partial( self.delete_prop_signal.emit, prop)) if len(self.__dict__[tooth]) > 1: action = menu.addAction(_("Delete All Restorations")) action.triggered.connect(self.delete_all_signal.emit) if self.__dict__[tooth]: menu.addSeparator() action = menu.addAction(_("Add Comments")) action.triggered.connect(partial( self.add_comments_signal.emit, tooth)) action = menu.addAction(_("Show History")) action.triggered.connect(partial( self.show_history_signal.emit, tooth)) menu.exec_(point) else: values = [] for prop in self.__dict__[tooth]: values.append(prop.upper().strip(" ")) self.request_tx_context_menu_signal.emit(tooth, values, point) def mouseDoubleClickEvent(self, event): ''' overrides QWidget's mouse double click event peforms the default actions if a static chart - deciduous mode is toggled if plan chart, treatment is completed. ''' if self.isStaticChart: self.flip_deciduous_signal.emit() else: self.signal_treatment_completed() def signal_treatment_completed(self): ''' either a double click or default right click on the plan chart ''' tooth = self.grid[self.selected[1]][self.selected[0]] txs = [] for item in self.__dict__[tooth]: tx = item.upper() txs.append((tooth, tx)) if txs != []: self.complete_treatments_signal.emit(txs) def keyPressEvent(self, event): ''' overrides QWidget's keypressEvent ''' x, y = self.selected if event.key() == QtCore.Qt.Key_Left: x = 15 if x == 0 else x - 1 elif event.key() == QtCore.Qt.Key_Right: x = 0 if x == 15 else x + 1 elif event.key() == QtCore.Qt.Key_Up: y = 1 if y == 0 else y - 1 elif event.key() == QtCore.Qt.Key_Down: y = 0 if y == 1 else y + 1 elif event.key() == QtCore.Qt.Key_Return: if y == 0: if x == 15: y = 1 else: x += 1 else: if x == 0: y = 0 else: x -= 1 self.selectEvent(x, y, event) def paintEvent(self, event=None): ''' overrides the paint event so that we can draw our grid ''' painter = QtGui.QPainter(self) painter.save() painter.setRenderHint(QtGui.QPainter.Antialiasing, True) midline = self.width() / 100 # cell width xOffset = (self.width() - midline) / 16 # cell height yOffset = self.height() / 2 # red pen if self.isEnabled(): painter.setPen(QtGui.QPen(QtCore.Qt.red, 2)) else: painter.setPen(QtGui.QPen(QtCore.Qt.gray, 2)) sansFont = QtGui.QFont("Helvetica", 8) painter.setFont(sansFont) fm = QtGui.QFontMetrics(sansFont) leftpad = fm.width("Right ") rightpad = fm.width(" Left") # big horizontal dissection of entire widget painter.drawLine(leftpad, self.height() / 2, self.width() - rightpad, self.height() / 2) # vertical dissection of entire widget painter.drawLine(self.width() / 2, 0, self.width() / 2, self.height()) for x in range(16): if x > 7: midx = midline else: midx = 0 for y in range(2): tooth_notation = self.grid[y][x] rect = QtCore.QRectF( x * xOffset + midx, y * yOffset, xOffset, yOffset).adjusted(0.5, 0.5, -0.5, -0.5) # draw a tooth (subroutine) self.tooth(painter, rect, tooth_notation) if [x, y] == self.highlighted: painter.setPen(QtGui.QPen(QtCore.Qt.cyan, 1)) painter.setBrush(colours.TRANSPARENT) painter.drawRect(rect.adjusted(1, 1, -1, -1)) if self.showSelected: # these conditions mean that the tooth needs to be # highlighted draw a rectangle around the selected tooth, # but don't overwrite the centre if [x, y] == self.selected: painter.setPen(QtGui.QPen(QtCore.Qt.darkBlue, 2)) painter.setBrush(colours.TRANSPARENT) painter.drawRect(rect.adjusted(1, 1, -1, -1)) elif [x, y] in self.multiSelection: painter.setPen(QtGui.QPen(QtCore.Qt.blue, 2)) painter.setBrush(colours.TRANSPARENT) painter.drawRect(rect.adjusted(1, 1, -1, -1)) if self.isEnabled(): painter.setPen(QtGui.QPen(QtCore.Qt.black, 1)) else: painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) textRect = QtCore.QRectF(0, 0, self.width(), self.height()) if self.showLeftRight: # show left/right (this is done here to avoid being overwritten # during the rest of the paint job painter.drawText(textRect, QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter, (_("Left"))) painter.drawText(textRect, QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter, (_("Right"))) # free the painter's saved state painter.restore() def tooth(self, painter, rect, ident): painter.save() # get tooth props - ie fillings, plans etc.... # this will be a list of values eg ["MOD","RT"] props = self.__dict__[ident] isUpper = ident[0] == "u" # split tooth rectangle into a large graphic square... # and a smaller text square thirdheight = rect.height() * 1 / 3 if isUpper: # the 2 allows for the "select" box to be drawn around the tooth toothRect = rect.adjusted(0, 2, 0, -thirdheight) textRect = rect.adjusted(0, 2 * thirdheight, 0, -2) else: toothRect = rect.adjusted(0, thirdheight, 0, -2) textRect = rect.adjusted(0, 2, 0, -2 * thirdheight) # colours are grabbed from the separate colours module painter.setPen(colours.TOOTHLINES) painter.setBrush(colours.IVORY) toothid = self.chartgrid[ident] # DRAW THE TOOTH's TEXT########################### # tooth ident is always ur1, ur2 ... # tooth name is more flexible for deciduous teeth etc... toothtext = toothid[2] # check for deciduous teeth if toothtext in ("A", "B", "C", "D", "E", "*"): # BABY TOOTH########################### # paint deciduous notation in RED painter.save() if self.isEnabled(): painter.setPen(QtGui.QPen(QtCore.Qt.red, 1)) else: painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) painter.drawText(textRect, QtCore.Qt.AlignCenter, (toothtext)) painter.restore() # and "shrink" the tooth toothRect = toothRect.adjusted(toothRect.width() * 0.1, toothRect.height( ) * 0.15, -toothRect.width() * 0.1, -toothRect.height() * 0.15) else: # adult tooth painter.save() if self.isEnabled(): painter.setPen(QtGui.QPen(colours.CHARTTEXT, 1)) else: painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) painter.drawText(textRect, QtCore.Qt.AlignCenter, toothtext) painter.restore() # more occlusal/incisal edge sizing if ident in self.commentedTeeth: # comments # commented teeth have a red exclamation mark on a yellow square painter.save() painter.setPen(QtGui.QPen(QtCore.Qt.yellow, 1)) painter.setBrush(QtCore.Qt.yellow) comRect = textRect.adjusted(textRect.width() * .7, 0, 0, 0) painter.drawRect(comRect) sansFont = QtGui.QFont("Helvetica", 9) painter.setFont(sansFont) painter.setPen(QtGui.QPen(QtCore.Qt.red, 2)) painter.drawText(comRect, QtCore.Qt.AlignCenter, "!") painter.restore() for prop in ("rt ", "ap ", "-m,1 ", "-m,2 ", "+p ", "+s ", "oe", "px", "px+"): # these properties are written in... not drawn if prop in props: painter.save() comRect = textRect.adjusted(0, 0, -textRect.width() * 0.6, 0) painter.setPen(QtGui.QPen(QtCore.Qt.blue, 1)) painter.drawRect(comRect) sansFont = QtGui.QFont("Helvetica", 7) painter.setFont(sansFont) painter.drawText(comRect, QtCore.Qt.AlignCenter, prop.upper()) painter.restore() toothS = toothSurfaces(self, toothRect, toothid, self.isStaticChart) toothS.setProps(props) toothS.draw(self, painter) painter.restore() class toothSurfaces(): ''' draws the tooth surfaces ''' def __init__(self, parent, rect, ident, isStatic=True): ''' initiate using the following args parent (a Qwidget), rect (a Qrect), ident (eg. ur5), and optionally isStatic=True ''' self.rect = rect self.parent = parent self.props = "" # backtooth? self.backTooth = False self.toothtext = ident[2] if re.match("[DE45678*]", self.toothtext): self.backTooth = True self.isStatic = isStatic self.quadrant = ident[0:2] self.isUpper = ident[0] == "u" # the occlusal surface (for backteeth) # or incisal edge for front teeth.. # is given a width here. # irw = inner rectangle width irw = self.rect.width() * 0.25 if self.backTooth: irh = rect.height() * 0.25 else: irh = rect.height() * 0.45 self.innerRect = self.rect.adjusted(irw, irh, -irw, -irh) def setProps(self, props): # LOGGER.debug(props) self.props = props def draw(self, parent, painter=None): if painter is None: self.painter = QtGui.QPainter(parent) else: self.painter = painter for prop in self.props: if re.match("(br/)?cr,ic|im/", prop): adj = self.rect.height() / 2 if self.isUpper: rect_ = self.rect.adjusted(0, 0, 0, adj) svg_path = ":lower_implant.svg" else: rect_ = self.rect.adjusted(0, -adj, -0, 0) svg_path = ":upper_implant.svg" QtSvg.QSvgRenderer(svg_path).render(painter, rect_) for prop in self.props: prop = prop.strip(" ") if re.match("\(.*", prop): # brackets are used to indicate the start/end of a bridge # let's see bridge start by shrinking that edge. # TODO - draw a demarcation line here?? adj = self.rect.width() * 0.10 if self.isUpper: self.rect = self.rect.adjusted(adj, 0, 0, 0) else: self.rect = self.rect.adjusted(0, 0, -adj, 0) # remove the bracket # necessary for condition in a few lines time prop = prop.strip("(") elif re.match(".*\)$", prop): # other end of a bridge adj = self.rect.width() * 0.10 if self.isUpper: self.rect = self.rect.adjusted(0, 0, -adj, 0) else: self.rect = self.rect.adjusted(adj, 0, 0, 0) prop = prop.strip(")") if "br/p" in prop: # bridge pontic found - shrink self.rect = self.rect.adjusted(0, self.rect.height() * 0.10, 0, -self.rect.height() * 0.10) # draw the tooth if static chart or properties to show # leave blank if treatment chart. if self.isStatic or self.props != []: self.painter.drawRect(self.rect) self.painter.drawRect(self.innerRect) self.painter.drawLine( self.rect.topLeft(), self.innerRect.topLeft()) self.painter.drawLine( self.rect.topRight(), self.innerRect.topRight()) self.painter.drawLine( self.rect.bottomLeft(), self.innerRect.bottomLeft()) self.painter.drawLine( self.rect.bottomRight(), self.innerRect.bottomRight()) # deciduous (ie. indeterminate) 6, 7, 8 are marked as "*" # paint over these. if self.toothtext == "*": erase_color = parent.palette().window().color() self.painter.setPen(erase_color) self.painter.setBrush(erase_color) self.painter.drawRect(self.rect) # set variables for fill draw points # this are NOT static as the widget is resizable # TODO I could probably get performance improvement here. # by having a default set which changes only if the "tooth" has been # resized. if self.props != []: if self.backTooth: toothdimen = self.rect.width() ax = self.rect.topLeft().x() + toothdimen * 0.05 bx = self.rect.topLeft().x() + toothdimen * 0.15 cx = self.rect.topLeft().x() + toothdimen * 0.2 dx = self.rect.topLeft().x() + toothdimen * 0.35 ex = self.rect.topLeft().x() + toothdimen * 0.5 fx = self.rect.topLeft().x() + toothdimen * 0.7 gx = self.rect.topLeft().x() + toothdimen * 0.8 hx = self.rect.topLeft().x() + toothdimen * 0.85 ix = self.rect.topLeft().x() + toothdimen * 0.95 toothdimen = self.rect.height() ay = self.rect.topLeft().y() + toothdimen * 0.05 by = self.rect.topLeft().y() + toothdimen * 0.15 cy = self.rect.topLeft().y() + toothdimen * 0.2 dy = self.rect.topLeft().y() + toothdimen * 0.35 ey = self.rect.topLeft().y() + toothdimen * 0.5 fy = self.rect.topLeft().y() + toothdimen * 0.65 gy = self.rect.topLeft().y() + toothdimen * 0.8 hy = self.rect.topLeft().y() + toothdimen * 0.85 iy = self.rect.topLeft().y() + toothdimen * 0.95 else: # front tooth - different patterns toothdimen = self.rect.width() ax = self.rect.topLeft().x() + toothdimen * 0.05 bx = self.rect.topLeft().x() + toothdimen * 0.15 cx = self.rect.topLeft().x() + toothdimen * 0.2 dx = self.rect.topLeft().x() + toothdimen * 0.3 ex = self.rect.topLeft().x() + toothdimen * 0.5 fx = self.rect.topLeft().x() + toothdimen * 0.7 gx = self.rect.topLeft().x() + toothdimen * 0.8 hx = self.rect.topLeft().x() + toothdimen * 0.85 ix = self.rect.topLeft().x() + toothdimen * 0.95 toothdimen = self.rect.height() ay = self.rect.topLeft().y() + toothdimen * 0.05 by = self.rect.topLeft().y() + toothdimen * 0.15 cy = self.rect.topLeft().y() + toothdimen * 0.2 dy = self.rect.topLeft().y() + toothdimen * 0.3 ey = self.rect.topLeft().y() + toothdimen * 0.5 fy = self.rect.topLeft().y() + toothdimen * 0.7 gy = self.rect.topLeft().y() + toothdimen * 0.8 hy = self.rect.topLeft().y() + toothdimen * 0.85 iy = self.rect.topLeft().y() + toothdimen * 0.95 for prop in self.props: prop = prop.strip(" ") material = "" self.painter.save() prop = prop.strip("#&") if prop == "pv": prop = "pv,pj" if re.match("!.*", prop): prop = "" if "/" in prop: if re.match("\(.*", prop): # start of a bridge leading_bracket = True prop = prop[1:] else: leading_bracket = False if re.match("br/", prop): # bridge prop = prop[3:] if leading_bracket: prop = prop.replace(",", ",(") if "p," in prop: # some gold crowns are cr/modbl,go prop = "PONTIC,%s" % prop[2:] if "mr" in prop: prop = "p,mr" elif re.match("im/", prop): prop = "" else: if "pi" in prop: # porcelain inlays are pi/modp etc prop = prop[3:] + ",pi" if "cr" in prop: # some gold crowns are cr/modbl,go prop = prop[3:] if "gi" in prop: prop = prop[3:] + ",go" if "gc" in prop: # code for gi treatment where exceptional # circumstances apply # "gc/mod".. so for drawing purposes # change this to "mod,gi" prop = prop[3:] + ",gl" if prop[:2] in ("tm", "at"): erase_color = parent.palette().window().color() self.painter.setPen(erase_color) self.painter.setBrush(erase_color) self.painter.drawRect(self.rect) self.painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) self.painter.drawText(self.rect, QtCore.Qt.AlignCenter, prop.upper()) prop = "" if prop[:2] in ("ue", "pe", "oe", "rp"): if prop[:2] == "ue": erase_color = parent.palette().window().color() self.painter.setBrush(erase_color) else: self.painter.setBrush(QtCore.Qt.transparent) self.painter.drawRect(self.rect) self.painter.setPen(QtGui.QPen(QtCore.Qt.black, 1)) if self.backTooth: self.painter.drawText( self.rect, QtCore.Qt.AlignCenter, prop) else: self.painter.drawText( self.rect.adjusted( 0, self.rect.height() / 2, 0, 0), QtCore.Qt.AlignCenter, prop) # prevent the o's and p's being interpreted as fills prop = "" if ",pr" in prop: # TODO - pin?? prop = prop.replace(",pr", "") if "," in prop: # get materal if present material = prop.split(",")[1] material = re.sub("[()]", "", material) prop = prop.split(",")[0] # adjust for mirror imaging else: # set default material if self.toothtext == "4": if prop in ("B", "P"): material = "co" else: material = "am" elif self.backTooth: material = "am" else: material = "co" if prop[:2] == "fs": material = "fs" if prop[:2] == "dr": material = "dr" # put an outline around the filling self.painter.setPen(QtGui.QPen(colours.FILL_OUTLINE, 1)) # set filling color if material == "co": self.painter.setBrush(colours.COMP) elif material in ("pj", "ot", "pi", "a1", "a2", "v1", "v2", "opal", "opalite", "lava", "core", "ic", "ever"): self.painter.setBrush(colours.PORC) elif material == "gl": self.painter.setBrush(colours.GI) elif material == "go": self.painter.setBrush(colours.GOLD) elif material == "am": self.painter.setBrush(colours.AMALGAM) elif material == "mr": self.painter.setBrush(colours.METAL) elif material == "dr": self.painter.setBrush(colours.DRESSING) elif material == "fs": self.painter.setPen(QtGui.QPen(colours.FISSURE, 1)) self.painter.setBrush(colours.FISSURE) else: LOGGER.debug("unhandled material colour %s %s %s" % ( self.toothtext, prop, material)) if self.quadrant[1] == "l" and prop != "dr": # left hand side - reverse fills # this loods a confusing merry dance... # capitalisation used to prevent changes being undone prop = prop.replace("m", "D") prop = prop.replace("d", "m") prop = prop.replace("D", "d") if self.quadrant[0] == "l": prop = prop.replace("b", "L") prop = prop.replace("l", "b") prop = prop.replace("L", "l") if prop[0:2] == "cr" or "PONTIC" in prop: if "PONTIC" in prop: crRect = self.rect else: crRect = self.rect.adjusted(0, 2, 0, -2) self.painter.drawRect(crRect) self.painter.drawRect(self.innerRect) self.painter.drawLine( crRect.topLeft(), self.innerRect.topLeft()) self.painter.drawLine( crRect.topRight(), self.innerRect.topRight()) self.painter.drawLine(crRect.bottomLeft(), self.innerRect.bottomLeft()) self.painter.drawLine(crRect.bottomRight(), self.innerRect.bottomRight()) if self.backTooth: self.painter.drawText(self.rect, QtCore.Qt.AlignCenter, material) else: self.painter.drawText( self.rect.adjusted( 0, self.rect.height() / 2, 0, 0), QtCore.Qt.AlignCenter, material) if prop == "pv" and self.isUpper: poly = QtGui.QPolygon() poly.setPoints([self.rect.topLeft().x(), self.rect.topLeft().y(), self.rect.topRight().x(), self.rect.topRight().y(), self.innerRect.topRight().x(), self.innerRect.topRight().y(), self.innerRect.topLeft().x(), self.innerRect.topLeft().y()]) self.painter.drawPolygon(poly) self.painter.drawText( self.rect.adjusted(0, 0, 0, -self.rect.height() / 2), QtCore.Qt.AlignCenter, prop) prop = "" if prop == "pv" and not self.isUpper: poly = QtGui.QPolygon() poly.setPoints([self.rect.bottomLeft().x(), self.rect.bottomLeft().y(), self.rect.bottomRight().x(), self.rect.bottomRight().y(), self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y()]) self.painter.drawPolygon(poly) self.painter.drawText( self.rect.adjusted(0, self.rect.height() / 2, 0, 0), QtCore.Qt.AlignCenter, prop) prop = "" if prop == "ex": # draw a big red X self.painter.save() self.painter.setPen(QtGui.QPen(QtCore.Qt.red, 4)) self.painter.drawLine(self.rect.topLeft(), self.rect.bottomRight()) self.painter.drawLine(self.rect.topRight(), self.rect.bottomLeft()) self.painter.restore() # IGNORE LIST if prop in ("px", "oe"): prop = "" prop = prop.replace("l", "p") shapes = [] if self.backTooth: if "fs" in prop: poly = QtGui.QPolygon() poly.setPoints([dx, ey - 1, fx, ey - 1, fx + 1, ey + 1, dx, ey + 1]) shapes.append(poly) poly = QtGui.QPolygon() poly.setPoints([ex - 1, dy, ex + 1, dy, ex + 1, fy, ex - 1, fy]) shapes.append(poly) elif "dr" in prop: poly = QtGui.QPolygon() poly.setPoints([cx, dy, dx, by, fx, by, hx, dy, hx, fy, fx, hy, dx, hy, cx, fy]) shapes.append(poly) elif re.match("[modbp]{5}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, by, cx, dy, dx, dy, dx, by, fx, by, fx, dy, gx, dy, ix, by, ix, hy, gx, fy, fx, fy, fx, hy, dx, hy, dx, fy, cx, fy, ax, hy]) shapes.append(poly) elif re.match("[modb]{4}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, by, dx, dy, dx, by, fx, by, fx, dy, ix, by, ix, hy, fx, fy, dx, fy, ax, hy]) shapes.append(poly) elif re.match("[modp]{4}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, by, dx, dy, fx, dy, ix, by, ix, hy, fx, fy, fx, hy, dx, hy, dx, fy, ax, hy]) shapes.append(poly) elif re.match("[mod]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, by, dx, dy, fx, dy, ix, by, ix, hy, fx, fy, dx, fy, ax, hy]) shapes.append(poly) elif re.match("[mob]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, dy, ex, dy, ex, by, fx, by, fx, dy, gx, dy, ix, by, ix, hy, gx, fy, dx, fy]) shapes.append(poly) elif re.match("[mop]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, dy, gx, dy, ix, by, ix, hy, gx, fy, fx, fy, fx, hy, ex, hy, ex, fy, dx, fy]) shapes.append(poly) elif re.match("[dob]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, cy, cx, dy, ex, dy, ex, by, fx, by, fx, dy, fx, dy, fx, fy, cx, fy, ax, gy]) shapes.append(poly) elif re.match("[dop]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, cy, cx, dy, fx, dy, fx, fy, ex, fy, ex, hy, dx, hy, dx, fy, cx, fy, ax, gy]) shapes.append(poly) elif re.match("[mbd]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, by, dx, ay, fx, ay, ix, by, ix, ey, hx, ey, hx, cy, bx, cy, bx, ey, ax, ey]) shapes.append(poly) elif re.match("[mpd]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, ey, bx, ey, bx, hy, hx, hy, hx, ey, ix, ey, ix, gy, gx, iy, bx, iy, ax, gy]) shapes.append(poly) elif re.match("[ob]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([cx, ay, gx, ay, fx, cy, fx, fy, dx, fy, dx, cy]) shapes.append(poly) elif re.match("[op]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, dy, fx, dy, fx, gy, gx, iy, cx, iy, dx, gy]) shapes.append(poly) elif re.match("[mb]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, ay, fx, ay, ix, by, ix, ey, hx, ey, hx, dy, fx, cy, dx, cy, bx, by]) shapes.append(poly) elif re.match("[mp]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, iy, fx, iy, ix, hy, ix, ey, hx, ey, hx, fy, fx, gy, dx, gy, bx, hy]) shapes.append(poly) elif re.match("[db]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([fx, ay, dx, ay, ax, by, ax, ey, bx, ey, bx, dy, dx, cy, fx, cy, hx, by]) shapes.append(poly) elif re.match("[dp]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([fx, iy, dx, iy, ax, hy, ax, ey, bx, ey, bx, fy, dx, gy, fx, gy, hx, hy]) shapes.append(poly) elif re.match("[mo]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, dy, gx, dy, ix, cy, ix, gy, gx, fy, dx, fy]) shapes.append(poly) elif re.match("[do]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, cy, cx, dy, fx, dy, fx, fy, cx, fy, ax, gy]) shapes.append(poly) elif "o" in prop: poly = QtGui.QPolygon() poly.setPoints([dx, dy, fx, dy, fx, fy, dx, fy]) shapes.append(poly) elif "m" in prop: poly = QtGui.QPolygon() poly.setPoints([gx, dy, ix, by, ix, hy, gx, fy]) shapes.append(poly) elif "d" in prop: poly = QtGui.QPolygon() poly.setPoints([ax, by, cx, dy, cx, fy, ax, hy]) shapes.append(poly) elif "p" in prop: poly = QtGui.QPolygon() poly.setPoints([bx, iy, dx, gy, fx, gy, hx, iy]) shapes.append(poly) elif "b" in prop: poly = QtGui.QPolygon() poly.setPoints([bx, ay, hx, ay, fx, cy, dx, cy]) shapes.append(poly) else: # front tooth if "dr" in prop: poly = QtGui.QPolygon() poly.setPoints([cx, dy, dx, by, fx, by, hx, dy, hx, fy, fx, hy, dx, hy, cx, fy]) shapes.append(poly) elif re.match("[mbd]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, by, dx, ay, fx, ay, ix, by, ix, ey, hx, ey, hx, cy, bx, cy, bx, ey, ax, ey]) shapes.append(poly) elif re.match("[mpd]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, ey, bx, ey, bx, hy, hx, hy, hx, ey, ix, ey, ix, gy, gx, iy, bx, iy, ax, gy]) shapes.append(poly) elif re.match("[ib]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([cx, ay, gx, ay, fx, cy, fx, fy, dx, fy, dx, cy]) shapes.append(poly) elif re.match("[ip]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, dy, fx, dy, fx, gy, gx, iy, cx, iy, dx, gy]) shapes.append(poly) elif re.match("[mb]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, ay, fx, ay, ix, by, ix, ey, hx, ey, hx, dy, fx, cy, dx, cy, bx, by]) shapes.append(poly) elif re.match("[mp]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([dx, iy, fx, iy, ix, hy, ix, ey, hx, ey, hx, fy, fx, gy, dx, gy, bx, hy]) shapes.append(poly) elif re.match("[db]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([fx, ay, dx, ay, ax, by, ax, ey, bx, ey, bx, dy, dx, cy, fx, cy, hx, by]) shapes.append(poly) elif re.match("[dp]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([fx, iy, dx, iy, ax, hy, ax, ey, bx, ey, bx, fy, dx, gy, fx, gy, hx, hy]) shapes.append(poly) elif re.match("[mid]{3}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, cy, cx, dy, self.innerRect.topLeft().x(), self.innerRect.topLeft().y(), self.innerRect.topRight().x(), self.innerRect.topRight().y(), gx, dy, ix, cy, ix, gy, gx, fy, self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y(), cx, fy, ax, gy]) shapes.append(poly) elif re.match("[mi]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([self.innerRect.topLeft().x(), self.innerRect.topLeft().y(), self.innerRect.topRight().x(), self.innerRect.topRight().y(), gx, dy, ix, cy, ix, gy, gx, fy, self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y(), ]) shapes.append(poly) elif re.match("[di]{2}", prop): poly = QtGui.QPolygon() poly.setPoints([ax, cy, cx, dy, self.innerRect.topLeft().x(), self.innerRect.topLeft().y(), self.innerRect.topRight().x(), self.innerRect.topRight().y(), self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y(), cx, fy, ax, gy]) shapes.append(poly) elif "i" in prop: poly = QtGui.QPolygon() poly.setPoints([self.innerRect.topLeft().x(), self.innerRect.topLeft().y(), self.innerRect.topRight().x(), self.innerRect.topRight().y(), self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y()]) shapes.append(poly) elif "m" in prop: poly = QtGui.QPolygon() poly.setPoints([hx, dy, ix, dy, ix, fy, hx, fy, gx, ey]) shapes.append(poly) elif "d" in prop: poly = QtGui.QPolygon() poly.setPoints([ax, dy, bx, dy, cx, ey, bx, fy, ax, fy]) shapes.append(poly) elif "p" in prop: poly = QtGui.QPolygon() poly.setPoints([cx, hy, cx, gy, ex, fy, gx, gy, gx, hy, fx, iy, dx, iy]) shapes.append(poly) elif "b" in prop: poly = QtGui.QPolygon() poly.setPoints([cx, cy, cx, ay, ex, ay, gx, ay, gx, cy, fx, dy, dx, dy]) shapes.append(poly) for shape in shapes: self.painter.drawPolygon(shape) self.painter.restore() class ToothImage(QtWidgets.QWidget): ''' a class to grab an image of the tooth widget ''' def __init__(self, tooth, props, parent=None): QtWidgets.QWidget.__init__(self, parent) self.tooth = tooth self.props = props LOGGER.debug("tooth image %s with props %s" % (tooth, props)) def paintEvent(self, event=None): recd = QtCore.QRectF(0, 0, self.width(), self.height()) toothS = toothSurfaces(self, recd, self.tooth) toothS.setProps(self.props) painter = QtGui.QPainter(self) toothS.draw(self, painter) def sizeHint(self): return QtCore.QSize(40, 40) @property def image(self): ''' returns a png image of the tooth ''' # changed for qt5 return self.grab() if __name__ == "__main__": def signal_catcher(*args): LOGGER.info("signal caught %s" % str(args)) LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication(sys.argv) form = chartWidget() form.chartgrid = {'lr1': 'lr1', 'lr3': 'lr3', 'lr2': 'lr2', 'lr5': 'lr5', 'lr4': 'lr4', 'lr7': 'lr7', 'lr6': 'lr6', 'lr8': 'lr8', 'ul8': '***', 'ul2': 'ul2', 'ul3': 'ulC', 'ul1': 'ul1', 'ul6': 'ul6', 'ul7': 'ul7', 'ul4': 'ul4', 'ul5': 'ul5', 'ur4': 'ur4', 'ur5': 'ur5', 'ur6': 'ur6', 'ur7': 'ur7', 'ur1': 'ur1', 'ur2': 'ur2', 'ur3': 'ur3', 'ur8': 'ur8', 'll8': 'll8', 'll3': 'll3', 'll2': 'll2', 'll1': 'll1', 'll7': 'll7', 'll6': 'll6', 'll5': 'll5', 'll4': 'll4'} for properties in ( ("ur7", "ex "), ("ur6", "gi/modbp mb"), ("ur5", "cr,go mp"), ("ur4", "mop,co"), ("ur3", "AT"), ("ur2", "di,co b"), ("ur1", "pv rt"), ("ul1", "cr,pj"), ("ul2", "dp,co b,co"), ("ul3", "di p,go"), ("ll3", "pv"), ("ll2", "dip"), ("ll1", "midi"), ("lr1", "mpd"), ("lr2", "mld,gl"), ("lr3", "dr"), ("ul4", "do"), ("ul6", "mo"), ("lr8", "("), ("ul7", "mop,co"), ("ur8", "mdb,gl mpd,go ob"), ("ll4", "b,gl dl,co"), ("ll5", "ob ml"), ("ll6", "mod,co"), ("ll7", "pe"), ("ll8", "ue !watch"), ("lr4", "im/tit"), ("lr5", "dr"), ("lr7", "fs"), ("lr6", "modbl,pr")): form.setToothProps(properties[0], properties[1]) form.flip_deciduous_signal.connect(signal_catcher) form.add_comments_signal.connect(signal_catcher) form.show_history_signal.connect(signal_catcher) form.delete_all_signal.connect(signal_catcher) form.delete_prop_signal.connect(signal_catcher) form.show() pixmap = form.grab() pixmap.save("/home/neil/chart.png") form.selected = [0, 2] sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/completer_textedit.py0000644000175000017500000001227512710144046030111 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets class CompletionTextEdit(QtWidgets.QTextEdit): ''' This is a text edit which helps user complete words. ''' def __init__(self, parent=None): QtWidgets.QTextEdit.__init__(self, parent) self.setMinimumWidth(400) self.completer = None self.setTabChangesFocus(True) def set_wordset(self, words): if self.completer: self.completer.activated.disconnect(self.insertCompletion) completer = QtWidgets.QCompleter(sorted(words), self) completer.setWidget(self) completer.setCompletionMode(QtWidgets.QCompleter.PopupCompletion) completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) self.completer = completer self.completer.activated.connect(self.insertCompletion) def insertCompletion(self, completion): tc = self.textCursor() tc.movePosition(tc.StartOfWord) for i in range(len(self.completer.completionPrefix())): tc.deleteChar() tc.insertText(completion) def textUnderCursor(self): tc = self.textCursor() tc.select(QtGui.QTextCursor.WordUnderCursor) return tc.selectedText() def focusInEvent(self, event): if self.completer: self.completer.setWidget(self) QtWidgets.QTextEdit.focusInEvent(self, event) def keyPressEvent(self, event): if self.completer is None: QtWidgets.QTextEdit.keyPressEvent(self, event) return if self.completer and self.completer.popup().isVisible(): if event.key() in (QtCore.Qt.Key_Enter, QtCore.Qt.Key_Return, QtCore.Qt.Key_Escape, QtCore.Qt.Key_Tab, QtCore.Qt.Key_Backtab): event.ignore() return # has ctrl-E been pressed?? isShortcut = (event.modifiers() == QtCore.Qt.ControlModifier and event.key() == QtCore.Qt.Key_E) if not isShortcut: QtWidgets.QTextEdit.keyPressEvent(self, event) # return # ctrl or shift key on it's own?? ctrlOrShift = event.modifiers() in (QtCore.Qt.ControlModifier, QtCore.Qt.ShiftModifier) if ctrlOrShift and not event.text(): # ctrl or shift key on it's own return eow = "~!@#$%^&*()_+{}|:\"<>?,./;'[]\\-=" # end of word characters hasModifier = ((event.modifiers() != QtCore.Qt.NoModifier) and not ctrlOrShift) completionPrefix = self.textUnderCursor() if (not isShortcut and (hasModifier or not event.text() or len(completionPrefix) < 2 or event.text()[-1] in eow)): self.completer.popup().hide() return if completionPrefix != self.completer.completionPrefix(): self.completer.setCompletionPrefix(completionPrefix) popup = self.completer.popup() popup.setCurrentIndex( self.completer.completionModel().index(0, 0)) cr = self.cursorRect() cr.setWidth( self.completer.popup().sizeHintForColumn(0) + self.completer.popup().verticalScrollBar().sizeHint().width()) self.completer.complete(cr) # popup it up! if __name__ == "__main__": app = QtWidgets.QApplication([]) te = CompletionTextEdit() te.set_wordset(["Nevertheless", "Neverending", "Never"]) te.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/confirming_check_box.py0000644000175000017500000000576412710144046030352 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets class ConfirmingCheckBox(QtWidgets.QCheckBox): ''' this is a subclass of QtWidgets.QCheckBox I use this to allow for logic BEFORE the state is changed. Also, new_state_signal is available IN ADDITION to the usual stateChanged signal. new_state_signal is only raised if the user changes the state. stateChanged will be sent in this condition AND ALSO if the change happens programatically. ''' new_state_signal = QtCore.pyqtSignal(object) def __init__(self, *args): QtWidgets.QCheckBox.__init__(self, *args) self.setTristate(True) def nextCheckState(self): if not self.check_first(): return if self.checkState() == QtCore.Qt.PartiallyChecked: self.setCheckState(QtCore.Qt.Checked) else: self.setChecked(not self.isChecked()) self.stateChanged.emit(self.checkState()) self.new_state_signal.emit(self.checkState()) def check_first(self): return QtWidgets.QMessageBox.question( self, _("Confirm"), _("Are you Sure"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No ) == QtWidgets.QMessageBox.Yes if __name__ == "__main__": app = QtWidgets.QApplication([]) cb = ConfirmingCheckBox("hello") cb.show() cb.setCheckState(QtCore.Qt.PartiallyChecked) app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/currency_label.py0000644000175000017500000000540212710144046027170 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets class CurrencyLabel(QtWidgets.QWidget): ''' a re-implimentation of QLabel which adds the local currency prefix if possible. ''' def __init__(self, text="", parent=None): QtWidgets.QWidget.__init__(self, parent) try: c_txt = QtCore.QLocale().currencySymbol() except AttributeError: # currencySymbol is Qt 4.8 and above c_txt = "" self.suffix_label = QtWidgets.QLabel(c_txt, self) self.suffix_label.setFixedWidth( self.suffix_label.fontMetrics().width(c_txt)) self.label = QtWidgets.QLabel(text, self) self.label.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter) self.text = self.label.text self.setText = self.label.setText layout = QtWidgets.QHBoxLayout(self) layout.addWidget(self.suffix_label) layout.addWidget(self.label) def setFont(self, font): self.label.setFont(font) self.suffix_label.setFont(font) if __name__ == "__main__": app = QtWidgets.QApplication([]) label = CurrencyLabel("hello") label.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/dent_hyg_selector.py0000644000175000017500000001253312710144046027703 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets class DentHygSelector(QtWidgets.QTreeWidget): selection_changed_signal = QtCore.pyqtSignal() def __init__(self): QtWidgets.QTreeWidget.__init__(self) self.setHeaderHidden(True) self.dents = [] self.hygs = [] self.root = QtWidgets.QTreeWidgetItem(self, ["All Clinicians"]) self.root.setCheckState(0, QtCore.Qt.Checked) self.dent_root = QtWidgets.QTreeWidgetItem(self.root, ["All Dentists"]) self.dent_root.setCheckState(0, QtCore.Qt.Checked) self.hyg_root = QtWidgets.QTreeWidgetItem(self.root, ["All Hygienists"]) self.hyg_root.setCheckState(0, QtCore.Qt.Checked) self.dent_cbs = {} self.hyg_cbs = {} self.expandAll() self.signals(True) def set_dents(self, dents): self.dents = dents for dent in self.dents: i = QtWidgets.QTreeWidgetItem(self.dent_root, [dent]) i.setCheckState(0, QtCore.Qt.Checked) self.dent_cbs[dent] = i def set_hygs(self, hygs): self.hygs = hygs for hyg in self.hygs: i = QtWidgets.QTreeWidgetItem(self.hyg_root, [hyg]) i.setCheckState(0, QtCore.Qt.Checked) self.hyg_cbs[hyg] = i def signals(self, connect): if connect: self.itemChanged.connect(self.interact) else: self.itemChanged.disconnect(self.interact) def checkAll(self, checkstate=QtCore.Qt.Checked, ignoreHygs=False, ignoreDents=False): if not ignoreHygs: for hyg in list(self.hyg_cbs.values()): hyg.setCheckState(0, checkstate) if not ignoreDents: for dent in list(self.dent_cbs.values()): dent.setCheckState(0, checkstate) def interact(self, item, column): self.signals(False) if item == self.root: self.checkAll(self.root.checkState(0)) elif item == self.dent_root: self.checkAll(self.dent_root.checkState(0), ignoreHygs=True) elif item == self.hyg_root: self.checkAll(self.hyg_root.checkState(0), ignoreDents=True) allDentsChecked = QtCore.Qt.Checked for dent in self.dent_cbs: if not self.dent_cbs[dent].checkState(0): allDentsChecked = QtCore.Qt.Unchecked allHygsChecked = QtCore.Qt.Checked for hyg in self.hyg_cbs: if not self.hyg_cbs[hyg].checkState(0): allHygsChecked = QtCore.Qt.Unchecked self.dent_root.setCheckState(0, allDentsChecked) self.hyg_root.setCheckState(0, allHygsChecked) if allDentsChecked and allHygsChecked: allClinicians = QtCore.Qt.Checked else: allClinicians = QtCore.Qt.Unchecked self.root.setCheckState(0, allClinicians) self.signals(True) self.selection_changed_signal.emit() @property def selectedDents(self): for initials, cb in self.dent_cbs.items(): if cb.checkState(0): yield initials @property def selectedHygs(self): for initials, cb in self.hyg_cbs.items(): if cb.checkState(0): yield initials @property def selectedClinicians(self): for clinician in self.selectedDents: yield clinician for clinician in self.selectedHygs: yield clinician def allChecked(self): return self.root.checkState(0) == QtCore.Qt.Checked if __name__ == "__main__": app = QtWidgets.QApplication([]) dents = ["Neil", "Bea", "Helen"] hygs = ["Rosie", "Sally", "Ariana"] w = DentHygSelector() w.set_dents(dents) w.set_hygs(hygs) w.show() app.exec_() print(list(w.selectedClinicians)) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/diary_view_controller.py0000644000175000017500000001074212710144046030607 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.appointment_gui_modules.clinician_select_model \ import ClinicianSelectModel from openmolar.qt4gui.dialogs.appt_mode_dialog import ApptModeDialog class DiaryViewController(QtWidgets.QWidget): VIEW_MODE = 0 SCHEDULING_MODE = 1 BLOCKING_MODE = 2 NOTES_MODE = 3 mode = VIEW_MODE update_needed = QtCore.pyqtSignal() apt_mode_changed = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.clinician_select_model = ClinicianSelectModel(self) self.clinicianSelection_comboBox = QtWidgets.QComboBox() self.clinicianSelection_comboBox.setModel(self.clinician_select_model) mode_but = QtWidgets.QPushButton("....") mode_but.setMaximumWidth(40) self.mode_label = QtWidgets.QLabel(_("Browsing Mode")) mode_frame = QtWidgets.QWidget() mode_layout = QtWidgets.QHBoxLayout(mode_frame) mode_layout.setContentsMargins(0, 0, 0, 0) mode_layout.addWidget(self.mode_label) mode_layout.addWidget(mode_but) layout = QtWidgets.QVBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.clinicianSelection_comboBox) layout.addWidget(mode_frame) self.clinicianSelection_comboBox.currentIndexChanged.connect( self.update_needed.emit) mode_but.clicked.connect(self.change_appt_mode) def set_mode(self, mode): if self.mode == mode: return self.mode = mode if self.mode == self.SCHEDULING_MODE: value = _("Scheduling Mode") elif self.mode == self.BLOCKING_MODE: value = _("Blocking Mode") elif self.mode == self.NOTES_MODE: value = _("Notes Mode") else: value = _("Browsing Mode") self.mode_label.setText(value) self.apt_mode_changed.emit(self.mode) def change_appt_mode(self): dl = ApptModeDialog(self) if dl.exec_(): self.set_mode(dl.mode) def clinician_days(self, adate): i = self.clinicianSelection_comboBox.currentIndex() return tuple(self.clinician_select_model.clinician_list(i, adate)) def clinician_list(self, adate): ''' get a list of DentistDay types to who the diaries on for a given date ''' clinician_list = [] for dent in self.clinician_days(adate): clinician_list.append(dent.ix) return tuple(clinician_list) if __name__ == "__main__": def sig_catcher(*args): print("signal", args) from openmolar.settings import localsettings localsettings.initiate() app = QtWidgets.QApplication([]) widg = DiaryViewController() widg.show() widg.update_needed.connect(sig_catcher) widg.apt_mode_changed.connect(sig_catcher) app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/estimate_item_widget.py0000644000175000017500000004264012710144046030400 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.chainLabel import ChainLabel from openmolar.qt4gui.customwidgets.confirming_check_box \ import ConfirmingCheckBox LOGGER = logging.getLogger("openmolar") class EstimateItemWidget(QtWidgets.QWidget): ''' a class to show one specific item of treatment ''' MONEY_WIDTH = 80 separate_signal = QtCore.pyqtSignal(object) compress_signal = QtCore.pyqtSignal(object) completed_signal = QtCore.pyqtSignal(object) delete_signal = QtCore.pyqtSignal(object) edited_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.est_widget = parent self.number_label = QtWidgets.QLabel() self.number_label.setFixedWidth(40) self.itemCode_label = QtWidgets.QLabel() self.description_lineEdit = QtWidgets.QLineEdit() self.cset_lineEdit = QtWidgets.QLineEdit() self.cset_lineEdit.setFixedWidth(40) self.fee_lineEdit = QtWidgets.QLineEdit() self.fee_lineEdit.setFixedWidth(self.MONEY_WIDTH) self.fee_lineEdit.setAlignment(QtCore.Qt.AlignRight) self.chain = ChainLabel() self.ptFee_lineEdit = QtWidgets.QLineEdit() self.ptFee_lineEdit.setFixedWidth(self.MONEY_WIDTH) self.ptFee_lineEdit.setAlignment(QtCore.Qt.AlignRight) self.completed_checkBox = ConfirmingCheckBox(self) self.completed_checkBox.setMaximumWidth(30) self.completed_checkBox.check_first = self.check_first icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/eraser.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.delete_pushButton = QtWidgets.QPushButton() self.delete_pushButton.setMaximumWidth(30) self.delete_pushButton.setIcon(icon) self.delete_pushButton.setFlat(True) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":icons/expand.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.expand_pushButton = QtWidgets.QPushButton() self.expand_pushButton.setIcon(icon) self.expand_pushButton.setMaximumWidth(30) self.expand_pushButton.setFlat(True) self.expand_pushButton.setSizePolicy(QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) ) self.examine_icon = QtGui.QIcon() self.examine_icon.addPixmap(QtGui.QPixmap(":/search.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.validators() self.feesLinked = True self.est_items = [] self.itemCode = "" self.signals() def components(self): ''' returns all the sub widgets. ''' return ( self.number_label, self.itemCode_label, self.description_lineEdit, self.cset_lineEdit, self.fee_lineEdit, self.chain, self.ptFee_lineEdit, self.completed_checkBox, self.delete_pushButton, self.expand_pushButton) def linkfees(self, arg): ''' toggles a boolean which determines if the pt fee and fee are the same ''' self.feesLinked = arg def setChain(self, linked): ''' break the chain if the fee does not match the charge ''' self.chain.setValue(linked) def addItem(self, item): self.est_items.append(item) self.itemCode_label.setToolTip(self.toolTip()) self.loadValues() def toolTip(self): ''' calculates a string to be added as a tool tip for the widget ''' retarg = '
    ' for item in self.est_items: retarg += '''ItemCode - '%s'
    Feescale - %s
    CSET - %s
    Dent - %s
    Hashes - %s
    DBindex - %s
    ''' % ( item.itemcode, item.feescale, item.csetype, item.dent, str(item.tx_hashes), item.ix) return retarg + "
    " def loadValues(self): ''' loads the values stored in self.est_items into the graphical widgets ''' fee, ptfee, number = 0, 0, 0 all_planned, all_completed = True, True for item in self.est_items: if item.number: number += item.number fee += item.fee ptfee += item.ptfee self.setDescription(item.description) self.setItemCode(item.itemcode) self.setCset(item.csetype) all_planned = all_planned and not item.completed all_completed = all_completed and item.completed self.setChain(fee == ptfee) n_items = len(self.est_items) if n_items > 1: # self.expand_pushButton.setText("%d %s"% (n_items, _("items"))) if all_planned: self.setCompleted(0) elif all_completed: self.setCompleted(2) else: self.setCompleted(1) else: n_txs = len(self.est_items[0].tx_hashes) if n_txs > 1: self.expand_pushButton.setIcon(self.examine_icon) self.setCompleted(item.completed) self.setNumber(number) self.setFee(fee) self.setPtFee(ptfee) if item.is_exam: self.delete_pushButton.hide() elif self.can_expand: self.delete_pushButton.hide() self.expand_pushButton.setVisible(self.can_expand) @property def can_expand(self): return self.is_seperable or self.has_multi_treatments @property def is_seperable(self): return len(self.est_items) > 1 @property def has_multi_treatments(self): return len(self.est_items[0].tx_hashes) > 1 def validators(self): ''' set validators to prevent junk data being entered by user ''' val = QtGui.QDoubleValidator(0, 3000, 2, self) self.fee_lineEdit.setValidator(val) self.ptFee_lineEdit.setValidator(val) def signals(self): ''' connects signals ''' self.chain.toggled.connect(self.linkfees) self.delete_pushButton.clicked.connect(self.deleteItem) self.expand_pushButton.clicked.connect(self.expand_but_clicked) self.cset_lineEdit.textEdited.connect(self.update_cset) self.description_lineEdit.textEdited.connect(self.update_descr) self.fee_lineEdit.textEdited.connect(self.update_Fee) self.ptFee_lineEdit.textEdited.connect(self.update_ptFee) self.completed_checkBox.new_state_signal.connect( self.completed_state_changed) for le in (self.description_lineEdit, self.cset_lineEdit, self.fee_lineEdit, self.ptFee_lineEdit ): le.editingFinished.connect(self.edited_signal.emit) def update_cset(self, arg): ''' csetype has been altered, alter ALL underying data (for multiple items) ''' for item in self.est_items: item.csetype = str(arg) def update_descr(self, description): ''' description has been altered, alter ALL underying data (for multiple items) jump through hoops here in case user enters a UK pound sign! ''' for item in self.est_items: item.description = description def update_Fee(self, arg, userPerforming=True): ''' fee has been altered, alter ALL underying data for multiple items - the new fee is what has been inputted / number of items. ''' try: newVal = localsettings.pencify(arg) if self.feesLinked and userPerforming: self.ptFee_lineEdit.setText(arg) self.update_ptFee(arg, False) except ValueError: newVal = 0 for item in self.est_items: item.fee = newVal / len(self.est_items) if userPerforming: self.edited_signal.emit() def update_ptFee(self, arg, userPerforming=True): ''' ptfee has been altered, alter ALL underying data for multiple items - the new fee is what has been inputted / number of items. ''' try: newVal = localsettings.pencify(arg) if self.feesLinked and userPerforming: self.fee_lineEdit.setText(arg) self.update_Fee(arg, False) except ValueError: newVal = 0 for item in self.est_items: item.ptfee = newVal / len(self.est_items) if userPerforming: self.edited_signal.emit() def setNumber(self, arg): ''' update number label ''' self.number_label.setText(str(arg)) def setDescription(self, arg): ''' update description label ''' if len(self.est_items) > 1: arg += " etc" self.description_lineEdit.setText(arg) def setItemCode(self, arg): ''' update the item code ''' self.itemCode = arg if arg in (None, ""): arg = "-" self.itemCode_label.setText(arg) def setCset(self, arg): ''' update the course type ''' if arg in (None, ""): arg = "-" self.cset_lineEdit.setText(str(arg)) def setFee(self, fee): ''' update the fee lineedit ''' self.fee_lineEdit.setText(localsettings.decimalise(fee)) def setPtFee(self, fee): ''' update the fee lineedit ''' self.ptFee_lineEdit.setText(localsettings.decimalise(fee)) def setCompleted(self, arg): ''' function so that external calls can alter this widget ''' # LOGGER.debug("est_item_widget.setCompleted %s"% arg) self.completed_checkBox.setCheckState(arg) # ed(bool(arg)) # self.enable_components() def deleteItem(self): ''' a slot for the delete button press ''' LOGGER.debug("EstimateItemWidget calling for deletion") self.delete_signal.emit(self) def expand_but_clicked(self): if self.is_seperable: self.separate_signal.emit(self) elif self.has_multi_treatments: self.multi_treatment_info_dialog() else: self.compress_signal.emit(self.itemCode) def enable_components(self): ''' this is a slot called when the completed checkbox changes ''' state = (self.completed_checkBox.checkState() == 0 or ( self.completed_checkBox.checkState() == 1 and len(self.est_items) == 1)) self.fee_lineEdit.setEnabled(state) self.ptFee_lineEdit.setEnabled(state) self.chain.setEnabled(state) self.delete_pushButton.setEnabled(state) def multi_treatment_info_dialog(self): ''' show treatments for this item ''' LOGGER.debug("multi_treatment_info_dialog") tx_hashes = [] for item in self.est_items: tx_hashes += item.tx_hashes assert len(tx_hashes) > 0, \ "no treatments found.. this shouldn't happen" txs = [] for hash_, att, tx in self.est_widget.pt.tx_hash_tups: for tx_hash in tx_hashes: if hash_ == tx_hash: txs.append((att, tx, tx_hash.completed)) list_ = "" for att, tx, completed in txs: list_ += "
  • %s %s" % (att, tx) if completed: list_ += " (%s)
  • " % _("completed already") else: list_ += "" message = "%s
      %s

    %s" % ( _("There are multiple treatments associated with this " "estimate item"), list_, _("All must be completed for the full charge to be applied")) QtWidgets.QMessageBox.information(self, _("information"), message) @property def has_no_treatments(self): for item in self.est_items: for hash_ in item.tx_hashes: return False return True def check_first(self): ''' user has tried to toggle the completed check box perform logic here first to see if he/she is allowed to do this ''' LOGGER.debug("EstimateItemWidget.check_first") if localsettings.clinicianNo == 0: QtWidgets.QMessageBox.warning( self, _("Not Allowed"), _("You have no clinician login. " "Treatments cannot be completed by you!")) return if self.est_items[0].is_exam: if QtWidgets.QMessageBox.question( self, _("confirm"), _("Delete examination from this " "treatment plan and estimate?"), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Cancel ) == QtWidgets.QMessageBox.Ok: self.deleteItem() return if len(self.est_items) > 1: return self._multi_item_check() est_item = self.est_items[0] if est_item.has_multi_txs: return self._multi_tx_check() else: # if we've got this far, then there is only 1 tx associated. completing = not self.completed_checkBox.isChecked() return self.est_widget.allow_check(est_item, completing) def _multi_item_check(self): # allow for tri-state!! if len(self.est_items) == 1: return True self.est_widget.raise_multi_treatment_dialog(self) return False def _multi_tx_check(self): # allow for tri-state!! self.est_widget.raise_multi_treatment_dialog(self) return False def completed_state_changed(self, *args): ''' a slot for the checkbox state change should only happen when this is altered by user (not programatically) ''' LOGGER.debug("EstimateItemWidget.completed_state_changed %s" % args) completed = self.completed_checkBox.isChecked() for est in self.est_items: for tx_hash in est.tx_hashes: if tx_hash.completed != completed: tx_hash.completed = completed self.completed_signal.emit(tx_hash) self.edited_signal.emit() class _TestParent(QtWidgets.QWidget): def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) layout = QtWidgets.QHBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) widg = EstimateItemWidget(self) layout.addWidget(widg.number_label) layout.addWidget(widg.itemCode_label) layout.addWidget(widg.description_lineEdit) layout.addWidget(widg.cset_lineEdit) layout.addWidget(widg.fee_lineEdit) layout.addWidget(widg.chain) layout.addWidget(widg.ptFee_lineEdit) layout.addWidget(widg.completed_checkBox) layout.addWidget(widg.delete_pushButton) layout.addWidget(widg.expand_pushButton) widg.edited_signal.connect(self.sig_catcher) widg.completed_signal.connect(self.sig_catcher) self.edited_signal = widg.edited_signal def allow_check(self, est_item_widget): return True def sig_catcher(self, *args): '''test procedure''' print("signal caught argument=", args) if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) form = QtWidgets.QMainWindow() widg = _TestParent() form.setCentralWidget(widg) form.show() sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/estimate_widget.py0000644000175000017500000005062212710144046027361 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides a custom widget "EstimateWidget" ''' import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.estimate_item_widget \ import EstimateItemWidget from openmolar.qt4gui.fees import manipulate_plan from openmolar.qt4gui.dialogs.complete_treatment_dialog \ import CompleteTreatmentDialog LOGGER = logging.getLogger("openmolar") class EstimateWidget(QtWidgets.QWidget): ''' provides a custom widget to view/edit the patient's estimate ''' separate_codes = set([]) updated_fees_signal = QtCore.pyqtSignal() delete_estimate_item = QtCore.pyqtSignal(object) edited_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.om_gui = parent size_policy = QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) self.setSizePolicy(size_policy) self.expandAll = False # header labels self.number_label = QtWidgets.QLabel(_("No.")) self.code_label = QtWidgets.QLabel(_("Code")) self.description_label = QtWidgets.QLabel(_("Description")) self.description_label.setMinimumWidth(120) self.description_label.setAlignment(QtCore.Qt.AlignCenter) self.cset_label = QtWidgets.QLabel(_("CSET")) self.fee_label = QtWidgets.QLabel(_("Fee")) self.fee_label.setAlignment(QtCore.Qt.AlignCenter) self.charge_label = QtWidgets.QLabel(_("Charge")) self.charge_label.setAlignment(QtCore.Qt.AlignCenter) self.expand_all_button = QtWidgets.QPushButton(_("Expand All")) self.g_layout = QtWidgets.QGridLayout(self) self.g_layout.setSpacing(0) self.g_layout.addWidget(self.number_label, 0, 0) self.g_layout.addWidget(self.code_label, 0, 1) self.g_layout.addWidget(self.description_label, 0, 2) self.g_layout.addWidget(self.cset_label, 0, 3) self.g_layout.addWidget(self.fee_label, 0, 4) self.g_layout.addWidget(self.charge_label, 0, 6) self.g_layout.addWidget(self.expand_all_button, 0, 7, 1, 3) self.planned_fees_total_le = QtWidgets.QLineEdit() self.planned_charges_total_le = QtWidgets.QLineEdit() self.completed_fees_total_le = QtWidgets.QLineEdit() self.completed_charges_total_le = QtWidgets.QLineEdit() self.fees_total_le = QtWidgets.QLineEdit() self.charges_total_le = QtWidgets.QLineEdit() self.interim_fees_total_le = QtWidgets.QLineEdit() self.interim_charges_total_le = QtWidgets.QLineEdit() for le in (self.planned_fees_total_le, self.completed_fees_total_le, self.fees_total_le, self.charges_total_le, self.planned_charges_total_le, self.completed_charges_total_le, self.interim_fees_total_le, self.interim_charges_total_le): le.setFixedWidth(EstimateItemWidget.MONEY_WIDTH) le.setAlignment(QtCore.Qt.AlignRight) self.planned_total_label = QtWidgets.QLabel(_("Planned Items Total")) self.interim_total_label = QtWidgets.QLabel(_("Interim Charges")) self.completed_total_label = QtWidgets.QLabel(_("Completed Items Total")) self.total_label = QtWidgets.QLabel(_("TOTAL")) alignment = QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter self.planned_total_label.setAlignment(alignment) self.interim_total_label.setAlignment(alignment) self.completed_total_label.setAlignment(alignment) self.total_label.setAlignment(alignment) self.estItemWidgets = [] self.ests = () self.pt = None self.setMinimumSize(self.minimumSizeHint()) self.expand_all_button.clicked.connect(self.expandItems) self.spacer_item = QtWidgets.QSpacerItem(0, 10) def add_footer(self): row = len(self.estItemWidgets) self.g_layout.addItem(self.spacer_item, row + 1, 0, 1, 9) self.g_layout.setRowStretch(row + 1, 2) row += 2 for i, label in enumerate( (self.planned_total_label, self.interim_total_label, self.completed_total_label, self.total_label) ): self.g_layout.addWidget(label, row + 3 + i, 2, 1, 2) self.g_layout.addWidget(self.planned_fees_total_le, 3 + row, 4) self.g_layout.addWidget(self.planned_charges_total_le, 3 + row, 6) self.g_layout.addWidget(self.interim_fees_total_le, 4 + row, 4) self.g_layout.addWidget(self.interim_charges_total_le, 4 + row, 6) self.g_layout.addWidget(self.completed_fees_total_le, 5 + row, 4) self.g_layout.addWidget(self.completed_charges_total_le, 5 + row, 6) self.g_layout.addWidget(self.fees_total_le, 6 + row, 4) self.g_layout.addWidget(self.charges_total_le, 6 + row, 6) def minimumSizeHint(self): min_height = 120 + len(self.estItemWidgets) * 28 return QtCore.QSize(720, min_height) def updateTotals(self): total, ptTotal = 0, 0 plan_total, pt_plan_total = 0, 0 comp_total, pt_cmp_total = 0, 0 interim_total, pt_interim_total = 0, 0 for est in self.ests: if est.completed == est.COMPLETED: comp_total += est.fee pt_cmp_total += est.ptfee elif est.completed == est.PARTIALLY_COMPLETED: interim_total += est.interim_fee pt_interim_total += est.interim_pt_fee plan_total += est.fee - est.interim_fee pt_plan_total += est.ptfee - est.interim_pt_fee else: # est.PLANNED plan_total += est.fee pt_plan_total += est.ptfee total += est.fee ptTotal += est.ptfee self.fees_total_le.setText(localsettings.decimalise(total)) self.charges_total_le.setText(localsettings.decimalise(ptTotal)) self.planned_fees_total_le.setText( localsettings.decimalise(plan_total)) self.planned_charges_total_le.setText( localsettings.decimalise(pt_plan_total)) self.completed_fees_total_le.setText( localsettings.decimalise(comp_total)) self.completed_charges_total_le.setText( localsettings.decimalise(pt_cmp_total)) self.interim_fees_total_le.setText( localsettings.decimalise(interim_total)) self.interim_charges_total_le.setText( localsettings.decimalise(pt_interim_total)) interim_in_use = interim_total != 0 and pt_interim_total != 0 if interim_in_use: LOGGER.debug("est widget using interim fees") for widg in (self.interim_charges_total_le, self.interim_fees_total_le, self.interim_total_label): widg.setVisible(interim_in_use) self.updated_fees_signal.emit() self.edited_signal.emit() def set_expand_mode(self, expand=False): self.expandAll = expand if self.expandAll: self.expand_all_button.setText("Compress All") else: self.expand_all_button.setText("Expand All") def can_add_to_existing_item_widget(self, est): ''' see if the item can be combined with another existing widget eg.. 4 extractions = 4 items, but can be displayed together. ''' if est.itemcode in self.separate_codes: return False item_is_other = est.itemcode == "-----" for widg in self.estItemWidgets: if widg.itemCode == est.itemcode: if item_is_other: for exist_est in widg.est_items: if est.description == exist_est.description: widg.addItem(est) return True else: widg.addItem(est) return True return False def setPatient(self, pt): ''' sets the patient ''' self.set_expand_mode(False) self.pt = pt self.setEstimate(pt.estimates) def resetEstimate(self): LOGGER.debug("EstimateWidget.resetEstimate") if self.pt is None: LOGGER.warning("called when patient is None!") return self.setEstimate(self.pt.estimates) self.edited_signal.emit() def setEstimate(self, ests): ''' adds all estimate items to the gui ''' self.ests = ests self.clear() row = 1 for est in sorted(self.ests): # - check to see if similar items exist already, if not, add a # - widget if self.expandAll or not self.can_add_to_existing_item_widget(est): # --creates a widget widg = EstimateItemWidget(self) widg.addItem(est) widg.edited_signal.connect(self.updateTotals) widg.completed_signal.connect(self.tx_hash_complete) widg.delete_signal.connect(self.deleteItemWidget) widg.separate_signal.connect(self.split_item) widg.compress_signal.connect(self.compress_item) self.estItemWidgets.append(widg) self.g_layout.addWidget(widg.number_label, row, 0) self.g_layout.addWidget(widg.itemCode_label, row, 1) self.g_layout.addWidget(widg.description_lineEdit, row, 2) self.g_layout.addWidget(widg.cset_lineEdit, row, 3) self.g_layout.addWidget(widg.fee_lineEdit, row, 4) self.g_layout.addWidget(widg.chain, row, 5) self.g_layout.addWidget(widg.ptFee_lineEdit, row, 6) self.g_layout.addWidget(widg.completed_checkBox, row, 8) self.g_layout.addWidget(widg.expand_pushButton, row, 7) if not widg.can_expand: self.g_layout.addWidget(widg.delete_pushButton, row, 7) self.g_layout.setRowStretch(row, 0) row += 1 self.add_compress_buts() self.add_footer() self.setMinimumSize(self.minimumSizeHint()) self.updateTotals() def compress_item(self, item_code): LOGGER.debug("compress %s" % item_code) self.separate_codes.remove(item_code) self.expandAll = False self.resetEstimate() def add_compress_buts(self): def add_but(): if start_row is not None: self.g_layout.addWidget( but, start_row, 9, row + 1 - start_row, 1) but.setVisible(True) row, but, code, start_row = None, None, None, None icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":icons/contract.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) for row, est_item_widget in enumerate(self.estItemWidgets): if est_item_widget.itemCode == code: self.separate_codes.add(code) but = est_item_widget.expand_pushButton but.setFlat(False) but.setIcon(icon) if start_row is None: start_row = row else: add_but() code = est_item_widget.itemCode if code == "-----": code = None start_row = None if row: row += 1 add_but() def tx_hash_complete(self, tx_hash): LOGGER.debug("EstimateWidget.tx_hash_complete, %s" % tx_hash) if tx_hash.completed: manipulate_plan.tx_hash_complete(self.om_gui, tx_hash) else: manipulate_plan.tx_hash_reverse(self.om_gui, tx_hash) def remove_est_item_widget(self, widg): widg.completed_checkBox.check_first = None for child in widg.components(): self.g_layout.removeWidget(child) child.setParent(None) widg.setParent(None) def clear(self): ''' clears all est widget in anticipation of a new estimate ''' LOGGER.debug("EstimateWidget.clear") while self.estItemWidgets != []: widg = self.estItemWidgets.pop() self.remove_est_item_widget(widg) self.g_layout.removeItem(self.spacer_item) self.set_expand_mode(self.expandAll) # self.updateTotals() def deleteItemWidget(self, item_widget): ''' deletes a widget when delete button pressed. such an item will ALWAYS have only one treatment. ''' LOGGER.debug("EstimateWidget.deleteItemWidget") assert len(item_widget.est_items) == 1, "bad est item passed" est = item_widget.est_items[0] self.delete_estimate_item.emit(est) self.resetEstimate() def expandItems(self): ''' user has clicked the expand button in the header ''' self.expandAll = not self.expandAll self.separate_codes = set([]) if self.expandAll: for widg in self.estItemWidgets: if widg.is_seperable: self.separate_codes.add(widg.itemCode) self.resetEstimate() def split_item(self, est_item_widget): ''' separate this item ''' LOGGER.debug("EstimateWidget.split_item %s" % est_item_widget) self.separate_codes.add(est_item_widget.itemCode) self.resetEstimate() @property def allPlanned(self): for est in self.ests: if est.completed: return False return True @property def allCompleted(self): for est in self.ests: if not est.completed: return False return True def allow_check(self, est_item, completing): ''' check to see if est_widget can be checked by the user (in the case of multiple identical treatment items, there is a specific allowable order) ''' LOGGER.debug( "EstimateWidget.allow_check called. Completing = %s" % completing) assert len(est_item.tx_hashes) == 1, \ "too many tx_hashes passed to EstimateWidget.allow_check" check_first = False for est in self.ests: if (est.itemcode == est_item.itemcode and est.tx_hashes != est_item.tx_hashes): check_first = True break if not check_first: LOGGER.debug("EstimateWidget.allow_check granted") return True tx_hash = est_item.tx_hashes[0] # will only have one - see assert check_att, check_tx = self.pt.get_tx_from_hash(tx_hash) LOGGER.debug("Check uniqueness of hash='%s' att='%s' tx='%s'" % ( tx_hash, check_att, check_tx)) # check this treatment off against the other treatments which still # require completing/reversing for hash_, att_, tx in self.pt.tx_hash_tups: if check_att == att_ and tx == check_tx and hash_ != tx_hash.hash: LOGGER.warning( "Special code checked via estimate widget" ", not allowing check") if completing: func_ = manipulate_plan.complete_txs else: func_ = manipulate_plan.reverse_txs func_(self.om_gui, ([check_att, check_tx],)) return False return True def raise_multi_treatment_dialog(self, est_item_widget): ''' show treatments for this item ''' LOGGER.debug("raise_multi_treatment_dialog") tx_hashes = [] for item in est_item_widget.est_items: tx_hashes += item.tx_hashes assert len(tx_hashes) > 0, \ "no treatments found.. this shouldn't happen" txs = [] for hash_, att, tx in self.pt.tx_hash_tups: for tx_hash in tx_hashes: if hash_ == tx_hash: txs.append((att, tx, tx_hash.completed)) dl = CompleteTreatmentDialog(txs, self) if not dl.exec_(): return for att, treat in dl.completed_treatments: LOGGER.debug("checking completed %s %s" % (att, treat)) found = False # only complete 1 treatment!! for hash_, att_, tx in self.pt.tx_hash_tups: if found: break if att == att_ and tx == treat: LOGGER.debug("att and treat match... checking hashes") for item in est_item_widget.est_items: LOGGER.debug("Checking hashes of item %s" % item) for tx_hash in item.tx_hashes: if tx_hash == hash_ and not tx_hash.completed: LOGGER.debug("%s == %s" % (tx_hash, hash_)) tx_hash.completed = True self.tx_hash_complete(tx_hash) found = True break if found: break for att, treat in dl.uncompleted_treatments: LOGGER.debug("checking completed %s %s" % (att, treat)) found = False # only complete 1 treatment!! for hash_, att_, tx in reversed(list(self.pt.tx_hash_tups)): if found: break if att == att_ and tx == treat: LOGGER.debug("att and treat match... checking hashes") for item in est_item_widget.est_items: LOGGER.debug("Checking hashes of item %s" % item) for tx_hash in item.tx_hashes: if tx_hash == hash_ and tx_hash.completed: LOGGER.debug("%s == %s" % (tx_hash, hash_)) tx_hash.completed = False self.tx_hash_complete(tx_hash) found = True break if found: break for att, treat, already_completed in dl.deleted_treatments: LOGGER.debug("checking deleted %s %s" % (att, treat)) manipulate_plan.remove_treatments_from_plan_and_est( self.om_gui, ((att, treat.strip(" ")),), already_completed) self.resetEstimate() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) from openmolar.dbtools import patient_class pt = patient_class.patient(11956) app = QtWidgets.QApplication([]) form = QtWidgets.QMainWindow() widg = EstimateWidget() form.setCentralWidget(widg) form.show() widg.setPatient(pt) form.show() app.exec_() print(pt.estimates) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/fiveminutetimeedit.py0000644000175000017500000000547712710144046030113 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets class FiveMinuteTimeEdit(QtWidgets.QTimeEdit): ''' A custom timeEdit which enforces only 5 minutes NB - connect to slot "verifiedTime" ''' time_changed_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): super(FiveMinuteTimeEdit, self).__init__(parent) self.setDisplayFormat("hh:mm") self.timeChanged.connect(self.time_changed) def stepBy(self, steps): ''' re-implement the stepBy function isn't foolproof - 55 minutes + 5 steps == 59 :( ''' if self.currentSection() == self.MinuteSection: QtWidgets.QTimeEdit.stepBy(self, steps * 5) else: QtWidgets.QTimeEdit.stepBy(self, steps) def time_changed(self, t): min = self.time().minute() if min % 5 != 0: min -= min % 5 self.setTime(QtCore.QTime(self.time().hour(), min)) self.time_changed_signal.emit(self.time()) if __name__ == "__main__": def test(t): print("signal received", t) import sys app = QtWidgets.QApplication([]) te = FiveMinuteTimeEdit() te.time_changed_signal.connect(test) te.show() sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/money_line_edit.py0000644000175000017500000001062312710144046027343 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import re from PyQt5 import QtCore from PyQt5 import QtWidgets class MoneyLineEdit(QtWidgets.QLineEdit): ''' interestingly, for the input of money values, and having experimented with validators and spinboxes etc... none of them acted intuitively. This one does. try it. ''' def __init__(self, parent=None): QtWidgets.QLineEdit.__init__(self, parent) self.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter) @property def pence_value(self): ''' returns the value displayed as pence (integer) example - if 12.34 is displayed then 1234 is returned. ''' s = "0" + self.text() return int(s.replace(".", "")) def check_val(self): current_txt = self.text() m = re.match("(\d+)\.(\d)(\d)$", current_txt) if m: return # all is well! new_txt = current_txt.replace(".", "") if re.match("\d+$", new_txt): new_txt = "%s.%s" % (new_txt[:-2], new_txt[-2:]) new_txt = new_txt.lstrip("0") if new_txt.startswith("."): new_txt = "0" + new_txt else: new_txt = "0.00" self.setText(new_txt) if new_txt != current_txt: self.textEdited.emit(self.text()) def keyPressEvent(self, event): ''' overrides QWidget's keypressEvent ''' if event.key() in (QtCore.Qt.Key_Tab, QtCore.Qt.Key_Return, QtCore.Qt.Key_Backspace, QtCore.Qt.Key_Right, QtCore.Qt.Key_Left, QtCore.Qt.Key_Delete ): QtWidgets.QLineEdit.keyPressEvent(self, event) self.check_val() return input_ = event.text() current_txt = self.text() if not re.match("[\d]", input_): event.ignore() return if current_txt == "": self.setText("0.0%s" % input_) self.textEdited.emit(self.text()) return pos = self.cursorPosition() if pos != len(current_txt): QtWidgets.QLineEdit.keyPressEvent(self, event) self.check_val() return m = re.match("(\d+)\.(\d)(\d)", str(current_txt)) if m and pos == len(current_txt): pounds = m.groups()[0] + m.groups()[1] pounds = pounds.lstrip("0") if pounds == "": pounds = "0" pence = m.groups()[2] + input_ new_txt = "%s.%s" % (pounds, pence) self.setText(new_txt) self.textEdited.emit(self.text()) event.ignore() if __name__ == "__main__": app = QtWidgets.QApplication([]) mle = MoneyLineEdit() mle.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/notification_widget.py0000644000175000017500000001031012757521622030234 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets STYLE = 'color:red; background:yellow; font-weight:bold;' class NotificationLabel(QtWidgets.QWidget): def __init__(self, message, parent=None): QtWidgets.QWidget.__init__(self, parent) self.message = message self.setStyleSheet(STYLE) self.layout = QtWidgets.QVBoxLayout(self) self.layout.setContentsMargins(0, 0, 0, 0) self.layout.setSpacing(0) self.t_label = QtWidgets.QLabel( QtCore.QTime.currentTime().toString("HH:mm")) self.t_label.setAlignment(QtCore.Qt.AlignCenter) self.label = QtWidgets.QLabel(message) self.label.setAlignment(QtCore.Qt.AlignCenter) self.layout.addWidget(self.t_label) self.layout.addWidget(self.label) class NotificationWidget(QtWidgets.QTabWidget): ''' a custom widget which contains children which come and go ''' def __init__(self, parent=None): super().__init__(parent) self.setMaximumHeight(100) self.tabBar().tabBarClicked.connect(self.removeMessage) self.hide() def addMessage(self, message): ''' pass a message ''' n_tabs = self.count()-1 for i in range(n_tabs): if message == self.widget(i).message: self.tabBar().moveTab(i, n_tabs) break self.enable_buts() try: if message == self.currentWidget().message: return except AttributeError: # currentWidget may be None pass widg = NotificationLabel(message, self) self.addTab(widg, "x") self.show() self.enable_buts() def enable_buts(self): n_tabs = self.count()-1 for i in range(n_tabs): self.tabBar().setTabEnabled(i, False) self.tabBar().setTabEnabled(n_tabs, True) self.setCurrentIndex(n_tabs) def removeMessage(self): ''' user has "acknowledged a message ''' widg = self.currentWidget() self.removeTab(self.indexOf(widg)) widg.deleteLater() if self.count() == 0: self.hide() else: self.enable_buts() if __name__ == "__main__": from functools import partial app = QtWidgets.QApplication([]) form = QtWidgets.QMainWindow() form.setMinimumWidth(300) nw = NotificationWidget(form) for i, n in enumerate([1,2,3,3,3,1,1,5]): QtCore.QTimer.singleShot( i * 1500, partial(nw.addMessage, "This is test message %d" % n)) form.setCentralWidget(nw) form.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/schedule_control.py0000644000175000017500000012175112734441500027542 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' schedule_control.py provides the DiaryScheduleController class for openmolar. ''' from functools import partial import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWebKitWidgets from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools.brief_patient import BriefPatient from openmolar.dbtools import appointments from openmolar.qt4gui.appointment_gui_modules.draggable_list \ import DraggableList from openmolar.qt4gui.appointment_gui_modules.list_models \ import SimpleListModel, BlockListModel, ColouredItemDelegate from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.dialogs.find_patient_dialog import FindPatientDialog from openmolar.qt4gui.dialogs.appt_settings_dialog import \ ApptSettingsDialog, ApptSettingsResetDialog from openmolar.qt4gui.pt_diary_widget import PtDiaryWidget LOGGER = logging.getLogger("openmolar") MAX_WAIT = 10 # maximum time pt waiting in between "joint" appointments FEEDBACK = '''

    %%s

    (%%s)
    %%s
    %%s - %%s
    1. %%s
    ''' % localsettings.stylesheet SETTINGS_HTML = ''' %%s
    • %%s
    ''' % localsettings.stylesheet class DiaryScheduleController(QtWidgets.QStackedWidget): ''' This widget lives down the left side of the diary widget. It provides a way of switching modes for the diary. ''' BROWSE_MODE = 0 SCHEDULE_MODE = 1 BLOCKING_MODE = 2 NOTES_MODE = 3 NOT_SEARCHING = 0 SEARCHING_FORWARDS = 1 SEARCHING_BACKWARDS = 2 mode = BROWSE_MODE search_mode = NOT_SEARCHING appointment_selected = QtCore.pyqtSignal(object) patient_selected = QtCore.pyqtSignal(object) show_first_appointment = QtCore.pyqtSignal() chosen_slot_changed = QtCore.pyqtSignal() find_appt = QtCore.pyqtSignal(object) schedule_signal = QtCore.pyqtSignal(object) # from embedded pt diary widget advice_signal = QtCore.pyqtSignal(object, object) pt = None primary_slots = [] secondary_slots = [] _chosen_slot = None finding_joint_appointments = False def __init__(self, parent=None): QtWidgets.QStackedWidget.__init__(self, parent) self.diary_widget = parent self.patient_label = QtWidgets.QLabel() icon = QtGui.QIcon(":/search.png") self.get_patient_button = QtWidgets.QPushButton(icon, "") self.get_patient_button.setMaximumWidth(40) self.appt_listView = DraggableList(self) self.block_listView = DraggableList(self) self.item_delegate = ColouredItemDelegate(self) self.appointment_model = SimpleListModel(self) self.appt_listView.setModel(self.appointment_model) self.appt_listView.setItemDelegate(self.item_delegate) self.appt_listView.setSelectionModel( self.appointment_model.selection_model) self.appt_listView.setSelectionMode( QtWidgets.QListView.ContiguousSelection) block_model = BlockListModel(self) self.block_listView.setModel(block_model) icon = QtGui.QIcon(":vcalendar.png") diary_button = QtWidgets.QPushButton(icon, _("Diary")) diary_button.setToolTip(_("Open the patient's diary")) icon = QtGui.QIcon(":settings.png") settings_button = QtWidgets.QPushButton(icon, _("Options")) settings_button.setToolTip(_("Appointment Settings")) icon = QtGui.QIcon(":back.png") self.prev_appt_button = QtWidgets.QPushButton(icon, "") self.prev_appt_button.setToolTip(_("Previous appointment")) icon = QtGui.QIcon(":forward.png") self.next_appt_button = QtWidgets.QPushButton(icon, "") self.next_appt_button.setToolTip(_("Next available appointment")) icon = QtGui.QIcon(":forward.png") self.next_day_button = QtWidgets.QPushButton(icon, "") self.next_day_button.setToolTip(_("Next Day or Week")) icon = QtGui.QIcon(":back.png") self.prev_day_button = QtWidgets.QPushButton(icon, "") self.prev_day_button.setToolTip(_("Previous Day or Week")) icon = QtGui.QIcon(":first.png") self.first_appt_button = QtWidgets.QPushButton(icon, "") self.first_appt_button.setToolTip(_("First available appointment")) self.appt_controls_frame = QtWidgets.QWidget() layout = QtWidgets.QGridLayout(self.appt_controls_frame) layout.setContentsMargins(0, 0, 0, 0) layout.setSpacing(2) layout.addWidget(diary_button, 0, 0, 1, 2) layout.addWidget(settings_button, 0, 3, 1, 2) layout.addWidget(self.prev_day_button, 1, 0) layout.addWidget(self.prev_appt_button, 1, 1) layout.addWidget(self.first_appt_button, 1, 2) layout.addWidget(self.next_appt_button, 1, 3) layout.addWidget(self.next_day_button, 1, 4) self.appt_controls_frame.setSizePolicy( QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum)) self.search_criteria_webview = QtWebKitWidgets.QWebView(self) self.search_criteria_webview.setMinimumHeight(100) self.search_criteria_webview.setHtml( _("No appointment selected for scheduling")) # now arrange the stacked widget # page 0 - Browsing mode self.browsing_webview = QtWebKitWidgets.QWebView(self) self.reset_browsing_webview() self.addWidget(self.browsing_webview) # page 1 -- scheduling mode widg = QtWidgets.QWidget() layout = QtWidgets.QGridLayout(widg) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.patient_label, 0, 0) layout.addWidget(self.get_patient_button, 0, 1) layout.addWidget(self.appt_listView, 2, 0, 1, 2) layout.addWidget(self.appt_controls_frame, 3, 0, 1, 2) layout.addWidget(self.search_criteria_webview, 4, 0, 1, 2) self.addWidget(widg) # page 2 -- blocking mode widg = QtWidgets.QWidget() layout = QtWidgets.QVBoxLayout(widg) layout.addWidget(self.block_listView) self.addWidget(widg) # page 4 -- notes mode self.notes_label = QtWidgets.QLabel(_("Select a patient to edit notes")) self.addWidget(self.notes_label) # connect signals self.get_patient_button.clicked.connect(self.find_patient) settings_button.clicked.connect(self.show_settings_dialog) self.prev_appt_button.clicked.connect(self.show_prev_appt) self.next_appt_button.clicked.connect(self.show_next_appt) self.prev_day_button.clicked.connect(self.show_prev_day) self.next_day_button.clicked.connect(self.show_next_day) self.first_appt_button.clicked.connect(self.find_first_appointment) diary_button.clicked.connect(self.show_pt_diary) self.connect_listview_signals() self.appt_listView.doubleClicked.connect(self.appointment_2x_clicked) def connect_listview_signals(self, connect=True): signal = self.appt_listView.selectionModel().selectionChanged if connect: signal.connect(self.selection_changed) else: signal.disconnect(self.selection_changed) def set_mode(self, mode): if self.mode == mode: return if mode == self.SCHEDULE_MODE: self.update_patient_label() self.enable_scheduling_buttons() else: self.clear_slots() if mode == self.BROWSE_MODE: self.reset_browsing_webview() self.mode = mode self.setCurrentIndex(mode) def set_search_mode(self, mode): assert mode in (self.NOT_SEARCHING, self.SEARCHING_FORWARDS, self.SEARCHING_BACKWARDS) LOGGER.debug("set search mode = %s", ("OFF", "FOWARDS", "BACKWARDS")[mode]) self.search_mode = mode def cancel_search_mode(self): self.set_search_mode(self.NOT_SEARCHING) def set_search_future(self): self.set_search_mode(self.SEARCHING_FORWARDS) def set_search_past(self): self.set_search_mode(self.SEARCHING_BACKWARDS) @property def searching_future(self): return self.search_mode == self.SEARCHING_FORWARDS @property def searching_past(self): return self.search_mode == self.SEARCHING_BACKWARDS def set_patient(self, pt): self.clear() self.pt = pt if pt is not None: self.appointment_model.load_from_database(self.pt) self.patient_selected.emit(self.pt) self.enable_scheduling_buttons() def get_data(self): ''' loads the appointment model from database, or clears if patient is None ''' LOGGER.debug("schedule control get-data") if self.pt is None: self.clear() return self.connect_listview_signals(False) self.appointment_model.load_from_database(self.pt) self.connect_listview_signals() @property def patient_text(self): if self.pt: return "%s %s (%s)" % ( self.pt.fname, self.pt.sname, self.pt.serialno) else: return _("No patient Selected") @property def serialno(self): if self.pt: return self.pt.serialno return None def find_patient(self): ''' search and load a patient. ''' dl = FindPatientDialog(self) if dl.exec_(): self.clear() pt = BriefPatient(dl.chosen_sno) self.set_patient(pt) self.diary_widget.set_date(QtCore.QDate.currentDate()) self.update_patient_label() def update_patient_label(self): self.patient_label.setText(self.patient_text) @property def selected_appointment(self): ''' the appointment currently selected by user ''' return self.appointment_model.currentAppt @property def secondary_appointment(self): ''' the appointment jointly selected by user ''' return self.appointment_model.secondaryAppt @property def app1_length(self): try: return self.appointment_model.currentAppt.length except AttributeError: return 0 @property def app1_is_scheduled(self): try: return not self.appointment_model.currentAppt.unscheduled except AttributeError: LOGGER.debug("app1_is_scheduled") return False @property def app2_length(self): try: return self.appointment_model.secondaryAppt.length except AttributeError: return 0 @property def app2_is_scheduled(self): try: return not self.appointment_model.secondaryAppt.unscheduled except AttributeError: LOGGER.debug("app2_is_scheduled") return False @classmethod def ignore_emergency_spaces(self): return ApptSettingsDialog.ignore_emergency_spaces def set_selection_mode(self, mode): assert mode in ( self.CLINICIAN_ANY, self.CLINICIAN_ANY_DENT, self.CLINICIAN_ANY_HYG, self.CLINICIAN_SELECTED), "selection mode misunderstood" self.dent_selection_mode = mode @property def selectedClinicians(self): return self.appointment_model.selectedClinicians def _appt_clinicians(self, appt): ''' use the selected appointment and the chosen settings to see who could perform this treatment. ''' if appt.dent in localsettings.activedent_ixs: if ApptSettingsDialog.dentist_policy == \ ApptSettingsDialog.CLINICIAN_ANY_DENT: return localsettings.activedent_ixs if ApptSettingsDialog.dentist_policy == \ ApptSettingsDialog.CLINICIAN_ANY: return \ localsettings.activedent_ixs + localsettings.activehyg_ixs elif appt.dent in localsettings.activehyg_ixs: if ApptSettingsDialog.hygienist_policy == \ ApptSettingsDialog.CLINICIAN_ANY_HYG: return localsettings.activehyg_ixs return (appt.dent, ) @property def appt1_clinicians(self): ''' what clinicians could provide the treatment in appointment 1? ''' appt = self.appointment_model.currentAppt if appt: return self._appt_clinicians(appt) return () @property def appt2_clinicians(self): ''' what clinicians could provide the treatment in appointment 2? ''' appt = self.appointment_model.secondaryAppt if appt: return self._appt_clinicians(appt) return () @property def involvedClinicians(self): return self.appointment_model.involvedClinicians def sizeHint(self): return QtCore.QSize(180, 400) def update_appt_selection(self, appts): ''' sync with the "patient diary" via signal/slot ''' LOGGER.debug( "updating schedule controller appointments, appts='%s'", appts) for appt in appts: if appt.serialno != self.serialno: return self.connect_listview_signals(False) self.appointment_model.set_selected_appointments(appts) self.connect_listview_signals() def update_selected_appointment(self, appt): self.primary_slots = [] self._chosen_slot = None self.enable_scheduling_buttons() def selection_changed(self, selection): LOGGER.debug("ScheduleControl.selection_changed") self.update_search_criteria_webview() self.enable_scheduling_buttons() try: app = self.appointment_model.data(selection.indexes()[-1], QtCore.Qt.UserRole) except IndexError: app = self.appointment_model.currentAppt self.appointment_selected.emit(app) def appointment_2x_clicked(self, index): LOGGER.debug("ScheduleControl.appointment_clicked") self.show_first_appointment.emit() def clear(self): self.reset_browsing_webview() self.appointment_model.clear() self.reset() def reset(self): self.reset_browsing_webview() self.primary_slots = [] self.secondary_slots = [] self._chosen_slot = None self.cancel_search_mode() self.finding_joint_appointments = False def show_settings_dialog(self): ''' show the settings dialog ''' LOGGER.info("showing the settings dialog") dl = ApptSettingsDialog(self) if dl.exec_(): self.selection_changed( self.appt_listView.selectionModel().selection()) @property def _chosen_slot_no(self): try: return self.primary_slots.index(self._chosen_slot) except ValueError: return 0 def show_next_appt(self): self.set_search_future() try: self._chosen_slot = self.primary_slots[self._chosen_slot_no + 1] self.chosen_slot_changed.emit() except IndexError: self.show_next_day() def show_prev_appt(self): self.set_search_past() try: i = self._chosen_slot_no - 1 if i < 0: raise IndexError self._chosen_slot = self.primary_slots[i] self.chosen_slot_changed.emit() except IndexError: self.show_prev_day() def show_next_day(self): ''' catches the signal to make a big jump forwards. will jump a week if in week view ''' self._chosen_slot = None self.set_search_future() self.diary_widget.step_date(True) def show_prev_day(self): ''' catches the signal to make a big jump backwords. will jump a week if in week view ''' self._chosen_slot = None self.set_search_past() self.diary_widget.step_date(False) @property def all_slots(self): for slot in self.primary_slots: yield slot for slot in self.secondary_slots: yield slot def clear_slots(self): # self.reset_browsing_webview() self._chosen_slot = None self.primary_slots = [] self.secondary_slots = [] def reset_browsing_webview(self): self.browsing_webview.setHtml("") def set_primary_slots(self, slots): self.primary_slots = [] for slot in sorted(slots): if (slot.dent in self.appt1_clinicians and slot.day_no not in self.excluded_days): self.primary_slots.append(slot) def set_secondary_slots(self, slots): LOGGER.debug("filtering secondary slots %s", slots) self.secondary_slots = [] for slot in sorted(slots): slot.is_primary = False if (slot.dent in self.appt2_clinicians and slot.day_no not in self.excluded_days): self.secondary_slots.append(slot) def set_slots_from_day_app_data(self, app_data): if self.app1_is_scheduled: self.set_primary_slots([]) else: self.set_primary_slots( app_data.slots(self.app1_length, self.ignore_emergency_spaces())) app2_slots = [] if self.is_searching_for_double_appointments and \ not self.app2_is_scheduled: self.set_secondary_slots( app_data.slots(self.app2_length, self.ignore_emergency_spaces(), busy_serialno=self.serialno)) app1_slots = set([]) if self.app1_is_scheduled: iterset = [self.appointment_model.currentAppt.to_freeslot()] else: iterset = self.primary_slots for app1_slot in iterset: for app2_slot in self.secondary_slots: wait = app1_slot.wait_time(self.app1_length, self.app2_length, app2_slot) if wait is not None and wait <= MAX_WAIT: app2_slots.append(app2_slot) app1_slots.add(app1_slot) if not self.app1_is_scheduled: self.set_primary_slots(app1_slots) self.set_secondary_slots(app2_slots) def get_weekview_slots(self, weekdates): ''' calculate available slots for weekdates (list of QDates) ''' today = QtCore.QDate.currentDate() startday = today if today in weekdates else weekdates[0] # monday sunday = weekdates[6] # sunday # check for suitable apts in the selected WEEK! all_slots = appointments.future_slots( startday.toPyDate(), sunday.toPyDate(), self.appt1_clinicians, busy_serialno=self.serialno, override_emergencies=self.ignore_emergency_spaces()) if self.app1_is_scheduled: self.set_primary_slots([]) else: self.set_primary_slots( appointments.getLengthySlots(all_slots, self.app1_length)) app2_slots = [] if self.is_searching_for_double_appointments and \ not self.app2_is_scheduled: all_slots = appointments.future_slots( startday.toPyDate(), sunday.toPyDate(), self.appt2_clinicians, busy_serialno=self.serialno, override_emergencies=self.ignore_emergency_spaces()) self.set_secondary_slots( appointments.getLengthySlots(all_slots, self.app2_length) ) app1_slots = set([]) if self.app1_is_scheduled: iterset = [self.appointment_model.currentAppt.to_freeslot()] else: iterset = self.primary_slots for app1_slot in iterset: for app2_slot in self.secondary_slots: wait = app1_slot.wait_time(self.app1_length, self.app2_length, app2_slot) if wait is not None and wait <= MAX_WAIT: app2_slots.append(app2_slot) app1_slots.add(app1_slot) if not self.app1_is_scheduled: self.set_primary_slots(app1_slots) self.set_secondary_slots(app2_slots) @property def chosen_2nd_slots(self): if not (self.appointment_model.currentAppt is None or self.appointment_model.secondaryAppt is None): for app2_slot in self.secondary_slots: wait = self.chosen_slot.wait_time(self.app1_length, self.app2_length, app2_slot) if wait is not None and wait <= MAX_WAIT: yield app2_slot else: LOGGER.debug("no appointments selected") @property def last_appt_date(self): ''' returns the latest date of patient's appointments, or today's date if none found ''' last_d = QtCore.QDate.currentDate().toPyDate() for appt in self.appointment_model.scheduledList: if appt.date > last_d: last_d = appt.date return last_d @property def is_searching(self): ''' are we looking for a slot? ''' app1 = self.appointment_model.currentAppt if app1 is not None and app1.unscheduled: return True app2 = self.appointment_model.secondaryAppt if app2 is not None and app2.unscheduled: return True return False @property def is_searching_for_double_appointments(self): return self.appointment_model.secondaryAppt is not None @property def search_again(self): ''' this determines whether it is worth continuing (on a different date) ''' LOGGER.debug("search again is_searching = %s", self.is_searching) LOGGER.debug("search again forwards = %s", self.search_mode == self.SEARCHING_FORWARDS) LOGGER.debug("search again backwards = %s", self.search_mode == self.SEARCHING_BACKWARDS) LOGGER.debug("search again n_clinicians = %s", len(self.selectedClinicians)) LOGGER.debug("search again still have slots = %s", len(self.primary_slots) == 0) search_again = (self.is_searching and self.search_mode != self.NOT_SEARCHING and len(self.selectedClinicians) > 0 and len(self.primary_slots) == 0) LOGGER.debug("therefore searce again = %s", search_again) return search_again def find_first_appointment(self): LOGGER.debug("find_first_appointment") self.show_first_appointment.emit() @property def chosen_slot(self): if self.primary_slots == []: if self.app1_is_scheduled: return self.appointment_model.currentAppt.to_freeslot() return None if self._chosen_slot is None: if self.searching_past: self._chosen_slot = self.primary_slots[-1] else: self._chosen_slot = self.primary_slots[0] return self._chosen_slot def set_chosen_slot(self, slot): self._chosen_slot = slot def set_chosen_2nd_slot(self, slot): ''' user has clicked on a secondary slot - we need to switch the appointments over! ''' LOGGER.debug("set_chosen_2nd_slot %s", slot) model = self.appointment_model.selection_model selection = model.selection() selection.swap(0, 1) model.select(selection, model.ClearAndSelect) self.selection_changed( self.appointment_model.selection_model.selection()) self.appointment_model.selection_model.emitSelectionChanged( selection, QtCore.QItemSelection()) slot.is_primary = True self.set_chosen_slot(slot) self.chosen_slot_changed.emit() @property def excluded_days(self): return ApptSettingsDialog.excluded_days def show_pt_diary(self): if self.pt is None: QtWidgets.QMessageBox.information(self, _("error"), _("No patient selected")) return def _find_appt(appt): dl.accept() self.find_appt.emit(appt) def _start_scheduling(custom): ''' if custom, the dialog will be raised giving day of week options etc ''' dl.accept() self.get_data() self.appointment_model.selection_model.reset() appts = pt_diary_widget.selected_appointments self.update_appt_selection(appts) QtCore.QTimer.singleShot(100, partial(self.schedule_signal.emit, custom) ) pt_diary_widget = PtDiaryWidget() pt_diary_widget.find_appt.connect(_find_appt) pt_diary_widget.start_scheduling_signal.connect(_start_scheduling) pt_diary_widget.set_patient(self.pt) dl = BaseDialog(self, remove_stretch=True) dl.insertWidget(pt_diary_widget) dl.cancel_but.setText(_("OK")) dl.apply_but.hide() dl.setMinimumWidth(800) dl.setMaximumWidth(800) if not dl.exec_(): # dialog is only accepted by subroutines above self.appointment_model.load_from_database(self.pt) self.enable_scheduling_buttons() def enable_scheduling_buttons(self): enabled = self.is_searching for but in (self.next_appt_button, self.next_day_button, self.prev_appt_button, self.prev_day_button, self.first_appt_button): but.setEnabled(enabled) self.update_search_criteria_webview() def begin_make_appointment(self, custom): ''' this is when an external widget calls for us to start the process of starting an appointment if custom is True, then the ApptSettingsDialog is shown. ''' LOGGER.debug("begin_make_appointment custom = %s", custom) self.set_mode(self.SCHEDULE_MODE) self.enable_scheduling_buttons() LOGGER.debug("checking appointment settings %s", ApptSettingsDialog.is_default_settings()) if custom == True: self.show_settings_dialog() elif not ApptSettingsDialog.is_default_settings(): dl = ApptSettingsResetDialog(self) if dl.exec_(): if dl.show_settings_dialog: self.show_settings_dialog() else: ApptSettingsDialog.reset() def check_schedule_status(self, automatic): ''' this is called by the diary widget when the books have been laid out whilst in schedule mode. Inform the user ''' assert self.mode == self.SCHEDULE_MODE, "not in schedule mode" LOGGER.debug("=" * 40) LOGGER.debug( "check_schedule_status %s", self.diary_widget.selected_date()) if automatic: # this has been called by a timer update to the diary, # and therefore NOT user interaction LOGGER.debug("automatic call to check_schedule_status... ignoring") return try: date_ = self.diary_widget.selected_date().toPyDate() except AttributeError: # self.diary_widget is None? LOGGER.debug("date check error", exc_info=1) date_ = localsettings.currentDay() if not self.appointment_model.selectedAppts: LOGGER.debug("schedule status - no selected appointments") self.advice_signal.emit( _("Please select an appointment to begin scheduling"), 0) elif self.app1_is_scheduled: LOGGER.debug("schedule status - appt 1 is scheduled") if self.appointment_model.secondaryAppt is None: self.advice_signal.emit( _("appointment is already scheduled"), 0) elif self.app2_is_scheduled: LOGGER.debug("schedule status - appt 2 also scheduled") self.advice_signal.emit(_("Joint appointment Scheduled"), 0) elif not list(self.chosen_2nd_slots): LOGGER.debug("schedule status - no slots for appt 2") self.advice_signal.emit( _("Joint appointment is not possible with the " "chosen primary appointment"), 1) elif self.search_again: LOGGER.debug("schedule status - search again") if date_ > localsettings.BOOKEND: LOGGER.debug( "schedule status - search again has reached bookend") self.advice_signal.emit( '''%s
    %s

    (%s)
    • %s
    • %s
    • %s
    • %s
    ''' % ( _("This date is beyond the diary limit."), _("Please search again with different criteria."), _("for instance..."), _("no excluded days"), _("ignore emergencies"), _("add or view more clinicians"), _("or you have requested an impossible appointment!")), 1) self.cancel_search_mode() self.diary_widget.set_date(localsettings.currentDay()) elif date_ < localsettings.currentDay(): LOGGER.debug( "schedule status - search again has reached the past") self.advice_signal.emit( _("You can't schedule an appointment in the past"), 1) self.diary_widget.set_date(localsettings.currentDay()) else: LOGGER.debug("schedule status - calling step date") self.diary_widget.step_date(self.searching_future) elif date_ > localsettings.BOOKEND: LOGGER.debug("schedule status - beyond bookend") self.advice_signal.emit( _("This date is beyond the diary limit."), 1) elif date_ < localsettings.currentDay(): LOGGER.debug("schedule status - in the past!") self.advice_signal.emit( _("You can't schedule an appointment in the past"), 1) self.diary_widget.set_date(localsettings.currentDay()) elif self.chosen_slot is None and not list(self.chosen_2nd_slots): LOGGER.debug("schedule status - no 2nd slots") if self.diary_widget: if self.diary_widget.viewing_week: message = "%s %s" % ( _("in this week"), self.diary_widget.selected_date().weekNumber()) else: message = "%s (%s)" % ( _("on this day"), localsettings.formatDate( self.diary_widget.selected_date().toPyDate()) ) else: message = "" # should only happen if __name__ == "__main__" message = "%s %s" % (_("No Slots Found"), message) self.advice_signal.emit(message, 0) else: LOGGER.debug("schedule status - nothing to do") LOGGER.debug("=" * 40) @property def _dentist_message(self): if not self.appointment_model.dentists_involved: return "" if ApptSettingsDialog.dentist_policy == \ ApptSettingsDialog.CLINICIAN_SELECTED: return _("Specified Dentist only") elif ApptSettingsDialog.dentist_policy == \ ApptSettingsDialog.CLINICIAN_ANY_DENT: return _("Any Dentist") else: # CLINICIAN_ANY return _("Any Clinician") @property def _hygienist_message(self): if not self.appointment_model.hygienists_involved: return "" if ApptSettingsDialog.hygienist_policy == \ ApptSettingsDialog.CLINICIAN_SELECTED: return _("Specified Hygienist only for hyg appts") if ApptSettingsDialog.hygienist_policy == \ ApptSettingsDialog.CLINICIAN_ANY_HYG: return _("Any Hygienist for hyg appts") else: # CLINICIAN_ANY return _("Any Clinician for hyg appts") @property def _joint_message(self): if self.is_searching_for_double_appointments: return _("Joint Appointments") return "" @property def _emergency_message(self): if self.ignore_emergency_spaces(): return "%s" % _("Overwrite Emergencies") return "" @property def _day_message(self): if self.excluded_days == []: return _("Any Day") days = [] for i, day in enumerate( (_("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat"), _("Sun")), 1): if i not in self.excluded_days: days.append(day) return ", ".join(days) def update_search_criteria_webview(self): if self.appointment_model.currentAppt is None: html = _("No Appointment Selected") else: html = SETTINGS_HTML % ( _("Search Settings"), '
  • '. join( [s for s in ( self._dentist_message, self._hygienist_message, self._joint_message, self._emergency_message, self._day_message) if s != ""]) ) self.search_criteria_webview.setHtml(html) def update_highlighted_appointment(self): ''' the diary widget selected appointment has changed. ''' app = self.diary_widget.highlighted_appointment LOGGER.debug("appointment highlighted %s", app) if app is None: self.reset_browsing_webview() return if self.mode == self.NOTES_MODE: self.notes_label.setText( "

    %s

    %s
    %s" % ( _("View/edit today's notes for "), app.name, app.serialno ) ) return self.notes_label.setText("") if self.mode != self.BROWSE_MODE: return feedback = FEEDBACK % ( app.name, app.serialno, localsettings.readableDate( self.diary_widget.selected_date().toPyDate()), "%02d:%02d" % (app.start // 100, app.start % 100), "%02d:%02d" % (app.end // 100, app.end % 100), '
  • '.join( [val for val in (app.trt1, app.trt2, app.trt3) if val != ""]) ) if app.memo != "": feedback += "
    %s
    %s" % (_("Memo"), app.memo) try: datestamp = app.timestamp.date() feedback += \ "
    %s
    %s (%s %s)" % ( _("Made"), localsettings.formatDate(datestamp), _("at"), localsettings.pyTimeToHumantime( app.timestamp)) except AttributeError: pass if app.mh_form_check_date or app.mh_form_required: feedback += "
    " if app.mh_form_check_date: feedback += "%s %s
    " % ( _("last mh form"), localsettings.formatDate( app.mh_form_check_date) ) if app.mh_form_required: feedback += "%s" % _("MH CHECK REQUIRED") feedback = "%s" % feedback self.browsing_webview.setHtml(feedback) class TestWindow(QtWidgets.QMainWindow): MODES = ("Browse", "Schedule", "Block", "Notes") def __init__(self, parent=None): QtWidgets.QMainWindow.__init__(self, parent) self.schedule_controller = DiaryScheduleController() pt = BriefPatient(1) self.schedule_controller.set_patient(pt) self.but = QtWidgets.QPushButton() self.but.clicked.connect(self.change_mode) self.text_browser = QtWidgets.QTextBrowser() self.mode = self.schedule_controller.BROWSE_MODE frame = QtWidgets.QFrame() layout = QtWidgets.QGridLayout(frame) layout.addWidget(self.schedule_controller, 0, 0, 2, 1) layout.addWidget(self.but, 1, 1) layout.addWidget(self.text_browser, 0, 1) self.set_but_text() self.setCentralWidget(frame) self.schedule_controller.appointment_selected.connect( self.sig_catcher) self.schedule_controller.patient_selected.connect(self.sig_catcher) self.schedule_controller.show_first_appointment.connect( self.sig_catcher) self.schedule_controller.chosen_slot_changed.connect(self.sig_catcher) self.schedule_controller.find_appt.connect(self.sig_catcher) self.schedule_controller.schedule_signal.connect(self.sig_catcher) self.change_mode() def sizeHint(self): return QtCore.QSize(400, 500) def set_but_text(self): self.but.setText("set mode (current='%s')" % self.MODES[self.mode]) def change_mode(self): ''' toggle through the modes ''' self.mode += 1 if self.mode > self.schedule_controller.NOTES_MODE: self.mode = self.schedule_controller.BROWSE_MODE self.set_but_text() self.text_browser.setHtml("") self.schedule_controller.set_mode(self.mode) def sig_catcher(self, *args): LOGGER.info("signal emitted %s", args) html = "

    Selected Clinicians

    • " html += "
    • ".join( [str(i) for i in self.schedule_controller.selectedClinicians]) html += "
    " html += "

    Involved Clinicians

    • " html += "
    • ".join( [str(i) for i in self.schedule_controller.involvedClinicians]) html += "
    " html += "

    Main Appointment

    %s

    " % \ self.schedule_controller.selected_appointment html += "slot length = %s" % self.schedule_controller.app1_length html += "
    make with %s" % str( self.schedule_controller.appt1_clinicians) html += "

    Secondary Appointment

    %s

    " % \ self.schedule_controller.secondary_appointment html += \ "slot length = %s" % self.schedule_controller.app2_length html += "
    make with %s" % str( self.schedule_controller.appt2_clinicians) self.text_browser.setHtml(html) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) localsettings.initiate() app = QtWidgets.QApplication([]) obj = TestWindow() obj.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/simple_chartwidget.py0000644000175000017500000002311412710144046030055 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' has one class, a custom widget which inherits from QWidget ''' import re import sys from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.qt4gui import colours from openmolar.settings import images GRID = ( ["ur8", "ur7", "ur6", "ur5", 'ur4', 'ur3', 'ur2', 'ur1', 'ul1', 'ul2', 'ul3', 'ul4', 'ul5', 'ul6', 'ul7', 'ul8'], ["lr8", "lr7", "lr6", "lr5", 'lr4', 'lr3', 'lr2', 'lr1', 'll1', 'll2', 'll3', 'll4', 'll5', 'll6', 'll7', 'll8'] ) class SimpleChartWidg(QtWidgets.QWidget): ''' a custom widget to show a standard UK dental chart - allows for user navigation with mouse and/or keyboard ''' def __init__(self, parent=None, auto_ctrl_key=False): QtWidgets.QWidget.__init__(self, parent) self.setSizePolicy( QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)) self.grid = GRID self.auto_ctrl_key = auto_ctrl_key self.selected = set() self.highlighted = [-1, -1] self.prevSelect = () self.setMinimumSize(self.minimumSizeHint()) self.showLeftRight = True self.showSelected = False self.setMouseTracking(True) def sizeHint(self): ''' set an arbitrary size ''' return QtCore.QSize(800, 200) def minimumSizeHint(self): ''' arbitrary minimum size ''' return QtCore.QSize(600, 200) def setShowLeftRight(self, arg): ''' a boolean for user preference whether to display right / left text on the widget ''' self.showLeftRight = arg def setHighlighted(self, x, y): ''' for mouseOver. indicates a faint line is required around the tooth ''' if [x, y] != self.highlighted: self.highlighted = [x, y] self.update() def getSelected(self): ''' returns a list of selected teeth in form ["ur8", "uld"] ''' # return (self.selected, self.multiSelection) selectedTeeth = [] for x, y in self.selected: self.prevSelect = (x, y) selectedTeeth.append(self.grid[y][x]) selectedTeeth.sort(reverse=True) return selectedTeeth def setSelected(self, x, y): ''' set the tooth which is currently selected ''' if (x, y) not in self.selected: self.selected.add((x, y)) self.prevSelect = (x, y) else: self.selected.remove((x, y)) self.update() def mouseMoveEvent(self, event): ''' overrides QWidget's mouse event ''' xOffset = self.width() / 16 yOffset = self.height() / 2 x = int(event.x() / xOffset) if event.y() < yOffset: y = 0 else: y = 1 if x > 15: x = 15 if x < 0: x = 0 if self.grid[y][x] is None: self.setHighlighted(-1, -1) else: self.setHighlighted(x, y) def leaveEvent(self, event): ''' cursor is leaving the widget clear any selections ''' self.setHighlighted(-1, -1) def mousePressEvent(self, event): '''overrides QWidget's mouse event''' shiftClick = (event.modifiers() == QtCore.Qt.ShiftModifier) ctrlClick = self.auto_ctrl_key or ( event.modifiers() == QtCore.Qt.ControlModifier) if not (shiftClick or ctrlClick): self.selected.clear() xOffset = self.width() / 16 yOffset = self.height() / 2 x = int(event.x() / xOffset) if event.y() < yOffset: y = 0 else: y = 1 if self.grid[y][x] is None: return if (x, y) not in self.selected and shiftClick and self.prevSelect: prevX, prevY = self.prevSelect self.prevSelect = (x, y) if x > prevX: setX = list(range(prevX, x + 1)) else: setX = list(range(x, prevX + 1)) for row in set([prevY, y]): for col in setX: self.selected.add((col, row)) self.update() else: self.setSelected(x, y) def paintEvent(self, event=None): ''' overrides the paint event so that we can draw our grid ''' painter = QtGui.QPainter(self) painter.save() painter.setRenderHint(QtGui.QPainter.Antialiasing, True) midline = self.width() / 100 # cell width xOffset = (self.width() - midline) / 16 # cell height yOffset = self.height() / 2 # red pen if self.isEnabled(): painter.setPen(QtGui.QPen(QtCore.Qt.red, 2)) else: painter.setPen(QtGui.QPen(QtCore.Qt.gray, 2)) font = painter.font() font.setPointSize(14) painter.setFont(font) fm = QtGui.QFontMetrics(font) leftpad = fm.width("Right ") rightpad = fm.width(" Left") # big horizontal dissection of entire widget painter.drawLine(leftpad, self.height() / 2, self.width() - rightpad, self.height() / 2) # vertical dissection of entire widget painter.drawLine(self.width() / 2, 0, self.width() / 2, self.height()) highlight_rects, selected_rects = [], [] for x in range(16): midx = midline if x > 7 else 0 for y in range(2): ident = self.grid[y][x] rect = QtCore.QRect(x * xOffset + midx, y * yOffset, xOffset, yOffset) if ident is not None: self.tooth(painter, rect.adjusted(-2, -2, 2, 2), ident) if [x, y] == self.highlighted: highlight_rects.append(rect.adjusted(1, 1, -1, -1)) if (x, y) in self.selected: selected_rects.append(rect.adjusted(1, 1, -1, -1)) painter.setPen(QtGui.QPen(QtCore.Qt.cyan, 1)) painter.setBrush(colours.TRANSPARENT) for rect in highlight_rects: painter.drawRoundedRect(rect, 5, 5) painter.setPen(QtGui.QPen(QtCore.Qt.darkBlue, 2)) for rect in selected_rects: painter.drawRoundedRect(rect, 5, 5) if self.isEnabled(): painter.setPen(QtGui.QPen(QtCore.Qt.black, 1)) else: painter.setPen(QtGui.QPen(QtCore.Qt.gray, 1)) textRect = QtCore.QRect(0, 0, self.width(), self.height()) if self.showLeftRight: # show left/right (this is done here to avoid being overwritten # during the rest of the paint job painter.drawText(textRect, QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter, (_("Left"))) painter.drawText(textRect, QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter, (_("Right"))) # free the painter's saved state painter.restore() def tooth(self, painter, rect, ident): if ident is None: return painter.save() pm = images.toothPixmaps().get(ident) if pm: painter.drawPixmap(rect, pm) else: painter.drawText(rect, QtCore.Qt.AlignCenter, ident) painter.restore() def set_regex_mask(self, mask): new_grid = ([], []) for i, arch in enumerate(self.grid): for tooth in arch: if re.match(mask, tooth): new_grid[i].append(tooth) else: new_grid[i].append("") self.grid = new_grid self.update() def disable_lowers(self): self.set_regex_mask("u[lr][1-8]") def disable_uppers(self): self.set_regex_mask("l[lr][1-8]") if __name__ == "__main__": app = QtWidgets.QApplication(sys.argv) form = SimpleChartWidg() # form.disable_lowers() # form.disable_uppers() form.show() sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/static_control_panel.py0000644000175000017500000001225712710144046030413 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets class StaticControlPanel(QtWidgets.QWidget): ''' emits such strings as "AT", "TM", "RP" etc. ''' clicked = QtCore.pyqtSignal(object) deciduous_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) tm_button = QtWidgets.QPushButton("TM") tm_button.setFocusPolicy(QtCore.Qt.NoFocus) tm_button.setToolTip(_("Mark the selected tooth as missing")) at_button = QtWidgets.QPushButton("AT") at_button.setFocusPolicy(QtCore.Qt.NoFocus) at_button.setToolTip(_("Mark the selected tooth as artificial")) rp_button = QtWidgets.QPushButton("RP") rp_button.setFocusPolicy(QtCore.Qt.NoFocus) rp_button.setToolTip(_("Mark the selected tooth as root present")) perm_button = QtWidgets.QPushButton("+P") perm_button.setFocusPolicy(QtCore.Qt.NoFocus) perm_button.setToolTip(_("Permanent Tooth Also Present")) sup_button = QtWidgets.QPushButton("+S") sup_button.setFocusPolicy(QtCore.Qt.NoFocus) sup_button.setToolTip(_("Supernumary Tooth Present")) pe_button = QtWidgets.QPushButton("PE") pe_button.setFocusPolicy(QtCore.Qt.NoFocus) pe_button.setToolTip(_("Mark the selected tooth as partially erupted")) oe_button = QtWidgets.QPushButton("OE") oe_button.setFocusPolicy(QtCore.Qt.NoFocus) oe_button.setToolTip(_("Mark the selected tooth as over erupted")) ue_button = QtWidgets.QPushButton("UE") ue_button.setFocusPolicy(QtCore.Qt.NoFocus) ue_button.setToolTip(_("Mark the selected tooth as partially erupted")) dec_button = QtWidgets.QPushButton("Deciduous") dec_button.setFocusPolicy(QtCore.Qt.NoFocus) dec_button.setToolTip(_("Toggle selected tooth/teeth as deciduous")) layout = QtWidgets.QGridLayout(self) layout.setContentsMargins(0, 0, 0, 0) layout.setSpacing(2) layout.addWidget(tm_button, 0, 0) layout.addWidget(at_button, 0, 1) layout.addWidget(rp_button, 0, 2) layout.addWidget(perm_button, 1, 0) layout.addWidget(sup_button, 1, 2) layout.addWidget(ue_button, 2, 0) layout.addWidget(pe_button, 2, 1) layout.addWidget(oe_button, 2, 2) layout.addWidget(dec_button, 3, 0, 1, 3) tm_button.clicked.connect(partial(self._but_clicked, "TM")) at_button.clicked.connect(partial(self._but_clicked, "AT")) rp_button.clicked.connect(partial(self._but_clicked, "RP")) perm_button.clicked.connect(partial(self._but_clicked, "+P")) sup_button.clicked.connect(partial(self._but_clicked, "+S")) pe_button.clicked.connect(partial(self._but_clicked, "PE")) oe_button.clicked.connect(partial(self._but_clicked, "OE")) ue_button.clicked.connect(partial(self._but_clicked, "UE")) dec_button.clicked.connect(self.deciduous_signal.emit) def sizeHint(self): return QtCore.QSize(150, 150) def _but_clicked(self, message): self.clicked.emit(message) def setEnabled(self, arg): ''' this unneccesary re-implementation allows the code to run on python 2.6 (untested) ''' QtWidgets.QWidget.setEnabled(self, arg) if __name__ == "__main__": def sig_catcher(*args): print(args, widg.sender()) app = QtWidgets.QApplication([]) widg = StaticControlPanel() widg.clicked.connect(sig_catcher) widg.show() widg.setEnabled(1 == 2) app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/toothProps.py0000644000175000017500000010261612710144046026365 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.settings import allowed from openmolar.qt4gui.compiled_uis import Ui_toothProps from openmolar.qt4gui import colours from openmolar.qt4gui.dialogs.bridge_dialog import BridgeDialog from openmolar.qt4gui.dialogs.crown_choice_dialog import CrownChoiceDialog from openmolar.qt4gui.dialogs.post_choice_dialog import PostChoiceDialog from openmolar.qt4gui.dialogs.implant_choice_dialog import ImplantChoiceDialog from openmolar.qt4gui.dialogs.chart_tx_choice_dialog import ChartTxChoiceDialog from openmolar.qt4gui.dialogs.toothprop_fulledit import ToothPropEditor LOGGER = logging.getLogger("openmolar") class chartLineEdit(QtWidgets.QLineEdit): ''' A custom line edit that accepts only BLOCK LETTERS and is self aware when verification is needed override the keypress event for up and down arrow keys. ''' changed_properties_signal = QtCore.pyqtSignal(object) deleted_comments_signal = QtCore.pyqtSignal() nav_key_pressed_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QLineEdit.__init__(self, parent) self.om_gui = parent self.originalPropList = [] def unsavedChanges(self): ''' checks for unsaved changes ''' result = not (self.originalPropList == self.propListFromText()) return result def deleteAll(self): ''' deletes all props ''' self.setText("") self.finishedEdit() def deleteProp(self, prop): ''' deletes all props ''' new_props = [] found = False for ex_prop in self.propListFromText(): if not found and ex_prop.upper() == prop.upper(): found = True else: new_props.append(ex_prop) self.updateFromPropList(new_props) def finishedEdit(self): ''' we have finished editing the text.. let the main gui know by means of a signal ''' props = self.text() if props != "" or (props == "" and self.originalPropList != []): if not re.match("..* $", props): if props != "": props = props + " " self.changed_properties_signal.emit(props) def additional(self, checkedAlready=False): ''' we have finished editing, and moving on ''' if checkedAlready or self.verifyProps(): self.updateFromPropList(self.propListFromText()) self.om_gui.tooth.clear() self.om_gui.tooth.update() self.finishedEdit() def propListFromText(self): ''' returns the current property list ''' text = self.text() propList = text.strip(" ").split(" ") return propList def updateFromPropList(self, propList): text = "" for prop in propList: if prop not in ("", " "): text += "%s " % prop self.setKnownProps(text) # not sure these are needed?? self.om_gui.tooth.clear() self.om_gui.tooth.update() self.finishedEdit() def setKnownProps(self, arg): ''' put a string of props into the text, and set the known list of properties ''' self.setText(arg) self.originalPropList = self.propListFromText() def verifyProps(self): ''' verify that the current text is valid ''' snapshotPropList = self.propListFromText() if snapshotPropList == self.originalPropList: return True for prop in self.originalPropList: if prop not in snapshotPropList: self.originalPropList.remove(prop) verified = True for prop in snapshotPropList: if (self.om_gui.selectedChart == "st" and not self.propAllowed(prop)): verified = False else: self.originalPropList.append(prop) return verified def deleteComments(self): snapshotPropList = self.propListFromText() deleted = False for prop in snapshotPropList: if prop[:1] == "!": snapshotPropList.remove(prop) deleted = True if deleted: self.updateFromPropList(snapshotPropList) self.deleted_comments_signal.emit() def addItem(self, item): if item not in ("", " "): snapshotPropList = self.propListFromText() snapshotPropList.append(item) self.updateFromPropList(snapshotPropList) def removeItem(self, item): if item == "": return snapshotPropList = self.propListFromText() snapshotPropList.remove(item) self.updateFromPropList(snapshotPropList) def removeEndItem(self): ''' user has pressed the delete button remove the last item ''' snapshotPropList = self.propListFromText() self.updateFromPropList(snapshotPropList[:-1]) def propAllowed(self, prop): ''' check to see if the user has entered garbage ''' LOGGER.debug("checking propAllowed '%s' origs ='%s'", prop, self.originalPropList) if prop == "": return True if prop[:1] == "!": # comment return True if prop in self.originalPropList: return True if self.om_gui.tooth.isBacktooth: allowed_prop = prop in allowed.backToothCodes else: allowed_prop = prop in allowed.frontToothCodes if not self.om_gui.is_Static: if prop in allowed.treatment_only: allowed_prop = True if not allowed_prop: message = '"%s" %s
    %s?' % ( prop, _("is not recognised"), _("do you want to accept anyway")) allowed_prop = QtWidgets.QMessageBox.question( self, _("Confirm"), message, QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes if allowed_prop: LOGGER.debug("toothProps - accepting new entry '%s'" % prop) return allowed_prop def specialKeyPressed(self, arg): ''' handles the events when a user hits space, up, down or return ''' if arg in ("up", "down"): self.nav_key_pressed_signal.emit(arg) else: self.additional() def keyPressEvent(self, event): ''' overrides QWidget's keypressEvent. Catch special keys, and disable lower case ''' if event.key() == QtCore.Qt.Key_Up: self.specialKeyPressed("up") return if event.key() in (QtCore.Qt.Key_Return, QtCore.Qt.Key_Down): self.specialKeyPressed("down") return if event.text() == "!" and not self.om_gui.is_Static: # don't allow comments if not in static: return if event.key() == QtCore.Qt.Key_Space: self.specialKeyPressed("space") elif 65 <= event.key() <= 90: event = QtGui.QKeyEvent( event.type(), event.key(), event.modifiers(), event.text().upper() ) QtWidgets.QLineEdit.keyPressEvent(self, event) class ToothPropertyEditingWidget(QtWidgets.QWidget, Ui_toothProps.Ui_Form): static_chosen = QtCore.pyqtSignal(object) next_tooth_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.om_gui = parent self.setupUi(self) hlayout = QtWidgets.QHBoxLayout(self.editframe) hlayout.setContentsMargins(0, 0, 0, 0) self.lineEdit = chartLineEdit(self) self.lineEdit.setMaxLength(34) # as defined in the sql tables for a static entry - # may exceed the plan stuff.... but I will validate that anyway. hlayout.addWidget(self.lineEdit) self.tooth = Tooth() self.toothlayout = QtWidgets.QHBoxLayout(self.frame) self.toothlayout.setContentsMargins(2, 2, 2, 2) self.toothlayout.setSpacing(2) self.toothlayout.addWidget(self.tooth) icon = QtGui.QIcon(":/pin.png") pin_button = QtWidgets.QPushButton(icon, "") pin_button.setMaximumWidth(30) pin_button.setSizePolicy( QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) pin_button.setToolTip(_("Toggle Pin Retention for current Filling")) self.toothlayout.addWidget(pin_button) self.am_pushButton.setStyleSheet( "background-color: %s" % colours.AMALGAM_) self.co_pushButton.setStyleSheet( "background-color: %s" % colours.COMP_) self.gl_pushButton.setStyleSheet( "background-color: %s" % colours.GI_) self.gold_pushButton.setStyleSheet( "background-color: %s" % colours.GOLD_) self.porc_pushButton.setStyleSheet( "background-color: %s" % colours.PORC_) self.is_Static = False self.selectedChart = "" self.selectedTooth = "" self.comboboxes = [] self.crown_but = QtWidgets.QPushButton(_("Crowns")) self.post_but = QtWidgets.QPushButton(_("Posts")) self.bridge_but = QtWidgets.QPushButton(_("Bridges")) self.implant_but = QtWidgets.QPushButton(_("Implants")) self.fs_but = QtWidgets.QPushButton(_("Fissure Sealants")) self.endo_but = QtWidgets.QPushButton(_("Endodontics")) self.surgical_but = QtWidgets.QPushButton(_("Surgical Tx")) frame = QtWidgets.QFrame() vlayout = QtWidgets.QVBoxLayout(frame) vlayout.setContentsMargins(0, 0, 0, 0) vlayout.addWidget(self.fs_but) vlayout.addWidget(self.endo_but) vlayout.addWidget(self.crown_but) vlayout.addWidget(self.post_but) vlayout.addWidget(self.bridge_but) vlayout.addWidget(self.surgical_but) vlayout.addWidget(self.implant_but) vlayout.addStretch(100) self.cb_scrollArea.setWidget(frame) self.cb_scrollArea.setWidgetResizable(True) self.signals() pin_button.clicked.connect(self.toggle_pin) def sizeHint(self): return QtCore.QSize(120, 500) def setTooth(self, selectedTooth, selectedChart): ''' make the widget aware of exactly what it is editing selectedTooth will be 'ur8' etc.. selectedChart will be 'st' or 'pl' or 'cmp' ''' self.setSelectedChart(selectedChart) self.selectedTooth = selectedTooth self.tooth.setBacktooth(int(selectedTooth[2]) > 3) self.tooth.setRightSide(selectedTooth[1] == "r") self.tooth.setUpper(selectedTooth[0] == "u") self.tooth.clear() self.tooth.update() # ALLOWS for deciduous teeth self.tooth_label.setText( self.om_gui.pt.chartgrid[selectedTooth].upper()) if selectedChart == "st": self.isStatic(True) props = self.om_gui.pt.__dict__["%sst" % selectedTooth] else: self.isStatic(False) props = self.om_gui.pt.treatment_course.__dict__[ "%s%s" % (selectedTooth, selectedChart)] self.setExistingProps(props) def setSelectedChart(self, arg): ''' make the widget aware which chart it is linked to ''' self.selectedChart = arg self.isStatic(arg == "st") self.static_chosen.emit(arg == "st") def isStatic(self, arg): ''' if the editing is of the static chart, then different buttons are enabled ''' self.is_Static = arg self.comments_comboBox.setEnabled(arg) self.ex_pushButton.setEnabled(not arg) def comments(self, arg): ''' comments combobox has been nav'd ''' if _("ADD COMMENTS") in arg: return elif arg == _("DELETE ALL COMMENTS"): self.lineEdit.deleteComments() else: newComment = "!%s" % arg.replace(" ", "_") self.lineEdit.addItem(newComment) self.comments_comboBox.setCurrentIndex(0) def fulledit(self): ''' user has clicked the edit button allow the user to edit the full contents of a tootget\ h ''' lineEdit = chartLineEdit() if self.selectedChart == "st": lineEdit.setMaxLength(34) lineEdit.setText(self.lineEdit.text()) dl = ToothPropEditor(self.selectedTooth, self.selectedChart, lineEdit, self.parent()) if dl.exec_(): self.lineEdit.setText(dl.result) self.lineEdit.additional() else: self.lineEdit.updateFromPropList(self.lineEdit.originalPropList) def setExistingProps(self, arg): self.lineEdit.setKnownProps(arg) def updateSurfaces(self): existing = self.lineEdit.text() if " " in existing: # we have an existing property in the tooth colonPos = existing.rindex(" ") keep = existing[:colonPos + 1] currentFill = existing[colonPos:] else: # we don't keep = "" currentFill = existing if "," in currentFill: # we have a material split = currentFill.split(",") mat = "," + split[1] currentFill = self.tooth.filledSurfaces + mat elif "/" in currentFill: # we have a lab item split = currentFill.split("/") mat = split[0] + "/" currentFill = mat + self.tooth.filledSurfaces else: # virgin tooth currentFill = self.tooth.filledSurfaces if currentFill.startswith(",") or currentFill.endswith("/ "): currentFill = "" self.lineEdit.setText(keep + currentFill) def changeFillColour(self, arg): self.tooth.fillcolour = arg self.tooth.update() def plasticMaterial(self, arg): existing = self.lineEdit.text() if " " in existing: colonPos = existing.rindex(" ") keep = existing[:colonPos + 1] currentFill = existing[colonPos + 1:] else: keep = "" currentFill = existing pinned = ",PR" in currentFill if pinned: currentFill = currentFill.replace(",PR", "") if currentFill.strip(" ") == "": return if "/" in currentFill: # already has a lab item split = currentFill.split("/") surfaces = split[1] currentFill = surfaces + "," + arg elif "," in currentFill: # already a material set! replace it. split = currentFill.split(",") surfaces = split[0] currentFill = surfaces + "," + arg else: currentFill += "," + arg if pinned: currentFill += ",PR" self.lineEdit.setText(keep + currentFill) def toggle_pin(self): existing = self.lineEdit.text() if " " in existing: colonPos = existing.rindex(" ") keep = existing[:colonPos + 1] current = existing[colonPos + 1:] else: keep = "" current = existing if current.strip(" ") == "": return if ",PR" in current: current = current.replace(",PR", "") else: current += ",PR" self.lineEdit.setText(keep + current) def labMaterial(self, arg): existing = self.lineEdit.text() if " " in existing: colonPos = existing.rindex(" ") keep = existing[:colonPos + 1] currentFill = existing[colonPos + 1:] else: keep = "" currentFill = existing if currentFill.strip(" ") == "": return pinned = ",PR" in currentFill if pinned: currentFill = currentFill.replace(",PR", "") if "," in currentFill: # already a material set! replace it. split = currentFill.split(",") surfaces = split[0] currentFill = arg + "/" + surfaces elif "/" in currentFill: # already has a lab item split = currentFill.split("/") surfaces = split[1] currentFill = arg + "/" + surfaces else: currentFill = arg + "/" + currentFill if pinned: currentFill += ",PR" self.lineEdit.setText(keep + currentFill) def am(self): self.changeFillColour(colours.AMALGAM) self.plasticMaterial("AM") def co(self): self.changeFillColour(colours.COMP) self.plasticMaterial("CO") def gl(self): self.changeFillColour(colours.GI) self.plasticMaterial("GL") def go(self): self.changeFillColour(colours.GOLD) self.labMaterial("GI") def pi(self): self.changeFillColour(colours.PORC) self.labMaterial("PI") def keyNav(self, arg): if arg == "up": self.prevTooth() elif arg == "down": self.nextTooth() def leftTooth(self): if self.tooth.isUpper: self.prevTooth() else: self.nextTooth() def rightTooth(self): if not self.tooth.isUpper: self.prevTooth() else: self.nextTooth() def prevTooth(self): if self.lineEdit.verifyProps(): self.lineEdit.finishedEdit() self.next_tooth_signal.emit("up") def nextTooth(self): if self.lineEdit.verifyProps(): self.lineEdit.finishedEdit() self.next_tooth_signal.emit("down") def static_input(self, value): self.lineEdit.addItem(value) self.nextTooth() def ex(self): self.lineEdit.addItem("EX") self.nextTooth() def rt(self): self.lineEdit.addItem("RT") self.lineEdit.additional() def dressing(self): self.lineEdit.addItem("DR") self.lineEdit.additional() def crown(self): dl = CrownChoiceDialog(self.is_Static, self.om_gui) if dl.exec_(): self.lineEdit.addItem(dl.chosen_shortcut) self.lineEdit.additional() def posts(self): dl = PostChoiceDialog(self.is_Static, self.om_gui) if dl.exec_(): self.lineEdit.addItem(dl.chosen_shortcut) self.lineEdit.additional() def bridge(self): dl = BridgeDialog(self.om_gui) if dl.exec_(): for tooth, tx in dl.chosen_treatments: LOGGER.debug("adding bridge unit '%s' '%s'" % (tooth, tx)) self.setTooth(tooth, self.selectedChart) self.lineEdit.addItem(tx) self.lineEdit.additional() def implant_but_clicked(self): dl = ImplantChoiceDialog(self.is_Static, self.om_gui) if dl.exec_(): self.lineEdit.addItem(dl.chosen_shortcut) self.nextTooth() def fs_but_clicked(self): dl = ChartTxChoiceDialog(self.is_Static, self.om_gui) if self.is_Static: dl.set_items(dl.FS_ITEMS) else: dl.add_buttons( self.om_gui.pt.fee_table.ui_lists["fs_buttons"], localsettings.FEETABLES.ui_fs_chart_buttons) if dl.exec_(): self.lineEdit.addItem(dl.chosen_shortcut) self.lineEdit.additional() def endo_but_clicked(self): dl = ChartTxChoiceDialog(self.is_Static, self.om_gui) if self.is_Static: dl.set_items(dl.ENDO_ITEMS) else: dl.add_buttons( self.om_gui.pt.fee_table.ui_lists["endo_buttons"], localsettings.FEETABLES.ui_endo_chart_buttons) if dl.exec_(): self.lineEdit.addItem(dl.chosen_shortcut) self.lineEdit.additional() def surgical_but_clicked(self): dl = ChartTxChoiceDialog(self.is_Static, self.om_gui) if self.is_Static: dl.set_items(dl.SURGICAL_ITEMS) else: dl.add_buttons( self.om_gui.pt.fee_table.ui_lists["surgical_buttons"], localsettings.FEETABLES.ui_surgical_chart_buttons) if dl.exec_(): self.lineEdit.addItem(dl.chosen_shortcut) self.lineEdit.additional() def signals(self): self.tooth.surfaces_changed_signal.connect(self.updateSurfaces) self.lineEdit.nav_key_pressed_signal.connect(self.keyNav) self.comments_comboBox.currentIndexChanged[str].connect(self.comments) self.am_pushButton.clicked.connect(self.am) self.co_pushButton.clicked.connect(self.co) self.gl_pushButton.clicked.connect(self.gl) self.gold_pushButton.clicked.connect(self.go) self.porc_pushButton.clicked.connect(self.pi) self.clear_pushButton.clicked.connect(self.lineEdit.removeEndItem) self.edit_pushButton.clicked.connect(self.fulledit) self.pushButton.clicked.connect(self.lineEdit.additional) self.rightTooth_pushButton.clicked.connect(self.rightTooth) self.leftTooth_pushButton.clicked.connect(self.leftTooth) self.ex_pushButton.clicked.connect(self.ex) self.rt_pushButton.clicked.connect(self.rt) self.dressing_pushButton.clicked.connect(self.dressing) self.crown_but.clicked.connect(self.crown) self.post_but.clicked.connect(self.posts) self.bridge_but.clicked.connect(self.bridge) self.implant_but.clicked.connect(self.implant_but_clicked) self.fs_but.clicked.connect(self.fs_but_clicked) self.endo_but.clicked.connect(self.endo_but_clicked) self.surgical_but.clicked.connect(self.surgical_but_clicked) class Tooth(QtWidgets.QWidget): surfaces_changed_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.isBacktooth = True self.quadrant = 1 self.isUpper = True self.isRight = True self.setMouseTracking(True) self.shapes() self.clear() def sizeHint(self): return self.parent().size() def minimumSizeHint(self): return QtCore.QSize(80, 80) def setBacktooth(self, arg): if self.isBacktooth != arg: self.isBacktooth = arg self.shapes() def setRightSide(self, arg): self.isRight = arg def setUpper(self, arg): self.isUpper = arg def clear(self): self.filledSurfaces = "" if self.isBacktooth: self.fillcolour = colours.AMALGAM else: self.fillcolour = colours.COMP def sortSurfaces(self, arg): ''' sort the filling surfaces to fit with conventional notation eg... MOD not DOM etc.. ''' retarg = "" if "M" in arg: retarg += "M" if "D" in arg and "M" not in retarg: retarg += "D" if "O" in arg: retarg += "O" if "D" in arg and "D" not in retarg: retarg += "D" if "B" in arg: retarg += "B" if "P" in arg: retarg += "P" if "L" in arg: retarg += "L" if "I" in arg: retarg += "I" return retarg def setFilledSurfaces(self, arg): if arg in self.filledSurfaces: self.filledSurfaces = self.filledSurfaces.replace(arg, "") else: self.filledSurfaces += arg self.filledSurfaces = self.sortSurfaces(self.filledSurfaces) self.update() def leaveEvent(self, event): self.mouseOverSurface = None self.update() def mouseMoveEvent(self, event): y = event.y() x = event.x() if self.mesial.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): self.mouseOverSurface = self.mesial self.update() elif self.occlusal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): self.mouseOverSurface = self.occlusal self.update() elif self.distal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): self.mouseOverSurface = self.distal self.update() elif self.buccal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): self.mouseOverSurface = self.buccal self.update() elif self.palatal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): self.mouseOverSurface = self.palatal self.update() def mousePressEvent(self, event): y = event.y() x = event.x() if self.mesial.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): if self.isRight: self.setFilledSurfaces("D") else: self.setFilledSurfaces("M") elif self.occlusal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): if self.isBacktooth: self.setFilledSurfaces("O") else: self.setFilledSurfaces("I") elif self.distal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): if not self.isRight: self.setFilledSurfaces("D") else: self.setFilledSurfaces("M") elif self.buccal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): if self.isUpper: self.setFilledSurfaces("B") else: self.setFilledSurfaces("L") elif self.palatal.containsPoint( QtCore.QPoint(x, y), QtCore.Qt.OddEvenFill): if self.isUpper: self.setFilledSurfaces("P") else: self.setFilledSurfaces("B") else: return # missed!! self.surfaces_changed_signal.emit() def resizeEvent(self, event): self.shapes() def shapes(self): self.toothRect = QtCore.QRectF(0, 0, self.width(), self.height()) irw = self.toothRect.width() * \ 0.25 # inner rectangle width if self.isBacktooth: irh = self.toothRect.height() * \ 0.25 # backtooth inner rectangle height else: irh = self.toothRect.height() * \ 0.40 # fronttooth inner rectangle height self.innerRect = self.toothRect.adjusted(irw, irh, -irw, -irh) self.mesial = QtGui.QPolygon() self.mesial.setPoints( [0, 0, self.innerRect.topLeft().x(), self.innerRect.topLeft().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y(), self.toothRect.bottomLeft().x(), self.toothRect.bottomLeft().y()]) self.occlusal = QtGui.QPolygon() self.occlusal.setPoints( [self.innerRect.topLeft().x(), self.innerRect.topLeft().y(), self.innerRect.topRight().x(), self.innerRect.topRight().y(), self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y()]) self.distal = QtGui.QPolygon() self.distal.setPoints( [self.innerRect.topRight().x(), self.innerRect.topRight().y(), self.toothRect.topRight().x(), self.toothRect.topRight().y(), self.toothRect.bottomRight().x(), self.toothRect.bottomRight().y(), self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y()]) self.buccal = QtGui.QPolygon() self.buccal.setPoints( [0, 0, self.toothRect.topRight().x(), self.toothRect.topRight().y(), self.innerRect.topRight().x(), self.innerRect.topRight().y(), self.innerRect.topLeft().x(), self.innerRect.topLeft().y()]) self.palatal = QtGui.QPolygon() self.palatal.setPoints( [self.toothRect.bottomLeft().x(), self.toothRect.bottomLeft().y(), self.innerRect.bottomLeft().x(), self.innerRect.bottomLeft().y(), self.innerRect.bottomRight().x(), self.innerRect.bottomRight().y(), self.toothRect.bottomRight().x(), self.toothRect.bottomRight().y()]) self.mouseOverSurface = None # initiate a value def paintEvent(self, event=None): ''' override the paint event so that we can draw our grid ''' if self.isBacktooth: if self.isUpper: if self.isRight: surfs = "DBPMO" else: surfs = "MBPDO" else: if self.isRight: surfs = "DLBMO" else: surfs = "MLBDO" else: if self.isUpper: if self.isRight: surfs = "DBPMI" else: surfs = "MBPDI" else: if self.isRight: surfs = "DLBMI" else: surfs = "MLBDI" painter = QtGui.QPainter(self) painter.setRenderHint(QtGui.QPainter.Antialiasing, True) painter.setPen(QtGui.QColor("gray")) painter.setBrush(colours.IVORY) painter.drawRect(self.toothRect) painter.drawRect(self.innerRect) painter.drawLine(self.toothRect.topLeft(), self.innerRect.topLeft()) painter.drawLine(self.toothRect.topRight(), self.innerRect.topRight()) painter.drawLine( self.toothRect.bottomLeft(), self.innerRect.bottomLeft()) painter.drawLine( self.toothRect.bottomRight(), self.innerRect.bottomRight()) option = QtGui.QTextOption(QtCore.Qt.AlignCenter) rect = self.toothRect.adjusted(0, 0, -self.innerRect.right(), 0) painter.drawText(QtCore.QRectF(rect), surfs[0], option) rect = self.toothRect.adjusted(0, 0, 0, -self.innerRect.bottom()) painter.drawText(QtCore.QRectF(rect), surfs[1], option) rect = self.toothRect.adjusted(0, self.innerRect.bottom(), 0, 0) painter.drawText(QtCore.QRectF(rect), surfs[2], option) rect = self.toothRect.adjusted(self.innerRect.right(), 0, 0, 0) painter.drawText(QtCore.QRectF(rect), surfs[3], option) painter.drawText(QtCore.QRectF(self.innerRect), surfs[4], option) painter.setBrush(self.fillcolour) if "M" in self.filledSurfaces: if self.isRight: painter.drawPolygon(self.distal) else: painter.drawPolygon(self.mesial) if "O" in self.filledSurfaces or "I" in self.filledSurfaces: painter.drawPolygon(self.occlusal) if "D" in self.filledSurfaces: if not self.isRight: painter.drawPolygon(self.distal) else: painter.drawPolygon(self.mesial) if "B" in self.filledSurfaces: if self.isUpper: painter.drawPolygon(self.buccal) else: painter.drawPolygon(self.palatal) if "L" in self.filledSurfaces: painter.drawPolygon(self.buccal) if "P" in self.filledSurfaces: painter.drawPolygon(self.palatal) if self.mouseOverSurface is not None: painter.setBrush(colours.TRANSPARENT) painter.setPen(QtGui.QColor("red")) painter.drawPolygon(self.mouseOverSurface) if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) mw = QtWidgets.QMainWindow() ui = ToothPropertyEditingWidget() ui.setExistingProps("MOD B,GL !COMMENT_TWO ") mw.setCentralWidget(ui) mw.show() sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/upper_case_line_edit.py0000644000175000017500000000452312710144046030344 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtGui from PyQt5 import QtWidgets class UpperCaseLineEdit(QtWidgets.QLineEdit): ''' A custom line edit that accepts only BLOCK LETTERS. ''' def setText(self, text): QtWidgets.QLineEdit.setText(self, text.upper()) def keyPressEvent(self, event): ''' convert the text to upper case, and pass the signal on to the base widget ''' if 65 <= event.key() <= 90: event = QtGui.QKeyEvent(event.type(), event.key(), event.modifiers(), event.text().upper()) QtWidgets.QLineEdit.keyPressEvent(self, event) if __name__ == "__main__": app = QtWidgets.QApplication([]) te = UpperCaseLineEdit() te.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/waitwidget.py0000644000175000017500000000617212721046376026365 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides WaitWidget - a custom widget which oscillates if the application is busy ''' from PyQt5 import QtWidgets from PyQt5 import QtCore from PyQt5 import QtGui class WaitWidget(QtWidgets.QWidget): ''' a custom widget which oscillates if the application is busy ''' FORWARDS = 1 BACKWARDS = -1 blob_width = 10 def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.step = 0 self.direction = self.FORWARDS self.brush = self.palette().dark() self.pen = QtGui.QPen(self.brush, 0) self.timer = QtCore.QBasicTimer() def sizeHint(self): return QtCore.QSize(300, 20) def showEvent(self, event): self.timer.start(10, self) self.blob_width = self.width() * 0.2 def hideEvent(self, event): self.timer.stop() def paintEvent(self, event): xpos = self.step * self.width() / 100 rect = QtCore.QRectF(xpos - (self.blob_width / 2), 0, self.blob_width, self.height()) painter = QtGui.QPainter(self) painter.setBrush(self.brush) painter.setPen(self.pen) painter.drawRoundedRect(rect, 5, 5) def timerEvent(self, event): if self.step == 0: self.direction = self.FORWARDS elif self.step == 100: self.direction = self.BACKWARDS self.step += self.direction self.update() if __name__ == "__main__": app = QtWidgets.QApplication([]) widg = WaitWidget() widg.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/customwidgets/warning_label.py0000644000175000017500000000471412710144046027010 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets class WarningLabel(QtWidgets.QWidget): def __init__(self, text, parent=None): QtWidgets.QWidget.__init__(self, parent) icon = QtGui.QIcon(":/openmolar.svg") icon_label = QtWidgets.QLabel() icon_label.setPixmap(icon.pixmap(48, 48)) self.label = QtWidgets.QLabel(text) self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setWordWrap(True) layout = QtWidgets.QHBoxLayout(self) layout.addWidget(icon_label) layout.addWidget(self.label) layout.setStretch(1, 9) def setText(self, message): self.label.setText(message) if __name__ == "__main__": app = QtWidgets.QApplication([]) from openmolar.qt4gui import resources_rc wl = WarningLabel("hello world!") wl.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/0000755000175000017500000000000013024000134022331 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/__init__.py0000755000175000017500000000312412710144046024461 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/account_letter_dialog.py0000644000175000017500000000720512725541267027271 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import db_settings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class AccountLetterDialog(BaseDialog): _dc = "" _footer = "" def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Update Account Letter Settings")) label = WarningLabel( _("The following fields can be edited.")) self.debt_collector_lineedit = QtWidgets.QLineEdit() self.footer_textedit = QtWidgets.QTextEdit() frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Debt Collector"), self.debt_collector_lineedit) layout.addRow(_("Footer"), self.footer_textedit) self.insertWidget(label) self.insertWidget(frame) def apply_(self): LOGGER.info("account letter dialog - applying changes %s") if self.debt_collector != self._dc: db_settings.insertData("debt collector", self.debt_collector) if self.footer != self._footer: db_settings.insertData("account footer", self.footer) def sizeHint(self): return QtCore.QSize(500, 400) @property def footer(self): return self.footer_textedit.document().toPlainText() @property def debt_collector(self): return self.debt_collector_lineedit.text() def showEvent(self, event): settings_fetcher = db_settings.SettingsFetcher() self._dc = settings_fetcher.debt_collector self._footer = settings_fetcher.account_footer self.debt_collector_lineedit.setText(self._dc) self.footer_textedit.setText(self._footer) self.enableApply() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) dl = AccountLetterDialog() if dl.exec_(): dl.apply_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/account_severity_dialog.py0000644000175000017500000000553612710144046027635 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class AccountSeverityDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Account Dialog")) label = WarningLabel(_("Please Choose the tone of this letter")) self.radio_button_a = QtWidgets.QRadioButton( _("Normal Account - Very Polite")) self.radio_button_b = QtWidgets.QRadioButton( _("Mildly assertive request")) self.radio_button_c = QtWidgets.QRadioButton( _("Threaten with Debt Collector")) self.insertWidget(label) self.insertWidget(self.radio_button_a) self.insertWidget(self.radio_button_b) self.insertWidget(self.radio_button_c) self.radio_button_a.setChecked(True) self.enableApply() @property def severity(self): if self.radio_button_a.isChecked(): return "A" if self.radio_button_b.isChecked(): return "B" return "C" def sizeHint(self): return QtCore.QSize(300, 200) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py0000644000175000017500000001147712723331755027426 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.customwidgets.warning_label import WarningLabel class AccountsLoaderDialog(BaseDialog): ''' generates SQL and values to be used to select patients in debt or credit ''' def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.dent_cbs = [] self.setWindowTitle(_("Load Accounts")) label = WarningLabel( _("Please select criteria for loading patients in debt or credit")) self.debt_rb = QtWidgets.QRadioButton(_("Debt")) self.debt_rb.setChecked(True) credit_rb = QtWidgets.QRadioButton(_("Credit")) self.dent_gb = QtWidgets.QGroupBox( _("Dentist choice (leave unchecked for all)")) self.dent_gb.setCheckable(True) self.dent_gb.setChecked(False) layout = QtWidgets.QVBoxLayout(self.dent_gb) for i, dent in enumerate(localsettings.activedents): cb = QtWidgets.QCheckBox() cb.setChecked(True) cb.setText(dent) cb.dent = localsettings.activedent_ixs[i] layout.addWidget(cb) self.dent_cbs.append(cb) self.amount_spin_box = QtWidgets.QDoubleSpinBox() self.bad_debts_cb = QtWidgets.QCheckBox() rb_frame = QtWidgets.QFrame() radio_but_layout = QtWidgets.QHBoxLayout(rb_frame) radio_but_layout.addWidget(self.debt_rb) radio_but_layout.addWidget(credit_rb) amount_frame = QtWidgets.QFrame() amount_layout = QtWidgets.QFormLayout(amount_frame) amount_layout.addRow(_("Ignore amounts less than"), self.amount_spin_box) amount_layout.addRow(_("Include Bad Debts"), self.bad_debts_cb) self.insertWidget(label) self.insertWidget(rb_frame) self.insertWidget(amount_frame) self.insertWidget(self.dent_gb) self.enableApply() @property def show_debts(self): return self.debt_rb.isChecked() @property def ignore_bad_debts(self): return not self.bad_debts_cb.isChecked() @property def min_amount(self): return self.amount_spin_box.value() @property def conditions(self): conditions = [] dent_conditions = [] if self.dent_gb.isChecked(): for cb in self.dent_cbs: if cb.isChecked(): dent_conditions.append("dnt1=%s") if dent_conditions: conditions.append("(%s)" % " OR ".join(dent_conditions)) if self.ignore_bad_debts: conditions.append("status!=%s") return conditions @property def values(self): vals = [] if self.dent_gb.isChecked(): for cb in self.dent_cbs: if cb.isChecked(): vals.append(cb.dent) if self.ignore_bad_debts: vals.append(_("BAD DEBT")) return vals if __name__ == "__main__": localsettings.initiate() app = QtWidgets.QApplication([]) dl = AccountsLoaderDialog() if dl.exec_(): print("conditions=%s values=%s" % (dl.conditions, dl.values)) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/add_clinician_dialog.py0000644000175000017500000001634012710144046027003 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.dialogs.add_user_dialog import AddUserDialog from openmolar.dbtools import db_settings LOGGER = logging.getLogger("openmolar") NewClinician = namedtuple( 'NewClinician', ('initials', 'name', 'formal_name', 'qualifications', 'type', 'speciality', 'data', 'start_date', 'end_date', "new_diary")) class AddClinicianDialog(ExtendableDialog): def __init__(self, ftr=False, parent=None): ExtendableDialog.__init__(self, parent) self.setWindowTitle(_("Add User Dialog")) self.top_label = WarningLabel(_('Add a new clinician to the system?')) self.user_id_comboBox = QtWidgets.QComboBox() but = QtWidgets.QPushButton(_("Add New Login")) self.name_lineedit = QtWidgets.QLineEdit() self.f_name_lineedit = QtWidgets.QLineEdit() self.quals_lineedit = QtWidgets.QLineEdit() self.type_comboBox = QtWidgets.QComboBox() self.type_comboBox.addItems([ _("Dentist"), _("Hygienist"), _("Therapist") ]) self.speciality_lineedit = QtWidgets.QLineEdit() self.date_edit = QtWidgets.QDateEdit() self.date_edit.setDate(localsettings.currentDay()) self.data_lineedit = QtWidgets.QLineEdit() self.new_diary_checkbox = QtWidgets.QCheckBox( _("Create a new diary for this clinician " "(uncheck to map to an existing diary)")) self.new_diary_checkbox.setChecked(True) row1 = QtWidgets.QWidget() layout = QtWidgets.QHBoxLayout(row1) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.user_id_comboBox) layout.addWidget(but) frame = QtWidgets.QFrame(self) layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Initials/Nickname (must be an existing Login)"), row1) layout.addRow(_("Name eg. Fred Smith"), self.name_lineedit) layout.addRow(_("Formal Name eg. Dr.F. Smith"), self.f_name_lineedit) layout.addRow(_("Qualifications"), self.quals_lineedit) layout.addRow(_("Speciality"), self.speciality_lineedit) layout.addRow(_("Clinician Type"), self.type_comboBox) layout.addRow(_("Start Date"), self.date_edit) layout.addRow(_("Additional Data"), self.data_lineedit) layout.addRow(self.new_diary_checkbox) self.insertWidget(self.top_label) self.insertWidget(frame) for le in (self.name_lineedit, self.f_name_lineedit): le.textChanged.connect(self._check_enable) self.name_lineedit.setFocus() list_widget = QtWidgets.QListWidget() list_widget.addItems( [str(val) for val in sorted(localsettings.dentDict.values())]) self.add_advanced_widget(list_widget) self.set_advanced_but_text(_("view existing dentists")) self.load_logins() but.clicked.connect(self.add_user) def sizeHint(self): return QtCore.QSize(500, 400) def _check_enable(self, *args): self.enableApply(self.initials != "" and self.name != "" and self.full_name != "") def load_logins(self, chosen=None): poss_inits = localsettings.allowed_logins for val in list(localsettings.ops.values()) + ["rec"]: try: poss_inits.remove(val) except ValueError: print("couldn't remove %s" % val) pass self.user_id_comboBox.clear() self.user_id_comboBox.addItems(poss_inits) if chosen: try: index = poss_inits.index(chosen) except ValueError: index = -1 self.user_id_comboBox.setCurrentIndex(index) def add_user(self): dl = AddUserDialog(self.parent()) if dl.exec_(): self.load_logins(dl.username) @property def initials(self): return str(self.user_id_comboBox.currentText()) @property def name(self): return str(self.name_lineedit.text()) @property def full_name(self): return str(self.f_name_lineedit.text()) @property def qualifications(self): return str(self.quals_lineedit.text()) @property def speciality(self): return str(self.speciality_lineedit.text()) @property def type(self): return self.type_comboBox.currentIndex() + 1 @property def data(self): return str(self.data_lineedit.text()) @property def start_date(self): return self.date_edit.date().toPyDate() @property def end_date(self): return None @property def new_diary(self): return self.new_diary_checkbox.isChecked() def apply(self): new_clinician = NewClinician(self.initials, self.name, self.full_name, self.qualifications, self.type, self.speciality, self.data, self.start_date, self.end_date, self.new_diary,) LOGGER.info(new_clinician) return db_settings.insert_clinician(new_clinician) def exec_(self): if ExtendableDialog.exec_(self): return self.apply() return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/add_treatment_dialog.py0000644000175000017500000000777212710144046027066 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.compiled_uis import Ui_addTreatment from openmolar.qt4gui.compiled_uis import Ui_treatmentItemWidget class itemWidget(Ui_treatmentItemWidget.Ui_Form): def __init__(self, parent, widget): self.parent = parent self.setupUi(widget) self.feelist = [] self.ptfeelist = [] self.description = "" self.itemcode = "" def setItem(self, itemcode): self.itemcode = itemcode def setDescription(self, description): self.description = description self.label.setText("%s (%s)" % (self.description, self.itemcode)) class AddTreatmentDialog(QtWidgets.QDialog, Ui_addTreatment.Ui_Dialog): ''' a custom dialog to offer a range of treatments for selection ''' def __init__(self, usercodes, pt, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.items = [] feetable = pt.fee_table for att, shortcut in usercodes: item = feetable.getItemCodeFromUserCode("%s %s" % (att, shortcut)) item_description = feetable.getItemDescription(item, shortcut) self.items.append((item, item_description, (att, shortcut))) self.showItems() def use_completed_messages(self): ''' if called, the dialog shows different messages, indicating to the users that treatment will be COMPLETED upon entry ''' self.setWindowTitle(_("Complete Treatments")) self.label.setText(_("What treatment has been performed?")) def showItems(self): self.itemWidgets = [] vlayout = QtWidgets.QVBoxLayout() for item, item_description, usercode in self.items: iw = QtWidgets.QWidget() itemW = itemWidget(self, iw) itemW.setItem(item) itemW.usercode = usercode itemW.setDescription(item_description) self.itemWidgets.append(itemW) vlayout.addWidget(iw) self.frame.setLayout(vlayout) def getInput(self): ''' yields selected usercodes (allowing multiple selections) ''' if self.exec_(): for item_widg in self.itemWidgets: number = item_widg.spinBox.value() if number != 0: for n in range(number): yield item_widg.usercode openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/add_user_dialog.py0000644000175000017500000000740712727523517026050 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.customwidgets.upper_case_line_edit \ import UpperCaseLineEdit from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.dbtools import db_settings LOGGER = logging.getLogger("openmolar") class AddUserDialog(ExtendableDialog): def __init__(self, parent=None): ExtendableDialog.__init__(self, parent) self.setWindowTitle(_("Add User Dialog")) self.top_label = WarningLabel("%s
    %s
    %s" % ( _('Add a new user to the system?'), _("This is done using initials or a short nickname."), _("Must be unique and Maximum allowed in 5 characters"))) self.line_edit = UpperCaseLineEdit() frame = QtWidgets.QFrame(self) layout = QtWidgets.QFormLayout(frame) layout.addRow(_("User Initials or nickname"), self.line_edit) self.insertWidget(self.top_label) self.insertWidget(frame) self.line_edit.textChanged.connect(self._check_enable) self.line_edit.setFocus() settings_fetcher = db_settings.SettingsFetcher() self.existing_logins = settings_fetcher.existing_logins() list_widget = QtWidgets.QListWidget() list_widget.addItems(sorted(self.existing_logins)) self.add_advanced_widget(list_widget) self.set_advanced_but_text(_("view existing users")) def _check_enable(self, *args): input_ = self.username if input_ in self.existing_logins: QtWidgets.QMessageBox.warning( self, _("error"), _("Initials/nickname must be unique")) self.enableApply(False) else: self.enableApply(input_ != "") @property def username(self): return str(self.line_edit.text()) def apply(self): if db_settings.insert_login(self.username): localsettings.initiateUsers() return True def exec_(self): if ExtendableDialog.exec_(self): return self.apply() return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/address_match_dialog.py0000644000175000017500000001241512710144046027042 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.dbtools import families HEADERS = ['score', 'serialno', _('Title'), _('Forename'), _('Surname'), _('dob'), _('Address1'), _('Address2'), _('Address3'), _('Town'), _('POSTCODE')] class AddressMatchDialog(BaseDialog): def __init__(self, om_gui): BaseDialog.__init__(self, om_gui, remove_stretch=True) self.om_gui = om_gui title = _("Address Matches") self.setWindowTitle(title) self.table_widget = QtWidgets.QTableWidget() self.table_widget.setSelectionBehavior( QtWidgets.QAbstractItemView.SelectRows) self.table_widget.setAlternatingRowColors(True) self.table_widget.setSortingEnabled(True) if self.om_gui.pt.serialno == 0: self.address = localsettings.LAST_ADDRESS[1:] else: self.address = (self.om_gui.pt.addr1, self.om_gui.pt.addr2, self.om_gui.pt.addr3, self.om_gui.pt.town, self.om_gui.pt.county, self.om_gui.pt.pcde,) addr = "%s, %s, %s, %s, %s, %s" % ( self.address[0], self.address[1], self.address[2], self.address[3], self.address[4], self.address[5], ) while re.search(", *,", addr): addr = re.sub(", *,", ", ", addr) message = "%s
    %s" % ( _("Top 12 address matches for"), addr) label = QtWidgets.QLabel() label.setText(message) self.insertWidget(label) self.insertWidget(self.table_widget) self.load_values() self.table_widget.itemSelectionChanged.connect(self.enableApply) def sizeHint(self): return QtCore.QSize(1000, 600) def load_values(self): rows = families.get_address_matches(self.address) self.table_widget.clear() self.table_widget.setSortingEnabled(False) self.table_widget.setRowCount(len(rows)) self.table_widget.setColumnCount(len(HEADERS)) self.table_widget.setHorizontalHeaderLabels(HEADERS) self.table_widget.horizontalHeader().setStretchLastSection(True) for row, result in enumerate(rows): for col, field in enumerate(result): if field is None: continue if col == 5: item = QtWidgets.QTableWidgetItem( localsettings.formatDate(field)) elif col == 0: # match item = QtWidgets.QTableWidgetItem("%04d" % field) elif col == 1: # serialno item = QtWidgets.QTableWidgetItem("%d" % field) else: item = QtWidgets.QTableWidgetItem(field) self.table_widget.setItem(row, col, item) self.table_widget.resizeColumnsToContents() # hide match and serialno column self.table_widget.setColumnWidth(0, 0) self.table_widget.setColumnWidth(1, 0) self.table_widget.setSortingEnabled(True) self.table_widget.sortItems(0, QtCore.Qt.DescendingOrder) @property def selected_patients(self): ''' selected patients (list of serialnos) ''' patients = [] rows = set() for index in self.table_widget.selectedIndexes(): rows.add(index.row()) for row in rows: patients.append(int(self.table_widget.item(row, 1).text())) return patients openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/advanced_names_dialog.py0000644000175000017500000002317513014630400027166 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re from PyQt5 import QtCore from PyQt5 import QtWidgets from PyQt5 import QtWebKitWidgets from openmolar.connect import connect from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.customwidgets.upper_case_line_edit \ import UpperCaseLineEdit from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") PSEUDONYMS_QUERY = '''SELECT ix, alt_fname, alt_sname, comment, search_include FROM pseudonyms WHERE serialno=%s''' INSERT_PSN_QUERY = '''INSERT INTO pseudonyms (serialno, alt_sname, comment) VALUES (%s, %s, 'previous surname')''' INSERT_ALT_QUERY = '''INSERT INTO pseudonyms (serialno, alt_fname, alt_sname, comment) VALUES (%s, %s, %s, %s)''' UPDATE_ALT_QUERY = \ 'UPDATE pseudonyms SET alt_fname=%s, alt_sname=%s, comment=%s WHERE ix=%s' DELETE_QUERY = 'DELETE FROM pseudonyms WHERE ix=%s' HTML = '''

    %%s %%s

    %s

    • %%s

    %s

    • %%s
    ''' % (_("Previous Surname(s)"), _("Alternative Name(s)")) LINK = ''' %s %s %s%s''' class AltNameEntryDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Alternative Name Dialog")) self.label = WarningLabel(_("Please enter an alternate name")) self.fname_le = UpperCaseLineEdit() self.sname_le = UpperCaseLineEdit() self.comment_le = QtWidgets.QLineEdit() self.comment_le.setText(_("Alternative Name")) frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Alternative First Name"), self.fname_le) layout.addRow(_("Alternative Surname"), self.sname_le) layout.addRow(_("Reason"), self.comment_le) self.insertWidget(self.label) self.insertWidget(frame) for le in (self.fname_le, self.sname_le, self.comment_le): le.textChanged.connect(self._enable) def _enable(self, text): self.enableApply(True) class Pseudonym(object): def __init__(self, ix, fname, sname, comment, search_include): self.ix = ix self.fname = fname if fname else "" self.sname = sname if sname else "" self.comment = comment self.search_include = search_include def html(self): comment = "" if self.comment == "previous surname" else \ "
    (%s)" % self.comment inc = "
    %s" % _("NOT included in searches") \ if not self.search_include else "" return LINK % (self.fname, self.sname, self.ix, comment, inc) class AdvancedNamesDialog(BaseDialog): pt = None pseudonyms = [] def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Advanced Names Dialog")) label = WarningLabel(_("Previous Surnames, Nicknames, and alternate " "spelling can help when searching for patients")) self.browser = QtWebKitWidgets.QWebView(self) self.browser.linkClicked.connect(self.link_clicked) self.insertWidget(label) self.insertWidget(self.browser) self.cancel_but.hide() self.enableApply() def link_clicked(self, url): url_text = url.toString() if url_text == "add_psn": self.add_previous_surname() elif url_text == "add_alt": self.add_alt_name() else: m = re.match(r"edit_name_(\d+)", url_text) if m: ix = int(m.groups()[0]) self.edit_name(ix) def add_previous_surname(self, psn=""): LOGGER.info("add a surname") if psn == "": message = _("Please enter a previous surname") else: message = "%s '%s' %s" % (_("Save"), psn, _("as a previous surname?")) surname, result = \ QtWidgets.QInputDialog.getText(self, _("Input required"), message, QtWidgets.QLineEdit.Normal, psn) if result: LOGGER.info("adding %s as a previous surname", surname) db = connect() cursor = db.cursor() cursor.execute(INSERT_PSN_QUERY, (self.pt.serialno, surname.upper())) cursor.close() self.set_patient(self.pt) return True def add_alt_name(self): LOGGER.info("add an alternative name") dl = AltNameEntryDialog(self) if dl.exec_(): fname = dl.fname_le.text() sname = dl.sname_le.text() comment = dl.comment_le.text() db = connect() cursor = db.cursor() cursor.execute(INSERT_ALT_QUERY, (self.pt.serialno, None if not fname else fname, None if not sname else sname, comment)) cursor.close() self.set_patient(self.pt) def edit_name(self, ix): LOGGER.info("edit name %s", ix) for pseudonym in self.pseudonyms: if pseudonym.ix == ix: break dl = AltNameEntryDialog(self) dl.label.setText(_("Edit this name (or leave both name fields blank " "to delete a reference to this name)")) dl.fname_le.setText(pseudonym.fname) dl.sname_le.setText(pseudonym.sname) dl.comment_le.setText(pseudonym.comment) dl.enableApply(False) if dl.exec_(): fname = dl.fname_le.text() sname = dl.sname_le.text() comment = dl.comment_le.text() db = connect() cursor = db.cursor() if sname == "" and fname =="": cursor.execute(DELETE_QUERY, (ix,)) else: cursor.execute(UPDATE_QUERY, (None if not fname else fname, None if not sname else sname, comment, ix)) cursor.close() self.set_patient(self.pt) def set_patient(self, pt): ''' pass a patient object to set the serialnumber and name fields. ''' self.pt = pt db = connect() cursor = db.cursor() cursor.execute(PSEUDONYMS_QUERY, (pt.serialno,)) alts = [] for row in cursor.fetchall(): pseudonym = Pseudonym(*row) alts.append(pseudonym) self.pseudonyms = alts previous = '
  • '.join( [p.html() for p in alts if p.comment=="previous surname"] + ['%s' % _("Add New")]) alts = '
  • '.join( [p.html() for p in alts if p.comment!="previous surname"] + ['%s' % _("Add New")]) self.browser.setHtml(HTML % (self.fname, self.sname, previous, alts)) page = self.browser.page() page.setLinkDelegationPolicy(page.DelegateAllLinks) @property def sname(self): try: return self.pt.sname except AttributeError: pass @property def fname(self): try: return self.pt.fname except AttributeError: pass def check_save_previous_surname(self, surname): self.show() if self.add_previous_surname(surname): self.exec_() def sizeHint(self): return QtCore.QSize(400, 500) if __name__ == "__main__": from openmolar.dbtools import patient_class LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) pt_ = patient_class.patient(32809) dl = AdvancedNamesDialog() dl.set_patient(pt_) if dl.exec_(): LOGGER.info("changed advanced names for %s %s", dl.sname, dl.fname) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py0000644000175000017500000002441712774504105031553 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.compiled_uis import Ui_record_tools from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class AdvancedRecordManagementDialog(BaseDialog): def __init__(self, pt, parent): BaseDialog.__init__(self, parent, remove_stretch=True) self.pt = pt self.om_gui = parent widget = QtWidgets.QWidget(self) self.ui = Ui_record_tools.Ui_Form() self.ui.setupUi(widget) self.insertWidget(widget) self.ui.tabWidget.setCurrentIndex(0) self.initialMoney() self.initialDates() self.initialHidden_notes() self.signals() self.setMinimumSize(self.sizeHint()) self.DATE_ATTRIBUTES = ( self.pt.pd5, self.pt.pd6, self.pt.pd7, self.pt.pd8, self.pt.pd9, self.pt.pd10, self.pt.billdate) self.ui.money0_spinBox.setEnabled(False) self.ui.money1_spinBox.setEnabled(False) self.check_before_reject_if_dirty = True def sizeHint(self): return QtCore.QSize(600, 600) def initialMoney(self): ''' loads the money at startup ''' self.ui.total_label.setText( localsettings.formatMoney(self.pt.fees)) self.ui.money0_spinBox.setValue(self.pt.money0) self.ui.money1_spinBox.setValue(self.pt.money1) self.ui.money2_spinBox.setValue(self.pt.money2) self.ui.money3_spinBox.setValue(self.pt.money3) self.ui.money4_spinBox.setValue(self.pt.money4) self.ui.money5_spinBox.setValue(self.pt.money5) self.ui.money6_spinBox.setValue(self.pt.money6) self.ui.money7_spinBox.setValue(self.pt.money7) self.ui.money8_spinBox.setValue(self.pt.money8) self.ui.money9_spinBox.setValue(self.pt.money9) self.ui.money10_spinBox.setValue(self.pt.money10) self.ui.money11_spinBox.setValue(self.pt.money11) def updateMoneyTotal(self, arg=0): ''' updates the money label ''' fees = (self.ui.money0_spinBox.value() + self.ui.money1_spinBox.value() + self.ui.money9_spinBox.value() + self.ui.money10_spinBox.value() + self.ui.money11_spinBox.value() - self.ui.money2_spinBox.value() - self.ui.money3_spinBox.value() - self.ui.money8_spinBox.value() ) self.ui.total_label.setText(localsettings.formatMoney(fees)) self._check_enable() def changeMoney(self): ''' modify the money fields on a patient record ''' self.pt.money0 = self.ui.money0_spinBox.value() self.pt.money1 = self.ui.money1_spinBox.value() self.pt.money2 = self.ui.money2_spinBox.value() self.pt.money3 = self.ui.money3_spinBox.value() self.pt.money4 = self.ui.money4_spinBox.value() self.pt.money5 = self.ui.money5_spinBox.value() self.pt.money6 = self.ui.money6_spinBox.value() self.pt.money7 = self.ui.money7_spinBox.value() self.pt.money8 = self.ui.money8_spinBox.value() self.pt.money9 = self.ui.money9_spinBox.value() self.pt.money10 = self.ui.money10_spinBox.value() self.pt.money11 = self.ui.money11_spinBox.value() @property def has_money_changes(self): return ( self.pt.money0 != self.ui.money0_spinBox.value() or self.pt.money1 != self.ui.money1_spinBox.value() or self.pt.money2 != self.ui.money2_spinBox.value() or self.pt.money3 != self.ui.money3_spinBox.value() or self.pt.money4 != self.ui.money4_spinBox.value() or self.pt.money5 != self.ui.money5_spinBox.value() or self.pt.money6 != self.ui.money6_spinBox.value() or self.pt.money7 != self.ui.money7_spinBox.value() or self.pt.money8 != self.ui.money8_spinBox.value() or self.pt.money9 != self.ui.money9_spinBox.value() or self.pt.money10 != self.ui.money10_spinBox.value() or self.pt.money11 != self.ui.money11_spinBox.value() ) def initialDates(self): ''' modify Date fields ''' def initialise(date_, de, but): try: de.setDate(date_) but.hide() except TypeError: de.hide() but.clicked.connect(de.show) but.clicked.connect(but.hide) finally: but.clicked.connect(self._check_enable) de.dateChanged.connect(self._check_enable) initialise(self.pt.pd5, self.ui.pd5_dateEdit, self.ui.pd5_pushButton) initialise(self.pt.pd6, self.ui.pd6_dateEdit, self.ui.pd6_pushButton) initialise(self.pt.pd7, self.ui.pd7_dateEdit, self.ui.pd7_pushButton) initialise(self.pt.pd8, self.ui.pd8_dateEdit, self.ui.pd8_pushButton) initialise(self.pt.pd9, self.ui.pd9_dateEdit, self.ui.pd9_pushButton) initialise(self.pt.pd10, self.ui.pd10_dateEdit, self.ui.pd10_pushButton) initialise(self.pt.billdate, self.ui.billdate_dateEdit, self.ui.billdate_pushButton) @property def new_dates(self): for de in (self.ui.pd5_dateEdit, self.ui.pd6_dateEdit, self.ui.pd7_dateEdit, self.ui.pd8_dateEdit, self.ui.pd9_dateEdit, self.ui.pd10_dateEdit, self.ui.billdate_dateEdit ): yield de.date().toPyDate() if de.isVisible() else None def changeDates(self): ''' apply date changes ''' for i, date_ in enumerate(self.new_dates): if date_: self.DATE_ATTRIBUTES[i] = date_ self._check_enable() @property def has_date_changes(self): changed = False for i, date_ in enumerate(self.new_dates): if date_ and self.DATE_ATTRIBUTES[i] != date_: LOGGER.debug("user has changed date from %s to %s", self.DATE_ATTRIBUTES[i], date_) changed = True return changed def initialHidden_notes(self): ''' load the patients hidden notes ''' self.ui.hidden_notes_tableWidget.clear() self.ui.hidden_notes_tableWidget.setColumnCount(2) self.ui.hidden_notes_tableWidget.setRowCount( len(self.pt.HIDDENNOTES)) header = self.ui.hidden_notes_tableWidget.horizontalHeader() self.ui.hidden_notes_tableWidget.setHorizontalHeaderLabels( [_("type"), _("note")]) header.setStretchLastSection(True) for row_no, (ntype, note) in enumerate(self.pt.HIDDENNOTES): ntype_item = QtWidgets.QTableWidgetItem(ntype) self.ui.hidden_notes_tableWidget.setItem(row_no, 0, ntype_item) note_item = QtWidgets.QTableWidgetItem(note) self.ui.hidden_notes_tableWidget.setItem(row_no, 1, note_item) self.ui.hidden_notes_tableWidget.itemChanged.connect( self._check_enable) @property def new_hidden_notes(self): ''' apply new notes ''' HN = [] for row_no in range(self.ui.hidden_notes_tableWidget.rowCount()): ntype = self.ui.hidden_notes_tableWidget.item(row_no, 0).text() note = self.ui.hidden_notes_tableWidget.item(row_no, 1).text() HN.append((ntype, note)) return HN def changeHidden_notes(self): ''' apply new notes ''' self.pt.HIDDENNOTES = self.new_hidden_notes self._check_enable() @property def has_hidden_note_changes(self): return self.new_hidden_notes != self.pt.HIDDENNOTES def signals(self): ''' connect signals ''' for widg in self.ui.money_scrollAreaWidgetContents.children(): if isinstance(widg, QtWidgets.QSpinBox): widg.valueChanged.connect(self.updateMoneyTotal) def reject(self): self.dirty = self.has_changes BaseDialog.reject(self) @property def has_changes(self): LOGGER.debug("checking for changes") return (self.has_money_changes or self.has_date_changes or self.has_hidden_note_changes) def _check_enable(self): self.enableApply(self.has_changes) def apply(self): LOGGER.warning("advanced record management dialog applying changes") self.changeMoney() self.changeDates() self.changeHidden_notes() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py0000644000175000017500000002640612710144046030414 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import re from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.dbtools.treatment_course import CURRTRT_ROOT_ATTS from openmolar.qt4gui.customwidgets.upper_case_line_edit \ import UpperCaseLineEdit from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog class TxDisplayWidget(QtWidgets.QWidget): text_edited = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.pl_lineedit = UpperCaseLineEdit() self.cmp_lineedit = UpperCaseLineEdit() icon = QtGui.QIcon(":forward.png") but = QtWidgets.QPushButton() but.setIcon(icon) but.setMaximumWidth(30) but.clicked.connect(self._complete_treatments) layout = QtWidgets.QHBoxLayout(self) layout.setSpacing(1) layout.addWidget(self.pl_lineedit) layout.addWidget(but) layout.addWidget(self.cmp_lineedit) def set_plan_text(self, text): self._initial_pl_text = text self.pl_lineedit.setText(text) self.pl_lineedit.textChanged.connect(self.text_edited.emit) def set_completed_text(self, text): self._initial_cmp_text = text self.cmp_lineedit.setText(text) self.cmp_lineedit.textChanged.connect(self.text_edited.emit) def _complete_treatments(self): self.cmp_lineedit.setText("%s %s" % (self.cmp_text, self.plan_text)) self.pl_lineedit.setText("") @property def plan_text(self): txt = str(self.pl_lineedit.text()) # denture codes are dumb! return re.sub("SR\ ", "SR_", txt) @property def cmp_text(self): txt = str(self.cmp_lineedit.text()) # denture codes are dumb! return re.sub("SR\ ", "SR_", txt) @property def plan_edited(self): return self.plan_text != self._initial_pl_text @property def cmp_edited(self): return self.cmp_text != self._initial_cmp_text @property def has_been_edited(self): return not (self.plan_edited or self.cmp_edited) class AdvancedTxPlanningDialog(ExtendableDialog): SHOW_CHART_ITEMS = False def __init__(self, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Advanced Treatment Planning")) self.om_gui = parent self.pt = self.om_gui.pt self.widgets = {} frame = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(frame) form_layout.setSpacing(0) plan_header_label = QtWidgets.QLabel(_("Planned Text")) plan_header_label.setAlignment(QtCore.Qt.AlignCenter) cmp_header_label = QtWidgets.QLabel(_("Completed Text")) cmp_header_label.setAlignment(QtCore.Qt.AlignCenter) layout = QtWidgets.QHBoxLayout() layout.addWidget(plan_header_label) layout.addWidget(cmp_header_label) form_layout.addRow(_("Field"), layout) tooth_atts = [] for att in CURRTRT_ROOT_ATTS: if re.match("[ul][lr][1-8]", att): tooth_atts.append(att) else: widg = TxDisplayWidget() self.widgets[att] = widg form_layout.addRow(att, widg) chart_frame = QtWidgets.QFrame() form_layout2 = QtWidgets.QFormLayout(chart_frame) form_layout2.setSpacing(0) plan_header_label = QtWidgets.QLabel(_("Planned Text")) plan_header_label.setAlignment(QtCore.Qt.AlignCenter) cmp_header_label = QtWidgets.QLabel(_("Completed Text")) cmp_header_label.setAlignment(QtCore.Qt.AlignCenter) layout = QtWidgets.QHBoxLayout() layout.addWidget(plan_header_label) layout.addWidget(cmp_header_label) form_layout2.addRow(_("Field"), layout) for att in tooth_atts: widg = TxDisplayWidget() self.widgets[att] = widg form_layout2.addRow(att, widg) left_scroll_area = QtWidgets.QScrollArea() left_scroll_area.setWidget(frame) left_scroll_area.setWidgetResizable(True) self.chart_scroll_area = QtWidgets.QScrollArea() self.chart_scroll_area.setWidget(chart_frame) self.chart_scroll_area.setWidgetResizable(True) upper_frame = QtWidgets.QFrame() layout = QtWidgets.QHBoxLayout(upper_frame) layout.addWidget(left_scroll_area) layout.addWidget(self.chart_scroll_area) self.insertWidget(upper_frame) self.deleted_plan_items = [] self.new_cmp_items = [] self.deleted_cmp_items = [] self.new_plan_items = [] self.load_values() self.chart_but = QtWidgets.QPushButton(_("Show Chart Items")) self.chart_but.clicked.connect(self._show_chart) self.add_advanced_widget(self.chart_but) self.chart_scroll_area.setVisible(self.SHOW_CHART_ITEMS) def load_values(self): if self.pt is None: return for att in CURRTRT_ROOT_ATTS: pl = self.pt.treatment_course.__dict__["%spl" % att] cmp = self.pt.treatment_course.__dict__["%scmp" % att] widg = self.widgets[att] widg.set_plan_text(pl) widg.set_completed_text(cmp) widg.text_edited.connect(self.check_appliable) def _show_chart(self): self.SHOW_CHART_ITEMS = not self.SHOW_CHART_ITEMS self.chart_scroll_area.setVisible(self.SHOW_CHART_ITEMS) self.show_extension(False) self.resize(self.sizeHint()) if self.SHOW_CHART_ITEMS: self.chart_but.setText(_("Hide Chart Items")) else: self.chart_but.setText(_("Show Chart Items")) def check_appliable(self): for widg in list(self.widgets.values()): if widg.has_been_edited: self.enableApply() return self.enableApply(False) def sizeHint(self): if self.SHOW_CHART_ITEMS: return QtCore.QSize(800, 600) return QtCore.QSize(500, 500) @property def _new_plan_items(self): for att in CURRTRT_ROOT_ATTS: att_widg = self.widgets[att] if att_widg.plan_edited: exist_items = \ self.pt.treatment_course.__dict__["%spl" % att].split(" ") new_list = att_widg.plan_text.split(" ") for item in set(new_list): if item == "": continue n_adds = new_list.count(item) - exist_items.count(item) for i in range(n_adds): yield att, item @property def _new_cmp_items(self): for att in CURRTRT_ROOT_ATTS: att_widg = self.widgets[att] if att_widg.cmp_edited: exist_items = \ self.pt.treatment_course.__dict__["%scmp" % att].split(" ") new_list = att_widg.cmp_text.split(" ") for item in set(new_list): if item == "": continue n_adds = new_list.count(item) - exist_items.count(item) for i in range(n_adds): yield att, item @property def _deleted_plan_items(self): for att in CURRTRT_ROOT_ATTS: att_widg = self.widgets[att] if att_widg.plan_edited: new_items = att_widg.plan_text.split(" ") exist_items = \ self.pt.treatment_course.__dict__["%spl" % att].split(" ") for item in set(exist_items): if item == "": continue n_adds = exist_items.count(item) - new_items.count(item) for i in range(n_adds): yield att, item @property def _deleted_cmp_items(self): for att in CURRTRT_ROOT_ATTS: att_widg = self.widgets[att] if att_widg.cmp_edited: new_items = att_widg.cmp_text.split(" ") exist_items = \ self.pt.treatment_course.__dict__["%scmp" % att].split(" ") for item in set(exist_items): if item == "": continue n_adds = exist_items.count(item) - new_items.count(item) for i in range(n_adds): yield att, item @property def completed_items(self): planned = list(self._deleted_plan_items) for item in self._new_cmp_items: if item in planned: yield item @property def reversed_items(self): completed = list(self._deleted_cmp_items) for item in self._new_plan_items: if item in completed: yield item def exec_(self): if ExtendableDialog.exec_(self): self.deleted_plan_items = list(self._deleted_plan_items) self.new_cmp_items = list(self._new_cmp_items) for item in self.completed_items: try: self.deleted_plan_items.remove(item) except ValueError: pass try: self.new_cmp_items.remove(item) except ValueError: pass self.deleted_cmp_items = list(self._deleted_cmp_items) self.new_plan_items = list(self._new_plan_items) for item in self.reversed_items: try: self.deleted_cmp_items.remove(item) except ValueError: pass try: self.new_plan_items.remove(item) except ValueError: pass return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/alterAday.py0000644000175000017500000002137612710144046024636 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_activeDentStartFinish from openmolar.qt4gui.compiled_uis import Ui_aslotEdit from openmolar.qt4gui.customwidgets import fiveminutetimeedit from openmolar.settings import localsettings from openmolar.dbtools import appointments class adayData(object): ''' a custom data structure to store data ''' def __init__(self, dent): self.apptix = localsettings.apptix.get(dent) self.dent = dent self.active = False self.start = QtCore.QTime(8, 30) self.finish = QtCore.QTime(18, 0) self.memo = "" def setStart(self, arg): ''' takes a time in form 800 (==8:00) ''' self.start = QtCore.QTime(arg / 100, arg % 100) def setFinish(self, arg): ''' takes a time in form 800 (==8:00) ''' self.finish = QtCore.QTime(arg / 100, arg % 100) def sqlStart(self): ''' returns an int ''' return int(self.start.toString("hmm")) def sqlFinish(self): ''' returns an int ''' return int(self.finish.toString("hmm")) def setMemo(self, arg): if arg is not None: self.memo = arg def __repr__(self): return"%s %s %s %s %s %s" % ( self.apptix, self.dent, self.active, self.start, self.finish, self.memo) def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): return (self.active == other.active and self.start == other.start and self.finish == other.finish and self.memo == other.memo) class dentWidget(Ui_activeDentStartFinish.Ui_Form): ''' a custom widget collection to get user input ''' def __init__(self, widget): self.setupUi(widget) self.checkBox.stateChanged.connect(self.toggle) self.addTimeEdits() def addTimeEdits(self): self.start_timeEdit = \ fiveminutetimeedit.FiveMinuteTimeEdit(self.widget) l = QtWidgets.QVBoxLayout(self.widget) l.addWidget(self.start_timeEdit) self.finish_timeEdit = \ fiveminutetimeedit.FiveMinuteTimeEdit(self.widget_2) l = QtWidgets.QVBoxLayout(self.widget_2) l.addWidget(self.finish_timeEdit) self.start_timeEdit.setMinimumTime(localsettings.earliestStart) self.finish_timeEdit.setMaximumTime(localsettings.latestFinish) def toggle(self, arg): self.start_timeEdit.setEnabled(arg) self.finish_timeEdit.setEnabled(arg) def setData(self, arg): ''' set the data with an instance of adayData ''' self.dent = arg.dent self.checkBox.setText(arg.dent) self.checkBox.setChecked(arg.active) self.start_timeEdit.setEnabled(arg.active) self.finish_timeEdit.setEnabled(arg.active) self.start_timeEdit.setTime(arg.start) self.finish_timeEdit.setTime(arg.finish) self.lineEdit.setText(arg.memo) class alterDayDialog(Ui_aslotEdit.Ui_Dialog, QtWidgets.QDialog): ''' a custom dialog to enter the start dates, end dates and availability of a clinician ''' def __init__(self, diary_widget, date): # date passed in is a QDate QtWidgets.QDialog.__init__(self, diary_widget) self.diary_widget = diary_widget self.setupUi(self) self.data_list = [] self.date = date self.setWindowTitle("%s - %s" % (_("Clinician Times"), date.toString())) self.loadData() self.showItems() self.copy_pushButton.clicked.connect(self.copy_to_clipboard) self.pastebutton_orig_text = self.paste_pushButton.text() if diary_widget.alterAday_clipboard_date: self.setPasteButtonText() else: self.paste_pushButton.setEnabled(False) self.paste_pushButton.clicked.connect(self.paste) def setPasteButtonText(self): text = self.pastebutton_orig_text self.paste_pushButton.setText( "%s %s %s" % (text, _("values from"), self.diary_widget.alterAday_clipboard_date.toString() )) def copy_to_clipboard(self): self.diary_widget.alterAday_clipboard_date = self.date self.diary_widget.alterAday_clipboard = self.current_list self.paste_pushButton.setEnabled(True) self.setPasteButtonText() def paste(self): i = 0 for clinician in self.diary_widget.alterAday_clipboard: dw = self.dentWidgets[i] dw.checkBox.setChecked(clinician.active) dw.start_timeEdit.setTime(clinician.start) dw.finish_timeEdit.setTime(clinician.finish) dw.lineEdit.setText(clinician.memo) i += 1 def showItems(self): ''' load the dentWidgets into the gui ''' self.dentWidgets = [] vlayout = QtWidgets.QVBoxLayout(self.frame_2) vlayout.setSpacing(0) for clinician in self.data_list: iw = QtWidgets.QWidget() dw = dentWidget(iw) dw.setData(clinician) self.dentWidgets.append(dw) vlayout.addWidget(iw) vlayout.insertStretch(-1) def loadData(self): dentData = tuple(appointments.getWorkingDents(self.date.toPyDate())) for clinician in localsettings.activedents + localsettings.activehygs: startData = adayData(clinician) for dent in dentData: if dent.ix == startData.apptix: startData.setStart(dent.start) startData.setFinish(dent.end) startData.setMemo(dent.memo) startData.active = dent.flag self.data_list.append(startData) @property def current_list(self): retlist = [] for dw in self.dentWidgets: alteredClinician = adayData(dw.dent) alteredClinician.active = dw.checkBox.isChecked() alteredClinician.start = dw.start_timeEdit.time() alteredClinician.finish = dw.finish_timeEdit.time() alteredClinician.memo = str(dw.lineEdit.text()) retlist.append(alteredClinician) return retlist def checkForChanges(self): retarg = [] i = 0 # iterate through the initial values, and compare with the # inputted values # make a list of changes updated_vals = self.current_list for clinician in self.data_list: alteredClinician = updated_vals[i] if alteredClinician != clinician: retarg.append(alteredClinician) i += 1 return retarg def applyChanges(self, changes): d = self.date.toPyDate() changed = False for change in changes: changed = True appointments.updateAday(d, change) return changed def getInput(self): if self.exec_(): changes = self.checkForChanges() return self.applyChanges(changes) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py0000644000175000017500000001440612710144046027223 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.connect import connect from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.dialogs import permissions QUERY = '''select cbdate, ref, descr, code, dntid, amt from cashbook where id = %s''' UPDATE_QUERY = '''update cashbook set cbdate=%s, ref=%s, descr=%s, code=%s, dntid=%s, amt=%s where id = %s''' class AlterCashbookDialog(ExtendableDialog): def __init__(self, ix, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=False) self.ix = ix title = _("Alter Cashbook Entry") self.setWindowTitle(title) label = QtWidgets.QLabel("%s" % title) label.setAlignment(QtCore.Qt.AlignCenter) frame = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(frame) self.serialno_le = QtWidgets.QLineEdit() self.patient_le = QtWidgets.QLineEdit() self.date_edit = QtWidgets.QDateEdit() self.dentist_cb = QtWidgets.QComboBox() self.dentist_cb.addItems(localsettings.activedents) self.code_cb = QtWidgets.QComboBox() self.amount_sb = QtWidgets.QDoubleSpinBox() self.amount_sb.setRange(0, 10000) self.codestrings = list(localsettings.cashbookCodesDict.values()) self.code_cb.addItems(self.codestrings) form_layout.addRow(_("Patient Number"), self.serialno_le) form_layout.addRow(_("Patient Name"), self.patient_le) form_layout.addRow(_("Date"), self.date_edit) form_layout.addRow(_("Dentist"), self.dentist_cb) form_layout.addRow(_("Payment Type"), self.code_cb) form_layout.addRow(_("Amount"), self.amount_sb) self.serialno_le.setEnabled(False) self.patient_le.setEnabled(False) self.date_edit.setEnabled(False) self.dentist_cb.setEnabled(False) self.amount_sb.setEnabled(False) self.insertWidget(label) self.insertWidget(frame) self.load_values() adv_button = QtWidgets.QPushButton(_("Enable Full Edit")) self.add_advanced_widget(adv_button) adv_button.clicked.connect(self.enable_all) def enable_apply(self, *args): ExtendableDialog.enableApply(self, True) def enable_all(self): if permissions.granted(self): self.date_edit.setEnabled(True) self.dentist_cb.setEnabled(True) self.code_cb.setEnabled(True) self.amount_sb.setEnabled(True) self.patient_le.setEnabled(True) self.more_but.setChecked(False) self.show_extension(False) def check_enable(self): self.date_edit.dateChanged.connect(self.enable_apply) self.dentist_cb.currentIndexChanged.connect(self.enable_apply) self.code_cb.currentIndexChanged.connect(self.enable_apply) self.amount_sb.valueChanged.connect(self.enable_apply) self.code_cb.currentIndexChanged.connect(self.enable_apply) def load_values(self): db = connect() cursor = db.cursor() cursor.execute(QUERY, (self.ix,)) cbdate, ref, descr, code, dntid, amt = cursor.fetchone() cursor.close() self.serialno_le.setText(ref) self.patient_le.setText(descr) self.date_edit.setDate(cbdate) self.dentist_cb.setCurrentIndex(0) try: pos = localsettings.activedent_ixs.index(dntid) except ValueError: pos = -1 self.dentist_cb.setCurrentIndex(pos) code_str = localsettings.cashbookCodesDict.get(code) self.code_cb.setCurrentIndex(self.codestrings.index(code_str)) pounds = amt // 100 pence = amt % 100 double_val = float("%s.%02d" % (pounds, pence)) self.amount_sb.setValue(double_val) self.check_enable() def apply(self): date_ = self.date_edit.date().toPyDate() ref = str(self.serialno_le.text()) descr = str(self.patient_le.text()) for key, value in localsettings.cashbookCodesDict.items(): if self.code_cb.currentText() == value: code = key break dntid = localsettings.ops_reverse[str(self.dentist_cb.currentText())] currency = "%.02f" % self.amount_sb.value() amt = int(currency.replace(".", "")) values = (date_, ref, descr, code, dntid, amt, self.ix) db = connect() cursor = db.cursor() cursor.execute(UPDATE_QUERY, values) db.commit() def sizeHint(self): return QtCore.QSize(400, 450) def exec_(self): if ExtendableDialog.exec_(self): self.apply() return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/alter_denture_dialog.py0000644000175000017500000003544712710144046027110 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.upper_case_line_edit import \ UpperCaseLineEdit from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.customwidgets.simple_chartwidget import SimpleChartWidg LOGGER = logging.getLogger("openmolar") VALID_INPUTS = ( "A/T/.*[LR](\d)", "A/(\d+)C", "RL", "SL", "RE", "IMP", "", # this one in case of no input whatsoever! ) class _OptionPage(QtWidgets.QWidget): def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.dialog = parent self.label = QtWidgets.QLabel(_("Choose from the following options")) self.label.setWordWrap(True) self.frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(self) layout.addWidget(self.label) layout.addWidget(self.frame) layout.addStretch(100) def sizeHint(self): return QtCore.QSize(400, 400) @property def is_completed(self): ''' should be overwritten! ''' return True @property def error_message(self): ''' should be overwritten! ''' return _("You haven't completed this option") @property def return_text(self): return "" @property def next_index(self): return 1 def cleanup(self): pass class PageZero(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText(_("What are you Modifying?")) self.upper_radioButton = QtWidgets.QRadioButton( _("An existing Upper Denture")) self.lower_radioButton = QtWidgets.QRadioButton( _("An existing Lower Denture")) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.upper_radioButton) layout.addWidget(self.lower_radioButton) @property def is_completed(self): return (self.upper_radioButton.isChecked() or self.lower_radioButton.isChecked()) @property def return_text(self): return "" @property def chosen_arch(self): if self.upper_radioButton.isChecked(): return "upper" return "lower" class PageOne(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) options = ["Reline", "Soft Reline", "Repair", "Tooth Addition(s)", "Clasp Addition(s)"] layout = QtWidgets.QVBoxLayout(self.frame) self.rad_buts = [] for i, option in enumerate(options): rad_but = QtWidgets.QRadioButton(option) layout.addWidget(rad_but) self.rad_buts.append(rad_but) @property def is_completed(self): ''' simply check user has checked a box ''' for widg in self.rad_buts: if widg.isChecked(): return True return False @property def next_index(self): if self.rad_buts[3].isChecked(): return 2 if self.rad_buts[4].isChecked(): return 3 return 4 # ALL DONE! @property def return_text(self): if self.rad_buts[0].isChecked(): return "RL" if self.rad_buts[1].isChecked(): return "SL" if self.rad_buts[2].isChecked(): return "RE" if self.rad_buts[3].isChecked(): return "A/T/" if self.rad_buts[4].isChecked(): return "A/C" return "" class PageTwo(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText(_("What best describes the denture type?")) self.acrylic_radioButton = QtWidgets.QRadioButton(_("Acrylic Denture")) self.metal_radioButton = QtWidgets.QRadioButton(_("Metal Denture")) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.acrylic_radioButton) layout.addWidget(self.metal_radioButton) @property def is_completed(self): return (self.acrylic_radioButton.isChecked() or self.metal_radioButton.isChecked()) def cleanup(self): text = self.dialog.default_lineedit.text() if self.acrylic_radioButton.isChecked(): text = "%s%s" % ("SR_", text) if self.metal_radioButton.isChecked(): text = "%s%s" % ("CC_", text) self.dialog.default_lineedit.setText(text) @property def return_text(self): return "" class PageThree(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.dl = parent self.label.setText(_( "Please select teeth to be added to this denture")) self.chartwidg = SimpleChartWidg(self, auto_ctrl_key=True) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.chartwidg) def showEvent(self, event=None): if self.dl.is_upper_input: self.chartwidg.disable_lowers() else: self.chartwidg.disable_uppers() @property def is_completed(self): return self.return_text != "" @property def return_text(self): r_teeth, l_teeth = set([]), set([]) for tooth in self.chartwidg.getSelected(): m = re.match("[ul]([lr])(\d)", tooth) if m: if m.groups()[0] == "r": r_teeth.add(m.groups()[1]) else: l_teeth.add(m.groups()[1]) retval = "" if r_teeth: retval += "R" for tooth in sorted(r_teeth, reverse=True): retval += tooth if l_teeth: if retval != "": retval += "," retval += "L" for tooth in sorted(l_teeth): retval += tooth return retval @property def next_index(self): return 2 class PageFour(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText(_("How Many Clasps?")) self.clasp_input = QtWidgets.QSpinBox() layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.clasp_input) @property def is_completed(self): ''' simply check user has checked a box ''' return self.clasp_input.value() > 0 def cleanup(self): n_clasps = self.clasp_input.value() if n_clasps > 1: text = str(self.dialog.default_lineedit.text()) text = text.replace("A/C", "A/%dC" % n_clasps) self.dialog.default_lineedit.setText(text) @property def return_text(self): return "" class PageFive(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText( _("Does this work require the taking of an impression?")) self.yes_radioButton = QtWidgets.QRadioButton(_("Yes")) self.no_radioButton = QtWidgets.QRadioButton(_("No")) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.yes_radioButton) layout.addWidget(self.no_radioButton) @property def is_completed(self): return (self.yes_radioButton.isChecked() or self.no_radioButton.isChecked()) @property def _additional_text(self): text_ = "" if self.yes_radioButton.isChecked(): text_ += " IMP" return text_ @property def return_text(self): if self.dialog.odu_le.text() != "": return self._additional_text return "" class AcceptPage(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText("%s
    %s" % ( _("You have completed your input."), _("Please click on Apply"))) self.frame.hide() class AlterDentureDialog(ExtendableDialog): def __init__(self, om_gui=None): ExtendableDialog.__init__(self, om_gui) self.om_gui = om_gui message = (_("Alterations to an existing Denture")) self.setWindowTitle(message) self.header_label = QtWidgets.QLabel(message) self.header_label.setAlignment(QtCore.Qt.AlignCenter) self.odu_le = UpperCaseLineEdit() self.odl_le = UpperCaseLineEdit() self.set_default_lineedit(self.odl_le) self.wizard_widget = QtWidgets.QStackedWidget() page0 = PageZero(self) page1 = PageOne(self) page2 = PageTwo(self) page3 = PageThree(self) page4 = PageFour(self) page5 = PageFive(self) accept_page = AcceptPage(self) self.wizard_widget.addWidget(page0) self.wizard_widget.addWidget(page1) self.wizard_widget.addWidget(page2) self.wizard_widget.addWidget(page3) self.wizard_widget.addWidget(page4) self.wizard_widget.addWidget(page5) self.wizard_widget.addWidget(accept_page) self.insertWidget(self.header_label) self.insertWidget(self.wizard_widget) frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Upper Denture"), self.odu_le) layout.addRow(_("Lower Denture"), self.odl_le) self.add_advanced_widget(frame) self.next_but = self.button_box.addButton( _("Next"), self.button_box.ActionRole) self.apply_but.hide() self.odu_le.textChanged.connect(self.enable_apply) self.odl_le.textChanged.connect(self.enable_apply) self.odu_le.editingFinished.connect(self.advanced_apply) self.odl_le.editingFinished.connect(self.advanced_apply) @property def current_index(self): return self.wizard_widget.currentIndex() @property def current_page(self): return self.wizard_widget.widget(self.current_index) def next_widget(self): if not self.current_page.is_completed: QtWidgets.QMessageBox.information(self, _("Whoops"), self.current_page.error_message) return if self.current_index == 0: self.set_default_lineedit(self.current_page.chosen_arch) le = self.default_lineedit le.setText(le.text() + self.current_page.return_text) self.current_page.cleanup() index_ = self.current_index + self.current_page.next_index if index_ >= self.wizard_widget.count() - 1: index_ = self.wizard_widget.count() self.apply_but.show() self.next_but.hide() self.wizard_widget.setCurrentIndex(index_) @property def is_upper_input(self): return self.default_lineedit == self.odu_le @property def default_lineedit(self): return self._default_lineedit def set_default_lineedit(self, value="upper"): if value == "upper": self._default_lineedit = self.odu_le else: self._default_lineedit = self.odl_le def _clicked(self, but): ''' "private" function called when button box is clicked ''' role = self.button_box.buttonRole(but) if role == self.button_box.ActionRole: self.next_widget() else: ExtendableDialog._clicked(self, but) @property def check_valid_input(self): odus, odls = self.upper_input, self.lower_input for odu in odus.split(" "): matched = False for input_ in VALID_INPUTS: if re.match(input_, odu): matched = True break if not matched: LOGGER.debug("failed to match %s %s" % (input_, odu)) QtWidgets.QMessageBox.warning( self, _("Warning"), _("Your upper denture input is invalid")) return False for odl in odls.split(" "): matched = False for input_ in VALID_INPUTS: if re.match(input_, odl): matched = True break if not matched: LOGGER.debug("failed to match %s %s" % (input_, odu)) QtWidgets.QMessageBox.warning( self, _("Warning"), _("Your lower denture input is invalid")) return False return True def enable_apply(self, *args): self.enableApply(self.upper_input != "" or self.lower_input != "") def advanced_apply(self, *args): self.apply_but.show() self.enableApply(self.upper_input != "" or self.lower_input != "") @property def upper_input(self): return str(self.odu_le.text()).strip(" ") @property def lower_input(self): return str(self.odl_le.text()).strip(" ") @property def chosen_treatments(self): for input_ in self.upper_input.split(" "): if input_ != "": yield ("odu", input_) for input_ in self.lower_input.split(" "): if input_ != "": yield ("odl", input_) def exec_(self): result = ExtendableDialog.exec_(self) if result: result = self.check_valid_input or self.exec_() return result openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/alter_todays_notes.py0000644000175000017500000001401712710144046026624 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.phrasebook.phrasebook_dialog import PhraseBookDialog from openmolar import connect from openmolar.dbtools import patient_write_changes from openmolar.dbtools import db_patients QUERY = '''select ix, note from formatted_notes where serialno = %s and ndate=DATE(NOW()) and ntype ="newNOTE" and op1 = %s and op2 = %s order by ix''' UPDATE_QUERY = 'update formatted_notes set note=%s where ix=%s' LOGGER = logging.getLogger("openmolar") class AlterTodaysNotesDialog(BaseDialog): result = "" patient_loaded = True def __init__(self, sno, parent): BaseDialog.__init__(self, parent) self.sno = sno self.notes = [] self.main_ui = parent QtCore.QTimer.singleShot(0, self.get_todays_notes) self.text_edit = QtWidgets.QTextEdit(self) self.patient_label = QtWidgets.QLabel("searching for patient...") phrasebook_button = QtWidgets.QPushButton(_("Open Phrasebook")) phrasebook_button.clicked.connect(self.show_phrasebook) self.insertWidget(self.patient_label) self.insertWidget(self.text_edit) self.insertWidget(phrasebook_button) # self.text_edit.setLineWrapMode(self.text_edit.FixedColumnWidth) # self.text_edit.setLineWrapColumnOrWidth(80) QtCore.QTimer.singleShot(0, self.get_patient_name) def sizeHint(self): return QtCore.QSize(800, 200) def get_patient_name(self): try: self.patient_label.setText(db_patients.name(self.sno)) except localsettings.PatientNotFoundError as exc: QtWidgets.QMessageBox.warning(self, "Error", exc.message) def show_phrasebook(self): dl = PhraseBookDialog(self) if dl.exec_(): note = "\n".join(dl.selectedPhrases) current = self.text_edit.toPlainText() pos = self.text_edit.textCursor().position() before = current[:pos] after = current[pos:] new_notes = "\n".join([s for s in (before.strip("\n"), note.strip("\n"), after.strip("\n")) if s]) self.text_edit.setText(new_notes) def get_todays_notes(self): try: op1, op2 = localsettings.operator.split("/") query = QUERY except ValueError: op1 = localsettings.operator op2 = None query = QUERY.replace("op2 =", "op2 is") db = connect.connect() cursor = db.cursor() count = cursor.execute(query, (self.sno, op1, op2)) rows = cursor.fetchall() cursor.close() if self.patient_loaded and not count: mb = QtWidgets.QMessageBox(self) mb.setWindowTitle(_("message")) mb.setText(_("No notes found for today!")) self.rejected.connect(mb.accept) # useful for Unittest mb.exec_() self.signals() return text = "" for ix, note in rows: self.notes.append((ix, note)) if note.endswith("\n"): text += note else: text += "%s " % note.rstrip(" ") LOGGER.debug("'%s'", text) self.text_edit.setText(text.strip("\n ")) self.signals() def signals(self): self.text_edit.textChanged.connect(self.item_edited) def item_edited(self): self.enableApply() def apply_changed(self): notes = str(self.text_edit.toPlainText()).rstrip(" \n") short_lines = list(patient_write_changes.note_splitter(notes, "\n")) LOGGER.debug(short_lines) values = [] i = 0 for ix, note in self.notes: try: values.append((short_lines[i], ix)) except IndexError: # a line has been deleted. values.append(("", ix)) i += 1 db = connect.connect() cursor = db.cursor() cursor.executemany(UPDATE_QUERY, values) cursor.close() if len(short_lines) > i: patient_write_changes.toNotes( self.sno, [("newNOTE", line) for line in short_lines[i:]] ) def exec_(self): if BaseDialog.exec_(self): self.apply_changed() return True openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/appointment_card_dialog.py0000644000175000017500000001025612710156461027575 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.dbtools import appointments from openmolar.qt4gui.printing import apptcardPrint class AppointmentCardDialog(BaseDialog): def __init__(self, patient, parent=None): BaseDialog.__init__(self, parent) self.pt = patient patient_label = QtWidgets.QLabel( "%s
    %s" % (_("Appointment Card for"), patient.name_id)) patient_label.setAlignment(QtCore.Qt.AlignCenter) self.appointments_label = QtWidgets.QLabel() self.check_box = QtWidgets.QCheckBox(_("Include Today's appointments?")) self.check_box.setChecked(True) icon = QtGui.QIcon(":/ps.png") self.apply_but.setText(_("Print")) self.apply_but.setIcon(icon) self.insertWidget(patient_label) self.insertWidget(self.appointments_label) self.layout().insertStretch(2) self.insertWidget(self.check_box) self.check_box.toggled.connect(self.today_check_box_toggled) QtCore.QTimer.singleShot(100, self.get_data) def sizeHint(self): return QtCore.QSize(260, 300) def set_label_text(self): html = "
      " for appt in self.appts: html += "
    • %s
    • " % appt.html html += "
    " self.appointments_label.setText(html) def get_data(self): ''' poll the database for appointment data ''' self.appts = appointments.get_pts_appts(self.pt, True) self.set_label_text() if self.appts == []: mb = QtWidgets.QMessageBox(self) mb.setWindowTitle(_("message")) mb.setText(_("No appointments to print!")) self.rejected.connect(mb.accept) # useful for Unittest mb.exec_() self.reject() print_today_issue = False for appt in self.appts: print_today_issue = print_today_issue or appt.today self.check_box.setVisible(print_today_issue) self.enableApply() def today_check_box_toggled(self, checked): if not checked: for appt in self.appts[:]: if appt.today: self.appts.remove(appt) self.set_label_text() else: self.enableApply(False) self.get_data() def accept(self): card = apptcardPrint.Card(self) card.setProps(self.pt, self.appts) card.print_() self.pt.addHiddenNote("printed", "appt card") BaseDialog.accept(self) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py0000644000175000017500000002344312710144046031706 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.customwidgets.fiveminutetimeedit \ import FiveMinuteTimeEdit from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.settings import localsettings from openmolar.dbtools import appointments class InsertBlocksDialog(BaseDialog): REASONS = [_("Lunch"), _("Emergency"), _("Staff Meeting"), ("Other")] CHOSEN_REASON = 0 CLINICIAN_DICT = {} DAY_DICT = {} START_DATE = None END_DATE = None TIME = None DURATION = None def __init__(self, parent=None): BaseDialog.__init__(self, parent) label = WarningLabel(_("Insert a number of blocks to various books")) clinicians_groupbox = QtWidgets.QGroupBox(self) clinicians_groupbox.setTitle(_("Clinicians")) layout = QtWidgets.QHBoxLayout(clinicians_groupbox) for initials in localsettings.activedents + localsettings.activehygs: cb = QtWidgets.QCheckBox(initials) layout.addWidget(cb) try: cb.setChecked(self.CLINICIAN_DICT[initials]) except KeyError: self.CLINICIAN_DICT[initials] = False cb.toggled.connect(partial(self.update_clinician_dict, initials)) days_groupbox = QtWidgets.QGroupBox(self) days_groupbox.setTitle(_("Days to Apply")) g_layout = QtWidgets.QGridLayout(days_groupbox) for day in range(7): cb = QtWidgets.QCheckBox(localsettings.DAYNAMES[day]) row = 0 if day < 4 else 1 g_layout.addWidget(cb, row, day % 4) try: cb.setChecked(self.DAY_DICT[day]) except KeyError: self.DAY_DICT[day] = False cb.toggled.connect(partial(self.update_day_dict, day)) if self.START_DATE is None: self.START_DATE = QtCore.QDate.currentDate() self.start_dateedit = QtWidgets.QDateEdit() self.start_dateedit.setDate(self.START_DATE) self.start_dateedit.setCalendarPopup(True) self.start_dateedit.dateChanged.connect(self.new_start_date) if self.END_DATE is None: self.END_DATE = localsettings.BOOKEND self.end_dateedit = QtWidgets.QDateEdit() self.end_dateedit.setCalendarPopup(True) self.end_dateedit.setDate(self.END_DATE) self.end_dateedit.dateChanged.connect(self.new_end_date) if self.TIME is None: self.TIME = QtCore.QTime(13, 0, 0) self.time_edit = FiveMinuteTimeEdit() self.time_edit.setTime(self.TIME) self.time_edit.time_changed_signal.connect(self.new_time) self.duration_spinbox = QtWidgets.QSpinBox() self.duration_spinbox.setMaximum(300) self.duration_spinbox.setSingleStep(5) self.duration_spinbox.setSuffix(" " + _("Minutes")) self.duration_spinbox.setValue(60) self.combo_box = QtWidgets.QComboBox() frame = QtWidgets.QFrame() flayout = QtWidgets.QFormLayout(frame) flayout.addRow(_("Start Date"), self.start_dateedit) flayout.addRow(_("End Date"), self.end_dateedit) flayout.addRow(_("What time does this recurr?"), self.time_edit) flayout.addRow(_("Duration"), self.duration_spinbox) flayout.addRow(_("What is this block for?"), self.combo_box) self.insertWidget(label) self.insertWidget(clinicians_groupbox) self.insertWidget(days_groupbox) self.insertWidget(frame) self.load_combo_box() self.enableApply(True) def load_combo_box(self, reload=False): if reload: self.combo_box.currentIndexChanged.disconnect(self.check_reason) self.combo_box.clear() self.combo_box.addItems(self.REASONS) self.combo_box.currentIndexChanged.connect(self.check_reason) self.combo_box.setCurrentIndex(self.CHOSEN_REASON) def update_clinician_dict(self, initials, bool_): self.CLINICIAN_DICT[initials] = bool_ def update_day_dict(self, day, bool_): self.DAY_DICT[day] = bool_ def check_reason(self, i): if self.combo_box.currentText() == _("Other"): reason, result = QtWidgets.QInputDialog.getText( self, _("reason"), _("Please enter the text to use for this block")) if not result: self.combo_box.setCurrentIndex(0) return self.REASONS.insert(i, reason) self.load_combo_box(True) self.combo_box.setCurrentIndex(i) else: InsertBlocksDialog.CHOSEN_REASON = i return def new_start_date(self, date_): InsertBlocksDialog.START_DATE = date_ def new_end_date(self, date_): InsertBlocksDialog.END_DATE = date_ def new_time(self, time_): InsertBlocksDialog.TIME = time_ @property def chosen_days(self): for day, checked in self.DAY_DICT.items(): if checked: yield day+1 @property def chosen_clinicians(self): for clinician, checked in self.CLINICIAN_DICT.items(): if checked: yield clinician @property def block_text(self): return str(self.combo_box.currentText()) @property def is_valid_input(self): valid = True warnings = [] if self.start_dateedit.date() > self.end_dateedit.date(): valid = False warnings.append(_("End Date is greater than Start Date")) if self.duration_spinbox.value() == 0: valid = False warnings.append(_("Block has zero duration")) if not list(self.chosen_days): valid = False warnings.append(_("You have no days selected")) if not list(self.chosen_clinicians): valid = False warnings.append(_("You have no clinicians (ie.books) selected")) return valid, warnings def apply(self): ''' user has entered a good sequence, so write it to the DB now ''' sdate = self.start_dateedit.date() fdate = self.end_dateedit.date() n_days = sdate.daysTo(fdate) start = localsettings.humanTimetoWystime( self.time_edit.time().toString("h:mm")) end = localsettings.minutesPastMidnighttoWystime( localsettings.minutesPastMidnight(start) + self.duration_spinbox.value()) p_dl = QtWidgets.QProgressDialog(self) p_dl.show() days = list(self.chosen_days) n_attempts, n_inserted = 0, 0 for clinician in self.chosen_clinicians: p_dl.raise_() p_dl.setLabelText("%s %s" % (_("applying changes for"), clinician)) dt = sdate while dt <= fdate: progress = int(100 * (n_days - dt.daysTo(fdate)) / n_days) p_dl.setValue(progress) if dt.dayOfWeek() in days: n_attempts += 1 n_inserted += appointments.make_appt( dt.toPyDate(), localsettings.apptix[clinician], start, end, self.block_text, 0, "", "", "", "", -128, 0, 0, 0) dt = dt.addDays(1) QtWidgets.QApplication.instance().processEvents() message = "%d/%d %s" % (n_inserted, n_attempts, _("Appointment(s) inserted")) if n_inserted != n_attempts: message += \ "
    %s" % _( "Some were rejected by the database as they clashed" " with existing appointments or blocks") QtWidgets.QMessageBox.information(self, _("Information"), message) def exec_(self): while BaseDialog.exec_(self): result, warnings = self.is_valid_input if result: self.accept() return True else: QtWidgets.QMessageBox.warning( self, _("Bad Input"), "
    • %s
    " % "
  • ".join(warnings)) self.reject() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py0000644000175000017500000001343212710144046027777 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.dbtools import appointments LOGGER = logging.getLogger("openmolar") class AppointmentsMemoDialog(ExtendableDialog): def __init__(self, date_, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.date = date_ label = WarningLabel( "%s %s" % (_("Edit Memos for"), localsettings.longDate(date_))) self.bank_hol_label = QtWidgets.QLabel("") font = self.font() font.setBold(True) font.setItalic(True) self.bank_hol_label.setFont(font) self.bank_hol_label.setAlignment(QtCore.Qt.AlignCenter) self.bank_hol_label.hide() self.global_lineedit = QtWidgets.QLineEdit() frame = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(frame) form_layout.addRow(_("Global Memo"), self.global_lineedit) frame2 = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(frame2) self.le_dict = {} for apptix in \ localsettings.activedent_ixs + localsettings.activehyg_ixs: le = QtWidgets.QLineEdit() form_layout.addRow(localsettings.apptix_reverse.get(apptix), le) self.le_dict[apptix] = le scroll_area = QtWidgets.QScrollArea() scroll_area.setWidget(frame2) scroll_area.setWidgetResizable(True) clinician_groupbox = QtWidgets.QGroupBox() clinician_groupbox.setTitle(_("Clinician Memos")) layout = QtWidgets.QVBoxLayout(clinician_groupbox) layout.addWidget(scroll_area) self.public_holiday_le = QtWidgets.QLineEdit() public_holiday_widget = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(public_holiday_widget) form_layout.addRow(_("Public Holiday Text"), self.public_holiday_le) self.add_advanced_widget(public_holiday_widget) self.set_advanced_but_text(_("Edit Public Holiday Text")) self.insertWidget(label) self.insertWidget(self.bank_hol_label) self.insertWidget(frame) self.insertWidget(clinician_groupbox) self.setMinimumSize(self.sizeHint()) self.check_before_reject_if_dirty = True QtCore.QTimer.singleShot(100, self.load_values) def sizeHint(self): return QtCore.QSize(400, 450) def load_values(self): self.orig_pub_holiday = appointments.getBankHol(self.date) self.bank_hol_label.setText(self.orig_pub_holiday) self.public_holiday_le.setText(self.orig_pub_holiday) self.bank_hol_label.setVisible(self.orig_pub_holiday != "") self.memo_dict = appointments.getMemos(self.date) for apptix, memo in self.memo_dict.items(): if apptix == 0: self.global_lineedit.setText(memo) continue try: self.le_dict[apptix].setText(memo) except KeyError: LOGGER.warning("couldn't display memo for apptix %s", apptix) self.enableApply(True) def reject(self): self.dirty = self._dirty ExtendableDialog.reject(self) @property def _dirty(self): return (self.public_holiday_text != self.orig_pub_holiday or list(self.changed_memos) != []) @property def public_holiday_text(self): return str(self.public_holiday_le.text()) @property def changed_memos(self): new_memo = str(self.global_lineedit.text()) if new_memo != self.memo_dict.get(0, ""): yield (0, new_memo) for apptix, le in self.le_dict.items(): memo = self.memo_dict.get(apptix, "") new_memo = str(le.text()) if new_memo != memo: yield (apptix, new_memo) def apply(self): if self.public_holiday_text != self.orig_pub_holiday: appointments.setPubHol(self.date, self.public_holiday_text) new_memos = list(self.changed_memos) if new_memos: appointments.setMemos(self.date, new_memos) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/appt_mode_dialog.py0000644000175000017500000000624312710144046026213 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog class ApptModeDialog(BaseDialog): VIEW_MODE = 0 SCHEDULING_MODE = 1 BLOCKING_MODE = 2 NOTES_MODE = 3 mode = VIEW_MODE def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("User choice")) label = WarningLabel(_("Set the Appointment Viewing Mode")) self.insertWidget(label) for mode, description, value in ( (_("Browsing"), "", self.VIEW_MODE), (_("Scheduling"), _("make appointments for a patient"), self.SCHEDULING_MODE), (_("Blocking"), _("block time periods. eg. lunch times etc."), self.BLOCKING_MODE), (_("Note Checking"), _("check notes for today's patients"), self.NOTES_MODE)): but = QtWidgets.QPushButton(mode) but.setToolTip(description) but.appt_mode = value but.clicked.connect(self.but_clicked) self.insertWidget(but) self.apply_but.hide() def sizeHint(self): return QtCore.QSize(300, 300) def but_clicked(self): self.mode = self.sender().appt_mode self.accept() if __name__ == "__main__": app = QtWidgets.QApplication([]) dl = ApptModeDialog() if dl.exec_(): print((dl.mode)) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py0000644000175000017500000002166012726011272026407 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog RECALL_METHODS = [_("post"), _("email"), _("sms")] class ShortcutButs(QtWidgets.QWidget): clicked = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) layout = QtWidgets.QHBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) for term in (1, 2, 3, 6, 9, 12): but = QtWidgets.QPushButton("%d" % term) but.setMaximumWidth(40) layout.addWidget(but) if term == 9: layout.addStretch() but.clicked.connect(self._but_clicked) def _but_clicked(self): but = self.sender() self.clicked.emit(int(but.text())) class ApptPrefsDialog(BaseDialog): def __init__(self, patient, parent=None): BaseDialog.__init__(self, parent) self.pt = patient self.patient_label = QtWidgets.QLabel( "%s
    %s" % (_("Appointment Preferences for Patient"), patient.name_id)) self.patient_label.setAlignment(QtCore.Qt.AlignCenter) self.recall_groupbox = QtWidgets.QGroupBox( _("Recall Patient Periodically")) self.recall_groupbox.setCheckable(True) self.recdent_groupbox = QtWidgets.QGroupBox( _("Dentist Recall")) self.recdent_groupbox.setCheckable(True) self.recdent_groupbox.setChecked(False) self.recdent_period_spinbox = QtWidgets.QSpinBox() self.recdent_period_spinbox.setMinimum(1) self.recdent_period_spinbox.setMaximum(24) self.recdent_period_spinbox.setValue(6) self.recdent_date_edit = QtWidgets.QDateEdit() self.recdent_date_edit.setCalendarPopup(True) self.recdent_date_edit.setDate(QtCore.QDate.currentDate()) self.dent_shortcut_buts = ShortcutButs() layout = QtWidgets.QFormLayout(self.recdent_groupbox) layout.addRow(_("dentist recall period (months)"), self.recdent_period_spinbox) layout.addRow(_("Next Recall Date"), self.recdent_date_edit) layout.addRow(_("Shortcuts (months from today)"), self.dent_shortcut_buts) self.rechyg_groupbox = QtWidgets.QGroupBox( _("Hygienist Recall")) self.rechyg_groupbox.setCheckable(True) self.rechyg_groupbox.setChecked(False) self.rechyg_period_spinbox = QtWidgets.QSpinBox() self.rechyg_period_spinbox.setMinimum(1) self.rechyg_period_spinbox.setMaximum(24) self.rechyg_date_edit = QtWidgets.QDateEdit() self.rechyg_date_edit.setCalendarPopup(True) self.rechyg_date_edit.setDate(QtCore.QDate.currentDate()) layout = QtWidgets.QFormLayout(self.rechyg_groupbox) layout.addRow(_("hygienist recall period (months)"), self.rechyg_period_spinbox) layout.addRow(_("Next Recall"), self.rechyg_date_edit) self.recall_method_combobox = QtWidgets.QComboBox() self.recall_method_combobox.addItems( [_("Post"), _("email"), _("sms")]) # self.sms_reminders_checkbox = QtWidgets.QCheckBox( # _("sms reminders for appointments?")) # self.combined_appointment_checkbox = QtWidgets.QCheckBox( # _("Don't offer joint appointments")) layout = QtWidgets.QGridLayout(self.recall_groupbox) layout.addWidget(self.recdent_groupbox, 0, 0, 1, 2) layout.addWidget(self.rechyg_groupbox, 1, 0, 1, 2) layout.addWidget(QtWidgets.QLabel(_("Recall method")), 2, 0) layout.addWidget(self.recall_method_combobox, 2, 1) self.insertWidget(self.patient_label) self.insertWidget(self.recall_groupbox) # self.insertWidget(self.sms_reminders_checkbox) # self.insertWidget(self.combined_appointment_checkbox) QtCore.QTimer.singleShot(0, self.get_appt_prefs) self.dent_shortcut_buts.clicked.connect(self.dent_shortcuts) def sizeHint(self): return QtCore.QSize(500, 400) def get_appt_prefs(self): appt_prefs = self.pt.appt_prefs self.recall_groupbox.setChecked(appt_prefs.recall_active) if appt_prefs.recdent_period is not None: self.recdent_groupbox.setChecked(True and appt_prefs.recall_active) self.recdent_period_spinbox.setValue(appt_prefs.recdent_period) self.recdent_date_edit.setDate(appt_prefs.recdent) if appt_prefs.rechyg_period is not None: self.rechyg_groupbox.setChecked(True and appt_prefs.recall_active) self.rechyg_period_spinbox.setValue(appt_prefs.rechyg_period) self.rechyg_date_edit.setDate(appt_prefs.rechyg) try: method_index = RECALL_METHODS.index(appt_prefs.recall_method) except ValueError: method_index = -1 self.recall_method_combobox.setCurrentIndex(method_index) self.init_edited_signals() def dent_shortcuts(self, period): self.recdent_date_edit.setDate( QtCore.QDate.currentDate().addMonths(period)) def init_edited_signals(self): for widg in ( self.recall_groupbox, self.recdent_groupbox, self.rechyg_groupbox, # self.sms_reminders_checkbox, # self.combined_appointment_checkbox ): widg.toggled.connect(self._set_enabled) for widg in (self.recdent_date_edit, self.rechyg_date_edit): widg.dateChanged.connect(self._set_enabled) self.recdent_period_spinbox.valueChanged.connect(self._set_enabled) self.rechyg_period_spinbox.valueChanged.connect(self._set_enabled) self.recall_method_combobox.currentIndexChanged.connect( self._set_enabled) def _set_enabled(self, *args): self.enableApply() def item_edited(self): self.enableApply() def apply_changed(self): print("applying changes") if self.recall_groupbox.isChecked() and not ( self.recdent_groupbox.isChecked() or self.rechyg_groupbox.isChecked()): QtWidgets.QMessageBox.warning( self, _("error"), _("Recall active with neither Dentist " "or Hygienist active makes no sense")) return self.exec_() self.pt.appt_prefs.recall_active = self.recall_groupbox.isChecked() if self.recdent_groupbox.isChecked(): self.pt.appt_prefs.recdent_period = \ self.recdent_period_spinbox.value() self.pt.appt_prefs.recdent = \ self.recdent_date_edit.date().toPyDate() else: self.pt.appt_prefs.recdent_period = None if self.rechyg_groupbox.isChecked(): self.pt.appt_prefs.rechyg_period = \ self.rechyg_period_spinbox.value() self.pt.appt_prefs.rechyg = self.rechyg_date_edit.date().toPyDate() else: self.pt.appt_prefs.rechyg_period = None i = self.recall_method_combobox.currentIndex() if i == -1: self.pt.appt_prefs.recall_method = None else: self.pt.appt_prefs.recall_method = RECALL_METHODS[i] def exec_(self): if BaseDialog.exec_(self): self.apply_changed() return True openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/appt_settings_dialog.py0000644000175000017500000002527512731731001027131 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This dialog allows the user to specify a few options when making appointments. ''' from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog WEEK_VIEW = True class ApptSettingsResetDialog(BaseDialog): ''' A message box which asks if the user is aware that default settings are not being used, and gives options. ''' show_settings_dialog = False def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Restore Default Settings")) label = WarningLabel("%s
    %s" % ( _("Appointment search does not have default settings"), _("Would You like to reset these now?"))) self.insertWidget(label) self.show_dialog_but = self.button_box.addButton( QtWidgets.QDialogButtonBox.Apply) self.show_dialog_but.setText(_("Show Settings Dialog")) self.cancel_but.setText(_("Keep Custom Settings")) self.apply_but.setText(_("Yes")) self.enableApply() self.apply_but.setFocus(True) def sizeHint(self): return QtCore.QSize(400, 100) def _clicked(self, but): if but == self.show_dialog_but: self.show_settings_dialog = True BaseDialog._clicked(self, but) class ApptSettingsDialog(BaseDialog): CLINICIAN_SELECTED = 0 CLINICIAN_ANY_DENT = 1 CLINICIAN_ANY_HYG = 2 CLINICIAN_ANY = 3 excluded_days = [] dentist_policy = CLINICIAN_SELECTED hygienist_policy = CLINICIAN_ANY_HYG ignore_emergency_spaces = False def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Appointment Settings Dialog")) label = QtWidgets.QLabel( "%s" % _("Please set criteria for making appointments")) label.setAlignment(QtCore.Qt.AlignCenter) # DENTIST POLICY dentist_frame = QtWidgets.QFrame() c_label = QtWidgets.QLabel("%s" % _("Dentist selection policy")) c_label.setAlignment(QtCore.Qt.AlignCenter) layout = QtWidgets.QGridLayout(dentist_frame) self.specified_clinician_radiobut = QtWidgets.QRadioButton( _("Specified Clinician")) self.any_dentist_radiobut = QtWidgets.QRadioButton(_("Any Dentist")) self.any_clinician_radiobut = QtWidgets.QRadioButton(_("Any Clinician")) layout.addWidget(c_label, 0, 0, 1, 2) layout.addWidget(self.specified_clinician_radiobut, 1, 0) layout.addWidget(self.any_dentist_radiobut, 2, 0) layout.addWidget(self.any_clinician_radiobut, 2, 1) # HYGIENIST POLICY hygienist_frame = QtWidgets.QFrame() c_label = QtWidgets.QLabel( "%s" % _("Hygienist selection policy")) c_label.setAlignment(QtCore.Qt.AlignCenter) layout = QtWidgets.QGridLayout(hygienist_frame) self.hyg_specified_clinician_radiobut = QtWidgets.QRadioButton( _("Specified Hygienist")) self.any_hygienist_radiobut = QtWidgets.QRadioButton(_("Any Hygienist")) self.hyg_any_clinician_radiobut = QtWidgets.QRadioButton( _("Any Clinician")) layout.addWidget(c_label, 0, 0, 1, 2) layout.addWidget(self.hyg_specified_clinician_radiobut, 1, 0) layout.addWidget(self.any_hygienist_radiobut, 2, 0) layout.addWidget(self.hyg_any_clinician_radiobut, 2, 1) ignore_emergencies_frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(ignore_emergencies_frame) emergency_label = QtWidgets.QLabel( "%s" % _("Emergency time management")) self.ignore_emergency_checkbox = QtWidgets.QCheckBox( _("Ignore Emergency Spaces")) self.ignore_emergency_checkbox.setChecked(self.ignore_emergency_spaces) layout.addWidget(emergency_label) layout.addWidget(self.ignore_emergency_checkbox) # DAY OF WEEK self.dow_checkboxes = [] dow_frame = QtWidgets.QFrame() dow_label = QtWidgets.QLabel("%s" % _("Look for appointments on these days")) dow_label.setAlignment(QtCore.Qt.AlignCenter) layout = QtWidgets.QGridLayout(dow_frame) layout.addWidget(dow_label, 0, 0, 1, 7) self.all_days_but = QtWidgets.QPushButton(_("Clear all")) self.all_days_but.setCheckable(True) self.all_days_but.clicked.connect(self.all_days_but_clicked) self.add_dow_checkboxes(layout) self.set_prefs() self.insertWidget(dentist_frame) self.insertWidget(hygienist_frame) self.insertWidget(ignore_emergencies_frame) self.insertWidget(dow_frame) # self.apply_but.setText(_("Search Now")) reset_but = self.button_box.addButton( QtWidgets.QDialogButtonBox.Reset) reset_but.setText(_("Reset Default Values")) reset_but.clicked.connect(self.reset_defaults) self.enableApply() def sizeHint(self): return QtCore.QSize(400, 600) def add_dow_checkboxes(self, layout): for i in range(7): cb = QtWidgets.QCheckBox(QtCore.QDate.shortDayName(i + 1)) layout.addWidget(cb, i // 5 + 1, i % 5) self.dow_checkboxes.append(cb) layout.addWidget(self.all_days_but, 2, 3, 1, 2) def all_days_but_clicked(self): for cb in self.dow_checkboxes: cb.setChecked(not self.all_days_but.isChecked()) self.update_all_days_but() def update_all_days_but(self): if self.all_days_but.isChecked(): self.all_days_but.setText(_("Check All")) else: self.all_days_but.setText(_("Clear All")) def set_prefs(self): ''' apply the settings to the ui controls ''' self.specified_clinician_radiobut.setChecked( self.dentist_policy == self.CLINICIAN_SELECTED) self.any_dentist_radiobut.setChecked( self.dentist_policy == self.CLINICIAN_ANY_DENT) self.any_clinician_radiobut.setChecked( self.dentist_policy == self.CLINICIAN_ANY) self.hyg_specified_clinician_radiobut.setChecked( self.hygienist_policy == self.CLINICIAN_SELECTED) self.any_hygienist_radiobut.setChecked( self.hygienist_policy == self.CLINICIAN_ANY_HYG) self.hyg_any_clinician_radiobut.setChecked( self.hygienist_policy == self.CLINICIAN_ANY) self.ignore_emergency_checkbox.setChecked(self.ignore_emergency_spaces) for i, cb in enumerate(self.dow_checkboxes): cb.setChecked(i + 1 not in self.excluded_days) self.all_days_but.setChecked(self.excluded_days != []) self.update_all_days_but() def update_excluded_days(self): ApptSettingsDialog.excluded_days = [] for i in range(7): if not self.dow_checkboxes[i].isChecked(): ApptSettingsDialog.excluded_days.append(i + 1) def update_selection_policies(self): if self.specified_clinician_radiobut.isChecked(): ApptSettingsDialog.dentist_policy = self.CLINICIAN_SELECTED if self.any_dentist_radiobut.isChecked(): ApptSettingsDialog.dentist_policy = self.CLINICIAN_ANY_DENT if self.any_clinician_radiobut.isChecked(): ApptSettingsDialog.dentist_policy = self.CLINICIAN_ANY if self.hyg_specified_clinician_radiobut.isChecked(): ApptSettingsDialog.hygienist_policy = self.CLINICIAN_SELECTED if self.any_hygienist_radiobut.isChecked(): ApptSettingsDialog.hygienist_policy = self.CLINICIAN_ANY_HYG if self.hyg_any_clinician_radiobut.isChecked(): ApptSettingsDialog.hygienist_policy = self.CLINICIAN_ANY @staticmethod def is_default_settings(): return (ApptSettingsDialog.excluded_days == [] and ApptSettingsDialog.dentist_policy == ApptSettingsDialog.CLINICIAN_SELECTED and ApptSettingsDialog.hygienist_policy == ApptSettingsDialog.CLINICIAN_ANY_HYG and not ApptSettingsDialog.ignore_emergency_spaces) @staticmethod def reset(): ''' this resets the dialog (base class) to default values. ''' ApptSettingsDialog.excluded_days = [] ApptSettingsDialog.dentist_policy = \ ApptSettingsDialog.CLINICIAN_SELECTED ApptSettingsDialog.hygienist_policy = \ ApptSettingsDialog.CLINICIAN_ANY_HYG ApptSettingsDialog.ignore_emergency_spaces = False def reset_defaults(self): self.reset() self.set_prefs() def exec_(self): if BaseDialog.exec_(self): self.update_excluded_days() self.update_selection_policies() ApptSettingsDialog.ignore_emergency_spaces = \ self.ignore_emergency_checkbox.isChecked() return True return False if __name__ == "__main__": app = QtWidgets.QApplication([]) dl = ApptSettingsResetDialog() dl.exec() if dl.show_settings_dialog: dl2 = ApptSettingsDialog() dl2.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/appt_wizard_dialog.py0000644000175000017500000000746612710144046026577 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings, appointment_shortcuts from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog class apptWidget(QtWidgets.QWidget): def __init__(self, appointments, parent_dialog): QtWidgets.QWidget.__init__(self, parent_dialog) self.dl = parent_dialog combo_box = QtWidgets.QComboBox() but = QtWidgets.QPushButton(_("Add")) but.setFixedWidth(120) layout = QtWidgets.QHBoxLayout(self) layout.addWidget(combo_box) layout.addWidget(but) but.clicked.connect(self.add) self.appointments = appointments combo_box.addItems(["%d appointments" % len(self.appointments)]) for appt in self.appointments: if "clinician" not in appt: if self.dl.om_gui.pt.dnt2 != 0: appt["clinician"] = self.dl.om_gui.pt.dnt2 else: appt["clinician"] = self.dl.om_gui.pt.dnt1 initials = localsettings.apptix_reverse.get(appt.get("clinician")) mystr = "%s %d mins with %s" % ( appt.get("trt1"), appt.get("length"), initials) combo_box.addItems([mystr]) def add(self): ''' user is applying the appointments contained by this widget ''' self.dl.add_appointments_signal.emit(self.appointments) self.dl.accept() class apptWizard(BaseDialog): add_appointments_signal = QtCore.pyqtSignal(object) def __init__(self, om_gui=None): BaseDialog.__init__(self, om_gui, remove_stretch=True) self.om_gui = om_gui parent_widg = QtWidgets.QWidget() form_layout = QtWidgets.QFormLayout(parent_widg) scroll_area = QtWidgets.QScrollArea() scroll_area.setWidget(parent_widg) scroll_area.setWidgetResizable(True) self.insertWidget(scroll_area) self.shortcuts = appointment_shortcuts.getShortCuts() for shortcut in self.shortcuts: widg = apptWidget(shortcut.get("appointments"), self) form_layout.addRow(shortcut.get("description"), widg) self.apply_but.hide() def sizeHint(self): return QtCore.QSize(600, 500) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/assistant_select_dialog.py0000644000175000017500000000624212710144046027612 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings class AssistantSelectDialog(QtWidgets.QDialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setWindowTitle(_("Select an Assitant")) layout = QtWidgets.QVBoxLayout(self) self.listwidget = QtWidgets.QListWidget() self.listwidget.setSelectionBehavior( QtWidgets.QAbstractItemView.SelectRows) self.listwidget.setSelectionMode( QtWidgets.QAbstractItemView.SingleSelection) assistants = [_("No Assistant")] + localsettings.allowed_logins self.listwidget.addItems(assistants) self.listwidget.setCurrentRow(0) self.buttonBox = QtWidgets.QDialogButtonBox(self) self.buttonBox.setOrientation(QtCore.Qt.Horizontal) self.buttonBox.setStandardButtons( QtWidgets.QDialogButtonBox.Cancel | QtWidgets.QDialogButtonBox.Ok) self.buttonBox.setCenterButtons(True) layout.addWidget(self.listwidget) layout.addWidget(self.buttonBox) self.buttonBox.accepted.connect(self.accept) self.buttonBox.rejected.connect(self.reject) @property def selectedAssistant(self): if self.listwidget.currentRow() == 0: return "" return str(self.listwidget.currentItem().text()) def result(self): if self.exec_(): u2 = self.selectedAssistant localsettings.setOperator(localsettings.clinicianInits, u2) return (True, u2) return (False, None) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/auto_address_dialog.py0000644000175000017500000001522312710144046026716 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog class AutoAddressDialog(BaseDialog): def __init__(self, om_gui): BaseDialog.__init__(self, om_gui) self.om_gui = om_gui title = _("Apply Saved Address") self.setWindowTitle(title) label = QtWidgets.QLabel("%s" % title) label.setAlignment(QtCore.Qt.AlignCenter) frame = QtWidgets.QFrame() layout = QtWidgets.QGridLayout(frame) label_1 = QtWidgets.QLabel(_("Address 1")) label_2 = QtWidgets.QLabel(_("Address 2")) label_3 = QtWidgets.QLabel(_("Address 1")) label_4 = QtWidgets.QLabel(_("Town")) label_5 = QtWidgets.QLabel(_("County")) label_6 = QtWidgets.QLabel(_("Post Code")) label_7 = QtWidgets.QLabel(_("Home Telephone")) self.old_addr1_le = QtWidgets.QLineEdit() self.old_addr2_le = QtWidgets.QLineEdit() self.old_addr3_le = QtWidgets.QLineEdit() self.old_town_le = QtWidgets.QLineEdit() self.old_county_le = QtWidgets.QLineEdit() self.old_pcde_le = QtWidgets.QLineEdit() self.old_tel1_le = QtWidgets.QLineEdit() self.addr1_le = QtWidgets.QLineEdit() self.addr2_le = QtWidgets.QLineEdit() self.addr3_le = QtWidgets.QLineEdit() self.town_le = QtWidgets.QLineEdit() self.county_le = QtWidgets.QLineEdit() self.pcde_le = QtWidgets.QLineEdit() self.tel1_le = QtWidgets.QLineEdit() self.addr1_cb = QtWidgets.QCheckBox() self.addr2_cb = QtWidgets.QCheckBox() self.addr3_cb = QtWidgets.QCheckBox() self.town_cb = QtWidgets.QCheckBox() self.county_cb = QtWidgets.QCheckBox() self.pcde_cb = QtWidgets.QCheckBox() self.tel1_cb = QtWidgets.QCheckBox() self.old_header_label = QtWidgets.QLabel("%s" % _("Existing")) new_header_label = QtWidgets.QLabel("%s" % _("New")) rows = ( (label_1, self.old_addr1_le, self.addr1_le, self.addr1_cb), (label_2, self.old_addr2_le, self.addr2_le, self.addr2_cb), (label_3, self.old_addr3_le, self.addr3_le, self.addr3_cb), (label_4, self.old_town_le, self.town_le, self.town_cb), (label_5, self.old_county_le, self.county_le, self.county_cb), (label_6, self.old_pcde_le, self.pcde_le, self.pcde_cb), (label_7, self.old_tel1_le, self.tel1_le, self.tel1_cb), ) layout.addWidget(self.old_header_label, 0, 1) layout.addWidget(new_header_label, 0, 2) for row, (lab, old_le, new_le, cb) in enumerate(rows): layout.addWidget(lab, row + 1, 0) layout.addWidget(old_le, row + 1, 1) layout.addWidget(new_le, row + 1, 2) layout.addWidget(cb, row + 1, 3) cb.setChecked(True) self.insertWidget(label) self.insertWidget(frame) self.load_values() self.enableApply() def load_values(self): ''' default NP has been pressed - so apply the address and surname from the previous patient ''' dup_tup = localsettings.LAST_ADDRESS self.addr1_le.setText(dup_tup[1]) self.addr2_le.setText(dup_tup[2]) self.addr3_le.setText(dup_tup[3]) self.town_le.setText(dup_tup[4]) self.county_le.setText(dup_tup[5]) self.pcde_le.setText(dup_tup[6]) self.tel1_le.setText(dup_tup[7]) self.old_addr1_le.setText(self.om_gui.ui.addr1Edit.text()) self.old_addr2_le.setText(self.om_gui.ui.addr2Edit.text()) self.old_addr3_le.setText(self.om_gui.ui.addr3Edit.text()) self.old_town_le.setText(self.om_gui.ui.townEdit.text()) self.old_county_le.setText(self.om_gui.ui.countyEdit.text()) self.old_pcde_le.setText(self.om_gui.ui.pcdeEdit.text()) self.old_tel1_le.setText(self.om_gui.ui.tel1Edit.text()) def apply(self): if self.addr1_cb.isChecked(): self.om_gui.ui.addr1Edit.setText(self.addr1_le.text()) if self.addr2_cb.isChecked(): self.om_gui.ui.addr2Edit.setText(self.addr2_le.text()) if self.addr3_cb.isChecked(): self.om_gui.ui.addr3Edit.setText(self.addr3_le.text()) if self.town_cb.isChecked(): self.om_gui.ui.townEdit.setText(self.town_le.text()) if self.county_cb.isChecked(): self.om_gui.ui.countyEdit.setText(self.county_le.text()) if self.pcde_cb.isChecked(): self.om_gui.ui.pcdeEdit.setText(self.pcde_le.text()) if self.tel1_cb.isChecked(): self.om_gui.ui.tel1Edit.setText(self.tel1_le.text()) self.om_gui.advise(_("Address changes applied"), 1) def sizeHint(self): return QtCore.QSize(600, 350) def exec_(self): if localsettings.LAST_ADDRESS == localsettings.BLANK_ADDRESS: self.om_gui.advise(_("No previous address details found"), 1) elif BaseDialog.exec_(self): return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/base_dialogs.py0000644000175000017500000002145213015073251025335 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provide 2 classes, BaseDialog and ExtendableDialog. These are backported from openmolar2 ''' import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets LOGGER = logging.getLogger("openmolar") class BaseDialog(QtWidgets.QDialog): ''' A base class for all my dialogs provides a button box with ok and cancel buttons, slots connected to accept and reject has a VBoxlayout - accessed by self.layout_ ''' extension_frame = None def __init__(self, parent=None, remove_stretch=False): QtWidgets.QDialog.__init__(self, parent) self.setWindowTitle("OpenMolar") self.button_box = QtWidgets.QDialogButtonBox(self) self.button_box.setOrientation(QtCore.Qt.Horizontal) self.button_box.setStandardButtons( self.button_box.Cancel | self.button_box.Ok) self.cancel_but = self.button_box.button(self.button_box.Cancel) self.apply_but = self.button_box.button(self.button_box.Ok) # self.button_box.setCenterButtons(True) self.layout_ = QtWidgets.QVBoxLayout(self) self.button_box.clicked.connect(self._clicked) self.check_before_reject_if_dirty = False self.dirty = False self.enableApply(False) if remove_stretch: self.spacer = False else: self.spacer = True self.layout_.addStretch() self.layout_.addWidget(self.button_box) def sizeHint(self): ''' Overwrite this function inherited from QWidget ''' return self.minimumSizeHint() def minimumSizeHint(self): ''' Overwrite this function inherited from QWidget ''' return QtCore.QSize(300, 300) @property def abandon_message(self): return _("Abandon Changes?") def set_check_on_cancel(self, check): ''' if true, then user will be asked if changes should be abandoned if the dialog is rejected, and given the opportunity to continue ''' self.check_before_reject_if_dirty = check def set_accept_button_text(self, text): ''' by default, the text here is "apply"... change as required using this function ''' self.apply_but.setText(text) def set_reject_button_text(self, text): ''' by default, the text here is "cancel"... change as required using this function ''' self.cancel_but.setText(text) def insertWidget(self, widg): ''' insert widget at the bottom of the layout ''' if self.layout_.count() == 0: self.layout_.addWidget(widg) return insertpos = self.layout_.count() - 1 if insertpos: if self.spacer: insertpos -= 1 if self.extension_frame: insertpos -= 1 # LOGGER.debug("inserting %s at position %s", widg, insertpos) self.layout_.insertWidget(insertpos, widg) def _clicked(self, but): ''' "private" function called when button box is clicked ''' role = self.button_box.buttonRole(but) if role == QtWidgets.QDialogButtonBox.AcceptRole: self.accept() elif role == QtWidgets.QDialogButtonBox.ApplyRole: self.accept() elif role == QtWidgets.QDialogButtonBox.RejectRole: self.reject() else: LOGGER.info("BaseDialog Button Box sent Role %s", role) def reject(self): if not (self.check_before_reject_if_dirty and self.dirty): QtWidgets.QDialog.reject(self) else: if QtWidgets.QMessageBox.question( self, _("Confirm"), self.abandon_message, QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes: QtWidgets.QDialog.reject(self) def enableApply(self, enable=True): ''' call this to enable the apply button (which is disabled by default) ''' self.apply_but.setEnabled(enable) self.apply_but.setAutoDefault(enable) def get_confirm(self, message, accept="ok", reject="cancel", default="accept"): ''' a convenience function to raise a dialog for confirmation of an action ''' if accept == "ok": accept_but = QtWidgets.QMessageBox.Ok elif accept == "yes": accept_but = QtWidgets.QMessageBox.Yes if reject == "cancel": reject_but = QtWidgets.QMessageBox.Cancel elif reject == "no": reject_but = QtWidgets.QMessageBox.No buttons = accept_but | reject_but default_but = accept_but if default == "accept" else reject_but return QtWidgets.QMessageBox.question( self, _("Confirm"), message, buttons, default_but) == accept_but class HorizontalBaseDialog(BaseDialog): ''' similar to BaseDialog, but uses a grid layout with the buttons on the right. ''' def __init__(self, parent=None, remove_stretch=False): BaseDialog.__init__(self, parent, True) self.setWindowTitle("OpenMolar") self.button_box.setOrientation(QtCore.Qt.Vertical) self.layout_.setDirection(QtWidgets.QBoxLayout.LeftToRight) frame = QtWidgets.QFrame() self.insertWidget(frame) self.layout_ = QtWidgets.QVBoxLayout(frame) if not remove_stretch: self.spacer = True self.layout_.addStretch() class ExtendableDialog(BaseDialog): ''' builds on BaseDialog, adding an area for advanced options unlike BaseDialog.. this dialog has no spacer item by default ''' def __init__(self, parent=None, remove_stretch=True): BaseDialog.__init__(self, parent, remove_stretch) self.button_box.setCenterButtons(False) icon = QtGui.QIcon.fromTheme("go-down") #: a pointer to the Advanced button self.more_but = QtWidgets.QPushButton(icon, "&%s" % _("Advanced")) self.more_but.setFlat(True) self.more_but.setCheckable(True) self.more_but.setFocusPolicy(QtCore.Qt.NoFocus) self.button_box.addButton(self.more_but, self.button_box.HelpRole) self.extension_frame = QtWidgets.QFrame(self) layout = QtWidgets.QVBoxLayout(self.extension_frame) layout.setContentsMargins(0, 0, 0, 0) self.layout_.insertWidget(-1, self.extension_frame) self.extension_frame.hide() def set_advanced_but_text(self, txt): self.more_but.setText(txt) def _clicked(self, but): ''' overwrite :doc:`BaseDialog` _clicked checking to see if addvanced panel is to be displayed. ''' if but == self.more_but: self.show_extension(but.isChecked()) but.setChecked(not but.isChecked()) return BaseDialog._clicked(self, but) def add_advanced_widget(self, widg): self.extension_frame.layout().addWidget(widg) def show_extension(self, show): LOGGER.debug("show extension, show=%s", show) self.more_but.setChecked(not show) self.extension_frame.setVisible(show) self.adjustSize() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/blockslot.py0000644000175000017500000001664612710144046024730 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import patient_class from openmolar.qt4gui.compiled_uis import Ui_blockSlot from openmolar.qt4gui.dialogs.find_patient_dialog import FindPatientDialog from openmolar.qt4gui.customwidgets import fiveminutetimeedit class BlockDialog(Ui_blockSlot.Ui_Dialog, QtWidgets.QDialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.om_gui = parent vlayout = QtWidgets.QVBoxLayout(self.blockStart_frame) vlayout.setContentsMargins(0, 0, 0, 0) self.start_timeEdit = fiveminutetimeedit.FiveMinuteTimeEdit() vlayout.addWidget(self.start_timeEdit) vlayout = QtWidgets.QVBoxLayout(self.blockEnd_frame) vlayout.setContentsMargins(0, 0, 0, 0) self.finish_timeEdit = fiveminutetimeedit.FiveMinuteTimeEdit() vlayout.addWidget(self.finish_timeEdit) vlayout = QtWidgets.QVBoxLayout(self.startTime_frame) vlayout.setContentsMargins(0, 0, 0, 0) self.appointment_timeEdit = fiveminutetimeedit.FiveMinuteTimeEdit() vlayout.addWidget(self.appointment_timeEdit) self.reason_comboBox.addItems(localsettings.apptTypes) self.pt_label.setText(_("No patient chosen!")) self.patient = None self.block = True self.tabWidget.setCurrentIndex(0) self.changePt_pushButton.clicked.connect(self.changePt) self.start_timeEdit.time_changed_signal.connect(self.changedTimes) self.finish_timeEdit.time_changed_signal.connect(self.changedTimes) self.appointment_timeEdit.time_changed_signal.connect( self.changedStart) self.length_spinBox.valueChanged.connect(self.changedLength) self.earliestStart = None self.latestFinish = None self.minimumLength = 0 self.length = 0 def changedLength(self, mins): ''' user has modded the appointment start time, sync the other start ''' finish = self.start_timeEdit.time().addSecs(mins * 60) self.finish_timeEdit.setTime(finish) self.setLength() def changedStart(self, t): ''' user has modded the appointment start time, sync the other start ''' self.start_timeEdit.setTime(t) def changedTimes(self, t): ''' user has altered the block start ''' self.setLength() def exec_(self): while True: if QtWidgets.QDialog.exec_(self): errors = [] if self.start_timeEdit.time() < self.earliestStart: errors.append( _("Start is outwith slot bounds (too early)")) if self.start_timeEdit.time() > self.latestFinish: errors.append( _("Start is outwith slot bounds (too late)")) if self.finish_timeEdit.time() > self.latestFinish: errors.append( _("Finish is outwith slot bounds (too late")) if self.finish_timeEdit.time() > self.latestFinish: errors.append( _("Finish is outwith slot bounds (too early")) if self.length < self.minimumLength: errors.append(_("length of appointment is too short")) if self.tabWidget.currentIndex() == 0: if self.comboBox.currentText() == "": errors.append(_("no reason for the block given")) else: if not self.patient or self.patient.serialno == 0: errors.append(_("no patient selected")) if errors: errorlist = "" for error in errors: errorlist += "
  • %s
  • " % error message = "

    %s...

      %s

    " % ( _("Unable to commit because"), errorlist) QtWidgets.QMessageBox.information(self, _("error"), message) else: self.block = self.tabWidget.currentIndex() == 0 return True else: return False def changePt(self): dl = FindPatientDialog(self.om_gui) if dl.exec_(): serialno = dl.chosen_sno try: self.setPatient(patient_class.patient(serialno)) except localsettings.PatientNotFoundError: QtWidgets.QMessageBox.information( self, _("Error"), _("patient not found")) self.setPatient(patient_class.patient(0)) def setPatient(self, pt): ''' let's the dialog know who the patient is ''' if pt is not None and pt.serialno != 0: self.pt_label.setText( _("Chosen Patient is") + "
    %s" % pt.name_id) else: self.pt_label.setText(_("no patient chosen")) self.patient = pt def setTimes(self, start, finish): ''' update the 3 time fields, and the available appointment length ''' self.earliestStart = start self.latestFinish = finish self.appointment_timeEdit.setTime(start) self.start_timeEdit.setTime(start) self.finish_timeEdit.setTime(finish) self.setLength(True) def setLength(self, initialise=False): start = self.start_timeEdit.time() finish = self.finish_timeEdit.time() self.length = (finish.hour() * 60 + finish.minute()) - ( start.hour() * 60 + start.minute()) self.length_label.setText("%d
    " % self.length + _("minutes")) if initialise: self.length_spinBox.setMaximum(self.length) self.length_spinBox.setValue(self.length) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/bookend_dialog.py0000644000175000017500000000600312710144046025656 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import db_settings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class BookendDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Bookend Dialog")) label = WarningLabel( _("Change the last date where appointments are searched for?")) self.date_edit = QtWidgets.QDateEdit() self.date_edit.setDate(localsettings.BOOKEND) self.date_edit.setCalendarPopup(True) self.insertWidget(label) self.insertWidget(self.date_edit) self.date_edit.dateChanged.connect(self.check_enable) @property def chosen_date(self): return self.date_edit.date().toPyDate() def check_enable(self): self.enableApply(self.chosen_date != localsettings.BOOKEND) def apply_(self): LOGGER.info("bookend_dialog - applying date %s", self.chosen_date) db_settings.insert_bookend(self.chosen_date) def sizeHint(self): return QtCore.QSize(300, 200) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) dl = BookendDialog() if dl.exec_(): dl.apply_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/bridge_dialog.py0000644000175000017500000000773012710144046025501 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.dialogs.new_bridge_dialog import NewBridgeDialog LOGGER = logging.getLogger("openmolar") class BridgeDialog(BaseDialog): def __init__(self, om_gui=None): BaseDialog.__init__(self, om_gui) self.chosen_treatments = [] self.om_gui = om_gui message = _("Bridge Treatment Dialog") self.setWindowTitle(message) self.header_label = QtWidgets.QLabel(message) self.header_label.setAlignment(QtCore.Qt.AlignCenter) frame = QtWidgets.QFrame() layout = QtWidgets.QHBoxLayout(frame) new_but = QtWidgets.QPushButton(_("Plan a New Bridge")) new_but.setMinimumSize(QtCore.QSize(150, 150)) alt_but = QtWidgets.QPushButton(_("Recement/Repairs")) alt_but.setMinimumSize(QtCore.QSize(150, 150)) layout.addWidget(new_but) layout.addWidget(alt_but) self.insertWidget(self.header_label) self.insertWidget(frame) self.apply_but.hide() new_but.clicked.connect(self.new_bridge) alt_but.clicked.connect(self.recement_bridge) if om_gui.ui.toothPropsWidget.is_Static: self.hide() QtCore.QTimer.singleShot(10, self.new_bridge) def sizeHint(self): return QtCore.QSize(400, 400) def new_bridge(self): self.hide() dl = NewBridgeDialog(self) if dl.exec_(): LOGGER.debug(dl.chosen_properties) material = dl.chosen_properties["material"] for key, value in dl.chosen_properties.items(): if re.match("[ul][lr][1-8]", key) and value == "pontic": self.chosen_treatments.append((key, "BR/P,%s" % material)) elif re.match("[ul][lr][1-8]", key) and value == "retainer": self.chosen_treatments.append((key, "BR/CR,%s" % material)) self.accept() else: self.reject() def recement_bridge(self): QtWidgets.QMessageBox.information(self, "todo", "not yet implemented") self.reject() if __name__ == "__main__": app = QtWidgets.QApplication([]) LOGGER.setLevel(logging.DEBUG) dl = BridgeDialog(None) if dl.exec_(): print(dl.chosen_treatments) else: print("dialog rejected") openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py0000644000175000017500000001252212710144046030103 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a dialog to enable the cancelation of an appointment. ''' import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import appointments from openmolar.dbtools.brief_patient import BriefPatient from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class CancelAppointmentDialog(ExtendableDialog): message = "appointment successfully removed" message_severity = 0 def __init__(self, appt, parent=None): ExtendableDialog.__init__(self, parent) # self.set_advanced_but_text(_("What's changed?")) self.button_box.removeButton(self.more_but) self.apply_but.setText(_("&Yes")) self.apply_but.setToolTip(_("Cancel the appointment")) self.enableApply() self.postpone_but = self.button_box.addButton( QtWidgets.QDialogButtonBox.Discard) self.postpone_but.setText(_("Yes, but &Keep for re-scheduling")) # self.postpone_but.setToolTip(_("Discard All Changes")) pt = BriefPatient(appt.serialno) if appt.date is None: message = "%s
    %s
    %s" % ( _("Delete unscheduled appointment?"), pt.name_id, " ".join((appt.trt1, appt.trt2, appt.trt3)) ) self.postpone_but.hide() else: message = "%s
    %s - %s %s
    %s
    %s %s %s" % ( _("Delete this appointment?"), pt.name_id, _("with"), appt.dent_inits, " ".join((appt.trt1, appt.trt2, appt.trt3)), localsettings.readableDate(appt.date), _("at"), "%d:%02d" % (appt.atime // 100, appt.atime % 100) ) label = WarningLabel(message) self.insertWidget(label) self.cancel_but.setText(_("&No")) self.cancel_but.setToolTip(_("Close this dialog, making no changes")) self.appt = appt LOGGER.debug("appt type = %s", type(appt)) def sizeHint(self): return QtCore.QSize(400, 100) def _clicked(self, but): if but == self.postpone_but: self.postpone_appointment() elif but == self.apply_but: self.confirm_cancel_all() else: ExtendableDialog._clicked(self, but) def delete_from_aslot(self): if appointments.delete_appt_from_aslot(self.appt): if not self.appt.past: print("future appointment deleted - add to notes!!") return True def postpone_appointment(self): LOGGER.warning("cancelling appointment, but keeping for rescheduling") if self.delete_from_aslot(): appointments.made_appt_to_proposed(self.appt) self.accept() def confirm_cancel_all(self): if self.appt.date is None: if appointments.delete_appt_from_apr(self.appt): self.message = _("Successfully removed appointment") elif QtWidgets.QMessageBox.question( self, _("Confirm"), _("Are you sure you want to completely cancel this appointment?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes: if self.delete_from_aslot(): if appointments.delete_appt_from_apr(self.appt): self.message = _("Successfully removed appointment") else: self.message = _("Error removing from patient diary") self.message_severity = 2 else: return self.accept() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py0000644000175000017500000001175412710144046027374 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog # these lists are shortcut, description, tooltip FS_ITEMS = ( ("FS", _("Fissure Sealant"), ""), ("FS,CO", _("PRR restoration with composite"), ""), ) ENDO_ITEMS = ( ("PX", _("Pulp Extirpation - 1 canal"), ""), ("PX+", _("Pulp Extirpation - multiple canals"), ""), ("RT", _("Root Canal"), ""), ("IE", _("Incomplete Endodontics"), ""), ) SURGICAL_ITEMS = ( ("EX", _("Extraction"), ""), ("EX/S1", _("Surgical Extraction"), ""), ("AP", _("Apicectomy"), ""), ) class ChartTxChoiceDialog(ExtendableDialog): FS_ITEMS = FS_ITEMS ENDO_ITEMS = ENDO_ITEMS SURGICAL_ITEMS = SURGICAL_ITEMS def __init__(self, static, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Chart Treatment Choice Dialog")) self.om_gui = parent self.chosen_shortcut = None scroll_area = QtWidgets.QScrollArea() frame = QtWidgets.QFrame() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.but_layout = QtWidgets.QVBoxLayout(frame) self.insertWidget(scroll_area) self.apply_but.hide() self.all_tx_buttons = [] if static: self.more_but.hide() else: all_tx_but = QtWidgets.QPushButton( _("Show Treatments from all feescales")) all_tx_but.clicked.connect(self._show_all_txs) self.add_advanced_widget(all_tx_but) def sizeHint(self): return QtCore.QSize(300, 300) def set_items(self, items): but_list = [] for shortcut, description, tooltip in items: button = namedtuple( 'Button', ("shortcut", "description", "tooltip")) button.description = description button.tooltip = "" button.shortcut = shortcut but_list.append(button) self.add_buttons(but_list) def add_buttons(self, chart_buttons, all_tx_buttons=[]): self.all_tx_buttons = all_tx_buttons while self.but_layout.count(): widget_item = self.but_layout.takeAt(0) try: widget_item.widget().setParent(None) except AttributeError: # stretch item has no attribute "widget" pass if chart_buttons == []: label = QtWidgets.QLabel( _("No Matching items to show. " "Perhaps this is due to the feescale for this patient?")) label.setWordWrap(True) self.but_layout.addWidget(label) for button in chart_buttons: but = QtWidgets.QPushButton(button.description) but.setToolTip(button.tooltip) but.clicked.connect( partial(self.but_clicked, button.shortcut)) self.but_layout.addWidget(but) self.but_layout.addStretch(100) def but_clicked(self, shortcut): self.chosen_shortcut = shortcut self.accept() def _show_all_txs(self): if self.all_tx_buttons == []: QtWidgets.QMessageBox.information( self, _("Error"), _("No items of this type have found in any feescale")) self.add_buttons(self.all_tx_buttons) self.show_extension(False) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/check_version_dialog.py0000644000175000017500000003501312770454304027071 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import configparser from datetime import date from datetime import timedelta import logging import re import os from PyQt5 import QtCore from PyQt5 import QtWidgets from PyQt5 import QtNetwork from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") LOOKUP_URL = "https://openmolar.com/om1/get_version" INFORMATION_URL = "https://openmolar.com/" USER_AGENT_HEADER = 'openmolar%s' % localsettings.VERSION MESSAGE = '''

    %s %s


    %s %%s - %s %%s

    %%s


    %s %s

    ''' % ( _("This application is at version"), localsettings.VERSION, _("The latest release is"), _("Released on"), _("For more information, please visit"), INFORMATION_URL, _("The OpenMolar Website")) CONFIG_PATH = os.path.join(localsettings.LOCALFILEDIRECTORY, "updates.conf") def parse_isodate(isodate): ''' take a date in iso format "YYYY-MM-DD" and return as a python date object return None if no match. ''' LOGGER.debug("attempting to get a date from %s", isodate) try: m = re.match(r"(\d+)-(\d+)-(\d+)", isodate) if m: return date(int(m.groups()[0]), int(m.groups()[1]), int(m.groups()[2])) except: LOGGER.exception("unable to convert %s to a date", isodate) return None class Options(object): ALWAYS = 0 DAILY = 1 WEEKLY = 2 MONTHLY = 3 NEVER = 4 DEFAULT = ALWAYS READABLE_VALUES = {ALWAYS: "ALWAYS", DAILY: "DAILY", WEEKLY: "WEEKLY", MONTHLY: "MONTHLY", NEVER: "NEVER"} checked_today = False class DataFetcher(QtCore.QObject): finished_signal = QtCore.pyqtSignal() def __init__(self, parent=None): super().__init__(parent) self._access_manager = QtNetwork.QNetworkAccessManager() self._data = None self._access_manager.finished.connect(self._access_manager_finished) self.timeout_timer = QtCore.QTimer() self.timeout_timer.timeout.connect(self.timeout) self.timeout_timer.start(20000) def _access_manager_finished(self, reply): self.timeout_timer.stop() self._data = reply.readAll() assert isinstance(self._data, QtCore.QByteArray) self.finished_signal.emit() def get_webdata(self): request = QtNetwork.QNetworkRequest(QtCore.QUrl(LOOKUP_URL)) request.setHeader(QtNetwork.QNetworkRequest.UserAgentHeader, USER_AGENT_HEADER) self._access_manager.get(request) def result(self): try: result = self._data.data().decode("utf8") return result if result else None except: return None def timeout(self): self.timeout_timer.stop() self.finished_signal.emit() class MyConfigParser(configparser.ConfigParser, Options): user_chosen_option = None def __init__(self): ''' read the local config file and see if user has specified preferences as to when checking should take place. ''' configparser.ConfigParser.__init__(self) self.read(CONFIG_PATH) if "UPDATE" not in self.sections(): self.write_config() @property def update_option_value(self): ''' return a human readable (in english!) of the chosen update frequency ''' if self.user_chosen_option: return self.READABLE_VALUES.get(self.user_chosen_option, "ALWAYS") return self.READABLE_VALUES.get(self.update_option, "ALWAYS") @property def update_option(self): try: option = self.get("UPDATE", "OPTION") for key, value in self.READABLE_VALUES.items(): if value == option: return key except configparser.NoOptionError: pass except ValueError: pass return self.DEFAULT @property def last_check_date(self): if self.update_option != self.NEVER: try: last_check = self.get("UPDATE", "LAST_CHECK") return parse_isodate(last_check) except configparser.NoOptionError: pass return date(2000, 1, 1) def write_config(self): LOGGER.debug("writing config") self.clear() self.add_section("UPDATE") self.set("UPDATE", "OPTION", self.update_option_value) if self.checked_today: self.set("UPDATE", "LAST_CHECK", date.today().isoformat()) else: self.set("UPDATE", "LAST_CHECK", self.last_check_date.isoformat()) with open(CONFIG_PATH, "w") as f: self.write(f) f.close() class OptionsWidget(QtWidgets.QWidget, Options): ''' A widget for selecting user preferences on checking for updates. ''' def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.rb0 = QtWidgets.QRadioButton(_("Check for updates with every run")) self.rb1 = QtWidgets.QRadioButton(_("Check for updates daily")) self.rb2 = QtWidgets.QRadioButton(_("Check for updates weekly")) self.rb3 = QtWidgets.QRadioButton(_("Check for updates monthly")) self.rb4 = QtWidgets.QRadioButton(_("Never check for updates")) layout = QtWidgets.QVBoxLayout(self) layout.setContentsMargins(1, 1, 1, 1) layout.addWidget(self.rb0) layout.addWidget(self.rb1) layout.addWidget(self.rb2) layout.addWidget(self.rb3) layout.addWidget(self.rb4) self.set_chosen_option() def set_chosen_option(self, option=None): if option is None: option = self.DEFAULT self.rb0.setChecked(option == self.ALWAYS) self.rb1.setChecked(option == self.DAILY) self.rb2.setChecked(option == self.WEEKLY) self.rb3.setChecked(option == self.MONTHLY) self.rb4.setChecked(option == self.NEVER) @property def chosen_option(self): if self.rb0.isChecked(): return self.ALWAYS if self.rb1.isChecked(): return self.DAILY if self.rb2.isChecked(): return self.WEEKLY if self.rb3.isChecked(): return self.MONTHLY if self.rb4.isChecked(): return self.NEVER class CheckVersionDialog(ExtendableDialog, Options): ''' A dialog which informs the user of any updates to the openmolar application There are 2 ways of calling this dialog. exec_() = show the dialog before polling the wesbite for releases background_exec() = only show the result if there is a new version. ''' result = None _new_version = None _next_check_date = None polling = False def __init__(self, parent=None): LOGGER.debug("initiating CheckVersionDialog") ExtendableDialog.__init__(self, parent) self.data_fetcher = DataFetcher(parent) self.config = MyConfigParser() def add_widgets(self): self.header_label = WarningLabel( _("Checking for updates.... please wait.")) self.result_label = QtWidgets.QLabel("") self.result_label.setAlignment(QtCore.Qt.AlignCenter) self.result_label.setOpenExternalLinks(True) self.insertWidget(self.header_label) self.insertWidget(self.result_label) self.cancel_but.hide() self.apply_but.setText(_("OK")) self.enableApply() self.options_widget = OptionsWidget(self) self.options_widget.set_chosen_option(self.config.update_option) self.set_advanced_but_text(_("Options")) self.add_advanced_widget(self.options_widget) def show_result(self): LOGGER.debug("CheckVersionDialog show result") self.result = self.data_fetcher.result() if self.result is None: self.result_label.setText( "%s
    %s" % (_("Unable to connect to"), INFORMATION_URL, INFORMATION_URL)) return if self.update_available: header_text = _("A newer version of OpenMolar is available") self.header_label.label.setStyleSheet("color: red") else: header_text = _("You are running the latest version - thankyou") self.header_label.setText(header_text) self.result_label.setText(MESSAGE % (self.new_version)) def lookup_due(self): ''' check the config file for user preferences on update check ''' LOGGER.debug("checking user preferences for application update check") if self.config.update_option == self.NEVER: return False if self.config.update_option == self.MONTHLY: delta = timedelta(days=30) elif self.config.update_option == self.WEEKLY: delta = timedelta(days=7) elif self.config.update_option == self.DAILY: delta = timedelta(days=1) else: delta = timedelta(days=0) if self.config.last_check_date + delta > date.today(): LOGGER.debug("update check not due yet") return False return True def hit_website(self): if not self.polling: LOGGER.info("polling website for latest release") self.polling = True self.data_fetcher.get_webdata() @property def update_available(self): ''' a boolean to lookup whether a new version is available. ''' LOGGER.debug("getting property update_available") try: if self.new_version[0] > localsettings.VERSION: LOGGER.info("There is a newer version available upstream") return True else: LOGGER.info("You are running the latest version - thankyou") return False except: LOGGER.exception("unknown error getting update available " "perhaps the website returned garbage???") return False @property def new_version(self): if self._new_version is None: scp = configparser.ConfigParser() scp.read_string(self.result) version, release_date, message = "", None, "" try: try: version = scp.get("RELEASE", "VERSION") except configparser.NoOptionError: pass try: release_date_string = scp.get("RELEASE", "DATE") m = re.match(r"(\d+),(\d+),(\d+)", release_date_string) if m: release_date = date(int(m.groups()[0]), int(m.groups()[1]), int(m.groups()[2])) self.checked_today = True else: LOGGER.warning("release date not in form 2016,03,09") except configparser.NoOptionError: pass except ValueError: # this will fire if a bad date is passed. logging.exception("error parsing date field") try: message = scp.get("RELEASE", "MESSAGE") except configparser.NoOptionError: pass except configparser.NoSectionError: LOGGER.warning("unable to parse result of version checking") except configparser.MissingSectionHeaderError: pass self._new_version = (version, localsettings.formatDate(release_date), message.replace("\n", "
    ")) return self._new_version def background_exec(self): if self.lookup_due(): self.data_fetcher.finished_signal.connect(self.exec_) self.hit_website() def exec_(self): LOGGER.debug("exec_ called by %s", self.sender()) self.add_widgets() if self.sender() == self.data_fetcher: self.show_result() # lookup has been performed discreetly, only bother the user if # there is an update available if not self.update_available: return False else: self.data_fetcher.finished_signal.connect(self.show_result) QtCore.QTimer.singleShot(5000, self.hit_website) if ExtendableDialog.exec_(self): self.config.user_chosen_option = self.options_widget.chosen_option self.config.checked_today = self.checked_today self.config.write_config() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) dl = CheckVersionDialog() if True: dl.exec_() else: dl.background_exec() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/child_smile_dialog.py0000644000175000017500000002464212710144046026522 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re import socket import urllib.request, urllib.error, urllib.parse from xml.dom import minidom from xml.parsers.expat import ExpatError from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.upper_case_line_edit \ import UpperCaseLineEdit from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") LOOKUP_URL = "http://www.psd.scot.nhs.uk/dev/simd/simdLookup.aspx" # here is the result when using this EXAMPLE_RESULT = ''' SIMD Lookup for PSD
    SIMD Area: 4
    ''' HEADERS = { 'User-Agent': ('Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 ' '(KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11'), 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3', 'Accept-Encoding': 'none', 'Accept-Language': 'en-US,en;q=0.8', 'Connection': 'keep-alive'} TODAYS_LOOKUPS = {} # {"IV1 1PP": "SIMD Area: 1"} class ChildSmileDialog(BaseDialog): result = "" is_checking_website = False def __init__(self, parent): BaseDialog.__init__(self, parent) self.main_ui = parent self.header_label = QtWidgets.QLabel() self.header_label.setAlignment(QtCore.Qt.AlignCenter) self.pcde_le = UpperCaseLineEdit() self.pcde_le.setText(self.main_ui.pt.pcde) self.simd_label = QtWidgets.QLabel() self.simd_label.setAlignment(QtCore.Qt.AlignCenter) self.tbi_checkbox = QtWidgets.QCheckBox( _("ToothBrushing Instruction Given")) self.tbi_checkbox.setChecked(True) self.di_checkbox = QtWidgets.QCheckBox(_("Dietary Advice Given")) self.di_checkbox.setChecked(True) self.fl_checkbox = QtWidgets.QCheckBox(_("Fluoride Varnish Applied")) self.fl_checkbox.setToolTip( _("Fee claimable for patients betwen 2 and 5")) self.fl_checkbox.setChecked(2 <= self.main_ui.pt.ageYears <= 5) self.insertWidget(self.header_label) self.insertWidget(self.pcde_le) self.insertWidget(self.simd_label) self.insertWidget(self.tbi_checkbox) self.insertWidget(self.di_checkbox) self.insertWidget(self.fl_checkbox) self.pcde_le.textEdited.connect(self.check_pcde) self._simd = None @property def pcde(self): try: return str(self.pcde_le.text()) except: return "" @property def valid_postcode(self): return bool(re.match("[A-Z][A-Z](\d+) (\d+)[A-Z][A-Z]", self.pcde)) def postcode_warning(self): if not self.valid_postcode: QtWidgets.QMessageBox.warning(self, "error", "Postcode is not valid") def check_pcde(self): if self.valid_postcode: QtCore.QTimer.singleShot(50, self.simd_lookup) else: self.header_label.setText(_("Please enter a valid postcode")) self.simd_label.setText("") self.enableApply(False) def simd_lookup(self): ''' poll the server for a simd for a postcode ''' QtWidgets.QApplication.instance().processEvents() global TODAYS_LOOKUPS try: self.result = TODAYS_LOOKUPS[self.pcde] self.simd_label.setText("%s %s" % (_("KNOWN SIMD"), self.result)) self.enableApply(True) LOGGER.debug("simd_lookup unnecessary, value known") return except KeyError: pass self.header_label.setText(_("Polling website with Postcode")) pcde = self.pcde.replace(" ", "%20") url = "%s?pCode=%s" % (LOOKUP_URL, pcde) try: QtWidgets.QApplication.instance().setOverrideCursor( QtCore.Qt.WaitCursor) req = urllib.request.Request(url, headers=HEADERS) response = urllib.request.urlopen(req, timeout=20) result = response.read() self.result = self._parse_result(result) TODAYS_LOOKUPS[self.pcde] = "SIMD: %s" % self.simd_number except urllib.error.URLError: LOGGER.error("url error polling NHS website?") self.result = _("Error polling website") except socket.timeout: LOGGER.error("timeout error polling NHS website?") self.result = _("Timeout polling website") finally: QtWidgets.QApplication.instance().restoreOverrideCursor() self.simd_label.setText("%s = %s" % (_("RESULT"), self.result)) QtWidgets.QApplication.instance().processEvents() self.enableApply(self.simd_number is not None) self.header_label.setText("SIMD %d" % self.simd_number) def _parse_result(self, result): try: dom = minidom.parseString(result) e = dom.getElementsByTagName("span")[0] return e.firstChild.data except ExpatError: return "UNDECIPHERABLE REPLY" def manual_entry(self): dl = QtWidgets.QInputDialog(self) dl.setWindowTitle(_("Manual Input Required")) dl.setInputMode(dl.IntInput) dl.setIntRange(1, 5) dl.setIntValue(4) dl.setLabelText( _("Online lookup has failed, please enter the SIMD manually")) self.rejected.connect(dl.reject) # for Unittests if dl.exec_(): self.reject() return simd = dl.intValue() self.result += " - Manually entered SIMD of %d" % simd return simd @property def simd_number(self): if self._simd is None: m = re.search("(\d+)", self.result) if m: self._simd = int(m.groups()[0]) else: self._simd = 4 self._simd = self.manual_entry() return self._simd @property def tbi_performed(self): return self.tbi_checkbox.isChecked() @property def di_performed(self): return self.di_checkbox.isChecked() @property def fl_applied(self): return self.fl_checkbox.isChecked() @property def tx_items(self): age = self.main_ui.pt.ageYears is_dentist = \ localsettings.clinicianNo in list(localsettings.dentDict.keys()) LOGGER.debug("Performed by dentist = %s" % is_dentist) if age < 3: if self.simd_number < 4: yield ("other", "CS1") else: yield ("other", "CS2") if self.tbi_performed: code = "TB1" if is_dentist else "TB2" yield ("other", code) if self.di_performed: code = "DI1" if is_dentist else "DI2" yield ("other", code) else: if self.simd_number < 4: yield ("other", "CS3") if self.tbi_performed: code = "TB3" if is_dentist else "TB4" yield ("other", code) if self.di_performed: code = "DI3" if is_dentist else "DI4" yield ("other", code) if 2 <= age <= 5: if self.fl_applied: yield ("other", "CSFL") def exec_(self): QtCore.QTimer.singleShot(100, self.check_pcde) QtCore.QTimer.singleShot(500, self.postcode_warning) if BaseDialog.exec_(self): if self.valid_postcode: self.main_ui.pt.pcde = self.pcde self.main_ui.addNewNote( "CHILDSMILE (postcode '%s'): %s" % (self.pcde, self.result)) return True return False if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) def _mock_function(*args): pass from collections import namedtuple localsettings.initiate() app = QtWidgets.QApplication([]) ui = QtWidgets.QMainWindow() ui.pt = namedtuple("pt", ("pcde", "ageYears")) ui.pt.pcde = "Iv1 1P" ui.pt.ageYears = 3 ui.addNewNote = _mock_function dl = ChildSmileDialog(ui) # print dl._parse_result(EXAMPLE_RESULT) if dl.exec_(): print((dl.result)) print((dl.simd_number)) print(("toothbrush instruction = %s" % dl.tbi_performed)) print(("dietary advice = %s" % dl.di_performed)) for item in dl.tx_items: print(item) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/choose_clinicians.py0000644000175000017500000000367612710144046026407 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_choose_clinicians class ChooseCliniciansDialog(Ui_choose_clinicians.Ui_Dialog, QtWidgets.QDialog): def __init__(self, widg, parent=None): super().__init__(parent) self.setupUi(self) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(widg) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/choose_tooth_dialog.py0000644000175000017500000000430712710144046026737 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_choose_tooth from openmolar.qt4gui.customwidgets.simple_chartwidget import SimpleChartWidg class ChooseToothDialog(QtWidgets.QDialog, Ui_choose_tooth.Ui_Dialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.chartwidg = SimpleChartWidg(self) layout = QtWidgets.QHBoxLayout(self.frame) layout.addWidget(self.chartwidg) def getInput(self): if self.exec_(): return self.chartwidg.getSelected() else: return [] openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/clinician_select_dialog.py0000644000175000017500000001012312710144046027523 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings class ClinicianSelectDialog(QtWidgets.QDialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setWindowTitle(_("Select a Clinician")) layout = QtWidgets.QVBoxLayout(self) self.listwidget = QtWidgets.QListWidget() self.listwidget.setSelectionBehavior( QtWidgets.QAbstractItemView.SelectRows) self.listwidget.setSelectionMode( QtWidgets.QAbstractItemView.SingleSelection) clinicians = [_("NONE")] + list(localsettings.activedents) + \ list(localsettings.activehygs) self.listwidget.addItems(clinicians) try: i = clinicians.index(localsettings.clinicianInits) except ValueError: i = 0 self.listwidget.setCurrentRow(i) self.buttonBox = QtWidgets.QDialogButtonBox(self) self.buttonBox.setOrientation(QtCore.Qt.Horizontal) self.buttonBox.setStandardButtons( QtWidgets.QDialogButtonBox.Cancel | QtWidgets.QDialogButtonBox.Ok) self.buttonBox.setCenterButtons(True) layout.addWidget(self.listwidget) layout.addWidget(self.buttonBox) self.buttonBox.accepted.connect(self.accept) self.buttonBox.rejected.connect(self.reject) @property def selectedClinician(self): if self.listwidget.currentRow() == 0: return "" return str(self.listwidget.currentItem().text()) def result(self): if self.exec_(): chosen = self.selectedClinician change_needed = chosen != localsettings.clinicianInits localsettings.clinicianInits = chosen localsettings.clinicianNo = localsettings.ops_reverse.get( chosen, 0) curr_operator = localsettings.operator.split("/") u2 = curr_operator[0] if u2 == chosen: u2 = "" if (u2 and QtWidgets.QMessageBox.question( self, _("Confirm"), "%s %s?" % ( _("Set Clinician as"), chosen), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.No): u2 = "" localsettings.setOperator(chosen, u2) return (change_needed, chosen) return (False, None) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/close_course_dialog.py0000644000175000017500000000733512710144046026733 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class CloseCourseDialog(BaseDialog): def __init__(self, ftr=False, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Close Course Dialog")) self.patient_label = QtWidgets.QLabel("") self.patient_label.setAlignment(QtCore.Qt.AlignCenter) f = self.patient_label.font() f.setBold(True) self.patient_label.setFont(f) self.tx_complete_label = WarningLabel( _('You have no further treatment proposed for this patient, ' 'yet they are deemed to be "under treatment".')) self.tx_complete_label.setMaximumHeight(120) self.date_edit = QtWidgets.QDateEdit() self.date_edit.setDate(QtCore.QDate.currentDate()) self.date_edit.setMaximumDate(QtCore.QDate().currentDate()) self.date_edit.setCalendarPopup(True) frame = QtWidgets.QFrame(self) layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Suggested Completion Date"), self.date_edit) question_label = QtWidgets.QLabel( "%s" % _("Close this course now?")) question_label.setAlignment(QtCore.Qt.AlignCenter) self.ftr_checkbox = QtWidgets.QCheckBox(_("Pt failed to return")) self.ftr_checkbox.setChecked(ftr) self.insertWidget(self.patient_label) self.insertWidget(self.tx_complete_label) self.insertWidget(frame) self.insertWidget(question_label) if ftr: self.layout().insertStretch(4, 200) self.insertWidget(self.ftr_checkbox) self.enableApply() def set_minimum_date(self, date_): self.date_edit.setMinimumDate(date_) def set_date(self, date_): self.date_edit.setDate(date_) @property def completion_date(self): return self.date_edit.date().toPyDate() @property def ftr(self): return self.ftr_checkbox.isChecked() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py0000644000175000017500000002177412710144046030144 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from functools import partial import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class CompleteTreatmentDialog(ExtendableDialog): def __init__(self, treatments, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.om_gui = parent LOGGER.debug("CompleteTreatmentDialog %s" % treatments) self.setWindowTitle(_("Complete Multiple Treatments")) label = QtWidgets.QLabel( "%s
    %s" % ( _("You have selected multiple treatments."), _("Please complete, reverse or delete then apply changes."))) self.insertWidget(label) self.treatments = treatments scroll_area = QtWidgets.QScrollArea() frame = QtWidgets.QFrame() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.but_layout = QtWidgets.QGridLayout(frame) row = 0 col = 1 for header in (_("Planned"), _("Completed")): label = QtWidgets.QLabel("%s" % header) label.setAlignment(QtCore.Qt.AlignCenter) self.but_layout.addWidget(label, row, col) col += 1 delete_icon = icon = QtGui.QIcon(":/eraser.png") self.uncomplete_icon = QtGui.QIcon(":back.png") self.complete_icon = QtGui.QIcon(":forward.png") for i, (att, treatment, completed) in enumerate(treatments): row = i + 1 label = QtWidgets.QLabel( "%s - %s" % (att.upper(), treatment.upper())) label.setAlignment(QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter) self.but_layout.addWidget(label, row, 0) if completed: icon = self.uncomplete_icon col = 1 else: icon = self.complete_icon col = 0 but = QtWidgets.QPushButton(icon, "") but.setIconSize(QtCore.QSize(10, 10)) but.setMaximumWidth(50) self.but_layout.addWidget(but, row, col + 1) but.clicked.connect(partial(self._but_clicked, row)) but = QtWidgets.QPushButton(delete_icon, "") but.setIconSize(QtCore.QSize(20, 20)) but.setMaximumWidth(50) self.but_layout.addWidget(but, row, 3) but.clicked.connect(partial(self._del_but_clicked, row)) self.but_layout.addItem(QtWidgets.QSpacerItem(0, 10)) self.but_layout.setRowStretch(row + 1, 2) but_frame = QtWidgets.QFrame() layout = QtWidgets.QHBoxLayout(but_frame) layout.setContentsMargins(0, 0, 0, 0) complete_all_but = QtWidgets.QPushButton( self.complete_icon, _("Complete All")) self.reverse_all_but = QtWidgets.QPushButton( self.uncomplete_icon, _("Reverse All")) complete_all_but.clicked.connect(self._complete_all) self.reverse_all_but.clicked.connect(self._reverse_all) layout.addWidget(complete_all_but) layout.addWidget(self.reverse_all_but) self.insertWidget(scroll_area) self.insertWidget(but_frame) # no advanced options yet self.more_but.hide() def sizeHint(self): height = 200 + 50 * len(self.treatments) if height > 500: height = 500 return QtCore.QSize(300, height) def hide_reverse_all_but(self): self.reverse_all_but.hide() def _del_but_clicked(self, row): but = self.sender() label = self.but_layout.itemAtPosition(row, 0).widget() label.setStyleSheet("") label.setEnabled(False) for col in range(1, 3): item = self.but_layout.itemAtPosition(row, col) if item is not None: item.widget().hide() but.setEnabled(False) self._enable() def _but_clicked(self, row): but = self.sender() label = self.but_layout.itemAtPosition(row, 0).widget() if "red" in label.styleSheet(): label.setStyleSheet("") else: label.setStyleSheet("color:red;") if self.but_layout.itemAtPosition(row, 1) is None: icon = self.complete_icon col = 1 else: icon = self.uncomplete_icon col = 2 but.setIcon(icon) self.but_layout.addWidget(but, row, col) self._enable() def _complete_all(self): for button in self.plan_buttons: button.click() def _reverse_all(self): for button in self.cmp_buttons: button.click() def _enable(self): for val in self.completed_treatments: self.enableApply() return for val in self.uncompleted_treatments: self.enableApply() return for val in self.deleted_treatments: self.enableApply() return self.enableApply(False) @property def all_completed(self): return list(self.plan_buttons) == [] @property def all_planned(self): return list(self.cmp_buttons) == [] @property def plan_buttons(self): ''' iterate and return all buttons in the left column ''' for i in range(len(self.treatments)): row = i + 1 item = self.but_layout.itemAtPosition(row, 1) if item is not None: yield item.widget() @property def cmp_buttons(self): ''' iterate and return all buttons in the right column ''' for i in range(len(self.treatments)): row = i + 1 item = self.but_layout.itemAtPosition(row, 2) if item is not None: yield item.widget() @property def uncompleted_treatments(self): for i, (att, treat, prev_completed) in enumerate(self.treatments): row = i + 1 now_planned = self.but_layout.itemAtPosition(row, 2) is None if now_planned and prev_completed: yield (att, treat) @property def completed_treatments(self): for i, (att, treat, prev_completed) in enumerate(self.treatments): row = i + 1 now_completed = self.but_layout.itemAtPosition(row, 1) is None if now_completed and not prev_completed: yield (att, treat) @property def deleted_treatments(self): for i, (att, treat, prev_completed) in enumerate(self.treatments): row = i + 1 if not self.but_layout.itemAtPosition(row, 0).widget().isEnabled(): yield (att, treat, prev_completed) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) mw = QtWidgets.QWidget() dl = CompleteTreatmentDialog([("perio", "SP", False), ("perio", "SP", True), ("ur5", "MOD", False), ("ur5", "RT", False), ("ur4", "DR", True)], mw) if dl.exec_(): for att, treat in dl.completed_treatments: print("%s %s was completed" % (att, treat)) for att, treat in dl.uncompleted_treatments: print("%s %s was reversed" % (att, treat)) for att, treat, completed in dl.deleted_treatments: print("%s %s %s was deleted" % (att, treat, completed)) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/correspondence_dialog.py0000644000175000017500000001232212710144046027247 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.dbtools import standard_letter LOGGER = logging.getLogger("openmolar") class CorrespondenceDialog(BaseDialog): LETTERS = None def __init__(self, html, patient=None, preformatted=True, parent=None): BaseDialog.__init__(self, parent, remove_stretch=True) self.pt = patient self.text_edit = QtWidgets.QTextEdit() self.orig_html = html self.text_edit.setHtml(html) self.orig_qhtml = self.text self.insertWidget(self.text_edit) if preformatted: self.combo_box = QtWidgets.QComboBox() self.combo_box.addItem(_("Blank Letter")) QtCore.QTimer.singleShot(100, self.load_preformats) self.insertWidget(self.combo_box) self.enableApply() def advise(self, message): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(600, 600) def showEvent(self, event): self.text_edit.setFocus() def replace_placeholders(self, text): try: text = text.replace("{{NAME}}", self.pt.name) text = text.replace("{{SERIALNO}}", str(self.pt.serialno)) except AttributeError: LOGGER.warning("couldn't replace placeholders") pass return text def load_preformats(self): if self.LETTERS is None: blank_letter = standard_letter.StandardLetter( _("Blank Letter"), "
    " * 9, "") LOGGER.info("loading preformatted letters") CorrespondenceDialog.LETTERS = { blank_letter.description: blank_letter} for letter in standard_letter.get_standard_letters(): CorrespondenceDialog.LETTERS[letter.description] = letter for key, letter in self.LETTERS.items(): if key != _("Blank Letter"): self.combo_box.addItem(letter.description) self.combo_box.currentIndexChanged.connect( self.preformed_letter_selected) def preformed_letter_selected(self, i): LOGGER.debug("selecting preformed letter %s", i) selected = str(self.combo_box.currentText()) if self.has_edits and QtWidgets.QMessageBox.question( self, _("Confirm"), "%s %s" % ( _("Abandon changes and convert to letter type"), selected), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No ) == QtWidgets.QMessageBox.No: return letter = self.LETTERS[selected] new_body = "\n%s\n" % \ letter.text new_footer = "\n%s\n" % \ letter.footer compiled = re.compile( r"(.*)", re.DOTALL) new_text = re.sub(compiled, new_body, self.orig_html) compiled = re.compile( r"(.*)", re.DOTALL) new_text = re.sub(compiled, new_footer, new_text) new_text = self.replace_placeholders(new_text) self.text_edit.setHtml(new_text) self.orig_qhtml = self.text @property def has_edits(self): return self.text != self.orig_qhtml @property def text(self): return str(self.text_edit.toHtml()) @property def letter_description(self): return str(self.combo_box.currentText()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/course_consistency_dialog.py0000644000175000017500000000763312710144046030170 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.ptModules.course_checker import get_course_checker from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class CourseConsistencyDialog(ExtendableDialog): def __init__(self, serialno, courseno, parent=None): ExtendableDialog.__init__(self, parent) self.serialno = serialno self.courseno = courseno header_label = QtWidgets.QLabel("%s %s" % ( _("Course Daybook Estimate Checker"), self.courseno)) header_label.setAlignment(QtCore.Qt.AlignCenter) self.polling_label = QtWidgets.QLabel(_("Polling Database")) self.trt_widget = QtWidgets.QTextBrowser() self.day_trt_widget = QtWidgets.QTextBrowser() self.insertWidget(header_label) self.insertWidget(self.polling_label) self.adv_widget = QtWidgets.QLabel(_("No advanced options available")) self.add_advanced_widget(self.adv_widget) QtCore.QTimer.singleShot(100, self.get_data) def advise(self, message): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(800, 600) def get_data(self): self.course_checker = get_course_checker(self.serialno, self.courseno) html1 = self.course_checker.course.to_html() html1c = self.course_checker.course.to_html(completed_only = True) html2 = self.course_checker.daybook_course.to_html() self.polling_label.hide() self.insertWidget(QtWidgets.QLabel("course")) self.insertWidget(self.trt_widget) self.insertWidget(QtWidgets.QLabel("daybook course")) self.insertWidget(self.day_trt_widget) self.trt_widget.setText(html1) self.day_trt_widget.setText(html2) # for comparision puporses - dev code!! #f = open("/home/neil/course.txt", "w") #f.write(html1c) #f.close() #f = open("/home/neil/day_course.txt", "w") #f.write(html2) #f.close() match = "%s" % ("match!" if html1c == html2 else "differs") self.insertWidget(QtWidgets.QLabel(match)) def update_db(self): ''' apply any edits (should be called if self.exec_() == True) ''' pass openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/course_edit_dialog.py0000644000175000017500000001240512710144046026545 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.dbtools import treatment_course from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class CourseEditDialog(ExtendableDialog): def __init__(self, courseno, parent=None): ExtendableDialog.__init__(self, parent) self.courseno = courseno header_label = QtWidgets.QLabel( "%s %s" % (_("Edit Treatment Course"), self.courseno)) header_label.setAlignment(QtCore.Qt.AlignCenter) self.accd_date_edit = QtWidgets.QDateEdit() self.accd_date_edit.setCalendarPopup(True) self.cmpd_date_edit = QtWidgets.QDateEdit() self.cmpd_date_edit.setCalendarPopup(True) self.examd_date_edit = QtWidgets.QDateEdit() self.examd_date_edit.setEnabled(False) self.polling_label = QtWidgets.QLabel(_("Polling Database")) self.insertWidget(header_label) self.insertWidget(self.polling_label) self.adv_widget = QtWidgets.QLabel(_("No advanced options available")) self.add_advanced_widget(self.adv_widget) QtCore.QTimer.singleShot(100, self.get_data) def advise(self, message): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(400, 400) @property def accd(self): return self.accd_date_edit.date().toPyDate() @property def cmpd(self): if self.cmpd_db: return self.cmpd_date_edit.date().toPyDate() return self.accd @property def examd(self): if self.examd_db: self.examd_db return self.accd def get_data(self): accd, cmpd, examd = treatment_course.get_course_dates(self.courseno) self.polling_label.hide() self.accd_db = accd self.cmpd_db = cmpd self.examd_db = examd frame = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(frame) self.insertWidget(frame) self.accd_date_edit.setDate(accd) form_layout.addRow(_("acceptance date"), self.accd_date_edit) if cmpd: self.cmpd_date_edit.setDate(cmpd) form_layout.addRow(_("completion date"), self.cmpd_date_edit) if cmpd != accd: sync_but = QtWidgets.QPushButton( _("Set completion date to match Acceptance date")) sync_but.clicked.connect(self.sync_dates) self.insertWidget(sync_but) else: but = QtWidgets.QPushButton(_("Add Completion Date")) form_layout.addRow(but) but.clicked.connect(self.add_a_completion_date) if examd: self.examd_date_edit.setDate(examd) form_layout.addRow(_("exam date"), self.examd_date_edit) else: form_layout.addRow(QtWidgets.QLabel( _("No Exam Date on this course"))) self.accd_date_edit.dateChanged.connect(self._check_applicable) self.cmpd_date_edit.dateChanged.connect(self._check_applicable) def add_a_completion_date(self): self.advise("function not yet implemented") def sync_dates(self): self.cmpd_date_edit.setDate(self.accd) def _check_applicable(self): if self.accd <= self.examd <= self.cmpd: self.enableApply(True) else: self.enableApply(False) self.advise(_("Bad Date Sequence")) def update_db(self): ''' apply any edits (should be called if self.exec_() == True) ''' treatment_course.update_course_dates( self.accd, self.cmpd if self.cmpd_db else None, self.courseno) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/course_history_options_dialog.py0000644000175000017500000000621012710144046031071 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class CourseHistoryOptionsDialog(BaseDialog): include_estimates = False include_daybook = False def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Options Dialog")) label = WarningLabel("%s" % _("What do you wish to show?")) self.estimates_checkbox = QtWidgets.QCheckBox(_("Include Estimates")) self.estimates_checkbox.setChecked(self.include_estimates) self.estimates_checkbox.toggled.connect(self.toggle_estimates) self.daybook_checkbox = QtWidgets.QCheckBox(_("Include Daybook")) self.daybook_checkbox.setChecked(self.include_daybook) self.daybook_checkbox.toggled.connect(self.toggle_daybook) help_label = QtWidgets.QLabel( _("Leave both unchecked for courses only")) help_label.setAlignment(QtCore.Qt.AlignCenter) self.insertWidget(label) self.insertWidget(self.estimates_checkbox) self.insertWidget(self.daybook_checkbox) self.insertWidget(help_label) self.enableApply() def sizeHint(self): return QtCore.QSize(300, 400) def toggle_estimates(self, value): CourseHistoryOptionsDialog.include_estimates = value def toggle_daybook(self, value): CourseHistoryOptionsDialog.include_daybook = value openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/course_merge_dialog.py0000644000175000017500000001707212710144046026724 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import copy import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.dbtools import treatment_course from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class CourseMergeDialog(ExtendableDialog): def __init__(self, serialno, courseno1, courseno2, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) assert courseno1 > courseno2, "courses in wrong order" self.serialno = serialno self.courseno1 = courseno1 self.courseno2 = courseno2 self._merged_course = None header_label = QtWidgets.QLabel( "%s %s & %s" % (_("Merge Treatment Courses"), self.courseno1, self.courseno2)) header_label.setAlignment(QtCore.Qt.AlignCenter) self.polling_label = QtWidgets.QLabel(_("Polling Database")) self.preview_button = QtWidgets.QPushButton(_("Preview Merged Course")) self.courseno1_browser = QtWidgets.QTextBrowser() self.courseno2_browser = QtWidgets.QTextBrowser() self.preview_browser = QtWidgets.QTextBrowser() self.splitter = QtWidgets.QSplitter() self.splitter.setOrientation(QtCore.Qt.Vertical) self.insertWidget(header_label) self.insertWidget(self.polling_label) self.insertWidget(self.splitter) self.splitter.addWidget(self.courseno1_browser) self.splitter.addWidget(self.courseno2_browser) self.splitter.addWidget(self.preview_browser) self.adv_widget = QtWidgets.QLabel(_("No advanced options available")) self.add_advanced_widget(self.adv_widget) QtCore.QTimer.singleShot(100, self.get_data) def advise(self, message): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(800, 600) def get_data(self): self.tx_course1 = treatment_course.TreatmentCourse(self.serialno, self.courseno1) self.tx_course2 = treatment_course.TreatmentCourse(self.serialno, self.courseno2) self.polling_label.hide() course1_html = self.tx_course1.to_html() course2_html = self.tx_course2.to_html() self.courseno1_browser.setHtml(course1_html) self.courseno2_browser.setHtml(course2_html) if self.tx_course1.examt and self.tx_course2.examt: message = _("Courses can't be merged, both have examinations") else: message = "

    %s

    %s" % (_("Merged Course Preview"), self.merged_course.to_html() ) self.preview_browser.setText(message) sizes = [(course1_html.count("") + 1) * 300, (course1_html.count("") + 1) * 300, (message.count("") + 1) * 300] self.splitter.setSizes(sizes) LOGGER.debug(sizes) self.enableApply(self._merged_course is not None) @property def _merge_atts(self): exclusions = ("courseno", "accd", "cmpd", "examd", "examt") for att in treatment_course.CURRTRT_ATTS: if att not in exclusions: yield att @property def merged_course(self): if self._merged_course is None: new_course = copy.deepcopy(self.tx_course2) if self.tx_course1.accd < new_course.accd: new_course.accd = self.tx_course1.accd if (new_course.cmpd is not None or self.tx_course1.cmpd > new_course.cmpd): new_course.cmpd = self.tx_course1.cmpd if (new_course.examd is None or (self.tx_course1.examd and self.tx_course1.examd < new_course.examd)): new_course.examd = self.tx_course1.examd if self.tx_course1.examt > new_course.examt: new_course.examt = self.tx_course1.examt for att in self._merge_atts: value1 = new_course.__dict__[att] value2 = self.tx_course1.__dict__[att] if value1 in (None, ""): new_course.__dict__[att] = value2 elif value2 in (None, ""): pass else: new_course.__dict__[att] += value2 self._merged_course = new_course return self._merged_course def list_hashes(self): for tx_course in self.tx_course1, self.tx_course2, self.merged_course: print("TX_HASHES for course %s" % tx_course.courseno) for tx_hash in tx_course.tx_hashes: print(tx_hash) def update_db(self): ''' apply any edits (should be called if self.exec_() == True) to merge 2 courses, all treatments have to be combined, and placed into the oldest course. the newestimates table has to have the coursenumber adjusted. NOTE - old tx_hashes will not longer be generatable by the TreatmentCourseClass ''' trtchanges = "" trtvalues = [] for trt_att in treatment_course.CURRTRT_ATTS: if trt_att == "courseno": continue value = self.merged_course.__dict__[trt_att] existing = self.tx_course2.__dict__[trt_att] if value != existing: trtchanges += '%s = %%s ,' % trt_att trtvalues.append(value) self.list_hashes() if treatment_course.update_course(trtchanges.rstrip(","), trtvalues, self.serialno, self.courseno2): treatment_course.update_estimate_courseno(self.courseno1, self.courseno2) treatment_course.delete_course(self.serialno, self.courseno1) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/crown_choice_dialog.py0000644000175000017500000001105112710144046026676 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog STATIC_LIST = [] for shortcut, description in (("CR,PJ", _("Porcelain Jacket")), ("CR,GO", _("Gold")), ("CR,V1", _("Porcelain/Metal")), ("CR,LAVA", _("Lava")), ("CR,OPAL", _("Opalite")), ("CR,EMAX", _("Emax")), ("CR,EVER", _("Everest")), ("CR,SS", _("Stainless")), ("CR,SR", _("Resin")), ("CR,OT", _("Other")),): crown_chart_button = namedtuple('CrownType', ("shortcut", "description", "tooltip")) crown_chart_button.description = description crown_chart_button.tooltip = "" crown_chart_button.shortcut = shortcut STATIC_LIST.append(crown_chart_button) class CrownChoiceDialog(ExtendableDialog): def __init__(self, static, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Crown Choice Dialog")) self.om_gui = parent self.chosen_shortcut = None scroll_area = QtWidgets.QScrollArea() frame = QtWidgets.QFrame() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.but_layout = QtWidgets.QGridLayout(frame) self.insertWidget(scroll_area) self.apply_but.hide() if static: self.more_but.hide() self.add_buttons(STATIC_LIST) else: all_crowns_but = QtWidgets.QPushButton( _("Show Crowns types from all feescales")) all_crowns_but.clicked.connect(self._show_all_crowns) self.add_advanced_widget(all_crowns_but) self.add_buttons( self.om_gui.pt.fee_table.ui_lists["crown_buttons"]) def sizeHint(self): return QtCore.QSize(400, 500) def add_buttons(self, crown_chart_buttons): while self.but_layout.count(): widget_item = self.but_layout.takeAt(0) widget_item.widget().setParent(None) row = 0 for row, crown_button in enumerate(crown_chart_buttons): but = QtWidgets.QPushButton(crown_button.description) but.setToolTip(crown_button.tooltip) but.clicked.connect( partial(self.but_clicked, crown_button.shortcut)) self.but_layout.addWidget(but, row // 2, row % 2) self.but_layout.setRowStretch((row + 2) // 2, 100) def _show_all_crowns(self): self.add_buttons(localsettings.FEETABLES.ui_crown_chart_buttons) self.show_extension(False) def but_clicked(self, shortcut): self.chosen_shortcut = shortcut self.accept() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/database_connection_progress_dialog.py0000644000175000017500000000756312721074161032162 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar import connect from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.customwidgets.waitwidget import WaitWidget from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class DatabaseConnectionProgressDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Connection Progress Dialog")) self.top_label = WarningLabel( _("Establishing a database connection... please wait!")) wait_widget = WaitWidget(self) self.insertWidget(self.top_label) self.insertWidget(wait_widget) self.apply_but.hide() self.cancel_but.setText(_("Quit OpenMolar")) connect.params.signaller.connection_signal.connect(self.is_connected) def sizeHint(self): return QtCore.QSize(400, 400) def is_connected(self): LOGGER.debug("DCPD is_connected called by signal") if connect.params.has_connection: self.accept() LOGGER.info("DCPD connection established") else: if not self.isVisible(): self.exec_() def exec_(self): if connect.params.has_connection: LOGGER.debug("connection established, no need for DCPDialog") self.accept() return True else: QtCore.QTimer.singleShot(100, connect.connect) return BaseDialog.exec_(self) def reject(self): LOGGER.info("Forced quit - no database connection") try: connect.params.signaller.connection_signal.disconnect( self.is_connected) except TypeError: pass app = QtWidgets.QApplication.instance() connect.params.connection_abandoned = True QtCore.QTimer.singleShot(4000, app.closeAllWindows) QtWidgets.QMessageBox.warning( self, _("Closing"), _("No Database Connection - Closing OpenMolar")) BaseDialog.reject(self) app.closeAllWindows() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) dl = DatabaseConnectionProgressDialog() dl.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py0000644000175000017500000001230012710144046026667 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.dbtools import daybook from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") KEYS = ("diagn", "perio", "anaes", "misc", "ndu", "ndl", "odu", "odl", "other") class DaybookEditDialog(ExtendableDialog): def __init__(self, daybook_id, feesa=None, feesb=None, parent=None): ExtendableDialog.__init__(self, parent) self.daybook_id = daybook_id self.orig_values = [] header_label = QtWidgets.QLabel( "%s %s" % (_("Inspecting daybook row"), self.daybook_id)) header_label.setAlignment(QtCore.Qt.AlignCenter) frame = QtWidgets.QFrame() form = QtWidgets.QFormLayout(frame) self.line_edits = {} for key in KEYS: self.line_edits[key] = QtWidgets.QLineEdit() self.chart_edit = QtWidgets.QTextEdit() self.chart_edit.setWordWrapMode(QtGui.QTextOption.NoWrap) form.addRow(_("Diagnosis"), self.line_edits[KEYS[0]]) form.addRow(_("Perio"), self.line_edits[KEYS[1]]) form.addRow(_("Anaesthetics"), self.line_edits[KEYS[2]]) form.addRow(_("Misc"), self.line_edits[KEYS[3]]) form.addRow(_("New Denture (upper)"), self.line_edits[KEYS[4]]) form.addRow(_("New Denture (lower)"), self.line_edits[KEYS[5]]) form.addRow(_("Other Denture (upper)"), self.line_edits[KEYS[6]]) form.addRow(_("Other Denture (lower)"), self.line_edits[KEYS[7]]) form.addRow(_("Other Treatment"), self.line_edits[KEYS[8]]) form.addRow(_("Chart Treatment"), self.chart_edit) self.insertWidget(header_label) self.insertWidget(frame) self.adv_widget = QtWidgets.QLabel(_("No advanced options available")) self.add_advanced_widget(self.adv_widget) # self.remove_spacer() QtCore.QTimer.singleShot(100, self.get_data) def advise(self, message): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(400, 400) def get_data(self): row = daybook.get_treatments(self.daybook_id) for i, value in enumerate(row): try: line_edit = self.line_edits[KEYS[i]] line_edit.setText(value.strip(" ")) self.orig_values.append("%s " % value) line_edit.textChanged.connect(self._check_applicable) except IndexError: value = value.decode("utf8").strip(" %s" % chr(0)) self.orig_values.append("%s " % value) self.chart_edit.setText(value.replace(" ", "\n")) self.chart_edit.textChanged.connect(self._check_applicable) def _check_applicable(self): for i, value in enumerate(self.new_values()): if value != self.orig_values[i]: self.enableApply() return self.enableApply(False) @property def new_chart_value(self): newval = "" for line in str(self.chart_edit.document().toPlainText()).split("\n"): if line.strip(" ") != "": newval += "%s " % line.strip(" ") return newval.upper() def new_values(self): for key in KEYS: val = self.line_edits[key].text() yield "" if val == "" else "%s " % val.upper() yield self.new_chart_value def update_treatments(self): ''' apply any edits (should be called if self.exec_() == True) ''' daybook.update_treatments(self.daybook_id, self.new_values()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/daybook_item_dialog.py0000644000175000017500000001602412710144046026707 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import daybook from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.dialogs import permissions LOGGER = logging.getLogger("openmolar") class DaybookItemAdvancedWidget(QtWidgets.QWidget): update_totals_signal = QtCore.pyqtSignal() update_fee_signal = QtCore.pyqtSignal() update_ptfee_signal = QtCore.pyqtSignal() delete_row_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) layout = QtWidgets.QVBoxLayout(self) but1 = QtWidgets.QPushButton( _("Update the daybook row with these new Totals")) but2 = QtWidgets.QPushButton( _("Update the daybook row with Fee Total Only")) but3 = QtWidgets.QPushButton( _("Update the daybook row with Charge Total Only")) but4 = QtWidgets.QPushButton( _("Delete this row from the daybook")) layout.addWidget(but1) layout.addWidget(but2) layout.addWidget(but3) layout.addStretch() layout.addWidget(but4) but1.clicked.connect(self.update_totals_signal.emit) but2.clicked.connect(self.update_fee_signal.emit) but3.clicked.connect(self.update_ptfee_signal.emit) but4.clicked.connect(self.delete_row_signal.emit) self.update_buts = (but1, but2, but3) def disable_fee_updates(self): for but in self.update_buts: but.setEnabled(False) class DaybookItemDialog(ExtendableDialog): def __init__(self, daybook_id, feesa=None, feesb=None, parent=None): ExtendableDialog.__init__(self, parent) self.daybook_id = daybook_id self.feesa = feesa self.feesb = feesb header_label = QtWidgets.QLabel( "%s %s" % (_("Inspecting daybook row"), self.daybook_id)) header_label.setAlignment(QtCore.Qt.AlignCenter) self.feesa_label = QtWidgets.QLabel() self.feesa_label.setStyleSheet("color:red;") self.feesb_label = QtWidgets.QLabel() self.feesb_label.setStyleSheet("color:red;") self.apply_but.setText(_("Ok")) self.cancel_but.hide() self.enableApply() self.insertWidget(header_label) self.web_view = QtWidgets.QTextBrowser() self.insertWidget(self.web_view) self.insertWidget(self.feesa_label) self.insertWidget(self.feesb_label) self.adv_widget = DaybookItemAdvancedWidget() self.add_advanced_widget(self.adv_widget) self.total_fee = 0 self.total_ptfee = 0 self.adv_widget.update_totals_signal.connect(self.update_totals) self.adv_widget.update_fee_signal.connect(self.update_fee) self.adv_widget.update_ptfee_signal.connect(self.update_ptfee) self.adv_widget.delete_row_signal.connect(self.delete_row) QtCore.QTimer.singleShot(100, self.get_data) def advise(self, message): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(600, 600) def get_data(self): rows = daybook.inspect_item(self.daybook_id) if rows == (): html = _("No Information found in estimates for this daybook item") self.adv_widget.disable_fee_updates() else: html = '''''' % ( _("Description"), _("Fee"), _("Charge") ) for description, fee, ptfee in rows: self.total_fee += fee self.total_ptfee += ptfee html += '''''' % ( description, localsettings.formatMoney(fee), localsettings.formatMoney(ptfee) ) html += '''''' % ( _("TOTAL"), localsettings.formatMoney(self.total_fee), localsettings.formatMoney(self.total_ptfee) ) if self.feesa is not None and self.total_fee != self.feesa: self.feesa_label.setText(_("Fee Differs")) if self.feesb is not None and self.total_ptfee != self.feesb: self.feesb_label.setText(_("Charge Differs")) self.web_view.setHtml(html) def update_totals(self): if daybook.update_row_fees( self.daybook_id, self.total_fee, self.total_ptfee): self.advise(_("Successfully applied changes")) else: self.advise(_("No changes made")) def update_fee(self): if daybook.update_row_fee(self.daybook_id, self.total_fee): self.advise(_("Successfully applied change")) else: self.advise(_("No changes made")) def update_ptfee(self): if daybook.update_row_ptfee(self.daybook_id, self.total_ptfee): self.advise(_("Successfully applied change")) else: self.advise(_("No changes made")) def delete_row(self): if permissions.granted(self) and daybook.delete_row(self.daybook_id): self.advise(_("Successfully deleted row")) else: self.advise(_("No changes made")) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/denture_dialog.py0000644000175000017500000000705712710144046025715 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a dialog for denture planning. ''' import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.dialogs.alter_denture_dialog import AlterDentureDialog from openmolar.qt4gui.dialogs.new_denture_dialog import NewDentureDialog LOGGER = logging.getLogger("openmolar") class DentureDialog(BaseDialog): ''' A dialog for denture planning ''' chosen_treatments = [] def __init__(self, om_gui=None): BaseDialog.__init__(self, om_gui) self.om_gui = om_gui message = _("Denture Treatment Dialog") self.setWindowTitle(message) self.header_label = QtWidgets.QLabel(message) self.header_label.setAlignment(QtCore.Qt.AlignCenter) frame = QtWidgets.QFrame() layout = QtWidgets.QHBoxLayout(frame) new_but = QtWidgets.QPushButton(_("Plan New Denture(s)")) new_but.setMinimumSize(QtCore.QSize(150, 150)) alt_but = QtWidgets.QPushButton(_("Alter an Existing Denture")) alt_but.setMinimumSize(QtCore.QSize(150, 150)) layout.addWidget(new_but) layout.addWidget(alt_but) self.insertWidget(self.header_label) self.insertWidget(frame) self.apply_but.hide() new_but.clicked.connect(self.new_denture) alt_but.clicked.connect(self.alt_denture) def sizeHint(self): return QtCore.QSize(400, 400) def new_denture(self): self.hide() chosen_dialog = NewDentureDialog(self) if chosen_dialog.exec_(): self.chosen_treatments = list(chosen_dialog.chosen_treatments) self.accept() else: self.reject() def alt_denture(self): self.hide() chosen_dialog = AlterDentureDialog(self) if chosen_dialog.exec_(): self.chosen_treatments = list(chosen_dialog.chosen_treatments) self.accept() else: self.reject() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/dialog_collection.py0000644000175000017500000001652213015432051026372 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This is a convenience module so that maingui code is cleaner ''' from openmolar.qt4gui.dialogs.saveMemo import SaveMemoDialog from openmolar.qt4gui.dialogs.select_language import LanguageDialog from openmolar.qt4gui.dialogs.newBPE import BPE_Dialog from openmolar.qt4gui.dialogs.assistant_select_dialog \ import AssistantSelectDialog from openmolar.qt4gui.dialogs.clinician_select_dialog \ import ClinicianSelectDialog from openmolar.qt4gui.dialogs.duplicate_receipt_dialog \ import DuplicateReceiptDialog from openmolar.qt4gui.dialogs.save_discard_cancel \ import SaveDiscardCancelDialog from openmolar.qt4gui.dialogs.medical_history_dialog \ import MedicalHistoryDialog from openmolar.qt4gui.dialogs.choose_tooth_dialog \ import ChooseToothDialog from openmolar.qt4gui.dialogs.exam_wizard import ExamWizard from openmolar.qt4gui.dialogs.hygTreatWizard import HygTreatWizard from openmolar.qt4gui.dialogs.recall_dialog import RecallDialog from openmolar.qt4gui.dialogs.child_smile_dialog import ChildSmileDialog from openmolar.qt4gui.dialogs.alter_todays_notes import AlterTodaysNotesDialog from openmolar.qt4gui.dialogs.find_patient_dialog import FindPatientDialog from openmolar.qt4gui.dialogs.family_manage_dialog import LoadRelativesDialog from openmolar.qt4gui.dialogs.auto_address_dialog import AutoAddressDialog from openmolar.qt4gui.dialogs.family_manage_dialog import FamilyManageDialog from openmolar.qt4gui.dialogs.nhs_forms_config_dialog import \ NHSFormsConfigDialog from openmolar.qt4gui.dialogs.advanced_tx_planning_dialog \ import AdvancedTxPlanningDialog from openmolar.qt4gui.dialogs.document_dialog import DocumentDialog from openmolar.qt4gui.dialogs.account_severity_dialog \ import AccountSeverityDialog from openmolar.qt4gui.dialogs.daybook_item_dialog import DaybookItemDialog from openmolar.qt4gui.dialogs.daybook_edit_dialog import DaybookEditDialog from openmolar.qt4gui.dialogs.course_edit_dialog import CourseEditDialog from openmolar.qt4gui.dialogs.course_merge_dialog import CourseMergeDialog from openmolar.qt4gui.dialogs.estimate_edit_dialog import EstimateEditDialog from openmolar.qt4gui.dialogs.course_history_options_dialog \ import CourseHistoryOptionsDialog from openmolar.qt4gui.dialogs.course_consistency_dialog \ import CourseConsistencyDialog from openmolar.qt4gui.dialogs.edit_treatment_dialog import EditTreatmentDialog from openmolar.qt4gui.dialogs.login_dialog import LoginDialog from openmolar.qt4gui.dialogs.edit_referral_centres_dialog \ import EditReferralCentresDialog from openmolar.qt4gui.dialogs.permissions import ResetSupervisorPasswordDialog from openmolar.qt4gui.dialogs.first_run_dialog import FirstRunDialog from openmolar.qt4gui.dialogs.add_user_dialog import AddUserDialog from openmolar.qt4gui.dialogs.add_clinician_dialog import AddClinicianDialog from openmolar.qt4gui.dialogs.initial_check_dialog import InitialCheckDialog from openmolar.qt4gui.dialogs.edit_practice_dialog import EditPracticeDialog from openmolar.qt4gui.dialogs.advanced_record_management_dialog \ import AdvancedRecordManagementDialog from openmolar.qt4gui.dialogs.correspondence_dialog import CorrespondenceDialog from openmolar.qt4gui.dialogs.edit_standard_letters_dialog \ import EditStandardLettersDialog from openmolar.qt4gui.dialogs.medical_form_checked_dialog \ import MedFormCheckDialog from openmolar.qt4gui.dialogs.appt_prefs_dialog import ApptPrefsDialog from openmolar.qt4gui.dialogs.cancel_appointment_dialog \ import CancelAppointmentDialog from openmolar.qt4gui.dialogs.bookend_dialog import BookendDialog from openmolar.qt4gui.dialogs.check_version_dialog import CheckVersionDialog from openmolar.qt4gui.dialogs.database_connection_progress_dialog import \ DatabaseConnectionProgressDialog from openmolar.qt4gui.dialogs.account_letter_dialog import AccountLetterDialog from openmolar.qt4gui.dialogs.advanced_names_dialog import AdvancedNamesDialog from openmolar.qt4gui.dialogs.patient_location_dialog import \ PatientLocationDialog, ClearLocationsDialog __all__ = ['AccountLetterDialog', 'AccountSeverityDialog', 'AddClinicianDialog', 'AddUserDialog', 'AdvancedNamesDialog', 'AdvancedRecordManagementDialog', 'AdvancedTxPlanningDialog', 'AlterTodaysNotesDialog', 'ApptPrefsDialog', 'AssistantSelectDialog', 'AutoAddressDialog', 'BookendDialog', 'BPE_Dialog', 'CancelAppointmentDialog', 'CheckVersionDialog', 'ChildSmileDialog', 'ChooseToothDialog', 'ClearLocationsDialog', 'ClinicianSelectDialog', 'CorrespondenceDialog', 'CourseConsistencyDialog', 'CourseEditDialog', 'CourseMergeDialog', 'CourseHistoryOptionsDialog', 'DatabaseConnectionProgressDialog', 'DaybookItemDialog', 'DaybookEditDialog', 'DocumentDialog', 'DuplicateReceiptDialog', 'EditPracticeDialog', 'EditTreatmentDialog', 'EditReferralCentresDialog', 'EditStandardLettersDialog', 'EstimateEditDialog', 'ExamWizard', 'FamilyManageDialog', 'FindPatientDialog', 'FirstRunDialog', 'HygTreatWizard', 'InitialCheckDialog', 'LanguageDialog', 'LoadRelativesDialog', 'LoginDialog', 'MedicalHistoryDialog', 'MedFormCheckDialog', 'NHSFormsConfigDialog', 'PatientLocationDialog', 'ResetSupervisorPasswordDialog', 'RecallDialog', 'SaveDiscardCancelDialog', 'SaveMemoDialog', ] if __name__ == "__main__": print("All imports suceeded!") openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/document_dialog.py0000644000175000017500000001476012710144046026064 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import os from xml.dom import minidom from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings, urls from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") def _null_func(): return None class _FileListWidget(QtWidgets.QScrollArea): def __init__(self, files, parent=None): assert files != [], "no files passed to FileListWidget" QtWidgets.QScrollArea.__init__(self, parent) self.files = files self.labels = files self.radio_buts = [] self.layout_widgets() self.radio_buts[0].setChecked(True) def layout_widgets(self): frame = QtWidgets.QFrame(self) layout = QtWidgets.QVBoxLayout(frame) self.setWidget(frame) self.setWidgetResizable(True) for label in self.labels: rb = QtWidgets.QRadioButton(label) layout.addWidget(rb) self.radio_buts.append(rb) def selected_file(self): for i, rb in enumerate(self.radio_buts): if rb.isChecked(): return self.files[i] def sizeHint(self): return QtCore.QSize(200, 400) class _LabelledFileListWidget(_FileListWidget): def __init__(self, nodelist, parent=None): QtWidgets.QScrollArea.__init__(self, parent) self.files = [] self.labels = [] self.radio_buts = [] for doc_node in nodelist: self.files.append(doc_node.getAttribute("filename")) self.labels.append(doc_node.getAttribute("title")) assert self.files != [], "no files passed to _LabelledFileListWidget" self.layout_widgets() class DocumentDialog(ExtendableDialog): def __init__(self, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) title = _("Openmolar Documents Dialog") self.setWindowTitle(title) label = QtWidgets.QLabel( "%s" % _("Please choose a document to open")) label.setAlignment(QtCore.Qt.AlignCenter) self.chosen_document = None message = '

    %s
    %s

    ' % ( _("For help configuring this feature, see"), urls.DOCUMENT_HELP, urls.DOCUMENT_HELP) advanced_label = QtWidgets.QLabel(message) advanced_label.setOpenExternalLinks(True) self.add_advanced_widget(advanced_label) files = os.listdir(localsettings.DOCS_DIRECTORY) if files == []: widg = QtWidgets.QLabel("

    %s %s


    %s" % ( _("You have no documents stored in"), localsettings.DOCS_DIRECTORY, message)) widg.setAlignment(QtCore.Qt.AlignCenter) widg.setOpenExternalLinks(True) widg.selected_file = _null_func elif "docs.xml" in files: dom = None try: control_f = os.path.join( localsettings.DOCS_DIRECTORY, "docs.xml") dom = minidom.parse(control_f) doc_node = dom.getElementsByTagName("documents")[0] widg = QtWidgets.QTabWidget() for group in doc_node.getElementsByTagName("group"): docs = group.getElementsByTagName("document") group_widg = _LabelledFileListWidget(docs) tab = widg.addTab(group_widg, group.getAttribute("heading")) group_widg.radio_buts[0].setChecked(True) widg.selected_file = widg.currentWidget().selected_file except: LOGGER.exception("unable to parse '%s'", control_f) widg = QtWidgets.QLabel(_("docs.xml is not parseable")) else: # self.remove_spacer() widg = _FileListWidget(files) self.apply_but.setText(_("Open &File")) self.enableApply(bool(widg.selected_file())) self.insertWidget(label) self.insertWidget(widg) self._widg = widg @property def widg(self): try: return self._widg.currentWidget() except AttributeError: return self._widg def sizeHint(self): return QtCore.QSize(400, 350) def _open_document(self): ''' open the chosen document ''' doc = self.widg.selected_file() if doc is None: return try: doc = os.path.abspath( os.path.join(localsettings.DOCS_DIRECTORY, doc)) LOGGER.info("opening %s" % doc) localsettings.openPDF(doc) except Exception: message = _("Error opening PDF file") LOGGER.exception(message) self.parent().advise(message, 2) def exec_(self): if ExtendableDialog.exec_(self): self._open_document() return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py0000644000175000017500000001625312710160267027735 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import docsprinted from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.printing import receiptPrint from openmolar import connect LOGGER = logging.getLogger("openmolar") RECALL_METHODS = ["post", "email", "sms"] class DuplicateReceiptDialog(BaseDialog): duplicate_printed = False def __init__(self, patient, parent): BaseDialog.__init__(self, parent) self.pt = patient patient_label = QtWidgets.QLabel( "%s
    %s" % (_("Duplicate receipts for Patient"), patient.name_id)) patient_label.setAlignment(QtCore.Qt.AlignCenter) self.no_receipts_found_label = QtWidgets.QLabel( _("No previous receipts found!")) self.prev_receipts_groupbox = QtWidgets.QGroupBox( _("Reprint an existing receipt")) self.prev_buts_layout = QtWidgets.QVBoxLayout( self.prev_receipts_groupbox) self.prev_receipts_groupbox.hide() new_dup_receipt_groupbox = QtWidgets.QGroupBox( _("Generate a Duplicate receipt")) self.dup_date_edit = QtWidgets.QDateEdit() self.dup_date_edit.setDate(QtCore.QDate.currentDate()) self.amount_spinbox = QtWidgets.QDoubleSpinBox() self.amount_spinbox.setMaximum(10000) icon = QtGui.QIcon(localsettings.printer_png) print_dup_button = QtWidgets.QPushButton(icon, "Print") print_dup_button.clicked.connect(self.print_duplicate) layout = QtWidgets.QFormLayout(new_dup_receipt_groupbox) layout.addRow(_("Date"), self.dup_date_edit) layout.addRow(_("Amount"), self.amount_spinbox) layout.addRow(print_dup_button) self.insertWidget(patient_label) self.insertWidget(self.no_receipts_found_label) self.insertWidget(self.prev_receipts_groupbox) self.insertWidget(new_dup_receipt_groupbox) self.apply_but.hide() self.prev_receipts = {} QtCore.QTimer.singleShot(0, self.get_previous_receipts) def sizeHint(self): return QtCore.QSize(400, 500) def get_previous_receipts(self): query = '''select printdate, ix from newdocsprinted where serialno = %s and docname like "%%receipt (pdf)"''' db = connect.connect() cursor = db.cursor() cursor.execute(query, (self.pt.serialno,)) rows = cursor.fetchall() cursor.close() for printdate, ix in rows: self.prev_receipts[ix] = printdate self.add_buttons() def add_buttons(self): self.prev_receipts_groupbox.setVisible(self.prev_receipts != {}) self.no_receipts_found_label.setVisible(self.prev_receipts == {}) for ix in sorted(self.prev_receipts.keys())[:3]: printdate = self.prev_receipts[ix] but = QtWidgets.QPushButton(localsettings.readableDate(printdate)) but.ix = ix but.clicked.connect(self.print_existing) self.prev_buts_layout.addWidget(but) no_receipts = len(self.prev_receipts) if no_receipts > 3: widget = QtWidgets.QWidget(self) label = QtWidgets.QLabel("%d more receipts" % (no_receipts - 3)) but = QtWidgets.QPushButton(_("show")) but.clicked.connect(self.show_all_prev_receipts) layout = QtWidgets.QHBoxLayout(widget) layout.addWidget(label) layout.addWidget(but) self.prev_buts_layout.addWidget(widget) def show_all_prev_receipts(self): dl = BaseDialog(self) scroll_area = QtWidgets.QScrollArea() frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(frame) for ix in sorted(self.prev_receipts.keys())[3:]: printdate = self.prev_receipts[ix] but = QtWidgets.QPushButton(localsettings.readableDate(printdate)) but.ix = ix but.clicked.connect(self.print_existing) layout.addWidget(but) scroll_area.setWidgetResizable(True) scroll_area.setWidget(frame) dl.insertWidget(scroll_area) dl.exec_() def print_existing(self): ix = self.sender().ix print("reprint document %s" % ix) try: data, version = docsprinted.getData(ix) f = open(localsettings.TEMP_PDF, "wb") f.write(data) f.close() localsettings.openPDF() except Exception: LOGGER.exception("view PDF error") QtWidgets.QMessageBox.warning(self, "error", _("error reviewing PDF file")) def print_duplicate(self): amount = self.amount_spinbox.value() myreceipt = receiptPrint.Receipt(self.parent()) myreceipt.setProps(self.pt.title, self.pt.fname, self.pt.sname, self.pt.addr1, self.pt.addr2, self.pt.addr3, self.pt.town, self.pt.county, self.pt.pcde) total = localsettings.pencify(str(amount)) myreceipt.total = total myreceipt.receivedDict = {_("Professional Services"): total} myreceipt.isDuplicate = True myreceipt.dupdate = self.dup_date_edit.date() if myreceipt.print_(): self.pt.addHiddenNote("printed", "%s %.02f" % ( _("duplicate receipt for"), amount)) self.duplicate_printed = True self.accept() def apply_changed(self): print("applying changes") openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/edit_practice_dialog.py0000644000175000017500000001010212710144046027027 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.dbtools import db_settings LOGGER = logging.getLogger("openmolar") class EditPracticeDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Edit Practice Address Dialog")) self.top_label = WarningLabel("%s
    %s" % ( _('Edit the Practice Name and/or address.'), _("This information is used on receipts and appointment slips."), )) self.practice_line_edit = QtWidgets.QLineEdit() self.practice_line_edit.setText(localsettings.PRACTICE_NAME) frame = QtWidgets.QFrame(self) layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Practice Name"), self.practice_line_edit) self.addr_line_edits = [] for i in range(7): le = QtWidgets.QLineEdit() self.addr_line_edits.append(le) layout.addRow("%s %d" % (_("Address Line"), i + 1), le) try: le.setText(localsettings.PRACTICE_ADDRESS[i + 1]) except IndexError: pass self.insertWidget(self.top_label) self.insertWidget(frame) self.enableApply() def sizeHint(self): return QtCore.QSize(500, 500) def showEvent(self, event): self.practice_line_edit.setFocus() @property def practice_name(self): return str(self.practice_line_edit.text()).strip(" ") @property def practice_address(self): address_lines = [] for le in self.addr_line_edits: line_ = str(le.text()).strip(" ") if line_ != "": address_lines.append(line_) return "|".join(address_lines) def apply(self): changed = False if self.practice_name != localsettings.PRACTICE_NAME: changed = changed or db_settings.insert_practice_name( self.practice_name) if self.practice_address != localsettings.PRACTICE_ADDRESS: changed = changed or db_settings.insert_practice_address( self.practice_address) if changed: localsettings.initiate() return True def exec_(self): if BaseDialog.exec_(self): return self.apply() return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py0000644000175000017500000002473112710144046030577 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.dbtools import referral from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class ListModel(QtCore.QAbstractListModel): ''' A simple model to provide an index for the dialog ''' def __init__(self, parent=None): QtCore.QAbstractListModel.__init__(self, parent) self.labels = [] def rowCount(self, parent=QtCore.QModelIndex()): return len(self.labels) def data(self, index, role): if not index.isValid(): pass elif role == QtCore.Qt.DisplayRole: return self.labels[index.row()] elif role == QtCore.Qt.DecorationRole: return QtGui.QIcon(":icons/pencil.png") def clear(self): self.beginResetModel() self.labels = [] self.endResetModel() def add_item(self, label): self.beginResetModel() self.labels.append(label) self.endResetModel() class EditReferralCentresDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) message = _("Edit Referral Centres") self.setWindowTitle(message) self._referral_centres = None self.deleted_centres = [] header_label = QtWidgets.QLabel("%s" % message) self.list_model = ListModel() self.list_view = QtWidgets.QListView() self.list_view.setModel(self.list_model) icon = QtGui.QIcon(":/eraser.png") delete_but = QtWidgets.QPushButton(icon, "") delete_but.setToolTip(_("Delete the currently selected Centre")) delete_but.setMaximumWidth(80) icon = QtGui.QIcon(":/add_user.png") add_but = QtWidgets.QPushButton(icon, "") add_but.setToolTip(_("Add a New Centre")) add_but.setMaximumWidth(80) left_frame = QtWidgets.QFrame() layout = QtWidgets.QGridLayout(left_frame) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.list_view, 0, 0, 1, 3) layout.addWidget(delete_but, 1, 0) layout.addWidget(add_but, 1, 1) left_frame.setMaximumWidth(250) right_frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(right_frame) layout.setContentsMargins(0, 0, 0, 0) self.description_line_edit = QtWidgets.QLineEdit() self.greeting_line_edit = QtWidgets.QLineEdit() self.text_edit = QtWidgets.QTextEdit() layout.addRow(_("Description"), self.description_line_edit) layout.addRow(_("Greeting"), self.greeting_line_edit) layout.addRow(_("Address"), self.text_edit) splitter = QtWidgets.QSplitter() splitter.addWidget(left_frame) splitter.addWidget(right_frame) splitter.setSizes([1, 10]) self.insertWidget(header_label) self.insertWidget(splitter) self.list_view.pressed.connect(self.show_data) self.cancel_but.setText(_("Close")) self.apply_but.setText(_("Apply Changes")) self.set_check_on_cancel(True) self.description_line_edit.editingFinished.connect( self.description_edited) self.signals() add_but.clicked.connect(self.add_centre) delete_but.clicked.connect(self.remove_centre) self.orig_data = [] QtCore.QTimer.singleShot(100, self.load_existing) # self.enableApply() def sizeHint(self): return QtCore.QSize(800, 500) def signals(self, connect=True): for signal in (self.description_line_edit.textChanged, self.greeting_line_edit.textChanged, self.text_edit.textChanged): if connect: signal.connect(self.update_centre) else: signal.disconnect(self.update_centre) @property def referral_centres(self): if self._referral_centres is None: self._referral_centres = [] for centre in referral.get_referral_centres(): self._referral_centres.append(centre) self.orig_data.append(str(centre)) return self._referral_centres def load_existing(self, row=0): if self.referral_centres == []: return self.signals(False) self.list_model.clear() for ref_centre in self.referral_centres: if ref_centre not in self.deleted_centres: self.list_model.add_item(ref_centre.description) index = self.list_model.createIndex(row, 0) self.list_view.setCurrentIndex(index) self.signals() self.show_data(index) def show_data(self, index): self.signals(False) centre = self.current_centre self.description_line_edit.setText(centre.description) self.greeting_line_edit.setText(centre.greeting) address = "\n".join( [a for a in (centre.addr1, centre.addr2, centre.addr3, centre.addr4, centre.addr5, centre.addr6, centre.addr7)] ) self.text_edit.setText(address) self.signals() @property def current_row(self): return self.list_view.currentIndex().row() @property def current_centre(self): i = -1 for ref_centre in self.referral_centres: if ref_centre not in self.deleted_centres: i += 1 if i == self.current_row: return ref_centre @property def description(self): ''' return the current description text ''' return self.description_line_edit.text() @property def greeting(self): ''' return the current greeting text ''' return self.greeting_line_edit.text() @property def address(self): lines = str(self.text_edit.toPlainText()).split("\n") while len(lines) < 8: lines.append("") return lines def add_centre(self): LOGGER.debug("add_centre") if self.referral_centres == []: centre = referral.ReferralCentre( hash(0), _("Example Referral Centre"), _("Dear Sir/Madam"), _("My Local Hospital"), _("Main Street"), _("My Town"), "", "", "", "") else: centre = referral.ReferralCentre( hash(len(self.referral_centres)), _("New"), "", "", "", "", "", "", "", "") self.referral_centres.append(centre) rowno = len(self.referral_centres) - len(self.deleted_centres) - 1 self.load_existing(rowno) self.check_for_changes() def remove_centre(self): if len(self.referral_centres) < 2: QtWidgets.QMessageBox.warning( self, _("Warning"), _("You should have at least one referral centre " "in the database")) return self.deleted_centres.append(self.current_centre) self.load_existing() self.check_for_changes() def update_centre(self): ix = self.current_centre.ix centre = referral.ReferralCentre(ix, self.description, self.greeting, self.address[0], self.address[1], self.address[2], self.address[3], self.address[4], self.address[5], self.address[6], ) self._referral_centres[self.current_row] = centre self.check_for_changes() def check_for_changes(self): if self.deleted_centres or self.new_centres: self.dirty = True else: for i, centre in enumerate(self.referral_centres): if self.orig_data[i] != str(centre): self.dirty = True break self.enableApply(self.dirty) def description_edited(self): rowno = self.current_row self.load_existing(rowno) def new_centres(self): return self.referral_centres[len(self.orig_data):] def updated_centres(self): for i in range(len(self.orig_data)): centre = self.referral_centres[i] if (self.orig_data[i] != str(centre) and centre not in self.deleted_centres): yield centre def exec_(self): if BaseDialog.exec_(self): referral.update_centres(self.updated_centres()) referral.insert_centres(self.new_centres()) referral.delete_centres(self.deleted_centres) return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py0000644000175000017500000002436212710144046030614 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import Qsci from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.dbtools import standard_letter from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class ListModel(QtCore.QAbstractListModel): ''' A simple model to provide an index for the dialog ''' def __init__(self, parent=None): QtCore.QAbstractListModel.__init__(self, parent) self.labels = [] def rowCount(self, parent=QtCore.QModelIndex()): return len(self.labels) def data(self, index, role): if not index.isValid(): pass elif role == QtCore.Qt.DisplayRole: return self.labels[index.row()] elif role == QtCore.Qt.DecorationRole: return QtGui.QIcon(":icons/pencil.png") def clear(self): self.beginResetModel() self.labels = [] self.endResetModel() def add_item(self, label): self.beginResetModel() self.labels.append(label) self.endResetModel() class EditStandardLettersDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent, remove_stretch=True) message = _("Edit Standard Letters") self.setWindowTitle(message) self._standard_letters = None self.deleted_letters = [] header_label = QtWidgets.QLabel("%s" % message) self.list_model = ListModel() self.list_view = QtWidgets.QListView() self.list_view.setModel(self.list_model) icon = QtGui.QIcon(":/eraser.png") delete_but = QtWidgets.QPushButton(icon, "") delete_but.setToolTip(_("Delete the currently selected letter")) delete_but.setMaximumWidth(80) icon = QtGui.QIcon(":/add_user.png") add_but = QtWidgets.QPushButton(icon, "") add_but.setToolTip(_("Add a New Letter")) add_but.setMaximumWidth(80) left_frame = QtWidgets.QFrame() layout = QtWidgets.QGridLayout(left_frame) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.list_view, 0, 0, 1, 3) layout.addWidget(delete_but, 1, 0) layout.addWidget(add_but, 1, 1) left_frame.setMaximumWidth(250) right_frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(right_frame) layout.setContentsMargins(0, 0, 0, 0) self.description_line_edit = QtWidgets.QLineEdit() self.text_edit = Qsci.QsciScintilla() self.text_edit.setLexer(Qsci.QsciLexerHTML()) self.footer_text_edit = Qsci.QsciScintilla() self.footer_text_edit.setLexer(Qsci.QsciLexerHTML()) layout.addRow(_("Desctription"), self.description_line_edit) layout.addRow(_("Body Text"), self.text_edit) layout.addRow(_("Footer"), self.footer_text_edit) splitter = QtWidgets.QSplitter() splitter.addWidget(left_frame) splitter.addWidget(right_frame) splitter.setSizes([1, 10]) self.insertWidget(header_label) self.insertWidget(splitter) self.list_view.pressed.connect(self.show_data) self.cancel_but.setText(_("Close")) self.apply_but.setText(_("Apply Changes")) self.set_check_on_cancel(True) self.signals() add_but.clicked.connect(self.add_letter) delete_but.clicked.connect(self.remove_letter) self.orig_data = [] QtCore.QTimer.singleShot(100, self.load_existing) def sizeHint(self): return QtCore.QSize(800, 600) def signals(self, connect=True): for signal in (self.description_line_edit.editingFinished, self.text_edit.textChanged, self.footer_text_edit.textChanged): if connect: signal.connect(self.update_letter) else: signal.disconnect(self.update_letter) @property def standard_letters(self): if self._standard_letters is None: self._standard_letters = [] for letter in standard_letter.get_standard_letters(): self._standard_letters.append(letter) self.orig_data.append(str(letter)) return self._standard_letters @property def existing_descriptions(self): for letter in self.standard_letters: yield letter.description def load_existing(self, row=0): if self.standard_letters == []: return self.signals(False) self.list_model.clear() for std_letter in self.standard_letters: if std_letter not in self.deleted_letters: self.list_model.add_item(std_letter.description) index = self.list_model.createIndex(row, 0) self.list_view.setCurrentIndex(index) self.signals() self.show_data(index) def show_data(self, index): self.signals(False) letter = self.current_letter self.description_line_edit.setText(letter.description) self.text_edit.setText(letter.text) self.footer_text_edit.setText(letter.footer) self.signals() @property def current_row(self): return self.list_view.currentIndex().row() @property def current_letter(self): i = -1 for std_letter in self.standard_letters: if std_letter not in self.deleted_letters: i += 1 if i == self.current_row: return std_letter @property def description(self): ''' return the current description text ''' return self.description_line_edit.text() @property def body_text(self): ''' return the current body text ''' return str(self.text_edit.text()) @property def footer_text(self): ''' return the current footer text ''' return str(self.footer_text_edit.text()) def add_letter(self, triggered=None, name=""): LOGGER.debug("add_letter") name, result = QtWidgets.QInputDialog.getText( self, _("Input Required"), _("Please enter a unique descriptive name for this letter"), text=name ) if not result or name == "": return if name in self.existing_descriptions: QtWidgets.QMessageBox.warning(self, _("error"), _("this name is already in use")) self.add_letter(name=name) return letter = standard_letter.StandardLetter( name, "
    " * 4, "
    " * 4) self.standard_letters.append(letter) rowno = len(self.standard_letters) - len(self.deleted_letters) - 1 self.load_existing(rowno) self.check_for_changes() def remove_letter(self): if len(self.standard_letters) < 2: QtWidgets.QMessageBox.warning( self, _("Warning"), _("You should have at least one standard letter " "in the database")) return self.deleted_letters.append(self.current_letter) self.load_existing() self.check_for_changes() def update_letter(self): letter = standard_letter.StandardLetter(self.description, self.body_text, self.footer_text ) self._standard_letters[self.current_row] = letter if self.sender() == self.description_line_edit: self.description_edited() self.check_for_changes() def check_for_changes(self): if self.deleted_letters or self.new_letters: self.dirty = True else: for i, letter in enumerate(self.standard_letters): if self.orig_data[i] != str(letter): self.dirty = True break self.enableApply(self.dirty) def description_edited(self): rowno = self.current_row self.load_existing(rowno) def new_letters(self): return self.standard_letters[len(self.orig_data):] def updated_letters(self): for i in range(len(self.orig_data)): letter = self.standard_letters[i] if (self.orig_data[i] != str(letter) and letter not in self.deleted_letters): yield letter def exec_(self): if BaseDialog.exec_(self): standard_letter.insert_letters(self.updated_letters()) standard_letter.insert_letters(self.new_letters()) standard_letter.delete_letters(self.deleted_letters) return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py0000644000175000017500000001217412710144046027253 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.dbtools import treatment_course from openmolar.qt4gui.customwidgets.upper_case_line_edit \ import UpperCaseLineEdit from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog class EditTreatmentDialog(ExtendableDialog): def __init__(self, serialno, courseno, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Edit Treatment Dialog")) self.serialno = serialno self.courseno = courseno self._treatment_course = None self.widgets = {} self.orig_values = {} frame = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(frame) self.header_label = WarningLabel("") tooth_atts = [] for att in treatment_course.CURRTRT_ROOT_ATTS: widg = UpperCaseLineEdit() self.widgets[att] = widg if re.match("[ul][lr][1-8]", att): tooth_atts.append(att) else: form_layout.addRow(att, widg) for att in sorted(tooth_atts): form_layout.addRow(att.upper(), self.widgets[att]) scroll_area = QtWidgets.QScrollArea() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.insertWidget(self.header_label) self.insertWidget(scroll_area) self.add_advanced_widget(QtWidgets.QLabel(_("No Advanced Options"))) QtCore.QTimer.singleShot(100, self.load_values) @property def treatment_course(self): if self._treatment_course is None: self._treatment_course = treatment_course.TreatmentCourse( self.serialno, self.courseno) return self._treatment_course def load_values(self): mb = QtWidgets.QMessageBox(self) mb.setWindowTitle(_("Option")) mb.setIcon(mb.Question) mb.setStandardButtons(mb.Yes | mb.No) mb.setText("%s
    %s" % ( _("Edit Completed items?"), _("Choosing 'NO' will offer edit of planned items"))) self.rejected.connect(mb.accept) # for Unittests mb.exec_() if mb.result() == mb.No: self.header_label.setText(_("Planned Items")) suffix = "pl" else: self.header_label.setText(_("Completed Items")) suffix = "cmp" for att in treatment_course.CURRTRT_ROOT_ATTS: val = self.treatment_course.__dict__[att + suffix] widg = self.widgets[att] self.orig_values[att] = val widg.setText(val) widg.editingFinished.connect(self.check_appliable) def new_value(self, att): return str(self.widgets[att].text()).strip(" ") + " " def check_appliable(self): for att in treatment_course.CURRTRT_ROOT_ATTS: if self.new_value(att) != self.orig_values[att]: self.enableApply() return self.enableApply(False) def sizeHint(self): return QtCore.QSize(350, 600) def update_db(self): changes = "" values = [] for att in treatment_course.CURRTRT_ROOT_ATTS: if self.new_value(att) != self.orig_values[att]: changes += "%s%s=%%s ," % (att, self.suffix) values.append(self.new_value(att)) treatment_course.update_course( changes.rstrip(","), values, self.serialno, self.courseno) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py0000644000175000017500000001111712710144046027057 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import copy import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.dbtools import estimates from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.customwidgets.estimate_widget import EstimateWidget LOGGER = logging.getLogger("openmolar") class _Patient(object): ''' A "duck" patient ''' def __init__(self, serialno, courseno): self.serialno = serialno self.courseno0 = courseno self.estimates = [] class OldEstimateWidget(EstimateWidget): ''' Estimate widget assumes current course, and parent being full blown gui. Override some functions. ''' def allow_check(self, *args): return True def tx_hash_complete(self, tx_hash): pass class EstimateEditDialog(ExtendableDialog): orig_ests = [] def __init__(self, serialno, courseno, parent=None): ExtendableDialog.__init__(self, parent) self.patient = _Patient(serialno, courseno) header_label = QtWidgets.QLabel("%s %s" % ( _("Inspecting estimate for Course Number"), courseno)) header_label.setAlignment(QtCore.Qt.AlignCenter) self.est_widget = OldEstimateWidget(self) self.insertWidget(header_label) self.insertWidget(self.est_widget) self.adv_widget = QtWidgets.QLabel(_("No advanced options available")) self.add_advanced_widget(self.adv_widget) # self.remove_spacer() self.est_widget.delete_estimate_item.connect(self.delete_item) self.est_widget.edited_signal.connect(self._enable_apply) QtCore.QTimer.singleShot(100, self.get_data) def advise(self, message, severity=None): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(400, 400) def get_data(self): ests = estimates.get_ests( self.patient.serialno, self.patient.courseno0) self.orig_ests = copy.deepcopy(ests) self.patient.estimates = ests self.est_widget.setPatient(self.patient) def delete_item(self, est): assert isinstance( est, estimates.Estimate), "bad object passed to delete" LOGGER.debug("delete %s" % est) self.patient.estimates.remove(est) def _enable_apply(self): LOGGER.debug("checking enable apply") self.enableApply(self.patient.estimates != self.orig_ests) def _clicked(self, but): ''' overwrite BaseDialog method ''' if but == self.apply_but and QtWidgets.QMessageBox.question( self, _("Confirm"), _("Apply Changes?"), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Cancel) == QtWidgets.QMessageBox.Cancel: return ExtendableDialog._clicked(self, but) def update_db(self): estimates.apply_changes( self.patient, self.orig_ests, self.patient.estimates) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/exam_wizard.py0000644000175000017500000001601512710144046025234 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.ptModules.estimates import TXHash from openmolar.qt4gui.compiled_uis import Ui_exam_wizard from openmolar.qt4gui.fees import manipulate_plan LOGGER = logging.getLogger("openmolar") class ExamWizard(QtWidgets.QDialog, Ui_exam_wizard.Ui_Dialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.om_gui = parent self.pt = self.om_gui.pt self.setupUi(self) self.dateEdit.setDate(QtCore.QDate().currentDate()) self.dents_comboBox.addItems(localsettings.activedents) performingDent = localsettings.apptix_reverse.get( localsettings.clinicianNo, None) if performingDent in localsettings.activedents: pos = localsettings.activedents.index(performingDent) self.dents_comboBox.setCurrentIndex(pos) else: self.dents_comboBox.setCurrentIndex(-1) def getInput(self): result = True while result: result = self.exec_() if self.examA_radioButton.isChecked(): exam = "CE" elif self.examB_radioButton.isChecked(): exam = "ECE" else: exam = "FCA" dent = str(self.dents_comboBox.currentText()) if dent == "": message = _("Please enter the examining Dentist") QtWidgets.QMessageBox.information(self, _("Whoops"), message) else: break if result: return (exam, dent, self.dateEdit.date().toPyDate()) else: return() def check_dent(self, examdent): APPLIED = True if examdent == localsettings.ops.get(self.pt.dnt1): if examdent != localsettings.ops.get(self.pt.dnt2, examdent): message = '''

    %s %s


    %s

    ''' % ( examdent, _("is the patient's contracted dentist, " "but NOT the course dentist"), _("You may wish to correct this.")) QtWidgets.QMessageBox.warning(self, _("Warning"), message) elif examdent == localsettings.ops.get(self.pt.dnt2): message = '%s %s' % (examdent, _("is not the patient's contracted dentist")) QtWidgets.QMessageBox.warning(self, _("Warning"), message) else: message = '

    %s %s
    %s %s


    %s

    ' % ( examdent, _("performed this exam"), examdent, _("is neither the patient's regular dentist or the course " "dentist!"), _("Is this correct?")) if QtWidgets.QMessageBox.question( self, _("Confirm"), message, QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.No: APPLIED = False return APPLIED, examdent def perform_exam(self): ''' perform an exam ''' if self.pt.serialno == 0: self.om_gui.advise(_("No Patient Selected"), 1) return if self.pt.treatment_course.has_exam: message = "

    %s


    %s

    " % ( _('You already have a completed exam ' 'on this course of treatment'), _("Unable to perform exam")) self.om_gui.advise(message, 1) return APPLIED = False while not APPLIED: result = self.getInput() if not result: self.om_gui.advise(_("Examination not applied"), 2) return False examtype, examdent, examd = result APPLIED, examdent = self.check_dent(examdent) if APPLIED: courseno = self.pt.treatment_course.courseno self.pt.treatment_course.examt = examtype if self.pt.treatment_course.examt == "CE": self.pt.pd5 = examd if self.pt.treatment_course.examt == "ECE": self.pt.pd6 = examd if self.pt.treatment_course.examt == "FCA": self.pt.pd7 = examd self.pt.treatment_course.examd = examd self.update_recall_date() self.pt.addHiddenNote("exam", "%s " % examtype) dentid = localsettings.ops_reverse[examdent] hash_ = localsettings.hash_func( "%sexam1%s" % (courseno, examtype)) tx_hash = TXHash(hash_, True) manipulate_plan.add_treatment_to_estimate( self.om_gui, "exam", examtype, dentid, [tx_hash]) note = "%s %s %s\n" % (examtype, _("performed by"), examdent) self.om_gui.addNewNote(note) return APPLIED def update_recall_date(self): if not self.pt.appt_prefs.recall_active: message = "%s
    %s" % ( _("WARNING"), _("Not updating recall due to patient's recall settings")) self.om_gui.advise(message, 1) else: date_ = localsettings.formatDate(self.pt.appt_prefs.new_recdent) self.om_gui.advise("updating recall date to %s" % date_) self.pt.appt_prefs.update_recdent() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/family_manage_dialog.py0000644000175000017500000003304612710144046027035 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import datetime import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.dialogs.find_patient_dialog import FindPatientDialog from openmolar.qt4gui.dialogs.address_match_dialog import AddressMatchDialog from openmolar.ptModules import patientDetails from openmolar.dbtools import families HEADERS = ( _("Address 1"), _("Address 2"), _("Address 3"), _("TOWN"), _("County"), _("Postcode") ) LOGGER = logging.getLogger("openmolar") class _DuckPatient(object): def __init__(self, result): self.serialno = result[0] self.title = result[1] self.fname = result[2] self.sname = result[3] self.addr1 = result[4] self.addr2 = result[5] self.addr3 = result[6] self.town = result[7] self.county = result[8] self.pcde = result[9] self.dob = result[10] self.status = result[11] self.tel1 = result[12] def getAge(self): ''' return the age in form (year(int), months(int), isToday(bool)) ''' today = localsettings.currentDay() try: nextbirthday = datetime.date(today.year, self.dob.month, self.dob.day) except ValueError: # catch leap years!! nextbirthday = datetime.date(today.year, self.dob.month, self.dob.day - 1) ageYears = today.year - self.dob.year if nextbirthday > today: ageYears -= 1 months = (12 - self.dob.month) + today.month else: months = today.month - self.dob.month if self.dob.day > today.day: months -= 1 isToday = nextbirthday == today return (ageYears, months, isToday) class _ConfirmDialog(BaseDialog): def __init__(self, serialno, parent=None): BaseDialog.__init__(self, parent) self.browser = QtWidgets.QTextBrowser() label = QtWidgets.QLabel("%s %s %s" % (_("Add Record"), serialno, _("to this family group?"))) self.insertWidget(label) self.insertWidget(self.browser) self.load(serialno) self.enableApply() def load(self, serialno): member = families.get_patient_details(serialno) pt = _DuckPatient(member) self.browser.setText(patientDetails.header(pt)) class _ChooseAddressDialog(BaseDialog): def __init__(self, addresses, parent=None): BaseDialog.__init__(self, parent) self.addresses = list(addresses) label = QtWidgets.QLabel(_("Which address should be used?")) self.table_widget = QtWidgets.QTableWidget() self.table_widget.setSelectionBehavior( QtWidgets.QAbstractItemView.SelectRows) self.table_widget.setAlternatingRowColors(True) self.table_widget.setRowCount(len(addresses)) self.table_widget.setColumnCount(len(HEADERS)) self.table_widget.setHorizontalHeaderLabels(HEADERS) self.table_widget.horizontalHeader().setStretchLastSection(True) for row, fields in enumerate(addresses): for col, field in enumerate(fields): if field is None: continue item = QtWidgets.QTableWidgetItem(field) self.table_widget.setItem(row, col, item) self.insertWidget(label) self.insertWidget(self.table_widget) self.table_widget.resizeColumnsToContents() self.table_widget.itemSelectionChanged.connect(self.enableApply) def sizeHint(self): return QtCore.QSize(800, 200) @property def chosen_address(self): return self.addresses[self.table_widget.currentIndex().row()] class _AdvancedWidget(QtWidgets.QWidget): sync_address_signal = QtCore.pyqtSignal() add_member_signal = QtCore.pyqtSignal() find_others_signal = QtCore.pyqtSignal() delete_group_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) icon = QtGui.QIcon(":/agt_reload.png") sync_address_but = QtWidgets.QPushButton(icon, _("Synchronise Addresses")) sync_address_but.clicked.connect(self.sync_address_signal.emit) icon = QtGui.QIcon(":/search.png") add_member_but = QtWidgets.QPushButton(icon, _("Standard Search")) add_member_but.clicked.connect(self.add_member_signal.emit) find_address_but = QtWidgets.QPushButton(icon, _("Address Search")) find_address_but.clicked.connect(self.find_others_signal.emit) icon = QtGui.QIcon(":/eraser.png") delete_group_but = QtWidgets.QPushButton(icon, _("Delete this group")) delete_group_but.clicked.connect(self.delete_group_signal.emit) layout = QtWidgets.QHBoxLayout(self) add_groupbox = QtWidgets.QGroupBox(_("Add members")) add_layout = QtWidgets.QVBoxLayout(add_groupbox) add_layout.addWidget(add_member_but) add_layout.addWidget(find_address_but) manage_groupbox = QtWidgets.QGroupBox(_("Manage Group")) manage_layout = QtWidgets.QVBoxLayout(manage_groupbox) manage_layout.addWidget(sync_address_but) manage_layout.addWidget(delete_group_but) layout.addWidget(add_groupbox) layout.addWidget(manage_groupbox) class FamilyManageDialog(ExtendableDialog): def __init__(self, om_gui): ExtendableDialog.__init__(self, om_gui, remove_stretch=True) self.om_gui = om_gui title = _("Manage Family Group") self.setWindowTitle(title) label = QtWidgets.QLabel("%s" % title) label.setAlignment(QtCore.Qt.AlignCenter) frame = QtWidgets.QFrame() self.frame_layout = QtWidgets.QGridLayout(frame) scroll_area = QtWidgets.QScrollArea() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.insertWidget(label) self.insertWidget(scroll_area) self.member_dict = {} self.widgets = [] self.apply_but.hide() self.cancel_but.setText(_("Close")) self.advanced_widg = _AdvancedWidget(self) self.advanced_widg.sync_address_signal.connect(self.sync_addresses) self.advanced_widg.add_member_signal.connect(self.record_search) self.advanced_widg.find_others_signal.connect(self.address_search) self.advanced_widg.delete_group_signal.connect(self.delete_group) self.advanced_widg.setEnabled(False) self.add_advanced_widget(self.advanced_widg) self.load_values() def sizeHint(self): return QtCore.QSize(800, 600) def load_values(self, mes1=_("Unlink"), mes2=_("from group")): self.family_no = self.om_gui.pt.familyno LOGGER.debug("FamilyManage loading family number %d" % self.family_no) self.member_dict = {} members = families.get_members(self.family_no) for widget in self.widgets: self.frame_layout.removeWidget(widget) widget.setParent(None) for i, member in enumerate(members): pt = _DuckPatient(member) browser = QtWidgets.QTextBrowser() details = patientDetails.header(pt) details = details.replace("

    DECEASED

    ", "

    Deceased

    ") browser.setText(details) row = (i // 4) * 2 column = i % 4 self.frame_layout.addWidget(browser, row, column) message = "%s %s %s" % (mes1, pt.serialno, mes2) if mes1 == _("Unlink"): icon = QtGui.QIcon(":/eraser.png") else: icon = QtGui.QIcon(":/logo.png") member_but = QtWidgets.QPushButton(icon, message) self.frame_layout.addWidget(member_but, row + 1, column) self.member_dict[member_but] = pt member_but.clicked.connect(self.member_but_clicked) self.widgets.append(member_but) self.widgets.append(browser) if len(members) == 0: label = QtWidgets.QLabel( _("This patient does not belong to any family group.")) label.setAlignment(QtCore.Qt.AlignRight) but = QtWidgets.QPushButton(_("Create a New Family Group")) but.clicked.connect(self.new_family_group) but2 = QtWidgets.QPushButton(_("Show similar addresses")) but2.clicked.connect(self.show_addresses) self.widgets.append(label) self.widgets.append(but) self.widgets.append(but2) self.frame_layout.addWidget(label, 0, 0) self.frame_layout.addWidget(but, 0, 1) self.frame_layout.addWidget(but2, 1, 1) else: self.advanced_widg.setEnabled(True) def member_but_clicked(self): pt = self.member_dict[self.sender()] if QtWidgets.QMessageBox.question( self, _("Confirm"), "%s %s %s %s %s" % (_("Remove"), pt.title, pt.fname, pt.sname, _("from this family group?")), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Ok) == QtWidgets.QMessageBox.Cancel: return families.remove_member(pt.serialno) self.load_values() def confirm_add(self, serialno): if not serialno: return False dl = _ConfirmDialog(serialno, self) return dl.exec_() def record_search(self): dl = FindPatientDialog(self) if dl.exec_(): self.add_member(dl.chosen_sno) def add_member(self, serialno): if self.confirm_add(serialno): families.add_member(self.family_no, serialno) self.load_values() def sync_addresses(self): address_set = set([]) for member in list(self.member_dict.values()): address_tup = ( member.addr1, member.addr2, member.addr3, member.town, member.county, member.pcde ) address_set.add(address_tup) if len(address_set) == 1: QtWidgets.QMessageBox.information( self, _("Information"), _("Addresses are all identical - nothing to do!")) return dl = _ChooseAddressDialog(address_set, self) if dl.exec_(): count = families.sync_addresses(self.family_no, dl.chosen_address) QtWidgets.QMessageBox.information( self, _("Information"), "%d %s" % (count, _("Address(es) updated"))) self.load_values() def address_search(self): dl = AddressMatchDialog(self.om_gui) if dl.exec_(): for serialno in dl.selected_patients: self.add_member(serialno) def show_addresses(self): dl = AddressMatchDialog(self.om_gui) dl.table_widget.setSelectionMode( QtWidgets.QAbstractItemView.NoSelection) dl.exec_() def new_family_group(self): self.om_gui.pt.familyno = families.new_group(self.om_gui.pt.serialno) self.load_values() def delete_group(self): if QtWidgets.QMessageBox.question( self, _("Confirm"), _("Delete this family group?"), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Ok) == QtWidgets.QMessageBox.Cancel: return families.delete_group(self.family_no) self.load_values() class LoadRelativesDialog(FamilyManageDialog): chosen_sno = 0 def load_values(self): FamilyManageDialog.load_values(self, _("Load Patient"), "") def member_but_clicked(self): pt = self.member_dict[self.sender()] self.chosen_sno = pt.serialno self.accept() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py0000644000175000017500000001757312710144046030063 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.dbtools.feescales import FeescaleConfigurer from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class FeescaleWidget(QtWidgets.QWidget): ''' a widget to allow user interaction for the FeescaleConfigDialog ''' promote_signal = QtCore.pyqtSignal() demote_signal = QtCore.pyqtSignal() check_required_signal = QtCore.pyqtSignal() def __init__(self, feescale, parent=None): QtWidgets.QWidget.__init__(self, parent) self.feescale = feescale self.label = QtWidgets.QLabel("") self.in_use_checkbox = QtWidgets.QCheckBox(_("In use")) self.in_use_checkbox.setChecked(feescale.in_use) self.comment_line_edit = QtWidgets.QLineEdit() message = feescale.comment if feescale.comment else feescale.name self.comment_line_edit.setText(message) p_map = QtGui.QPixmap(QtGui.QPixmap(":/down.png")) self.down_button = QtWidgets.QPushButton(QtGui.QIcon(p_map), "") self.down_button.setToolTip(_("Demote the feescale")) p_map = QtGui.QPixmap(QtGui.QPixmap(":/up.png")) self.up_button = QtWidgets.QPushButton(QtGui.QIcon(p_map), "") self.up_button.setToolTip(_("Promote the feescale")) layout = QtWidgets.QHBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.label) layout.addWidget(self.in_use_checkbox) layout.addWidget(self.comment_line_edit) layout.addWidget(self.down_button) layout.addWidget(self.up_button) self.down_button.clicked.connect(self.demote_signal.emit) self.up_button.clicked.connect(self.promote_signal.emit) self.comment_line_edit.textEdited.connect( self.check_required_signal.emit) self.in_use_checkbox.stateChanged.connect( self.check_required_signal.emit) def enable(self): self.down_button.setEnabled(True) self.up_button.setEnabled(True) @property def in_use(self): return self.in_use_checkbox.isChecked() @property def comment(self): return self.comment_line_edit.text() @property def is_dirty(self): return (self.in_use != self.feescale.in_use or self.comment != self.feescale.comment) def disable_demote(self): self.down_button.setEnabled(False) def disable_promote(self): self.up_button.setEnabled(False) class FeescaleConfigDialog(BaseDialog): ''' This dialog allows the user to alter comments about a feescale, and make changes to the priorites they are loaded into openmolar. ''' def __init__(self, parent=None): BaseDialog.__init__(self, parent, remove_stretch=True) title = _("Confgure Feescales Dialog") self.setWindowTitle(title) label = WarningLabel( "%s
    %s" % ( _("This dialog enables you to modify the metadata which " "determines the order feescales are loaded."), _("You can also archive a feescale by unchecking 'in use'."))) self.insertWidget(label) self.configurer = FeescaleConfigurer() LOGGER.debug("Feescales to config\n%s", "\n".join( [" %s" % f for f in self.configurer.feescales])) frame = QtWidgets.QFrame() self.fs_layout = QtWidgets.QVBoxLayout(frame) self.fs_layout.setContentsMargins(0, 0, 0, 0) self.fs_layout.setSpacing(0) for feescale in self.configurer.feescales: widg = FeescaleWidget(feescale) widg.promote_signal.connect(self.promote_widget) widg.demote_signal.connect(self.demote_widget) widg.check_required_signal.connect(self.check_enable) self.fs_layout.addWidget(widg) scroll_area = QtWidgets.QScrollArea(self) scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.insertWidget(scroll_area) self.enable_buttons() def sizeHint(self): return QtCore.QSize(600, 600) @property def fs_widgets(self): for i in range(self.fs_layout.count()): widg = self.fs_layout.itemAt(i).widget() if type(widg) == FeescaleWidget: yield widg @property def n_active_feescales(self): i = 0 for widg in self.fs_widgets: if widg.in_use: i += 1 return i def enable_buttons(self): for i, widg in enumerate(self.fs_widgets): widg.label.setText("%02d" % (i + 1)) widg.enable() w_list = list(self.fs_widgets) w_list[0].disable_promote() w_list[-1].disable_demote() self.check_enable() def check_enable(self): self.enableApply(self.is_dirty) def promote_widget(self): widg = self.sender() LOGGER.debug("promote %s", widg.feescale) index = self.fs_layout.indexOf(widg) if index == 0: # already highest in the list! return self.fs_layout.removeWidget(widg) self.fs_layout.insertWidget(index-1, widg) self.enable_buttons() def demote_widget(self): widg = self.sender() LOGGER.debug("demote %s", widg.feescale) index = self.fs_layout.indexOf(widg) if index == len(self.configurer.feescales): # already bottom of list return self.fs_layout.removeWidget(widg) self.fs_layout.insertWidget(index+1, widg) self.enable_buttons() @property def is_dirty(self): for i, widg in enumerate(self.fs_widgets): if widg.is_dirty: return True if widg.feescale != self.configurer.feescales[i]: return True return False def _apply(self): for priority, widg in enumerate(self.fs_widgets): self.configurer.apply_changes(widg.feescale.ix, widg.in_use, widg.comment, priority + 1) def exec_(self): if BaseDialog.exec_(self): self._apply() return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/finalise_appt_time.py0000644000175000017500000000713012710144046026554 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_finalise_appt_time from openmolar.settings import localsettings class ftDialog(Ui_finalise_appt_time.Ui_Dialog, QtWidgets.QDialog): ''' a custom dialog, the initialiser takes the following params slotstarttime (datetime.time) - the earliest available time in the slot slotLength(int) - the length (in minutes) of the slot apptLength(int) - the appointment being fitted in parent widget (optional) - parent qt widget if exec_() returns true then the user has accepted the dialog and the values of selectedtime gives the user chosen time ''' def __init__(self, slotstarttime, slotLength, apptLength, parent=None): super(ftDialog, self).__init__(parent) self.setupUi(self) self.starttime = localsettings.pyTimeToMinutesPastMidnight( slotstarttime) self.maxtime = self.starttime + slotLength self.length = apptLength self.minslotlength = 5 self.selectedTime = slotstarttime # the value the user chooses self.verticalSlider.setMinimum(self.starttime // self.minslotlength) self.verticalSlider.setMaximum( (self.maxtime - self.length) // self.minslotlength) self.verticalSlider.valueChanged.connect(self.updateLabels) self.updateLabels(self.verticalSlider.value()) def updateLabels(self, arg): minB4 = (arg - self.verticalSlider.minimum()) * self.minslotlength minL8r = (self.verticalSlider.maximum() - arg) * self.minslotlength self.selectedTime = localsettings.minutesPastMidnighttoPytime( self.starttime + minB4) self.minutesB4label.setText("%d %s" % (minB4, _("Minutes"))) self.apptTimelabel.setText("%s - %s" % ( localsettings.humanTime(arg * self.minslotlength), localsettings.humanTime(arg * self.minslotlength + self.length))) self.minutesL8Rlabel.setText("%d %s" % (minL8r, _("Minutes"))) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/find_patient_dialog.py0000644000175000017500000002111212710144046026677 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' find_patient_dialog.py ''' import datetime from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import search from openmolar.qt4gui.compiled_uis import Ui_patient_finder from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog class FindPatientDialog(QtWidgets.QDialog, Ui_patient_finder.Ui_Dialog): ''' A dialog to gather parameters for searching the database for a patient record ''' chosen_sno = None def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.sname.setFocus() self.repeat_pushButton.clicked.connect(self.repeat_last_search) def repeat_last_search(self): self.dateEdit.setDate(localsettings.lastsearch[2]) self.addr1.setText(localsettings.lastsearch[4]) self.tel.setText(localsettings.lastsearch[3]) self.sname.setText(localsettings.lastsearch[0]) self.fname.setText(localsettings.lastsearch[1]) self.pcde.setText(localsettings.lastsearch[5]) def exec_(self): if localsettings.PT_COUNT == 0: QtWidgets.QMessageBox.warning( self.parent(), _("warning"), _("You have no patients in your database")) return False if localsettings.PT_COUNT < 5 or QtWidgets.QDialog.exec_(self): dob = self.dateEdit.date().toPyDate() addr = str(self.addr1.text()) tel = str(self.tel.text()) sname = str(self.sname.text()) fname = str(self.fname.text()) pcde = str(self.pcde.text()) localsettings.lastsearch = (sname, fname, dob, tel, addr, pcde) try: serialno = int(sname) except: serialno = 0 if serialno > 0: self.chosen_sno = serialno else: candidates = search.getcandidates( dob, addr, tel, sname, self.snameSoundex_checkBox.checkState(), fname, self.fnameSoundex_checkBox.checkState(), pcde ) if candidates == () and localsettings.PT_COUNT > 5: QtWidgets.QMessageBox.warning(self.parent(), "warning", _("no match found")) return False else: if localsettings.PT_COUNT < 5: candidates = search.all_patients() if len(candidates) == 1: self.chosen_sno = int(candidates[0][0]) else: dl = FinalChoiceDialog(candidates, self) if dl.exec_(): self.chosen_sno = dl.chosen_sno return True return False class FinalChoiceDialog(ExtendableDialog): chosen_sno = None FILTER = True def __init__(self, candidates, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.table_widget = QtWidgets.QTableWidget() self.table_widget.setAlternatingRowColors(True) self.table_widget.setSelectionBehavior( QtWidgets.QAbstractItemView.SelectRows) self.insertWidget(self.table_widget) self.headers = (_('Serialno'), _('Status'), _('Title'), _('Forename'), _('Surname'), _('Birth Date'), _('Address Line 1'), _('Address Line 2'), _('Town'), _('POSTCODE'), _('Tel1'), _('Tel2'), _('Mobile') ) self._candidates = candidates self.hidden_count = 0 self.load_candidates() self.table_widget.itemDoubleClicked.connect(self.accept) self.enableApply(True) self.apply_but.setText(_("Load the Selected Patient")) self.setMinimumWidth( QtWidgets.QApplication.desktop().screenGeometry().width() - 20) def _screened_candidates(self): self.hidden_count = 0 for candidate in self._candidates: if candidate[1] == "": yield candidate else: self.hidden_count += 1 @property def candidates(self): if not self.FILTER: return self._candidates return list(self._screened_candidates()) def load_candidates(self): self.table_widget.clear() self.table_widget.setSortingEnabled(False) self.table_widget.setRowCount(len(self.candidates)) self.table_widget.setColumnCount(len(self.headers)) self.table_widget.setHorizontalHeaderLabels(self.headers) self.table_widget.verticalHeader().hide() self.table_widget.horizontalHeader().setStretchLastSection(True) for row, candidate in enumerate(self.candidates): for col, attr in enumerate(candidate): if isinstance(attr, datetime.date): item = QtWidgets.QTableWidgetItem( localsettings.formatDate(attr)) else: item = QtWidgets.QTableWidgetItem(str(attr)) self.table_widget.setItem(row, col, item) self.table_widget.setSortingEnabled(True) self.table_widget.sortItems(4) self.table_widget.setCurrentCell(0, 1) self.set_more_but_text() def sizeHint(self): return QtCore.QSize(self.minimumWidth(), 400) def resizeEvent(self, event): widths = (0, 12, 12, 15, 15, 15, 25, 20, 20, 15, 10, 10, 10) sum_widths = sum(widths) + 10 # allow for vertical scrollbar for col in range(self.table_widget.columnCount()): col_width = widths[col] * self.width() / sum_widths self.table_widget.setColumnWidth(col, col_width) def set_more_but_text(self): if self.FILTER: self.more_but.setText( "%s (%d %s)" % ( _("Include ALL Patients"), self.hidden_count, _("are hidden") )) self.more_but.setStyleSheet("color:red") else: self.more_but.setText(_("Show only active Patients")) self.more_but.setStyleSheet("") self.more_but.setChecked(self.FILTER) def _clicked(self, but): ''' overwrite :doc:`ExtendableDialog` _clicked ''' if but == self.more_but: FinalChoiceDialog.FILTER = not self.FILTER self.load_candidates() return ExtendableDialog._clicked(self, but) def exec_(self): if QtWidgets.QDialog.exec_(self): row = self.table_widget.currentRow() result = self.table_widget.item(row, 0).text() self.chosen_sno = int(result) return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/first_run_dialog.py0000644000175000017500000010561113023755304026260 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import base64 from functools import partial import hashlib import logging import os from xml.dom import minidom import MySQLdb from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar import create_db from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") XML_TEMPLATE = ''' 1.1 ''' HOST = "localhost" PORT = 3306 DB_USER = "openmolar_user" DB_PASS = "password" DB_NAME = "openmolar_demo" USER_QUERY = 'SELECT id FROM opid' class _InputPage(QtWidgets.QWidget): def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.dialog = parent self.label = QtWidgets.QLabel("text") self.label.setWordWrap(True) self.frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(self) layout.addWidget(self.label) layout.addStretch(30) layout.addWidget(self.frame) layout.addStretch(100) def sizeHint(self): return QtCore.QSize(400, 400) @property def is_completed(self): ''' should be overwritten! ''' return True @property def error_message(self): ''' should be overwritten! ''' return "input error! - try again" def unfinished_business(self): ''' overwrite if you want to interact with the user before leaving return True to prevent moving on. ''' return False def enable_next(self, enable=True): QtCore.QTimer.singleShot(100, partial(self.dialog.next_but.setEnabled, enable)) class PageZero(_InputPage): def __init__(self, parent=None): _InputPage.__init__(self, parent) message = "%s
    • %s
    • %s
    • %s
    • %s
    " % ( _("This Dialog will help you"), _("secure openmolar with a password"), _("note the location of your mysql/mariadb server"), _("install a blank database schema if required."), _("save a settings file so you do not have to endure this again!") ) self.label.setText(message) message2 = _("Click Next to continue, or Quit to leave OpenMolar now.") label = QtWidgets.QLabel(message2) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(label) def showEvent(self, event): self.enable_next() @property def header_text(self): return "%s
    %s" % ( _("This appears to be your first running of OpenMolar."), _("We need to save a few settings to continue.") ) class PageOne(_InputPage): def __init__(self, parent=None): _InputPage.__init__(self, parent) message = "%s
    %s

    %s" % ( _("You may wish to enter a password which will hereafter be " "required to login to the OpenMolar application"), _("This password will help prevent an unauthorised person" " accessing any sensitive data."), _("If your data is simply demonstration data, " "this can be left blank")) self.label.setText(message) layout = QtWidgets.QFormLayout(self.frame) self.line_edit1 = QtWidgets.QLineEdit() self.line_edit2 = QtWidgets.QLineEdit() self.show_cb = QtWidgets.QCheckBox(_("Show Passwords")) layout.addRow(_("Password"), self.line_edit1) layout.addRow(_("Confirm Password"), self.line_edit2) layout.addRow("", self.show_cb) self.show_passwords() self.show_cb.toggled.connect(self.show_passwords) @property def header_text(self): return "%s" % _("Step 1 - Set a password for OpenMolar") def showEvent(self, event): self.line_edit1.setFocus() self.enable_next() def show_passwords(self, show=False): if show: e_mode = QtWidgets.QLineEdit.Normal else: e_mode = QtWidgets.QLineEdit.Password self.line_edit1.setEchoMode(e_mode) self.line_edit2.setEchoMode(e_mode) @property def is_completed(self): return self.line_edit1.text() == self.line_edit2.text() @property def error_message(self): return _("Passwords don't match!") class PageTwo(_InputPage): def __init__(self, parent=None): _InputPage.__init__(self, parent) message = "%s
    %s
    %s" % ( _("OpenMolar is simply a database client."), _("It requires a database server such as MySQL or MariaDB."), _("Please enter the hostname and port number " "where your server can be reached.") ) message1 = "** %s\n\n (%s)" % ( _("If you do not have a mysql/mariadb server on your computer" " or local network, please quit this setup, " "and install one now!"), _("Make a note of the root password you create during " "this set up.")) self.label.setText(message) frame1 = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(frame1) self.line_edit1 = QtWidgets.QLineEdit() self.line_edit1.setText(HOST) self.line_edit2 = QtWidgets.QLineEdit() self.line_edit2.setText(str(PORT)) layout.addRow(_("Host"), self.line_edit1) layout.addRow(_("Port"), self.line_edit2) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(frame1) layout.addStretch(100) label = QtWidgets.QLabel(message1) layout.addWidget(label) @property def header_text(self): return "%s" % _("Step 2 - Where is your database server?") def showEvent(self, event): self.line_edit1.setFocus() self.enable_next() @property def port(self): try: return int(self.line_edit2.text()) except ValueError: pass return None @property def is_completed(self): for le in (self.line_edit1, self.line_edit2): if le.text() == "": return False return self.port is not None @property def error_message(self): message = "%s
      " % _("The Following errors were found") if self.line_edit1.text() == "": message += "
    • %s
    • " % _("Host Field is Blank") if self.line_edit2.text() == "": message += "
    • %s
    • " % _("Port Field is Blank") elif self.port is None: message += "
    • %s
    • " % _( "Port Field must be a number. Default is 3306") return message + "
    " class PageThree(_InputPage): def __init__(self, parent=None): _InputPage.__init__(self, parent) message1 = "%s
    %s" % ( _("Do you already have an openmolar database on this server?"), _("If not, you should lay out one now.") ) self.label.setText(message1) layout = QtWidgets.QVBoxLayout(self.frame) self.radio_button1 = QtWidgets.QRadioButton( _("Create a database user and install a blank (demo) Database")) self.radio_button2 = QtWidgets.QRadioButton( _("Use an existing database")) self.radio_button1.setChecked(True) layout.addWidget(self.radio_button1) layout.addWidget(self.radio_button2) @property def header_text(self): return "%s" % _("Step 3 - select a database option") def showEvent(self, event): self.radio_button1.setFocus() self.enable_next() @property def create_new(self): return self.radio_button1.isChecked() class PageFive(_InputPage): ''' Provide a name for the new database and create a user. ''' create_new = False def __init__(self, parent=None): _InputPage.__init__(self, parent) self.m1 = _("Please enter connection criteria for the database.") self.m2 = _("WARNING - If the database of this name already exists on " "this server, it will be deleted.") self.header_text1 = _("Step 5 - Name Your Database") self.header_text2 = _( "Step 4 - Provide Details of the Existing Database") layout = QtWidgets.QFormLayout(self.frame) self.line_edit1 = QtWidgets.QLineEdit() self.line_edit2 = QtWidgets.QLineEdit() self.line_edit3 = QtWidgets.QLineEdit() self.show_cb = QtWidgets.QCheckBox(_("Show Password")) layout.addRow(_("Database Name"), self.line_edit1) layout.addRow(_("(mysql) user"), self.line_edit2) layout.addRow(_("(mysql) password"), self.line_edit3) layout.addRow("", self.show_cb) self.show_passwords() self.show_cb.toggled.connect(self.show_passwords) def set_creating_new(self, create_new): LOGGER.debug("Page 5 creating new = %s", create_new) self.create_new = create_new @property def header_text(self): if self.create_new: return "%s" % self.header_text1 return "%s" % self.header_text2 def showEvent(self, event): if self.create_new: self.label.setText("%s
    %s" % (self.m1, self.m2)) if self.line_edit1.text() == "": self.line_edit1.setText(DB_NAME) if self.line_edit2.text() == "": self.line_edit2.setText(DB_USER) if self.line_edit3.text() == "": self.line_edit3.setText(DB_PASS) else: self.label.setText(self.m1) self.line_edit1.setFocus() self.enable_next() def show_passwords(self, show=False): if show: e_mode = QtWidgets.QLineEdit.Normal else: e_mode = QtWidgets.QLineEdit.Password self.line_edit3.setEchoMode(e_mode) def unfinished_business(self): chosen_dbname = self.line_edit1.text().strip(" ") if chosen_dbname == "" or not self.create_new: return False if (create_db.exists_already(self.dialog.host, self.dialog.port, chosen_dbname, self.dialog.privileged_user_pass, self.dialog.privileged_user) and QtWidgets.QMessageBox.question( self, _("Confirm"), "%s '%s' %s
    %s" % (_("A database named"), chosen_dbname, _("exists already"), _("Overwrite this database?")), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No): return True return False @property def is_completed(self): for le in (self.line_edit1, self.line_edit2, self.line_edit3): if le.text().strip(" ") == "": return False return True @property def error_message(self): message = "%s
      " % _("The Following errors were found") if self.line_edit1.text() == "": message += "
    • %s
    • " % _("Database Name Field is Blank") if self.line_edit2.text() == "": message += "
    • %s
    • " % _("User Field is Blank") if self.line_edit3.text() == "": message += "
    • %s
    • " % _("Password Field is Blank") return message + "
    " class PageFour(_InputPage): ''' get information about the privileged user and check it has drop and create capabilities ''' _messages = [] def __init__(self, parent=None): _InputPage.__init__(self, parent) message = "%s
    %s" % ( _("To create a database, and set the privileges for user, " "OpenMolar must log into mysql as a privileged mysql user."), _("OpenMolar does NOT store this username or password.")) message1 = "%s
    %s" % ( _("Please enter the username and password of a " "privileged mysql user."), _("(note - on most mysql setups, login by 'root' is only allowed" " on localhost)")) self.label.setText(message) label = QtWidgets.QLabel(message1) layout = QtWidgets.QFormLayout(self.frame) layout.addRow(label) self.line_edit1 = QtWidgets.QLineEdit() self.line_edit1.setText("root") self.line_edit2 = QtWidgets.QLineEdit() self.show_cb = QtWidgets.QCheckBox(_("Show Password")) layout.addRow(_("Privileged user (normally 'root')"), self.line_edit1) layout.addRow(_("Password for this user"), self.line_edit2) layout.addRow("", self.show_cb) self.show_passwords() self.show_cb.toggled.connect(self.show_passwords) self.line_edit2.textChanged.connect(self.enable) @property def header_text(self): return "%s" % _( "Step 4 - authenticate with MySQL") def showEvent(self, event): self.line_edit2.setFocus() def enable(self, *args): self.enable_next(self.input_completed) def show_passwords(self, show=False): if show: e_mode = QtWidgets.QLineEdit.Normal else: e_mode = QtWidgets.QLineEdit.Password self.line_edit2.setEchoMode(e_mode) def check_connect(self): result, self._messages = create_db.check_superuser( self.dialog.host, self.dialog.port, self.dialog.privileged_user_pass, self.dialog.privileged_user) return result @property def input_completed(self): if self.line_edit1.text() == "": return False if self.line_edit2.text() == "": return False return True @property def is_completed(self): return self.input_completed and self.check_connect() @property def error_message(self): message = "%s
      " % _("The Following errors were found") if self.line_edit1.text() == "": message += "
    • %s
    • " % _("Privileged User Field is Blank") if self.line_edit2.text() == "": message += "
    • %s
    • " % _("Password Field is Blank") message += "
    • %s
    • " % "
    • ".join (self._messages) return message + "
    " class WorkerThread(QtCore.QThread): ''' an example of how to use this wt = WorkerThread() wt.setFunction(some_long_function) wt.finished.connect(something) wt.run() ''' result = None def setFunction(self, function): self.function = function def run(self): self.result = self.function() class PageSix(_InputPage): def __init__(self, parent=None): _InputPage.__init__(self, parent) self.label.setText(_("Create Database")) self.db_created = False self.message = "" self.progress_bar = QtWidgets.QProgressBar() self.timer1 = QtCore.QTimer() self.timer1.timeout.connect(self.updatePB) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.progress_bar) @property def header_text(self): return "%s" % _("Step 6 - Create Database") def showEvent(self, event): self.progress_bar.setValue(0) self.label.setText("%s %s
    %s '%s' %s '%s'" % ( _("Creating Database"), self.dialog.db_name, _("and granting privileges to"), self.dialog.db_user, _("identified by"), "*" * len(self.dialog.db_pass))) if not self.db_created: self.create_database() def hideEvent(self, event): self.timer1.stop() def updatePB(self): val = self.progress_bar.value() if val < 90: self.progress_bar.setValue(val + 5) self.progress_bar.update() def create_database(self): def finished(): LOGGER.info("QThread has finished") self.timer1.stop() self.progress_bar.setValue(100) self.db_created, self.message = self.wt.result self.enable_next() self.timer1.start(500) # 1/100thsecond self.progress_bar.setValue(10) self.wt = WorkerThread(self) self.wt.setFunction(partial(create_db.create_database, self.dialog.host, self.dialog.port, self.dialog.db_user, self.dialog.db_pass, self.dialog.db_name, self.dialog.privileged_user_pass, self.dialog.privileged_user)) self.wt.finished.connect(finished) LOGGER.info("Starting thread") self.wt.start() @property def is_completed(self): return self.db_created @property def error_message(self): return "%s
    %s" % (_("Error Creating Database"), self.message) class PageSeven(_InputPage): def __init__(self, parent=None): _InputPage.__init__(self, parent) self._schema_installed = False message = _("Creating database tables - this may take some time.") self.label.setText(message) self.progress_bar = QtWidgets.QProgressBar() self.timer1 = QtCore.QTimer() self.timer1.timeout.connect(self.updatePB) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.progress_bar) @property def header_text(self): return "%s" % _("Step 7 - Layout Schema") def showEvent(self, event): self.progress_bar.setValue(0) if not self._schema_installed: self.install_schema() def hideEvent(self, event): self.timer1.stop() def updatePB(self): val = self.progress_bar.value() if val < 90: self.progress_bar.setValue(val + 5) self.progress_bar.update() def install_schema(self): def finished(): LOGGER.info("QThread has finished") self.timer1.stop() self.progress_bar.setValue(100) self._schema_installed = self.wt.result self.enable_next() self.timer1.start(500) # 1/100thsecond self.progress_bar.setValue(10) self.wt = WorkerThread(self) self.wt.setFunction(partial(create_db.create_tables, self.dialog.host, self.dialog.port, self.dialog.db_user, self.dialog.db_pass, self.dialog.db_name)) self.wt.finished.connect(finished) LOGGER.info("Starting thread") self.wt.start() @property def is_completed(self): return self._schema_installed @property def error_message(self): return "%s %s %s
    %s
    %s %s" % ( _("Sql scripts to layout a schema for database"), self.dialog.db_name, _("Failed"), _("Please try again by overwriting this database."), _("If you continue to stick at this point"), _("you may need to fix this manually")) class PageEight(_InputPage): def __init__(self, parent=None): _InputPage.__init__(self, parent) self._data_installed = False message = "%s
    %s" % ( _("Installing a minimum amount of data into the database."), _("This may take some time")) self.label.setText(message) self.progress_bar = QtWidgets.QProgressBar() self.timer1 = QtCore.QTimer() self.timer1.timeout.connect(self.updatePB) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.progress_bar) @property def header_text(self): return "%s" % _("Step 8 - Install data into database") def showEvent(self, event): self.progress_bar.setValue(0) if not self._data_installed: self.install_data() def hideEvent(self, event): self.timer1.stop() def updatePB(self): val = self.progress_bar.value() if val < 90: self.progress_bar.setValue(val + 3) self.progress_bar.update() def install_data(self): def finished(): LOGGER.info("QThread has finished") self.timer1.stop() self.progress_bar.setValue(100) self._data_installed = self.wt.result self.enable_next() minimal_only = QtWidgets.QMessageBox.question( self, _("Choice"), _("Would you like an example patient in the database?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No self.timer1.start(500) self.progress_bar.setValue(10) self.wt = WorkerThread(self) self.wt.setFunction(partial(create_db.insert_data, self.dialog.host, self.dialog.port, self.dialog.db_user, self.dialog.db_pass, self.dialog.db_name, minimal_only)) self.wt.finished.connect(finished) LOGGER.info("Starting thread") self.wt.start() @property def is_completed(self): return self._data_installed @property def error_message(self): return "%s %s %s
    %s" % ( _("inserting data into"), self.dialog.db_name, _("Failed"), _("you may need to fix this manually")) class PageNine(_InputPage): _connection_works = False _users_present = False single_user = None def __init__(self, parent=None): _InputPage.__init__(self, parent) message = _("Testing connection") self.label.setText(message + ".......") @property def header_text(self): return "%s" % _( "Final Step - Test Connection & Write Config File") def showEvent(self, event): QtCore.QTimer.singleShot(500, self.test_connection) def test_connection(self): self.dialog.wait() self.single_user = None self._connection_works = False self._users_present = False try: LOGGER.info("attempting to connect to mysql server") db = MySQLdb.connect(host=self.dialog.host, port=self.dialog.port, db=self.dialog.db_name, passwd=self.dialog.db_pass, user=self.dialog.db_user) db.open self._connection_works = True cursor = db.cursor() cursor.execute(USER_QUERY) rows = cursor.fetchall() n_users = len(rows) self._users_present = n_users > 0 if n_users == 1: self.single_user = rows[0][0] db.close() except Exception: LOGGER.exception("database interaction failed") self.enable_next() self.dialog.wait(False) if self._connection_works: self.label.setText( "

    %s

    %s '%s' %s '%s:%s' %s
    (%s '%s:%s')" % ( _("SUCCESS!"), _("Database"), self.dialog.db_name, _("on server"), self.dialog.host, self.dialog.port, _("is accepting connections!"), _("Authenticating as"), self.dialog.db_user, "*" * len(self.dialog.db_pass) )) else: self.label.setText("%s %s" % ( _("WARNING"), _("Your database is NOT accepting connections!")) ) self.show_warnings() @property def is_completed(self): return True def show_warnings(self): if self._connection_works and self._users_present: return if not self._connection_works: QtWidgets.QMessageBox.warning( self, _("Warning"), _("Openmolar is unable to connect to the database " "you have configured.")) elif not self._users_present: QtWidgets.QMessageBox.warning( self, _("Warning"), "%s
    %s" % ( _("There are no users in the database you have configured."), _("You will not be able to log in!"))) class FirstRunDialog(BaseDialog): EXISTING_DB_ORDER = [0,1,2,3,5,9] def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("First Run Dialog")) self.top_label = WarningLabel("FirstRun") self.wizard_widget = QtWidgets.QStackedWidget() page0 = PageZero(self) self.page1 = PageOne(self) self.page2 = PageTwo(self) self.page3 = PageThree(self) self.page4 = PageFour(self) self.page5 = PageFive(self) page6 = PageSix(self) page7 = PageSeven(self) self.page8 = PageEight(self) self.page9 = PageNine(self) self.wizard_widget.addWidget(page0) self.wizard_widget.addWidget(self.page1) self.wizard_widget.addWidget(self.page2) self.wizard_widget.addWidget(self.page3) self.wizard_widget.addWidget(self.page4) self.wizard_widget.addWidget(self.page5) self.wizard_widget.addWidget(page6) self.wizard_widget.addWidget(page7) self.wizard_widget.addWidget(self.page8) self.wizard_widget.addWidget(self.page9) self.insertWidget(self.top_label) self.insertWidget(self.wizard_widget) self.next_but = self.button_box.addButton( _("Next"), self.button_box.ActionRole) self.back_but = self.button_box.addButton( _("Back"), self.button_box.ActionRole) self.apply_but.hide() self.back_but.hide() self.cancel_but.setText(_("Quit OpenMolar")) self.set_labels() def sizeHint(self): return QtCore.QSize(400, 400) def wait(self, waiting=True): if waiting: QtWidgets.QApplication.instance().setOverrideCursor( QtCore.Qt.WaitCursor) else: QtWidgets.QApplication.instance().restoreOverrideCursor() def set_labels(self): self.next_but.setEnabled(False) self.top_label.setText(self.current_page.header_text) self.cancel_but.setVisible(self.current_index == 0) self.back_but.setVisible(self.current_index != 0) if self.current_index == 5 and self.creating_new_database: self.next_but.setText(_("Create Database Now!")) elif self.current_index == 9: self.next_but.setText(_("Write Config File and Proceed")) else: self.next_but.setText(_("Next")) def __next__(self): ''' 0 = intro 1 = application password 2 = host and port 3 = database option (create new or use existing) 4 = database details (dbname, user and password) 5 = enter privileged user 6 = create database 7 = layout schema 8 = test connection, write config and exit. ''' i = self.wizard_widget.currentIndex() if self.current_page.unfinished_business(): return if not self.current_page.is_completed: QtWidgets.QMessageBox.warning(self, _("error"), self.current_page.error_message) new_i = i elif i == 9: self.finish() return elif not self.creating_new_database: new_i = self.EXISTING_DB_ORDER[self.EXISTING_DB_ORDER.index(i) + 1] else: new_i = i + 1 LOGGER.debug("next page is page %s", new_i) self.page5.set_creating_new(self.creating_new_database) self.wizard_widget.setCurrentIndex(new_i) self.set_labels() def back(self): i = self.wizard_widget.currentIndex() if i == 0: new_i = 0 elif i == 9: # shouldn't happen? new_i = 0 # don't create a database by hitting "back" elif not self.creating_new_database: new_i = self.EXISTING_DB_ORDER[self.EXISTING_DB_ORDER.index(i) - 1] else: new_i = i - 1 self.wizard_widget.setCurrentIndex(new_i) self.set_labels() def database_exists_already(self): self.wizard_widget.setCurrentIndex(4) self.set_labels() def table_creation_failed(self): self.wizard_widget.setCurrentIndex(4) self.set_labels() def finish(self): dom = minidom.parseString(XML_TEMPLATE) # hash the password (twice) and save it sha1 = hashlib.sha1(("diqug_ADD_SALT_3i2some%s" % self.sys_password).encode("utf8")).hexdigest() PSWORD = hashlib.md5(sha1.encode("utf8")).hexdigest() dom.getElementsByTagName( "system_password")[0].firstChild.replaceWholeText(PSWORD) # server settings xmlnode = dom.getElementsByTagName("server")[0] # host xmlnode.getElementsByTagName( "location")[0].firstChild.replaceWholeText(self.host) # port xmlnode.getElementsByTagName( "port")[0].firstChild.replaceWholeText(str(self.port)) # database settings xmlnode = dom.getElementsByTagName("database")[0] # user xmlnode.getElementsByTagName( "user")[0].firstChild.replaceWholeText(self.db_user) # password xmlnode.getElementsByTagName( "password")[0].firstChild.replaceWholeText( base64.b64encode(self.db_pass.encode("utf8")).decode("utf8")) # db name xmlnode.getElementsByTagName( "dbname")[0].firstChild.replaceWholeText(self.db_name) settings_dir = os.path.dirname(localsettings.global_cflocation) successful_save = False try: if not os.path.exists(settings_dir): LOGGER.info("creating settings directory '%s'", settings_dir) os.mkdir(settings_dir) LOGGER.info( 'writing settings to %s', localsettings.global_cflocation) f = open(localsettings.global_cflocation, "w") f.write(dom.toxml()) f.close() localsettings.cflocation = localsettings.global_cflocation successful_save = True except OSError: pass except IOError: pass if not successful_save: message = ( "unable to write to '%s' " "we need root privileges for that\n" "will resort to putting settings into a local file '%s'") LOGGER.warning(message, settings_dir, localsettings.cflocation) settings_dir = os.path.dirname(localsettings.cflocation) if not os.path.exists(settings_dir): os.mkdir(settings_dir) LOGGER.info("putting a local settings file in '%s'", settings_dir) f = open(localsettings.cflocation, "w") f.write(dom.toxml()) f.close() localsettings.cflocation = localsettings.cflocation conf_text = "[login]\nPASSWORD=\nUSER1=\nUSER2=" if self.page9.single_user: conf_text = conf_text.replace("USER1=", "USER1=USER") f = open(localsettings.LOGIN_CONF, "w") f.write(conf_text) f.close() self.accept() def _clicked(self, but): ''' "private" function called when button box is clicked ''' if but == self.next_but: next(self) elif but == self.back_but: self.back() else: BaseDialog._clicked(self, but) @property def current_index(self): return self.wizard_widget.currentIndex() @property def current_page(self): return self.wizard_widget.currentWidget() @property def sys_password(self): return str(self.page1.line_edit1.text()) @property def host(self): return str(self.page2.line_edit1.text()) @property def port(self): return int(str(self.page2.line_edit2.text())) @property def db_name(self): return str(self.page5.line_edit1.text()) @property def db_user(self): return str(self.page5.line_edit2.text()) @property def db_pass(self): return str(self.page5.line_edit3.text()) @property def privileged_user(self): return str(self.page4.line_edit1.text()) @property def privileged_user_pass(self): return str(self.page4.line_edit2.text()) @property def creating_new_database(self): return self.page3.create_new openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/gp17_printdialog.py0000644000175000017500000002006012710144046026067 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.printing.gp17.gp17_data import Gp17Data from openmolar.qt4gui.printing.gp17 import GP17iFront, GP17iBack class ChooseFormWidget(QtWidgets.QGroupBox): FORMS = (GP17iFront, GP17iBack) def __init__(self, parent=None): QtWidgets.QGroupBox.__init__(self, _("Form options"), parent) layout = QtWidgets.QVBoxLayout(self) self.checkboxes = [] for form in self.FORMS: cb = QtWidgets.QCheckBox(form.NAME) cb.setChecked(form.is_active()) self.checkboxes.append(cb) layout.addWidget(cb) self.boxes_checkbox = QtWidgets.QCheckBox(_("use test mode (print boxes)")) self.image_checkbox = QtWidgets.QCheckBox( _("use a background image for the form (if available)")) layout.addWidget(self.boxes_checkbox) layout.addWidget(self.image_checkbox) def sizeHint(self): return QtCore.QSize(200, 100) @property def chosen_forms(self): for i, form in enumerate(self.FORMS): if self.checkboxes[i].isChecked(): yield form class CourseChoiceWidget(QtWidgets.QWidget): DEFAULT = 0 PRIOR_APPROVAL = 1 def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) layout = QtWidgets.QHBoxLayout(self) cb = QtWidgets.QRadioButton(_("Completed Treatment")) self.pa_cb = QtWidgets.QRadioButton(_("Prior Approval")) cb.setChecked(True) layout.addWidget(cb) layout.addWidget(self.pa_cb) @property def chosen(self): if self.pa_cb.isChecked(): return self.PRIOR_APPROVAL return self.DEFAULT class GP17PrintDialog(ExtendableDialog): def __init__(self, patient, parent=None): ExtendableDialog.__init__(self, parent) self.pt = patient self.data = Gp17Data(patient) self.setWindowTitle(_("GP17 Dialog")) label = QtWidgets.QLabel("%s" % _("Print a GP17 Form")) label.setAlignment(QtCore.Qt.AlignCenter) self.insertWidget(label) self.dentist_combobox = QtWidgets.QComboBox() self.dentist_combobox.addItems(localsettings.activedents) self.course_choice_widget = CourseChoiceWidget(self) frame = QtWidgets.QFrame() layout = QtWidgets.QGridLayout(frame) label = QtWidgets.QLabel(_("Use this dentists stamp?")) layout.addWidget(label, 0, 0) layout.addWidget(self.dentist_combobox, 0, 1) layout.addWidget(self.course_choice_widget, 1, 0, 1, 2) self.chart_cb = QtWidgets.QCheckBox(_("Chart")) self.bpe_cb = QtWidgets.QCheckBox(_("BPE")) self.accd_cb = QtWidgets.QCheckBox(_("Acceptance Date")) self.cmpd_cb = QtWidgets.QCheckBox(_("Completion Date")) self.tx_cb = QtWidgets.QCheckBox(_("Treatments")) self.charting_gb = QtWidgets.QGroupBox(_("Include Chart Details")) self.charting_gb.setCheckable(True) gb_layout = QtWidgets.QVBoxLayout(self.charting_gb) gb_layout.addWidget(self.chart_cb) gb_layout.addWidget(self.bpe_cb) self.course_gb = QtWidgets.QGroupBox(_("Include Course Details")) self.course_gb.setCheckable(True) gb_layout = QtWidgets.QVBoxLayout(self.course_gb) gb_layout.addWidget(self.accd_cb) gb_layout.addWidget(self.cmpd_cb) gb_layout.addWidget(self.tx_cb) self.choose_form_widget = ChooseFormWidget(self) adv_widg = QtWidgets.QFrame() layout = QtWidgets.QGridLayout(adv_widg) layout.addWidget(self.charting_gb, 0, 0) layout.addWidget(self.course_gb, 1, 0) layout.addWidget(self.choose_form_widget, 0, 1, 2, 1) self.set_advanced_but_text(_("Options")) self.add_advanced_widget(adv_widg) self.insertWidget(frame) self.set_dentist() self.set_default_values() self.enableApply() self.course_gb.toggled.connect(self.toggle_cbs) self.charting_gb.toggled.connect(self.toggle_cbs) def toggle_cbs(self, value): group_box = self.sender() for cb in group_box.children(): try: cb.setChecked(value) except AttributeError: pass def set_dentist(self): ''' attempt to set the correct dentist for the form ''' if localsettings.apptix_reverse.get(self.data.dentist) in \ localsettings.activedents: pos = localsettings.activedents.index( localsettings.apptix_reverse.get(self.data.dentist)) self.dentist_combobox.setCurrentIndex(pos) else: self.dentist_combobox.setCurrentIndex(-1) def set_default_values(self): self.charting_gb.setChecked(True) self.chart_cb.setChecked(True) self.bpe_cb.setChecked(True) self.course_gb.setChecked(True) self.accd_cb.setChecked(True) self.cmpd_cb.setChecked(True) self.tx_cb.setChecked(True) def sizeHint(self): return QtCore.QSize(450, 150) @property def chosen_forms(self): return self.choose_form_widget.chosen_forms @property def print_boxes(self): return self.choose_form_widget.boxes_checkbox.isChecked() @property def print_background(self): return self.choose_form_widget.image_checkbox.isChecked() @property def dent_inits(self): return str(self.dentist_combobox.currentText()) @property def chosen_dentist(self): return localsettings.ops_reverse.get(self.dent_inits) @property def prior_approval(self): return self.course_choice_widget.chosen == \ self.course_choice_widget.PRIOR_APPROVAL def apply(self): ''' applies user specified changes to the gp17 data object ''' self.data.dentist = self.chosen_dentist for att, cb in ( ("accd", self.accd_cb), ("cmpd", self.cmpd_cb), ("chart", self.chart_cb), ("bpe", self.bpe_cb), ("tx", self.tx_cb), ): if not cb.isChecked(): self.data.exclusions.append(att) self.data.completed_only = not self.prior_approval def exec_(self): if ExtendableDialog.exec_(self): self.apply() return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/hygTreatWizard.py0000644000175000017500000001273012710144046025672 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.ptModules.estimates import TXHash from openmolar.qt4gui.fees import manipulate_plan from openmolar.qt4gui.compiled_uis import Ui_hygenist_wizard class HygTreatWizard(QtWidgets.QDialog, Ui_hygenist_wizard.Ui_Dialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.om_gui = parent self.practitioners = localsettings.activedents + \ localsettings.activehygs self.dents_comboBox.addItems(self.practitioners) self.setPractitioner(localsettings.clinicianNo) if self.om_gui.pt.has_planned_perio_txs: tx_list = "" for trt in self.om_gui.pt.treatment_course.periopl.split(" "): tx_list += "
  • %s
  • " % trt self.label.setText( "%s
      %s
    " % ( _("WARNING - " "THE FOLLOWING TREATMENTS ARE ALREADY PLANNED."), tx_list)) self.buttonBox.setEnabled(False) self.pushButton.clicked.connect(self._re_enable) self.groupBox.hide() self.clinicianGroupBox.hide() self.dents_comboBox.hide() else: self.planned_groupbox.hide() def _re_enable(self): self.planned_groupbox.hide() self.groupBox.show() self.buttonBox.setEnabled(True) self.clinicianGroupBox.show() self.dents_comboBox.show() def setPractitioner(self, arg): ''' who's performing this treatment? ''' try: inits = localsettings.ops[arg] self.dents_comboBox.setCurrentIndex( self.practitioners.index(inits)) except: self.dents_comboBox.setCurrentIndex(-1) @property def trt(self): if self.sp_radioButton.isChecked(): return "SP" elif self.db_radioButton.isChecked(): return "SP-" elif self.extsp_radioButton.isChecked(): return "SP+" @property def dent(self): return str(self.dents_comboBox.currentText()) def getInput(self): ''' called to exec the dialog ''' result = True while result: if self.exec_(): if self.dent == "": message = _("Please enter a dentist / hygienist") QtWidgets.QMessageBox.information(self, _("Whoops"), message) else: break else: result = False return result def perform_tx(self): pt = self.om_gui.pt if pt.serialno == 0: self.om_gui.advise(_("no patient selected"), 1) return if "N" in pt.cset: self.db_radioButton.hide() self.extsp_radioButton.hide() else: self.extsp_radioButton.setChecked( "SP+" in pt.treatment_course.periopl) result = self.getInput() if result: courseno = pt.treatment_course.courseno if self.trt in pt.treatment_course.periopl: n_txs = pt.treatment_course.periocmp.split( " ").count(self.trt) + 1 hash_ = localsettings.hash_func( "%sperio%s%s" % (courseno, n_txs, self.trt)) tx_hash = TXHash(hash_) manipulate_plan.tx_hash_complete(self.om_gui, tx_hash) else: trts = (("perio", "%s" % self.trt),) manipulate_plan.add_treatments_to_plan(self.om_gui, trts, True) note = "%s %s %s\n" % (self.trt, _("performed by"), self.dent) self.om_gui.addNewNote(note) return True else: self.om_gui.advise("Hyg Treatment not applied", 2) return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/implant_choice_dialog.py0000644000175000017500000000765312710144046027227 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog STATIC_LIST = [] for shortcut, description in (("IM/TIT", _("Titanium Implant")), ("IM/ABUT", _("Implant Abutment")), ("CR,IC", _("Implant Crown")), ("BR/CR,IC", _("Implant Bridge Retainer")), ("BR/P,IC", _("Implant Bridge Pontic")),): implant_chart_button = namedtuple('ImplantType', ("shortcut", "description", "tooltip")) implant_chart_button.description = description implant_chart_button.tooltip = "" implant_chart_button.shortcut = shortcut STATIC_LIST.append(implant_chart_button) class ImplantChoiceDialog(ExtendableDialog): def __init__(self, static, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Implant Choice Dialog")) self.om_gui = parent self.chosen_shortcut = None scroll_area = QtWidgets.QScrollArea() frame = QtWidgets.QFrame() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.but_layout = QtWidgets.QVBoxLayout(frame) self.insertWidget(scroll_area) self.apply_but.hide() self.more_but.hide() if static: self.add_buttons(STATIC_LIST) else: self.add_buttons(localsettings.FEETABLES.ui_implant_chart_buttons) def sizeHint(self): return QtCore.QSize(300, 300) def add_buttons(self, implant_chart_buttons): while self.but_layout.count(): widget_item = self.but_layout.takeAt(0) widget_item.widget().setParent(None) for implant_button in implant_chart_buttons: but = QtWidgets.QPushButton(implant_button.description) but.setToolTip(implant_button.tooltip) but.clicked.connect( partial(self.but_clicked, implant_button.shortcut)) self.but_layout.addWidget(but) self.but_layout.addStretch(100) def but_clicked(self, shortcut): self.chosen_shortcut = shortcut self.accept() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/initial_check_dialog.py0000644000175000017500000001370312710144046027030 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.dbtools import appointments LOGGER = logging.getLogger("openmolar") class InitialCheckDialog(ExtendableDialog): def __init__(self, parent=None): ExtendableDialog.__init__(self, parent) self.setWindowTitle(_("Initial Check Dialog")) top_label = WarningLabel( _('OpenMolar has found the following issues with your database.')) frame = QtWidgets.QFrame(self) self.form_layout = QtWidgets.QFormLayout(frame) self.add_advanced_widget(QtWidgets.QLabel(_("No Advanced options"))) self.enableApply(True) self.insertWidget(top_label) self.insertWidget(frame) self.apply_but.setText(_("Proceed")) self.cancel_but.hide() def advise(self, message): QtWidgets.QMessageBox.information(self.parent(), _("Information"), message) @property def has_issues(self): example_name = _("Example Dental Practice") has_issues = ( len(localsettings.cashbookCodesDict) < 1 or len(localsettings.activedents) < 1 or localsettings.PRACTICE_NAME == example_name ) if not has_issues: return False if not localsettings.activedents: but = QtWidgets.QPushButton(_("How do I Fix This?")) but.clicked.connect(self.show_add_clinician_advise) message = _("Your database contains no dentists") self.form_layout.addRow(message, but) if localsettings.PRACTICE_NAME == example_name: but = QtWidgets.QPushButton(_("How do I Fix This?")) but.clicked.connect(self.show_edit_practice) message = "%s '%s'" % ( _("Your practice name is"), example_name) self.form_layout.addRow(message, but) if len(appointments.future_slots(localsettings.currentDay(), localsettings.BOOKEND, list(localsettings.apptix.values()), override_emergencies=True) ) == 0: but = QtWidgets.QPushButton(_("Why is this?")) but.clicked.connect(self.show_appt_space) message = _("You have no appointment space in your diary!") self.form_layout.addRow(message, but) return True @property def critical_messages(self): if len(localsettings.cashbookCodesDict) < 1: yield "%s
    %s" % ( _("The cbcodes table in your database is inadequate."), _("This will create problems when accepting payments.") ) @property def messages(self): yield "%s %d %s" % (_("you have"), localsettings.PT_COUNT, _("patients")) yield "%s %d %s" % (_("you have"), len(localsettings.activedents), _("active dentists")) yield "%s %d %s" % (_("you have"), len(localsettings.activehygs), _("active hygienists")) yield "%s %s" % (_("appointment search final date is"), localsettings.formatDate(localsettings.BOOKEND)) def show_add_clinician_advise(self): self.advise(_("Once the application is open, click on Tools " "- > Menu - > Add Clinician")) def show_edit_practice(self): self.advise(_("Once the application is open, click on Tools " "- > Menu - > Edit Practice Details")) def show_appt_space(self): self.advise( "

    %s

      " "
    • %s
    • %s
    • %s
    • %s
    • " "
    " % ( _("This could be for a variety of reasons"), _("You need to have at least one clinician with an " "appointment book"), _("No Clinicians have any days contracted to work " "in the practice?"), _("Perhaps all future clinical time is already booked?"), _("The BOOKEND value (last day to search for appointments) " "may simply need adjusting"))) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/login_dialog.py0000644000175000017500000002633612717610503025363 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import hashlib import logging import os import sys from xml.dom import minidom from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.customwidgets.upper_case_line_edit import \ UpperCaseLineEdit from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class AlternateServersWidget(QtWidgets.QWidget): chosen = 0 def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.radio_buttons = [] layout = QtWidgets.QVBoxLayout(self) for i, server in enumerate(localsettings.server_names): if i == 0: server = "%s (%s)" % (server, _("Default")) radio_button = (QtWidgets.QRadioButton(server, self)) radio_button.setChecked(i == 0) self.radio_buttons.append(radio_button) radio_button.toggled.connect(self.input) layout.addWidget(radio_button) @property def has_options(self): return self.radio_buttons != [] @property def confirm_message(self): return "%s %s< hr />%s" % ( _("You have selected to connect to"), localsettings.server_names[self.chosen], _("This is not the default database - " "are you sure you wish to use this database?")) def input(self, bool_): if not bool_: return self.chosen = self.radio_buttons.index(self.sender()) if self.chosen != 0: if QtWidgets.QMessageBox.question( self, _("confirm"), self.confirm_message, QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No: self.radio_buttons[0].setChecked(True) LOGGER.warning("chosen server = %s", self.chosen) class LoginDialog(ExtendableDialog): sys_password = None uninitiated = True __is_developer_environment = None def __init__(self, parent=None): ExtendableDialog.__init__(self, parent) self.setWindowTitle(_("Login Dialog")) header_label = WarningLabel(_('Login Required')) self.password_lineEdit = QtWidgets.QLineEdit() self.password_lineEdit.setEchoMode(QtWidgets.QLineEdit.Password) self.user1_lineEdit = UpperCaseLineEdit() self.user1_lineEdit.setMaximumWidth(50) self.user2_lineEdit = UpperCaseLineEdit() self.user2_lineEdit.setMaximumWidth(50) self.reception_radioButton = QtWidgets.QRadioButton( _("Reception Machine")) self.surgery_radioButton = QtWidgets.QRadioButton(_("Surgery Machine")) self.surgery_radioButton.setChecked(True) frame = QtWidgets.QFrame() form_layout = QtWidgets.QFormLayout(frame) form_layout.addRow(_("System Password"), self.password_lineEdit) form_layout.addRow(_("User 1 (Required)"), self.user1_lineEdit) form_layout.addRow(_("User 2 (Optional)"), self.user2_lineEdit) but_group = QtWidgets.QButtonGroup(self) but_group.addButton(self.surgery_radioButton) but_group.addButton(self.reception_radioButton) self.insertWidget(header_label) self.insertWidget(frame) self.insertWidget(self.surgery_radioButton) self.insertWidget(self.reception_radioButton) self.enableApply() # grab any stored information PASSWORD, USER1, USER2 = localsettings.autologin() self.password_lineEdit.setText(PASSWORD) self.user1_lineEdit.setText(USER1) self.user2_lineEdit.setText(USER2) self.autoreception(USER1) self.autoreception(USER2) self.parse_conf_file() self.alternate_servers_widget = AlternateServersWidget(self) if self.alternate_servers_widget.has_options: self.more_but.setText(_("Database choice")) self.add_advanced_widget(self.alternate_servers_widget) else: self.more_but.hide() self.user1_lineEdit.textEdited.connect(self.autoreception) self.user2_lineEdit.textEdited.connect(self.autoreception) self.dirty = True self.set_check_on_cancel(True) QtCore.QTimer.singleShot(1000, self._developer_login) def sizeHint(self): return QtCore.QSize(350, 300) def showEvent(self, event): self.password_lineEdit.setFocus(True) @property def abandon_message(self): return _("Are you sure you wish to cancel the login process?") def parse_conf_file(self): try: dom = minidom.parse(localsettings.cflocation) self.sys_password = dom.getElementsByTagName( "system_password")[0].firstChild.data servernames = dom.getElementsByTagName("connection") for i, server in enumerate(servernames): nameDict = server.attributes try: localsettings.server_names.append(nameDict["name"].value) except KeyError: localsettings.server_names.append("%d" % i + 1) except IOError: LOGGER.warning("still no settings file. quitting politely") QtWidgets.QMessageBox.information( None, _("Unable to Run OpenMolar"), _("Good Bye!")) QtWidgets.QApplication.instance().closeAllWindows() sys.exit("unable to run - openMolar couldn't find a settings file") def autoreception(self, user): ''' check to see if the user is special user "rec" which implies a reception machine ''' if user.lower() == "rec": self.reception_radioButton.setChecked(True) @property def _is_developer_environment(self): if self.__is_developer_environment is None: self.__is_developer_environment = False try: dev_path = os.path.join( localsettings.LOCALFILEDIRECTORY, "dev_login.txt") f = open(dev_path, "r") data = f.read().strip("\n") f.close() if localsettings.hash_func(data) == \ '1fd0c27f4d65caaa10ef5ef6a714faf96ed44fdd': LOGGER.warning("allowing developer login") self.__is_developer_environment = True else: LOGGER.warning( "dev_login - file present, but with bad checksum") except: # fail quietly pass return self.__is_developer_environment def _developer_login(self): ''' convenience function for developer to login without password ''' LOGGER.debug("Checking for developer environment") if "--no-dev-login" in sys.argv: return if self._is_developer_environment: LOGGER.info("developer environment found!") self.accept() else: LOGGER.debug("not a developer environment") @property def password_ok(self): if self._is_developer_environment: return True LOGGER.info("checking password") pword = "diqug_ADD_SALT_3i2some%s" % self.password_lineEdit.text() # hash the salted password (twice!) and compare to the value # stored in /etc/openmolar/openmolar.conf (linux) sha1_pass = hashlib.sha1(pword.encode("utf8")).hexdigest() stored_password = hashlib.md5(sha1_pass.encode("utf8")).hexdigest() match = stored_password == self.sys_password return match @property def user1(self): return self.user1_lineEdit.text() @property def user1_ok(self): return self.user1 in localsettings.allowed_logins @property def user2(self): return self.user2_lineEdit.text() @property def user2_ok(self): return self.user2 == "" or self.user2 in localsettings.allowed_logins @property def login_ok(self): try: return self.user1_ok and self.user2_ok and ( self._is_developer_environment or self.password_ok) except: LOGGER.exception("error checking login") @property def chosen_server(self): return self.alternate_servers_widget.chosen def db_check(self): LOGGER.debug("performing db_check") changedServer = localsettings.chosenserver != self.chosen_server localsettings.setChosenServer(self.chosen_server) if self.uninitiated or changedServer: # user has entered the correct password # so now we connect to the mysql database # for the 1st time # I do it this way so that anyone sniffing the network # won't see the mysql password until this point # this could and should possibly still be improved upon # maybe by using an ssl connection to the server. localsettings.initiateUsers(changedServer) self.uninitiated = False def exec_(self): if ExtendableDialog.exec_(self): if self.password_ok: return True else: QtWidgets.QMessageBox.warning( self.parent(), _("Login Error"), '

    %s %s

    %s' % ( _('Incorrect'), _("User/password combination!"), _('Please Try Again.') ) ) return self.exec_() return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py0000644000175000017500000001333612710144046030333 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import medform_check from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class CorrectionWidget(QtWidgets.QWidget): def __init__(self, pt, parent): QtWidgets.QWidget.__init__(self, parent) self.pt = pt self.dialog = parent label = QtWidgets.QLabel(_("Previously stored dates")) scroll_area = QtWidgets.QScrollArea() scroll_area.setMinimumHeight(100) frame = QtWidgets.QFrame() self.frame_layout = QtWidgets.QFormLayout(frame) scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) layout = QtWidgets.QVBoxLayout(self) layout.addWidget(label) layout.addWidget(scroll_area) def clear(self): ''' remove all widgets from the layout. ''' for i in range(self.frame_layout.count(), 0, -1): item = self.frame_layout.takeAt(i - 1) item.widget().setParent(None) def showEvent(self, event=None): self.clear() for date_ in self.pt.mh_form_dates(): but = QtWidgets.QPushButton(_("Delete")) but.clicked.connect(partial(self.delete_date, date_)) self.frame_layout.addRow(localsettings.readableDate(date_), but) def delete_date(self, date_): LOGGER.debug("pt %s delete_date %s", self.pt.serialno, date_) medform_check.delete(self.pt.serialno, date_) self.dialog.show_extension(False) class MedFormCheckDialog(ExtendableDialog): ''' Updates the medform table when a patient has completed an mh form. ''' def __init__(self, parent): ExtendableDialog.__init__(self, parent) self.setWindowTitle(_("Medical Form Checked Dialog")) self.pt = parent.pt self.patient_label = QtWidgets.QLabel(self.pt.name) self.patient_label.setAlignment(QtCore.Qt.AlignCenter) f = self.patient_label.font() f.setBold(True) self.patient_label.setFont(f) self.date_checked_label = WarningLabel( _('You are about to confirm that the patient has completed ' 'a medical history form.')) self.date_checked_label.setMaximumHeight(120) self.date_edit = QtWidgets.QDateEdit() self.date_edit.setDate(QtCore.QDate.currentDate()) self.date_edit.setMaximumDate(QtCore.QDate().currentDate()) self.date_edit.setCalendarPopup(True) frame = QtWidgets.QFrame(self) layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Date Checked"), self.date_edit) question_label = QtWidgets.QLabel( "%s" % _("Confirm this date now?")) question_label.setAlignment(QtCore.Qt.AlignCenter) self.insertWidget(self.patient_label) self.insertWidget(self.date_checked_label) self.insertWidget(frame) self.insertWidget(question_label) self.correction_widget = CorrectionWidget(self.pt, self) self.add_advanced_widget(self.correction_widget) self.enableApply() def sizeHint(self): return QtCore.QSize(400, 300) @property def check_date(self): ''' the date chosen by the user (default = today) ''' return self.date_edit.date().toPyDate() def apply(self): ''' commit changes to database ''' LOGGER.info("applying date for mh form check") self.pt.mh_form_date = self.check_date try: medform_check.insert(self.pt.serialno, self.check_date) LOGGER.debug("insertion OK") if self.date_edit.date() == QtCore.QDate.currentDate(): self.pt.addHiddenNote( "mednotes", _("Medical Form Completed"), one_only=True ) except medform_check.connect.IntegrityError: LOGGER.info("date already present in medforms table") openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py0000644000175000017500000001534312710144046031103 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools.brief_patient import BriefPatient from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.customwidgets.calendars import yearCalendar from openmolar.qt4gui.dialogs.find_patient_dialog import FindPatientDialog from openmolar.dbtools import medform_check LOGGER = logging.getLogger("openmolar") class MedFormDateEntryDialog(BaseDialog): ''' Updates the medform table when a patient has completed an mh form. ''' def __init__(self, serialno, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Medical Form Date Entry Dialog")) self.pt = BriefPatient(serialno) self.patient_label = QtWidgets.QLabel(self.pt.name_id) self.patient_label.setAlignment(QtCore.Qt.AlignCenter) f = self.patient_label.font() f.setBold(True) self.patient_label.setFont(f) year_button = QtWidgets.QPushButton(_("Change Year")) last_check = localsettings.formatDate(self.pt.mh_form_date) if not last_check: last_check = _("NEVER") self.date_checked_label = WarningLabel( "%s
    (%s %s)" % ( _('Please enter the date that this patient has completed ' 'a medical history form.'), _('Last recorded check was'), last_check) ) self.date_checked_label.setMaximumHeight(120) self.calendar = yearCalendar(self) self.insertWidget(self.patient_label) self.insertWidget(self.date_checked_label) self.insertWidget(year_button) self.insertWidget(self.calendar) year_button.clicked.connect(self.select_year) self.calendar.selected_date_signal.connect(self.accept) self.enableApply() @property def check_date(self): ''' the date chosen by the user (default = today) ''' return self.calendar.selectedDate def select_year(self): current_year = localsettings.currentDay().year year, result = QtWidgets.QInputDialog.getInt(self, _("Input"), _("Please select a year"), self.check_date.year, 2000, current_year) if result: LOGGER.debug("User chose year %s", year) new_date = QtCore.QDate(self.check_date).addYears( year - current_year) self.calendar.setSelectedDate(new_date.toPyDate()) self.calendar.update() def apply(self): ''' commit changes to database ''' LOGGER.info("applying date for mh form check") try: medform_check.insert(self.pt.serialno, self.check_date) LOGGER.debug("insertion OK") except medform_check.connect.IntegrityError: LOGGER.info("date already present in medforms table") QtWidgets.QMessageBox.information( self, _("Success!"), "%s %s %s %s" % (_("Sucessfully saved "), localsettings.formatDate(self.check_date), _("for patient"), self.pt.serialno)) def exec_(self): ''' raise the dialog ''' if not BaseDialog.exec_(self): return False if self.check_date > localsettings.currentDay(): QtWidgets.QMessageBox.warning(self, _("Error!"), _("That date is in the future!")) return self.exec_() if QtWidgets.QMessageBox.question( self, _("Confirm Action"), "%s
    %s %s
    %s" % ( self.pt.name_id, _("Date Checked"), localsettings.readableDate(self.check_date), _("Confirm this date now?")), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: return True else: return self.exec_() return False def allow_user_input(parent=None): ''' A convenience function to raise the find patient dialog then raise the calendar ''' dl = FindPatientDialog(parent) if dl.exec_(): try: dl2 = MedFormDateEntryDialog(dl.chosen_sno, dl) if dl2.exec_(): dl2.apply() except localsettings.PatientNotFoundError: LOGGER.debug("Patient Not Found - %s", dl.chosen_sno) QtWidgets.QMessageBox.warning( parent, _("Error!"), "%s %s
    %s" % (_("error getting serialno"), dl.chosen_sno, _("please check this number is correct?")) ) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) localsettings.initiate() allow_user_input() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/medical_history_dialog.py0000644000175000017500000004345312710144046027426 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import medhist from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.customwidgets.completer_textedit import \ CompletionTextEdit from openmolar.qt4gui.customwidgets.warning_label import WarningLabel LOGGER = logging.getLogger("openmolar") class SelectNoteDialog(BaseDialog): ''' this dialog offers the user a few options for notes after updating the medical history table. ''' NO_NOTE = _("Minor administrative correction - (leave no note)") def __init__(self, parent=None): BaseDialog.__init__(self, parent) label = WarningLabel(_("Please enter the reason for your alterations")) self.insertWidget(label) self.rbs = [] for note in (_("Updated Medical Notes"), _("Corrected Medical Notes"), self.NO_NOTE): rb = QtWidgets.QRadioButton(note) self.rbs.append(rb) self.insertWidget(rb) if "REC" in localsettings.operator: self.rbs[-1].setChecked(True) else: self.rbs[0].setChecked(True) self.enableApply() self.cancel_but.hide() @property def note(self): for rb in self.rbs: if rb.isChecked(): return rb.text() if rb.text() != self.NO_NOTE else "" class DrugTextEdit(CompletionTextEdit): def __init__(self, parent=None): self.known_drugs = [] CompletionTextEdit.__init__(self, parent) def insertCompletion(self, completion): CompletionTextEdit.insertCompletion(self, completion) self.textCursor().insertText("\n") def showEvent(self, event): if self.completer is None: LOGGER.debug("Setting drug list") self.known_drugs = list(medhist.get_medications()) self.set_wordset(self.known_drugs) def add_new_drug(self, drug): self.known_drugs.append(drug) self.set_wordset(self.known_drugs) def sizeHint(self): return QtCore.QSize(400, 100) @property def meds(self): for drug in str(self.document().toPlainText()).split("\n"): if drug and drug.title() in self.known_drugs: yield drug.title() @property def unknown_meds(self): for drug in str(self.document().toPlainText()).split("\n"): if drug and drug.title() not in self.known_drugs: yield drug.title() def remove_med(self, med): meds = [] for drug in str(self.document().toPlainText()).split("\n"): if drug and drug.lower() != med.lower(): meds.append(drug) self.setText("\n".join(meds)) def setText(self, text): LOGGER.debug("setting text %s", text) CompletionTextEdit.setText(self, text.strip("\n").title()) cursor = self.textCursor() cursor.movePosition(cursor.End, cursor.MoveAnchor) self.setTextCursor(cursor) class MedicalHistoryDialog(BaseDialog): def __init__(self, pt, parent=None): BaseDialog.__init__(self, parent, remove_stretch=True) self.pt = pt self.meds_text_edit = DrugTextEdit() patient_label = QtWidgets.QLabel( "%s
    %s" % (_("Medical History for"), pt.name_id) ) patient_label.setAlignment(QtCore.Qt.AlignCenter) self.meds_line_edit = QtWidgets.QLineEdit() self.meds_line_edit.setMaxLength(200) self.warning_line_edit = QtWidgets.QLineEdit() self.warning_line_edit.setMaxLength(60) self.allergies_line_edit = QtWidgets.QLineEdit() self.allergies_line_edit.setMaxLength(60) self.respiratory_line_edit = QtWidgets.QLineEdit() self.respiratory_line_edit.setMaxLength(60) self.heart_line_edit = QtWidgets.QLineEdit() self.heart_line_edit.setMaxLength(60) self.bleeding_line_edit = QtWidgets.QLineEdit() self.bleeding_line_edit.setMaxLength(60) self.arthritis_line_edit = QtWidgets.QLineEdit() self.arthritis_line_edit.setMaxLength(60) self.diabetes_line_edit = QtWidgets.QLineEdit() self.diabetes_line_edit.setMaxLength(60) self.infection_line_edit = QtWidgets.QLineEdit() self.infection_line_edit.setMaxLength(60) self.endocarditis_line_edit = QtWidgets.QLineEdit() self.endocarditis_line_edit.setMaxLength(60) self.liver_line_edit = QtWidgets.QLineEdit() self.liver_line_edit.setMaxLength(60) self.anaesthetic_line_edit = QtWidgets.QLineEdit() self.anaesthetic_line_edit.setMaxLength(60) self.joint_line_edit = QtWidgets.QLineEdit() self.joint_line_edit.setMaxLength(60) self.heart_surgery_line_edit = QtWidgets.QLineEdit() self.heart_surgery_line_edit.setMaxLength(60) self.brain_surgery_line_edit = QtWidgets.QLineEdit() self.brain_surgery_line_edit.setMaxLength(60) self.hospitalised_line_edit = QtWidgets.QLineEdit() self.hospitalised_line_edit.setMaxLength(60) self.cjd_line_edit = QtWidgets.QLineEdit() self.cjd_line_edit.setMaxLength(60) self.other_text_edit = QtWidgets.QTextEdit() self.other_text_edit.setMaximumHeight(120) self.med_alert_cb = QtWidgets.QCheckBox(_("Medical Alert")) meds_frame = QtWidgets.QFrame() meds_frame.setMaximumHeight(150) layout = QtWidgets.QFormLayout(meds_frame) layout.addRow(_("Medications"), self.meds_text_edit) layout.addRow(_("Medication Comments"), self.meds_line_edit) l_frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(l_frame) layout.addRow(_("Warning Card"), self.warning_line_edit) layout.addRow(_("Allergies"), self.allergies_line_edit) layout.addRow(_("Respiratory"), self.respiratory_line_edit) layout.addRow(_("Heart"), self.heart_line_edit) layout.addRow(_("Diabetes"), self.diabetes_line_edit) layout.addRow(_("Arthritis"), self.arthritis_line_edit) layout.addRow(_("Bleeding Disorders"), self.bleeding_line_edit) layout.addRow(_("Infectious Diseases"), self.infection_line_edit) layout.addRow(_("Endocarditis"), self.endocarditis_line_edit) layout.addRow(_("Mark as Medical Alert"), self.med_alert_cb) r_frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(r_frame) layout.addRow(_("Liver"), self.liver_line_edit) layout.addRow(_("Anaesthetic"), self.anaesthetic_line_edit) layout.addRow(_("Joint Replacement"), self.joint_line_edit) layout.addRow(_("Heart Surgery"), self.heart_surgery_line_edit) layout.addRow(_("Brain Surgery"), self.brain_surgery_line_edit) layout.addRow(_("Hospitalised"), self.hospitalised_line_edit) layout.addRow(_("CJD"), self.cjd_line_edit) layout.addRow(_("Other"), self.other_text_edit) frame = QtWidgets.QFrame() vlayout = QtWidgets.QHBoxLayout(frame) vlayout.setContentsMargins(0, 0, 0, 0) vlayout.addWidget(l_frame) vlayout.addWidget(r_frame) scroll_area = QtWidgets.QScrollArea() scroll_area.setWidgetResizable(True) scroll_area.setWidget(frame) self.insertWidget(patient_label) self.insertWidget(meds_frame) self.insertWidget(scroll_area) self.mh = None self.new_mh = None self.checked_only = False self.setMinimumWidth( QtWidgets.QApplication.desktop().screenGeometry().width() - 20) self.setMinimumHeight( QtWidgets.QApplication.desktop().screenGeometry().height() * .6) QtCore.QTimer.singleShot(10, self.load_mh) self.enableApply() def load_mh(self): LOGGER.debug("loading medical history") self.mh = medhist.get_mh(self.pt.serialno) if self.is_new_mh: return def set_text(le, value): if value is None: le.setText("") else: le.setText(value) set_text(self.warning_line_edit, self.mh.warning_card) set_text(self.meds_line_edit, self.mh.medication_comments) set_text(self.allergies_line_edit, self.mh.allergies) set_text(self.heart_line_edit, self.mh.heart) set_text(self.diabetes_line_edit, self.mh.diabetes) set_text(self.arthritis_line_edit, self.mh.arthritis) set_text(self.respiratory_line_edit, self.mh.respiratory) set_text(self.bleeding_line_edit, self.mh.bleeding) set_text(self.infection_line_edit, self.mh.infectious_disease) set_text(self.endocarditis_line_edit, self.mh.endocarditis) set_text(self.liver_line_edit, self.mh.liver) set_text(self.anaesthetic_line_edit, self.mh.anaesthetic) set_text(self.joint_line_edit, self.mh.joint_replacement) set_text(self.heart_surgery_line_edit, self.mh.heart_surgery) set_text(self.brain_surgery_line_edit, self.mh.brain_surgery) set_text(self.hospitalised_line_edit, self.mh.hospital) set_text(self.cjd_line_edit, self.mh.cjd) set_text(self.other_text_edit, self.mh.other) self.med_alert_cb.setChecked(self.mh.alert) self.meds_text_edit.setText( "\n".join(sorted(self.mh.medications.keys())) + "\n") @property def is_new_mh(self): return self.mh.ix is None def advise(self, message): QtWidgets.QMessageBox.information(self, _("message"), message) def sizeHint(self): return QtCore.QSize(1100, 700) def showEvent(self, event): self.meds_text_edit.setFocus() @property def meds(self): return self.meds_text_edit.meds @property def unknown_meds(self): return self.meds_text_edit.unknown_meds def check_new_meds(self): for med in self.unknown_meds: LOGGER.debug("unknown medication found %s", med) result = QtWidgets.QMessageBox.question( self, _("question"), "'%s' %s
    %s" % ( med, _("is not a known drug on the system"), _("Would you like to add it?") ), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) if result == QtWidgets.QMessageBox.Yes: medhist.insert_medication(med) self.meds_text_edit.add_new_drug(med) else: if QtWidgets.QMessageBox.question( self, _("question"), "%s '%s' %s" % (_("Delete"), med, _("from your input?")), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No: return False else: self.meds_text_edit.remove_med(med) return True def get_new_mh(self, rejecting=False): ''' checks what has been entered, and saves it to self.new_mh returns (result, checked_only) result = whether any changes have been applied. checked_only = bool ''' result = True if not rejecting: result = self.check_new_meds() meds_dict = {} for med in self.meds: meds_dict[med] = "" if med not in self.mh.medications: LOGGER.debug("new medication %s", med) for med in self.unknown_meds: if med not in self.mh.medications: LOGGER.debug("unknown new medication found %s", med) meds_dict[med] = "" for med in self.mh.medications: if med not in self.meds: LOGGER.debug("deleted medication %s", med) self.new_mh = medhist.MedHist( None, # ix str(self.warning_line_edit.text()), meds_dict, str(self.meds_line_edit.text()), str(self.allergies_line_edit.text()), str(self.respiratory_line_edit.text()), str(self.heart_line_edit.text()), str(self.diabetes_line_edit.text()), str(self.arthritis_line_edit.text()), str(self.bleeding_line_edit.text()), str(self.infection_line_edit.text()), str(self.endocarditis_line_edit.text()), str(self.liver_line_edit.text()), str(self.anaesthetic_line_edit.text()), str(self.joint_line_edit.text()), str(self.heart_surgery_line_edit.text()), str(self.brain_surgery_line_edit.text()), str(self.hospitalised_line_edit.text()), str(self.cjd_line_edit.text()), str(self.other_text_edit.toPlainText()), self.med_alert_cb.isChecked(), localsettings.currentDay(), None, None ) return result @property def has_edits(self): if self.new_mh is None: return False has_edits = False for prop in (medhist.PROPERTIES): if prop in ("ix", "time_stamp", "chkdate", 'modified_by'): continue old_val = self.mh._asdict().get(prop) new_val = self.new_mh._asdict().get(prop) if old_val is None: old_val = "" if old_val != new_val: LOGGER.debug( "changed item %s '%s' -> '%s'", prop, old_val, new_val) has_edits = True return has_edits def accept(self): if not self.get_new_mh(): return if not self.has_edits and self.mh.chkdate != self.new_mh.chkdate: if QtWidgets.QMessageBox.question( self, _("question"), _("No changes - mark as checked today?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes: self.checked_only = True else: BaseDialog.reject(self) return elif self.is_new_mh and not self.has_edits: if QtWidgets.QMessageBox.question( self, _("question"), _("Blank Medical History Entered - mark as checked today?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No: BaseDialog.reject(self) return BaseDialog.accept(self) def apply(self): LOGGER.debug("applying changes") if self.has_edits: dl = SelectNoteDialog(self) if dl.exec_() and dl.note: self.pt.addHiddenNote( "mednotes", dl.note, one_only=True) elif self.is_new_mh or self.checked_only: self.update_chkdate() self.pt.addHiddenNote( "mednotes", _("Checked Medical History"), one_only=True) self.save_mh() self.pt.mh_chkdate = self.new_mh.chkdate self.pt.MEDALERT = self.new_mh.alert def reject(self): self.get_new_mh(rejecting=True) if self.has_edits: if QtWidgets.QMessageBox.question( self, _("Confirm"), _("Abandon your changes?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No: return BaseDialog.reject(self) def save_mh(self): ''' save the medical history which has been entered. overwrite any edits made earlier on the same day. ''' if self.is_new_mh or self.new_mh.chkdate != self.mh.time_stamp.date(): LOGGER.info("writing new mh %s", self.new_mh) medhist.insert_mh(self.pt.serialno, self.new_mh) else: LOGGER.info("updating today's medical history") medhist.update_mh(self.mh.ix, self.new_mh) def update_chkdate(self): LOGGER.info("updating chkdate for existing mh") medhist.update_chkdate(self.mh.ix) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/mh_form_dialog.py0000644000175000017500000000736012710144046025673 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.printing.mh_print import MHPrint LOGGER = logging.getLogger("openmolar") class MHFormDialog(BaseDialog): chosen_date = QtCore.QDate.currentDate() def __init__(self, pt=None, parent=None): BaseDialog.__init__(self, parent) self.pt = pt self.setWindowTitle(_("MH Form Print Dialog")) self.radio_button_a = QtWidgets.QRadioButton(_("Leave fields empty")) self.radio_button_b = QtWidgets.QRadioButton( _("Populate with current MH")) if self.has_no_patient: message = _("No Patient Selected, A blank form will be produced") else: message = "%s
    %s" % ( _("Medical History form for"), pt.name_id) date_gb = QtWidgets.QGroupBox(_("Use this date for the form")) self.date_edit = QtWidgets.QDateEdit() self.date_edit.setDate(self.chosen_date) self.date_edit.setCalendarPopup(True) layout = QtWidgets.QVBoxLayout(date_gb) layout.addWidget(self.date_edit) label = QtWidgets.QLabel(message) label.setAlignment(QtCore.Qt.AlignCenter) self.insertWidget(label) self.insertWidget(self.radio_button_a) self.insertWidget(self.radio_button_b) self.insertWidget(date_gb) self.radio_button_a.setVisible(not self.has_no_patient) self.radio_button_b.setVisible(not self.has_no_patient) self.radio_button_a.setChecked(True) self.radio_button_b.setChecked(bool(self.pt and self.pt.mh_chkdate)) self.enableApply() def sizeHint(self): return QtCore.QSize(400, 300) @property def has_no_patient(self): return self.pt is None @property def include_mh(self): if self.has_no_patient or self.radio_button_a.isChecked(): return False return True def apply(self): LOGGER.info("mh_form_dialog - applying") mh_print = MHPrint(self.pt, self) mh_print.date_ = self.date_edit.date().toPyDate() mh_print.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/newBPE.py0000644000175000017500000000542512710144046024045 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_newBPE class BPE_Dialog(QtWidgets.QDialog, Ui_newBPE.Ui_Dialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) for cb in (self.bpe_comboBox, self.bpe2_comboBox, self.bpe3_comboBox, self.bpe4_comboBox, self.bpe5_comboBox, self.bpe6_comboBox): cb.setCurrentIndex(-1) def getInput(self): if QtWidgets.QDialog.exec_(self): return (True, self.getBPE()) else: return (False, None) def getBPE(self): # this could be simplified!!!! retarg = "" for i in (self.bpe_comboBox.currentText(), self.bpe2_comboBox.currentText(), self.bpe3_comboBox.currentText(), self.bpe4_comboBox.currentText(), self.bpe5_comboBox.currentText(), self.bpe6_comboBox.currentText()): val = str(i) if val == "": val = "_" retarg += val return retarg # a 6 character string. openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/newCourse.py0000644000175000017500000000677213012356611024704 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_newCourse from openmolar.settings import localsettings class NewCourseDialog(Ui_newCourse.Ui_Dialog, QtWidgets.QDialog): ''' a custom dialog to set the variables for a new course of treatment ''' def __init__(self, dnt1, dnt2, csetype, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.dateEdit.setDate(QtCore.QDate().currentDate()) self.dnt1_comboBox.addItems(localsettings.activedents) try: pos = localsettings.activedents.index(dnt1) except ValueError: pos = -1 self.dnt1_comboBox.setCurrentIndex(pos) self.dnt2_comboBox.addItems(localsettings.activedents) try: pos = localsettings.activedents.index(dnt2) except ValueError: pos = -1 self.dnt2_comboBox.setCurrentIndex(pos) self.cseType_comboBox.addItems(localsettings.CSETYPES) try: pos = localsettings.CSETYPES.index(csetype) except ValueError: pos = -1 self.cseType_comboBox.setCurrentIndex(pos) def getInput(self): ''' called to show and execute the dialog until sensible values are returned ''' while True: if self.exec_(): dnt1 = str(self.dnt1_comboBox.currentText()) dnt2 = str(self.dnt2_comboBox.currentText()) cset = str(self.cseType_comboBox.currentText()) retarg = (dnt1, dnt2, cset, self.dateEdit.date()) if "" in retarg: QtWidgets.QMessageBox.information( self.parent(), _("Error"), _("Some fields are missing, please check")) else: return (True, retarg) else: return(False, None) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/new_bridge_dialog.py0000644000175000017500000002336412710144046026353 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.customwidgets.simple_chartwidget import SimpleChartWidg from openmolar.qt4gui.customwidgets.warning_label import WarningLabel LOGGER = logging.getLogger("openmolar") RETAINER_LIST = [ ("GO", _("Gold")), ("V1", _("Bonded Porcelain")), ("LAVA", _("Lava")), ("OPAL", _("Opalite")), ("EMAX", _("Emax")), ("EVER", _("Everest")), ("SR", _("Resin")), ("OT", _("Other")), ] PONTIC_LIST = RETAINER_LIST class _OptionPage(QtWidgets.QWidget): def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.dialog = parent self.label = QtWidgets.QLabel(_("Choose from the following options")) self.label.setWordWrap(True) self.frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(self) layout.addWidget(self.label) layout.addWidget(self.frame) layout.addStretch(100) def sizeHint(self): return QtCore.QSize(400, 400) @property def is_completed(self): ''' should be overwritten! ''' return True @property def error_message(self): ''' should be overwritten! ''' return _("You haven't completed this option") @property def return_text(self): return "" @property def next_index(self): return 1 def cleanup(self): pass class PageZero(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.upper_radioButton = QtWidgets.QRadioButton(_("Upper Bridge")) self.lower_radioButton = QtWidgets.QRadioButton(_("Lower Bridge")) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.upper_radioButton) layout.addWidget(self.lower_radioButton) @property def is_completed(self): return (self.upper_radioButton.isChecked() or self.lower_radioButton.isChecked()) @property def properties(self): if self.upper_radioButton.isChecked(): return (("arch", "upper"),) return (("arch", "lower"),) class PageOne(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText(_("Bridge Type")) self.radioButton1 = QtWidgets.QRadioButton(_("Conventional Bridge")) self.radioButton2 = QtWidgets.QRadioButton(_("Resin Retained Bridge")) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.radioButton1) layout.addWidget(self.radioButton2) @property def is_completed(self): return (self.radioButton1.isChecked() or self.radioButton2.isChecked()) @property def properties(self): if self.radioButton2.isChecked(): return (("type", "conventional"),) return (("type", "resin_retained"),) class PageTwo(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText(_("Material")) self.radio_buttons = {} layout = QtWidgets.QGridLayout(self.frame) i = 0 for shortcut, description in RETAINER_LIST: if shortcut in self.radio_buttons: LOGGER.warning("duplication in BRIDGE MATERIAL LIST") continue rad_but = QtWidgets.QRadioButton(description) layout.addWidget(rad_but, i // 2, i % 2) self.radio_buttons[shortcut] = rad_but i += 1 @property def is_completed(self): for rad_but in list(self.radio_buttons.values()): if rad_but.isChecked(): return True return False @property def properties(self): for shortcut, rad_but in self.radio_buttons.items(): if rad_but.isChecked(): return (("material", shortcut),) class PageThree(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.dl = parent self.label.setText( _("Please select teeth which are to be used as retainers")) self.chartwidg = SimpleChartWidg(self, auto_ctrl_key=True) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.chartwidg) def showEvent(self, event=None): if self.dl.is_upper_input: self.chartwidg.disable_lowers() else: self.chartwidg.disable_uppers() @property def completed(self): return list(self.properties) != [] @property def properties(self): for tooth in self.chartwidg.getSelected(): yield(tooth, "retainer") class PageFour(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.dl = parent self.label.setText( _("Please select teeth which are to be used as pontics")) self.chartwidg = SimpleChartWidg(self, auto_ctrl_key=True) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.chartwidg) def showEvent(self, event=None): if self.dl.is_upper_input: self.chartwidg.disable_lowers() else: self.chartwidg.disable_uppers() @property def completed(self): return list(self.properties) != [] @property def properties(self): for tooth in self.chartwidg.getSelected(): yield(tooth, "pontic") class AcceptPage(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText("%s
    %s" % ( _("You have completed your input."), _("Please click on Apply"))) self.frame.hide() class NewBridgeDialog(ExtendableDialog): def __init__(self, om_gui=None): ExtendableDialog.__init__(self, om_gui) self.chosen_properties = {} self.om_gui = om_gui message = (_("Chart/Plan a Bridge")) self.setWindowTitle(message) self.header_label = WarningLabel(message) self.wizard_widget = QtWidgets.QStackedWidget() page0 = PageZero(self) page1 = PageOne(self) page2 = PageTwo(self) page3 = PageThree(self) page4 = PageFour(self) accept_page = AcceptPage(self) self.wizard_widget.addWidget(page0) self.wizard_widget.addWidget(page1) self.wizard_widget.addWidget(page2) self.wizard_widget.addWidget(page3) self.wizard_widget.addWidget(page4) self.wizard_widget.addWidget(accept_page) self.insertWidget(self.header_label) self.insertWidget(self.wizard_widget) self.advanced_label = QtWidgets.QLabel("self.advanced_label") self.add_advanced_widget(self.advanced_label) self.next_but = self.button_box.addButton( _("Next"), self.button_box.ActionRole) self.apply_but.hide() @property def is_upper_input(self): return self.chosen_properties.get("arch") == "upper" @property def current_index(self): return self.wizard_widget.currentIndex() @property def current_page(self): return self.wizard_widget.widget(self.current_index) def next_widget(self): if not self.current_page.is_completed: QtWidgets.QMessageBox.information(self, _("Whoops"), self.current_page.error_message) return for key, value in self.current_page.properties: self.chosen_properties[key] = value self.current_page.cleanup() index_ = self.current_index + self.current_page.next_index if index_ >= self.wizard_widget.count() - 1: self.apply_but.show() self.enableApply() self.next_but.hide() self.wizard_widget.setCurrentIndex(index_) def _clicked(self, but): ''' "private" function called when button box is clicked ''' role = self.button_box.buttonRole(but) if role == self.button_box.ActionRole: self.next_widget() else: ExtendableDialog._clicked(self, but) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/new_denture_dialog.py0000644000175000017500000003504412710144046026563 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.upper_case_line_edit import \ UpperCaseLineEdit from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog from openmolar.qt4gui.customwidgets.simple_chartwidget import SimpleChartWidg LOGGER = logging.getLogger("openmolar") VALID_INPUTS = ( "SR_F$", "SR_P/(R[1-8]{1,8},)?(L[1-8]{1,8})?$", "CC_F$", "CC_P/(R[1-8]{1,8},)?(L[1-8]{1,8})?$", "FL_F$", "FL_P/(R[1-8]{1,8},)?(L[1-8]{1,8})?$", "SL", "ST", "", # this one in case of no input whatsoever! ) class _OptionPage(QtWidgets.QWidget): finished_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.dialog = parent self.label = QtWidgets.QLabel(_("Choose from the following options")) self.label.setWordWrap(True) self.frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(self) layout.addWidget(self.label) layout.addWidget(self.frame) layout.addStretch(100) def sizeHint(self): return QtCore.QSize(400, 400) @property def is_completed(self): ''' should be overwritten! ''' return True @property def error_message(self): ''' should be overwritten! ''' return _("You haven't completed this option") @property def return_text(self): return "" @property def next_index(self): return 1 def cleanup(self): pass class PageTwo(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) layout = QtWidgets.QVBoxLayout(self.frame) self.full_radioButton = QtWidgets.QRadioButton( _("Complete Denture")) self.partial_radioButton = QtWidgets.QRadioButton( _("Partial Denture")) layout.addWidget(self.full_radioButton) layout.addWidget(self.partial_radioButton) @property def is_completed(self): ''' simply check user has checked a box ''' for widg in (self.full_radioButton, self.partial_radioButton): if widg.isChecked(): return True return False @property def next_index(self): if self.partial_radioButton.isChecked(): return 1 # skip the teeth choosing page if a complete denture return 2 @property def return_text(self): if self.full_radioButton.isChecked(): return "F" return "P/" class PageZero(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self._is_completed = False self._chosen_arch = "upper" self._return_text = "" upper_but = QtWidgets.QPushButton(_("New UPPER Denture")) upper_but.setMinimumSize(QtCore.QSize(150, 150)) lower_but = QtWidgets.QPushButton(_("New LOWER Denture")) lower_but.setMinimumSize(QtCore.QSize(150, 150)) full_fulls_but = QtWidgets.QPushButton( _("Complete Upper AND Lower Acrylic Dentures")) full_fulls_but.setMinimumSize(QtCore.QSize(150, 150)) layout = QtWidgets.QGridLayout(self.frame) layout.addWidget(upper_but, 0, 0) layout.addWidget(lower_but, 0, 1) layout.addWidget(full_fulls_but, 1, 0, 1, 2) upper_but.clicked.connect(self._finished) lower_but.clicked.connect(self._lower) full_fulls_but.clicked.connect(self._full_fulls) @property def is_completed(self): return self._is_completed @property def return_text(self): return self._return_text @property def chosen_arch(self): return self._chosen_arch def _finished(self): self._is_completed = True self.finished_signal.emit() def _lower(self): self._chosen_arch = "lower" self._finished() @property def next_index(self): if self._return_text == "SR_F/F": return 4 return 1 def _full_fulls(self): self._return_text = "SR_F/F" self._finished() class PageOne(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.acrylic_radioButton = QtWidgets.QRadioButton(_("Acrylic Denture")) self.metal_radioButton = QtWidgets.QRadioButton(_("Chrome Denture")) self.flexible_radioButton = QtWidgets.QRadioButton( _("Flexible Denture")) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.acrylic_radioButton) layout.addWidget(self.metal_radioButton) layout.addWidget(self.flexible_radioButton) @property def is_completed(self): return (self.acrylic_radioButton.isChecked() or self.metal_radioButton.isChecked() or self.flexible_radioButton.isChecked()) @property def return_text(self): if self.acrylic_radioButton.isChecked(): return "SR_" if self.metal_radioButton.isChecked(): return "CC_" if self.flexible_radioButton.isChecked(): return "FL_" class PageThree(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.dl = parent self.label.setText( _("Please select teeth which this denture is to replace")) self.chartwidg = SimpleChartWidg(self, auto_ctrl_key=True) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.chartwidg) def showEvent(self, event=None): if self.dl.is_upper_input: LOGGER.debug("hiding lower teeth") self.chartwidg.disable_lowers() else: LOGGER.debug("hiding upper teeth") self.chartwidg.disable_uppers() @property def return_text(self): r_teeth, l_teeth = set([]), set([]) for tooth in self.chartwidg.getSelected(): m = re.match("[ul]([lr])(\d)", tooth) if m: if m.groups()[0] == "r": r_teeth.add(m.groups()[1]) else: l_teeth.add(m.groups()[1]) retval = "" if r_teeth: retval += "R" for tooth in sorted(r_teeth, reverse=True): retval += tooth if l_teeth: if retval != "": retval += "," retval += "L" for tooth in sorted(l_teeth): retval += tooth return retval class PageFour(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText( _("You may wish to add the following optional items")) self.st_checkBox = QtWidgets.QCheckBox(_("Special Tray")) self.sl_checkBox = QtWidgets.QCheckBox(_("Soft Lining")) layout = QtWidgets.QVBoxLayout(self.frame) layout.addWidget(self.st_checkBox) layout.addWidget(self.sl_checkBox) @property def _additional_text(self): text_ = "" if self.st_checkBox.isChecked(): text_ += " ST" if self.sl_checkBox.isChecked(): text_ += " SL" return text_ @property def return_text(self): if self.dialog.default_lineedit.text() != "": return self._additional_text return "" class AcceptPage(_OptionPage): def __init__(self, parent=None): _OptionPage.__init__(self, parent) self.label.setText("%s
    %s" % ( _("You have completed your input."), _("Please click on Apply"))) self.frame.hide() class NewDentureDialog(ExtendableDialog): def __init__(self, om_gui=None): ExtendableDialog.__init__(self, om_gui) self.om_gui = om_gui message = (_("Add A New Denture To The Treatment Plan")) self.setWindowTitle(message) self.header_label = WarningLabel(message) self.ndu_le = UpperCaseLineEdit() self.ndl_le = UpperCaseLineEdit() self.set_default_lineedit(self.ndl_le) self.wizard_widget = QtWidgets.QStackedWidget() page0 = PageZero(self) page0.finished_signal.connect(self.next_widget) page1 = PageOne(self) page2 = PageTwo(self) page3 = PageThree(self) page4 = PageFour(self) accept_page = AcceptPage(self) self.wizard_widget.addWidget(page0) self.wizard_widget.addWidget(page1) self.wizard_widget.addWidget(page2) self.wizard_widget.addWidget(page3) self.wizard_widget.addWidget(page4) self.wizard_widget.addWidget(accept_page) self.insertWidget(self.header_label) self.insertWidget(self.wizard_widget) frame = QtWidgets.QFrame() layout = QtWidgets.QFormLayout(frame) layout.addRow(_("Upper Denture"), self.ndu_le) layout.addRow(_("Lower Denture"), self.ndl_le) self.add_advanced_widget(frame) self.next_but = self.button_box.addButton( _("Next"), self.button_box.ActionRole) self.apply_but.hide() self.ndu_le.textChanged.connect(self.enable_apply) self.ndl_le.textChanged.connect(self.enable_apply) self.ndu_le.editingFinished.connect(self.advanced_apply) self.ndl_le.editingFinished.connect(self.advanced_apply) @property def current_index(self): return self.wizard_widget.currentIndex() @property def current_page(self): return self.wizard_widget.widget(self.current_index) def next_widget(self): if not self.current_page.is_completed: QtWidgets.QMessageBox.information(self, _("Whoops"), self.current_page.error_message) return if self.current_index == 0: self.set_default_lineedit(self.current_page.chosen_arch) le = self.default_lineedit le.setText(le.text() + self.current_page.return_text) self.current_page.cleanup() if self.current_index == 4: if "F/F" in self.upper_input: le = self.ndl_le le.setText(le.text() + self.current_page.return_text) index_ = self.current_index + self.current_page.next_index if index_ >= self.wizard_widget.count() - 1: self.apply_but.show() self.next_but.hide() self.wizard_widget.setCurrentIndex(index_) @property def is_upper_input(self): return self.default_lineedit == self.ndu_le @property def default_lineedit(self): return self._default_lineedit def set_default_lineedit(self, value="upper"): if value == "upper": self._default_lineedit = self.ndu_le else: self._default_lineedit = self.ndl_le def _clicked(self, but): ''' "private" function called when button box is clicked ''' role = self.button_box.buttonRole(but) if role == self.button_box.ActionRole: self.next_widget() else: ExtendableDialog._clicked(self, but) @property def check_valid_input(self): ndus, ndls = self.upper_input, self.lower_input for ndu in ndus.split(" "): matched = False for input_ in VALID_INPUTS: if re.match(input_, ndu): matched = True if not matched: QtWidgets.QMessageBox.warning( self, _("Warning"), _("Your upper denture input is invalid")) return False for ndl in ndls.split(" "): LOGGER.debug("checking '%s'" % ndl) matched = False for input_ in VALID_INPUTS: if re.match(input_, ndl): matched = True if not matched: QtWidgets.QMessageBox.warning( self, ("Warning"), _("Your lower denture input is invalid")) return False return True def enable_apply(self, *args): self.enableApply(self.upper_input != "" or self.lower_input != "") def advanced_apply(self, *args): self.apply_but.show() self.enableApply(self.upper_input != "" or self.lower_input != "") @property def upper_input(self): return str(self.ndu_le.text()).strip(" ") @property def lower_input(self): return str(self.ndl_le.text()).strip(" ") @property def chosen_treatments(self): for input_ in self.upper_input.split(" "): if input_ != "": yield ("ndu", input_) for input_ in self.lower_input.split(" "): if input_ != "": yield ("ndl", input_) def exec_(self): result = ExtendableDialog.exec_(self) if result: result = self.check_valid_input or self.exec_() return result openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py0000644000175000017500000001262312710144046027565 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.connect import connect from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.printing.gp17.gp17_config import gp17config class _PrintSettings(QtWidgets.QWidget): user_input = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.left_sb = QtWidgets.QSpinBox() self.top_sb = QtWidgets.QSpinBox() self.scale_x_sb = QtWidgets.QDoubleSpinBox() self.scale_y_sb = QtWidgets.QDoubleSpinBox() form_layout = QtWidgets.QFormLayout(self) form_layout.addRow(_("Left Offset"), self.left_sb) form_layout.addRow(_("Top Offset"), self.top_sb) form_layout.addRow(_("Horizontal Scaling"), self.scale_x_sb) form_layout.addRow(_("Vertical Scaling"), self.scale_y_sb) def set_initial_values(self, left, top, scale_x, scale_y): self.left_sb.setValue(left) self.top_sb.setValue(top) self.scale_x_sb.setValue(scale_x) self.scale_y_sb.setValue(scale_y) for widg in (self.left_sb, self.top_sb, self.scale_x_sb, self.scale_y_sb): widg.valueChanged.connect(self.emit_user_input) def value(self, attribute): if attribute == "left": return str(self.left_sb.value()) elif attribute == "top": return str(self.top_sb.value()) elif attribute == "scale_x": return str(self.scale_x_sb.value()) elif attribute == "scale_y": return str(self.scale_y_sb.value()) def emit_user_input(self, *args): self.user_input.emit() class NHSFormsConfigDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) title = _("NHS Form Configuration") self.setWindowTitle(title) label = QtWidgets.QLabel("%s" % title) label.setAlignment(QtCore.Qt.AlignCenter) self.gp17_widget = _PrintSettings() self.gp17_widget.set_initial_values( gp17config.OFFSET_LEFT, gp17config.OFFSET_TOP, gp17config.SCALE_X, gp17config.SCALE_Y) self.gp17ifront_widget = _PrintSettings() self.gp17ifront_widget.set_initial_values( gp17config.GP17i_OFFSET_LEFT, gp17config.GP17i_OFFSET_TOP, gp17config.GP17i_SCALE_X, gp17config.GP17i_SCALE_Y) self.gp17iback_widget = _PrintSettings() self.gp17iback_widget.set_initial_values( gp17config.GP17iback_OFFSET_LEFT, gp17config.GP17iback_OFFSET_TOP, gp17config.GP17iback_SCALE_X, gp17config.GP17iback_SCALE_Y) self.gp17_widget.user_input.connect(self.enableApply) self.gp17ifront_widget.user_input.connect(self.enableApply) self.gp17iback_widget.user_input.connect(self.enableApply) tab_widget = QtWidgets.QTabWidget() tab_widget.addTab(self.gp17_widget, "GP17") tab_widget.addTab(self.gp17ifront_widget, "GP17i (front)") tab_widget.addTab(self.gp17iback_widget, "GP17i (back)") self.insertWidget(label) self.insertWidget(tab_widget) def apply(self): for widg, section in ( (self.gp17_widget, "gp17Front"), (self.gp17ifront_widget, "gp17iFront"), (self.gp17iback_widget, "gp17iBack") ): for option in ("top", "left", "scale_x", "scale_y"): gp17config.set(section, option, widg.value(option)) gp17config.save_config() gp17config.read_conf() def sizeHint(self): return QtCore.QSize(300, 350) def exec_(self): if BaseDialog.exec_(self): self.apply() return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/other_treatment_dialog.py0000644000175000017500000001111712710144046027443 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a dialog for chosing "other" items of treatment for a patient. ''' from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog class _TreatmentItemWidget(QtWidgets.QWidget): ''' A simple widget to display a treatment item ''' def __init__(self, shortcut, item, description, parent=None): QtWidgets.QWidget.__init__(self, parent) self.shortcut = shortcut layout = QtWidgets.QHBoxLayout(self) self.spinbox = QtWidgets.QSpinBox() self.spinbox.setFixedWidth(80) self.label = QtWidgets.QLabel(description) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.spinbox) layout.addWidget(self.label) class OtherTreatmentDialog(BaseDialog): ''' Make it easy for "other" items of treatment to tbe added to a treatment plan. ''' def __init__(self, parent): BaseDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Other Treatment Choice Dialog")) label = WarningLabel(_("Add the following items to the treament plan")) self.tab_widget = QtWidgets.QTabWidget(self) self.insertWidget(label) self.insertWidget(self.tab_widget) default_feetable = parent.pt.fee_table layouts = [] for tabname in (default_feetable.briefName, _("Items from other feescales")): tab = QtWidgets.QWidget() layouts.append(QtWidgets.QVBoxLayout(tab)) scroll_area = QtWidgets.QScrollArea() scroll_area.setWidget(tab) scroll_area.setWidgetResizable(True) self.tab_widget.addTab(scroll_area, tabname) default_shortcuts = tuple(default_feetable.other_shortcuts) self.item_widgets = [] for table, (att, shortcut) in \ localsettings.FEETABLES.all_other_shortcuts: if table == default_feetable: layout = layouts[0] else: if (att, shortcut) in default_shortcuts: continue layout = layouts[1] item = table.getItemCodeFromUserCode("%s %s" % (att, shortcut)) item_description = table.getItemDescription(item, shortcut) item_widget = _TreatmentItemWidget(shortcut, item, item_description) layout.addWidget(item_widget) self.item_widgets.append(item_widget) self.enableApply() def sizeHint(self): return QtCore.QSize(400, 500) @property def chosen_treatments(self): ''' what the user has selected ''' for item_widg in self.item_widgets: number = item_widg.spinbox.value() if number != 0: for n in range(number): yield ("other", item_widg.shortcut) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/patient_location_dialog.py0000644000175000017500000001220513022004076027565 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import re from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.connect import connect from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") UPDATE_LOC_QUERY = 'REPLACE into locations (serialno, location) values (%s, %s)' DELETE_QUERY = 'DELETE FROM locations WHERE serialno=%s' DELETE_ALL_QUERY = 'DELETE FROM locations' GET_NAME_QUERY = \ 'SELECT CONCAT(fname, " ", sname) from new_patients where serialno=%s' ## TODO - put these into the database or maybe local settings folder? localsettings.PATIENT_LOCATIONS = {"W": _("Waiting Room"), "T": _("Toilet"), "1": _("Surgery 1"), "2": _("Surgery 2"), "3": _("Surgery 3")} class ClearLocationsDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Confirm")) label = WarningLabel(_("Clear ALL Patient Locations?")) self.insertWidget(label) self.enableApply() def exec_(self): result = BaseDialog.exec_(self) if result: db = connect() cursor = db.cursor() cursor.execute(DELETE_ALL_QUERY) cursor.close() db.commit() return result class PatientLocationDialog(BaseDialog): _name = None message = "" def __init__(self, sno, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Patient Location Dialog")) self.serialno = sno label = WarningLabel("%s %s" % (_("Update the location of"), self.name)) self.insertWidget(label) for location in sorted(localsettings.PATIENT_LOCATIONS.values()): button = QtWidgets.QPushButton(location) button.clicked.connect(self.button_clicked) self.insertWidget(button) button = QtWidgets.QPushButton(_("Clear Patient Location")) button.clicked.connect(self.clear_patient) button.setMinimumHeight(80) self.insertWidget(button) self.apply_but.hide() def sizeHint(self): return QtCore.QSize(400, 500) @property def name(self): if self._name is None: db = connect() cursor = db.cursor() cursor.execute(GET_NAME_QUERY, (self.serialno,)) self._name = cursor.fetchone()[0] cursor.close() return self._name def button_clicked(self): location = self.sender().text() rev_dict = {v:k for k, v in localsettings.PATIENT_LOCATIONS.items()} key = rev_dict[location] self.message = "Patient %s is in %s" % (self.serialno, location) LOGGER.debug(self.message) db = connect() cursor = db.cursor() cursor.execute(UPDATE_LOC_QUERY, (self.serialno, key)) cursor.close() db.commit() self.accept() def clear_patient(self): self.message = "Patient %s has left" % self.serialno LOGGER.debug(self.message) db = connect() cursor = db.cursor() cursor.execute(DELETE_QUERY, (self.serialno,)) cursor.close() db.commit() self.accept() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) dl = PatientLocationDialog(1) dl.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/payment_dialog.py0000644000175000017500000002463412710144046025724 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.money_line_edit import MoneyLineEdit from openmolar.qt4gui.customwidgets.currency_label import CurrencyLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog class MiscPaymentWidget(QtWidgets.QWidget): ''' the "advanced" widget added to the payment dialog. ''' updated = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) layout = QtWidgets.QFormLayout(self) self.hdp_le = MoneyLineEdit() self.other_le = MoneyLineEdit() self.refund_le = MoneyLineEdit() self.refund_le.setStyleSheet("color:red") layout.addRow(_("Annual Hdp Payment"), self.hdp_le) layout.addRow(_("Other Payments"), self.other_le) layout.addRow(_("Patient Refunds"), self.refund_le) self.hdp_le.textEdited.connect(self.updated.emit) self.other_le.textEdited.connect(self.updated.emit) self.refund_le.textEdited.connect(self.updated.emit) def hide_treatment(self, hide): if hide: self.hdp_le.setEnabled(False) self.refund_le.setEnabled(False) @property def hdp_value(self): return self.hdp_le.pence_value @property def other_value(self): return self.other_le.pence_value @property def refund_value(self): return -self.refund_le.pence_value class PaymentDialog(ExtendableDialog): default_tx_amount = "0.00" def __init__(self, parent=None): ExtendableDialog.__init__(self, parent) frame = QtWidgets.QFrame() layout = QtWidgets.QGridLayout(frame) tx_label = QtWidgets.QLabel(_("Treatment")) sundries_label = QtWidgets.QLabel(_("Sundries")) total_label = QtWidgets.QLabel(_("Total")) for label in (tx_label, sundries_label, total_label): label.setAlignment(QtCore.Qt.AlignCenter) cash_label = QtWidgets.QLabel(_("Cash")) cheque_label = QtWidgets.QLabel(_("Cheque")) card_label = QtWidgets.QLabel(_("Card")) self.cash_le = MoneyLineEdit() self.cheque_le = MoneyLineEdit() self.card_le = MoneyLineEdit() self.cash_but = QtWidgets.QPushButton("-") self.cheque_but = QtWidgets.QPushButton("-") self.card_but = QtWidgets.QPushButton("-") self.cash_but.setFixedWidth(30) self.cheque_but.setFixedWidth(30) self.card_but.setFixedWidth(30) self.cash_sundries_le = MoneyLineEdit() self.cheque_sundries_le = MoneyLineEdit() self.card_sundries_le = MoneyLineEdit() self.cash_tot_label = CurrencyLabel("0.00") self.cheque_tot_label = CurrencyLabel("0.00") self.card_tot_label = CurrencyLabel("0.00") self.tx_tot_label = CurrencyLabel("0.00") self.sundries_tot_label = CurrencyLabel("0.00") self.grand_tot_label = CurrencyLabel("0.00") f = QtWidgets.QApplication.instance().font() f.setBold(True) self.grand_tot_label.setFont(f) for label in (self.cash_tot_label, self.cheque_tot_label, self.card_tot_label, self.tx_tot_label, self.sundries_tot_label, self.grand_tot_label): label.setMinimumWidth(80) layout.addWidget(tx_label, 0, 1, 1, 2) layout.addWidget(sundries_label, 0, 3) layout.addWidget(total_label, 0, 4) layout.addWidget(cash_label, 1, 0) layout.addWidget(cheque_label, 2, 0) layout.addWidget(card_label, 3, 0) layout.addWidget(self.cash_le, 1, 1) layout.addWidget(self.cheque_le, 2, 1) layout.addWidget(self.card_le, 3, 1) layout.addWidget(self.cash_but, 1, 2) layout.addWidget(self.cheque_but, 2, 2) layout.addWidget(self.card_but, 3, 2) layout.addWidget(self.cash_sundries_le, 1, 3) layout.addWidget(self.cheque_sundries_le, 2, 3) layout.addWidget(self.card_sundries_le, 3, 3) layout.addWidget(self.cash_tot_label, 1, 4) layout.addWidget(self.cheque_tot_label, 2, 4) layout.addWidget(self.card_tot_label, 3, 4) layout.addWidget(self.tx_tot_label, 4, 1) layout.addWidget(self.sundries_tot_label, 4, 3) layout.addWidget(self.grand_tot_label, 4, 4) self.insertWidget(frame) for widg in (self.cash_le, self.cheque_le, self.card_le, self.cash_sundries_le, self.cheque_sundries_le, self.card_sundries_le): widg.textEdited.connect(self.update_totals) self.cash_but.clicked.connect(self.cash_but_clicked) self.cheque_but.clicked.connect(self.cheque_but_clicked) self.card_but.clicked.connect(self.card_but_clicked) self.misc_payment_widget = MiscPaymentWidget(self) self.set_advanced_but_text(_("unusual payments")) self.add_advanced_widget(self.misc_payment_widget) self.misc_payment_widget.updated.connect(self.update_totals) def int_to_decimal(self, i): assert isinstance(i, int), \ "input must be an integer, not %s, (%s)" % (i, type(i)) ss = str(i) negative = "-" if "-" in ss else "" ss = ss.strip("-") if len(ss) == 0: return "0.00" if len(ss) == 1: return "%s0.0%s" % (negative, ss) if len(ss) == 2: return "%s0.%s" % (negative, ss) return "%s%s.%s" % (negative, ss[:-2], ss[-2:]) def update_totals(self, *args): self.cash_tot_label.setText(self.int_to_decimal(self.cash_total)) self.cheque_tot_label.setText(self.int_to_decimal(self.cheque_total)) self.card_tot_label.setText(self.int_to_decimal(self.card_total)) self.tx_tot_label.setText(self.tx_total_text) self.sundries_tot_label.setText(self.sundry_total_text) self.grand_tot_label.setText(self.grand_total_text) def set_treatment_default_amount(self, amt): if amt > 0: self.default_tx_amount = self.int_to_decimal(amt) @property def hdp(self): return self.misc_payment_widget.hdp_value @property def other(self): return self.misc_payment_widget.other_value @property def refund(self): return self.misc_payment_widget.refund_value @property def grand_total(self): val = (self.cash_total + self.cheque_total + self.card_total + self.hdp + self.other + self.refund) self.enableApply(val != 0 or self.refund != 0) return val @property def tx_total_text(self): return self.int_to_decimal(self.tx_total + self.hdp) @property def sundry_total_text(self): return self.int_to_decimal(self.sundries_total + self.other) @property def grand_total_text(self): return self.int_to_decimal(self.grand_total) @property def other_text(self): return self.int_to_decimal(self.other) @property def refund_text(self): return self.int_to_decimal(self.refund) @property def cash_total(self): return self.cash_le.pence_value + self.cash_sundries_le.pence_value @property def cheque_total(self): return self.cheque_le.pence_value + self.cheque_sundries_le.pence_value @property def card_total(self): return self.card_le.pence_value + self.card_sundries_le.pence_value @property def sundries_total(self): return self.sundry_cash + self.sundry_cheque + self.sundry_card @property def tx_total(self): return (self.tx_cash + self.tx_cheque + self.tx_card) @property def tx_cash(self): return self.cash_le.pence_value @property def tx_cheque(self): return self.cheque_le.pence_value @property def tx_card(self): return self.card_le.pence_value @property def sundry_cash(self): return self.cash_sundries_le.pence_value @property def sundry_cheque(self): return self.cheque_sundries_le.pence_value @property def sundry_card(self): return self.card_sundries_le.pence_value def card_but_clicked(self): self.card_le.setText(self.default_tx_amount) self.update_totals() def cheque_but_clicked(self): self.cheque_le.setText(self.default_tx_amount) self.update_totals() def cash_but_clicked(self): self.cash_le.setText(self.default_tx_amount) self.update_totals() def hide_treatment(self, hide): if hide: self.cash_le.setEnabled(False) self.cash_but.setEnabled(False) self.cheque_le.setEnabled(False) self.cheque_but.setEnabled(False) self.card_le.setEnabled(False) self.card_but.setEnabled(False) self.misc_payment_widget.hide_treatment(hide) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/permissions.py0000644000175000017500000001263412710144046025300 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import datetime import hashlib import logging from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import db_settings from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") def _hashed_input(input_): salted_input = "%s%s" % (input_, localsettings.SALT) return hashlib.sha1(salted_input.encode("utf8")).hexdigest() class RaisePermissionsDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Raise Permissions Dialog")) self.label = WarningLabel("%s
    %s" % ( _("Supervisor privileges required to perform this action"), _("Please enter the supervisor password"))) frame = QtWidgets.QFrame() self.form_layout = QtWidgets.QFormLayout(frame) self.line_edit = QtWidgets.QLineEdit() self.line_edit.setEchoMode(QtWidgets.QLineEdit.Password) self.form_layout.addRow(_("Supervisor Password"), self.line_edit) self.insertWidget(self.label) self.insertWidget(frame) self.enableApply() self.line_edit.setFocus(True) @property def correct_password(self): return _hashed_input(self.line_edit.text()) == \ localsettings.SUPERVISOR def exec_(self): if not BaseDialog.exec_(self): return False if self.correct_password: localsettings.permissionsRaised = True resetExpireTime() return True else: QtWidgets.QMessageBox.information( self, _("whoops"), _("incorrect supervisor password")) return False class ResetSupervisorPasswordDialog(RaisePermissionsDialog): def __init__(self, parent=None): RaisePermissionsDialog.__init__(self, parent) self.label.setText(_("Reset Supervisor Password")) self.new_password_line_edit = QtWidgets.QLineEdit() self.confirm_password_line_edit = QtWidgets.QLineEdit() self.new_password_line_edit.setEchoMode(QtWidgets.QLineEdit.Password) self.confirm_password_line_edit.setEchoMode( QtWidgets.QLineEdit.Password) self.form_layout.addRow(_("New Password"), self.new_password_line_edit) self.form_layout.addRow(_("Confirm New Password"), self.confirm_password_line_edit) @property def _new_password(self): return self.new_password_line_edit.text() def passwords_match(self): if self._new_password == \ self.confirm_password_line_edit.text(): return True QtWidgets.QMessageBox.warning(self, _("error"), _("new passwords didn't match")) def exec_(self): if not RaisePermissionsDialog.exec_(self): return False if self.passwords_match(): localsettings.SUPERVISOR = _hashed_input(self._new_password) db_settings.updateData("supervisor_pword", localsettings.SUPERVISOR, localsettings.operator) message = _("password changed successfully") else: message = _("Password unchanged") QtWidgets.QMessageBox.information(self, _("information"), message) def granted(parent=None): if localsettings.permissionsRaised: if localsettings.permissionExpire > datetime.datetime.now(): resetExpireTime() return True else: localsettings.permissionsRaised = False dl = RaisePermissionsDialog(parent) return dl.exec_() def resetExpireTime(): diff = datetime.timedelta(minutes=5) localsettings.permissionExpire = datetime.datetime.now() + diff openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/post_choice_dialog.py0000644000175000017500000001010112710144046026526 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog PostChartButton = namedtuple('PostChartButton', ("shortcut", "description", "tooltip")) STATIC_LIST = [] for shortcut, description in (("CR,C1", _("Cast Precious Metal")), ("CR,C2", _("Cast Non-Precious Metal")), ("CR,OP", _("Other")),): pcb = PostChartButton(shortcut, description, "") STATIC_LIST.append(pcb) class PostChoiceDialog(ExtendableDialog): def __init__(self, static, parent=None): ExtendableDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Post Choice Dialog")) self.om_gui = parent self.chosen_shortcut = None scroll_area = QtWidgets.QScrollArea() frame = QtWidgets.QFrame() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.but_layout = QtWidgets.QGridLayout(frame) self.insertWidget(scroll_area) self.apply_but.hide() if static: self.more_but.hide() self.add_buttons(STATIC_LIST) else: all_posts_but = QtWidgets.QPushButton( _("Show Post types from all feescales")) all_posts_but.clicked.connect(self._show_all_posts) self.add_advanced_widget(all_posts_but) self.add_buttons( self.om_gui.pt.fee_table.ui_lists["post_buttons"]) def sizeHint(self): return QtCore.QSize(400, 500) def add_buttons(self, post_chart_buttons): while self.but_layout.count(): widget_item = self.but_layout.takeAt(0) widget_item.widget().setParent(None) row = 0 for row, post_button in enumerate(post_chart_buttons): but = QtWidgets.QPushButton(post_button.description) but.setToolTip(post_button.tooltip) but.clicked.connect( partial(self.but_clicked, post_button.shortcut)) self.but_layout.addWidget(but, row // 2, row % 2) self.but_layout.setRowStretch((row + 2) // 2, 100) def _show_all_posts(self): self.add_buttons(localsettings.FEETABLES.ui_post_chart_buttons) self.show_extension(False) def but_clicked(self, shortcut): self.chosen_shortcut = shortcut self.accept() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/print_record_dialog.py0000644000175000017500000000667012710144046026741 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtPrintSupport from PyQt5 import QtWebKitWidgets from PyQt5 import QtWidgets from openmolar.ptModules import formatted_notes from openmolar.ptModules import patientDetails from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog class PrintRecordDialog(BaseDialog): def __init__(self, patient, chartimage, parent): BaseDialog.__init__(self, parent) self.pt = patient self.chartimage = chartimage patient_label = QtWidgets.QLabel( "%s
    %s" % (_("Print the record of"), patient.name_id)) patient_label.setAlignment(QtCore.Qt.AlignCenter) self.web_view = QtWebKitWidgets.QWebView(self) self.web_view.loadStarted.connect(self.print_start) self.web_view.loadFinished.connect(self.print_load_result) self.insertWidget(patient_label) self.insertWidget(self.web_view) self.apply_but.setText("Print") self.enableApply() html = patientDetails.header(self.pt).replace("center", "left") html += '''

    ''' % self.chartimage html += formatted_notes.notes(self.pt.notes_dict) self.web_view.setHtml(html) def print_load_result(self, result): print("Load successful = %s" % result) def print_start(self): print("Load started") def sizeHint(self): return QtCore.QSize(800, 600) def exec_(self): if BaseDialog.exec_(self): printer = QtPrintSupport.QPrinter() printer.setPaperSize(printer.A4) dialog = QtPrintSupport.QPrintDialog(printer, self.parent()) if not dialog.exec_(): return False self.web_view.print_(printer) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/recall_dialog.py0000644000175000017500000001027712710144046025507 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings class RecallDialog(QtWidgets.QDialog): ''' generates SQL and values to be used to select patients to recall ''' def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.dent_cbs = [] self.setWindowTitle("Set Recall Conditions") today = QtCore.QDate.currentDate() start = QtCore.QDate(today.year(), today.month(), 1) end = QtCore.QDate(today.year(), today.month() + 1, 1).addDays(-1) start_label = QtWidgets.QLabel(_("start date (inclusive)")) self.start_date = QtWidgets.QDateEdit() self.start_date.setDate(start) self.start_date.setCalendarPopup(True) end_label = QtWidgets.QLabel(_("end date (inclusive)")) self.end_date = QtWidgets.QDateEdit() self.end_date.setDate(end) self.end_date.setCalendarPopup(True) self.dent_gb = QtWidgets.QGroupBox( _("Dentist choice (leave unchecked for all)")) self.dent_gb.setCheckable(True) self.dent_gb.setChecked(False) layout = QtWidgets.QVBoxLayout(self.dent_gb) for i, dent in enumerate(localsettings.activedents): cb = QtWidgets.QCheckBox() cb.setChecked(True) cb.setText(dent) cb.dent = localsettings.activedent_ixs[i] layout.addWidget(cb) self.dent_cbs.append(cb) but_box = QtWidgets.QDialogButtonBox(self) but_box.addButton(but_box.Ok).clicked.connect(self.accept) but_box.addButton(but_box.Cancel).clicked.connect(self.reject) layout2 = QtWidgets.QGridLayout(self) layout2.addWidget(start_label, 1, 0) layout2.addWidget(self.start_date, 1, 1) layout2.addWidget(end_label, 2, 0) layout2.addWidget(self.end_date, 2, 1) layout2.addWidget(self.end_date, 2, 1) layout2.addWidget(self.dent_gb, 3, 0, 1, 2) layout2.addWidget(but_box, 4, 0, 1, 2) @property def conditions(self): conditions = "recall_active AND recdent>=%s AND recdent<=%s " if self.dent_gb.isChecked(): for cb in self.dent_cbs: if cb.isChecked(): conditions += "AND dnt1=%s " return conditions @property def values(self): vals = [self.start_date.date().toPyDate(), self.end_date.date().toPyDate()] if self.dent_gb.isChecked(): for cb in self.dent_cbs: if cb.isChecked(): vals.append(cb.dent) return tuple(vals) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py0000644000175000017500000000635012710144046027105 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") class RecallPromptDialog(BaseDialog): APPLY = 0 IGNORE = 1 CANCEL = 2 result = APPLY def __init__(self, pt, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Recall Prompt Dialog")) pt_details = "%s %s %s" % (pt.title, pt.fname, pt.sname) self.patient_label = QtWidgets.QLabel(pt_details) self.patient_label.setAlignment(QtCore.Qt.AlignCenter) message = _("There is a problem with the recall date of this patient.") action = _("Would you like to fix this now?") self.warning_label = WarningLabel("%s
    %s" % (message, action)) self.apply_but.setText(_("Fix")) self.ignore_but = self.button_box.addButton( QtWidgets.QDialogButtonBox.Discard) self.ignore_but.setText(_("Ignore Recall Date")) self.ignore_but.setToolTip(_("Ignore this for now.")) self.cancel_but.setToolTip(_("Cancel and Continue Editing")) self.insertWidget(self.patient_label) self.insertWidget(self.warning_label) self.enableApply() def sizeHint(self): return QtCore.QSize(400, 200) def _clicked(self, but): if but == self.ignore_but: self.result = self.IGNORE self.accept() return BaseDialog._clicked(self, but) def reject(self): self.result = self.CANCEL BaseDialog.reject(self) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/saveMemo.py0000644000175000017500000000620612710144046024477 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_saveMemo from openmolar.settings import localsettings from openmolar.dbtools import memos class SaveMemoDialog(Ui_saveMemo.Ui_Dialog, QtWidgets.QDialog): ''' raise a dialog, accept text etc, and save input to the memos table. ''' def __init__(self, sno, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.dateEdit.setDate(QtCore.QDate().currentDate()) items = sorted(localsettings.allowed_logins) self.author_comboBox.addItems(items) try: i = items.index(localsettings.operator.split("/")[0]) self.author_comboBox.setCurrentIndex(i) except ValueError: self.author_comboBox.setCurrentIndex(-1) self.sno = sno def getInput(self): ''' point of execution for the dialog. ''' if not self.exec_(): return False if not self.noExpire_radioButton.isChecked(): exdate = self.dateEdit.date().toPyDate() else: exdate = None author = str(self.author_comboBox.currentText()) if author == "": author = "Anon" message = self.textEdit.toPlainText() if self.viewSurgery_radioButton.isChecked(): type = "surg" elif self.viewReception_radioButton.isChecked(): type = "rec" else: type = "all" return memos.saveMemo(self.sno, author, type, exdate, message, True) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/save_discard_cancel.py0000644000175000017500000000745512710144046026666 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.customwidgets.warning_label import WarningLabel from openmolar.qt4gui.dialogs.base_dialogs import ExtendableDialog LOGGER = logging.getLogger("openmolar") class SaveDiscardCancelDialog(ExtendableDialog): SAVE = 0 DISCARD = 1 CANCEL = 2 def __init__(self, message, changes, parent=None): ''' offers a choiced of save discard cancel, but allows for examination of what has changed. changes should be a function, which returns a string list ''' ExtendableDialog.__init__(self, parent) self.set_advanced_but_text(_("What's changed?")) self.apply_but.setText("&Save") self.enableApply() self.save_on_exit = True label = WarningLabel(message) self.insertWidget(label) self.discard_but = self.button_box.addButton( QtWidgets.QDialogButtonBox.Discard) self.discard_but.setToolTip(_("Discard All Changes")) self.cancel_but.setToolTip(_("Cancel and Continue Editing")) self.changes = changes self.changes_list_widget = QtWidgets.QListWidget() self.add_advanced_widget(self.changes_list_widget) self.result = self.SAVE def sizeHint(self): return QtCore.QSize(400, 200) def _clicked(self, but): if but == self.discard_but: self.discard() return ExtendableDialog._clicked(self, but) def discard(self): if QtWidgets.QMessageBox.question( self, _("Confirm"), _("Are you sure you want to discard these changes?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes: self.result = self.DISCARD self.accept() def show_extension(self, extend): if extend: LOGGER.debug("showing changes %s" % self.changes) self.changes_list_widget.clear() self.changes_list_widget.addItems(self.changes) ExtendableDialog.show_extension(self, extend) def reject(self): self.result = self.CANCEL QtWidgets.QDialog.reject(self) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/select_language.py0000644000175000017500000001231312712413441026041 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' OpenMolar has has many contributions towards translation. Language selection should be automatic on statup (using locale) However this dialog provides a way of demonstrating the other languages. ''' import gettext import os import logging from PyQt5 import QtWidgets from openmolar import LOCALEDIR from openmolar.qt4gui.compiled_uis import Ui_choose_language LOGGER = logging.getLogger("openmolar") class LanguageDialog(Ui_choose_language.Ui_Dialog, QtWidgets.QDialog): ''' A dialog to allow user selection from available translations ''' _curr_lang = None def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.radioboxes = [] vbox = QtWidgets.QVBoxLayout(self.frame) for language in self.available_languages: rb = QtWidgets.QRadioButton(language) if self.current_language in language.split(" - "): rb.setChecked(True) self.radioboxes.append(rb) vbox.addWidget(rb) @property def current_language(self): ''' get the current language in use ''' if self._curr_lang is None: self._curr_lang = os.environ.get('LANG') if self._curr_lang and "." in self._curr_lang: self._curr_lang = self._curr_lang[:self._curr_lang.index(".")] return self._curr_lang @property def available_languages(self): ''' return a list of installed languages - I do this manually at the moment :( ''' return sorted([_("English (United Kingdom)") + " - en_GB", _("English (Australia)") + " - en_AUS", _("Afrikaans") + " - af", _("Danish") + " - da", _("French") + " - fr", _("German") + " - de", _("Hungarian") + " - hu", _("Indonesian") + " - id", _("Italian") + " - it", _("Occitan") + " - oc", _("Polish") + " - pl", _("Portuguese") + " - pt", _("Slovak") + " - sk", _("Spanish") + " - es", _("Turkish") + " - tr", _("Romanian") + " - ro", _("Greek") + " - el"]) def setLanguage(self, lang): ''' install the language chosen ''' lang = lang.split(" - ")[1] try: LOGGER.info("trying install chosen translation %s", lang) lang1 = gettext.translation('openmolar', localedir=LOCALEDIR, languages=[lang, ]) lang1.install() return True except FileNotFoundError: LOGGER.exception("tranlation '%s' not found, sorry" % lang) gettext.install('openmolar') return False def getInput(self): if not QtWidgets.QDialog.exec_(self): return False result = False message = _("No language selected") for rb in self.radioboxes: if rb.isChecked(): lang = rb.text() result = self.setLanguage(lang) if result: message = "%s %s" % ( _("switched interface to"), lang) else: message = "%s %s" % ( _("no translation file found for"), lang) QtWidgets.QMessageBox.information(self, _("Advisory"), message) return result def exec_(self): return self.getInput() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/dialogs/toothprop_fulledit.py0000644000175000017500000001407712710144046026656 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.qt4gui.compiled_uis import Ui_toothprops_full_edit from openmolar.qt4gui.customwidgets.chartwidget import ToothImage LOGGER = logging.getLogger("openmolar") class ToothPropEditor(Ui_toothprops_full_edit.Ui_Dialog, QtWidgets.QDialog): def __init__(self, tooth, chart, lineEdit, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.tooth = tooth self.chart = chart self.setLabel() self.lineEdit = lineEdit hlayout = QtWidgets.QHBoxLayout(self.frame) hlayout.setContentsMargins(0, 0, 0, 0) hlayout.addWidget(self.lineEdit) self.setData() self.tableWidget.setColumnWidth(0, 50) self.tableWidget.setColumnWidth(1, 150) self.signals() def setLabel(self): if self.chart == "st": type = _("Static") elif self.chart == "pl": type = _("Planned") else: type = _("Completed") self.tooth_label.setText("%s - %s items" % (self.tooth.upper(), type)) def setData(self): self.initialVal = str(self.lineEdit.text()) props = self.initialVal.split(" ") while "" in props: props.remove("") self.tableWidget.setColumnCount(4) self.tableWidget.setRowCount(len(props)) self.tableWidget.setHorizontalHeaderLabels( ["", _("Item Shortcut"), _("Demote"), _("Erase")]) for row, prop in enumerate(props): self.fillRow(prop, row) def fillRow(self, prop, row): if prop and prop[0] != "!": self.drawProp(prop, row) else: self.drawComment(prop, row) self.addEraseButton(prop, row) self.addDownArrow(prop, row) def drawComment(self, prop, row): ''' just puts "comment" into column 1 for now... might add an icon? ''' item = QtWidgets.QTableWidgetItem("!") self.tableWidget.setItem(row, 0, item) item = QtWidgets.QTableWidgetItem(prop) self.tableWidget.setItem(row, 1, item) def drawProp(self, prop, row): ''' adds a graphical representation of the "property" to the table ''' tooth = ToothImage(self.tooth, [str(prop).lower()]) icon_tableitem = QtWidgets.QTableWidgetItem() image = tooth.image.scaled(40, 40) icon_tableitem.setData(QtCore.Qt.DecorationRole, image) icon_tableitem.setToolTip(_("click to edit Item - ") + prop) self.tableWidget.setItem(row, 0, icon_tableitem) prop_tableitem = QtWidgets.QTableWidgetItem(prop) self.tableWidget.setItem(row, 1, prop_tableitem) def addEraseButton(self, prop, row): ''' adds a pushbutton to the tableWidget ''' p_map = QtGui.QPixmap(":/eraser.png").scaled(24, 24) tableItem = QtWidgets.QTableWidgetItem() tableItem.setData(QtCore.Qt.DecorationRole, p_map) tableItem.setToolTip(_("click to delete item - ") + prop) self.tableWidget.setItem(row, 3, tableItem) def addDownArrow(self, prop, row): p_map = QtGui.QPixmap(QtGui.QPixmap(":/down.png")).scaled(24, 24) tableItem = QtWidgets.QTableWidgetItem() tableItem.setData(QtCore.Qt.DecorationRole, p_map) tableItem.setToolTip(_("click to promote Item - ") + prop) self.tableWidget.setItem(row, 2, tableItem) def signals(self): self.tableWidget.cellPressed.connect(self.tableClicked) def tableClicked(self, row, column): if column == 3: self.deleteRow(row) if column == 2: self.promoteRow(row) def deleteRow(self, row): self.tableWidget.removeRow(row) self.updateLineEdit() def promoteRow(self, row): if row + 1 < self.tableWidget.rowCount(): self.tableWidget.insertRow(row) self.fillRow(self.tableWidget.item(row + 2, 1).text(), row) self.tableWidget.removeRow(row + 2) self.updateLineEdit() def updateLineEdit(self): s = "" for row in range(self.tableWidget.rowCount()): s += self.tableWidget.item(row, 1).text() + " " self.lineEdit.setText(s) def exec_(self): if QtWidgets.QDialog.exec_(self): self.result = self.lineEdit.text() if self.initialVal != self.result: self.result = str(self.result) return True return False openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/0000755000175000017500000000000013024000134021631 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/__init__.py0000755000175000017500000000312412710144046023761 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/cashbook_module.py0000644000175000017500000000656612710144046025372 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' cashbook is an html table implementation currently. ''' import re from PyQt5 import QtWidgets from openmolar.dbtools import cashbook from openmolar.qt4gui.printing import bookprint from openmolar.qt4gui.dialogs import permissions from openmolar.qt4gui.dialogs.alter_cashbook_dialog import AlterCashbookDialog class CashBookBrowser(QtWidgets.QTextBrowser): def __init__(self, parent=None): self.om_gui = parent QtWidgets.QTextBrowser.__init__(self, parent) def setSource(self, url): ''' A function to re-implement QTextBrowser.setUrl this will catch "edit links" ''' id = re.search("(\d+)", str(url.toString())).groups()[0] dl = AlterCashbookDialog(int(id), self) if dl.exec_(): show_cashbook(self.om_gui) def allow_full_edit(self, value): if value: cashbook.full_edit = permissions.granted(self.om_gui) else: cashbook.full_edit = False self.om_gui.ui.actionAllow_Full_Edit.setChecked(cashbook.full_edit) show_cashbook(self.om_gui) def show_cashbook(om_gui, print_=False): dent1 = om_gui.ui.cashbookDentComboBox.currentText() sdate = om_gui.ui.cashbookStartDateEdit.date() edate = om_gui.ui.cashbookEndDateEdit.date() sundries_only = om_gui.ui.sundries_only_radioButton.isChecked() treatment_only = om_gui.ui.treatment_only_radioButton.isChecked() if sdate > edate: om_gui.advise(_("bad date sequence"), 1) return False html = cashbook.details(dent1, sdate, edate, treatment_only, sundries_only) om_gui.ui.cashbookTextBrowser.setHtml( '' + html + "") if print_: myclass = bookprint.printBook('' + html + "") myclass.printpage() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/course_module.py0000644000175000017500000002620112727524676025110 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' functions to open a course, close a course, or check if one is needed. ''' import datetime import logging from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import writeNewCourse from openmolar.qt4gui.dialogs.close_course_dialog import CloseCourseDialog from openmolar.qt4gui.dialogs.newCourse import NewCourseDialog from openmolar.qt4gui.dialogs.appt_prefs_dialog import ApptPrefsDialog from openmolar.qt4gui.dialogs.recall_prompt_dialog import RecallPromptDialog from openmolar.qt4gui import contract_gui_module from openmolar.ptModules import plan from openmolar.qt4gui.printing.gp17.gp17_printer import GP17Printer LOGGER = logging.getLogger("openmolar") def newCourseNeeded(om_gui): ''' checks to see if the patient is under treatment. if not, start a course ''' if om_gui.pt.underTreatment: return False if (om_gui.pt.treatment_course.cmpd != om_gui.pt.dbstate.treatment_course.cmpd): om_gui.advise( _("Please save the old course changes before continuing"), 1) return True # before starting a new course.. check to see if one has been started # by another client. if om_gui.pt.newer_course_found: om_gui.ui.actionFix_Locked_New_Course_of_Treatment.setEnabled(True) message = "

    %s
    %s


    %s" % ( _("It looks as if another user is " "starting a course of treatment"), _("Please allow this other user to commit their changes" " then reload this record before continuing."), _("If you are seeing this message and are sure no other user is" " using this record, use menu->tools->" "Fix Locked New Course of Treatment")) om_gui.advise(message, 1) elif course_should_be_resumed(om_gui): return False elif setupNewCourse(om_gui): LOGGER.info("new course started with accd of '%s'", om_gui.pt.treatment_course.accd) return False else: om_gui.advise("

    %s

    " % _( "unable to plan or perform treatment if" " the patient does not have an active course"), 1) return True def setupNewCourse(om_gui): ''' set up a new course of treatment ''' if localsettings.clinicianNo != 0 and \ localsettings.clinicianInits in localsettings.activedents: # clinician could be a hygenist! cdnt = localsettings.clinicianNo elif om_gui.pt.dnt2 == 0: cdnt = om_gui.pt.dnt1 else: cdnt = om_gui.pt.dnt2 dl = NewCourseDialog(localsettings.ops.get(om_gui.pt.dnt1), localsettings.ops.get(cdnt), om_gui.pt.cset, om_gui) result, atts = dl.getInput() # (True, ['BW', 'AH', '', PyQt5.QtCore.QDate(2009, 5, 3)]) if result: dnt1 = localsettings.ops_reverse.get(atts[0]) if dnt1 != om_gui.pt.dnt1: contract_gui_module.changeContractedDentist(om_gui, atts[0]) dnt2 = localsettings.ops_reverse.get(atts[1]) if dnt2 != om_gui.pt.dnt2: contract_gui_module.changeCourseDentist(om_gui, atts[1]) if atts[2] != om_gui.pt.cset: contract_gui_module.changeCourseType(om_gui, atts[2]) accd = atts[3].toPyDate() new_courseno = writeNewCourse.write(om_gui.pt.serialno, accd) om_gui.load_dentComboBoxes() return apply_new_courseno(om_gui, new_courseno, accd) def apply_new_courseno(om_gui, new_courseno, accd=None): om_gui.pt.new_tx_course(new_courseno) om_gui.pt.treatment_course.setAccd(accd) # force a recheck for the new course date om_gui.pt.forget_fee_table() om_gui.pt.estimates = [] om_gui.load_newEstPage() om_gui.ui.planChartWidget.clear(keepSelection=True) om_gui.ui.completedChartWidget.clear(keepSelection=True) om_gui.updateDetails() om_gui.load_clinicalSummaryPage() om_gui.load_receptionSummaryPage() om_gui.pt.addHiddenNote("open_course") om_gui.updateHiddenNotesLabel() message = "%s
    %s %s" % ( _("Successfully started new course of treatment"), _("Using Feescale"), om_gui.pt.fee_table.briefName ) om_gui.debug_browser_refresh_func = None om_gui.advise(message) return True def prompt_close_course(om_gui): ''' pt is marked as under treatment..... let's see if there is anything outstanding ''' if "surgery" in localsettings.station and om_gui.pt.underTreatment: if not om_gui.pt.treatmentOutstanding(): closeCourse(om_gui, True) def recall_check(om_gui): ''' presently this just checks the status of the DENTIST recall (ie. ignores hygienist) ''' if not om_gui.pt.recall_active or om_gui.pt.has_exam_booked: return True if (om_gui.pt.appt_prefs.recdent_period and om_gui.pt.recd > localsettings.currentDay()): return True dl = RecallPromptDialog(om_gui.pt, om_gui) if dl.exec_(): if dl.result == dl.IGNORE: return True else: dl2 = ApptPrefsDialog(om_gui.pt, om_gui) if dl2.exec_(): om_gui.pt.appt_prefs.commit_changes() om_gui.updateDetails() om_gui.advise(_("Appointment Preferences Applied")) return True return False def delete_new_course(om_gui): ''' user is discarding all changes to a record. potentially, this will leave debris in the currtrtmt2 table ''' if om_gui.pt.has_new_course: LOGGER.info("deleting unused course of treatment") writeNewCourse.delete( om_gui.pt.serialno, om_gui.pt.treatment_course.courseno) def closeCourse(om_gui, leaving=False): ''' allow the user to add a completion Date to a course of treatment ''' ftr = om_gui.pt.treatment_course.has_treatment_outstanding dl = CloseCourseDialog(ftr, om_gui) if not leaving: dl.tx_complete_label.hide() dl.patient_label.setText("%s %s - (%s)" % ( om_gui.pt.fname, om_gui.pt.sname, om_gui.pt.serialno)) dl.set_minimum_date(om_gui.pt.treatment_course.accd) dl.set_date(om_gui.pt.last_treatment_date) if dl.exec_(): om_gui.pt.treatment_course.setCmpd(dl.completion_date) om_gui.pt.treatment_course.ftr = dl.ftr om_gui.pt.addHiddenNote("close_course") om_gui.updateDetails() om_gui.updateHiddenNotesLabel() offerFinalPaperWork(om_gui) plan.completedFillsToStatic(om_gui.pt) if not leaving: om_gui.refresh_charts() om_gui.debug_browser_refresh_func = None return True return False def offerFinalPaperWork(om_gui): ''' a course has been closed ( in surgery ) time to print a claim form? ''' if "N" in om_gui.pt.cset: form_printer = GP17Printer(om_gui) form_printer.print_(final_paperwork=True) def course_should_be_resumed(om_gui): ''' see if it would make more sense to resume a course rather than start a new one. ''' if not om_gui.pt.treatment_course.cmpd: return False elapsed = localsettings.currentDay() - om_gui.pt.treatment_course.cmpd if elapsed > datetime.timedelta(days=7): return False elif elapsed == datetime.timedelta(days=0): message = _("A course was closed earlier today.") elif elapsed == datetime.timedelta(days=1): message = _("A course was closed yesterday.") else: message = _("A course was closed less than a week ago.") if QtWidgets.QMessageBox.question( om_gui, _("Question"), "%s
    %s" % (message, _("Would you like to resume this course?")), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes: return resumeCourse(om_gui) return False def resumeCourse(om_gui): ''' resume the previous treatment course ''' if QtWidgets.QMessageBox.question( om_gui, _("Confirm"), _("Are you sure you wish to Resume the previous course of treatment?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: om_gui.pt.treatment_course.cmpd = None om_gui.pt.treatment_course.ftr = False om_gui.updateDetails() om_gui.pt.addHiddenNote("resume_course") om_gui.updateHiddenNotesLabel() plan.reverse_completedFillsToStatic(om_gui.pt) om_gui.debug_browser_refresh_func = None return True def fix_zombied_course(om_gui): ''' a situation COULD arise where a new course was started and the client crashed (without cleaning up the temporary row in the currtrtmt2 table) this functionality retrieves this. ''' if not om_gui.pt and om_gui.pt.newer_course_found: om_gui.advise(_("no zombied course found"), 1) return message = _("a situation COULD arise where a new course was started" " but the client lost connectivity crashed" " (without cleaning up the temporary row " "in the currtrtmt2 table)") question = _("Do you wish to recover this row now?") if QtWidgets.QMessageBox.question( om_gui, _("question"), "%s
    %s" % (message, question), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes: cno = om_gui.pt.max_tx_courseno apply_new_courseno(om_gui, cno) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/daybook_module.py0000644000175000017500000001273512710156554025233 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' update perio dates, xray dates, and write items to the daybook ''' import logging import re from openmolar.settings import localsettings from openmolar.dbtools import daybook from openmolar.qt4gui.fees import fees_module from openmolar.qt4gui.printing import bookprint LOGGER = logging.getLogger("openmolar") def perioDates(om_gui, arg): ''' update the patient's "last scale/polish" date ''' if "SP" in arg: om_gui.pt.pd10 = localsettings.currentDay() def xrayDates(om_gui, arg): ''' update the patient's "last xray" dates ''' if "M" in arg or "S" in arg: om_gui.pt.pd9 = localsettings.currentDay() if "P" in arg: om_gui.pt.pd8 = localsettings.currentDay() def updateDaybook(om_gui): ''' looks for newly completed treatments when a record is closed ''' daybookdict = { "diagn": "", "perio": "", "anaes": "", "misc": "", "ndu": "", "ndl": "", "odu": "", "odl": "", "other": "", "chart": "" } feesa = 0 # fee feesb = 0 # ptfee hashes = [] courseno = om_gui.pt.treatment_course.courseno not_new_course = (courseno == om_gui.pt.dbstate.treatment_course.courseno) for tx_hash in om_gui.pt.completed_tx_hash_tups: if not_new_course and \ tx_hash in om_gui.pt.dbstate.completed_tx_hash_tups: continue # already written to daybook. LOGGER.debug("write to daybook %s %s %s" % tx_hash) hash_, att, treatment = tx_hash if att == "examt": key = "exam" else: key = re.sub("cmp$", "", att) if key in list(daybookdict.keys()): daybookdict[key] += "%s" % treatment elif key in ("xray", "exam"): daybookdict["diagn"] += "%s" % treatment elif key == "custom": daybookdict["other"] += "CUSTOM:%s" % treatment else: # tooth include the key ie ul7 etc... daybookdict["chart"] += "%s %s " % (key.upper(), treatment) hashes.append(hash_) fees = fees_module.getFeesFromEst(om_gui, hash_) if fees: feesa += fees[0] feesb += fees[1] else: LOGGER.warning( "daybook module - no fees for '%s' '%s' '%s'" % tx_hash) if hashes != []: if om_gui.pt.dnt2 != 0 and om_gui.pt.cset != "I": dent = om_gui.pt.dnt2 else: dent = om_gui.pt.dnt1 trtid = localsettings.clinicianNo daybook.add(om_gui.pt.serialno, om_gui.pt.cset, dent, trtid, daybookdict, feesa, feesb, hashes) def daybookView(om_gui, print_=False): dent1 = str(om_gui.ui.daybookDent1ComboBox.currentText()) dent2 = str(om_gui.ui.daybookDent2ComboBox.currentText()) sdate = om_gui.ui.daybookStartDateEdit.date() edate = om_gui.ui.daybookEndDateEdit.date() if sdate > edate: om_gui.advise(_("bad date sequence"), 1) return False filters = str(om_gui.ui.daybook_filters_lineEdit.text()) if filters: filters = "AND %s" % filters.replace("%", "%%") om_gui.wait() om_gui.ui.daybookTextBrowser.setHtml(_("polling database...")) try: html = daybook.details(dent1, dent2, sdate, edate, filters) except daybook.connect.ProgrammingError as exc: LOGGER.exception("Bad Query") html = "

    %s

    %s
    " % (_("Bad Query"), str(exc)) except daybook.connect.OperationalError as exc: LOGGER.exception("Bad Query") html = "

    %s

    %s
    " % (_("Bad Query"), str(exc)) except Exception as exc: LOGGER.exception("Unknown Error") html = "

    %s

    %s
    " % (_("Unknown Error"), str(exc)) om_gui.ui.daybookTextBrowser.setHtml(html) if print_: myclass = bookprint.printBook(html, om_gui) myclass.printpage() om_gui.wait(False) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/fee_table_model.py0000644000175000017500000002432412710144046025312 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides a model class so that feescales can be displayed (and in the long term adjusted?) ''' import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings HIDE_RARE_CODES = 1 # fee items can be flagged as "obscure" in the XML # new for version 0.5 - categories come from the feescale XML # CATEGORIES = ("", "Examinations", "Diagnosis", "Perio", "Chart", # "Prosthetics", "Ortho", "Misc", "Emergency", "Other", "Custom", "Occasional") LOGGER = logging.getLogger("openmolar") class TreeItem(object): def __init__(self, table, key, data, parent=None, index=0): self.table = table self.parentItem = parent self.key = key self.itemData = data self.myindex = index self.childItems = [] def appendChild(self, item): self.childItems.append(item) def child(self, row): return self.childItems[row] def childCount(self): return len(self.childItems) def columnCount(self): return 4 + self.table.feeColCount @property def has_parent(self): return self.parentItem is None def data(self, column): if column == 0: if self.key != self.parentItem.key: return self.key if self.itemData is None: pass elif column == 1: uc = self.itemData.fee_shortcut_for_display(0) try: if uc == self.parentItem.itemData.usercode: uc = "" if self.itemData.has_fee_shortcuts: uc = self.itemData.fee_shortcut_for_display(self.row() + 1) except AttributeError: pass return uc elif column == 2: desc = self.itemData.description try: if desc == self.parentItem.itemData.description: return "" except AttributeError: return desc elif column == 3: return self.itemData.brief_descriptions[self.myindex] elif column == 4: return localsettings.formatMoney(self.itemData.fees[self.myindex]) elif column == 5: # if self.table.hasPtCols: try: return localsettings.formatMoney( self.itemData.ptFees[self.myindex]) except IndexError: return "error in feescale" return None def parent(self): return self.parentItem def row(self): if self.parentItem: return self.parentItem.childItems.index(self) return 0 class treeModel(QtCore.QAbstractItemModel): ''' a model to display a feetables data ''' def __init__(self, table): super(QtCore.QAbstractItemModel, self).__init__() self.table = table self.feeColNo = 1 if self.table.hasPtCols: self.feeColNo = 2 self.rootItem = TreeItem(self.table, None, None) self.setupModelData() self.foundItems = [] self.search_phrase = "" def columnCount(self, parent): if parent.isValid(): return parent.internalPointer().columnCount() else: return self.rootItem.columnCount() def data(self, index, role): if not index.isValid(): return None item = index.internalPointer() if role == QtCore.Qt.DisplayRole: return item.data(index.column()) if role == QtCore.Qt.BackgroundRole and index in self.foundItems: return QtGui.QBrush(QtGui.QColor("yellow")) if role == QtCore.Qt.TextAlignmentRole: if index.column() > 3: return QtCore.Qt.AlignRight if role == QtCore.Qt.UserRole: # a user role which simply returns the python object # in this case a FeeItem return (item.itemData, item.myindex) return None def flags(self, index): if not index.isValid(): return QtCore.Qt.NoItemFlags return QtCore.Qt.ItemIsEnabled | QtCore.Qt.ItemIsSelectable def headerData(self, column, orientation, role): if (orientation == QtCore.Qt.Horizontal and role == QtCore.Qt.DisplayRole): if column == 1: return _("Usercode") elif column == 2: return _("Description") elif column == 3: return _("brief description") elif column == 4: return _("Gross Fee") elif column == 5: return _("Charge to Patient") return None def index(self, row, column, parent): if not self.hasIndex(row, column, parent): return QtCore.QModelIndex() if not parent.isValid(): parentItem = self.rootItem else: parentItem = parent.internalPointer() childItem = parentItem.child(row) if childItem: return self.createIndex(row, column, childItem) else: return QtCore.QModelIndex() def parent(self, index): if not index.isValid(): return QtCore.QModelIndex() childItem = index.internalPointer() if not childItem: return QtCore.QModelIndex() parentItem = childItem.parent() if parentItem == self.rootItem: return QtCore.QModelIndex() return self.createIndex(parentItem.row(), 0, parentItem) def rowCount(self, parent): if parent.column() > 0: return 0 if not parent.isValid(): parentItem = self.rootItem else: parentItem = parent.internalPointer() return parentItem.childCount() def setupModelData(self): parents = {0: self.rootItem} for key in sorted(self.table.feesDict.keys()): feeItem = self.table.feesDict[key] if HIDE_RARE_CODES and feeItem.obscurity > 0: LOGGER.debug("%s %s HIDE_RARE_CODES = %s, obscurity = %s", feeItem.table, feeItem.description, HIDE_RARE_CODES, feeItem.obscurity) continue section = feeItem.section if section not in parents: try: header = self.table.headers[section] except KeyError: header = "Unknown Section - '%s'" % section head = TreeItem(self.table, header, None, self.rootItem) parents[section] = head self.rootItem.appendChild(head) number_in_group = len(feeItem.brief_descriptions) branch = TreeItem(self.table, key, feeItem, parents[section]) parents[section].appendChild(branch) for row in range(1, number_in_group): branch.appendChild( TreeItem(self.table, key, feeItem, branch, row)) def searchNode(self, node, columns=()): ''' a function called recursively, looking at all nodes beneath node ''' matchflags = QtCore.Qt.MatchFlags(QtCore.Qt.MatchContains) child = node.childItems[0] # columns = range(child.columnCount()) ## <-- would search entire model for column in columns: start_index = self.createIndex(0, column, child) indexes = self.match(start_index, QtCore.Qt.DisplayRole, self.search_phrase, -1, matchflags) for index in indexes: self.foundItems.append(index) for child in node.childItems: if child.childCount(): self.searchNode(child, columns) def search(self, search_phrase, columns=()): self.foundItems = [] self.search_phrase = search_phrase if search_phrase == "": return True self.searchNode(self.rootItem, columns) return self.foundItems != [] if __name__ == "__main__": def resize(arg): for col in range(model.columnCount(arg)): tv.resizeColumnToContents(col) LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) localsettings.initiate() localsettings.loadFeeTables() model = treeModel(localsettings.FEETABLES.tables[0]) dialog = QtWidgets.QDialog() dialog.setMinimumSize(800, 300) layout = QtWidgets.QHBoxLayout(dialog) tv = QtWidgets.QTreeView(dialog) tv.setModel(model) tv.setAlternatingRowColors(True) tv.resizeColumnToContents(0) layout.addWidget(tv) tv.expanded.connect(resize) dialog.exec_() app.closeAllWindows() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/fees_module.py0000644000175000017500000004230112757401432024514 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module contains functions which were originally part of the maingui.py script, concerning fees, accounts and graphical feescale display. ''' import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import accounts from openmolar.dbtools import patient_class from openmolar.dbtools import cashbook from openmolar.dbtools import patient_write_changes from openmolar.qt4gui.fees import fee_table_model from openmolar.qt4gui.fees.feescale_tester import FeescaleTestingDialog from openmolar.qt4gui.feescale_editor import FeescaleEditor from openmolar.qt4gui.dialogs.feescale_configure_dialog \ import FeescaleConfigDialog from openmolar.qt4gui.dialogs.accounts_loader_dialog \ import AccountsLoaderDialog from openmolar.qt4gui.printing import om_printing from openmolar.qt4gui.dialogs.payment_dialog import PaymentDialog LOGGER = logging.getLogger("openmolar") def getFeesFromEst(om_gui, hash_): ''' iterate through the ests... find this item ''' LOGGER.debug("getting a daybook fee for treatment id %s", hash_) fee, ptfee = 0, 0 found = False for est in om_gui.pt.estimates: for tx_hash in est.tx_hashes: if hash_ == tx_hash.hash: found = True fee += est.interim_fee ptfee += est.interim_pt_fee if not found: LOGGER.debug("NO MATCH!") return None return fee, ptfee def takePayment(om_gui): ''' raise a dialog, and take some money ''' if om_gui.pt.serialno == 0: try: paymentPt = patient_class.patient(22963) except PatientNotFoundError: om_gui.advise(_("Please choose a patient"), 1) return om_gui.advise( "%s
    %s" % ( _("No patient Selected"), _("Monies will be allocated to Other Payments, and no receipt " "offered")), 1) else: paymentPt = om_gui.pt dl = PaymentDialog(om_gui) dl.set_treatment_default_amount(paymentPt.fees) dl.hide_treatment(om_gui.pt.serialno == 0) payment_taken = False name = "%s %s" % (paymentPt.sname, paymentPt.fname[:1]) if paymentPt.dnt2 != 0: dent = paymentPt.dnt2 else: dent = paymentPt.dnt1 while not payment_taken: if not dl.exec_(): break if (dl.tx_total > paymentPt.fees and QtWidgets.QMessageBox.question( dl, _("Confirm"), _("Overpayment of treatment fees, is this correct?"), QtWidgets.QMessageBox.Yes| QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No): continue LOGGER.debug("TAKING PAYMENT for patient %s", paymentPt.serialno) if cashbook.paymenttaken( paymentPt.serialno, name, dent, paymentPt.cset, dl.tx_cash, dl.tx_cheque, dl.tx_card, dl.sundry_cash, dl.sundry_cheque, dl.sundry_card, dl.hdp, dl.other, dl.refund): paymentPt.addHiddenNote( "payment", " treatment %s sundries %s" % (dl.tx_total_text, dl.sundry_total_text)) om_gui.updateHiddenNotesLabel() if om_gui.pt.serialno != 0: LOGGER.debug("loaded patient == payment patient") om_printing.printReceipt( om_gui, {"Treatments and Services": dl.tx_total_text, "Sundry Items": dl.sundry_total_text, "Unspecified Items": dl.other_text, "REFUND": dl.refund_text}, total=dl.grand_total_text) # always refer to money in terms of pence LOGGER.debug("adjusting money") if om_gui.pt.cset[:1] == "N": om_gui.pt.money2 += dl.tx_total else: om_gui.pt.money3 += dl.tx_total om_gui.pt.money11 -= dl.refund else: LOGGER.debug( "Payment patient is not loaded. skipping receipt offer.") LOGGER.debug("writing payment notes") om_gui.pt.reset_billing() if patient_write_changes.discreet_changes( paymentPt, ("money2", "money3", "money11", "billdate", "billct", "billtype")) and om_gui.pt.serialno != 0: LOGGER.debug("updating patient's stored money values") om_gui.pt.dbstate.money2 = om_gui.pt.money2 om_gui.pt.dbstate.money3 = om_gui.pt.money3 om_gui.pt.dbstate.money11 = om_gui.pt.money11 om_gui.pt.dbstate.reset_billing() om_gui.updateDetails() om_gui.updateHiddenNotesLabel() LOGGER.info("PAYMENT ALL DONE!") payment_taken = True def loadFeesTable(om_gui): ''' loads the fee table ''' try: tableKeys = list(localsettings.FEETABLES.tables.keys()) except AttributeError: localsettings.loadFeeTables() tableKeys = list(localsettings.FEETABLES.tables.keys()) om_gui.feestableLoaded = True i = om_gui.ui.chooseFeescale_comboBox.currentIndex() tableKeys = sorted(localsettings.FEETABLES.tables.keys()) om_gui.fee_models = [] om_gui.ui.chooseFeescale_comboBox.clear() for key in tableKeys: table = localsettings.FEETABLES.tables[key] model = fee_table_model.treeModel(table) om_gui.fee_models.append(model) om_gui.ui.chooseFeescale_comboBox.addItem(table.briefName) text = "%d %s" % (len(om_gui.fee_models), _("Fee Scales Available")) om_gui.ui.feescales_available_label.setText(text) if i != -1: om_gui.ui.chooseFeescale_comboBox.setCurrentIndex(i) def feetester(om_gui): ''' raise an app which allows a few tests of the feetable logic ''' if not om_gui.fee_table_tester: dl = FeescaleTestingDialog() dl.lineEdit.setText("MOD") om_gui.ui.chooseFeescale_comboBox.currentIndexChanged.connect( dl.change_table) i = om_gui.ui.chooseFeescale_comboBox.currentIndex() dl.comboBox.setCurrentIndex(i) om_gui.fee_table_tester = dl om_gui.fee_table_tester.exec_() def showTableXML(om_gui): ''' user wants to view the full table logic! ''' def editor_closed(): ''' after closing the editor, free up references to it. ''' om_gui.fee_table_editor.setParent(None) om_gui.fee_table_editor.deleteLater() om_gui.fee_table_editor = None try: om_gui.fee_table_editor.show() om_gui.fee_table_editor.raise_() except AttributeError: om_gui.fee_table_editor = FeescaleEditor(om_gui) om_gui.fee_table_editor.show() om_gui.fee_table_editor.closed_signal.connect(editor_closed) def configure_feescales(om_gui): ''' Raises a dialog to allow feescales to be reordered and renamed etc. ''' LOGGER.debug("configure feescales") dl = FeescaleConfigDialog(om_gui) if (dl.exec_() and QtWidgets.QMessageBox.question( om_gui, _("Question"), _("Reload feescales now?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes): om_gui.reload_feescales() def table_clicked(om_gui, index): ''' user has clicked an item on the feetable. show the user some options (depending on whether they have a patient loaded for edit, or are in feetable adjust mode etc.... ''' fee_item, sub_index = \ om_gui.ui.feeScales_treeView.model().data(index, QtCore.Qt.UserRole) if not fee_item: # this will be the case if a header item was clicked return def _apply(arg): ''' apply the result of the QMenu generated when feetable is clicked ''' if arg.text().startswith(_("Add to tx plan")): om_gui.feeScaleTreatAdd(fee_item, sub_index) else: om_gui.advise("%s %s" % (arg.text(), _("not yet available")), 1) menu = QtWidgets.QMenu(om_gui) ptno = om_gui.pt.serialno if ptno != 0: menu.addAction(_("Add to tx plan of patient") + " %d" % ptno) # menu.addSeparator() if not menu.isEmpty(): menu.setDefaultAction(menu.actions()[0]) choice = menu.exec_(om_gui.cursor().pos()) if choice: _apply(choice) def feeSearch(om_gui): ''' user has finished editing the feesearchLineEdit - time to refill the searchList ''' def ensureVisible(index): ''' expand all parents of a found leaf''' parentIndex = model.parent(index) om_gui.ui.feeScales_treeView.setExpanded(parentIndex, True) if parentIndex.internalPointer() is not None: ensureVisible(parentIndex) search_phrase = om_gui.ui.feeSearch_lineEdit.text() if search_phrase == "": return model = om_gui.fee_models[ om_gui.ui.chooseFeescale_comboBox.currentIndex()] if om_gui.ui.search_itemcodes_radioButton.isChecked(): columns = [0] else: # om_gui.ui.search_descriptions_radioButton.isChecked(): columns = [2, 3] om_gui.wait(True) if model.search(search_phrase, columns): om_gui.ui.feeScales_treeView.collapseAll() indexes = model.foundItems om_gui.ui.feesearch_results_label.setText( "%d %s %s" % (len(indexes), _("Items containing"), search_phrase)) for index in indexes: ensureVisible(index) om_gui.wait(False) else: om_gui.wait(False) message = _("phrase not found in feetable") if om_gui.ui.search_itemcodes_radioButton.isChecked(): message += " " + _("itemcodes") else: message += " " + _("usercodes or descriptions") om_gui.advise(message, 1) def chooseFeescale(om_gui, i): ''' receives signals from the choose feescale combobox acts on the fee table arg will be the chosen index ''' if i == -1: return table = localsettings.FEETABLES.tables[i] if table.endDate is None: end = _("IN CURRENT USE") else: end = localsettings.formatDate(table.endDate) om_gui.ui.feeScale_label.setText( "%s %s - %s" % (table.description, localsettings.formatDate(table.startDate), end)) om_gui.ui.feesearch_results_label.setText("") try: om_gui.ui.feeScales_treeView.setModel(om_gui.fee_models[i]) except IndexError: print(i, len(om_gui.fee_models)) om_gui.advise(_("fee table error"), 2) def adjustTable(om_gui, index): ''' adjust the column width. ''' tv = om_gui.ui.feeScales_treeView for col in range(tv.model().columnCount(index)): tv.resizeColumnToContents(col) # usercolumn is unmanageably wide now tv.setColumnWidth(1, 80) def expandFees(om_gui): ''' expands/contracts the fees treewidget dependent on the state of the feeExpand_radioButton ''' om_gui.wait() if om_gui.ui.feeExpand_radioButton.isChecked(): om_gui.ui.feeScales_treeView.expandAll() else: om_gui.ui.feeScales_treeView.collapseAll() om_gui.wait(False) def makeBadDebt(om_gui): ''' write off the debt (stops cluttering up the accounts table) ''' if QtWidgets.QMessageBox.question( om_gui, _("Confirm"), _("Move this patient to Bad Debt Status?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: # what is owed om_gui.pt.money11 = om_gui.pt.fees om_gui.pt.force_money_changes = True om_gui.pt.resetAllMonies() om_gui.pt.status = _("BAD DEBT") om_gui.ui.notesEnter_textEdit.setText( _("changed patient's status to BAD DEBT") ) om_gui.updateStatus() om_gui.updateDetails() def populateAccountsTable(om_gui): dl = AccountsLoaderDialog(om_gui) if not dl.exec_(): return om_gui.advise(_("Loading Accounts Table")) om_gui.wait() rows = accounts.details(greater_than=dl.show_debts, amount=dl.min_amount, extra_conditions=dl.conditions, extra_values=dl.values) om_gui.ui.accounts_tableWidget.clear() om_gui.ui.accounts_tableWidget.setSortingEnabled(False) om_gui.ui.accounts_tableWidget.setRowCount(len(rows)) headers = [_("Dent"), _("Serialno"), "", _("Name"), _("Status"), _("Last Tx"), _("T/C")] if dl.show_debts: headers.extend([_("Fees"), _("Last Bill"), _("Type"), _("Number"), "A", "B", "C"]) else: headers.append(_("Credit")) headers.append(_("Memo")) om_gui.ui.accounts_tableWidget.setColumnCount(len(headers)) om_gui.ui.accounts_tableWidget.setHorizontalHeaderLabels(headers) om_gui.ui.accounts_tableWidget.verticalHeader().hide() om_gui.ui.accounts_tableWidget.horizontalHeader().setStretchLastSection( True) total = 0 om_gui.ui.accounts_tableWidget.setSortingEnabled(False) for rowno, row in enumerate(rows): for col, val in enumerate(row): if col in (8, 9, 10) and not dl.show_debts: continue if val is not None: item = QtWidgets.QTableWidgetItem() if col == 0: item.setText(localsettings.ops.get(val)) elif col in (5, 8): item.setData(QtCore.Qt.DisplayRole, QtCore.QDate(val)) elif col == 6: if not val: item.setText(_("Under Treatment")) else: item.setData(QtCore.Qt.DisplayRole, QtCore.QDate(val)) elif col == 7: if dl.show_debts: total += val item.setForeground(QtGui.QBrush(QtCore.Qt.red)) money = "%.02f" % float(val / 100) else: total += -val item.setForeground(QtGui.QBrush(QtCore.Qt.darkBlue)) money = "%.02f" % float(-val / 100) item.setData(QtCore.Qt.DisplayRole, money.rjust(8, " ")) item.setTextAlignment( QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter) else: item.setText(str(val)) gui_col = col if col == 11: gui_col = 14 if dl.show_debts else 8 om_gui.ui.accounts_tableWidget.setItem(rowno, gui_col, item) if dl.show_debts: for col in range(11, 14): item = QtWidgets.QTableWidgetItem() item.setCheckState(QtCore.Qt.Unchecked) om_gui.ui.accounts_tableWidget.setItem(rowno, col, item) om_gui.ui.accounts_tableWidget.sortItems(5, QtCore.Qt.DescendingOrder) om_gui.ui.accounts_tableWidget.setSortingEnabled(True) for i in range(om_gui.ui.accounts_tableWidget.columnCount()): om_gui.ui.accounts_tableWidget.resizeColumnToContents(i) om_gui.ui.accountsTotal_doubleSpinBox.setValue(total / 100) om_gui.wait(False) om_gui.ui.printSelectedAccounts_pushButton.setEnabled(dl.show_debts) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/feescale_tester.py0000644000175000017500000001562612727774160025404 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools.patient_class import mouth, decidmouth from openmolar.dbtools.treatment_course import CURRTRT_NON_TOOTH_ATTS from openmolar.qt4gui.compiled_uis import Ui_codeChecker from openmolar.qt4gui.customwidgets.upper_case_line_edit \ import UpperCaseLineEdit DECIDMOUTH = [] for tooth in decidmouth: if tooth != "***": DECIDMOUTH.append(tooth) ADULTMOUTH = [] for tooth in mouth: ADULTMOUTH.append(tooth) class DeciduousAttributeModel(QtCore.QAbstractTableModel): def __init__(self, table, parent=None): QtCore.QAbstractTableModel.__init__(self, parent) self.attributes = DECIDMOUTH self.table = table self.code = None self._rowcount = None def get_value(self, row): tooth = self.attributes[row] code = self.table.getToothCode(tooth, self.code.upper()) try: return self.table.feesDict[code].description except KeyError: return code def rowCount(self, index): if self._rowcount is None: self._rowcount = len(self.attributes) // 2 return self._rowcount def columnCount(self, index): return 4 def data(self, index, role): if role != QtCore.Qt.DisplayRole: return None if index.column() == 0: return self.attributes[index.row()].upper() if index.column() == 1: return self.get_value(index.row()) if index.column() == 2: return self.attributes[index.row() + self._rowcount].upper() if index.column() == 3: return self.get_value(index.row() + self._rowcount) class AdultAttributeModel(DeciduousAttributeModel): def __init__(self, table, parent=None): DeciduousAttributeModel.__init__(self, table, parent) self.attributes = ADULTMOUTH class FeescaleTestingDialog(Ui_codeChecker.Ui_Dialog, QtWidgets.QDialog): def __init__(self, parent=None): QtWidgets.QDialog.__init__(self, parent) self.setupUi(self) self.table_list = [] self.load_feescales() self.model2 = DeciduousAttributeModel(self.current_table) self.model3 = AdultAttributeModel(self.current_table) self.dec_tableView.setModel(self.model2) self.adult_tableView.setModel(self.model3) self.dec_tableView.horizontalHeader().setStretchLastSection(True) self.adult_tableView.horizontalHeader().setStretchLastSection(True) self.setWindowTitle(_("Shortcut tester")) self.comboBox.currentIndexChanged.connect(self.change_table) self.pushButton.clicked.connect(self.check_codes) self.quit_pushButton.clicked.connect(self.accept) self.line_edits = {} form_layout = QtWidgets.QFormLayout(self.frame) for att in CURRTRT_NON_TOOTH_ATTS: widg = QtWidgets.QLineEdit() self.line_edits[att] = widg form_layout.addRow(att, widg) self.lineEdit = UpperCaseLineEdit() self.bottom_layout.insertWidget(1, self.lineEdit) self.lineEdit.setText("P") self.check_codes() def load_feescales(self): self.table_list = [] self.tablenames = [] for table in list(localsettings.FEETABLES.tables.values()): self.table_list.append(table) self.tablenames.append(table.briefName) self.comboBox.clear() self.comboBox.addItems(self.tablenames) def check_codes(self): tx = str(self.lineEdit.text()).upper() complex_matches = [] for att in CURRTRT_NON_TOOTH_ATTS: for complex_shortcut in self.current_table.complex_shortcuts: if complex_shortcut.matches(att, tx): complex_matches.append(att) usercode = "%s %s" % (att, tx) code = self.current_table.getItemCodeFromUserCode(usercode) if code == "-----": self.line_edits[att].setText("") else: description = self.current_table.getItemDescription( code, usercode) self.line_edits[att].setText("%s %s" % (code, description)) for model in (self.model2, self.model3): model.beginResetModel() model.code = tx model.endResetModel() for att in DECIDMOUTH + ADULTMOUTH: for complex_shortcut in self.current_table.complex_shortcuts: if complex_shortcut.matches(att, tx): complex_matches.append(att) if complex_matches != []: QtWidgets.QMessageBox.information( self, _("Information"), "%s '%s' %s
    %s" % ( _("This feescale handles"), tx, _("as a complex code for the following attributes."), complex_matches)) @property def current_table(self): return self.table_list[self.comboBox.currentIndex()] def change_table(self, i): self.model2.table = self.current_table self.model3.table = self.current_table self.check_codes() if __name__ == "__main__": localsettings.initiate() localsettings.loadFeeTables() app = QtWidgets.QApplication([]) dl = FeescaleTestingDialog() dl.exec_() app.closeAllWindows() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/manipulate_plan.py0000644000175000017500000013452112710144046025376 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides code to add Xrays, perio items......etc to the treatment plan ''' import re import logging from functools import partial from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.ptModules.estimates import TXHash, Estimate from openmolar.qt4gui.compiled_uis import Ui_customTreatment from openmolar.qt4gui.dialogs.add_treatment_dialog import AddTreatmentDialog from openmolar.qt4gui.dialogs.complete_treatment_dialog \ import CompleteTreatmentDialog from openmolar.qt4gui.dialogs.denture_dialog import DentureDialog from openmolar.qt4gui.dialogs.other_treatment_dialog \ import OtherTreatmentDialog from openmolar.qt4gui.fees import course_module from openmolar.qt4gui.charts import charts_gui LOGGER = logging.getLogger("openmolar") # some constants to make the code readable FULLY_HANDLED = 2 PARTIALLY_HANDLED = 1 NOT_HANDLED = 0 def offerTreatmentItems(om_gui, tx_list, completing=False): ''' tx_list should be an iterable in the form ((att, shortcut),(att, shortcut)) eg.(("perio", "SP-"),("xray", "S"), ("ul8", "MOD").... ) these are offered to the user, who selects from these. the return value is an iterable in the same form. ''' dl = AddTreatmentDialog(tx_list, om_gui.pt, om_gui) if completing: # we are adding to the completed treatments, not plan dl.use_completed_messages() result = dl.getInput() return result def add_treatments_to_plan(om_gui, treatments, completed=False): LOGGER.debug(treatments) if course_module.newCourseNeeded(om_gui): return pt = om_gui.pt for att, shortcut in treatments: LOGGER.debug("adding %s %s to treatment plan" % (att, shortcut)) existing_txs = "%s %s" % (pt.treatment_course.__dict__["%scmp" % att], pt.treatment_course.__dict__["%spl" % att] ) # count the existing number and add 1 for the new shortcut n_txs = existing_txs.split(" ").count(shortcut) + 1 courseno = pt.treatment_course.courseno hash_ = localsettings.hash_func( "%s%s%s%s" % (courseno, att, n_txs, shortcut)) tx_hash = TXHash(hash_) dentid = pt.course_dentist pt.treatment_course.__dict__["%spl" % att] += "%s " % shortcut # check for deciduous tooth. if re.match("[ul][lr][1-8]", att): n_txs = None tooth_name = pt.chartgrid.get(att) if tooth_name != att: LOGGER.debug("Deciduous tooth treatment! on %s" % tooth_name) att = "%s%s" % (att[:2], tooth_name[2]) complex_addition_handled, shortcut = complex_shortcut_addition( om_gui, att, shortcut, n_txs, tx_hash) if complex_addition_handled == FULLY_HANDLED: LOGGER.debug("complex addition handled the estimate in entirety") elif complex_addition_handled == PARTIALLY_HANDLED: LOGGER.debug("complex addition handled the estimate in part") add_treatment_to_estimate(om_gui, att, shortcut, dentid, [tx_hash]) else: LOGGER.debug("adding only as a standard shortcut") add_treatment_to_estimate(om_gui, att, shortcut, dentid, [tx_hash]) if completed: tx_hash_complete(om_gui, tx_hash) om_gui.update_plan_est() def add_treatment_to_estimate(om_gui, att, shortcut, dentid, tx_hashes, itemcode=None, csetype=None, descr=None, fee=None, ptfee=None, chosen_feescale=None): ''' add an item to the patient's estimate usercode unnecessary if itemcode is provided. ''' def _tooth_code_search(att, shortcut): itemcode = table.getToothCode(att, shortcut) if itemcode != "-----": return itemcode, table LOGGER.debug("%s %s not matched by %s" % (att, shortcut, table)) for alt_table in localsettings.FEETABLES.tables.values(): if alt_table == table or not alt_table.is_current: continue alt_code = alt_table.getToothCode(att, shortcut) if alt_code != "-----": if QtWidgets.QMessageBox.question( om_gui, _("Confirm"), "

    %s %s %s.

    %s %s


    %s" % ( att, shortcut, _( "was not found in the patient's default feescale"), _( "It is matched in another feescale -"), alt_table.briefName, _("Shall we add this item from this feescale?")), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: return alt_code, alt_table return itemcode, table def _user_code_search(usercode): itemcode = table.getItemCodeFromUserCode(usercode) if itemcode != "-----": return itemcode, table LOGGER.debug("%s not matched by %s" % (usercode, table)) for alt_table in localsettings.FEETABLES.tables.values(): if alt_table == table or not alt_table.is_current: continue alt_code = alt_table.getItemCodeFromUserCode(usercode) if alt_code != "-----": if QtWidgets.QMessageBox.question( om_gui, _("Confirm"), "

    %s %s.

    %s %s


    %s" % ( usercode, _("was not found in the patient's " "default feescale"), _("It is matched in another feescale -"), alt_table.briefName, _("Shall we add this item from this feescale?")), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: return alt_code, alt_table return itemcode, table usercode = ("%s %s" % (att, shortcut)) LOGGER.debug("%s %s %s %s %s %s %s %s %s" % ( usercode, dentid, tx_hashes, itemcode, csetype, descr, fee, ptfee, chosen_feescale) ) for tx_hash in tx_hashes: assert isinstance(tx_hash, TXHash), "bad form Neil" pt = om_gui.pt est = Estimate() est.ix = None # -- this will be generated by autoincrement on commit est.serialno = pt.serialno est.courseno = pt.courseno0 if chosen_feescale is None: table = pt.fee_table else: table = chosen_feescale if re.match("[ul][lr][1-8A-E]", att): if itemcode is None: itemcode, table = _tooth_code_search(att, shortcut) if descr is None: tooth_name = att.upper() descr = table.getItemDescription(itemcode, usercode) descr = descr.replace("*", " %s" % tooth_name) else: if itemcode is None: itemcode, table = _user_code_search(usercode) if descr is None: descr = table.getItemDescription(itemcode, usercode) est.itemcode = itemcode est.description = descr est.csetype = table.categories[0] if fee is None and ptfee is None: # look up the fee here est.fee, est.ptfee = table.getFees(itemcode, pt, est.csetype, shortcut) else: est.fee, est.ptfee = fee, ptfee est.tx_hashes = tx_hashes est.dent = dentid pt.estimates.append(est) if itemcode == "-----": om_gui.advise("%s - %s %s
    %s.
    %s" % ( _("WARNING"), _("treatment"), usercode, _("has not been succesfully priced"), _("Please edit the estimate manually")), 1) return True def perioAdd(om_gui): ''' add perio items ''' pt = om_gui.pt if "N" in pt.cset: mylist = ( ("perio", "SP"), ) else: mylist = ( ("perio", "SP-"), ("perio", "SP"), ("perio", "SP+"), ) chosen_treatments = offerTreatmentItems(om_gui, mylist) add_treatments_to_plan(om_gui, chosen_treatments) def xrayAdd(om_gui, complete=False): ''' add xray items ''' mylist = ( ("xray", "S"), ("xray", "M"), ("xray", "P"), ) # offerTreatmentItems is a generator, so the list conversion here # is so that the dialog get raised before the # were these xrays taken today question chosen_treatments = list(offerTreatmentItems(om_gui, mylist, complete)) if not chosen_treatments: return if not complete: input = QtWidgets.QMessageBox.question( om_gui, _("question"), _("Were these xrays taken today?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No ) if input == QtWidgets.QMessageBox.Yes: complete = True completed_planned_warning_required = False # complete any xrays already planned. if complete: pt = om_gui.pt courseno = pt.treatment_course.courseno for xray, trt in chosen_treatments: if trt in pt.treatment_course.xraypl: n_txs = pt.treatment_course.xraycmp.split(" ").count(trt) + 1 hash_ = localsettings.hash_func( "%sxray%s%s" % (courseno, n_txs, trt)) tx_hash = TXHash(hash_) tx_hash_complete(om_gui, tx_hash) completed_planned_warning_required = True else: add_treatments_to_plan(om_gui, ((xray, trt),), True) else: add_treatments_to_plan(om_gui, chosen_treatments, False) if om_gui.ui.tabWidget.currentIndex() == 4: # clinical summary om_gui.load_clinicalSummaryPage() else: om_gui.ui.completed_listView.model().reset() if completed_planned_warning_required: om_gui.advise( _("Some of the xrays you completed were already planned."), 1) def denture_add(om_gui): dl = DentureDialog(om_gui) if dl.exec_(): add_treatments_to_plan(om_gui, dl.chosen_treatments) def otherAdd(om_gui): ''' add 'other' items ''' # chosen_treatments = offerTreatmentItems(om_gui, item_list) # if chosen_treatments: # add_treatments_to_plan(om_gui, chosen_treatments) dl = OtherTreatmentDialog(om_gui) if dl.exec_(): add_treatments_to_plan(om_gui, dl.chosen_treatments) def customAdd(om_gui, description=None): ''' add 'custom' items ''' if course_module.newCourseNeeded(om_gui): return pt = om_gui.pt courseno = pt.treatment_course.courseno Dialog = QtWidgets.QDialog(om_gui) dl = Ui_customTreatment.Ui_Dialog() dl.setupUi(Dialog) if description: dl.description_lineEdit.setText(description) if Dialog.exec_(): no = dl.number_spinBox.value() descr = dl.description_lineEdit.text() if descr == "": descr = "??" usercode = str(descr.replace(" ", "_"))[:20].upper() fee = localsettings.pencify(str(dl.fee_doubleSpinBox.value())) for i in range(no): pt.treatment_course.custompl += "%s " % usercode custom_txs = "%s %s" % ( pt.treatment_course.customcmp, pt.treatment_course.custompl) n = custom_txs.split(" ").count(usercode) hash_ = localsettings.hash_func( "%scustom%s%s" % (courseno, n, usercode)) tx_hash = TXHash(hash_) dentid = om_gui.pt.course_dentist add_treatment_to_estimate(om_gui, "custom", usercode, dentid, [tx_hash], itemcode="CUSTO", csetype="P", descr=descr, fee=fee, ptfee=fee) om_gui.update_plan_est() def plan_viewer_context_menu(om_gui, att, values, point): ''' provides and handles a context menu for the ui.plan_listView and the ui.planChartWidget ''' if len(values) == 0: return if len(values) > 1: treatments = [] for value in values: treatments.append((att, value)) complete_txs(om_gui, treatments, confirm_multiples=True) return qmenu = QtWidgets.QMenu(om_gui) value = values[0] message = "%s %s %s" % (_("Complete"), att, value) complete_action = QtWidgets.QAction(message, om_gui) complete_action.triggered.connect( partial(complete_txs, om_gui, ((att, value),))) message = "%s %s %s" % (_("Delete"), att, value) delete_action = QtWidgets.QAction(message, om_gui) delete_action.triggered.connect( partial(remove_treatments_from_plan_and_est, om_gui, ((att, value),))) cancel_action = QtWidgets.QAction(_("Cancel"), om_gui) # not connected to anything.. f clicked menu will simply die! qmenu.addAction(complete_action) qmenu.addSeparator() qmenu.addAction(delete_action) qmenu.addAction(cancel_action) qmenu.setDefaultAction(complete_action) qmenu.exec_(point) def cmp_viewer_context_menu(om_gui, att, values, point): ''' provides and handles a context menu for the ui.completed_listView and the ui.completedChartWidget ''' if len(values) == 0: return if len(values) > 1: treatments = [] for value in values: treatments.append((att, value)) reverse_txs(om_gui, treatments, confirm_multiples=True) return qmenu = QtWidgets.QMenu(om_gui) value = values[0] if att == "exam": hash_ = localsettings.hash_func("%sexam1%s" % ( om_gui.pt.treatment_course.courseno, om_gui.pt.treatment_course.examt)) tx_hash = TXHash(hash_, True) rev_func = partial(tx_hash_reverse, om_gui, tx_hash) else: rev_func = partial(reverse_txs, om_gui, ((att, value),)) message = "%s %s %s" % (_("Reverse and Delete"), att, value) delete_action = QtWidgets.QAction(message, qmenu) delete_action.triggered.connect( partial(remove_treatments_from_plan_and_est, om_gui, ((att, value), ), True) ) message = "%s %s %s" % (_("Reverse"), att, value) reverse_action = QtWidgets.QAction(message, qmenu) reverse_action.triggered.connect(rev_func) cancel_action = QtWidgets.QAction(_("Cancel"), qmenu) # not connected to anything.. f clicked menu will simply die! qmenu.addAction(reverse_action) qmenu.addSeparator() if att != "exam": qmenu.addAction(delete_action) qmenu.addAction(cancel_action) qmenu.setDefaultAction(qmenu.actions()[0]) qmenu.exec_(point) def plan_listview_2xclick(om_gui, index): model = om_gui.ui.plan_listView.model() att, values = model.att_vals(index) new_list = [] for value in values: new_list.append((att, value)) model.beginResetModel() complete_txs(om_gui, new_list) model.endResetModel() om_gui.ui.completed_listView.model().reset() def plan_list_right_click(om_gui, point): index = om_gui.ui.plan_listView.indexAt(point) LOGGER.debug("%s right clicked" % index) if not index.isValid(): return model = om_gui.ui.plan_listView.model() att, values = model.att_vals(index) exec_point = om_gui.ui.plan_listView.mapToGlobal(point) plan_viewer_context_menu(om_gui, att, values, exec_point) model.reset() om_gui.ui.completed_listView.model().reset() def completed_listview_2xclick(om_gui, index): model = om_gui.ui.completed_listView.model() att, values = model.att_vals(index) if att == "exam": point = om_gui.ui.completed_listView.mapFromGlobal( QtGui.QCursor.pos()) om_gui.show_cmp_listview_context_menu(point) return new_list = [] for value in values: new_list.append((att, value)) model.beginResetModel() reverse_txs(om_gui, new_list) model.endResetModel() om_gui.ui.plan_listView.model().reset() def cmp_list_right_click(om_gui, point): index = om_gui.ui.completed_listView.indexAt(point) LOGGER.debug("%s right clicked" % index) if not index.isValid(): return model = om_gui.ui.completed_listView.model() att, values = model.att_vals(index) exec_point = om_gui.ui.completed_listView.mapToGlobal(point) cmp_viewer_context_menu(om_gui, att, values, exec_point) model.reset() om_gui.ui.plan_listView.model().reset() def fromFeeTable(om_gui, fee_item, sub_index): ''' add an item which has been selected from the fee table itself sub_index is when a child item has been added. ''' def show_help(): message = '''%s
    • %s %s %s %s %s
    • %s %s
    • %s
    ''' % ( _("Choose"), _("OK to add"), att_, _("to patient attribute"), shortcut, _("Recommended"), _("Use Feescale Method"), _("to overide this behaviour"), _("Cancel to abandon this addition entirely")) QtWidgets.QMessageBox.information(mb, _("Help"), message) def confirm_selected_table(): ''' check that the user is happy to use the suggested table, not the current one. returns the selected table, or None to keep the current. ''' table = pt.fee_table if fee_item.table == table: return table message = '%s
    %s%s
    %s
    %s' % ( _("Confirm you wish to use feescale"), fee_item.table.briefName, _("for this item"), _("The patient's default table is"), table.briefName) if QtWidgets.QMessageBox.question( om_gui, _("Confirm"), message, QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Ok ) == QtWidgets.QMessageBox.Ok: return fee_item.table LOGGER.debug("fee_item %s, sub_index %s" % (fee_item, sub_index)) if course_module.newCourseNeeded(om_gui): return pt = om_gui.pt table = confirm_selected_table() if table is None: return att_ = fee_item.pt_attribute if att_ == "chart": atts = om_gui.chooseTooth() else: atts = [att_] if fee_item.shortcut is None or fee_item.is_regex: shortcut = "!FEE" else: shortcut = fee_item.shortcut if table == pt.fee_table and shortcut != "!FEE" and att_ != "exam": message = "%s %s
    %s" % (_( "You appear to be adding a relatively straightforward code to the" " patient's treatment plan using their default feescale"), _("It is normally advisable to add this code conventionally."), _("Would you like to do this now?") ) mb = QtWidgets.QMessageBox(None) mb.setWindowTitle(_("Confirm")) mb.setText(message) mb.setIcon(mb.Question) mb.addButton(_("Use Feescale Method"), mb.DestructiveRole) mb.addButton(mb.Cancel) mb.addButton(mb.Ok) mb.addButton(mb.Help) result = mb.exec_() while result == mb.Help: show_help() result = mb.exec_() if result == mb.Ok: LOGGER.warning("reverting to standard treatment adding methods") txs = [] message = "" for att in atts: txs.append((att, shortcut)) message += "
  • %s %s
  • " % (att, shortcut) add_treatments_to_plan(om_gui, txs) om_gui.advise( "%s
      %s
    %s" % (_("Treatments"), message, _("were added conventionally")), 1) return elif result == mb.Cancel: LOGGER.info("Feescale addition abandoned by user") return if not fee_item.allow_feescale_add: if att_ == "exam": reason = _("Exam items can never be added this way") else: reason = fee_item.forbid_reason message = "%s
    %s" % ( _("This item can not be added to the treatment plan " "using the feescale method, sorry"), reason) om_gui.advise(message, 1) return fee = fee_item.fees[sub_index] try: pt_fee = fee_item.ptFees[sub_index] except IndexError: pt_fee = fee dentid = pt.course_dentist cset = table.categories[0] for att in atts: if "%spl" % att not in pt.treatment_course.__dict__: att = "other" pt.treatment_course.__dict__[att + "pl"] += "%s " % shortcut new_plan = pt.treatment_course.__dict__[att + "pl"] descr = fee_item.description if re.match("[ul][lr][1-8]", att): om_gui.ui.planChartWidget.setToothProps(att, new_plan) tooth_name = pt.chartgrid.get(att).upper() descr = descr.replace("*", " %s" % tooth_name) existing_txs = "%s %s" % ( pt.treatment_course.__dict__["%scmp" % att], new_plan) n_txs = existing_txs.split(" ").count(shortcut) courseno = pt.treatment_course.courseno hash_ = localsettings.hash_func( "%s%s%s%s" % (courseno, att, n_txs, shortcut)) tx_hash = TXHash(hash_) add_treatment_to_estimate(om_gui, att, shortcut, dentid, [tx_hash], fee_item.itemcode, cset, descr, fee, pt_fee, table) om_gui.advise("%s %s (%s)" % ( fee_item.description, _("added to estimate"), _("from feescale")), 1) om_gui.update_plan_est() def complex_shortcut_addition(om_gui, att, shortcut, n_txs, tx_hash, recalculating=False): def number_of_chart_matches(filter="[ul][lr][1-8A-E]"): ''' suppose a veneer is passed - is it the only veneer? ''' if recalculating: LOGGER.debug( "recalculating estimate, so not using pt.tx_hash_tups") pt.new_hash_tups.append((tx_hash, att, shortcut)) iterable_ = pt.new_hash_tups else: iterable_ = pt.tx_hash_tups n = 0 for hash_, att_, s_cut in iterable_: if (re.match(filter, att_) and complex_shortcut.matches(att_, s_cut.strip(" "))): n += 1 LOGGER.debug("number_of_chart_matches = %d" % n) return n LOGGER.debug( "checking %s %s n_txs=%s %s" % (att, shortcut, n_txs, tx_hash)) pt = om_gui.pt fee_table = pt.fee_table dentid = pt.course_dentist LOGGER.debug("Feetable being checked = %s" % fee_table) handled = NOT_HANDLED for complex_shortcut in fee_table.complex_shortcuts: if complex_shortcut.matches(att, shortcut): LOGGER.debug("%s %s matches complex shortcut %s" % ( att, shortcut, complex_shortcut)) for case in complex_shortcut.addition_cases: m = re.match("n_txs=(\d+)", case.condition) m2 = re.match("n_txs>(\d+)", case.condition) m3 = re.match("(\d+) int(m2.groups()[0])) or (m3 and int(m3.groups()[0]) < n_txs < int(m3.groups()[1])) ): continue LOGGER.debug("condition met %s" % case.condition) tx_hashes = [tx_hash] for item_code in case.removals: for est in pt.estimates: if est.itemcode == item_code: LOGGER.debug("removing estimate %s" % est) pt.estimates.remove(est) tx_hashes += est.tx_hashes for item_code in case.additions: LOGGER.debug("adding additional code %s" % item_code) add_treatment_to_estimate( om_gui, att, shortcut, dentid, list(tx_hashes), item_code) for item_code in case.alterations: # instead of adding a new estimate item # add this treatment hash to existing item LOGGER.debug("altering code %s" % item_code) for est in pt.estimates: if est.itemcode == item_code: est.tx_hashes += tx_hashes est.fee, est.ptfee = fee_table.recalc_fee( pt, item_code, n_txs) LOGGER.debug("est altered %s" % est) if case.message != "": message = case.message.replace("SHORTCUT", shortcut) om_gui.advise(message, 1) LOGGER.info(message) if case.shortcut_substitution is not None: find_, replace = case.shortcut_substitution shortcut = re.sub(find_, replace, shortcut) LOGGER.info("modded shortcut to '%s'" % shortcut) handled = case.is_handled break if handled == FULLY_HANDLED: LOGGER.info("%s %s was handled by as a complex shortcut" % ( att, shortcut)) return handled, shortcut return handled, shortcut def complex_shortcut_removal_handled(om_gui, att, shortcut, n_txs, tx_hash): def number_of_chart_matches(filter="[ul][lr][1-8A-E]"): ''' suppose a veneer is passed - is it the only veneer? ''' n = 0 for hash_, att_, s_cut in pt.tx_hash_tups: if (re.match(filter, att_) and complex_shortcut.matches(att_, s_cut.strip(" "))): n += 1 LOGGER.debug("number_of_chart_matches = %d" % n) return n LOGGER.debug((att, shortcut, n_txs, tx_hash)) pt = om_gui.pt dentid = pt.course_dentist fee_table = pt.fee_table LOGGER.debug("Feetable being checked = %s" % fee_table) for complex_shortcut in fee_table.complex_shortcuts: if complex_shortcut.matches(att, shortcut): LOGGER.debug( "%s %s is a complex shortcut with %d removal_cases" % ( att, shortcut, len(complex_shortcut.removal_cases))) for case in complex_shortcut.removal_cases: m = re.match("n_txs=(\d+)", case.condition) m2 = re.match("n_txs>(\d+)", case.condition) m3 = re.match("(\d+) int(m2.groups()[0])) or (m3 and int(m3.groups()[0]) < n_txs < int( m3.groups()[1])) ): continue LOGGER.debug("condition met %s" % case.condition) tx_hashes = [tx_hash] for item_code in case.removals: for est in pt.estimates: if est.itemcode == item_code: LOGGER.debug("removing estimate %s" % est) pt.estimates.remove(est) tx_hashes += est.tx_hashes for item_code in case.additions: LOGGER.debug("adding additional code %s" % item_code) add_treatment_to_estimate( om_gui, att, shortcut, dentid, tx_hashes, item_code) for item_code in case.alterations: # instead of adding a new estimate item # add this treatment hash to existing item LOGGER.debug("altering code %s" % item_code) for est in pt.estimates: if est.itemcode == item_code: for hash_ in tx_hashes: if hash_ in est.tx_hashes: est.tx_hashes.remove(hash_) est.fee, est.ptfee = fee_table.recalc_fee( pt, item_code, n_txs) LOGGER.debug("est altered %s" % est) if case.message != "": message = case.message.replace("SHORTCUT", shortcut) om_gui.advise(message, 1) LOGGER.info(message) LOGGER.debug("removing all references to this treatment in " "from the patient's estimate") for hash_ in tx_hashes: for est in list(pt.ests_from_hash(hash_)): LOGGER.debug( "removing reference to %s in estimate %s" % ( hash_, est)) est.tx_hashes.remove(hash_) if est.tx_hashes == []: pt.estimates.remove(est) return True LOGGER.debug("%s NOT handled as a complex shortcut" % shortcut) return False def remove_treatments_from_plan_and_est(om_gui, treatments, completed=False): ''' remove treatments from the treatment plan and estimate. treatments is in the form ((att, shortcut),) ''' LOGGER.debug((treatments, completed)) pt = om_gui.pt courseno = pt.treatment_course.courseno for att, shortcut in treatments: if completed: txs = pt.treatment_course.__dict__["%scmp" % att] n_txs = txs.split(" ").count(shortcut) hash_ = localsettings.hash_func( "%s%s%s%s" % (courseno, att, n_txs, shortcut)) tx_hash = TXHash(hash_, completed) tx_hash_reverse(om_gui, tx_hash) txs = "%s %s" % ( pt.treatment_course.__dict__["%scmp" % att], pt.treatment_course.__dict__["%spl" % att] ) n_txs = txs.split(" ").count(shortcut) hash_ = localsettings.hash_func( "%s%s%s%s" % (courseno, att, n_txs, shortcut)) tx_hash = TXHash(hash_, completed=False) p_att = "%spl" % att val = pt.treatment_course.__dict__[p_att] new_val = val.replace("%s " % shortcut, "", 1) if re.match("[ul][lr][1-8]", att): n_txs = None if not complex_shortcut_removal_handled(om_gui, att, shortcut, n_txs, tx_hash): affected_ests = list(om_gui.pt.ests_from_hash(tx_hash)) if not affected_ests: om_gui.advise( "%s '%s' %s
    %s" % ( _("Couldn't find"), "%s%s%s%s" % (courseno, att, n_txs, shortcut), _("in the patient's estimate"), _("This Shouldn't Happen!")), 2) for est in affected_ests: LOGGER.debug("removing reference to %s in estimate %s" % ( tx_hash, est)) est.tx_hashes.remove(tx_hash) if est.tx_hashes == []: om_gui.pt.estimates.remove(est) pt.treatment_course.__dict__[p_att] = new_val if re.match("[ul][lr[1-8]", att): plan = pt.treatment_course.__dict__["%spl" % att] cmp_ = pt.treatment_course.__dict__["%scmp" % att] charts_gui.updateChartsAfterTreatment(om_gui, att, plan, cmp_) om_gui.ui.toothPropsWidget.lineEdit.deleteProp(shortcut) om_gui.updateDetails() def remove_estimate_item(om_gui, est_item): ''' the estimate_item has been deleted... remove from the plan or completed also? ''' LOGGER.debug("Deleting estimate item %s" % est_item) pt = om_gui.pt found = False for i, tx_hash in enumerate(est_item.tx_hashes): LOGGER.debug("est_item.tx_hash %d = %s" % (i, tx_hash)) for hash_, att, treat_code in pt.tx_hash_tups: # LOGGER.debug("comparing %s with %s"% (hash_, tx_hash)) if hash_ == tx_hash.hash: found = True LOGGER.debug( " MATCHING hash Found! removing....'%s' '%s'" % ( att, treat_code)) att = localsettings.convert_deciduous(att) if est_item.is_exam: LOGGER.debug("special case - removing exam") pt.treatment_course.examt = "" pt.treatment_course.examd = None pt.addHiddenNote("exam", treat_code, attempt_delete=True) for est in pt.ests_from_hash(tx_hash): pt.estimates.remove(est) om_gui.updateHiddenNotesLabel() elif treat_code.strip(" ") == "!FEE": LOGGER.debug("special case - removing feescale added item") if tx_hash.completed: tx_hash_reverse(om_gui, tx_hash) for est in pt.ests_from_hash(tx_hash): pt.estimates.remove(est) else: LOGGER.debug("not a special case") remove_treatments_from_plan_and_est( om_gui, ((att, treat_code.strip(" ")),), tx_hash.completed) if not found: LOGGER.debug("NO MATCHING hash FOUND!") om_gui.advise("%s - %s" % ( _("couldn't pass on delete message for"), est_item.description), 1) def recalculate_estimate(om_gui): ''' look up all the itemcodes in the patients feetable (which could have changed), and apply new fees ''' pt = om_gui.pt dentid = pt.course_dentist LOGGER.info("USER IS RECALCULATING ESTIMATE FOR PATIENT %s" % pt.serialno) # drop all existing estimates except custom items. # and reverse fee for completed items. cust_ests = [] for estimate in pt.estimates: if estimate.is_custom: cust_ests.append(estimate) for hash_, att, shortcut in pt.tx_hash_tups: if shortcut.strip(" ") == "!FEE": for est in pt.ests_from_hash(hash_): cust_ests.append(est) pt.estimates = cust_ests duplicate_txs = [] # recalculating the estimate has to be handled differently than when # adding treatment to a plan manually. # pt.new_hash_tups is a store of all treatments that are special cases # and need to ignore the rest of the treatment plan # an example is an extra fee for the first crown in an arch. pt.new_hash_tups = [] for hash_, att, shortcut in pt.tx_hash_tups: shortcut = shortcut.strip(" ") if shortcut == "!FEE" or att == "custom": continue tx_hash = TXHash(hash_) if re.match("[ul][lr][1-8A-E]", att): n_txs = None else: duplicate_txs.append("%s%s" % (att, shortcut)) n_txs = duplicate_txs.count("%s%s" % (att, shortcut)) complex_addition_handled, shortcut = complex_shortcut_addition( om_gui, att, shortcut, n_txs, tx_hash, recalculating=True) if complex_addition_handled == FULLY_HANDLED: LOGGER.debug("complex addition handled the estimate in entirety") elif complex_addition_handled == PARTIALLY_HANDLED: LOGGER.debug("complex addition handled the estimate in part") add_treatment_to_estimate(om_gui, att, shortcut, dentid, [tx_hash]) else: LOGGER.debug("adding only as a standard shortcut") add_treatment_to_estimate(om_gui, att, shortcut, dentid, [tx_hash]) LOGGER.debug("checking for completed items") for est in pt.estimates: for tx_hash in est.tx_hashes: if tx_hash in pt.completed_tx_hashes: tx_hash.completed = True om_gui.advise(_("Estimate recalculated"), 1) pt.new_hash_tups = None return True def reverse_txs(om_gui, treatments, confirm_multiples=True): LOGGER.debug(treatments) pt = om_gui.pt courseno = pt.treatment_course.courseno if len(treatments) > 1 and confirm_multiples: txs = [] for att, treat in treatments: txs.append((att, treat, True)) dl = CompleteTreatmentDialog(txs, om_gui) if not dl.exec_(): return treatments = dl.uncompleted_treatments deleted_treatments = dl.deleted_treatments else: deleted_treatments = iter([]) for att, treatment in treatments: completed = pt.treatment_course.__dict__["%scmp" % att] treat = treatment.strip(" ") count = completed.split(" ").count(treat) LOGGER.debug( "creating tx_hash using %s %s %s", att, count, treat) hash_ = localsettings.hash_func( "%s%s%s%s" % (courseno, att, count, treat)) tx_hash = TXHash(hash_) tx_hash_reverse(om_gui, tx_hash) for att, treat, completed in deleted_treatments: remove_treatments_from_plan_and_est( om_gui, ((att, treat.strip(" ")),), completed) def complete_txs(om_gui, treatments, confirm_multiples=True): ''' complete tooth treatment #args is a list - ["ul5","MOD","RT",] args is a list - [("ul5","MOD"),("ul5", "RT"), ("perio", "SP")] ''' if localsettings.clinicianNo == 0: om_gui.advise( _("You have no clinician login. " "Treatments cannot be completed by you!"), 2) return LOGGER.debug(treatments) pt = om_gui.pt courseno = pt.treatment_course.courseno if len(treatments) > 1 and confirm_multiples: txs = [] for att, treat in treatments: txs.append((att, treat, False)) dl = CompleteTreatmentDialog(txs, om_gui) dl.hide_reverse_all_but() if not dl.exec_(): return treatments = dl.completed_treatments deleted_treatments = dl.deleted_treatments else: deleted_treatments = iter([]) for att, treatment in treatments: existingcompleted = pt.treatment_course.__dict__["%scmp" % att] newcompleted = existingcompleted + treatment treat = treatment.strip(" ") count = newcompleted.split(" ").count(treat) LOGGER.debug( "creating tx_hash using %s %s %s", att, count, treat) hash_ = localsettings.hash_func( "%s%s%s%s" % (courseno, att, count, treat)) tx_hash = TXHash(hash_) tx_hash_complete(om_gui, tx_hash) for att, treat, completed in deleted_treatments: remove_treatments_from_plan_and_est( om_gui, ((att, treat.strip(" ")),), completed) def tx_hash_complete(om_gui, tx_hash): ''' reponds to a signal when the user completes an item of treatment by checking a checkbox on the estwidget ''' if localsettings.clinicianNo == 0: om_gui.advise( _("You have no clinician login. " "Treatments cannot be completed by you!"), 2) return LOGGER.debug(tx_hash) pt = om_gui.pt found = False for hash_, att, treat_code in pt.tx_hash_tups: # print "comparing %s with %s"% (hash_, tx_hash) if hash_ == tx_hash: found = True # convert back from deciduous here att = localsettings.convert_deciduous(att) plan = pt.treatment_course.__dict__[att + "pl"].replace( treat_code, "", 1) pt.treatment_course.__dict__[att + "pl"] = plan completed = pt.treatment_course.__dict__[att + "cmp"] \ + treat_code pt.treatment_course.__dict__[att + "cmp"] = completed if re.match("[ul][lr][1-8]", att): charts_gui.updateChartsAfterTreatment( om_gui, att, plan, completed) toothName = pt.chartgrid.get(att, "").upper() pt.addHiddenNote( "chart_treatment", "%s %s" % (toothName, treat_code)) elif att in ("xray", "perio"): pt.addHiddenNote("%s_treatment" % att, treat_code) else: pt.addHiddenNote("treatment", treat_code) break if not found: msg = "Error moving %s from plan to completed" % tx_hash om_gui.advise("

    %s


    This shouldn't happen!" % msg, 2) return found = False for estimate in pt.estimates: for est_tx_hash in estimate.tx_hashes: if est_tx_hash == tx_hash: found = True est_tx_hash.completed = True if treat_code.strip(" ") == "!FEE": om_gui.addNewNote( "%s %s\n" % (_("Completed"), estimate.description)) if not found: om_gui.advise("

    %s '%s' %s


    %s" % ( _("This item"), tx_hash, _("was not found in the patient's estimate"), _("This shouldn't happen!")), 2) return om_gui.ui.toothPropsWidget.setTooth( om_gui.ui.toothPropsWidget.selectedTooth, om_gui.selectedChartWidget) om_gui.updateHiddenNotesLabel() om_gui.ui.estWidget.resetEstimate() om_gui.updateDetails() def tx_hash_reverse(om_gui, tx_hash): ''' reponds to a signal when the user completes an item of treatment by checking a checkbox on the estwidget ''' LOGGER.debug(tx_hash) pt = om_gui.pt found = False for hash_, att, treat_code in pt.tx_hash_tups: LOGGER.debug("comparing %s with %s", hash_, tx_hash) if hash_ == tx_hash: found = True LOGGER.debug("MATCH!") if att == "exam": pt.treatment_course.examt = "" pt.treatment_course.examd = None pt.addHiddenNote("exam", treat_code, attempt_delete=True) for estimate in pt.estimates: for est_tx_hash in estimate.tx_hashes: if est_tx_hash == tx_hash: pt.estimates.remove(estimate) break break # convert back from deciduous here att = localsettings.convert_deciduous(att) old_completed = pt.treatment_course.__dict__[att + "cmp"] new_completed = old_completed.replace(treat_code, "", 1) pt.treatment_course.__dict__[att + "cmp"] = new_completed old_plan = pt.treatment_course.__dict__[att + "pl"] # doubly cautious here to ensure single space separation new_plan = "%s %s " % (old_plan.strip(" "), treat_code.strip(" ")) pt.treatment_course.__dict__[att + "pl"] = new_plan if re.findall("[ul][lr][1-8]", att): charts_gui.updateChartsAfterTreatment( om_gui, att, new_plan, new_completed) toothName = pt.chartgrid.get(att, "").upper() pt.addHiddenNote( "chart_treatment", "%s %s" % (toothName, treat_code), attempt_delete=True) elif att in ("xray", "perio"): pt.addHiddenNote("%s_treatment" % att, treat_code, attempt_delete=True) else: pt.addHiddenNote("treatment", treat_code, attempt_delete=True) break if not found: msg = "Error moving %s from completed to plan" % tx_hash om_gui.advise("

    %s

    This shouldn't happen

    " % msg, 1) for estimate in pt.estimates: for est_tx_hash in estimate.tx_hashes: if est_tx_hash == tx_hash: est_tx_hash.completed = False om_gui.ui.toothPropsWidget.setTooth( om_gui.ui.toothPropsWidget.selectedTooth, om_gui.selectedChartWidget) om_gui.updateHiddenNotesLabel() om_gui.ui.estWidget.resetEstimate() om_gui.updateDetails() if __name__ == "__main__": # - test code localsettings.initiate() localsettings.loadFeeTables() localsettings.station = "reception" from openmolar.qt4gui import maingui LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) mw = maingui.OpenmolarGui() mw.getrecord(11956) # disable the functions called mw.load_newEstPage = lambda: None xrayAdd(mw) perioAdd(mw) otherAdd(mw) customAdd(mw) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/fees/treatment_list_models.py0000644000175000017500000000750012710144046026622 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import re from PyQt5 import QtCore from PyQt5 import QtWidgets class TreatmentListModel(QtCore.QAbstractListModel): ''' A simple model used to populate a combobox to select how the appointment books are managed. ''' def __init__(self, parent=None): QtCore.QAbstractListModel.__init__(self, parent) self.om_gui = parent def rowCount(self, parent=QtCore.QModelIndex()): return len(self._list) @property def _list(self): return (["please", "overwrite", "TreatmentListModel._list", "when", "subclassing!"]) def data(self, index, role): if not index.isValid(): pass elif role == QtCore.Qt.DisplayRole: att, tx = self._list[index.row()] return "%s %s" % (att.ljust(8), tx) return None def att_vals(self, index): ''' returns a tuple, treatment course attribute, value ''' att, tx = self._list[index.row()] m = re.match("(\d+)(.*)", tx) if m: values = [] for i in range(int(m.groups()[0])): values.append(m.groups()[1]) else: values = [tx] return att, values def reset(self): ''' qt5 deprecated the QAbstractItemModel.reset method ''' self.beginResetModel() self.endResetModel() class PlannedTreatmentListModel(TreatmentListModel): @property def _list(self): # if self.om_gui is None or self.om_gui.pt is None: # return [] try: return self.om_gui.pt.treatment_course.non_tooth_plan_items except AttributeError: return [] class CompletedTreatmentListModel(TreatmentListModel): @property def _list(self): # if self.om_gui is None or self.om_gui.pt is None: # return [] try: return self.om_gui.pt.treatment_course.non_tooth_cmp_items except AttributeError: return [] if __name__ == "__main__": app = QtWidgets.QApplication([]) model = TreatmentListModel() mw = QtWidgets.QMainWindow() list_view = QtWidgets.QListView() list_view.setModel(model) mw.setCentralWidget(list_view) mw.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/0000755000175000017500000000000013024000134024024 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/__init__.py0000644000175000017500000000327712710144046026162 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from openmolar.qt4gui.feescale_editor.feescale_editor import FeescaleEditor __all__ = ["FeescaleEditor"] openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py0000644000175000017500000000611012710144046031010 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module provides one class - ChoiceDialog ''' from functools import partial from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog class ChoiceDialog(BaseDialog): ''' A trivial dialog which gets the user to choose an item from a list ''' def __init__(self, message, list_, parent=None): BaseDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle(_("Feescale Choice Dialog")) self.chosen_index = None label = QtWidgets.QLabel(message) scroll_area = QtWidgets.QScrollArea() frame = QtWidgets.QFrame() scroll_area.setWidget(frame) scroll_area.setWidgetResizable(True) self.but_layout = QtWidgets.QVBoxLayout(frame) self.insertWidget(label) self.insertWidget(scroll_area) self.apply_but.hide() self.add_buttons(list_) def sizeHint(self): return QtCore.QSize(300, 300) def add_buttons(self, choices): for i, choice in enumerate(choices): but = QtWidgets.QPushButton(choice) but.clicked.connect(partial(self.but_clicked, i)) self.but_layout.addWidget(but) self.but_layout.addStretch(100) def but_clicked(self, index): self.chosen_index = index self.accept() if __name__ == "__main__": app = QtWidgets.QApplication([]) dl = ChoiceDialog("Make a choice", ["A", "B", "C"]) if dl.exec_(): print(dl.chosen_index) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py0000644000175000017500000000725712710144046033307 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module provides two classes CompareWidget and CompareItemsDockWidget These are used to compare two feescales ''' import logging import re import sys from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.qt4gui.feescale_editor.feescale_xml_editor import XMLEditor LOGGER = logging.getLogger("openmolar") class CompareWidget(QtWidgets.QWidget): def __init__(self, parser, parent=None): QtWidgets.QWidget.__init__(self, parent) self.parser = parser label = QtWidgets.QLabel(parser.detailed_label_text) self.xml_editor = XMLEditor() layout = QtWidgets.QVBoxLayout(self) layout.addWidget(label) layout.addWidget(self.xml_editor) def set_item_id(self, item_id): node = self.parser.itemnode_from_id(item_id, ignore_prefix=True) if node: self.xml_editor.setText(re.sub("\t", "", node.toxml())) else: self.xml_editor.setText(_("No Match Found")) class CompareItemsDockWidget(QtWidgets.QDockWidget): def __init__(self, parsers, parent=None): QtWidgets.QDockWidget.__init__(self, parent) self.setWindowTitle(_("Compare Items")) splitter = QtWidgets.QSplitter(self) self.compare_widgets = [] for parser in parsers: compare_widget = CompareWidget(parser, self) splitter.addWidget(compare_widget) self.compare_widgets.append(compare_widget) self.setWidget(splitter) def set_item_id(self, item_id): for widget in self.compare_widgets: widget.set_item_id(item_id) def sizeHint(self): return QtCore.QSize(800, 300) if __name__ == "__main__": class _MockNode(object): def toxml(self): return "Mock Node" class _MockParser(object): detailed_label_text = "Mock" def itemnode_from_id(self, id, ignore_prefix): return _MockNode() mp1, mp2 = _MockParser(), _MockParser() LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication(sys.argv) cidw = CompareItemsDockWidget([mp1, mp2]) cidw.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py0000644000175000017500000002476612710144046030507 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module provides one class DiffDialog ''' import difflib import logging import re import sys from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from .feescale_xml_editor import XMLEditor LOGGER = logging.getLogger("openmolar") class DiffDialog(BaseDialog): def __init__(self, text1, text2, parent=None): BaseDialog.__init__(self, parent, remove_stretch=True) self.text1 = text1 self.text2 = text2 self.window_title = _("Diff Dialog") self.setWindowTitle(self.window_title) self.main_toolbar = QtWidgets.QToolBar() self.main_toolbar.setObjectName("Main Toolbar") self.main_toolbar.toggleViewAction().setText(_("Toolbar")) self.xml_editor1 = XMLEditor() self.xml_editor1.editor_settings() self.xml_editor1.setFolding(self.xml_editor1.BoxedFoldStyle) self.xml_editor1.setMarkerBackgroundColor( QtGui.QColor("#44ee44"), self.xml_editor1.MARKER_COLUMN) self.xml_editor1.setIndicatorForegroundColor( QtGui.QColor("#55ff55"), self.xml_editor1.highlight_index) self.xml_editor2 = XMLEditor() self.xml_editor2.editor_settings() self.xml_editor2.setFolding(self.xml_editor2.BoxedFoldStyle) self.xml_editor2.setIndicatorForegroundColor( QtGui.QColor("#ff5555"), self.xml_editor1.highlight_index) self.xml_editor1.verticalScrollBar().hide() self.xml_editor2.verticalScrollBar().valueChanged.connect( self.xml_editor1.verticalScrollBar().setValue) action_show_min_diffs = QtWidgets.QAction(_("Show Standard Diffs"), self) action_show_full_diffs = QtWidgets.QAction(_("Show Full Diffs"), self) icon = QtGui.QIcon.fromTheme("application-exit") action_quit = QtWidgets.QAction(icon, _("Quit"), self) self.main_toolbar.addAction(action_show_min_diffs) self.main_toolbar.addAction(action_show_full_diffs) self.main_toolbar.addAction(action_quit) splitter = QtWidgets.QSplitter() splitter.addWidget(self.xml_editor1) splitter.addWidget(self.xml_editor2) # splitter.setSizes([150, 650]) self.insertWidget(self.main_toolbar) self.insertWidget(splitter) action_show_min_diffs.triggered.connect(self.load_diffs) action_show_full_diffs.triggered.connect(self.load_full_diffs) action_quit.triggered.connect(self.reject) self.load_diffs() def sizeHint(self): return QtCore.QSize(800, 500) def text_editors_to_unidiff_mode(self, unidiff_mode=True): for editor in (self.xml_editor1, self.xml_editor2): if unidiff_mode: editor.setMarginLineNumbers(0, False) editor.setMarginType(0, editor.TextMargin) else: editor.setMarginLineNumbers(0, True) def load_diffs(self): self.text_editors_to_unidiff_mode() text1, text2 = "", "" arrows1, highlights1 = [], [] arrows2, highlights2 = [], [] line_no1, line_no2 = 0, 0 PADDING = 2 diffs = difflib.unified_diff( self.text1.splitlines(True), self.text2.splitlines(True), n=PADDING ) for line_ in diffs: if line_.strip() in ("---", "+++"): continue if "@@" in line_: LOGGER.debug(line_.strip()) m = re.match(r"@@ \-(\d+),?(\d+)? \+(\d+),?(\d+)? @@", line_) if m: LOGGER.debug("match! %s", str(m.groups())) if (line_no1 + line_no2) != 0: text1 += "\n\n" text2 += "\n\n" line_no1 += 2 line_no2 += 2 # create tuple start, end, mapping start_ = int(m.groups()[0]) try: end_ = start_ + int(m.groups()[1]) except TypeError: end_ = start_ highlights1.append((start_, end_, line_no1)) start_ = int(m.groups()[2]) try: end_ = start_ + int(m.groups()[3]) except TypeError: end_ = start_ highlights2.append((start_, end_, line_no2)) continue chr1 = line_[0] if chr1 == "+": arrows2.append(line_no2) formatted_line = (line_)[1:] line_no2 += 1 elif chr1 == "-": arrows1.append(line_no1) formatted_line = (line_)[1:] line_no1 += 1 else: formatted_line = line_ line_no1 += 1 line_no2 += 1 if not chr1 == "-": text2 += formatted_line if not chr1 == "+": text1 += formatted_line pad_lines = len(text1.splitlines()) - len(text2.splitlines()) pad1 = pad_lines if pad_lines > 0 else 0 pad2 = -pad_lines if pad_lines < 0 else 0 self.xml_editor1.setText(text1 + ("\n" * pad1)) self.xml_editor2.setText(text2 + ("\n" * pad2)) for lineno_start, lineno_end, offset in highlights1: for i, line_no in enumerate(range(lineno_start, lineno_end)): self.xml_editor1.setMarginText(offset + i, "%d" % (line_no), 0) for lineno in arrows1: self.xml_editor1.highlight_line(lineno) for lineno_start, lineno_end, offset in highlights2: for i, line_no in enumerate(range(lineno_start, lineno_end)): self.xml_editor2.setMarginText(offset + i, "%d" % (line_no), 0) for lineno in arrows2: self.xml_editor2.highlight_line(lineno) def load_full_diffs(self): self.text_editors_to_unidiff_mode(False) arrows1, highlights1 = [], [] arrows2, highlights2 = [], [] offset1, offset2 = -1, -1 PADDING = 4 lines1 = self.text1.splitlines(True) lines2 = self.text2.splitlines(True) diffs = difflib.unified_diff(lines1, lines2, n=PADDING) for line_ in diffs: if line_.strip() in ("---", "+++"): continue m = re.match(r"@@ \-(\d+),?(\d+)? \+(\d+),?(\d+)? @@", line_) if m: # create tuple start, end text1_start = int(m.groups()[0]) try: text1_end = text1_start + int(m.groups()[1]) except TypeError: text1_end = text1_start highlights1.append((text1_start, text1_end)) text2_start = int(m.groups()[2]) try: text2_end = text2_start + int(m.groups()[3]) except TypeError: text2_end = text2_start highlights2.append((text2_start, text2_end)) offset1, offset2 = -1, -1 continue chr1 = line_[0] if chr1 == "+": arrows2.append(text2_start + offset2) offset2 += 1 elif chr1 == "-": arrows1.append(text1_start + offset1) offset1 += 1 else: offset1 += 1 offset2 += 1 pad_lines = len(lines2) - len(lines1) pad1 = pad_lines if pad_lines > 0 else 0 pad2 = -pad_lines if pad_lines < 0 else 0 self.xml_editor1.setText(self.text1 + ("\n" * pad1)) self.xml_editor2.setText(self.text2 + ("\n" * pad2)) for lineno_start, lineno_end in highlights1: for line_no in range(lineno_start, lineno_end): self.xml_editor1.setMarginText(line_no, "%d" % (line_no), 0) for lineno in arrows1: self.xml_editor1.highlight_line(lineno) for lineno_start, lineno_end in highlights2: for line_no in range(lineno_start, lineno_end): self.xml_editor2.setMarginText(line_no, "%d" % (line_no), 0) for lineno in arrows2: self.xml_editor2.highlight_line(lineno) def files_are_identical(self): if self.xml_editor1.text_object.text == \ self.xml_editor2.text_object.text: QtWidgets.QMessageBox.information(self, _("Information"), _("Files are identical")) return True def exec_(self): if self.files_are_identical(): return False return BaseDialog.exec_(self) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication(sys.argv) test_node = "\n hello\n\n" orig = test_node * 10 new = test_node * 4 new += "\n world\n\n" new += test_node * 2 new += "\n \n hello\n \n\n" new += test_node * 2 dl = DiffDialog(orig, new) dl.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_editor.py0000755000175000017500000010314012725763327027550 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from .feescale_parser import FeescaleParser from .feescale_list_model import ItemsListModel, ComplexShortcutsListModel from .feescale_xml_editor import XMLEditor from .feescale_compare_items_dockwidget import CompareItemsDockWidget from .feescale_input_dialogs import (PercentageInputDialog, RoundupFeesDialog, ChargePercentageInputDialog) from .feescale_diff_dialog import DiffDialog from .feescale_choice_dialog import ChoiceDialog from .new_feescale_dialog import NewFeescaleDialog from openmolar.dbtools.feescales import feescale_handler, FEESCALE_DIR from collections import OrderedDict from functools import partial import logging import re import os import sys from xml.dom import minidom from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets LOGGER = logging.getLogger("openmolar") class ControlPanel(QtWidgets.QTabWidget): item_selected = QtCore.pyqtSignal(object) shortcut_selected = QtCore.pyqtSignal(object) compare_item_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QTabWidget.__init__(self, parent) self.items_list_view = QtWidgets.QListView() self.complex_shortcuts_list_view = QtWidgets.QListView() self.addTab(self.items_list_view, "Items") self.addTab(self.complex_shortcuts_list_view, "Complex Shortcuts") self.items_list_view.doubleClicked.connect(self.show_item_context_menu) def set_parser(self, parser): list_model = ItemsListModel(parser) self.items_list_view.setModel(list_model) self.items_list_view.selectionModel().currentRowChanged.connect( self._item_selected) list_model = ComplexShortcutsListModel(parser) self.complex_shortcuts_list_view.setModel(list_model) self.complex_shortcuts_list_view.selectionModel( ).currentRowChanged.connect(self._shortcut_selected) def _item_selected(self, new_index, old_index): self.item_selected.emit(new_index) def _shortcut_selected(self, new_index, old_index): self.shortcut_selected.emit(new_index) def show_item_context_menu(self, index): id = self.items_list_view.model().id_from_index(index) qmenu = QtWidgets.QMenu(self) compare_action = QtWidgets.QAction( "%s %s %s" % (_("Compare"), id, _("with similar ids in other feescales") ), self) cancel_action = QtWidgets.QAction(_("Cancel"), self) # not connected to anything.. f clicked menu will simply die! compare_action.triggered.connect( partial(self.compare_item_signal.emit, id)) qmenu.addAction(compare_action) qmenu.addSeparator() qmenu.addAction(cancel_action) qmenu.setDefaultAction(compare_action) point = self.items_list_view.mapFromGlobal(QtGui.QCursor.pos()) point = QtGui.QCursor.pos() qmenu.exec_(point) class FeescaleEditor(QtWidgets.QMainWindow): _checking_files = False _known_deleted_parsers = [] _compare_items_dockwidget = None search_text = "" closed_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QMainWindow.__init__(self, parent) self.window_title = _("Feescale Editor") self.setWindowTitle(self.window_title) self.is_loading = True statusbar = QtWidgets.QStatusBar() self.setStatusBar(statusbar) self.control_panel = ControlPanel() self.control_panel.item_selected.connect(self.find_item) self.control_panel.compare_item_signal.connect(self.compare_item) self.control_panel.shortcut_selected.connect(self.find_shortcut) self.list_view = self.control_panel.items_list_view #: a pointer to the label in the statusbar self.cursor_pos_label = QtWidgets.QLabel("Line 0, Column 0") statusbar.addPermanentWidget(self.cursor_pos_label) self.main_toolbar = QtWidgets.QToolBar() self.main_toolbar.setObjectName("Main Toolbar") self.main_toolbar.toggleViewAction().setText(_("Toolbar")) self.prefs_toolbar = QtWidgets.QToolBar() self.prefs_toolbar.setObjectName("Prefs Toolbar") self.prefs_toolbar.toggleViewAction().setText(_("Preferences Toolbar")) self.diffs_toolbar = QtWidgets.QToolBar() self.diffs_toolbar.setObjectName("Diffs Toolbar") self.diffs_toolbar.toggleViewAction().setText(_("Diffs Toolbar")) self.addToolBar(QtCore.Qt.TopToolBarArea, self.main_toolbar) self.addToolBar(QtCore.Qt.TopToolBarArea, self.prefs_toolbar) self.addToolBar(QtCore.Qt.TopToolBarArea, self.diffs_toolbar) menu_file = QtWidgets.QMenu(_("&File"), self) menu_edit = QtWidgets.QMenu(_("&Edit"), self) menu_database = QtWidgets.QMenu(_("&Database"), self) menu_tools = QtWidgets.QMenu(_("&Tools"), self) menu_preferences = QtWidgets.QMenu(_("&Preferences"), self) menu_diffs = QtWidgets.QMenu(_("Diffs"), self) self.menuBar().addMenu(menu_file) self.menuBar().addMenu(menu_edit) self.menuBar().addMenu(menu_database) self.menuBar().addMenu(menu_tools) self.menuBar().addMenu(menu_diffs) self.menuBar().addMenu(menu_preferences) icon = QtGui.QIcon(":database.png") action_pull = QtWidgets.QAction(icon, _("Pull"), self) action_pull.setToolTip( _("generate local files containing the database feescales")) icon = QtGui.QIcon(":database.png") action_commit = QtWidgets.QAction(icon, _("Commit"), self) action_commit.setToolTip(_("Commit changes to database")) icon = QtGui.QIcon.fromTheme("document-new") action_new = QtWidgets.QAction(icon, _("New Feescale"), self) action_new.setToolTip(_("Create a Feescale")) icon = QtGui.QIcon.fromTheme("document-save") action_save = QtWidgets.QAction(icon, _("Save File"), self) action_save.setShortcut("Ctrl+S") action_save.setToolTip(_("Save Current File")) icon = QtGui.QIcon.fromTheme("document-save-as") action_save_as = QtWidgets.QAction(icon, _("Save File As"), self) action_save_as.setToolTip(_("Save Current File to a new location")) icon = QtGui.QIcon.fromTheme("document-save") action_save_all = QtWidgets.QAction(icon, _("Save All Files"), self) action_save_all.setToolTip(_("Save All Local Files")) icon = QtGui.QIcon.fromTheme("view-refresh") action_refresh = QtWidgets.QAction(icon, _("Refresh"), self) action_refresh.setToolTip(_("refresh local files")) icon = QtGui.QIcon.fromTheme("document-find") action_find = QtWidgets.QAction(icon, _("Find"), self) action_find.setShortcut("Ctrl+F") action_find.setToolTip( _("Search current file for first forward match of entered text")) action_find_again = QtWidgets.QAction(icon, _("Find Again"), self) action_find_again.setShortcut("Ctrl+G") action_find_again.setToolTip(_("Search current file again for text")) action_increment = QtWidgets.QAction(_("Increase/decrease fees"), self) action_increment.setToolTip(_("Apply a percentage")) action_roundup = QtWidgets.QAction(_("Round fees up/down"), self) action_roundup.setToolTip( _("Round fees up or down to a specified accuracy")) action_charges = QtWidgets.QAction( _("Relate charges to fees by percentage"), self) action_zero_charges = QtWidgets.QAction( _("Zero Patient Contributions"), self) action_zero_charges.setToolTip( _("Set all patient charges to Zero in the current feescale")) icon = QtGui.QIcon.fromTheme("application-exit") action_quit = QtWidgets.QAction(icon, _("Quit"), self) action_diff = QtWidgets.QAction(_("Show Database Diff"), self) action_diff.setToolTip( _("Show the diff between the current file and the " "corresponding file stored in the database")) action_compare = QtWidgets.QAction(_("Compare 2 Feescales"), self) action_compare.setToolTip( _("Show the diff between the current file and a selected other")) self.main_toolbar.addAction(action_new) self.main_toolbar.addAction(action_save) self.main_toolbar.addAction(action_save_as) self.main_toolbar.addAction(action_save_all) self.main_toolbar.addAction(action_refresh) self.main_toolbar.addAction(action_quit) self.main_toolbar.addSeparator() self.main_toolbar.addAction(action_pull) self.main_toolbar.addAction(action_commit) menu_file.addAction(action_new) menu_file.addSeparator() menu_file.addAction(action_save) menu_file.addAction(action_save_as) menu_file.addAction(action_save_all) menu_file.addSeparator() menu_file.addAction(action_refresh) menu_file.addSeparator() menu_file.addAction(action_quit) menu_edit.addAction(action_find) menu_edit.addAction(action_find_again) menu_database.addAction(action_pull) menu_database.addAction(action_commit) menu_tools.addAction(action_increment) menu_tools.addAction(action_roundup) menu_tools.addAction(action_charges) menu_tools.addAction(action_zero_charges) menu_diffs.addAction(action_diff) menu_diffs.addAction(action_compare) self.tab_widget = QtWidgets.QTabWidget() self.feescale_parsers = OrderedDict() self.text_editors = [] self.feescale_handler = feescale_handler self.feescale_handler.check_dir() self.action_refactor = QtWidgets.QAction(_("XML tidy"), self) self.action_refactor.triggered.connect(self.refactor) self.action_check_parseable = QtWidgets.QAction( _("Check Well Formed"), self) self.action_check_parseable.triggered.connect(self.check_parseable) self.action_check_validity = QtWidgets.QAction(_("Check Validity"), self) self.action_check_validity.triggered.connect(self.check_validity) menu_preferences.addAction(self.action_refactor) menu_preferences.addAction(self.action_check_parseable) menu_preferences.addAction(self.action_check_validity) self.prefs_toolbar.addAction(self.action_refactor) self.prefs_toolbar.addAction(self.action_check_parseable) self.prefs_toolbar.addAction(self.action_check_validity) self.diffs_toolbar.addAction(action_diff) self.diffs_toolbar.addAction(action_compare) splitter = QtWidgets.QSplitter() splitter.addWidget(self.control_panel) splitter.addWidget(self.tab_widget) splitter.setSizes([150, 650]) self.setCentralWidget(splitter) action_new.triggered.connect(self.new_feescale) action_save.triggered.connect(self.save) action_save_as.triggered.connect(self.save_as) action_save_all.triggered.connect(self.save_files) action_refresh.triggered.connect(self.refresh_files) action_find.triggered.connect(self.find_text) action_find_again.triggered.connect(self.find_again) action_pull.triggered.connect(self.get_files_from_database) action_commit.triggered.connect(self.apply_changes) action_increment.triggered.connect(self.increase_fees) action_roundup.triggered.connect(self.roundup_fees) action_charges.triggered.connect(self.relate_charges_to_gross_fees) action_zero_charges.triggered.connect(self.zero_charges) action_diff.triggered.connect(self.show_database_diff) action_compare.triggered.connect(self.compare_files) self.tab_widget.currentChanged.connect(self.view_feescale) QtCore.QTimer.singleShot(1000, self.start_) QtWidgets.QApplication.instance().focusChanged.connect( self._focus_changed) action_quit.triggered.connect( QtWidgets.QApplication.instance().closeAllWindows) def advise(self, message, importance=0): ''' notify user ''' if importance is 0: LOGGER.debug(message) m = QtWidgets.QMessageBox(self) m.setText(message) m.setIcon(m.Information) m.setStandardButtons(QtWidgets.QMessageBox.NoButton) m.setWindowTitle(_("advisory")) m.setModal(False) QtCore.QTimer.singleShot(3 * 1000, m.accept) m.show() elif importance == 1: LOGGER.info(message) QtWidgets.QMessageBox.information(self, _("Advisory"), message) else: LOGGER.warning(message) QtWidgets.QMessageBox.warning(self, _("Error"), message) def sizeHint(self): return QtCore.QSize(800, 500) def closeEvent(self, event=None): ''' called when application closes. ''' if self.is_dirty: message = "%s
    %s" % ( _("WARNING - you have unsaved changes!"), _("Are you sure you want to quit?")) if QtWidgets.QMessageBox.question( self, _("Confirm"), message, QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Cancel) == QtWidgets.QMessageBox.Cancel: event.ignore() return self.closed_signal.emit() def _focus_changed(self, o1d_widget, new_widget): if o1d_widget is None: try: self._check_for_newer_local_files() except AttributeError: # in case 'self' is now None ! pass def _check_for_newer_local_files(self): if self._checking_files: return self._checking_files = True for parser in list(self.feescale_parsers.values()): if parser in self._known_deleted_parsers: pass elif parser.is_deleted: message = "%s
    %s
    %s" % ( parser.filepath, _("has been deleted!"), _("Save now?")) if QtWidgets.QMessageBox.question( self, _("Question"), message, QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: self.feescale_handler.save_xml(parser.ix, parser.text) self.advise(_("File Saved"), 1) else: self._known_deleted_parsers.append(parser) elif parser.is_externally_modified: message = "%s
    %s
    %s" % ( parser.filepath, _("has been modified!"), _("Do you want to reload now and lose current changes?") if parser.is_dirty else _("Do you want to reload now?")) if QtWidgets.QMessageBox.question( self, _("Question"), message, QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: LOGGER.debug("reloading externally modified %s", parser.filepath) parser.refresh() self.view_feescale(self.tab_widget.currentIndex()) parser.reset_orig_modified() self._checking_files = False def start_(self): self.get_files_from_database() self.load_feescales() self.view_feescale(0) def load_feescales(self): self.is_loading = True # if reloading.. disconnect signals. for editor in self.text_editors: editor.editing_finished.disconnect(self.te_editing_finished) editor.cursorPositionChanged.disconnect( self.cursor_position_changed) editor.deleteLater() self.text_editors = [] self.feescale_parsers = OrderedDict() for ix, filepath in self.feescale_handler.local_files: self.load_feescale_from_filepath(ix, filepath) self.is_loading = False self.advise("%d local files created/loaded for editing" % self.feescale_handler.count, 1) def load_feescale_from_filepath(self, ix, filepath): fp = FeescaleParser(filepath, ix) try: fp.parse_file() except: message = "%s '%s'" % (_("unable to parse file"), filepath) self.advise(message, 2) LOGGER.exception(message) editor = XMLEditor() editor.editor_settings() editor.textChanged.connect(self.text_changed) editor.editing_finished.connect(self.te_editing_finished) editor.cursorPositionChanged.connect(self.cursor_position_changed) title = fp.label_text self.feescale_parsers[title] = fp self.text_editors.append(editor) self.tab_widget.addTab(editor, title) tooltip = "%s\n%s" % (fp.tablename, fp.description) LOGGER.debug("setting tab tool tip %s", tooltip.replace("\n", " ")) self.tab_widget.setTabToolTip(ix, tooltip) def view_feescale(self, i=0): while self.is_loading: QtCore.QTimer.singleShot(1000, self.view_feescale) return if len(self.text_editors) > 1: text = self.current_parser.text self.text_editors[i].setText(text) self.setWindowTitle( "%s - %s" % (self.window_title, self.current_parser.description)) self.update_index() else: QtWidgets.QMessageBox.information( self, _("Information"), _("You appear to have no feescales installed in your database") ) def get_files_from_database(self): ''' gets files from the database at startup ''' unwritten, modified = \ self.feescale_handler.non_existant_and_modified_local_files() for xml_file in unwritten: f = open(xml_file.filepath, "w") f.write(xml_file.data) f.close() self._checking_files = True for xml_file in modified: message = "%s '%s' %s
    %s" % ( _("Local Feescale"), xml_file.filepath, _("differs from the database version"), _("Do you wish to overwrite it with the stored data?")) mb = QtWidgets.QMessageBox(None) mb.setWindowTitle(_("Confirm")) mb.setText(message) mb.setIcon(mb.Question) mb.addButton(_("Show Diff"), mb.DestructiveRole) but = mb.addButton(mb.Cancel) but.setText(_("Keep Local File Unchanged")) but = mb.addButton(mb.Ok) but.setText(_("Overwrite Local File")) result = mb.exec_() if result not in (mb.Ok, mb.Cancel): # show diff f = open(xml_file.filepath, "r") local_data = f.read() f.close() dl = DiffDialog(xml_file.data, local_data) dl.apply_but.setText(_("Overwrite Local File")) dl.cancel_but.setText(_("Keep Local File Unchanged")) dl.enableApply() result = mb.Ok if dl.exec_() else mb.Cancel if result == mb.Ok: LOGGER.debug("saving file") f = open(xml_file.filepath, "w") f.write(xml_file.data) f.close() else: LOGGER.debug("not saving file") self._checking_files = False self._check_for_newer_local_files() def update_index(self): self.control_panel.set_parser(self.current_parser) @property def text_edit(self): return self.text_editors[self.tab_widget.currentIndex()] @property def current_parser(self): i = self.tab_widget.currentIndex() return list(self.feescale_parsers.values())[i] def refactor(self): if not self.check_parseable(show_message=False): return xml = str(self.text_edit.text()) xml = re.sub(">[\s]*<", "><", xml) dom = minidom.parseString(xml) # don't use setText here that updates orig_text and is_dirty won't work self.text_edit.update_text(dom.toprettyxml()) def check_parseable(self, action=None, show_message=True): xml = self.text_edit.text() try: minidom.parseString(xml) if show_message: self.advise(_("feescale is well formed"), 1) return True except Exception as exc: self.advise("%s
    %s" % ( _("feescale is not well formed"), exc.message), 2) return False def check_validity(self): xml = self.text_edit.text() result, message = self.current_parser.check_validity(xml) if result: self.advise(_("feescale is valid"), 1) else: self.advise(message, 1) def find_item(self, index): item_count = 0 for lineno, line in enumerate(self.text_edit.text().split("\n")): if item_count == index.row() + 1: self.text_edit.setFocus(True) self.text_edit.setFirstVisibleLine(lineno - 2) self.text_edit.setCursorPosition(lineno - 1, 0) self.text_edit.ensureCursorVisible() break if "%s
    %s" % ( _("Warning - you have unsaved changes, " "if you refresh now, these will be lost"), _("Refresh anyway?")), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel) == QtWidgets.QMessageBox.Cancel): return self.tab_widget.clear() self.load_feescales() def apply_changes(self): if self.is_dirty: self.advise( _("Please save local files before pushing to database"), 1) return if QtWidgets.QMessageBox.question( self, _("confirm"), _("update all existing feescales with data from " "the local files?"), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel) == \ QtWidgets.QMessageBox.Cancel: return message, insert_ids = self.feescale_handler.update_db_all() LOGGER.info("message") self.advise("
    %s
    " % message, 1) mappings = {} for ins_id in insert_ids: if QtWidgets.QMessageBox.question( self, _("confirm"), "%s %s?" % ( _("Insert new Feescale"), self.feescale_handler.index_to_local_filepath(ins_id)), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel) == \ QtWidgets.QMessageBox.Ok: mappings[ins_id] = self.feescale_handler.insert_db(ins_id) move_required = False for file_ix, db_ix in mappings.items(): if file_ix != db_ix: move_required = True self.advise( _("your local files will now be moved to " "comply with the database indexes they have been given"), 1) break if not move_required: return # self._checking_files = True for file_ix in list(mappings.keys()): self.feescale_handler.temp_move(file_ix) for file_ix, db_ix in mappings.items(): self.feescale_handler.final_move(file_ix, db_ix) self.refresh_files() def cursor_position_changed(self, row, col): self.cursor_pos_label.setText("Line %d, Column %d" % (row + 1, col)) def text_changed(self): new_text = self.text_edit.text() # if self.current_parser.text.count("\n") == new_text.count("\n"): # return if self.current_parser.set_edited_text(new_text): self.update_index() def te_editing_finished(self, te): i = self.text_editors.index(te) new_text = te.text() list(self.feescale_parsers.values())[i].set_edited_text(new_text) def show_database_diff(self): orig = self.feescale_handler.get_feescale_from_database( self.current_parser.ix) new = str(self.text_edit.text()) dl = DiffDialog(orig, new) dl.exec_() def compare_files(self): options = [] for i in range(self.tab_widget.count()): if i != self.tab_widget.currentIndex(): options.append(self.tab_widget.tabText(i)) if len(options) == 1: QtWidgets.QMessageBox.information( self, _("whoops"), _("you have no other files available for comparison")) return message = "%s
    %s (%s)
    %s" % ( _("Which feescale would you like to compare " "with the current feescale"), self.current_parser.ix, self.current_parser.description, _("Please make a choice")) dl = ChoiceDialog(message, options, self) if dl.exec_(): chosen = dl.chosen_index orig = str(self.text_edit.text()) new = str(self.text_editors[chosen].text()) dl = DiffDialog(orig, new) dl.exec_() @property def is_dirty(self): try: for parser in list(self.feescale_parsers.values()): if parser.is_dirty: LOGGER.debug("%s is dirty" % parser.filepath) return True return False except: LOGGER.exception("property_exception") if __name__ == "__main__": from openmolar.qt4gui import resources_rc LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication(sys.argv) mw = FeescaleEditor() mw.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py0000644000175000017500000001550112710144046031104 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' modules provides 3 classes PercentageInputDialog, RoundupFeesDialog and ChargePercentageInputDialog ''' import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog LOGGER = logging.getLogger("openmolar") __all__ = [ "PercentageInputDialog", "RoundupFeesDialog", "ChargePercentageInputDialog" ] class _InputDialog(BaseDialog): def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.setWindowTitle(_("Input Required")) self.label = QtWidgets.QLabel() self.spinbox = QtWidgets.QDoubleSpinBox() self.spinbox.setMinimum(-100) self.spinbox.setMaximum(100) self.spinbox.setDecimals(2) self.gross_radio_button = QtWidgets.QRadioButton(_("apply to gross fees")) self.gross_radio_button.setChecked(True) self.charge_radio_button = QtWidgets.QRadioButton(_("apply to charges")) self.insertWidget(self.label) self.insertWidget(self.spinbox) self.insertWidget(self.gross_radio_button) self.insertWidget(self.charge_radio_button) self.spinbox.valueChanged.connect(self.check_enable) self.spinbox.setFocus(True) def sizeHint(self): return QtCore.QSize(300, 200) def check_enable(self, value): self.enableApply(value != 0) @property def value(self): return self.spinbox.value() @property def alter_gross(self): return not self.charge_radio_button.isChecked() class PercentageInputDialog(_InputDialog): def __init__(self, parent=None): _InputDialog.__init__(self, parent) self.label.setText(_("Please enter a percentage")) self.spinbox.setSuffix("%") self.spinbox.setMaximum(1000) @property def percentage(self): return self.value @property def message(self): if self.alter_gross: message = _("gross fees have been increased by") else: message = _("charges have been increased by") return "%s %.02f%%" % (message, self.percentage) class RoundupFeesDialog(_InputDialog): ROUND_UP = 0 ROUND_DOWN = 1 ROUND_NEAREST = 2 def __init__(self, parent=None): _InputDialog.__init__(self, parent) self.label.setText(_("Please enter the precision you require")) self.spinbox.setPrefix(localsettings.formatMoney(0)[0]) # self.spinbox.setValue(0.10) self.round_down_radio_button = QtWidgets.QRadioButton(_("round down")) self.round_up_radio_button = QtWidgets.QRadioButton(_("round up")) self.round_to_nearest_radio_button = QtWidgets.QRadioButton( _("round up/down to nearest value")) self.round_to_nearest_radio_button.setChecked(True) frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(frame) layout.addWidget(self.round_up_radio_button) layout.addWidget(self.round_down_radio_button) layout.addWidget(self.round_to_nearest_radio_button) self.insertWidget(frame) @property def preference(self): if self.round_up_radio_button.isChecked(): return self.ROUND_UP if self.round_up_radio_button.isChecked(): return self.ROUND_DOWN return self.ROUND_NEAREST @property def round_up(self): return self.preference == self.ROUND_UP @property def round_down(self): return self.preference == self.ROUND_DOWN @property def round_value(self): return int(100 * self.value) @property def message(self): if self.preference == self.ROUND_UP: message1 = _("rounded up to the nearest") elif self.preference == self.ROUND_DOWN: message1 = _("rounded down to the nearest") else: message1 = _("rounded to the nearest") if self.alter_gross: message2 = _("gross fees have been") else: message2 = _("charges have been") return "%s %s %.02f" % (message2, message1, self.value) class ChargePercentageInputDialog(_InputDialog): def __init__(self, parent=None): _InputDialog.__init__(self, parent) self.label.setText(_("Please enter a percentage")) self.spinbox.setSuffix("%") self.charge_radio_button.hide() self.gross_radio_button.hide() self.leave_zero_charges_checkBox = QtWidgets.QCheckBox( _("Leave Zero Charges as Zero")) self.leave_zero_charges_checkBox.setChecked(True) self.insertWidget(self.leave_zero_charges_checkBox) @property def percentage(self): return self.value @property def message(self): return "%s %s %s" % ( _("charges set at"), self.percentage, _("of the fees")) @property def leave_zero_charges_unchanged(self): return self.leave_zero_charges_checkBox.isChecked() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) dl = PercentageInputDialog() if dl.exec_(): print(dl.message) dl = RoundupFeesDialog() if dl.exec_(): print(dl.message) dl = ChargePercentageInputDialog() if dl.exec_(): print(dl.message) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_list_model.py0000644000175000017500000000564012710144046030401 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module provides models for the list views used by the FeescaleEditor ''' import logging from PyQt5 import QtCore LOGGER = logging.getLogger("openmolar") class ItemsListModel(QtCore.QAbstractListModel): def __init__(self, feescale_parser): QtCore.QAbstractListModel.__init__(self) self.feescale_parser = feescale_parser self._rowcount = None def rowCount(self, index): if self._rowcount is None: self._rowcount = len(self.feescale_parser.items) return self._rowcount def data(self, index, role): if role == QtCore.Qt.DisplayRole: return self.feescale_parser.code_text(index.row()) def id_from_index(self, index): LOGGER.debug(index) return self.feescale_parser.item_ids(index.row()) class ComplexShortcutsListModel(QtCore.QAbstractListModel): def __init__(self, feescale_parser): QtCore.QAbstractListModel.__init__(self) self.feescale_parser = feescale_parser self._rowcount = None def rowCount(self, index): if self._rowcount is None: self._rowcount = len(self.feescale_parser.complex_shortcuts) return self._rowcount def data(self, index, role): if role == QtCore.Qt.DisplayRole: return self.feescale_parser.complex_shortcut_text(index.row()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_parser.py0000755000175000017500000003041312710144046027541 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import os import re from xml.dom import minidom from PyQt5 import QtCore from PyQt5.QtXmlPatterns import ( QXmlSchemaValidator, QXmlSchema, QAbstractMessageHandler) from openmolar.settings.localsettings import RESOURCE_DIR LOGGER = logging.getLogger("openmolar") STYLESHEET = os.path.join( RESOURCE_DIR, "feescales", "feescale_schema.xsd") class MessageHandler(QAbstractMessageHandler): last_error = "" def __init__(self, parent=None): QAbstractMessageHandler.__init__(self, parent) def handleMessage(self, type_, descr, id_, source): position = "line %s column %d" % (source.line(), source.column()) LOGGER.debug("xml message - type = '%s'" % type_) LOGGER.debug("xml message - description = '%s'" % descr) LOGGER.debug("xml message - id = '%s'" % id_) LOGGER.debug("xml message - source = %s" % position) self.last_error = descr.replace( "", "

    %s

    " % position) def reset(self): self.last_error = "" class FeescaleParser(object): def __init__(self, filepath, ix): self._edited_text = None self._items = None self._c_scuts = None self.filepath = filepath self.ix = ix LOGGER.info("parsing feescale %s" % filepath) self.orig_modified = self.last_modified self.dom = minidom.Document() self.dom.appendChild(self.dom.createElement("feescale")) self.document_element = self.dom.childNodes[0] self.saved_xml = self.text self.message_handler = MessageHandler() def parse_file(self): try: self.dom = minidom.parse(self.filepath) self._edited_text = None self.document_element = self.dom.childNodes[0] self.saved_xml = self.text except Exception as exc: f = open(self.filepath, "r") self._edited_text = f.read() f.close() LOGGER.exception("unable to parse %s" % self.filepath) raise exc @property def label_text(self): return "%s %d" % (_("feescale"), self.ix) @property def detailed_label_text(self): return "%s %s" % (self.label_text, self.tablename) @property def is_externally_modified(self): return self.last_modified > self.orig_modified @property def is_deleted(self): return not os.path.isfile(self.filepath) @property def last_modified(self): return os.path.getmtime(self.filepath) def reset_orig_modified(self): self.orig_modified = self.last_modified def refresh(self): LOGGER.info("refreshing feescale %s" % self.filepath) self._edited_text = None self._items = None self.dom = minidom.parse(self.filepath) self.document_element = self.dom.childNodes[0] self.saved_xml = self.text self.reset_orig_modified() def check_validity(self, xml): ''' check that the dom validates ''' self.message_handler.reset() LOGGER.debug("checking phrasebook xml against %s", STYLESHEET) f = QtCore.QFile(STYLESHEET) f.open(QtCore.QIODevice.ReadOnly) schema = QXmlSchema() schema.load(f) validator = QXmlSchemaValidator(schema) validator.setMessageHandler(self.message_handler) result = validator.validate(xml.encode("utf8")) if result: LOGGER.debug("Feescale complies with stylesheet!") else: LOGGER.warning( "Feescale does not comply with stylesheet %s" % STYLESHEET) return (result, self.message_handler.last_error) def is_valid(self): LOGGER.debug("checking validity of %s" % self.dom) return self.check_validity(self.text) @property def items(self): if self._items is None: self._items = self.dom.getElementsByTagName("item") LOGGER.debug("%d items" % len(self._items)) return self._items def item_ids(self, index): ''' returns the id attibute of the item at position index in the list ''' item_node = self.items[index] return item_node.getAttribute("id") def itemnode_from_id(self, id, ignore_prefix=False): ''' returns the itemnode which contains the item with specified id, or a blank node if node exists ''' def remove_prefix(s): return s.groups()[1] if ignore_prefix: id = re.sub("([^\d]*)(\d+)$", remove_prefix, id) LOGGER.debug("looking for %s" % id) for itemnode in self.items: node_id = itemnode.getAttribute("id") if ignore_prefix: node_id = re.sub("([^\d]*)(\d+)$", remove_prefix, node_id) if node_id == id: return itemnode @property def complex_shortcuts(self): if self._c_scuts is None: self._c_scuts = self.dom.getElementsByTagName("complex_shortcut") LOGGER.debug("%d complex shortcuts" % len(self._c_scuts)) return self._c_scuts @property def feenodes(self): for item in self.items: for feenode in item.getElementsByTagName("fee"): yield feenode def roundup_charges(self, precision, up=False, down=False): self.roundup_fees(precision, up=False, down=False, att="charge") def roundup_fees(self, precision, up=False, down=False, att="gross"): LOGGER.debug((precision, up, down, att)) def round_to_value(pence, r_up=False, r_down=False): offset = pence % precision LOGGER.debug(offset) if offset == 0: return int(pence) if r_up: return int(pence + (precision - offset)) if r_down: return int(pence - offset) if offset < (precision + 1) // 2: return round_to_value(pence, r_down=True) else: return round_to_value(pence, r_up=True) for node in self.dom.getElementsByTagName(att): fee = node.firstChild.data new_fee = str(round_to_value(int(fee), up, down)) message = "%s %s changed to %s" % ( att.ljust(8, " "), fee.rjust(8, " "), new_fee.rjust(8, " ")) node.firstChild.replaceWholeText(new_fee) self._edited_text = None LOGGER.debug(message) def increase_charges(self, percentage): self.increase_fees(percentage, att="charge") def increase_fees(self, percentage, att="gross"): def increase(pence): return int((pence * mult) // 100) mult = 100 + percentage for node in self.dom.getElementsByTagName(att): fee = node.firstChild.data new_fee = str(increase(int(fee))) message = "%s %s increased to %s" % ( att.ljust(8, " "), fee.rjust(8, " "), new_fee.rjust(8, " ")) node.firstChild.replaceWholeText(new_fee) LOGGER.debug(message) self._edited_text = None LOGGER.info("%s %s fees increased by %s%%", (self.description, att, percentage)) def relate_charges_to_gross_fees(self, percentage, leave_zeros_untouched=False): def get_charge(pence): return int(pence * percentage // 100) for node in self.dom.getElementsByTagName("gross"): charge_nodes = node.parentNode.getElementsByTagName("charge") if charge_nodes == []: continue charge_node = charge_nodes[0] fee = node.firstChild.data charge = charge_node.firstChild.data if charge == "0" and leave_zeros_untouched: continue new_charge = str(get_charge(int(fee))) message = "Fee %s has a charge of %s" % ( fee.rjust(8, " "), new_charge.rjust(8, " ")) charge_node.firstChild.replaceWholeText(new_charge) LOGGER.debug(message) self._edited_text = None def zero_charges(self): for node in self.dom.getElementsByTagName("charge"): # fee = node.firstChild.data node.firstChild.replaceWholeText("0") self._edited_text = None LOGGER.info("%s patient charges zeroed" % self.description) @property def tablename(self): try: node = self.dom.getElementsByTagName("tablename")[0] return node.firstChild.data except: LOGGER.exception("unable to get tablename from Feescale Parser") return _("Unknown TableName") @property def description(self): try: description_nodes = self.dom.getElementsByTagName( "feescale_description") return description_nodes[0].childNodes[0].data except: LOGGER.exception("unable to get description from Feescale Parser") return _("Unknown Description") def code_text(self, index): node = self.items[index] id_ = node.getAttribute("id") try: name = node.getElementsByTagName( "description")[0].firstChild.data except AttributeError: name = "" return "%s - %s" % (id_, name) def complex_shortcut_text(self, index): node = self.complex_shortcuts[index] shortcut_node = node.getElementsByTagName("shortcut")[0] att = shortcut_node.getAttribute("att") shortcut = shortcut_node.firstChild.data return "%s - %s" % (att, shortcut) def set_edited_text(self, text): self._edited_text = str(text) try: dom = minidom.parseString(self._edited_text) self.dom = dom if len(self.dom.getElementsByTagName("item")) != len(self._items): self._items = None return True except Exception: # should be ExpatError, but can't find it yet! pass return False @property def text(self): ''' the full text of feescale ''' if self._edited_text is not None: return self._edited_text return self.dom.toxml() @property def is_dirty(self): return self.text != self.saved_xml def _test(): LOGGER.debug("running _test") example_path = os.path.join( RESOURCE_DIR, "feescales", "example_feescale.xml") fp = FeescaleParser(example_path, 1) fp.parse_file() return fp if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtCore.QCoreApplication([]) fp = _test() fp.is_valid() LOGGER.info(fp.message_handler.last_error) fp.increase_fees(2.51) LOGGER.debug("script has finished") openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/feescale_xml_editor.py0000644000175000017500000001041312710144046030406 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import Qsci from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets LOGGER = logging.getLogger("openmolar") class TextObject(object): def __init__(self, text): self.orig_text = text self._text = None def reset_text(self, text): self.orig_text = text self._text = None def update_text(self, text): self._text = text @property def text(self): if self._text is None: return self.orig_text return self._text @property def is_dirty(self): return self.text != self.orig_text class XMLEditor(Qsci.QsciScintilla): MARKER_COLUMN = 8 editing_finished = QtCore.pyqtSignal(object) def __init__(self, parent=None): Qsci.QsciScintilla.__init__(self, parent) self.setLexer(Qsci.QsciLexerXML()) self.text_object = TextObject("") self.highlight_index = self.indicatorDefine( self.RoundBoxIndicator, -1) self.setIndicatorDrawUnder(True, self.highlight_index) self.setIndicatorForegroundColor( QtGui.QColor("#dddddd"), self.highlight_index) self.orig_text = self.text_object.orig_text def editor_settings(self): ''' set some specifics for the large editor (keep defaults for dialogs etc) ''' self.setCaretLineVisible(True) self.setMarginLineNumbers(0, True) self.setMarginWidth(0, "00000") self.setFolding(self.CircledTreeFoldStyle) # self.setWhitespaceVisibility(True) self.markerDefine(Qsci.QsciScintilla.RightArrow, self.MARKER_COLUMN) self.setMarkerBackgroundColor( QtGui.QColor("#ee1111"), self.MARKER_COLUMN) def focusOutEvent(self, event): self.text_object.update_text(str(self.text())) self.editing_finished.emit(self) def setText(self, text): LOGGER.debug("setText") self.text_object.reset_text(text) Qsci.QsciScintilla.setText(self, text) def update_text(self, text): Qsci.QsciScintilla.setText(self, text) def highlight_line(self, lineno): # LOGGER.debug("highlight line %d"% lineno) self.markerAdd(lineno, self.MARKER_COLUMN) self.fillIndicatorRange(lineno, 0, lineno + 1, 0, self.highlight_index) @property def is_dirty(self): self.text_object.update_text(str(self.text())) return self.text_object.is_dirty if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) widg = XMLEditor() widg.editor_settings() widg.show() widg.setText("hello world") app.exec_() print("Text modified = %s" % widg.is_dirty) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py0000644000175000017500000000634112710144046030355 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' module provides one class - NewFeescaleDialog ''' import os import shutil from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings.localsettings import RESOURCE_DIR from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.dbtools.feescales import feescale_handler, FEESCALE_DIR from openmolar.qt4gui.customwidgets.warning_label import WarningLabel EXAMPLE_XML_PATH = os.path.join( RESOURCE_DIR, "feescales", "example_feescale.xml") class NewFeescaleDialog(BaseDialog): ''' A trivial dialog which gets the user to choose an item from a list ''' def __init__(self, parent=None): BaseDialog.__init__(self, parent) self.ix = None self.setWindowTitle(_("New Feescale Dialog")) self.insertWidget(WarningLabel( _('Click Apply to create a new local feescale file' ' which can be modified and then inserted into the database') )) self.enableApply() def sizeHint(self): return QtCore.QSize(300, 300) @property def filename(self): assert self.ix is not None, "new feescale index not available" return "feescale_%d.xml" % self.ix @property def filepath(self): return os.path.join(FEESCALE_DIR(), self.filename) def exec_(self): if BaseDialog.exec_(self): self.ix = feescale_handler.next_insert_id shutil.copy(EXAMPLE_XML_PATH, self.filepath) return True return False if __name__ == "__main__": app = QtWidgets.QApplication([]) dl = NewFeescaleDialog() if dl.exec_(): print(dl.ix) print(dl.filename) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/phrasebook/0000755000175000017500000000000013024000134023044 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/phrasebook/__init__.py0000644000175000017500000000312412710144046025171 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py0000644000175000017500000001665312710144046027121 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import OrderedDict import types from xml.dom import minidom from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.dbtools.phrasebook import PHRASEBOOKS class shadePicker(QtWidgets.QFrame): def __init__(self, parent=None): super(shadePicker, self).__init__(parent) layout = QtWidgets.QHBoxLayout(self) self.cb = QtWidgets.QCheckBox(self) self.cb.setText(_("Shade")) self.comboBox = QtWidgets.QComboBox(self) self.comboBox.addItems( ["A1", "A2", "A3", "A3.5", "A4", "B1", "B2", "B3", "B4", "C1", "C2", "C3", "C4", "D1", "D2", "D3", "D4"]) self.comboBox.setCurrentIndex(-1) layout.addWidget(self.cb) layout.addWidget(self.comboBox) spacerItem = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) layout.addItem(spacerItem) self.comboBox.currentIndexChanged.connect(self.slot) def slot(self, index): self.cb.setChecked(True) def result(self): return _("Shade") + " - " + self.comboBox.currentText() class ListModel(QtCore.QAbstractListModel): ''' A simple model to provide "tabs" for the phrasebook ''' def __init__(self, parent=None): QtCore.QAbstractListModel.__init__(self, parent) self.tabs = [] self.icons = [] def rowCount(self, parent=QtCore.QModelIndex()): return len(self.tabs) def data(self, index, role): if not index.isValid(): pass elif role == QtCore.Qt.DisplayRole: return self.tabs[index.row()] elif role == QtCore.Qt.DecorationRole: return self.icons[index.row()] def add_item(self, label, icon): self.beginResetModel() self.tabs.append(label) self.icons.append(icon) self.endResetModel() class MockTabWidget(QtWidgets.QWidget): def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.stacked_widget = QtWidgets.QStackedWidget() self.list_view = QtWidgets.QListView() self.list_model = ListModel() self.list_view.setModel(self.list_model) layout = QtWidgets.QHBoxLayout(self) layout.addWidget(self.list_view) layout.addWidget(self.stacked_widget) self.list_view.pressed.connect(self.select_tab) def select_tab(self, index): self.stacked_widget.setCurrentIndex(index.row()) def addTab(self, widget, icon, label): self.stacked_widget.addWidget(widget) self.list_model.add_item(label, icon) if self.list_view.currentIndex().row() == -1: index = self.list_model.createIndex(0, 0) self.list_view.setCurrentIndex(index) class PhraseBookDialog(QtWidgets.QDialog): def __init__(self, parent=None, id=0): QtWidgets.QDialog.__init__(self, parent) self.setWindowTitle(_("Phrase Book")) layout = QtWidgets.QVBoxLayout(self) self.tabWidget = MockTabWidget() self.buttonBox = QtWidgets.QDialogButtonBox(self) self.buttonBox.setOrientation(QtCore.Qt.Horizontal) self.buttonBox.setStandardButtons( QtWidgets.QDialogButtonBox.Cancel | QtWidgets.QDialogButtonBox.Ok) self.buttonBox.setCenterButtons(True) self.buttonBox.accepted.connect(self.accept) self.buttonBox.rejected.connect(self.reject) layout.addWidget(self.tabWidget) layout.addWidget(self.buttonBox) self.dict = OrderedDict() self.xml = minidom.parseString(PHRASEBOOKS.book(id).xml) sections = self.xml.getElementsByTagName("section") for section in sections: header = section.getElementsByTagName("header")[0] header_text = header.firstChild.data icon_loc = header.getAttribute("icon") if icon_loc: icon = QtGui.QIcon(icon_loc) else: icon = QtGui.QIcon(":icons/pencil.png") page = QtWidgets.QWidget(self) layout = QtWidgets.QVBoxLayout(page) phrases = section.getElementsByTagName("phrase") for phrase in phrases: if phrase.hasAttribute("spacer"): layout.addStretch() elif phrase.hasAttribute("sub_heading"): text = phrase.firstChild.data label = QtWidgets.QLabel("%s" % text) layout.addWidget(label) else: text = phrase.firstChild.data cb = QtWidgets.QCheckBox(page) cb.setText(text) layout.addWidget(cb) self.dict[cb] = text widgets = section.getElementsByTagName("widget") for widget in widgets: if widget.firstChild.data == "choose_shade": sp = shadePicker(self) layout.addWidget(sp) self.dict[sp.cb] = sp.result spacerItem = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) layout.addItem(spacerItem) self.tabWidget.addTab(page, icon, header_text) def sizeHint(self): return QtCore.QSize(1000, 400) @property def selectedPhrases(self): retlist = [] for cb, value in self.dict.items(): if cb.isChecked(): if isinstance(value, types.MethodType): text = value() else: text = value retlist.append(text) return retlist if __name__ == "__main__": app = QtWidgets.QApplication([]) dl = PhraseBookDialog() if dl.exec_(): print(dl.selectedPhrases) app.closeAllWindows() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/phrasebook/phrasebook_editor.py0000644000175000017500000003603612710144046027145 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import OrderedDict import logging import re import os import sys from xml.dom import minidom from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from PyQt5.QtXmlPatterns import QXmlSchemaValidator, QXmlSchema from openmolar.settings import localsettings from openmolar.qt4gui.feescale_editor.feescale_xml_editor import XMLEditor from openmolar.qt4gui.feescale_editor.feescale_parser import MessageHandler from openmolar.qt4gui.phrasebook.phrasebook_model import PhrasesListModel from openmolar.dbtools.phrasebook import PHRASEBOOKS LOGGER = logging.getLogger("openmolar") STYLESHEET = os.path.join( localsettings.RESOURCE_DIR, "phrasebook", "phrasebook.xsd") class ControlPanel(QtWidgets.QListView): phrase_selected = QtCore.pyqtSignal(object) def __init__(self, parent=None): QtWidgets.QListView.__init__(self, parent) self.list_model = PhrasesListModel() def set_xml(self, xml): self.list_model.set_xml(xml) self.setModel(self.list_model) self.selectionModel().currentRowChanged.connect(self._phrase_selected) def _phrase_selected(self, new_index, old_index): self.phrase_selected.emit(new_index) class PhrasebookEditor(QtWidgets.QMainWindow): _checking_files = False _known_deleted_parsers = [] _compare_phrases_dockwidget = None search_text = "" closed_signal = QtCore.pyqtSignal() def __init__(self, parent=None): QtWidgets.QMainWindow.__init__(self, parent) self.window_title = _("Phrasebook Editor") self.setWindowTitle(self.window_title) self.loading = True statusbar = QtWidgets.QStatusBar() self.setStatusBar(statusbar) self.control_panel = ControlPanel() self.control_panel.phrase_selected.connect(self.find_phrase) #: a pointer to the label in the statusbar self.cursor_pos_label = QtWidgets.QLabel("Line 0, Column 0") statusbar.addPermanentWidget(self.cursor_pos_label) self.main_toolbar = QtWidgets.QToolBar() self.main_toolbar.setObjectName("Main Toolbar") self.main_toolbar.toggleViewAction().setText(_("Toolbar")) self.prefs_toolbar = QtWidgets.QToolBar() self.prefs_toolbar.setObjectName("Prefs Toolbar") self.prefs_toolbar.toggleViewAction().setText(_("Preferences Toolbar")) self.addToolBar(QtCore.Qt.TopToolBarArea, self.main_toolbar) self.addToolBar(QtCore.Qt.TopToolBarArea, self.prefs_toolbar) menu_file = QtWidgets.QMenu(_("&File"), self) menu_edit = QtWidgets.QMenu(_("&Edit"), self) menu_tools = QtWidgets.QMenu(_("&Tools"), self) self.menuBar().addMenu(menu_file) self.menuBar().addMenu(menu_edit) self.menuBar().addMenu(menu_tools) icon = QtGui.QIcon.fromTheme("document-new") action_new = QtWidgets.QAction(icon, _("New Phrasebook"), self) action_new.setToolTip(_("Create a new clinician phrasebook")) icon = QtGui.QIcon(":database.png") action_commit = QtWidgets.QAction(icon, _("Commit to Database"), self) action_commit.setToolTip(_("Commit changes to database")) icon = QtGui.QIcon.fromTheme("document-find") action_find = QtWidgets.QAction(icon, _("Find"), self) action_find.setShortcut("Ctrl+F") action_find.setToolTip( _("Search current file for first forward match of entered text")) action_find_again = QtWidgets.QAction(icon, _("Find Again"), self) action_find_again.setShortcut("Ctrl+G") action_find_again.setToolTip(_("Search current file again for text")) self.main_toolbar.addAction(action_new) self.main_toolbar.addAction(action_commit) menu_edit.addAction(action_find) menu_edit.addAction(action_find_again) menu_file.addAction(action_new) menu_file.addAction(action_commit) self.tab_widget = QtWidgets.QTabWidget() self.phrasebook_parsers = OrderedDict() self.text_editors = [] self.action_refactor = QtWidgets.QAction(_("XML tidy"), self) self.action_refactor.triggered.connect(self.refactor) self.action_check_parseable = QtWidgets.QAction( _("Check Well Formed"), self) self.action_check_parseable.triggered.connect(self.check_parseable) self.action_check_validity = QtWidgets.QAction(_("Check Validity"), self) self.action_check_validity.triggered.connect(self.check_validity) menu_tools.addAction(self.action_refactor) menu_tools.addAction(self.action_check_parseable) menu_tools.addAction(self.action_check_validity) self.prefs_toolbar.addAction(self.action_refactor) self.prefs_toolbar.addAction(self.action_check_parseable) self.prefs_toolbar.addAction(self.action_check_validity) splitter = QtWidgets.QSplitter() splitter.addWidget(self.control_panel) splitter.addWidget(self.tab_widget) splitter.setSizes([150, 650]) self.setCentralWidget(splitter) action_find.triggered.connect(self.find_text) action_find_again.triggered.connect(self.find_again) action_commit.triggered.connect(self.apply_changes) action_new.triggered.connect(self.new_phrasebook) self.tab_widget.currentChanged.connect(self.view_phrasebook) QtCore.QTimer.singleShot(1000, self.start_) def advise(self, message, importance=0): ''' notify user ''' if importance is 0: LOGGER.debug(message) m = QtWidgets.QMessageBox(self) m.setText(message) m.setIcon(m.Information) m.setStandardButtons(QtWidgets.QMessageBox.NoButton) m.setWindowTitle(_("advisory")) m.setModal(False) QtCore.QTimer.singleShot(3 * 1000, m.accept) m.show() elif importance == 1: LOGGER.info(message) QtWidgets.QMessageBox.information(self, _("Advisory"), message) else: LOGGER.warning(message) QtWidgets.QMessageBox.warning(self, _("Error"), message) def sizeHint(self): return QtCore.QSize(800, 500) def closeEvent(self, event=None): ''' called when application closes. ''' if self.is_dirty: message = "%s
    %s" % ( _("WARNING - you have unsaved changes!"), _("Are you sure you want to quit?")) if QtWidgets.QMessageBox.question( self, _("Confirm"), message, QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Cancel) == QtWidgets.QMessageBox.Cancel: event.ignore() return self.closed_signal.emit() def start_(self): self.load_phrasebooks() self.view_phrasebook(0) def load_phrasebooks(self): self.loading = True while self.tab_widget.count(): self.tab_widget.removeTab(0) for editor in self.text_editors: editor.setParent(None) self.text_editors = [] for book in PHRASEBOOKS.get_all_books(): editor = XMLEditor(self) editor.editor_settings() editor.setText(book.xml) editor.db_index = book.ix editor.textChanged.connect(self.text_changed) editor.cursorPositionChanged.connect(self.cursor_position_changed) if book.ix == 0: title = _("Global Phrasebook") else: title = localsettings.ops[book.ix] self.text_editors.append(editor) self.tab_widget.addTab(editor, title) self.loading = False def view_phrasebook(self, ix=0): LOGGER.debug("View phrasebook %s" % ix) while self.loading: QtCore.QTimer.singleShot(1000, self.view_phrasebook) return if len(self.text_editors) > 0: self.control_panel.set_xml(self.text_editors[ix].text) self.setWindowTitle( "%s - %s" % (self.window_title, ix)) self.update_index() else: QtWidgets.QMessageBox.information( self, _("Information"), _("You appear to have no phrasebooks " "installed in your database")) def update_index(self): self.control_panel.set_xml(self.text) @property def text_edit(self): return self.text_editors[self.tab_widget.currentIndex()] @property def text(self): return str(self.text_edit.text()) def refactor(self): if not self.check_parseable(show_message=False): return xml = re.sub(">[\s]*<", "><", self.text) dom = minidom.parseString(xml) # don't use setText here that updates orig_text and is_dirty won't work self.text_edit.update_text(dom.toprettyxml()) def check_parseable(self, action=None, show_message=True): try: minidom.parseString(self.text) if show_message: self.advise(_("Phrasebook is well formed"), 1) return True except Exception as exc: self.advise("%s
    %s" % ( _("Phrasebook is not well formed"), exc.message), 2) return False def check_validity(self): result, message = self.check_xml_validity(self.text) if result: self.advise(_("Phrasebook is valid"), 1) else: self.advise(message.last_error, 1) def check_xml_validity(self, xml): message_handler = MessageHandler() LOGGER.debug("checking phrasebook xml against %s", STYLESHEET) f = QtCore.QFile(STYLESHEET) f.open(QtCore.QIODevice.ReadOnly) schema = QXmlSchema() schema.load(f) validator = QXmlSchemaValidator(schema) validator.setMessageHandler(message_handler) result = validator.validate(self.text.encode("utf8")) return result, message_handler def find_phrase(self, index): phrase_count = 0 for lineno, line in enumerate(self.text.split("\n")): if phrase_count == index.row() + 1: self.text_edit.setFocus(True) self.text_edit.setFirstVisibleLine(lineno - 2) self.text_edit.setCursorPosition(lineno - 1, 0) self.text_edit.ensureCursorVisible() break if " # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from xml.dom import minidom from PyQt5 import QtCore LOGGER = logging.getLogger("openmolar") class PhrasesListModel(QtCore.QAbstractListModel): def __init__(self): QtCore.QAbstractListModel.__init__(self) self.xml = "" self._headings = None self._dom = None self._rowcount = None def set_xml(self, xml): self.beginResetModel() self.xml = xml try: self._dom = minidom.parseString(self.xml) self._headings = None self._rowcount = None except: self._headings = [] self._rowcount = 0 self.endResetModel() def rowCount(self, index): if self._rowcount is None: LOGGER.debug("refreshing") self._rowcount = len(self.headings) return self._rowcount def data(self, index, role): if role == QtCore.Qt.DisplayRole: return self.headings[index.row()] @property def dom(self): if self._dom is None: self._dom = minidom.parseString(self.xml) return self._dom @property def headings(self): if self._headings is None: self._headings = [] for node in self.dom.getElementsByTagName("section"): header_node = node.getElementsByTagName("header")[0] self._headings.append(header_node.firstChild.data) return self._headings def reset_(self): LOGGER.debug("Resetting phrasebook model") self._headings = None self._dom = None self._rowcount = None openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/0000755000175000017500000000000013024000134022541 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/0000755000175000017500000000000013024000134023317 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/__init__.py0000644000175000017500000000330412710144046025444 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from .gp17v1_front import GP17iFront from .gp17v1_back import GP17iBack __all__ = ["GP17iFront", "GP17iBack"] openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/gp17_back.py0000644000175000017500000001304612710150014025437 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a Class for printing the GP17(Scotland) NHS form ''' import os from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.backports.printed_form import PrintedForm from openmolar.qt4gui.printing.gp17.gp17_config import gp17config checkBoxWidth = 16 checkBoxHeight = 16 RECTS = {} x = 334 RECTS["reg_continue"] = QtCore.QRectF( x, 141, checkBoxWidth, checkBoxHeight) RECTS["reg_another_dentist"] = QtCore.QRectF( x, 167, checkBoxWidth, checkBoxHeight) RECTS["reg_another_practice"] = QtCore.QRectF( x, 194, checkBoxWidth, checkBoxHeight) RECTS["no_reg"] = QtCore.QRectF( x, 220, checkBoxWidth, checkBoxHeight) RECTS["referred"] = QtCore.QRectF( x, 245, checkBoxWidth, checkBoxHeight) RECTS["pay_charges"] = QtCore.QRectF( x, 300, checkBoxWidth, checkBoxHeight) RECTS["HC3"] = QtCore.QRectF( x, 341, checkBoxWidth, checkBoxHeight) RECTS["4b_patient"] = QtCore.QRectF( 97, 377, checkBoxWidth, checkBoxHeight) RECTS["4b_guardian"] = QtCore.QRectF( x, 377, checkBoxWidth, checkBoxHeight) RECTS["4c_patient"] = QtCore.QRectF( 100, 930, checkBoxWidth, checkBoxHeight) RECTS["4c_guardian"] = QtCore.QRectF( 334, 929, checkBoxWidth, checkBoxHeight) RECTS["8_patient"] = QtCore.QRectF( 455, 926, checkBoxWidth, checkBoxHeight) RECTS["8_guardian"] = QtCore.QRectF( 684, 926, checkBoxWidth, checkBoxHeight) RECTS["under_18"] = QtCore.QRectF( x, 528, checkBoxWidth, checkBoxHeight) RECTS["student"] = QtCore.QRectF( x, 556, checkBoxWidth, checkBoxHeight) RECTS["pregnant"] = QtCore.QRectF( x, 580, checkBoxWidth, checkBoxHeight) RECTS["feeding"] = QtCore.QRectF( x, 608, checkBoxWidth, checkBoxHeight) RECTS["income_related_employment_support"] \ = QtCore.QRectF(x, 648, checkBoxWidth, checkBoxHeight) RECTS["income_support"] = QtCore.QRectF( x, 675, checkBoxWidth, checkBoxHeight) RECTS["job_seekers"] = QtCore.QRectF( x, 700, checkBoxWidth, checkBoxHeight) RECTS["tax credit"] = QtCore.QRectF( x, 728, checkBoxWidth, checkBoxHeight) RECTS["pension credit"] = QtCore.QRectF( x, 756, checkBoxWidth, checkBoxHeight) RECTS["HC2"] = QtCore.QRectF( x, 861, checkBoxWidth, checkBoxHeight) RECTS["HC2_number"] = QtCore.QRectF(191, 855, 128, 32) RECTS["no_evidence"] = QtCore.QRectF( x, 897, checkBoxWidth, checkBoxHeight) RECTS["pftr"] = QtCore.QRectF( 686, 1037, checkBoxWidth, checkBoxHeight) RECTS["observations"] = QtCore.QRectF(376, 213, 343, 193) RECTS["paid_a"] = QtCore.QRectF( 623, 795, checkBoxWidth, checkBoxHeight) RECTS["paid_b"] = QtCore.QRectF( 641, 795, checkBoxWidth, checkBoxHeight) RECTS["paid_c"] = QtCore.QRectF( 660, 795, checkBoxWidth, checkBoxHeight) RECTS["paid_d"] = QtCore.QRectF( 686, 795, checkBoxWidth, checkBoxHeight) RECTS["paid_s"] = QtCore.QRectF( 706, 795, checkBoxWidth, checkBoxHeight) RECTS["Dent_sig"] = QtCore.QRectF(477, 497, 242, 26) RECTS["Dent_sig_date"] = QtCore.QRectF(477, 532, 130, 26) RECTS["Dent_sigPA"] = QtCore.QRectF(475, 79, 242, 26) RECTS["Dent_sig_datePA"] = QtCore.QRectF(475, 111, 158, 26) class Gp17Back(PrintedForm): ''' a class to set up and print a GP17 ''' data = None def __init__(self, parent=None): PrintedForm.__init__(self, parent) self.rects = RECTS def print_(self): self.set_offset(gp17config.OFFSET_LEFT, gp17config.OFFSET_TOP) self.set_scaling(gp17config.SCALE_X, gp17config.SCALE_Y) painter = PrintedForm.print_(self) self._fill(painter) def _fill(self, painter): if self.data is None: return if __name__ == "__main__": os.chdir(os.path.expanduser("~")) # for print to file from openmolar.settings import localsettings TEST_IMAGE = os.path.join(localsettings.RESOURCE_DIR, "gp17", "back.jpg") app = QtWidgets.QApplication([]) form = Gp17Back() form.testing_mode = True form.print_background = True form.BACKGROUND_IMAGE = TEST_IMAGE form.controlled_print() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/gp17_config.py0000644000175000017500000001244012710144046026011 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a Class for printing the GP17-1(Scotland) NHS form (back side) ''' import configparser import os from openmolar.settings import localsettings CONF_PATH = os.path.join(localsettings.LOCALFILEDIRECTORY, "gp17.conf") SECTIONS = ("gp17Front", "gp17iFront", "gp17iBack") class GP17Config(configparser.ConfigParser): def __init__(self): configparser.ConfigParser.__init__(self) self.read_conf() for section in SECTIONS: try: self.add_section(section) except configparser.DuplicateSectionError: pass def read_conf(self): self.read([CONF_PATH]) @property def OFFSET_LEFT(self): try: return int(self.get("gp17Front", "left")) except configparser.NoOptionError: return 0 @property def OFFSET_TOP(self): try: return int(self.get("gp17Front", "top")) except configparser.NoOptionError: return 0 @property def SCALE_X(self): try: return float(self.get("gp17Front", "scale_x")) except configparser.NoOptionError: return 1.0 @property def SCALE_Y(self): try: return float(self.get("gp17Front", "scale_y")) except configparser.NoOptionError: return 1.0 @property def GP17i_OFFSET_LEFT(self): try: return int(self.get("gp17iFront", "left")) except configparser.NoOptionError: return 0 @property def GP17i_OFFSET_TOP(self): try: return int(self.get("gp17iFront", "top")) except configparser.NoOptionError: return 0 @property def GP17i_SCALE_X(self): try: return float(self.get("gp17iFront", "scale_x")) except configparser.NoOptionError: return 1.0 @property def GP17i_SCALE_Y(self): try: return float(self.get("gp17iFront", "scale_y")) except configparser.NoOptionError: return 1.0 @property def GP17iback_OFFSET_LEFT(self): try: return int(self.get("gp17iBack", "left")) except configparser.NoOptionError: return 0 @property def GP17iback_OFFSET_TOP(self): try: return int(self.get("gp17iBack", "top")) except configparser.NoOptionError: return 0 @property def GP17iback_SCALE_X(self): try: return float(self.get("gp17iBack", "scale_x")) except configparser.NoOptionError: return 1.0 @property def GP17iback_SCALE_Y(self): try: return float(self.get("gp17iBack", "scale_y")) except configparser.NoOptionError: return 1.0 def save_config(self): self.set("gp17Front", "left", str(self.OFFSET_LEFT)) self.set("gp17Front", "top", str(self.OFFSET_TOP)) self.set("gp17Front", "scale_x", str(self.SCALE_X)) self.set("gp17Front", "scale_y", str(self.SCALE_Y)) self.set("gp17iFront", "left", str(self.GP17i_OFFSET_LEFT)) self.set("gp17iFront", "top", str(self.GP17i_OFFSET_TOP)) self.set("gp17iFront", "scale_x", str(self.GP17i_SCALE_X)) self.set("gp17iFront", "scale_y", str(self.GP17i_SCALE_Y)) self.set("gp17iBack", "left", str(self.GP17iback_OFFSET_LEFT)) self.set("gp17iBack", "top", str(self.GP17iback_OFFSET_TOP)) self.set("gp17iBack", "scale_x", str(self.GP17iback_SCALE_X)) self.set("gp17iBack", "scale_y", str(self.GP17iback_SCALE_Y)) f = open(CONF_PATH, "w") self.write(f) f.close() gp17config = GP17Config() if __name__ == "__main__": gp17config.save_config() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/gp17_data.py0000644000175000017500000003314512710144046025462 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides Gp17Data class for the data required by a GP17(Scotland) NHS form ''' from datetime import date import logging import re from openmolar.settings import localsettings from openmolar.ptModules import dec_perm LOGGER = logging.getLogger("openmolar") def convert_tooth(tooth): ''' take something like "ul5" and return the iso code ''' if not re.match("[ul][lr][1-8A-E]", tooth): return None quadrant = tooth[:2].lower() iso_quadrant = ["ur", "ul", "ll", "lr"].index(quadrant) try: tooth_no = "abcde".index(tooth[2].lower()) + 1 iso_quadrant += 4 except ValueError: tooth_no = tooth[2] result = "%s%s" % (iso_quadrant + 1, tooth_no) LOGGER.debug("converted tooth '%s' to '%s'" % (tooth, result)) return result CAPITATION_SIMPLE = [ "2771", # upper special tray "2772" # lower special tray ] CONTINUING_CARE_SIMPLE = [ "0101", # exam a "0111", # exam b "0201", # exam c "1001", # perio a "1011", # perio b "2771", # upper special tray "2772" # lower special tray ] TOOTH_SPECIFIC_CODES = [ "0701", # Fissure sealant, unfilled third molars "1021", # non-surgical treatment of periodontal disease "1131", # crown lengthening "1401", # 1 surface "1402", # 2 surface "1403", # 2 or more surface including MO or DO "1404", # 3 or more surface including MOD "1411", # tunnel "1412", # tunnel, max per tooth "1421", # resin "1420", # 2 or more (same tooth) "1422", # acid etch - 1 angle "1423", # incisal edge "1424", # 2 agles - mesial and distal "1425", # cusp tip "1426", # glass ionomer - 1 filling "1427", # glass ionomer - 2 or more "1431", "1461", "1462", "1470", "1471", "1481", "1482", "1483", "1501", "1502", "1503", "1504", "1511", "1521", "1522", "1523", "1541", "1551", "1601", "1701", "1702", "1703", "1704", "1761", "1781", "1711", "1712", "1716", "1721", "1722", "1723", "1726", "1742", "1743", "1762", "1782", "1732", "1733", "1734", "1735", "1736", "1738", "1739", "1744", "1801", "1802", "1803", "1804", "1805", "1806", "1807", "1808", "1811", "1812", "1813", "1814", "1816", "1821", "1822", "1823", "1824", "1825", "1826", "1827", "1831", "1832", "1851", "1852", "2101", "2102", "2201", "2202", "2203", "2204", "2206", "2205", "2207", "2733", "2735", "2743", "2747", "2744", "2748", "2745", "2749", "2746", "2863", "2864", "3261", "3262", "3263", "3264", "3611", "3651", "3661", "3671", "4401", "4402", "4403", "4404", "4405", "4406", "5001", "5002", "5021", "5022", "5031", "5032", "5041", "5042", "5071", "5075", "5076", "5102", "5103", "5104", "5111", "5112", "5201", "5202", "5211", "5212", "5213", "5214", "5216", "5215", "5217", "5563", "5564", "5811", "5812", "5813", "5814", "5821", "5820", "5822", "5823", "5824", "5825", "5826", "5827", "5831", "5836", "5837", "5838", "5839", "5841", "5842", "5843", "5851", "5852", "5903", "5905", "5916", "6001", "6002", "6003", "6004", "6242", "6244", "6252", "6254", "6263", "6266", "6273", "6276", "6283", "6286", "6264", "6267", "6274", "6277", "6284", "6287", "6265", "6268", "6275", "6278", "6285", "6288", "6202", "6204", "6212", "6214", "6222", "6224", "6232", "6234", "6301", "6321", "6331", "6332", "6341", "6342", "6343", "6344", "6351", "6352", "6353", "6354", "6401", "6501", "6511", "6512", "6513", "6522", "6523", ] test_misc_dict = { "on_referral": True, "special_needs": True, "not_extending": True, "radiographs": True, "models": True, "trauma": True } class DuckCode(object): def __init__(self, code, number=1, free_replace=False): self.code = code self.number = number self.free_replace = free_replace test_complex_codes = [ DuckCode("4401", 2), DuckCode("3803", 1, True) ] class DuckCourse(object): accd = date(1969, 12, 9) cmpd = date(2015, 12, 9) ftr = True class DuckPatient(object): sname = "Wallace" fname = "Bea" dob = date(1969, 12, 9) sex = "F" nhsno = "1231234567" psn = "Davis" # previous surname addr1 = "The Gables" addr2 = "Daviot" addr3 = "" town = "Inverness" county = "" pcde = "IV25XQ" dnt1 = 1 dnt2 = None # dent0,dent1,dent2,dent3 = 0,0,0,0 bpe = [""] under_capitation = False estimates = [] def nhs_claims(self, completed=True): return [] def __init__(self): self.treatment_course = DuckCourse() class Gp17Data(object): ''' a class to hold data required by the form ''' misc_dict = {} def __init__(self, pt=None, testing_mode=False): LOGGER.debug("Gp17Data object created, pt = %s testing_mode = %s" % ( pt, testing_mode)) self.pt = DuckPatient() if pt is None else pt self.dentist = self.pt.dnt2 if self.pt.dnt2 != 0 else self.pt.dnt1 self.testing_mode = testing_mode if testing_mode: self.misc_dict = test_misc_dict self.exclusions = [] self.completed_only = True def format_date(self, date): ''' format's a date of birth to MMDDYYYY ''' try: return "%02d%02d%04d" % ( date.day, date.month, date.year) except AttributeError: return " " @property def dob(self): ''' format the patients date of birth to MMDDYYYY ''' return self.format_date(self.pt.dob) @property def stamp_text(self): ''' The Dentist's Information ''' try: text = localsettings.dentDict[self.dentist][2] + "\n" except KeyError: print("Key Error getting dentist", self.dentist) text = "\n" for line in localsettings.PRACTICE_ADDRESS: text += line + "\n" try: text += localsettings.dentDict[self.dentist][3] except KeyError: text += "" return text @property def addr1(self): return self.pt.addr1 @property def addr2(self): for att in (self.pt.addr2, self.pt.addr3, self.pt.town, self.pt.county): att = att.strip(" ") if att != "": return att @property def addr3(self): for att in (self.pt.addr3, self.pt.town, self.pt.county): att = att.strip(" ") if att != "" and att != self.addr2: return att return "" @property def pcde(self): pcde = self.pt.pcde.replace(" ", "") if len(pcde) == 6: return "%s %s" % (pcde[:3], pcde[3:]) return pcde @property def identifier(self): ''' CHI number ''' return str(self.pt.nhsno) @property def previous_sname(self): return self.pt.psn @property def accd(self): ''' date of registration/acceptance ''' if "accd" in self.exclusions: return "" return self.format_date(self.pt.treatment_course.accd) @property def cmpd(self): ''' date of completion ''' if "cmpd" in self.exclusions or self.pftr: return "" return self.format_date(self.pt.treatment_course.cmpd) @property def pftr(self): ''' patient failed to return ''' if "pftr" in self.exclusions: return False return self.pt.treatment_course.ftr @property def show_chart(self): if "chart" in self.exclusions: return False return True def tooth_present(self, quadrant, tooth): ''' chart - returns True if the tooth is present. ''' if isinstance(self.pt, DuckPatient): return True old_quadrant = ["ur", "ul", "ll", "lr"][(quadrant % 4) - 1] old_notation = "%s%dst" % (old_quadrant, tooth) static_string = self.pt.__dict__[old_notation].split(" ") # print "checking for tooth %s%s (%s), '%s'"% ( # quadrant, tooth, old_notation, static_string) if "TM" in static_string or "UE" in static_string: return False if quadrant > 4: if self._is_deciduous(quadrant - 4, tooth): result = True else: result = False else: if self._is_deciduous(quadrant, tooth): result = "+P" in static_string else: result = "AT" not in static_string return result def _is_deciduous(self, quadrant, tooth): ''' chart - returns True if the tooth is present. ''' if quadrant == 1: att = self.pt.dent0 elif quadrant == 2: att = self.pt.dent1 elif quadrant == 3: att = self.pt.dent2 elif quadrant == 4: att = self.pt.dent3 else: return False array = dec_perm.fromSignedByte(att) if quadrant in (2, 4): array = list(reversed(array)) return array[tooth - 1] == "1" @property def bpe(self): ''' bpe ''' if "bpe" in self.exclusions: return "" try: return self.pt.bpe[-1][1] except IndexError: return "" @property def common_codes(self): ''' looks for exams, perio, small xrays and special trays. counts these items. ''' if "tx" in self.exclusions: return {} items = {} if self.pt.under_capitation: allowed_claim_codes = CAPITATION_SIMPLE else: allowed_claim_codes = CONTINUING_CARE_SIMPLE for item in self.pt.nhs_claims(self.completed_only): if item.itemcode in allowed_claim_codes: try: items[item.itemcode] += item.number except KeyError: items[item.itemcode] = item.number return items @property def simple_codes(self): if "tx" in self.exclusions: return [] return [] @property def complex_codes(self): if "tx" in self.exclusions: return [] if self.testing_mode: return test_complex_codes else: return [] @property def tooth_specific_codes(self): if "tx" in self.exclusions: return {} ts_items = {} allowed_claim_codes = TOOTH_SPECIFIC_CODES # iterate over the estimates for item in self.pt.nhs_claims(self.completed_only): if item.itemcode in allowed_claim_codes: for hash_ in item.tx_hashes: att, tx = self.pt.get_tx_from_hash(hash_) iso_tooth = convert_tooth(att) if iso_tooth is None: LOGGER.error("GP17 IGNORING itemcode %s as not " "tooth specific?" % item.itemcode) continue try: ts_items[item.itemcode].append(iso_tooth) except KeyError: ts_items[item.itemcode] = [iso_tooth] return ts_items return [] if __name__ == "__main__": data = Gp17Data(testing_mode=True) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/gp17_printer.py0000644000175000017500000001000112710154110026207 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a Class for printing the GP17s Will raise dialogs etc to enable user choices. ''' import os from PyQt5 import QtWidgets from openmolar.qt4gui.dialogs.gp17_printdialog import GP17PrintDialog from openmolar.qt4gui.printing.om_printing import commitPDFtoDB class GP17Printer(object): def __init__(self, om_gui): self.om_gui = om_gui def test_print(self): self.print_(test=True) def print_(self, final_paperwork=False, test=False): ''' a GP17 is a scottish NHS form if test=True you also get boxes printed on the form (to check alignment) ''' if final_paperwork and QtWidgets.QMessageBox.question( self.om_gui, _("Question"), _("Print an NHS form now?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.No: return if test: # self.om_gui.pt.serialno == 0: pt = None else: pt = self.om_gui.pt dl = GP17PrintDialog(pt, self.om_gui) dl.choose_form_widget.boxes_checkbox.setChecked(test) # chosenDent = str(dl.dents_comboBox.currentText()) # dent = localsettings.ops_reverse.get(chosenDent) # form = GP17.gp17(self.om_gui.pt, dent, self.om_gui, test) if dl.exec_(): for Form in dl.chosen_forms: form = Form(parent=self.om_gui) form.set_data(dl.data) form.printer.setDocName(form.NAME) form.set_testing_mode(dl.print_boxes) form.set_background_mode(dl.print_background) if form.controlled_print() and not test: commitPDFtoDB(self.om_gui, form.NAME) self.om_gui.pt.addHiddenNote( "printed", "%s %s" % (form.NAME, dl.dent_inits)) self.om_gui.updateHiddenNotesLabel() if __name__ == "__main__": from openmolar.settings import localsettings from openmolar.qt4gui import maingui from openmolar.dbtools import patient_class os.chdir(os.path.expanduser("~")) # for save pdf localsettings.initiate() localsettings.station = "reception" # prevent no clinician popup app = QtWidgets.QApplication([]) om_gui = maingui.OpenmolarGui() om_gui.pt = patient_class.patient(2981) p = GP17Printer(om_gui) p.test_print() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/gp17v1_back.py0000644000175000017500000001202312710150051025701 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a Class for printing the GP17-1(Scotland) NHS form (back side) ''' import os from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.backports.printed_form import PrintedForm from openmolar.qt4gui.printing.gp17.gp17_config import gp17config # size of a box for a text field (ie character) T_BOX = QtCore.QRectF(0, 0, 15, 16) # size of a box for an X (ie check box) C_BOX = QtCore.QRectF(0, 0, 14, 14) RECTS = {} x = 334 RECTS["reg_continue"] = C_BOX.translated(x, 196) RECTS["reg_another_dentist"] = C_BOX.translated(x, 218) RECTS["reg_another_practice"] = C_BOX.translated(x, 240) RECTS["no_reg"] = C_BOX.translated(x, 260) RECTS["referred"] = C_BOX.translated(x, 280) RECTS["pay_charges"] = C_BOX.translated(x, 330) RECTS["HC3"] = C_BOX.translated(x, 372) RECTS["HC3_number"] = QtCore.QRectF(200, 369, 118, 30) RECTS["4b_patient"] = C_BOX.translated(102, 408) RECTS["4b_guardian"] = C_BOX.translated(x, 408) RECTS["4c_patient"] = C_BOX.translated(104, 934) RECTS["4c_guardian"] = C_BOX.translated(x, 934) RECTS["8_patient"] = C_BOX.translated(455, 940) RECTS["8_guardian"] = C_BOX.translated(684, 940) RECTS["under_18"] = C_BOX.translated(x, 556) RECTS["student"] = C_BOX.translated(x, 575) RECTS["pregnant"] = C_BOX.translated(x, 594) RECTS["nursing"] = C_BOX.translated(x, 613) RECTS["income_related_employment_support"] = C_BOX.translated(x, 646) RECTS["income_support"] = C_BOX.translated(x, 665) RECTS["job_seekers"] = C_BOX.translated(x, 684) RECTS["unused"] = C_BOX.translated(x, 703) RECTS["pension credit"] = C_BOX.translated(x, 744) RECTS["tax credit"] = C_BOX.translated(x, 763) RECTS["HC2"] = C_BOX.translated(x, 872) RECTS["HC2_number"] = QtCore.QRectF(200, 872, 118, 32) RECTS["no_evidence"] = C_BOX.translated(x, 913) RECTS["observations"] = QtCore.QRectF(384, 210, 320, 328) for i, x in enumerate([610, 627, 644, 670, 687]): RECTS["paid_%02d" % i] = T_BOX.translated(x, 784) class GP17iBack(PrintedForm): ''' a class to set up and print a GP17 (tooth specific version) ''' NAME = "GP17(1) Back" data = None _bg_pixmap = None def __init__(self, parent=None): PrintedForm.__init__(self, parent) self.rects = RECTS @classmethod def is_active(self): # return QtCore.QDate.currentDate() >= QtCore.QDate(2013,7,1) return False def set_data(self, data): self.data = data @property def BACKGROUND_IMAGE(self): if self._bg_pixmap is None: self._bg_pixmap = QtGui.QPixmap( os.path.join(localsettings.RESOURCE_DIR, "gp17-1", "back.png")) return self._bg_pixmap def print_(self): self.set_offset( gp17config.GP17iback_OFFSET_LEFT, gp17config.GP17iback_OFFSET_TOP) self.set_scaling( gp17config.GP17iback_SCALE_X, gp17config.GP17iback_SCALE_Y) painter = PrintedForm.print_(self) self._fill(painter) def _fill(self, painter): if self.data is None: return if __name__ == "__main__": os.chdir(os.path.expanduser("~")) # for print to file TEST_IMAGE = os.path.join(localsettings.RESOURCE_DIR, "gp17-1", "back.png") app = QtWidgets.QApplication([]) form = GP17iBack() form.testing_mode = True form.print_background = True form.BACKGROUND_IMAGE = TEST_IMAGE form.controlled_print() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/gp17/gp17v1_front.py0000644000175000017500000003657212710151132026151 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Provides a Class for printing the GP17-1(Scotland) NHS form (front side) ''' import os from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.backports.printed_form import PrintedForm from openmolar.qt4gui.printing.gp17.gp17_config import gp17config TEXTBOX_WIDTH = 15 PADDING = 2.5 RECTS = {} # size of a box for a text field (ie character) T_BOX = QtCore.QRectF(0, 0, TEXTBOX_WIDTH, 16) # size of a box for an X (ie check box) C_BOX = QtCore.QRectF(0, 0, 14, 14) # box for charting CHART_BOX = QtCore.QRectF(0, 0, 13, 8) # box for shading in S_BOX = QtCore.QRectF(0, 0, 8, 10) # sname boxes pcde_box = 0 for i in range(14): x = 96 + i * (TEXTBOX_WIDTH + PADDING) RECTS["surname_%02d" % i] = T_BOX.translated(x, 69) RECTS["forename_%02d" % i] = T_BOX.translated(x, 95) RECTS["addr1_%02d" % i] = T_BOX.translated(x, 198) RECTS["addr2_%02d" % i] = T_BOX.translated(x, 224) RECTS["addr3_%02d" % i] = T_BOX.translated(x, 248) if i < 10: RECTS["chi_%02d" % i] = T_BOX.translated(x, 148) if 1 < i < 14: RECTS["prev_sno_%02d" % (i - 2)] = T_BOX.translated(x, 175) if i in (0, 1, 2, 3, 5, 6, 7): RECTS["pcde_%d" % pcde_box] = T_BOX.translated(x, 270) pcde_box += 1 # dob for i, x in enumerate([66, 84, 118, 136, 174, 192, 208, 224]): y = 121 RECTS["dob_%d" % i] = T_BOX.translated(x, y) # sex RECTS["male"] = T_BOX.translated(291, y) RECTS["female"] = T_BOX.translated(324, y) # dentists stamp box RECTS["stampbox"] = QtCore.QRectF(440, 72, 272, 124) for i, x in enumerate([544, 562, 594, 612, 643, 661, 679, 697]): RECTS["accd_%02d" % i] = T_BOX.translated(x, 202) RECTS["cmpd_%02d" % i] = T_BOX.translated(x, 232) for i, x in enumerate([552, 570, 588, 656, 674, 692]): RECTS["bpe_%02d" % i] = T_BOX.translated(x, 268) left_x, right_x = 548, 696 for i, y in enumerate([302, 340, 360, 380, 408, 432, 452]): field = ( "special_needs", "0111", "1011", "2772", "advice", "models", "trauma")[i] RECTS[field] = C_BOX.translated(right_x, y) if i == 0: pass elif i == 4: RECTS["rad_01"] = C_BOX.translated(left_x - 18, y) RECTS["rad_02"] = C_BOX.translated(left_x, y) elif i == 6: RECTS["ref_01"] = C_BOX.translated(left_x - 18, y) RECTS["ref_02"] = C_BOX.translated(left_x, y) else: field = ( None, "0101", "1001", "2771", None, "rads_available", None)[i] RECTS[field] = C_BOX.translated(left_x, y) # chart for quadrant in range(1, 5): y = 356 if quadrant < 3 else 370 t_range = list(range(1, 9)) # Left teeth are in left to right order if quadrant in (2, 3): x_offset = 206 else: x_offset = 58 t_range.reverse() # reverse for the right side for i, toothno in enumerate(t_range): tooth = "chart_%s%s" % (quadrant, toothno) x = i * 17.5 + x_offset RECTS[tooth] = CHART_BOX.translated(x, y) for quadrant in range(5, 9): y = 344 if quadrant < 7 else 382 t_range = list(range(1, 6)) # Left teeth are in left to right order if quadrant in (6, 7): x_offset = 206 else: x_offset = 112 t_range.reverse() # reverse for the right side for i, toothno in enumerate(t_range): tooth = "chart_%s%s" % (quadrant, toothno) x = i * 17.5 + x_offset RECTS[tooth] = CHART_BOX.translated(x, y) RECTS["refused"] = C_BOX.translated(696, 902) RECTS["pftr"] = C_BOX.translated(696, 930) for row in range(9): y = 544 + row * 25 for i, x in enumerate([554, 572, 590, 608, 634, 652]): RECTS["other%s_%02d" % (row, i)] = T_BOX.translated(x, y) RECTS["other_replacement_%02d" % row] = T_BOX.translated(696, y) for i, x in enumerate([442, 460, 494, 512, 543, 561, 579, 597]): RECTS["dentist_sigdate_%02d" % i] = T_BOX.translated(x, 1014) for i, x in enumerate([600, 618, 636, 654, 680, 698]): RECTS["claim_total_%02d" % i] = T_BOX.translated(x, 772) # tooth specific item section for row in range(10): y = 446 + row * 61.5 for i, x in enumerate([22, 40, 58, 76]): RECTS["item%s_code%02d" % (row + 1, i)] = T_BOX.translated(x, y) RECTS["item%s_void" % (row + 1)] = S_BOX.translated(82, y + 24) # item chart for quadrant in range(1, 5): ty = y + 1 if quadrant < 3 else y + 23 t_range = list(range(1, 9)) # Left teeth are in left to right order if quadrant in (2, 3): x_offset = 226 else: x_offset = 98 t_range.reverse() # reverse for the right side for i, toothno in enumerate(t_range): tooth = "item%s_chart_%s%s" % (row + 1, quadrant, toothno) x = i * 15 + x_offset RECTS[tooth] = S_BOX.translated(x, ty) OPTION = QtGui.QTextOption(QtCore.Qt.AlignCenter) class GP17iFront(PrintedForm): ''' a class to set up and print a GP17 (tooth specific version) ''' NAME = "GP17(1) Front" data = None unhandled_ts_codes = [] unhandled_codes = [] _bg_pixmap = None def __init__(self, parent=None): PrintedForm.__init__(self, parent) self.row = 1 self.rects = RECTS @classmethod def is_active(self): return "neil" in os.path.expanduser("~") or \ QtCore.QDate.currentDate() >= QtCore.QDate(2013, 7, 1) def set_data(self, data): self.data = data self.unhandled_ts_codes = [] self.unhandled_codes = [] @property def BACKGROUND_IMAGE(self): if self._bg_pixmap is None: self._bg_pixmap = QtGui.QPixmap( os.path.join(localsettings.RESOURCE_DIR, "gp17-1", "front.png")) return self._bg_pixmap def print_(self): self.set_offset( gp17config.GP17i_OFFSET_LEFT, gp17config.GP17i_OFFSET_TOP) self.set_scaling(gp17config.GP17i_SCALE_X, gp17config.GP17i_SCALE_Y) painter = PrintedForm.print_(self) self._fill(painter) def _fill(self, painter): if self.data is None: return serifFont = QtGui.QFont("Courier", 12) serifFont.setBold(True) painter.setPen(QtGui.QPen(QtCore.Qt.black, 1)) painter.setFont(serifFont) for func_ in ( self._fill_surname, self._fill_forename, self._fill_dob, self._fill_sex, self._fill_pid, self._fill_accd, self._fill_cmpd, self._fill_pftr, self._fill_stampbox, self._fill_previous_surname, self._fill_address, self._fill_charting, self._fill_bpe, # self._fill_misc_cbs, self._fill_common_codes, self._fill_tooth_specific_codes, # self._fill_complex_codes self._fill_unhandled_codes, ): painter.save() # painter.translate(self.off_set) func_(painter) painter.restore() def _fill_surname(self, painter): for i in range(14): rect = self.rects["surname_%02d" % i] try: painter.drawText(rect, self.data.pt.sname[i], OPTION) except IndexError: break def _fill_forename(self, painter): for i in range(14): rect = self.rects["forename_%02d" % i] try: painter.drawText(rect, self.data.pt.fname[i], OPTION) except IndexError: break def _fill_dob(self, painter): for i in range(8): rect = self.rects["dob_%d" % i] try: painter.drawText(rect, self.data.dob[i], OPTION) except IndexError: break def _fill_sex(self, painter): sex = self.data.pt.sex if sex == "M": painter.drawText(self.rects["male"], "M", OPTION) elif sex == "F": painter.drawText(self.rects["female"], "F", OPTION) else: print("UNKNOWN SEX for GP17!") def _fill_pid(self, painter): for i in range(10): rect = self.rects["chi_%02d" % i] try: painter.drawText(rect, self.data.identifier[i], OPTION) except IndexError: break def _fill_previous_surname(self, painter): for i in range(10): rect = self.rects["prev_sno_%02d" % i] try: painter.drawText(rect, self.data.previous_sname[i], OPTION) except IndexError: break def _fill_stampbox(self, painter): painter.drawText(self.rects["stampbox"], self.data.stamp_text) def _fill_address(self, painter): for i in range(14): rect = self.rects["addr1_%02d" % i] try: painter.drawText(rect, self.data.addr1[i], OPTION) except IndexError: break for i in range(14): rect = self.rects["addr2_%02d" % i] try: painter.drawText(rect, self.data.addr2[i], OPTION) except IndexError: break for i in range(14): rect = self.rects["addr3_%02d" % i] try: painter.drawText(rect, self.data.addr3[i], OPTION) except IndexError: break for i in range(7): rect = self.rects["pcde_%d" % i] try: painter.drawText(rect, self.data.pcde[i], OPTION) except IndexError: break def _fill_accd(self, painter): for i in range(8): rect = self.rects["accd_%02d" % i] try: painter.drawText(rect, self.data.accd[i], OPTION) except IndexError: break def _fill_cmpd(self, painter): for i in range(8): rect = self.rects["cmpd_%02d" % i] try: painter.drawText(rect, self.data.cmpd[i], OPTION) except IndexError: break def _fill_pftr(self, painter): if self.data.pftr: rect = self.rects["pftr"] painter.drawText(rect, "X", OPTION) def _fill_charting(self, painter): if not self.data.show_chart: return painter.save() painter.setBrush(QtGui.QBrush(QtCore.Qt.black)) for quadrant in range(1, 9): for tooth in range(1, 9): if quadrant > 4 and tooth > 5: continue if not self.data.tooth_present(quadrant, tooth): tooth_id = "%s%s" % (quadrant, tooth) rect = self.rects["chart_%s" % tooth_id] painter.drawRect(rect.adjusted(0, 2, 0, -2)) painter.restore() def _fill_bpe(self, painter): for i in range(6): rect = self.rects["bpe_%02d" % i] try: painter.drawText(rect, self.data.bpe[i], OPTION) except IndexError: break def _fill_misc_cbs(self, painter): for key in [ "on_referral", "not_extending", "special_needs", "on_referral", "radiographs", "models", "trauma"]: if self.data.misc_dict.get(key, False): rect = self.rects[key] painter.drawText(rect, "X", OPTION) def _fill_common_codes(self, painter): ''' exams, perio, small xrays, special trays ''' for code, number in self.data.common_codes.items(): if code == "0201": # small xrays could be multiple n_string = "%02d" % number try: painter.drawText( self.rects["rad_01"], n_string[0], OPTION) painter.drawText( self.rects["rad_02"], n_string[1], OPTION) except KeyError: print("unable to claim code %s" % code) else: try: painter.drawText(self.rects[code], "X", OPTION) except KeyError: print("unable to claim code %s" % code) def _fill_tooth_specific_codes(self, painter): row = 1 for code, teeth in self.data.tooth_specific_codes.items(): if row > 9: self.unhandled_ts_codes.append(code) continue for i in range(4): painter.drawText( self.rects["item%s_code%02d" % (row, i)], code[i], OPTION) painter.save() for tooth in teeth: painter.setBrush(QtGui.QBrush(QtCore.Qt.black)) painter.drawRect(self.rects["item%s_chart_%s" % (row, tooth)]) painter.restore() row += 1 def _fill_complex_codes(self, painter): for code in self.data.complex_codes: if code.free_replace: self.unhandled_codes.append(code) continue try: n = "%02d" % code.number painter.drawText(self.rects["%sa" % code.code], n[0], OPTION) painter.drawText(self.rects["%sb" % code.code], n[1], OPTION) except KeyError: self.unhandled_codes.append(code) def _fill_unhandled_codes(self, painter): for item in self.unhandled_ts_codes: print("unhandled tooth specific code", item) for item in self.unhandled_codes: print("unhandled item code", item) if __name__ == "__main__": os.chdir(os.path.expanduser("~")) # for print to file from openmolar.qt4gui.printing.gp17.gp17_data import Gp17Data data = Gp17Data(testing_mode=True) app = QtWidgets.QApplication([]) form = GP17iFront() form.set_data(data) form.set_testing_mode(True) form.set_background_mode(True) form.controlled_print() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/__init__.py0000755000175000017500000000312412710144046024671 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/accountPrint.py0000644000175000017500000001777712723566041025632 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools.db_settings import SettingsFetcher class AccountLetter(object): ''' this class provides a letter asking for settlement of an account''' def __init__(self, title, fname, sname, addresslines, postcode, amount, parent=None): self.parent = parent self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A5) self.pdfprinter = QtPrintSupport.QPrinter() self.pdfprinter.setPaperSize(QtPrintSupport.QPrinter.A5) self.title = title self.fname = fname self.sname = sname self.addresslines = addresslines self.postcode = postcode self.amount = localsettings.formatMoney(amount) self.tone = "A" self.previousCorrespondenceDate = "" self.requireDialog = True self.sf = SettingsFetcher() def setTone(self, arg): '''determines how aggressive the letter is''' if arg in ("A", "B", "C"): self.tone = arg def setPreviousCorrespondenceDate(self, arg): self.previousCorrespondenceDate = arg def dialogExec(self): dl = QtPrintSupport.QPrintDialog(self.printer, self.parent) return dl.exec_() def print_(self): if self.requireDialog and not self.dialogExec(): return False self.pdfprinter.setOutputFormat(QtPrintSupport.QPrinter.PdfFormat) self.pdfprinter.setOutputFileName(localsettings.TEMP_PDF) for printer in (self.printer, self.pdfprinter): AddressMargin = 80 LeftMargin = 50 TopMargin = 80 sansFont = QtGui.QFont("Helvetica", 9) sansLineHeight = QtGui.QFontMetrics(sansFont).height() serifFont = QtGui.QFont("Times", 10) serifLineHeight = QtGui.QFontMetrics(serifFont).height() sigFont = QtGui.QFont("Lucida Handwriting", 8) painter = QtGui.QPainter(printer) pageRect = printer.pageRect() painter.save() painter.setPen(QtCore.Qt.black) painter.setFont(sansFont) x, y = AddressMargin, TopMargin + 50 painter.drawText( x, y, "%s %s %s" % (self.title.title(), self.fname.title(), self.sname.title())) y += sansLineHeight for line in self.addresslines: if line: painter.drawText(x, y, str(line).title() + ",") y += sansLineHeight if self.postcode: painter.drawText(x, y, self.postcode.upper() + ".") # postcode y += serifLineHeight painter.setFont(serifFont) x, y = LeftMargin, (pageRect.height() * 0.35) painter.drawText(x + 250, y, QtCore.QDate.currentDate().toString( localsettings.QDATE_FORMAT)) y += sansLineHeight y += serifLineHeight painter.drawText( x, y, "Dear %s %s," % (self.title.title(), self.sname.title())) y += serifLineHeight * 1.5 if self.tone == "C": painter.drawText( x, y, _("STATEMENT OF ACCOUNT - FINAL REMINDER")) y += serifLineHeight * 1.2 painter.drawText( x, y, _("We are concerned that despite previous " "correspondence,")) y += serifLineHeight painter.drawText( x, y, _("your account still stands as follows: ")) else: painter.drawText( x, y, _("Please note that your account stands as follows:- ")) y += serifLineHeight * 1.5 painter.drawText(x, y, _("Amount : %s") % self.amount) y += serifLineHeight * 2 if self.tone == "A": painter.drawText(x, y, _("This amount is now due in full. *")) elif self.tone == "B": d = self.previousCorrespondenceDate if d == "" or d is None: painter.drawText( x, y, "%s %s" % ( _("A previous account was sent out to you on"), d)) y += serifLineHeight painter.drawText( x, y, _("It would be appreciated if you would settle this " "matter as soon as possible.")) else: painter.drawText( x, y, _("It would be appreciated if this account is " "settled within seven days.")) y += serifLineHeight painter.drawText( x, y, _("On this deadline, we will pass this debt to")) y += serifLineHeight painter.drawText( x, y, "%s %s" % (self.sf.debt_collector, _("for collection."))) y += serifLineHeight * 2 painter.drawText(x, y, _("Yours Sincerely,")) y += serifLineHeight * 1.5 painter.setFont(sigFont) painter.drawText(x, y + 30, self.sf.practice_name) y = pageRect.height() - 120 painter.drawLine(x, y, pageRect.width() - (2 * AddressMargin), y) y += 2 font = QtGui.QFont("Helvetica", 7) font.setItalic(True) painter.setFont(font) option = QtGui.QTextOption(QtCore.Qt.AlignCenter) option.setWrapMode(QtGui.QTextOption.WordWrap) painter.drawText( QtCore.QRectF(x, y, pageRect.width() - (2 * AddressMargin), 31), "* %s" % self.sf.account_footer, option) painter.restore() return True if __name__ == "__main__": import sys localsettings.initiate() app = QtWidgets.QApplication(sys.argv) account = AccountLetter( 'TITLE', 'FNAME', 'SNAME', ("MY STREET", 'MY VILLAGE', '', '', 'Inverness-shire'), 'IV2 222', "80.00") account.setTone("B") account.print_() account.setTone("C") account.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/apptcardPrint.py0000644000175000017500000001101212710146666025747 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings class Card(object): def __init__(self, parent=None): self.parent = parent self.printer = QtPrintSupport.QPrinter() self.pt = None self.appts = () def setProps(self, patient, appts=()): self.pt = patient self.appts = appts def print_(self): dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if not dialog.exec_(): return self.printer.setPaperSize(QtPrintSupport.QPrinter.A5) painter = QtGui.QPainter(self.printer) pageRect = self.printer.pageRect() painter.setPen(QtCore.Qt.black) font = QtGui.QFont("Times", 11) fm = QtGui.QFontMetrics(font) fontLineHeight = fm.height() painter.setFont(font) rect = QtCore.QRectF(pageRect.width() / 6, pageRect.height() / 20, pageRect.width() * 5 / 6, pageRect.height() / 3) text = "%s %s %s\n%s\n" % ( self.pt.title, self.pt.fname, self.pt.sname, self.pt.address) text += "Our ref %d\n\n" % self.pt.serialno painter.drawText(rect, text) option = QtGui.QTextOption(QtCore.Qt.AlignCenter) option.setWrapMode(QtGui.QTextOption.WordWrap) y = pageRect.height() / 3 painter.drawLine(0, int(y), int(pageRect.width()), int(y)) y += fontLineHeight * 1.5 font.setBold(True) painter.setFont(font) rect = QtCore.QRectF(0, y, pageRect.width(), fontLineHeight * 1.5) painter.drawText(rect, "You have the following appointments with us", option) font.setBold(False) painter.setFont(font) for appt in self.appts: y += fontLineHeight * 1.5 atime = localsettings.wystimeToHumanTime(appt.atime) adate = localsettings.longDate(appt.date) text = "%s - %s with %s" % (atime, adate, appt.dent_inits) rect = QtCore.QRectF(0, y, pageRect.width(), fontLineHeight * 1.5) painter.drawText(rect, text, option) y = pageRect.height() * 2 / 3 painter.drawLine(0, int(y), int(pageRect.width()), int(y)) font.setItalic(True) painter.setFont(font) rect = QtCore.QRectF(0, y, pageRect.width(), pageRect.height() * 1 / 3) painter.drawText(rect, localsettings.APPOINTMENT_CARD_FOOTER, option) if __name__ == "__main__": import sys localsettings.initiate(False) app = QtWidgets.QApplication(sys.argv) mycard = Card() print(mycard.printer.getPageMargins(QtPrintSupport.QPrinter.Millimeter)) from openmolar.dbtools import patient_class from openmolar.dbtools import appointments pt = patient_class.patient(11956) appts = appointments.get_pts_appts(pt, True) mycard.setProps(pt, appts) mycard.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/bookprint.py0000644000175000017500000000510112710146776025147 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets class printBook(object): ''' initiates with an image (chart) as the argument ''' def __init__(self, html, parent=None): self.parent = parent self.html = html self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A4) def printpage(self, askfirst=True): dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if askfirst and not dialog.exec_(): return # print dir(self.printer) document = QtGui.QTextDocument() document.setHtml(self.html) document.print_(self.printer) if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) form = printBook("

    This is a Test

    " "I trust it worked?

    ") form.printpage(True) # show a dialog for testing purposes app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/bulk_mail.py0000644000175000017500000004753612710144046025105 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import os import re from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.qt4gui.compiled_uis import Ui_bulkmail_options LOGGER = logging.getLogger("openmolar") DATE_FORMAT = "MMMM, yyyy" DEBUG = False SALUTATION = _("Dear") BODY = '''%s\n%s''' % ( _("We are writing to inform you that your dental examination is now due."), _("Please contact the surgery to arrange an appointment. *") ) FAMILY_BODY = '''%s\n%s''' % ( _("We are writing to inform you that your dental examinations " "are now due."), _("Please contact the surgery to arrange suitable appointments. *"), ) SIGN_OFF = _("Yours sincerely,") PS_TEXT = _('* P.S If you already have a future appointment with us - ' 'please accept our apologies and ignore this letter.') FOOTER = _('We are currently accepting new patients to the practice.' 'We would be delighted if you would recommend us to your ' 'friends and family.') try: filepath = os.path.join(localsettings.LOCALFILEDIRECTORY, "recall_footer.txt") f = open(filepath, "r") CUSTOM_TEXT = f.read() f.close() except IOError: LOGGER.warning("no recall footer found in '%s'" % filepath) CUSTOM_TEXT = "" class OMLetter(object): def __init__(self, recipients): self.recipients = recipients @property def head(self): return self.recipients[0] @property def recd(self): return self.head.recd @property def _topline(self): head = self.head line_ = "%s %s %s" % ( head.title, head.fname.strip(), head.sname.strip() ) for r in self.recipients[1:]: if r.age > 18: line_ += "\n%s %s %s" % (r.title, r.fname, r.sname) else: line_ += ", %s" % (r.fname) if ", " in line_: i = line_.rindex(", ") line_ = "%s and%s" % (line_[:i], line_[i + 1:]) return line_ @property def address(self): head = self.head address_ = '%s\n%s\n%s\n%s\n%s\n%s\n%s' % ( self._topline, head.addr1.title(), head.addr2.title(), head.addr3.title(), head.town, head.county, head.pcde) while re.search(" *\n *\n", address_): address_ = re.sub(" *\n\n", "\n", address_) return address_ @property def subjects(self): subjects_ = [] for r in self.recipients: subjects_.append("%s %s %s - %s %s" % ( r.title, r.fname, r.sname, _("our ref"), r.serialno)) return subjects_ @property def subject_text(self): text = "" for subject in self.subjects: text += "%s\n" % subject return text @property def is_family(self): return len(self.recipients) > 1 @property def salutation(self): if self.is_family: salut_ = _("Patients") elif self.head.age < 18: salut_ = self.head.fname else: salut_ = "%s %s" % (self.head.title, self.head.sname.strip()) return "%s %s," % (SALUTATION, salut_) @property def text(self): if self.is_family: return FAMILY_BODY return BODY class TreeItem(object): def __init__(self, data, parent=None): self.parentItem = parent self.itemData = data self.childItems = [] def appendChild(self, item): self.childItems.append(item) def child(self, row): return self.childItems[row] def childCount(self): return len(self.childItems) def columnCount(self): return len(self.itemData) def data(self, column): try: return self.itemData[column] except IndexError: return None def parent(self): return self.parentItem def row(self): if self.parentItem: return self.parentItem.childItems.index(self) return 0 class treeModel(QtCore.QAbstractItemModel): def __init__(self, header, mydata): super().__init__() self.FAMILYICON = QtGui.QIcon() self.FAMILYICON.addPixmap(QtGui.QPixmap(":/agt_family.png")) self.rootItem = TreeItem(header) self.setupModelData(mydata, self.rootItem) def columnCount(self, parent): if parent.isValid(): return parent.internalPointer().columnCount() else: return self.rootItem.columnCount() def data(self, index, role): if not index.isValid(): return None item = index.internalPointer() if role == QtCore.Qt.DisplayRole: return item.data(index.column()) elif role == QtCore.Qt.DecorationRole and index.column() == 1: if item.itemData.grouped: return self.FAMILYICON elif role == QtCore.Qt.BackgroundRole: if item.itemData.grouped: if item.itemData.letterno % 2: return QtGui.QBrush(QtGui.QColor(190, 190, 190)) else: return QtGui.QBrush(QtGui.QColor(160, 160, 160)) else: return None elif role == QtCore.Qt.UserRole: # a user role which simply returns the python object return item.itemData return None def flags(self, index): if not index.isValid(): return QtCore.Qt.NoItemFlags return QtCore.Qt.ItemIsEnabled | QtCore.Qt.ItemIsSelectable def headerData(self, section, orientation, role): if (orientation == QtCore.Qt.Horizontal and role == QtCore.Qt.DisplayRole): return self.rootItem.data(section) return None def index(self, row, column, parent): if not self.hasIndex(row, column, parent): return QtCore.QModelIndex() if not parent.isValid(): parentItem = self.rootItem else: parentItem = parent.internalPointer() childItem = parentItem.child(row) if childItem: return self.createIndex(row, column, childItem) else: return QtCore.QModelIndex() def parent(self, index): if not index.isValid(): return QtCore.QModelIndex() childItem = index.internalPointer() parentItem = childItem.parent() if parentItem == self.rootItem: return QtCore.QModelIndex() return self.createIndex(parentItem.row(), 0, parentItem) def rowCount(self, parent): if parent.column() > 0: return 0 if not parent.isValid(): parentItem = self.rootItem else: parentItem = parent.internalPointer() return parentItem.childCount() def setupModelData(self, lines, parent): parents = [parent] indentations = [0] letterNo = 0 for lineData in lines: position = 0 if lineData[0] == letterNo: position = 1 letterNo = lineData[0] if position > indentations[-1]: if parents[-1].childCount() > 0: parents.append( parents[-1].child(parents[-1].childCount() - 1)) indentations.append(position) else: while position < indentations[-1] and len(parents) > 0: parents.pop() indentations.pop() parents[-1].appendChild(TreeItem(lineData, parents[-1])) class bulkMails(object): def __init__(self, om_gui): self.om_gui = om_gui self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A4) self.headers = (_("no data loaded"),) self.recipients = () self.bulk_model = treeModel(self.headers, self.recipients) self.adate = localsettings.currentDay() self.expanded = False self.use_given_recall_date = False self.LONGDATE = True def showOptions(self): ''' user is wishing to change some default setting currently the only option is the date ''' def enableDate(checked): ''' only enable the date Edit if customRadio button is checked ''' dl.dateEdit.setEnabled(checked) dialog = QtWidgets.QDialog(self.om_gui) dl = Ui_bulkmail_options.Ui_Dialog() dl.setupUi(dialog) dl.dateEdit.setDate(localsettings.currentDay()) dl.custDate_radioButton.toggled.connect(enableDate) if dialog.exec_(): if dl.custDate_radioButton.isChecked(): self.adate = dl.dateEdit.date().toPyDate() if dl.today_radioButton.isChecked(): self.adate = localsettings.currentDay() self.use_given_recall_date = dl.recd_radioButton.isChecked() self.LONGDATE = dl.fullDate_radioButton.isChecked() self.om_gui.advise(_("options set"), 1) def expand_contract(self): ''' change the expansion state ''' self.expanded = not self.expanded if self.expanded: self.om_gui.ui.bulk_mailings_treeView.expandAll() else: self.om_gui.ui.bulk_mailings_treeView.collapseAll() self.update_expand_ButtonText() def update_expand_ButtonText(self): ''' make sure the expand / collapse button text is correct ''' if self.expanded: self.om_gui.ui.bulk_mail_expand_pushButton.setText( _("Collapse All")) else: self.om_gui.ui.bulk_mail_expand_pushButton.setText( _("Expand All")) def setData(self, headers, recipients): ''' load the recipient data ''' self.headers = headers self.recipients = recipients self.populateTree() self.expanded = False self.update_expand_ButtonText() for i in range(len(self.headers)): self.om_gui.ui.bulk_mailings_treeView.resizeColumnToContents(i) def populateTree(self): ''' load the bulk mailing tree view ''' self.bulk_model = treeModel(self.headers, self.recipients) self.om_gui.ui.bulk_mailings_treeView.setModel(self.bulk_model) def iterate_letters(self): ''' iterate over the letters ''' letters = {} for recipient in self.recipients: if recipient.letterno in letters: letters[recipient.letterno].append(recipient) else: letters[recipient.letterno] = [recipient] for key in sorted(letters): recipients = letters[key] letter = OMLetter(recipients) yield letter def selected(self, index): ''' emit the serialno of the selected row ''' try: # item = index.internalPointer() pt = self.bulk_model.data(index, QtCore.Qt.UserRole) print(pt.serialno) return pt.serialno except IndexError: print("selected bulk mail out of range") def print_(self): dialog = QtPrintSupport.QPrintDialog(self.printer, self.om_gui) if not dialog.exec_(): return font = QtGui.QFont("Helvetica", 11) fm = QtGui.QFontMetrics(font) line_height = fm.height() italic_font = QtGui.QFont(font) italic_font.setItalic(True) sigFont = QtGui.QFont("URW Chancery L", 18) sigFont.setBold(True) sig_font_height = QtGui.QFontMetrics(sigFont).height() * 1.2 pageRect = self.printer.pageRect() LEFT = 60 RIGHT = 80 TOP = 170 RECT_WIDTH = pageRect.width() - (LEFT + RIGHT) ADDRESS_LEFT = 80 ADDRESS_HEIGHT = 140 FOOTER_HEIGHT = 180 DATE_HEIGHT = 2 * line_height BODY_HEIGHT = pageRect.height() - ( TOP + ADDRESS_HEIGHT + FOOTER_HEIGHT + DATE_HEIGHT) addressRect = QtCore.QRectF(ADDRESS_LEFT, TOP, 300, ADDRESS_HEIGHT) dateRect = QtCore.QRectF(LEFT, addressRect.bottom(), RECT_WIDTH, DATE_HEIGHT) bodyRect = QtCore.QRectF(LEFT, dateRect.bottom(), RECT_WIDTH, BODY_HEIGHT) footerRect = QtCore.QRectF(LEFT, pageRect.height() - FOOTER_HEIGHT, RECT_WIDTH, FOOTER_HEIGHT) painter = QtGui.QPainter(self.printer) first_page = True page_no = 0 for letter in self.iterate_letters(): page_no += 1 if dialog.printRange() == dialog.PageRange: if page_no < dialog.fromPage(): continue if dialog.toPage() != 0 and page_no > dialog.toPage(): continue if not first_page: self.printer.newPage() first_page = False painter.save() painter.setFont(font) painter.setPen(QtCore.Qt.black) option = QtGui.QTextOption(QtCore.Qt.AlignLeft) option.setWrapMode(QtGui.QTextOption.WordWrap) # address painter.drawText(addressRect, letter.address, option) if DEBUG: painter.drawRect(addressRect.adjusted(2, 2, -2, -2)) # date if self.use_given_recall_date: pdate = letter.recd else: pdate = self.adate if self.LONGDATE: pdate_str = localsettings.longDate(pdate) else: pdate_str = "%s %s" % (localsettings.monthName(pdate), pdate.year) painter.drawText(dateRect, pdate_str, QtGui.QTextOption(QtCore.Qt.AlignRight)) if DEBUG: painter.drawRect(dateRect.adjusted(2, 2, -2, -2)) # salutation rect = bodyRect.adjusted( 0, 0, 0, 2 * line_height - bodyRect.height()) painter.drawText(rect, letter.salutation, option) if DEBUG: painter.drawRect(rect.adjusted(2, 2, -2, -2)) # subject # option = QtGui.QTextOption(QtCore.Qt.AlignCenter) font.setBold(True) painter.setFont(font) subject_count = len(letter.subjects) + 1 rect = QtCore.QRectF( rect.bottomLeft().x(), rect.bottomLeft().y(), bodyRect.width(), line_height * subject_count) subj_rect = rect.adjusted(50, 0, -50, 0) painter.drawText(subj_rect, letter.subject_text, option) if DEBUG: painter.drawRect(subj_rect.adjusted(2, 2, -2, -2)) font.setBold(False) painter.setFont(font) # body line_count = letter.text.count("\n") + 3 body_rect = QtCore.QRectF( rect.bottomLeft().x(), subj_rect.bottomLeft().y(), bodyRect.width(), line_height * line_count) painter.drawText(body_rect, letter.text, option) if DEBUG: painter.drawRect(body_rect.adjusted(2, 2, -2, -2)) # custom line_count = CUSTOM_TEXT.count("\n") + 5 custom_rect = QtCore.QRectF( body_rect.bottomLeft().x(), body_rect.bottomLeft().y(), bodyRect.width(), line_height * line_count) painter.setFont(font) painter.drawText(custom_rect, CUSTOM_TEXT, option) if DEBUG: painter.drawRect(custom_rect.adjusted(2, 2, -2, -2)) # signature # place signature immediately after the body # + custom text (which will vary) sign_off_rect = QtCore.QRectF( custom_rect.bottomLeft().x(), custom_rect.bottomLeft().y(), body_rect.width(), line_height * 1.5) painter.drawText(sign_off_rect, SIGN_OFF, option) if DEBUG: painter.drawRect(sign_off_rect.adjusted(2, 2, -2, -2)) sig_rect = sign_off_rect.adjusted( 20, sign_off_rect.height(), 0, sig_font_height) painter.save() painter.setFont(sigFont) painter.drawText(sig_rect, localsettings.PRACTICE_NAME, option) if DEBUG: painter.drawRect(sig_rect.adjusted(2, 2, -2, -2)) painter.restore() # ps line_count = PS_TEXT.count("\n") + 2 ps_rect = QtCore.QRectF( body_rect.bottomLeft().x(), sig_rect.bottomLeft().y() + line_height*2, bodyRect.width(), line_height * line_count) painter.setFont(font) painter.drawText(ps_rect, PS_TEXT, option) if DEBUG: painter.drawRect(ps_rect.adjusted(2, 2, -2, -2)) # footer option = QtGui.QTextOption(QtCore.Qt.AlignHCenter) option.setWrapMode(QtGui.QTextOption.WordWrap) painter.drawLine(footerRect.topLeft(), footerRect.topRight()) painter.setFont(italic_font) painter.drawText(footerRect, FOOTER, option) if DEBUG: painter.drawRect(footerRect.adjusted(2, 2, -2, -2)) # fold marks pen = QtGui.QPen(QtGui.QBrush(QtCore.Qt.black), 3) painter.setPen(pen) top_fold_y = pageRect.height() / 3 painter.drawLine(0, top_fold_y, 10, top_fold_y) top_fold_y = pageRect.height() * 2 / 3 painter.drawLine(0, top_fold_y, 10, top_fold_y) painter.restore() if __name__ == "__main__": DEBUG = True localsettings.station = "reception" app = QtWidgets.QApplication([]) os.chdir(os.environ.get("HOME", ".")) from openmolar.qt4gui import maingui from openmolar.dbtools import recall om_gui = maingui.OpenmolarGui() conditions = "new_patients.serialno=%s" values = (1,) patients = recall.getpatients(conditions, values) letters = bulkMails(om_gui) # letters.showOptions() letters.setData(recall.HEADERS, patients) letters.print_() app.closeAllWindows() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/chartPrint.py0000644000175000017500000000567112710147071025257 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import sys from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets class printChart(object): '''initiates with an image (chart) as the argument''' def __init__(self, chartimage, landscape=False, parent=None): self.parent = parent self.image = chartimage self.printer = QtPrintSupport.QPrinter() if landscape: self.printer.setOrientation(QtPrintSupport.QPrinter.Landscape) self.printer.setPaperSize(QtPrintSupport.QPrinter.A4) def sizeToFit(self): ''' make the image fill the page ''' rect = self.printer.pageRect() self.image = self.image.scaled(rect.width(), rect.height()) def printpage(self, askfirst=True): ''' print the chart ''' dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if askfirst and not dialog.exec_(): return painter = QtGui.QPainter(self.printer) painter.save() y = 0 x = 0 painter.drawPixmap(x, 0, self.image) y += self.image.height() painter.restore() if __name__ == "__main__": app = QtWidgets.QApplication(sys.argv) chart = QtGui.QPixmap("images/testchart.png") form = printChart(chart) form.printpage(True) # show a dialog for testing purposes sys.exit(app.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/daylistprint.py0000644000175000017500000001630312710147147025665 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings class PrintDaylist(object): def __init__(self, parent=None): self.parent = parent self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A4) self.dates = [] self.dentist = [] self.dayMemo = [] self.apps = [] def addDaylist(self, date, dentist, apps): self.dates.append(date.toString()) self.dentist.append(localsettings.apptix_reverse[dentist]) self.dayMemo.append(apps[0]) self.apps.append(apps[1:]) def print_(self, expanded=False): ''' if expanded, the list will fill the page ''' dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if not dialog.exec_(): return # leave space at the bottom for notes? LeftMargin, RightMargin, TopMargin, BottomMargin = 30, 30, 30, 100 sansFont = QtGui.QFont("Helvetica", 9) fm = QtGui.QFontMetrics(sansFont) pageWidth = self.printer.pageRect().width() - LeftMargin - RightMargin painter = QtGui.QPainter(self.printer) option_center = QtGui.QTextOption(QtCore.Qt.AlignCenter) option_right = QtGui.QTextOption( QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter) option_topright = QtGui.QTextOption(QtCore.Qt.AlignRight) for page, date_ in enumerate(self.dates): painter.save() rowCount = len(self.apps[page]) if not expanded: rowHeight = fm.height() else: pageHeight = self.printer.pageRect( ).height() - TopMargin - BottomMargin rowHeight = pageHeight / \ (rowCount + 3) # +3 allows for headings # get col widths. colwidths = {} # start,end,name,serialno,code0,code1,code2,note for app in self.apps[page]: # get widths app_tup = ("88888", "(888 mins)", app.name, "88888", "888", app.treat, app.note) for i, att in enumerate(app_tup): w = fm.width(str(att)) try: if colwidths[i] < w: colwidths[i] = w except KeyError: colwidths[i] = w total = sum(colwidths.values()) for i in range(len(colwidths)): colwidths[i] = colwidths[i] * pageWidth / total x, y = LeftMargin, TopMargin painter.setPen(QtCore.Qt.black) painter.setFont(sansFont) rect = QtCore.QRectF(x, y, pageWidth, rowHeight) now = QtCore.QDateTime.currentDateTime().toString() painter.drawText( rect, "%s %s %s" % (_("Daylist for"), self.dentist[page], self.dayMemo[page]), option_center) y += rowHeight rect = QtCore.QRectF(x, y, pageWidth, rowHeight) painter.drawText(rect, date_, option_center) y += rowHeight * 1.5 painter.setBrush(QtGui.QColor("#eeeeee")) for i, column in enumerate((_("Start"), _("Len"), _("Name"), _("No."), _(""), _("Treat"), _("memo"))): rect = QtCore.QRectF(x, y, colwidths[i], rowHeight) painter.drawRect(rect) painter.drawText( rect.adjusted(2, 0, -2, 0), column, option_center) x += colwidths[i] y += rowHeight painter.setBrush(QtCore.Qt.transparent) for app in self.apps[page]: app_tup = (app.start, "(%d %s)" % (app.length(), _("mins")), app.name, app.serialno, app.cset, app.treat.strip(), app.note) x = LeftMargin for i, att in enumerate(app_tup): option = option_right if i == 3 else option_center rect = QtCore.QRectF(x, y, colwidths[i], rowHeight) painter.drawRect(rect) rect = rect.adjusted(2, 0, -2, 0) if att: painter.drawText(rect, str(att), option) if i == 2 and app.mh_form_required: painter.drawText(rect, "+", option_topright) x += colwidths[i] y += rowHeight y += rowHeight rect = QtCore.QRectF(LeftMargin, y, pageWidth, rowHeight) painter.drawText(rect, "%s %s" % (_("Printed"), now), option) if page < len(self.dates) - 1: self.printer.newPage() painter.restore() if __name__ == "__main__": import datetime import os import sys from openmolar.dbtools import appointments localsettings.initiate() os.chdir(os.path.expanduser("~")) app = QtWidgets.QApplication(sys.argv) d = datetime.date.today() apps = appointments.printableDaylistData(d, 4) p = PrintDaylist() p.addDaylist(QtCore.QDate.currentDate(), 4, apps) p.print_(True) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/estimatePrint.py0000644000175000017500000001552512710157337025776 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings class EstimateLetter(object): def __init__(self, parent=None): self.parent = parent self.setProps() self.estItems = [] self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A5) self.pdfprinter = QtPrintSupport.QPrinter() self.pdfprinter.setPaperSize(QtPrintSupport.QPrinter.A5) def setProps(self, tit="", fn="", sn="", serialno=0): self.title = tit self.fname = fn self.sname = sn self.ourref = serialno def setEsts(self, ests): self.estItems = ests def print_(self): dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if not dialog.exec_(): return self.pdfprinter.setOutputFormat(QtPrintSupport.QPrinter.PdfFormat) self.pdfprinter.setOutputFileName(localsettings.TEMP_PDF) for printer in (self.printer, self.pdfprinter): LeftMargin = 50 TopMargin = 150 serifFont = QtGui.QFont("Times", 11) fm = QtGui.QFontMetrics(serifFont) serifLineHeight = fm.height() painter = QtGui.QPainter(printer) pageRect = printer.pageRect() painter.setPen(QtCore.Qt.black) painter.setFont(serifFont) alignRight = QtGui.QTextOption(QtCore.Qt.AlignRight) x, y = LeftMargin, TopMargin painter.drawText(x, y, "%s %s %s" % (self.title.title(), self.fname.title(), self.sname.title())) y += serifLineHeight painter.drawText(x, y, "Our Ref - " + str(self.ourref)) y += serifLineHeight * 1.5 mystr = 'Estimate Printed on ' w = fm.width(mystr) painter.drawText(x, y, mystr) painter.drawText(x + w, y, QtCore.QDate.currentDate().toString( localsettings.QDATE_FORMAT)) x = LeftMargin + 10 y += serifLineHeight pt_total = 0 # separate into NHS and non-NHS items. sorted_ests = {"N": [], "P": []} for est in self.estItems: if "N" in est.csetype: sorted_ests["N"].append(est) else: sorted_ests["P"].append(est) for type_, description in ( ("N", _("NHS items")), ("P", _("Private items")) ): if sorted_ests[type_]: y += serifLineHeight painter.drawText( QtCore.QRectF(x, y, 400, serifLineHeight), description) y += serifLineHeight for est in sorted_ests[type_]: pt_total += est.ptfee number = est.number item = est.description amount = est.ptfee # print number,item,amount mult = "" if number > 1: mult = "s" item = item.replace("*", mult) item = item.replace("^", "") painter.drawText(QtCore.QRectF(x, y, 60, serifLineHeight), str(number)) painter.drawText( QtCore.QRectF(x + 60, y, 280, serifLineHeight), item) painter.drawText( QtCore.QRectF(x + 280, y, 100, serifLineHeight), localsettings.formatMoney(amount), alignRight) y += serifLineHeight y += serifLineHeight # 280+100=280 painter.drawLine(int(x), int(y), int(x) + 380, int(y)) y += serifLineHeight * 1.5 painter.drawText(QtCore.QRectF(x, y, 180, serifLineHeight), _("TOTAL")) painter.drawText(QtCore.QRectF(x + 280, y, 100, serifLineHeight), localsettings.formatMoney(pt_total), alignRight) y += serifLineHeight * 4 font = QtGui.QFont("Helvetica", 7) font.setItalic(True) painter.setFont(font) option = QtGui.QTextOption(QtCore.Qt.AlignCenter) option.setWrapMode(QtGui.QTextOption.WordWrap) painter.drawText( QtCore.QRectF(0, y, pageRect.width(), 31), _("Please note, this estimate may be subject to change if " "clinical circumstances dictate."), option) return True if __name__ == "__main__": localsettings.initiate(False) from openmolar.dbtools import patient_class from openmolar.ptModules import estimates pt = patient_class.patient(23664) app = QtWidgets.QApplication([]) myreceipt = EstimateLetter() myreceipt.title = pt.title myreceipt.fname = pt.fname myreceipt.sname = pt.sname myreceipt.ourref = pt.serialno myreceipt.estItems = estimates.sorted_estimates(pt.estimates) myreceipt.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/letterprint.py0000644000175000017500000000476012710147241025512 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets class letter(object): def __init__(self, html, parent=None): self.parent = parent self.html = html self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A4) def printpage(self, askfirst=True): dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if askfirst and not dialog.exec_(): return False document = QtGui.QTextDocument() document.setHtml(self.html) document.print_(self.printer) return True if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) form = letter('''

    This is a Test of referralprint.py

    I trust it worked?

    ''') form.printpage(True) # show a dialog for testing purposes app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/mh_print.py0000644000175000017500000005017512710144046024757 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools.medhist import get_mh MARGIN_LEFT = 25 MARGIN_RIGHT = 25 MARGIN_TOP = 20 MARGIN_BOTTOM = 30 # alter this to print rectangles DEBUG = False class MHPrint(object): ''' A class to print the MH form for a patient ''' date_ = None mh = None def __init__(self, pt, parent): self.pt = pt self.parent = parent self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A4) if self.parent.include_mh: self.mh = get_mh(self.pt.serialno) @property def date_text(self): ''' the date to be printed on the form. ''' if not self.date_: return localsettings.formatDate(localsettings.currentDay()) else: return localsettings.formatDate(self.date_) def print_(self): ''' print the MH form ''' def bold_on(bold=True): font = painter.font() font.setBold(bold) painter.setFont(font) def bold_off(): bold_on(False) def italic_on(italic=True): font = painter.font() font.setItalic(italic) painter.setFont(font) def italic_off(): italic_on(False) def print_line(y, left=0, colspan=12, dotted=True): ''' print a line ''' bottom_y = y + line_height left_point = QtCore.QPointF( MARGIN_LEFT + left * col_width, bottom_y) right_point = QtCore.QPointF( MARGIN_LEFT + (left + colspan) * col_width, bottom_y) painter.save() if dotted: pen = painter.pen() pen.setStyle(QtCore.Qt.DotLine) painter.setPen(pen) painter.drawLine(left_point, right_point) painter.restore() def print_text(text, y, left=0, colspan=12, rowspan=1, option=QtCore.Qt.AlignLeft): ''' print the text in a box ''' rect = QtCore.QRectF( MARGIN_LEFT + left * col_width, y, colspan * col_width - 5, line_height * rowspan ) if DEBUG: painter.drawRect(rect) text_option = QtGui.QTextOption(option | QtCore.Qt.AlignVCenter) # text_option.setWrapMode(text_option.NoWrap) painter.drawText(rect, text, text_option) return line_height * rowspan # return so that y can be adjusted def circle_no(y): rect = QtCore.QRectF( MARGIN_LEFT + 6.5 * col_width - 3, y - 3, painter.fontMetrics().width(_("NO")) + 4, line_height + 5 ) painter.save() pen = painter.pen() pen.setWidth(2) painter.setPen(pen) painter.drawEllipse(rect) painter.restore() def circle_yes(y): rect = QtCore.QRectF( MARGIN_LEFT + 6.5 * col_width - 4 - painter.fontMetrics().width(_("YES")), y - 3, painter.fontMetrics().width(_("YES")) + 3, line_height + 5 ) painter.save() pen = painter.pen() pen.setWidth(2) painter.setPen(pen) painter.drawEllipse(rect) painter.restore() dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if not dialog.exec_(): return page_width = self.printer.pageRect().width() - ( MARGIN_LEFT + MARGIN_RIGHT) # use a 12 column grid col_width = page_width / 12 painter = QtGui.QPainter(self.printer) pen = QtGui.QPen(QtCore.Qt.black) pen.setWidth(1) painter.setPen(pen) font = QtGui.QFont("sans", 14) font.setBold(True) painter.setFont(font) line_height = QtGui.QFontMetrics(painter.font()).height() + 15 padding = line_height / 6 y = MARGIN_TOP for value in (localsettings.PRACTICE_NAME, _("Confidential Medical History Questionaire") ): if not value: continue y += print_text(value, y, option=QtCore.Qt.AlignCenter) print_line(y, dotted=False) y += line_height + padding painter.setFont(QtGui.QFont("sans", 9)) line_height = QtGui.QFontMetrics(painter.font()).height() padding = line_height / 3 if self.pt: print_text(str(self.pt.serialno), MARGIN_TOP, 11, 1) bold_on() y += print_text(_("PLEASE CHECK/COMPLETE THESE DETAILS"), y) y += padding section_bottom = y bold_off() FIELDS = (_("Date of Birth"), _("Home tel"), _("Work tel"), _("Mobile"), _("Email"), _("Alternate Email")) if self.pt: VALUES = (localsettings.formatDate(self.pt.dob), self.pt.tel1, self.pt.tel2, self.pt.mobile, self.pt.email1, self.pt.email2) for value in ( self.pt.name, self.pt.addr1, self.pt.addr2, self.pt.addr3, self.pt.town, self.pt.county, self.pt.pcde): if value in (None, ""): continue y += print_text(value, y, 0, colspan=5) else: bold_on() print_text(_("Name & Address"), y, 0, colspan=2, option=QtCore.Qt.AlignRight) bold_off() VALUES = ("",) * len(FIELDS) y += 5 * line_height address_bottom = y y = section_bottom # move back up to print next rows for i, value in enumerate(VALUES): field = FIELDS[i] if (value in (None, "") and field in (_("Work tel"), _("Alternate Email"))): continue bold_on() print_text(field, y, 5, colspan=2, option=QtCore.Qt.AlignRight) bold_off() y += print_text(value, y, 7, colspan=5) if address_bottom > y: y = address_bottom y += line_height print_line(y, dotted=False) y += 2 * line_height bold_on() print_text(_("Please Circle"), y, 5.5, colspan=2, option=QtCore.Qt.AlignCenter) y += print_text(_("If 'YES' - Give Details"), y, 8, colspan=4, option=QtCore.Qt.AlignCenter) y += print_text(_("ARE YOU CURRENTLY?"), y, 0, colspan=6) y += padding bold_off() med_comments_y = y + 2 * \ print_text(_("Taking any prescribed medicines?"), y, 0.5, 5.5) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) print_text(_("No"), y, 6.5, colspan=1) i = 0 if self.mh and self.mh.medications: circle_yes(y) italic_on() for med in list(self.mh.medications.keys()): print_text(med, y, 7, 5, option=QtCore.Qt.AlignCenter) print_line(y, 7, 5) y += line_height + padding i += 1 italic_off() else: if self.mh: circle_no(y) for i in range(i, 5): print_line(y, 7, 5) y += line_height + padding if self.mh and self.mh.medication_comments: italic_on() print_text(self.mh.medication_comments, med_comments_y, 1, 6, 4) italic_off() y += line_height print_text(_("Carrying a Medical Warning Card?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.warning_card: italic_on() print_text(self.mh.warning_card.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding if self.pt is None or (self.pt.sex == "F" and 13 < self.pt.ageYears < 55): print_text(_("Pregnant or Breast Feeding?"), y, 0.5, 5.5) print_line(y, 7, 5) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += line_height bold_on() y += print_text(_("DO YOU SUFFER FROM?"), y, 0, colspan=6) y += padding bold_off() y += print_text( _("Allergies to Any Medicines or Substances?"), y, 0.5, 5.5) print_text(_("eg. Penicillin, aspirin or latex."), y, 2, 4) print_line(y, 7, 5) if self.mh and self.mh.allergies: italic_on() print_text(self.mh.allergies.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text( _("Bronchitis, Asthma, other Chest Conditions?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.respiratory: italic_on() print_text(self.mh.respiratory.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding y += print_text( _("Heart Problems, Angina, Blood pressure"), y, 0.5, 5.5) print_text(_("problems, or a stroke?"), y, 2, 4) print_line(y, 7, 5) if self.mh and self.mh.heart: italic_on() print_text(self.mh.heart.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text(_("Diabetes?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.diabetes: italic_on() print_text(self.mh.diabetes.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text(_("Arthritis?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.arthritis: italic_on() print_text(self.mh.arthritis.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding y += print_text( _("Bruising or persistant bleeding after"), y, 0.5, 5.5) print_text(_("surgery or tooth extraction?"), y, 2, 4) print_line(y, 7, 5) if self.mh and self.mh.bleeding: italic_on() print_text(self.mh.bleeding.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding y += print_text(_("Any Infectious Diseases"), y, 0.5, 5.5) print_text(_("(including HIV and Hepatitis)?"), y, 2, 4) print_line(y, 7, 5) if self.mh and self.mh.infectious_disease: italic_on() print_text(self.mh.infectious_disease.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding y += line_height bold_on() y += print_text(_("DID YOU, AS A CHILD OR SINCE HAVE"), y, 0, colspan=6) y += padding bold_off() print_text(_("Bacterial Endocarditis?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.endocarditis: italic_on() print_text(self.mh.endocarditis.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text(_("Liver Disease (eg. Jaundice or Hepatitis)?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.liver: italic_on() print_text(self.mh.liver.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text(_("A bad reaction to a Local or General Anaesthetic?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.anaesthetic: italic_on() print_text(self.mh.anaesthetic.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text(_("A joint replacement or other implant?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.joint_replacement: italic_on() print_text(self.mh.joint_replacement.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text(_("Heart Surgery?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.heart_surgery: italic_on() print_text(self.mh.heart_surgery.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text(_("Brain Surgery?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.brain_surgery: italic_on() print_text(self.mh.brain_surgery.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding y += print_text(_("Treatment that required you to be"), y, 0.5, 5.5) print_line(y, 7, 5) print_text(_("in Hospital?"), y, 2, 4) if self.mh and self.mh.hospital: italic_on() print_text(self.mh.hospital.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding print_text( _("A close relative with Creutzfeldt Jacob Disease?"), y, 0.5, 5.5) print_line(y, 7, 5) if self.mh and self.mh.cjd: italic_on() print_text(self.mh.cjd.lower(), y, 7, 5, option=QtCore.Qt.AlignCenter) italic_off() circle_yes(y) else: if self.mh: circle_no(y) print_text(_("Yes"), y, 5.5, colspan=1, option=QtCore.Qt.AlignRight) y += print_text(_("No"), y, 6.5, colspan=1) y += padding y += line_height print_line(y, dotted=False) y += line_height * 2 bold_on() y += print_text( _("PLEASE GIVE ANY OTHER DETAILS WHICH YOU THINK " "MAY BE RELEVANT TO YOUR DENTIST"), y) if self.mh and self.mh.other: y += line_height bold_off() italic_on() print_text(self.mh.other.lower(), y, rowspan=4) italic_off() bold_on() y = self.printer.pageRect().height() - MARGIN_BOTTOM print_text(_("Patient's Signature"), y, 0, 3) print_line(y, 3, 6) print_text(self.date_text, y, 10, 2) if __name__ == "__main__": import os os.chdir(os.path.expanduser("~")) localsettings.initiate() app = QtWidgets.QApplication([]) from openmolar.dbtools.patient_class import patient mw = QtWidgets.QWidget() mw.include_mh = True pt = patient(29833) mh_print = MHPrint(pt, mw) mh_print.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/multiDayListPrint.py0000644000175000017500000002002712710147333026573 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings class PrintDaylist(object): def __init__(self, parent=None): self.parent = parent self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A4) self.printer.setOrientation(QtPrintSupport.QPrinter.Landscape) self.dates = [] self.sheets = {} # dentist,memo,apps def addDaylist(self, date, dentist, apps): d = date.toString() if d not in self.dates: self.dates.append(d) self.sheets[d] = ([], [], []) self.sheets[d][0].append( localsettings.apptix_reverse[dentist]) # dentist self.sheets[d][1].append(apps[0]) self.sheets[d][2].append(apps[1:]) def print_(self): ''' print all. ''' dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if not dialog.exec_(): return LeftMargin, RightMargin, TopMargin, BottomMargin = 30, 30, 30, 30 AbsoluteLeft = LeftMargin sansFont = QtGui.QFont("Helvetica", 6) fm = QtGui.QFontMetrics(sansFont) pageWidth = self.printer.pageRect().width() - LeftMargin - RightMargin painter = QtGui.QPainter(self.printer) page = 0 option_center = QtGui.QTextOption(QtCore.Qt.AlignCenter) option_right = QtGui.QTextOption( QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter) option_topright = QtGui.QTextOption(QtCore.Qt.AlignRight) for date in self.dates: LeftMargin = AbsoluteLeft painter.save() books = self.sheets[date] pageCols = len(books) rowCount = 0 for book in books[2]: if len(books[2]) > rowCount: # book could be () rowCount = len(books[2]) rowHeight = fm.height() pageHeight = self.printer.pageRect( ).height() - TopMargin - BottomMargin # rowHeight=pageHeight/(rowCount+3) #+3 allows for headings book_width = ( self.printer.pageRect( ).width( ) - LeftMargin - RightMargin) / pageCols columnNo = 0 for book in books[2]: x = LeftMargin # get col widths. colwidths = {} for app in book: # trial run to get widths app_tup = ("88888", "(888)", app.name, "88888", "888", app.treat, app.note) for i, att in enumerate(app_tup): w = fm.width(str(att)) try: if colwidths[i] < w: colwidths[i] = w except KeyError: colwidths[i] = w total = sum(colwidths.values()) * 1.03 for i, w in enumerate(colwidths.values()): colwidths[i] = w * book_width / total y = TopMargin painter.setPen(QtCore.Qt.black) painter.setFont(sansFont) rect = QtCore.QRectF(x, y, book_width, rowHeight) now = QtCore.QDateTime.currentDateTime().toString() painter.drawText( rect, "%s %s %s" % (_("Daylist for"), books[0][columnNo], books[1][columnNo]), option_center) y += rowHeight rect = QtCore.QRectF(x, y, book_width, rowHeight) painter.drawText(rect, self.dates[page], option_center) y += rowHeight * 1.5 painter.setBrush(QtGui.QColor("#eeeeee")) for i, column in enumerate((_("Start"), _("Len"), _("Name"), _("No."), _(""), _("Treat"), _("memo"))): rect = QtCore.QRectF(x, y, colwidths[i], rowHeight) painter.drawRect(rect) painter.drawText( rect.adjusted(2, 0, -2, 0), column, option_center) x += colwidths[i] y += rowHeight painter.setBrush(QtCore.Qt.transparent) for app in book: # print each app! app_tup = (app.getStart(), "(%d)" % app.length(), app.name, app.serialno, app.cset, app.treat.strip(), app.note) x = LeftMargin for i, att in enumerate(app_tup): option = option_right if i == 3 else option_center rect = QtCore.QRectF(x, y, colwidths[i], rowHeight) painter.drawRect(rect) rect = rect.adjusted(2, 0, -2, 0) if att: painter.drawText(rect, str(att), option) if i == 2 and app.mh_form_required: painter.drawText(rect, "+", option_topright) x += colwidths[i] y += rowHeight LeftMargin += book_width columnNo += 1 rect = QtCore.QRectF( AbsoluteLeft, pageHeight - rowHeight, pageWidth, rowHeight) painter.drawText(rect, "Printed %s" % now, option) if page < len(self.dates) - 1: self.printer.newPage() page += 1 painter.restore() if __name__ == "__main__": import datetime import os import sys from openmolar.dbtools import appointments localsettings.initiate(False) os.chdir(os.path.expanduser("~")) app = QtWidgets.QApplication(sys.argv) d = datetime.date.today() p = PrintDaylist() for dent in [4, 6, 4]: apps = appointments.printableDaylistData(d, dent) p.addDaylist(QtCore.QDate.currentDate(), dent, apps) p.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/om_printing.py0000644000175000017500000004770312723413533025473 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides printing functions for the main gui. ''' import logging import tempfile from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings, utilities from openmolar.ptModules import estimates from openmolar.dbtools import docsprinted from openmolar.dbtools import appointments from openmolar.dbtools import patient_class from openmolar.dbtools import patient_write_changes from openmolar.dbtools import referral from openmolar.dbtools import standard_letter from openmolar.qt4gui.compiled_uis import Ui_daylist_print # modules which use qprinter from openmolar.qt4gui.printing import receiptPrint from openmolar.qt4gui.printing import chartPrint from openmolar.qt4gui.printing import bookprint from openmolar.qt4gui.printing import letterprint from openmolar.qt4gui.printing import recallprint from openmolar.qt4gui.printing import daylistprint from openmolar.qt4gui.printing import multiDayListPrint from openmolar.qt4gui.printing.accountPrint import AccountLetter from openmolar.qt4gui.printing import estimatePrint from openmolar.qt4gui.dialogs.correspondence_dialog import CorrespondenceDialog from openmolar.qt4gui.dialogs.print_record_dialog import PrintRecordDialog from openmolar.qt4gui.dialogs.mh_form_dialog import MHFormDialog LOGGER = logging.getLogger("openmolar") def commitPDFtoDB(om_gui, descr, serialno=None): ''' grabs "temp.pdf" and puts into the db. ''' LOGGER.info("comitting pdf to db") if serialno is None: serialno = om_gui.pt.serialno try: # todo - this try/catch is naff. pdfDup = utilities.getPDF() if pdfDup is None: om_gui.advise(_("PDF is NONE - (tell devs this happened)")) else: # field is 20 chars max.. hence the [:14] docsprinted.add(serialno, descr[:14] + " (pdf)", pdfDup) # -now refresh the docprinted widget (if visible) if om_gui.ui.prevCorres_treeWidget.isVisible(): om_gui.docsPrintedInit() except Exception as exc: om_gui.advise( "%s
    %s
    " % (_("Error saving PDF copy"), exc), 2) def printReceipt(om_gui, valDict, total="0.00"): ''' print a receipt ''' if om_gui.pt.serialno == 0: om_gui.advise(_("no patient selected"), 1) return myreceipt = receiptPrint.Receipt(parent=om_gui) myreceipt.setProps(om_gui.pt.title, om_gui.pt.fname, om_gui.pt.sname, om_gui.pt.addr1, om_gui.pt.addr2, om_gui.pt.addr3, om_gui.pt.town, om_gui.pt.county, om_gui.pt.pcde) myreceipt.total = total myreceipt.receivedDict = valDict if myreceipt.print_(): commitPDFtoDB(om_gui, "receipt") om_gui.pt.addHiddenNote("printed", "receipt") om_gui.updateHiddenNotesLabel() def printLetter(om_gui): ''' prints a letter to the patient ''' if om_gui.pt.serialno == 0: om_gui.advise(_("no patient selected"), 1) return html = standard_letter.getHtml(om_gui.pt) dl = CorrespondenceDialog(html, om_gui.pt, parent=None) dl.show() if dl.exec_(): letter = letterprint.letter(dl.text, parent=om_gui) if letter.printpage(): docsprinted.add(dl.pt.serialno, "%s (html)" % dl.letter_description, dl.text) dl.pt.addHiddenNote("printed", "%s %s" % (_("letter"), dl.letter_description)) if dl.pt == om_gui.pt: if om_gui.ui.prevCorres_treeWidget.isVisible(): om_gui.docsPrintedInit() om_gui.updateHiddenNotesLabel() else: patient_write_changes.toNotes(dl.pt.serialno, dl.pt.HIDDENNOTES) def printAccountsTable(om_gui): ''' print the table ''' # - set a pointer for readability table = om_gui.ui.accounts_tableWidget rowno = table.rowCount() memo_col = table.columnCount() - 1 if rowno == 0: om_gui.advise(_("Nothing to print - have you loaded the table?"), 1) return() total = 0 html = '''
    %s%s%s
    %s %s %s
    %s %s%s
    ''' % (_('Dent'), _('SerialNo'), _('Cset'), _('Name'), _('Status'), _("Last tx"), _('Complete'), _('Amount'), _('Memo')) for row in range(rowno): if row % 2 == 0: html += '' else: html += '' for col in (0, 1, 2, 3, 4, 5, 6, 7, memo_col): item = table.item(row, col) if item: if col == 1: html += '' % item.text() elif col == 7: money = localsettings.pencify(item.text()) money_str = localsettings.formatMoney(money) html += '' % money_str total += money else: html += '' % item.text() else: html += '' html += '\n' html += '''
    %s%s%s%s%s %s%s%s%s
    %s%s%s
    %s %s
    ''' % (_('TOTAL'), localsettings.formatMoney(total)) myclass = letterprint.letter(html, parent=om_gui) myclass.printpage() def printEstimate(om_gui): if om_gui.pt.serialno == 0: om_gui.advise(_("no patient selected"), 1) return est = estimatePrint.EstimateLetter(parent=om_gui) est.setProps(om_gui.pt.title, om_gui.pt.fname, om_gui.pt.sname, om_gui.pt.serialno) est.setEsts(estimates.sorted_estimates(om_gui.pt.estimates)) if est.print_(): commitPDFtoDB(om_gui, "auto estimate") om_gui.pt.addHiddenNote("printed", "estimate") om_gui.updateHiddenNotesLabel() def customEstimate(om_gui, html=""): ''' prints a custom estimate to the patient ''' if om_gui.pt.serialno == 0: om_gui.advise(_("no patient selected"), 1) return if html == "": html = standard_letter.getHtml(om_gui.pt) pt_total = 0 ehtml = "
    %s" % _( "Estimate for your current course of treatment.") ehtml += "
    " * 4 ehtml += '' # separate into NHS and non-NHS items. sorted_ests = {"N": [], "P": []} for est in estimates.sorted_estimates(om_gui.pt.estimates): if "N" in est.csetype: sorted_ests["N"].append(est) else: sorted_ests["P"].append(est) for type_, description in (("N", _("NHS items")), ("P", _("Private items"))): if sorted_ests[type_]: ehtml += '' % ( description) for est in sorted_ests[type_]: pt_total += est.ptfee number = est.number item = est.description amount = est.ptfee mult = "" if number > 1: mult = "s" item = item.replace("*", mult) if "^" in item: item = item.replace("^", "") ehtml += '''''' % ( number, item, localsettings.formatMoney(amount)) ehtml += '''''' % ( _("TOTAL"), localsettings.formatMoney(pt_total)) ehtml += "
    %s
    %s%s%s
    %s %s
    " + "
    " * 4 html = html.replace("
    " * (12), ehtml) html += '

    %s

    ' % _('Please note, this estimate may ' 'be subject to change if clinical ' 'circumstances dictate.') if htmlEditor(om_gui, type_="cust Estimate", html=html, version=0): om_gui.pt.addHiddenNote("printed", "cust estimate") om_gui.updateHiddenNotesLabel() def htmlEditor(om_gui, type_="", html="", version=0): ''' raise a dialog to print an html editor ''' dl = CorrespondenceDialog(html, om_gui.pt, preformatted=False, parent=None) dl.show() if dl.exec_(): letter = letterprint.letter(dl.text, parent=om_gui) if letter.printpage(): if dl.has_edits: docsprinted.add( dl.pt.serialno, "%s(html)" % type_, dl.text, version + 1 ) return True def printReferral(om_gui): ''' prints a referal letter ''' if om_gui.pt.serialno == 0: om_gui.advise("no patient selected", 1) return desc = om_gui.ui.referralLettersComboBox.currentText() html = referral.getHtml(desc, om_gui.pt) dl = CorrespondenceDialog(html, om_gui.pt, preformatted=False, parent=None) dl.show() if dl.exec_(): letter = letterprint.letter(dl.text, parent=om_gui) if letter.printpage(): docsprinted.add(dl.pt.serialno, "%s referral (html)" % desc, dl.text) dl.pt.addHiddenNote("printed", "referral") if dl.pt == om_gui.pt: if om_gui.ui.prevCorres_treeWidget.isVisible(): om_gui.docsPrintedInit() om_gui.updateHiddenNotesLabel() else: patient_write_changes.toNotes(dl.pt.serialno, dl.pt.HIDDENNOTES) return True def printChart(om_gui): if om_gui.pt.serialno == 0: om_gui.advise("no patient selected", 1) return staticimage = om_gui.ui.summaryChartWidget.grab() myclass = chartPrint.printChart(staticimage, parent=om_gui) myclass.printpage() om_gui.pt.addHiddenNote("printed", "static chart") om_gui.updateHiddenNotesLabel() def printMonth(om_gui): temp = om_gui.ui.monthView.selectedDate om_gui.ui.monthView.selectedDate = None printimage = om_gui.ui.monthView.grab() myclass = chartPrint.printChart(printimage, landscape=True, parent=om_gui) myclass.sizeToFit() myclass.printpage() om_gui.ui.monthView.selectedDate = temp def printaccount(om_gui, tone="A"): if om_gui.pt.serialno == 0: om_gui.advise("no patient selected", 1) else: doc = AccountLetter( om_gui.pt.title, om_gui.pt.fname, om_gui.pt.sname, (om_gui.pt.addr1, om_gui.pt.addr2, om_gui.pt.addr3, om_gui.pt.town, om_gui.pt.county), om_gui.pt.pcde, om_gui.pt.fees ) doc.setTone(tone) if tone == "B": doc.setPreviousCorrespondenceDate(om_gui.pt.billdate) # TODO unsure if this is correct date! # please print one and try it! if doc.print_(): om_gui.pt.updateBilling(tone) om_gui.pt.addHiddenNote("printed", "account - tone %s" % tone) om_gui.addNewNote("Account Printed") commitPDFtoDB(om_gui, "Account tone%s" % tone) om_gui.updateHiddenNotesLabel() def accountButton2Clicked(om_gui): if om_gui.ui.accountB_radioButton.isChecked(): om_gui.printaccount("B") elif om_gui.ui.accountC_radioButton.isChecked(): # print "harsh letter" om_gui.printaccount("C") else: om_gui.printaccount() def printdaylists(om_gui, args, expanded=False): ''' prints the single book pages args is a tuple (dent, date) ''' dlist = daylistprint.PrintDaylist(parent=om_gui) something_to_print = False for apptix, adate in args: data = appointments.printableDaylistData(adate.toPyDate(), apptix) if data != []: something_to_print = True dlist.addDaylist(adate, apptix, data) if something_to_print: dlist.print_(expanded) def printmultiDayList(om_gui, args): ''' prints the multiday pages args = ((dent, date), (dent, date)...) ''' dlist = multiDayListPrint.PrintDaylist(parent=om_gui) something_to_print = False for arg in args: data = appointments.printableDaylistData(arg[1].toPyDate(), arg[0]) # note arg[1]=Qdate if data != []: something_to_print = True dlist.addDaylist(arg[1], arg[0], data) if something_to_print: dlist.print_() def daylistPrintWizard(om_gui): def checkAll(arg): for cb in list(checkBoxes.values()): cb.setChecked(arg) Dialog = QtWidgets.QDialog(om_gui) dl = Ui_daylist_print.Ui_Dialog() dl.setupUi(Dialog) vlayout = QtWidgets.QGridLayout(dl.scrollArea) dl.alldentscheckBox = QtWidgets.QCheckBox(_("All Books")) dl.alldentscheckBox.setChecked(True) dl.alldentscheckBox.stateChanged.connect(checkAll) row = 0 vlayout.addWidget(dl.alldentscheckBox, row, 0, 1, 2) checkBoxes = {} for dent in localsettings.activedents + localsettings.activehygs: cb = QtWidgets.QCheckBox(dent) cb.setChecked(True) checkBoxes[localsettings.apptix[dent]] = cb row += 1 vlayout.addWidget(cb, row, 1, 1, 1) dl.start_dateEdit.setDate(QtCore.QDate.currentDate()) dl.end_dateEdit.setDate(QtCore.QDate.currentDate()) if Dialog.exec_(): sday = dl.start_dateEdit.date() eday = dl.end_dateEdit.date() books = [] while sday <= eday: for dent in localsettings.activedents + localsettings.activehygs: if checkBoxes[localsettings.apptix[dent]].checkState(): books.append((localsettings.apptix[dent], sday)) sday = sday.addDays(1) if dl.allOnePage_radioButton.isChecked(): printmultiDayList(om_gui, books) else: printdaylists( om_gui, books, dl.onePageFull_radioButton.isChecked()) def printrecall(om_gui): if om_gui.pt.serialno == 0: om_gui.advise("no patient selected", 1) else: recall_printer = recallprint.RecallPrinter(om_gui.pt, parent=om_gui) recall_printer.print_() om_gui.pt.addHiddenNote("printed", "recall - non batch") om_gui.updateHiddenNotesLabel() def printNotes(om_gui): if om_gui.pt.serialno == 0: om_gui.advise("no patient selected", 1) return image_file = tempfile.NamedTemporaryFile(suffix=".png") image = om_gui.ui.summaryChartWidget.grab() image.save(image_file.name) dl = PrintRecordDialog( om_gui.pt, "file://%s" % image_file.name, om_gui) dl.exec_() def print_mh_form(om_gui): pt = None if om_gui.pt.serialno == 0 else om_gui.pt dl = MHFormDialog(pt, om_gui) if dl.exec_(): dl.apply() def print_mh_forms(serialnos, om_gui): for serialno in serialnos: pt = patient_class.patient(serialno) dl = MHFormDialog(pt, om_gui) if dl.exec_(): dl.apply() def printSelectedAccounts(om_gui): ''' iterate over te accounts table, and print letters to those who have been selected to get an invoice ''' if om_gui.ui.accounts_tableWidget.rowCount() == 0: om_gui.advise("Please load the table first", 1) return firstPage = True no_printed = 0 for row in range(om_gui.ui.accounts_tableWidget.rowCount()): for col in range(11, 14): item = om_gui.ui.accounts_tableWidget.item(row, col) if item.checkState(): tone = ("A", "B", "C")[col - 11] sno = int(om_gui.ui.accounts_tableWidget.item(row, 1).text()) LOGGER.info("Account tone %s letter to %s", tone, sno) printpt = patient_class.patient(sno) doc = AccountLetter(printpt.title, printpt.fname, printpt.sname, (printpt.addr1, printpt.addr2, printpt.addr3, printpt.town, printpt.county), printpt.pcde, printpt.fees) doc.setTone(tone) if firstPage: # -raise a print dialog for the first letter of the run # -only if not doc.dialogExec(): # - user has abandoned the print run return chosenPrinter = doc.printer chosenPageSize = doc.printer.pageSize() firstPage = False else: doc.printer = chosenPrinter doc.printer.setPaperSize(chosenPageSize) doc.requireDialog = False if tone == "B": doc.setPreviousCorrespondenceDate(printpt.billdate) if doc.print_(): printpt.updateBilling(tone) printpt.addHiddenNote( "printed", "account - tone %s" % tone) patient_write_changes.discreet_changes( printpt, ("billct", "billdate", "billtype")) patient_write_changes.toNotes(sno, printpt.HIDDENNOTES) commitPDFtoDB(om_gui, "Account tone%s" % tone, printpt.serialno) no_printed += 1 om_gui.advise("%d letters printed" % no_printed, 1) def historyPrint(om_gui): html = om_gui.ui.debugBrowser.toHtml() myclass = bookprint.printBook(html) myclass.printpage() if __name__ == "__main__": import os os.chdir(os.path.expanduser("~")) # for printing to pdf app = QtWidgets.QApplication([]) widg = QtWidgets.QWidget() widg.pt = patient_class.patient(1) printLetter(widg) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/recallprint.py0000644000175000017500000001373512710147526025465 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings DATE_FORMAT = "MMMM, yyyy" class RecallPrinter(object): def __init__(self, pt, parent=None): self.parent = parent self.printer = QtPrintSupport.QPrinter() self.pt = pt self.line1 = _('We are writing to inform you that your ' 'dental examination is now due.') self.line2 = _('Please contact the surgery to arrange ' 'an appointment. *') self.line3 = _('We look forward to seeing you in the near future.') self.sign_off = _("Yours Sincerely") def print_(self): dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if not dialog.exec_(): return AddressMargin = 80 LeftMargin = 50 TopMargin = 80 sansFont = QtGui.QFont("Helvetica", 8) sansLineHeight = QtGui.QFontMetrics(sansFont).height() serifFont = QtGui.QFont("Helvetica", 8) serifLineHeight = QtGui.QFontMetrics(serifFont).height() sigFont = QtGui.QFont("Lucida Handwriting", 10) painter = QtGui.QPainter(self.printer) pageRect = self.printer.pageRect() painter.save() painter.setPen(QtCore.Qt.black) painter.setFont(sansFont) # put dent serialno in topleft corner painter.drawText( LeftMargin, TopMargin, "%s %d" % (localsettings.ops.get(self.pt.dnt1, ""), self.pt.serialno) ) x, y = AddressMargin, TopMargin + 50 painter.drawText( x, y, "%s %s %s" % (self.pt.title.title(), self.pt.fname.title(), self.pt.sname.title()) ) y += sansLineHeight for line_ in (self.pt.addr1, self.pt.addr2, self.pt.addr3, self.pt.town, self.pt.county ): if line_: painter.drawText(x, y, "%s," % line_.title()) y += serifLineHeight if self.pt.pcde: painter.drawText(x, y, "%s." % self.pt.pcde) y += serifLineHeight x, y = LeftMargin, (pageRect.height() * 0.3) painter.drawText( x + 250, y, QtCore.QDate.currentDate( ).toString( DATE_FORMAT)) y += sansLineHeight painter.setFont(serifFont) y += serifLineHeight painter.drawText( x, y, _("Dear %s %s,") % (self.pt.title.title(), self.pt.sname.title())) y += serifLineHeight * 2 painter.drawText(x, y, self.line1) y += serifLineHeight painter.drawText(x, y, self.line2) y += serifLineHeight * 1.2 painter.drawText(x, y, self.line3) painter.setPen(QtCore.Qt.black) y += serifLineHeight * 2 painter.drawText(x, y, self.sign_off) y += serifLineHeight * 1.5 painter.setFont(sigFont) y += serifLineHeight * 2 painter.drawText(x, y, localsettings.PRACTICE_NAME) painter.setFont(serifFont) y = pageRect.height() - 120 painter.drawLine(x, y, pageRect.width() - (2 * AddressMargin), y) y += 2 font = QtGui.QFont("Helvetica", 7) font.setItalic(True) painter.setFont(font) option = QtGui.QTextOption(QtCore.Qt.AlignCenter) option.setWrapMode(QtGui.QTextOption.WordWrap) painter.drawText( QtCore.QRectF(x, y, pageRect.width() - (2 * AddressMargin), 31), _("* If you already have a future appointment with us - " "please accept our apologies and ignore this letter."), option) painter.restore() if __name__ == "__main__": import os os.chdir(os.path.expanduser("~")) class DuckPatient(object): title = 'TITLE' fname = 'FNAME' sname = 'SNAME' dnt1 = 1 serialno = 1 addr1 = '1512 Rue de la Soleil' addr2 = 'Tampa' addr3 = "" town = "Florida" county = "USA" pcde = "ZIPCODE" localsettings.initiate() app = QtWidgets.QApplication([]) recall_printer = RecallPrinter(DuckPatient()) recall_printer.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/printing/receiptPrint.py0000644000175000017500000001570012710160060025574 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtPrintSupport from PyQt5 import QtWidgets from openmolar.settings import localsettings class Receipt(object): def __init__(self, parent=None): self.parent = parent self.printer = QtPrintSupport.QPrinter() self.printer.setPaperSize(QtPrintSupport.QPrinter.A5) self.pdfprinter = QtPrintSupport.QPrinter() self.pdfprinter.setPaperSize(QtPrintSupport.QPrinter.A5) self.setProps() self.receivedDict = {} self.isDuplicate = False self.dupdate = QtCore.QDate.currentDate() def setProps(self, tit="", fn="", sn="", ad1="", ad2="", ad3="", ad4="", ad5="", pcd="", p="", n="", s="", t=""): self.title = tit self.fname = fn self.sname = sn self.addr1 = ad1 self.addr2 = ad2 self.addr3 = ad3 self.town = ad4 self.county = ad5 self.pcde = pcd self.pamount = p self.namount = n self.samount = s self.total = t def print_(self): dialog = QtPrintSupport.QPrintDialog(self.printer, self.parent) if not dialog.exec_(): return self.pdfprinter.setOutputFormat(QtPrintSupport.QPrinter.PdfFormat) self.pdfprinter.setOutputFileName(localsettings.TEMP_PDF) for printer in (self.printer, self.pdfprinter): LeftMargin = 50 TopMargin = 150 serifFont = QtGui.QFont("Times", 11) fm = QtGui.QFontMetrics(serifFont) serifLineHeight = fm.height() painter = QtGui.QPainter(printer) pageRect = printer.pageRect() painter.setPen(QtCore.Qt.black) painter.setFont(serifFont) center = QtGui.QTextOption(QtCore.Qt.AlignCenter) alignRight = QtGui.QTextOption(QtCore.Qt.AlignRight) if self.isDuplicate: painter.drawText( QtCore.QRectF( 0, 100, pageRect.width(), serifLineHeight), _("DUPLICATE RECEIPT"), center) x, y = LeftMargin, TopMargin + 30 painter.drawText( x, y, "%s %s %s" % (self.title.title(), self.fname.title(), self.sname.title())) y += serifLineHeight for line in (self.addr1, self.addr2, self.addr3, self.town, self.county): if line != "": painter.drawText(x, y, str(line).title() + ",") y += serifLineHeight if self.pcde != "": painter.drawText(x, y, str(self.pcde + ".")) # postcode x, y = LeftMargin + 50, TopMargin + serifLineHeight * 10 mystr = 'Received on ' w = fm.width(mystr) painter.drawText(x, y, mystr) if not self.isDuplicate: painter.drawText( x + w, y, QtCore.QDate.currentDate().toString( localsettings.QDATE_FORMAT)) else: painter.drawText(x + w, y, self.dupdate.toString( localsettings.QDATE_FORMAT)) y += serifLineHeight * 2 painter.drawText(x, y, _('relating to:-')) y += serifLineHeight for key in list(self.receivedDict.keys()): amount = self.receivedDict[key] if float(amount) != 0: rect_f = QtCore.QRectF(x, y, 180, serifLineHeight) painter.drawText(rect_f, str(key)) rect_f = QtCore.QRectF(x + 180, y, 100, serifLineHeight) text = localsettings.formatMoney(amount) painter.drawText(rect_f, text, alignRight) y += serifLineHeight y += serifLineHeight painter.drawLine( int(x), int(y), int(x) + 280, int(y)) # 130+150=280 y += serifLineHeight * 1.5 rect_f = QtCore.QRectF(x, y, 180, serifLineHeight) painter.drawText(rect_f, "TOTAL") rect_f = QtCore.QRectF(x + 180, y, 100, serifLineHeight) text = localsettings.formatMoney(self.total) painter.drawText(rect_f, text, alignRight) y += serifLineHeight * 4 font = QtGui.QFont("Helvetica", 7) font.setItalic(True) painter.setFont(font) painter.drawText(x, y, _("Thankyou for your custom.")) return True if __name__ == "__main__": import os os.chdir(os.path.expanduser("~")) localsettings.initiate() app = QtWidgets.QApplication([]) myreceipt = Receipt() myreceipt.title = "tit" myreceipt.fname = "fname" myreceipt.sname = "sname" myreceipt.addr1 = "addr1" myreceipt.addr2 = "addr2" myreceipt.addr3 = "addr3" myreceipt.town = "addr4" myreceipt.county = "addr5" myreceipt.pcde = "PCDE" myreceipt.receivedDict = { "Private Treatment": "10.00", "NHS Treatment": "20.00", "Cuddly Toy": "5.00", "Sundry Items": "30.00" } myreceipt.total = "65.00" myreceipt.isDuplicate = True myreceipt.dupdate = QtCore.QDate(2009, 3, 2) myreceipt.print_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/__init__.py0000755000175000017500000000354512710144046023046 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging import sys LOGGER = logging.getLogger("openmolar") try: from openmolar.qt4gui import resources_rc except ImportError: LOGGER.error( "no resources_rc file.... have you ran setup.py makeuis?") sys.exit("openmolar is not properly built") openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/colours.py0000644000175000017500000000715313015344116022770 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from PyQt5 import QtCore from PyQt5 import QtGui LINEEDIT = QtGui.QColor("#ffffaa") CHARTTEXT = QtGui.QColor("#111111") TOOTHLINES = QtGui.QColor("#aaaaaa") IVORY = QtGui.QColor("#ffeedd") # these numbers are grabbed for the stylesheet of the toothprop buttons GI_ = "#75d185" GOLD_ = "#ffff00" COMP_ = "#ffffff" PORC_ = "#ddffff" AMALGAM_ = "#666666" GI = QtGui.QColor(GI_) GOLD = QtGui.QColor(GOLD_) COMP = QtGui.QColor(COMP_) PORC = QtGui.QColor(PORC_) AMALGAM = QtGui.QColor(AMALGAM_) FISSURE = QtGui.QColor("#bbd0d0") METAL = QtGui.QColor("#000075") DRESSING = QtGui.QColor("magenta") GUTTA_PERCHA = QtGui.QColor("#bb0000") FILL_OUTLINE = QtGui.QColor("#333333") # used to be blue TRANSPARENT = QtCore.Qt.transparent med_warning = "red" med_foreground = "yellow" BACKGROUND = QtGui.QPalette().window() APPT_Background = QtCore.Qt.white APPT_LINECOLOUR = QtGui.QColor("#dddddd") APPT_MED_FORM = QtGui.QColor("red") APPT_MED_BACKGROUND = QtGui.QColor("aqua") DIARY = { "Unscheduled": QtGui.QColor("red"), "Past": QtGui.QColor("#8c7d3b"), "TODAY": QtGui.QColor("#3b8c55"), "Future": QtGui.QColor("#3b4a8c") } BOOKED_TODAY = QtCore.Qt.red APPTCOLORS = { "N": QtGui.QColor("#d9d9ff"), "I": QtGui.QColor("#d9ffec"), "P": QtGui.QColor("#ffffd9"), "RESERVED CLINICAL TIME": QtGui.QColor("#ffcc99"), "LUNCH": QtGui.QColor("#dddddd"), "FREE": QtCore.Qt.transparent, "EMERGENCY": QtGui.QColor("#ffd9ec"), "default": QtGui.QColor("#adb3ff"), "//BLOCKED//": QtCore.Qt.lightGray, "DOUBLE": QtCore.Qt.blue, "SLOT": QtGui.QColor("#ffff99"), "SLOT2": QtGui.QColor("#ff99ff"), "HEADER": QtCore.Qt.white, "BACKGROUND": QtCore.Qt.white, "ACTIVE_SLOT": QtGui.QColor("#ffff33"), "ACTIVE_SLOT_BOLD": QtGui.QColor("#dddd11"), "BUSY": QtGui.QColor("#d9d9ff"), "current_patient": QtGui.QColor("orange"), } MED_STYLESHEET = "background-color: %s; color: %s" % (med_warning, med_foreground) if __name__ == "__main__": print(BACKGROUND) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/contract_gui_module.py0000644000175000017500000001162313022233054025321 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides functions which act on the contract of the patient at gui level ''' import logging from openmolar.settings import localsettings from openmolar.ptModules import planDetails, nhsDetails LOGGER = logging.getLogger("openmolar") def handle_ContractTab(om_gui): ''' function to adjust gui depending on the tab viewable ''' i = om_gui.ui.contract_tabWidget.currentIndex() if i == 0: pass # om_gui.advise("Private contract tab selected") if i == 1: om_gui.ui.contractHDP_label.setText( planDetails.toHtml(om_gui.pt.plandata)) if i == 2: om_gui.ui.contractNHS_label.setText( nhsDetails.toHtml(om_gui.pt)) om_gui.ui.exemption_lineEdit.setText(om_gui.pt.exemption) om_gui.ui.exempttext_lineEdit.setText(om_gui.pt.exempttext) if i == 3: pass # om_gui.advise("Other Dentist tab selected") def changeContractedDentist(om_gui, inits): ''' changes dnt1 ''' newdentist = localsettings.ops_reverse[str(inits)] if newdentist == om_gui.pt.dnt1: return if om_gui.pt.cset in ("I", "M"): om_gui.advise(_("Let Highland Dental Plan know of this change"), 1) elif om_gui.pt.cset == "N": om_gui.advise( _("Get an NHS form signed to change the patients contract"), 1) else: om_gui.advise("changed dentist to %s" % inits, 1) LOGGER.debug("changing contracted dentist to %s", inits) om_gui.pt.dnt1 = newdentist om_gui.updateDetails() def changeCourseDentist(om_gui, inits): ''' changes dnt2 ''' newdentist = localsettings.ops_reverse[str(inits)] if newdentist == om_gui.pt.dnt2: return if om_gui.pt.dnt2 == 0 and newdentist == om_gui.pt.dnt1: return if om_gui.pt.cset == "N" and om_gui.pt.underTreatment: om_gui.advise( _("think about getting some nhs forms signed for both dentists"), 1) else: om_gui.advise("%s %s" % (_("Changed course dentist to"), inits), 1) LOGGER.debug("changing course dentist to %s", inits) om_gui.pt.dnt2 = newdentist om_gui.updateDetails() def changeCourseType(om_gui, cset): ''' change cset ''' om_gui.pt.cset = str(cset) om_gui.updateDetails() i = localsettings.CSETYPES.index(om_gui.pt.cset[:1]) om_gui.ui.contract_tabWidget.setCurrentIndex(i) # do this so that the table is reset at any lookup om_gui.pt.forget_fee_table() def editNHScontract(om_gui): '''blank function which needs work''' om_gui.advise("edit NHS", 1) def exemption_edited(om_gui): ''' user has edited the exemption text fields ''' om_gui.pt.exemption = str(om_gui.ui.exemption_lineEdit.text()) om_gui.pt.exempttext = str( om_gui.ui.exempttext_lineEdit.text()) if not om_gui.pt.checkExemption(): om_gui.advise(_("erroneous exemption category entered"), 1) om_gui.ui.exemption_lineEdit.setText(om_gui.pt.dbstate.exemption) om_gui.updateDetails() def editPrivateContract(om_gui): '''blank function which needs work''' om_gui.advise("edit Private", 1) def editHDPcontract(om_gui): '''blank function which needs work''' om_gui.advise("edit HDP", 1) def editOtherContract(om_gui): '''blank function which needs work''' om_gui.advise("edit other Practitioner", 1) openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/diary_widget.py0000644000175000017500000016524713015432051023762 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' diary_widget.py provides the DiaryWidget class for openmolar. ''' import datetime import logging import time from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import appointments from openmolar.dbtools import locations from openmolar.dbtools import search from openmolar.dbtools.brief_patient import BriefPatient from openmolar.ptModules import formatted_notes from openmolar.qt4gui.dialogs import alterAday from openmolar.qt4gui.dialogs import finalise_appt_time from openmolar.qt4gui.dialogs import permissions from openmolar.qt4gui.dialogs.choose_clinicians import ChooseCliniciansDialog from openmolar.qt4gui.dialogs.find_patient_dialog import FinalChoiceDialog from openmolar.qt4gui.dialogs.appointments_insert_blocks_dialog \ import InsertBlocksDialog from openmolar.qt4gui.dialogs.appointments_memo_dialog \ import AppointmentsMemoDialog from openmolar.qt4gui.customwidgets import appointmentwidget from openmolar.qt4gui.printing import om_printing from openmolar.qt4gui.compiled_uis import Ui_diary_widget from openmolar.qt4gui.customwidgets.schedule_control \ import DiaryScheduleController from openmolar.qt4gui.customwidgets.diary_view_controller \ import DiaryViewController from openmolar.qt4gui.customwidgets.appointment_overviewwidget \ import AppointmentOverviewWidget from openmolar.qt4gui.customwidgets import aptOVcontrol from openmolar.qt4gui.customwidgets import dent_hyg_selector from openmolar.qt4gui.customwidgets import calendars from openmolar.qt4gui.dialogs import appointment_card_dialog from openmolar.qt4gui.dialogs.dialog_collection import CancelAppointmentDialog from openmolar.backports.advisor import Advisor LOGGER = logging.getLogger("openmolar") class DiaryWidget(Advisor): VIEW_MODE = 0 SCHEDULING_MODE = 1 BLOCKING_MODE = 2 NOTES_MODE = 3 pt = None highlighted_appointment = None patient_card_request = QtCore.pyqtSignal(object) pt_diary_changed = QtCore.pyqtSignal(object) bring_to_front = QtCore.pyqtSignal() print_mh_signal = QtCore.pyqtSignal(object) location_signal = QtCore.pyqtSignal(object) mh_form_date_signal = QtCore.pyqtSignal(object) alterAday_clipboard = [] # clipboard used by the alterAday dialog alterAday_clipboard_date = None message_alert = None laid_out = False def __init__(self, parent=None): Advisor.__init__(self, parent) self.ui = Ui_diary_widget.Ui_Form() self.ui.setupUi(self) self.appointmentData = appointments.DayAppointmentData() self.schedule_controller = DiaryScheduleController(self) self.view_controller = DiaryViewController(self) # keep a pointer to this layout as the layout is moved between # dayview and weekview self.control_layout = QtWidgets.QVBoxLayout( self.ui.day_view_control_frame) self.control_layout.setContentsMargins(0, 0, 0, 0) self.control_layout.addWidget(self.schedule_controller) # self.control_layout.addStretch(0) self.control_layout.addWidget(self.view_controller) self.day_scroll_bar = None self.apptBookWidgets = [] # appointment OVerview widget self.ui.apptoverviews = [] for frame in (self.ui.appt_OV_Frame1, self.ui.appt_OV_Frame2, self.ui.appt_OV_Frame3, self.ui.appt_OV_Frame4, self.ui.appt_OV_Frame5, self.ui.appt_OV_Frame6, self.ui.appt_OV_Frame7): bw = AppointmentOverviewWidget("0820", "1910", 10, 3, self) self.ui.apptoverviews.append(bw) hlayout = QtWidgets.QHBoxLayout(frame) hlayout.setContentsMargins(0, 0, 0, 0) hlayout.addWidget(bw) self.ui.apptoverviewControls = [] for widg in (self.ui.day1_frame, self.ui.day2_frame, self.ui.day3_frame, self.ui.day4_frame, self.ui.day5_frame, self.ui.day6_frame, self.ui.day7_frame ): hlayout = QtWidgets.QHBoxLayout(widg) hlayout.setContentsMargins(0, 0, 0, 0) control = aptOVcontrol.control() self.ui.apptoverviewControls.append(control) hlayout.addWidget(control) self.ui.weekView_splitter.setSizes([600, 10]) self.appt_clinician_selector = dent_hyg_selector.DentHygSelector() self.monthClinicianSelector = dent_hyg_selector.DentHygSelector() # -customise the appointment widget calendar self.ui.dayCalendar = calendars.controlCalendar() self.calendar_layout = QtWidgets.QHBoxLayout(self.ui.dayCalendar_frame) self.calendar_layout.setContentsMargins(0, 0, 0, 0) self.calendar_layout.addWidget(self.ui.dayCalendar) self.ui.weekCalendar = calendars.weekCalendar() hlayout = QtWidgets.QHBoxLayout(self.ui.weekCalendar_frame) hlayout.setContentsMargins(0, 0, 0, 0) hlayout.addWidget(self.ui.weekCalendar) # -add a month view self.ui.monthView = calendars.monthCalendar() self.ui.monthView_scrollArea.setWidget(self.ui.monthView) # -add a year view self.ui.yearView = calendars.yearCalendar() hlayout = QtWidgets.QHBoxLayout(self.ui.yearView_frame) hlayout.setContentsMargins(0, 0, 0, 0) hlayout.addWidget(self.ui.yearView) self.agenda_widget = QtWidgets.QTextBrowser() layout = QtWidgets.QVBoxLayout(self.ui.agenda_frame) hlayout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.agenda_widget) self.init_signals() self.ticker = QtCore.QTimer() self.ticker.start(30000) # fire every 30 seconds self.ticker.timeout.connect(self.check_update) def initiate(self): LOGGER.debug("initialising diary clinicians") for selector in (self.appt_clinician_selector, self.monthClinicianSelector): selector.set_dents(localsettings.activedents) selector.set_hygs(localsettings.activehygs) def showEvent(self, event): LOGGER.debug("ShowEvent called laid_out = %s", self.laid_out) self.highlighted_appointment = None if not self.laid_out: self.initiate() # QtCore.QTimer.singleShot(10, self.layout_diary) def resizeEvent(self, event): ''' this function is overwritten so that the advisor popup can be put in the correct place ''' super().resizeEvent(event) self.setBriefMessageLocation() def setBriefMessageLocation(self): ''' make the Advisor sub class aware of the windows geometry. set it top right, and right_to_left ''' widg = self.parent() brief_pos_x = (widg.pos().x() + widg.width()) brief_pos_y = (widg.pos().y()) brief_pos = QtCore.QPoint(brief_pos_x, brief_pos_y) self.setBriefMessagePosition(brief_pos, True) def reset(self): ''' reset the tabwidget ''' self.ui.diary_tabWidget.setCurrentIndex(0) self.ui.appt_notes_webView.setVisible( self.schedule_controller.mode == self.NOTES_MODE) def selected_date(self): ''' a convenience function which calls a widget function (keeps code more readable) ''' return self.ui.dayCalendar.selectedDate() def set_date(self, sd): ''' a convenience function which calls a widget function (keeps code more readable) ''' self.ui.dayCalendar.setSelectedDate(sd) def gotoToday_clicked(self): ''' handles button pressed asking for today to be loaded on the appointments page ''' LOGGER.debug("go to today button clicked") today = QtCore.QDate.currentDate() if self.ui.dayCalendar.selectedDate() != today: self.set_date(today) else: # user has clicked on "refresh" LOGGER.debug("Refresh called for diary") self.layout_diary() def printMonth_pushButton_clicked(self): ''' print the current Monthe View ''' om_printing.printMonth(self) def appointment_book_print(self, dentist): ''' print an appointment book ''' adate = self.selected_date() try: books = ((dentist, adate), ) om_printing.printdaylists(self, books) except KeyError: self.advise("error printing book", 1) def bookmemo_Edited(self, dentist, memo): ''' user has double clicked on the appointment widget memo label ''' apptix = localsettings.apptix[dentist] if self.appointmentData.getMemo(apptix) != memo: appointments.setMemos( self.selected_date().toPyDate(), ((apptix, memo),)) self.advise("%s- %s %s" % (_("Adding day memo"), dentist, memo)) def load_patient(self, patient, update=False): LOGGER.debug("DiaryWidget.load_patient '%s', update=%s", patient, update) self.pt = patient if self.schedule_controller.pt != patient: self.schedule_controller.clear() self.schedule_controller.set_patient(patient) for book in self.apptBookWidgets: if patient is not None: book.selected_serialno = patient.serialno else: book.selected_serialno = None book.update() if update: self.layout_diary() LOGGER.debug("DiaryWidget.load_patient finished") def set_appt_mode(self, mode, update_required=True): LOGGER.debug( "DiaryWidget.set_appt_mode update_required=%s", update_required) self.highlighted_appointment = None if self.schedule_controller.mode == mode: return self.schedule_controller.set_mode(mode) self.view_controller.set_mode(mode) if mode == self.NOTES_MODE: self.ui.appt_notes_webView.setHtml(_("No patient Selected")) self.ui.diary_tabWidget.setCurrentIndex(0) self.set_date(QtCore.QDate.currentDate()) else: self.pt = self.schedule_controller.pt serialno = 0 if self.pt is None else self.pt.serialno for book in self.apptBookWidgets: book.selected_serialno = serialno book.update() if update_required: self.layout_diary() def highlight_serialno(self, serialnos): ''' a custom widget (dentist diary) has sent a signal that an appointment has been selected. the arg is a list of serial numbers ''' if self.schedule_controller.mode not in (self.SCHEDULING_MODE, self.BLOCKING_MODE): for book in self.apptBookWidgets: book.selected_serialno = serialnos[0] book.update() def manage_month_and_year_View_clinicians(self): ''' radiobutton toggling who's book to show on the appointment ''' self.dl = ChooseCliniciansDialog(self.monthClinicianSelector, self) self.dl.exec_() val = self.monthClinicianSelector.allChecked() self.ui.monthClinicians_checkBox.setChecked(val) self.ui.yearClinicians_checkBox.setChecked(val) self.layout_diary() def month_and_year_All_clinicians(self): ''' checkbox has been clicked, if True, then checkAll ''' if self.sender().isChecked(): self.monthClinicianSelector.checkAll() else: self.monthClinicianSelector.checkAll(QtCore.Qt.Unchecked) self.layout_diary() def userHasChosen_slot(self, slot): ''' user has been offered a slot, and accepted it. the argument provides the required details ''' if slot.is_primary: if self.schedule_controller.chosen_slot == slot: appt = self.schedule_controller.appointment_model.currentAppt self.makeAppt(appt, slot) else: self.schedule_controller.set_chosen_slot(slot) self.layout_diary() elif not \ self.schedule_controller.appointment_model.currentAppt.unscheduled: if slot in self.schedule_controller.chosen_2nd_slots: appt = self.schedule_controller.appointment_model.secondaryAppt self.makeAppt(appt, slot) else: self.schedule_controller.set_chosen_2nd_slot(slot) def begin_makeAppt(self, custom=False): ''' make an appointment - switch user to "scheduling mode" and present the appointment overview to show possible appointments also handles both 1st appointment buttons ''' LOGGER.info("DiaryWidget.begin_makeAppt") self.ui.appt_notes_webView.setVisible(False) self.schedule_controller.clear_slots() appt = self.schedule_controller.appointment_model.currentAppt if appt is None: self.advise(_("Please select an appointment to schedule"), 1) return if not appt.unscheduled: self.layout_diary() self.advise(_("appointment already scheduled for") + " %s" % ( localsettings.readableDate(appt.date)), 1) return self.signals_calendar(False) self.set_date(QtCore.QDate.currentDate()) self.ui.weekCalendar.setSelectedDate(QtCore.QDate.currentDate()) self.signals_calendar() self.schedule_controller.set_search_future() self.schedule_controller.begin_make_appointment(custom) self.layout_diary() def makeAppt(self, appt, slot): ''' called by a click on my custom overview slot - or a drop event user has selected an offered appointment ''' if not appt: self.advise( _("Please select an appointment to place here"), 1) return if appt.date: self.advise( _("Please choose another appointment - " "this one is made already!"), 1) return selectedtime = localsettings.pyTimetoWystime(slot.time()) slotlength = slot.length selectedDent = slot.dent if appt.dent and selectedDent != appt.dent: # -the user has selected a slot with a different dentist # -raise a dialog to check this was intentional!! message = "%s %s
    %s" % ( _('You have chosen an appointment with'), localsettings.apptix_reverse[selectedDent], _("Is this correct?")) result = QtWidgets.QMessageBox.question( self, _("Confirm"), message, QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) if result == QtWidgets.QMessageBox.No: # dialog rejected return if slotlength > appt.length: # -the slot selected is bigger than the appointment length so # -fire up a dialog to allow for fine tuning dl = finalise_appt_time.ftDialog(slot.time(), slotlength, appt.length, self) if dl.exec_(): # -dialog accepted selectedtime = localsettings.pyTimetoWystime(dl.selectedTime) slotlength = appt.length # satisfies the next conditional code else: # -dialog cancelled return if slotlength == appt.length: # -ok... suitable appointment found message = '''
    %s
    %s
    %s
    %s
    %s
    ''' % ( _("Confirm Make appointment for"), appt.name, localsettings.wystimeToHumanTime(selectedtime), localsettings.readableDate(slot.date()), localsettings.apptix_reverse.get(selectedDent, "??")) # -get final confirmation result = QtWidgets.QMessageBox.question( self, _("Confirm"), message, QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) if result == QtWidgets.QMessageBox.No: # dialog rejected for widg in self.ui.apptoverviews: widg.update() return # -don't throw an exception with ord("") cst = 0 try: cst = ord(appt.cset[0]) except TypeError: pass except IndexError: pass endtime = localsettings.minutesPastMidnighttoWystime( localsettings.minutesPastMidnight(selectedtime) + appt.length) if self.schedule_controller.ignore_emergency_spaces(): appointments.cancel_emergency_slot( slot.date(), selectedDent, selectedtime, endtime) # - make appointment if appointments.make_appt( slot.date(), selectedDent, selectedtime, endtime, appt.name[:30], appt.serialno, appt.trt1, appt.trt2, appt.trt3, appt.memo, appt.flag, cst, 0, 0): LOGGER.info("Appointment made in aslot") if appt.serialno != 0: if not appointments.pt_appt_made( appt.serialno, appt.aprix, slot.date(), selectedtime, selectedDent): self.advise( _("Error putting appointment back " "into patient diary")) LOGGER.info("Appointment updated in apr") self.schedule_controller.get_data() self.pt_diary_changed.emit(self.pt.serialno) if appointments.has_unscheduled(appt.serialno): self.advise(_("more appointments to schedule"), 1) else: self.offer_appointment_card() self.set_appt_mode(self.VIEW_MODE) else: self.advise( "%s
    %s
    %s
    " % ( _("Error making appointment - sorry!"), _("It is most likely that another user utilised " "this space."), _("Please try again.") ), 2) else: # Hopefully this should never happen!!!! self.advise( "error - the appointment doesn't fit there.. slotlength " + "is %d and we need %d" % (slotlength, appt.length), 2) self.layout_diary() def apptOVheaderclick(self, apptix, adate): ''' a click on the dentist portion of the appointment overview widget current implementation has little value! ''' LOGGER.debug("week header clicked apptix=%s date=%s", apptix, adate) # TODO - this function does nothing! def offer_appointment_card(self): result = QtWidgets.QMessageBox.question( self, _("Confirm"), _("Print Appointment Card?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) if result == QtWidgets.QMessageBox.Yes: dl = appointment_card_dialog.AppointmentCardDialog(self.pt, self) dl.exec_() def triangles(self, call_update=True): '''' this moves a red line down the appointment books called by A Qtimer, or programmatically when adding data ''' if self.ui.diary_tabWidget.currentIndex() == 0: currenttime = "%02d%02d" % ( time.localtime()[3], time.localtime()[4]) d = self.selected_date() if d == QtCore.QDate.currentDate(): for book in self.apptBookWidgets: if book.setCurrentTime(currenttime) and call_update: book.update() else: for book in self.apptBookWidgets: book.setCurrentTime(None) def check_update(self): ''' this function is called automatically every 30 seconds. ''' # LOGGER.debug("check_update") if self.isVisible(): self.layout_diary(True) else: self.triangles() def aptFontSize(self, e): ''' user selecting a different appointment book slot ''' localsettings.appointmentFontSize = e for book in self.apptBookWidgets: book.update() for book in self.ui.apptoverviews: book.update() self.ui.monthView.update() self.ui.yearView.update() def aptOVlabelClicked(self, sd): ''' go to the appointment book for the date on the label ''' LOGGER.debug("appt OV label clicked %s", sd) self.schedule_controller.clear_slots() self.schedule_controller.set_search_future() if sd != self.selected_date(): self.highlighted_appointment = None self.set_date(sd) self.ui.diary_tabWidget.setCurrentIndex(0) def aptOV_monthBack(self): ''' appointment Overview page - change the calendar date, and let it's event handler do the rest ''' self.set_date(self.selected_date().addMonths(-1)) def aptOV_monthForward(self): ''' appointment Overview page - change the calendar date, and let it's event handler do the rest ''' self.set_date(self.selected_date().addMonths(1)) def aptOV_yearBack(self): ''' appointment Overview page - change the calendar date, and let it's event handler do the rest ''' self.set_date(self.selected_date().addYears(-1)) def aptOV_yearForward(self): ''' appointment Overview page - change the calendar date, and let it's event handler do the rest ''' self.set_date(self.selected_date().addYears(1)) def clearTodaysEmergencyTime(self): ''' clears emergency slots for today ''' # - raise a dialog to check result = QtWidgets.QMessageBox.question( self, "Confirm", "Clear today's emergency slots?", QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes ) if result == QtWidgets.QMessageBox.Yes: number_cleared = appointments.clearEms(localsettings.currentDay()) self.advise("Cleared %d emergency slots" % number_cleared, 1) self.layout_diary() def add_appointmentwidget(self): LOGGER.debug("initiating a new AppointmentWidget") book = appointmentwidget.AppointmentWidget( "0800", "1900", self) self.apptBookWidgets.append(book) self.ui.dayView_splitter.addWidget(book) self.signals_apptWidgets(book) book.mode = self.schedule_controller.mode if self.day_scroll_bar is None: self.day_scroll_bar = book.scrollArea.verticalScrollBar() self.ui.emergency_dayview_scroll_bar.valueChanged.connect( self.day_scroll_bar.setValue) if len(self.apptBookWidgets) > 1: self.apptBookWidgets[-1].set_scroll_bar(self.day_scroll_bar) for widg in self.apptBookWidgets[:-1]: widg.scroll_bar_off() def calendar_signal(self): ''' called when the user clicks on the calendar (ie. NOT when called programatically by move_on) ''' LOGGER.debug("DiaryWidget.calendar_signal") self.schedule_controller.cancel_search_mode() self.layout_diary() def layout_diary(self, automatic=False): ''' slot to catch a date change from the custom mont/year widgets emitting a date signal OR the diary tab shifting OR the checkboxes have been tweaked OR a memo has been added ''' highlighted_appt = self.highlighted_appointment if automatic: LOGGER.debug("DiaryWidget.layout_diary - Called Automatically") if self.schedule_controller.mode == self.SCHEDULING_MODE: LOGGER.debug("diary in scheduling mode, ignoring layout") return else: LOGGER.debug("=" * 80) LOGGER.debug("DiaryWidget.layout_diary") LOGGER.debug( "schedule_controller.mode = %s", self.schedule_controller.mode) self.laid_out = True date_ = self.selected_date() self.ui.weekCalendar.setSelectedDate(date_) self.ui.monthView.setSelectedDate(date_.toPyDate()) self.ui.yearView.setSelectedDate(date_.toPyDate()) self.ui.appt_notes_webView.setVisible( self.schedule_controller.mode == self.NOTES_MODE) self.set_appt_mode(self.schedule_controller.mode) i = self.ui.diary_tabWidget.currentIndex() if i == 0: self.layout_dayView(automatic) elif i == 1: self.layout_weekView() elif i == 2: self.layout_month() elif i == 3: self.layout_year() self.layout_yearHeader() elif i == 4: self.layout_agenda() LOGGER.debug("diary view layed out") if self.schedule_controller.mode == self.SCHEDULING_MODE: if i in (0, 1): LOGGER.debug("call check schedule") self.schedule_controller.check_schedule_status(automatic) if highlighted_appt is None or (automatic and i in (0, 1)): LOGGER.debug('automatically updating highlighted appt %s', highlighted_appt) self.update_highlighted_appointment(highlighted_appt) LOGGER.debug("calling update_go_no_buttons") self.update_go_now_buttons() LOGGER.debug( "schedule_controller.mode = %s", self.schedule_controller.mode) LOGGER.debug("layout_diary completed") LOGGER.debug("=" * 80) def update_go_now_buttons(self): ''' on the day diary, there is a go to today button. on the week diary, there is a go to this week button. these should say "refresh" if this day/week is displayed already. ''' if self.selected_date() != QtCore.QDate.currentDate(): self.ui.goTodayPushButton.setText(_("Go To Today")) else: self.ui.goTodayPushButton.setText(_("Refresh")) if self.selected_date().weekNumber() != \ QtCore.QDate.currentDate().weekNumber(): self.ui.goto_current_week_PushButton.setText( _("View Current Week")) else: self.ui.goto_current_week_PushButton.setText(_("Refresh")) def layout_year(self): ''' grab year memos ''' LOGGER.debug("DiaryWidget.layout_year") year = self.selected_date().year() startdate = datetime.date(year, 1, 1) enddate = datetime.date(year + 1, 1, 1) dents = self.getUserCheckedClinicians() self.ui.yearView.setDents(dents) data = appointments.getDayInfo(startdate, enddate, dents) self.ui.yearView.setData(data) data = appointments.getBankHols(startdate, enddate) self.ui.yearView.setHeadingData(data) self.ui.yearView.update() def layout_yearHeader(self): ''' put dayname, bank hol info, and any memos into the year header textBrowser ''' dayData = self.ui.yearView.getDayData() # print dayData.dayName, dayData.publicHoliday, dayData.memos headerText = '''
    ''' % ( localsettings.stylesheet, dayData.dayName) if dayData.publicHoliday != "": headerText += '''''' % dayData.publicHoliday for dentix in list(dayData.dents.keys()): dent = dayData.dents[dentix] if dentix == 0: headerText += '''''' % dent.memo else: times = "" if dent.flag: times = "%s - %s" % ( localsettings.wystimeToHumanTime(dent.start), localsettings.wystimeToHumanTime(dent.end)) headerText += ''' ''' % (dent.initials, times, dent.memo) headerText += "
    %s
    %s
    ALL %s
    %s %s %s
    " self.ui.year_textBrowser.setText(headerText) def layout_month(self): ''' grab month memos ''' LOGGER.debug("DiaryWidget.layout_month") qdate = self.selected_date() startdate = datetime.date(qdate.year(), qdate.month(), 1) qdate = qdate.addMonths(1) enddate = datetime.date(qdate.year(), qdate.month(), 1) dents = self.getUserCheckedClinicians() self.ui.monthView.setDents(dents) data = appointments.getDayInfo(startdate, enddate, dents) self.ui.monthView.setData(data) data = appointments.getBankHols(startdate, enddate) self.ui.monthView.setHeadingData(data) self.ui.monthView.update() def layout_weekView(self): ''' lay out the week view widget called by checking a dentist checkbox on apptov tab or by changeing the date on the appt OV calendar ''' if not self.viewing_week: return LOGGER.debug("DiaryWidget.layout_weekView") self.ui.week_view_control_frame.setLayout(self.control_layout) self.current_weekViewClinicians = set() date_ = self.selected_date() dayno = date_.dayOfWeek() weekdates = [] for day in range(7): weekday = (date_.addDays(day + 1 - dayno)) weekdates.append(weekday) header = self.ui.apptoverviewControls[day] header.setDate(weekday) pydate = weekday.toPyDate() memo = appointments.getBankHol(pydate) gm = appointments.getGlobalMemo(pydate) header.setMemo("
    ".join((memo, gm))) for ov in self.ui.apptoverviews: ov.date = weekdates[self.ui.apptoverviews.index(ov)] ov.clear() ov.mode = self.schedule_controller.mode ov.dents = \ self.view_controller.clinician_days(ov.date.toPyDate()) for dent in ov.dents: self.current_weekViewClinicians.add(dent.ix) ov.init_dicts() for dent in ov.dents: ov.setStartTime(dent) ov.setEndTime(dent) ov.setMemo(dent) ov.setFlags(dent) # if scheduling.. add slots to the widgets if (self.schedule_controller.mode == self.SCHEDULING_MODE and self.schedule_controller.is_searching): self.schedule_controller.get_weekview_slots(weekdates) for ov in self.ui.apptoverviews: for slot in self.schedule_controller.all_slots: if slot.date_time.date() == ov.date.toPyDate(): ov.addSlot(slot) elif self.schedule_controller.mode == self.BLOCKING_MODE: self.schedule_controller.get_weekview_slots(weekdates) for ov in self.ui.apptoverviews: ov.enable_clinician_slots( localsettings.activedents + localsettings.activehygs) for slot in self.schedule_controller.all_slots: if slot.date_time.date() == ov.date.toPyDate(): ov.addSlot(slot) for ov in self.ui.apptoverviews: date_ = ov.date.toPyDate() for dent in ov.dents: ov.appts[dent.ix] = appointments.day_summary(date_, dent.ix) # add lunches and blocks for ov in self.ui.apptoverviews: date_ = ov.date.toPyDate() for dent in ov.dents: ov.eTimes[dent.ix] = appointments.getBlocks(date_, dent.ix) ov.lunches[dent.ix] = appointments.getLunch(date_, dent.ix) self.chosen_slot_changed(triggered=False) for ov in self.ui.apptoverviews: ov.update() def layout_dayView(self, automatic=False): ''' this populates the appointment book widgets (on maintab, pageindex 1) ''' if not self.viewing_day: return LOGGER.debug("DiaryWidget.layout_dayView") self.ui.emergency_dayview_scroll_bar.hide() self.ui.dayCalendar_frame.setLayout(self.calendar_layout) self.ui.day_view_control_frame.setLayout(self.control_layout) for book in self.apptBookWidgets: book.clearAppts() book.setTime = None book.mode = self.schedule_controller.mode date_ = self.selected_date().toPyDate() # choose dentists to show. dents = self.view_controller.clinician_list(date_) self.appointmentData.setDate(date_) self.appointmentData.getAppointments(dents) patient_locations = locations.locations() if self.schedule_controller.mode == self.SCHEDULING_MODE: # self.schedule_controller.clear_slots() if localsettings.currentDay() <= date_ < localsettings.BOOKEND: self.schedule_controller.set_slots_from_day_app_data( self.appointmentData) self.ui.daymemo_label.setText(self.appointmentData.memo) workingDents = self.appointmentData.workingDents number_of_books = len(workingDents) abs_start = self.appointmentData.earliest_start abs_end = self.appointmentData.latest_end while number_of_books > len(self.apptBookWidgets): self.add_appointmentwidget() # - clean past links to dentists i = 0 for book in self.apptBookWidgets: i += 1 book.dentist = None book.setDayStartTime(abs_start) book.setDayEndTime(abs_end) if self.day_scroll_bar: self.day_scroll_bar.setValue(0) i = len(self.apptBookWidgets) - number_of_books for dent in workingDents: book = self.apptBookWidgets[i] book.setDentist(dent) book.set_locations(patient_locations) book.setDayStartTime(abs_start) book.setDayEndTime(abs_end) bookstart = self.appointmentData.getStart(dent) bookend = self.appointmentData.getEnd(dent) book.setStartTime(bookstart) book.setEndTime(bookend) out = not self.appointmentData.inOffice.get(dent, False) book.setOutOfOffice(out) book.header_label.setText(localsettings.apptix_reverse[dent]) if not (automatic and book.memo_lineEdit.hasFocus()): book.memo_lineEdit.setText(self.appointmentData.getMemo(dent)) apps = self.appointmentData.dentAppointments(dent) for app in apps: book.setAppointment(app) # if scheduling.. add slots to the widgets if (self.schedule_controller.mode == self.SCHEDULING_MODE and self.schedule_controller.is_searching): for slot in self.schedule_controller.all_slots: book.addSlot(slot) if not book.set_active_slot(self.schedule_controller.chosen_slot): for slot in self.schedule_controller.chosen_2nd_slots: book.set_active_slot(slot) i += 1 self.triangles(False) book_list = [] for book in self.apptBookWidgets: if book.dentist is None: # -book has no data book.hide() book_list.append(0) else: book_list.append(100) book.show() book.update() # make sure the splitter is reset (user could have hidden a widget they # now need) self.ui.dayView_splitter.setSizes(book_list) if i == 0: t = self.ui.daymemo_label.text() + " - " + _("No books to show!") self.ui.daymemo_label.setText(t) # self.advise("all off today") else: if self.apptBookWidgets[-1].outofoffice: esb = self.ui.emergency_dayview_scroll_bar esb.setMinimum(self.day_scroll_bar.minimum()) esb.setMaximum(self.day_scroll_bar.maximum()) esb.setPageStep(self.day_scroll_bar.pageStep()) esb.setValue(self.day_scroll_bar.value()) esb.show() return True def chosen_slot_changed(self, triggered=True): ''' user has toggled the forwards and backwards buttons ''' chosen_slot = self.schedule_controller.chosen_slot if self.viewing_week: for ov in self.ui.apptoverviews: ov.set_active_slots( chosen_slot, self.schedule_controller.chosen_2nd_slots) for ov in self.ui.apptoverviews: ov.toggle_blink() elif self.viewing_day: for book in self.apptBookWidgets: book.clear_active_slots() if not book.set_active_slot(chosen_slot): for slot in self.schedule_controller.chosen_2nd_slots: book.set_active_slot(slot) for book in self.apptBookWidgets: book.canvas.toggle_blink() if triggered and chosen_slot: sync_date = QtCore.QDate(chosen_slot.date()) LOGGER.debug("chosen_slot changed %s" % chosen_slot) self.signals_calendar(False) self.ui.weekCalendar.setSelectedDate(sync_date) self.set_date(sync_date) self.signals_calendar() def layout_agenda(self): ''' this populates the diary agenda ''' if self.ui.diary_tabWidget.currentIndex() != 4: return self.ui.agenda_calendar_frame.setLayout(self.calendar_layout) self.ui.agenda_control_frame.setLayout(self.control_layout) d = self.selected_date().toPyDate() agenda_data = appointments.AgendaData() self.appointmentData.setDate(d) self.appointmentData.getAppointments() if self.schedule_controller.mode == self.SCHEDULING_MODE: if d < localsettings.currentDay(): self.schedule_controller.cancel_search_mode() available_slots = self.appointmentData.slots(0) self.schedule_controller.set_primary_slots(available_slots) if available_slots == []: self.step_date(self.schedule_controller.searching_future) return else: available_slots = [] for app in self.appointmentData.appointments: agenda_data.add_appointment(d, app) for slot in available_slots: agenda_data.add_slot(slot) if (self.schedule_controller.mode == self.SCHEDULING_MODE and self.schedule_controller.appointment_model.currentAppt): if self.schedule_controller.searching_past: self.schedule_controller.use_last_slot = True self.schedule_controller.set_search_future() agenda_data.set_active_slot(self.schedule_controller.chosen_slot) self.agenda_widget.setText(agenda_data.to_html()) def getUserCheckedClinicians(self): ''' checks the gui to see which dentists, hygienists are checked. returns a list ''' retlist = [] for dent in self.monthClinicianSelector.selectedClinicians: retlist.append(localsettings.apptix.get(dent)) return tuple(retlist) def load_patients(self, list_of_snos): if len(list_of_snos) == 1: sno = list_of_snos[0] else: candidates = search.getcandidates_from_serialnos(list_of_snos) dl = FinalChoiceDialog(candidates, self) dl.exec_() sno = dl.chosen_sno if sno is not None: serialno = int(sno) self.patient_card_request.emit(serialno) def edit_appointment_memo_clicked(self, list_of_snos, start, dentist): if len(list_of_snos) != 1: self.advise( _("multiple appointments selected, unable to edit memo"), 2) return sno = list_of_snos[0] adate = self.selected_date().toPyDate() atime = int(start.replace(":", "")) note, result = appointments.get_appt_note(sno, adate, atime, dentist) if not result: self.advise(_("unable to locate appointment memo, sorry"), 2) else: new_note, result = QtWidgets.QInputDialog.getText( self, _("New Memo"), _("Please enter Memo for this appointment"), text=note) if result and new_note != note: appointments.set_appt_note( sno, adate, atime, dentist, new_note) self.layout_dayView() if self.pt: self.pt_diary_changed.emit(self.pt.serialno) def appointment_cancel(self, list_of_snos, start, dentist, adate=None): if len(list_of_snos) != 1: self.advise("multiple appointments selected, unable to cancel", 2) return sno = list_of_snos[0] serialno = int(sno) if adate is None: adate = self.selected_date().toPyDate() appt = appointments.APR_Appointment() appt.atime = int(start.replace(":", "")) appt.dent = dentist appt.date = adate appt.serialno = serialno appt.aprix = "UNKNOWN" dl = CancelAppointmentDialog(appt, self) if dl.exec_(): self.advise(dl.message, dl.message_severity) self.schedule_controller.get_data() self.layout_diary() def clearEmergencySlot(self, start, end, dent, adate=None): ''' this function is the slot for a signal invoked when the user clicks on a "blocked" slot. only question is... do they want to free it? it expects an arg like ('8:50', '11:00', 4) ''' LOGGER.debug("Block Slot %s %s %s %s", start, end, dent, adate) if adate is None: adate = self.selected_date().toPyDate() message = _("Do you want to unblock the selected slot?") message += "
    %s - %s
    " % (start, end) message += "%s
    " % localsettings.readableDate(adate) message += "with %s?" % localsettings.ops.get(dent) if QtWidgets.QMessageBox.question( self, _("Confirm"), message, QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: appt = appointments.APR_Appointment() appt.atime = localsettings.humanTimetoWystime(start) appt.date = adate appt.dent = dent appointments.delete_appt_from_aslot(appt) self.layout_diary() def blockEmptySlot(self, tup): ''' block the empty slot ''' adate = self.selected_date().toPyDate() start = tup[0].toPyTime() end = tup[1].toPyTime() adjstart = tup[2].toPyTime() adjend = tup[3].toPyTime() dent = tup[4] reason = tup[5] if not appointments.block_appt(adate, dent, start, end, adjstart, adjend, reason): self.advise( _("unable to block - " "has the book been altered elsewhere?"), 1) self.layout_dayView() def fillEmptySlot(self, tup): ''' fill the empty slot - this is called via the appointment widget. ''' adate = self.selected_date().toPyDate() start = tup[0].toPyTime() end = tup[1].toPyTime() adjstart = tup[2].toPyTime() adjend = tup[3].toPyTime() pt = tup[6] dent = tup[4] reason = tup[5] if not appointments.fill_appt(adate, dent, start, end, adjstart, adjend, reason, pt): self.advise( _("unable to make appointment - " "has the book been altered elsewhere?"), 1) self.layout_dayView() self.pt_diary_changed.emit(pt.serialno) def appt_dropped_onto_daywidget(self, appt, droptime, dent): ''' appointment has been dropped onto a daybook widget appt is of type openmolar.dbtools.appointments.Appointment droptime is a pytime dent = numeric representation of dentist who's book was involved ''' date_time = datetime.datetime.combine( self.selected_date().toPyDate(), droptime) LOGGER.debug("appt dropped %s %s %s" % (date_time, dent, appt.length)) slot = appointments.FreeSlot(date_time, dent, appt.length) self.makeAppt(appt, slot) def start_scheduling(self, custom=False, force_weekview=True): LOGGER.debug( "DiaryWidget.start_scheduling, force_weekview = %s", force_weekview) if force_weekview: self.connect_tabwidget(False) self.ui.diary_tabWidget.setCurrentIndex(1) self.connect_tabwidget() self.set_appt_mode(self.SCHEDULING_MODE, update_required=False) self.load_patient(self.schedule_controller.pt, update=False) self.begin_makeAppt(custom) def find_appt(self, appt): LOGGER.debug("DiaryWidgetfind_appt %s" % appt) pt = BriefPatient(appt.serialno) self.load_patient(pt) self.set_appt_mode(self.VIEW_MODE) self.set_date(appt.date) self.bring_to_front.emit() def aptOVlabelRightClicked(self, d): ''' user wants to change appointment overview properties for date d ''' dl = alterAday.alterDayDialog(self, d) if dl.getInput(): self.layout_weekView() def insert_regular_blocks(self): ''' insert blocks and appointments ''' dl = InsertBlocksDialog() if dl.exec_(): dl.apply() self.layout_diary() def diary_tabWidget_nav(self, i): ''' catches a signal that the diary tab widget has been moved ''' LOGGER.debug("diary_tabwidget_nav called") if i == 1 and self.schedule_controller.mode == self.NOTES_MODE: self.advise(_("Cancelling Notes Mode")) self.view_controller.set_mode(self.VIEW_MODE) self.schedule_controller.set_mode(self.VIEW_MODE) self.layout_diary() def schedule_controller_appointment_selected(self, appt): ''' a new appointment has been selected for scheduling ''' LOGGER.debug("DiaryWidget.schedule_controller_appointment_selected") if appt is not None and not appt.unscheduled: self.signals_calendar(False) self.ui.weekCalendar.setSelectedDate(appt.date) self.set_date(appt.date) self.signals_calendar() self.schedule_controller.reset() self.layout_diary() def step_date(self, forwards=True): date_ = self.selected_date() LOGGER.debug( "step date called current=%s, forwards=%s", date_, forwards) if forwards: if self.viewing_week: # goto 1st day of next week date_ = date_.addDays(1) while date_.dayOfWeek() != 1: date_ = date_.addDays(1) else: date_ = date_.addDays(1) else: if self.viewing_week: # goto last day of next week date_ = date_.addDays(-1) while date_.dayOfWeek() != 7: date_ = date_.addDays(-1) else: date_ = date_.addDays(-1) self.signals_calendar(False) self.set_date(date_) self.signals_calendar() self.layout_diary() def reset_and_view(self, patient): ''' called when the diary is made visible by user navigating the mainUI tabwidget ''' self.set_appt_mode(self.VIEW_MODE, update_required=False) self.ui.diary_tabWidget.setCurrentIndex(0) self.load_patient(patient, update=False) self.signals_calendar(False) self.set_date(localsettings.currentDay()) self.signals_calendar() self.layout_diary() @property def viewing_day(self): ''' is the user viewing a day? ''' return self.ui.diary_tabWidget.currentIndex() == 0 @property def viewing_week(self): ''' is the user viewing a week? ''' return self.ui.diary_tabWidget.currentIndex() == 1 @property def viewing_agenda(self): ''' is the user viewing a week? ''' return self.ui.diary_tabWidget.currentIndex() == 4 def memo_dialog(self, date_): dl = AppointmentsMemoDialog(date_, self) if dl.exec_(): dl.apply() self.layout_diary() def edit_public_hol(self, date_): ''' enter/modify the stored public holiday field ''' LOGGER.debug("edit pub hol for %s", date_) current = appointments.getBankHol(date_) new, result = QtWidgets.QInputDialog.getText( self, _("Public Holidays"), _("Enter the information for ") + localsettings.longDate(date_), QtWidgets.QLineEdit.Normal, current) new_value = str(new) if result and current != new_value: appointments.setPubHol(date_, new_value) self.layout_diary() def update_highlighted_appointment(self, appointment): ''' called if an appointment is clicked on. ''' LOGGER.debug("update highlighted appointment %s", appointment) if appointment: # synchronise the week date. for i, widg in enumerate(self.ui.apptoverviews): if widg == self.sender(): LOGGER.debug("updating calendar day number=%s", i) date_ = self.selected_date() while date_.dayOfWeek() > 1: date_ = date_.addDays(-1) self.signals_calendar(False) self.ui.weekCalendar.setSelectedDate(date_.addDays(i)) self.set_date(date_.addDays(i)) self.signals_calendar() if self.schedule_controller.mode == self.NOTES_MODE: self.show_todays_notes(appointment.serialno) self.highlighted_appointment = appointment self.schedule_controller.update_highlighted_appointment() if self.viewing_day: for widg in self.apptBookWidgets: widg.update() else: for widg in self.ui.apptoverviews: widg.update() def show_todays_notes(self, serialno): html = formatted_notes.todays_notes(serialno) self.ui.appt_notes_webView.setHtml(html) page = self.ui.appt_notes_webView.page() page.setLinkDelegationPolicy(page.DelegateAllLinks) def connect_tabwidget(self, connect=True): if connect: func_ = self.ui.diary_tabWidget.currentChanged.connect else: func_ = self.ui.diary_tabWidget.currentChanged.disconnect func_(self.diary_tabWidget_nav) def init_signals(self): self.connect_tabwidget() self.ui.goTodayPushButton.clicked.connect(self.gotoToday_clicked) self.ui.goto_current_week_PushButton.clicked.connect( self.gotoToday_clicked) self.ui.printMonth_pushButton.clicked.connect( self.printMonth_pushButton_clicked) self.schedule_controller.patient_selected.connect( self.load_patient) self.signals_appointmentOVTab() self.schedule_controller.show_first_appointment.connect( self.begin_makeAppt) self.schedule_controller.chosen_slot_changed.connect( self.chosen_slot_changed) self.schedule_controller.appointment_selected.connect( self.schedule_controller_appointment_selected) self.schedule_controller.find_appt.connect(self.find_appt) self.schedule_controller.schedule_signal.connect( self.begin_makeAppt) self.schedule_controller.advice_signal.connect(self.advise) self.view_controller.update_needed.connect(self.layout_diary) self.view_controller.apt_mode_changed.connect(self.set_appt_mode) def signals_apptWidgets(self, book): book.print_me_signal.connect(self.appointment_book_print) book.new_memo_signal.connect(self.bookmemo_Edited) book.load_patients_signal.connect(self.load_patients) book.edit_memo_signal.connect(self.edit_appointment_memo_clicked) book.cancel_appointment_signal.connect(self.appointment_cancel) book.clear_slot_signal.connect(self.clearEmergencySlot) book.block_empty_slot_signal.connect(self.blockEmptySlot) book.appt_empty_slot_signal.connect(self.fillEmptySlot) book.appt_dropped_signal.connect(self.appt_dropped_onto_daywidget) book.slot_clicked_signal.connect(self.userHasChosen_slot) book.print_mh_signal.connect(self.print_mh_signal.emit) book.location_signal.connect(self.location_signal.emit) book.mh_form_date_signal.connect(self.mh_form_date_signal.emit) book.appt_clicked_signal.connect(self.update_highlighted_appointment) def signals_calendar(self, connect=True): if connect: self.ui.dayCalendar.selectionChanged.connect(self.calendar_signal) else: self.ui.dayCalendar.selectionChanged.disconnect( self.calendar_signal) def signals_appointmentOVTab(self): self.signals_calendar() self.ui.weekCalendar.week_changed_signal.connect( self.ui.dayCalendar.setSelectedDate) for cal in (self.ui.yearView, self.ui.monthView): cal.selected_date_signal.connect( self.ui.dayCalendar.setSelectedDate) cal.memo_dialog_signal.connect(self.memo_dialog) cal.public_holiday_signal.connect(self.edit_public_hol) self.ui.aptOVprevmonth.clicked.connect(self.aptOV_monthBack) self.ui.aptOVnextmonth.clicked.connect(self.aptOV_monthForward) self.ui.aptOVprevyear.clicked.connect(self.aptOV_yearBack) self.ui.aptOVnextyear.clicked.connect(self.aptOV_yearForward) self.ui.monthView_clinicians_pushButton.clicked.connect( self.manage_month_and_year_View_clinicians) self.ui.yearView_clinicians_pushButton.clicked.connect( self.manage_month_and_year_View_clinicians) self.ui.monthClinicians_checkBox.clicked.connect( self.month_and_year_All_clinicians) self.ui.yearClinicians_checkBox.clicked.connect( self.month_and_year_All_clinicians) for widg in self.ui.apptoverviews: widg.slot_clicked_signal.connect(self.userHasChosen_slot) widg.appt_dropped_signal.connect(self.makeAppt) widg.header_clicked_signal.connect(self.apptOVheaderclick) widg.cancel_appointment_signal.connect(self.appointment_cancel) widg.clear_slot_signal.connect(self.clearEmergencySlot) widg.appt_clicked_signal.connect( self.update_highlighted_appointment) for control in self.ui.apptoverviewControls: control.dayview_signal.connect(self.aptOVlabelClicked) control.edit_hours_signal.connect(self.aptOVlabelRightClicked) control.edit_memo_signal.connect(self.memo_dialog) class _testDiary(QtWidgets.QMainWindow): def __init__(self, parent=None): QtWidgets.QMainWindow.__init__(self, parent) dw = DiaryWidget() dw.initiate() dw.patient_card_request.connect(self.sig_catcher) from openmolar.dbtools import patient_class pt = patient_class.patient(11956) dw.schedule_controller.set_patient(pt) localsettings.operator = "NW" self.setCentralWidget(dw) action1 = QtWidgets.QAction("clear emergency slots", self) action1.triggered.connect(dw.clearTodaysEmergencyTime) action2 = QtWidgets.QAction("insert regular blocks", self) action2.triggered.connect(dw.insert_regular_blocks) self.menuBar().addAction(action1) self.menuBar().addAction(action2) QtCore.QTimer.singleShot(100, dw.layout_diary) def sig_catcher(self, *args): print("signal caught", args) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) import gettext gettext.install("openmolar") localsettings.initiate() app = QtWidgets.QApplication([]) mw = _testDiary() mw.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/forum_widget.py0000644000175000017500000005727313015074121024001 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides the logic to manipulate the forum. ''' from functools import partial import logging from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import forum from openmolar.qt4gui.compiled_uis import Ui_forumPost from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.qt4gui.customwidgets.warning_label import WarningLabel LOGGER = logging.getLogger("openmolar") class GetForumPosterDialog(BaseDialog): ''' raise a dialog to determine who is posting to the forum ''' _user = None def __init__(self, user, parent=None): BaseDialog.__init__(self, parent) label = WarningLabel( "%s %s
    %s" % (user, _("is not allowed to post."), _("Who are you?"))) frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(frame) scroll_area = QtWidgets.QScrollArea() scroll_area.setWidgetResizable(True) scroll_area.setWidget(frame) for op in localsettings.allowed_logins: if op not in localsettings.disallowed_forum_posters: but = QtWidgets.QPushButton(op) but.clicked.connect(self.but_clicked) layout.addWidget(but) self.insertWidget(label) self.insertWidget(scroll_area) @property def chosen_user(self): return self._user def but_clicked(self): but = self.sender() self._user = but.text() self.accept() class GetForumUserDialog(BaseDialog): ''' raise a dialog to determine who is browsing the forum. if check is False, dialog will not show if there is only one registered user. ''' _user = None def __init__(self, check=False, parent=None): BaseDialog.__init__(self, parent) self.check = check self.enableApply() label = WarningLabel(_("Who is Browsing the Forum?")) self.insertWidget(label) other_ops = localsettings.allowed_logins[:] logged_in_ops = localsettings.operator.split("/") for op in logged_in_ops: if op in localsettings.allowed_logins: other_ops.remove(op) but = QtWidgets.QPushButton(op) but.clicked.connect(self.but_clicked) self.insertWidget(but) label2 = QtWidgets.QLabel(_("Or choose another user")) self.cb = QtWidgets.QComboBox() self.cb.addItem("--") self.cb.addItems(sorted(other_ops)) self.cb.currentTextChanged.connect(self.cb_interaction) self.insertWidget(label2) self.insertWidget(self.cb) @property def chosen_user(self): return self._user def cb_interaction(self, text): if text == "--": self._user = None else: self._user = text def but_clicked(self): but = self.sender() self._user = but.text() self.cb.setCurrentIndex(0) self.accept() def exec_(self): ops = localsettings.operator.split("/") if len(ops) == 1 and ops[0] in localsettings.allowed_logins: self._user = ops[0] if not self.check: return True return BaseDialog.exec_(self) class ForumWidget(QtWidgets.QWidget): ''' A ui for the forum ''' departed_signal = QtCore.pyqtSignal() new_posts_signal = QtCore.pyqtSignal() unread_posts_signal = QtCore.pyqtSignal(object) parenting_mode = (False, None) spliiter_resized = False _forum_user = None _forum_poster = None DEFAULT_BRUSH = QtGui.QBrush() BLUE_BRUSH = QtGui.QBrush(QtGui.QColor("blue")) RED_BRUSH = QtGui.QBrush(QtGui.QColor("red")) ALT_BRUSH = QtGui.QBrush(QtGui.QColor(250, 250, 250)) NORM_BRUSH = QtGui.QBrush(QtGui.QColor(240, 240, 240)) read_ids = set([]) new_read_ids = set([]) important_post_toggles = {} def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.tree_widget = QtWidgets.QTreeWidget() self.tree_widget.setSortingEnabled(False) self.tree_widget.setSelectionMode( self.tree_widget.ExtendedSelection) control_frame = QtWidgets.QFrame() self.browser_user_label = QtWidgets.QLabel() self.browser_user_label.setAlignment( QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter) self.browser_user_label.setStyleSheet("color:blue;") change_user_button = QtWidgets.QPushButton(_("Change")) self.header_label = QtWidgets.QLabel() self.topic_label = QtWidgets.QLabel() self.browser = QtWidgets.QTextBrowser() self.reply_button = QtWidgets.QPushButton(_("Reply")) self.archive_button = QtWidgets.QPushButton(_("Archive Post(s)")) self.important_button = QtWidgets.QPushButton(_("Toggle Importance")) self.all_read_button = QtWidgets.QPushButton( _("Mark Selected Post(s) as Read")) self.parent_button = QtWidgets.QPushButton(_("Set Parent")) self.new_topic_button = QtWidgets.QPushButton(_("New Topic")) self.show_deleted_cb = QtWidgets.QCheckBox(_("Include Archived Posts")) icon = QtGui.QIcon.fromTheme("view-refresh") refresh_button = QtWidgets.QPushButton(icon, "") refresh_button.setFixedWidth(40) layout = QtWidgets.QGridLayout(control_frame) layout.addWidget(self.header_label, 0, 0, 1, 3) layout.addWidget(self.topic_label, 1, 0, 1, 3) layout.addWidget(self.browser, 2, 0, 1, 3) layout.addWidget(self.browser_user_label, 3, 0, 1, 2) layout.addWidget(change_user_button, 3, 2) layout.addWidget(self.new_topic_button, 4, 0, 1, 3) layout.addWidget(self.reply_button, 5, 0, 1, 3) layout.addWidget(self.archive_button, 6, 0, 1, 3) layout.addWidget(self.all_read_button, 7, 0, 1, 3) layout.addWidget(self.important_button, 8, 0, 1, 3) layout.addWidget(self.parent_button, 9, 0, 1, 3) layout.addWidget(self.show_deleted_cb, 10, 1, 1, 2) layout.addWidget(refresh_button, 10, 0) self.splitter = QtWidgets.QSplitter() self.splitter.addWidget(self.tree_widget) self.splitter.addWidget(control_frame) layout = QtWidgets.QVBoxLayout(self) layout.addWidget(self.splitter) self.timer = QtCore.QTimer() self.timer.timeout.connect(self.check_for_new_posts) self.bold_font = QtGui.QFont(QtWidgets.QApplication.instance().font()) self.bold_font.setBold(True) change_user_button.clicked.connect(self.change_user_but_clicked) refresh_button.clicked.connect(self.refresh_button_clicked) self.signals() self.show_advanced_options(False) def log_in_successful(self): self.timer.start(60000) # fire every minute QtCore.QTimer.singleShot(2000, self.check_for_new_posts) @property def is_fully_read(self): return forum.is_fully_read() def advise(self, message): QtWidgets.QMessageBox.information(self, _("Information"), message) def wait(self, waiting=True): if waiting: QtWidgets.QApplication.instance().setOverrideCursor( QtCore.Qt.WaitCursor) else: QtWidgets.QApplication.instance().restoreOverrideCursor() def change_user_but_clicked(self): self.apply_new_reads() self._forum_poster = None self._forum_user = self.forum_user(check=True) self.loadForum() def refresh_button_clicked(self): LOGGER.debug("user forcing forum refresh") self.apply_new_reads() self.loadForum() def showEvent(self, event=None): LOGGER.info("ForumWidget showEvent") self.timer.stop() if not self.spliiter_resized: self.splitter.setSizes([self.width()*.7, self.width()*.3]) self.spliiter_resized = True QtCore.QTimer.singleShot(100, self.loadForum) def hideEvent(self, event=None): self.apply_new_reads() parenting_mode = (False, None) self.cancel_parenting_mode() self._forum_user = None self._forum_poster = None self.departed_signal.emit() self.timer.start(60000) # fire every minute def forum_poster(self): if self._forum_poster is None: self._forum_poster = self.forum_user() if self._forum_poster in localsettings.disallowed_forum_posters: dl = GetForumPosterDialog(self._forum_poster, self) dl.exec_() self._forum_poster = dl.chosen_user return self._forum_poster def forum_user(self, check=False): LOGGER.info("forum_user called") if check or self._forum_user is None: self.read_ids = set([]) dl = GetForumUserDialog(check, self) if dl.exec_(): self._forum_user = dl.chosen_user self.read_ids = set(forum.get_read_post_ids(self._forum_user)) else: self._forum_user = None return self._forum_user def signals(self): self.tree_widget.itemSelectionChanged.connect(self.forumItemSelected) self.archive_button.clicked.connect(self.forumDeleteItem) self.reply_button.clicked.connect(self.forumReply) self.new_topic_button.clicked.connect(self.forumNewTopic) self.parent_button.clicked.connect(self.forumParent) self.important_button.clicked.connect(self.toggle_importance) self.show_deleted_cb.toggled.connect(self.loadForum) self.all_read_button.clicked.connect(self.mark_all_as_read) def forum_mode(self): ''' forum has an advanced mode, disabled by default ''' #advanced_mode = self.ui.action_forum_show_advanced_options.isChecked() advanced_mode = True self.parent_button.setVisible(advanced_mode) self.deleted_cb.setVisible(advanced_mode) # self.ui.forumExpand_pushButton.setVisible(advanced_mode) # self.ui.forumCollapse_pushButton.setVisible(advanced_mode) def forumCollapse(self): ''' user has pressed the collapse button ''' self.tree_widget.collapseAll() def forumExpand(self): ''' user has pressed the expand button ''' self.tree_widget.expandAll() def check_for_new_posts(self): ''' checks for new forum posts every few minutes ''' users = localsettings.operator.split("/") total_unread = 0 for user in users: n = forum.number_of_unread_posts(user) total_unread += n if n: self.unread_posts_signal.emit( "%s %s (%s)" % (user, _("has unread posts"), n)) if total_unread: self.new_posts_signal.emit() def clear(self): self.tree_widget.clear() self.browser_user_label.setText(_("No User Set")) self.clear_browser() self.new_read_ids = set([]) def clear_browser(self): self.tree_widget.setHeaderLabels(forum.headers) self.header_label.setText(_("No message Loaded")) self.topic_label.setText("") self.browser.setText("") self.archive_button.setEnabled(False) self.all_read_button.setEnabled(False) self.reply_button.setEnabled(False) self.important_button.setEnabled(False) self.important_button.setText(_("Toggle Importance")) self.important_button.setStyleSheet("") self.parent_button.setEnabled(False) def loadForum(self): ''' loads the forum ''' self.apply_new_reads() self.clear() user = self.forum_user() if not user: QtWidgets.QMessageBox.warning( self, _("Sorry"), _("Anonymous browsing of the forum is not supported")) return else: self.browser_user_label.setText( "%s %s" % (_("Browing Forum as"), user)) self.wait() twidg = self.tree_widget posts = forum.getPosts(user, self.show_deleted_cb.isChecked()) parentItems = {None: twidg} alt_bg = False for post in posts: try: parentItem = parentItems[post.parent_ix] brush = parentItem.background(0) except KeyError: parentItem = twidg alt_bg = not alt_bg brush = self.ALT_BRUSH if alt_bg else self.NORM_BRUSH item = QtWidgets.QTreeWidgetItem(parentItem) item.setText(0, post.topic) item.setData(0, QtCore.Qt.UserRole, post) item.setText(1, post.inits) if post.recipient: item.setText(2, post.recipient) else: item.setText(2, "-") item.setText(3, localsettings.readableDateTime(post.date)) item.setText(4, post.briefcomment) if parentItem == twidg: item.setIcon(0, self.new_topic_button.icon()) if post.recipient == user: item.setForeground(2, self.BLUE_BRUSH) if post.inits == user: item.setForeground(1, self.BLUE_BRUSH) post_is_read = post.ix in self.read_ids.union(self.new_read_ids) for i in range(5): item.setBackground(i, brush) if not post_is_read: item.setFont(i, self.bold_font) if post.important: item.setForeground(i, self.RED_BRUSH) parentItems[post.ix] = item twidg.expandAll() for i in range(twidg.columnCount()): twidg.resizeColumnToContents(i) self.wait(False) twidg.verticalScrollBar().setValue(twidg.verticalScrollBar().maximum()) def forumItemSelected(self): ''' user has selected an item in the forum ''' self.clear_browser() n_selected = len(self.tree_widget.selectionModel().selectedRows()) if n_selected > 0: self.archive_button.setEnabled(True) self.all_read_button.setEnabled(True) if n_selected != 1: return item = self.tree_widget.currentItem() post = item.data(0, QtCore.Qt.UserRole) LOGGER.debug("forum post selected %s", post) self.topic_label.setText("%s:\t%s" % (_("Subject"), post.topic)) heading = "%s:\t%s
    " % (_("From"), post.inits) heading += "%s:\t%s
    " % (_("To"), post.recipient) heading += "%s:\t%s" % (_("Post Date"), localsettings.readableDateTime(post.date)) self.header_label.setText(heading) self.browser.setPlainText(post.comment) self.reply_button.setEnabled(True) if post.important: self.important_button.setStyleSheet("color: red") self.important_button.setText(_("Remove importance")) else: self.important_button.setStyleSheet("") self.important_button.setText(_("Mark as important")) self.important_button.setEnabled(True) self.parent_button.setEnabled(True) if self.parenting_mode[0]: try: if self.parenting_mode[1] < post.ix: self.advise( _("Parent topic is newer, operation not allowed")) else: forum.setParent(self.parenting_mode[1], post.ix) except Exception as exc: raise exc finally: self.cancel_parenting_mode() self.loadForum() else: QtCore.QTimer.singleShot(3000, partial(self.mark_as_read, post.ix)) def cancel_parenting_mode(self): self.parenting_mode = (False, None) self.parent_button.setStyleSheet("") def mark_as_read(self, ix): item = self.tree_widget.currentItem() if item is None: return post = item.data(0, QtCore.Qt.UserRole) if ix == post.ix: self.new_read_ids.add(ix) for i in range(5): item.setFont(i, QtWidgets.QApplication.font()) def forumDeleteItem(self): ''' delete a forum posting ''' self.apply_new_reads() items = self.tree_widget.selectedItems() number = len(items) if number > 1: if QtWidgets.QMessageBox.question( self, _("Confirm"), "%s %d %s?" % (_("Archive"), number, _(" Posts")), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: for item in items: post = item.data(0, QtCore.Qt.UserRole) forum.deletePost(post.ix) else: item = self.tree_widget.currentItem() post = item.data(0, QtCore.Qt.UserRole) if QtWidgets.QMessageBox.question( self, _("Confirm"), _("Archived selected Post?") + "
    '%s'" % post.topic, QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: forum.deletePost(post.ix) self.loadForum() def toggle_importance(self): item = self.tree_widget.currentItem() if item is None: return post = item.data(0, QtCore.Qt.UserRole) LOGGER.debug("toggling importance of forum post %s", post) for i in range(5): if post.important: item.setForeground(i, self.DEFAULT_BRUSH) else: item.setForeground(i, self.RED_BRUSH) post.important = not post.important self.important_post_toggles[post.ix] = post.important self.forumItemSelected() def apply_new_reads(self): if self._forum_user: forum.update_forum_read(self._forum_user, self.new_read_ids) forum.update_important_posts(self._forum_user, self.important_post_toggles) self.read_ids = self.read_ids.union(self.new_read_ids) self.new_read_ids = set([]) self.important_post_toggles = {} def forumNewTopic(self): ''' create a new post ''' self.apply_new_reads() Dialog = QtWidgets.QDialog(self) dl = Ui_forumPost.Ui_Dialog() dl.setupUi(Dialog) dl.to_comboBox.addItems([_("EVERYBODY")] + localsettings.allowed_logins) while True: if Dialog.exec_(): if dl.topic_lineEdit.text() == "": self.advise(_("Please set a topic")) else: break else: return post = forum.ForumPost() post.topic = dl.topic_lineEdit.text() post.comment = dl.comment_textEdit.toPlainText() post.inits = self.forum_poster() if dl.to_comboBox.currentIndex != 0: post.recipient = dl.to_comboBox.currentText() ix = forum.commitPost(post) self.read_ids.add(ix) self.loadForum() def mark_all_as_read(self): ''' delete a forum posting ''' items = self.tree_widget.selectedItems() if not items: return if QtWidgets.QMessageBox.question( self, _("Confirm"), "%s %s?" % (_("Mark Selected Posts as read by"), self.forum_user()), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: for item in items: post = item.data(0, QtCore.Qt.UserRole) if post.ix not in self.read_ids: self.new_read_ids.add(post.ix) self.apply_new_reads() self.loadForum() def forumReply(self): ''' reply to an item ''' self.apply_new_reads() item = self.tree_widget.currentItem() post = item.data(0, QtCore.Qt.UserRole) heading = post.topic if heading[:2] != "re": heading = "re. " + heading Dialog = QtWidgets.QDialog(self) dl = Ui_forumPost.Ui_Dialog() dl.setupUi(Dialog) dl.topic_lineEdit.setText(heading) dl.to_comboBox.addItems([_("EVERYBODY")] + localsettings.allowed_logins) if Dialog.exec_(): newpost = forum.ForumPost() newpost.parent_ix = post.ix newpost.topic = dl.topic_lineEdit.text() newpost.comment = dl.comment_textEdit.toPlainText() newpost.inits = self.forum_poster() newpost.recipient = dl.to_comboBox.currentText() ix = forum.commitPost(newpost) self.read_ids.add(ix) self.loadForum() def forumParent(self): ''' set a parent for the current post ''' item = self.tree_widget.currentItem() post = item.data(0, QtCore.Qt.UserRole) if self.parenting_mode[0]: self.parenting_mode = (False, None) self.advise(_("Parenting Cancelled")) self.parent_button.setStyleSheet("") return self.parent_button.setStyleSheet("background-color: red") self.advise(_("Click on the Parent Item")) self.parenting_mode = (True, post.ix) def show_advanced_options(self, advanced): self.parent_button.setVisible(advanced) class ForumMainWindow(QtWidgets.QMainWindow): ''' A class to run the forum as a standalone application ''' def __init__(self, parent=None): QtWidgets.QMainWindow.__init__(self, parent) fw = ForumWidget(self) fw.log_in_successful() fw.show_advanced_options(True) self.setCentralWidget(fw) def sizeHint(self): return QtCore.QSize(1400, 600) if __name__ == "__main__": localsettings.initiateUsers() localsettings.operator = "NW" localsettings.disallowed_forum_posters = ["NW"] LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) mw = ForumMainWindow() mw.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/maingui.py0000755000175000017500000042370213023760043022740 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' provides the main class which is my gui ''' import datetime import logging import os import pickle import re import sys import traceback import webbrowser # for email from functools import partial from PyQt5 import QtCore from PyQt5 import QtGui from PyQt5 import QtWidgets from openmolar.connect import params from openmolar.settings import localsettings, utilities from openmolar.qt4gui import colours # - fee modules which interact with the gui from openmolar.qt4gui.fees import fees_module from openmolar.qt4gui.fees import course_module from openmolar.qt4gui.fees import manipulate_plan from openmolar.qt4gui.fees import daybook_module from openmolar.qt4gui.fees import cashbook_module from openmolar.qt4gui.fees import fee_table_model from openmolar.qt4gui.fees.treatment_list_models \ import PlannedTreatmentListModel, CompletedTreatmentListModel from openmolar.qt4gui import contract_gui_module from openmolar.qt4gui import new_patient_gui from openmolar.qt4gui.printing import om_printing from openmolar.qt4gui.printing.gp17.gp17_printer import GP17Printer from openmolar.qt4gui.charts import charts_gui # -dialogs made with designer from openmolar.qt4gui.compiled_uis import Ui_main from openmolar.qt4gui.compiled_uis import Ui_surgeryNumber from openmolar.qt4gui.compiled_uis import Ui_showMemo # -custom dialog modules from openmolar.qt4gui.dialogs import permissions from openmolar.qt4gui.dialogs.dialog_collection import ( AccountLetterDialog, AccountSeverityDialog, AddClinicianDialog, AddUserDialog, AdvancedNamesDialog, AdvancedRecordManagementDialog, AdvancedTxPlanningDialog, AlterTodaysNotesDialog, ApptPrefsDialog, AssistantSelectDialog, AutoAddressDialog, BookendDialog, BPE_Dialog, CheckVersionDialog, ChildSmileDialog, ChooseToothDialog, ClinicianSelectDialog, ClearLocationsDialog, CorrespondenceDialog, CourseConsistencyDialog, CourseEditDialog, CourseMergeDialog, CourseHistoryOptionsDialog, DatabaseConnectionProgressDialog, DaybookItemDialog, DaybookEditDialog, DocumentDialog, DuplicateReceiptDialog, EditPracticeDialog, EditTreatmentDialog, EditReferralCentresDialog, EditStandardLettersDialog, EstimateEditDialog, ExamWizard, FamilyManageDialog, FindPatientDialog, FirstRunDialog, HygTreatWizard, InitialCheckDialog, LanguageDialog, LoadRelativesDialog, LoginDialog, MedicalHistoryDialog, MedFormCheckDialog, NHSFormsConfigDialog, PatientLocationDialog, ResetSupervisorPasswordDialog, RecallDialog, SaveDiscardCancelDialog, SaveMemoDialog, ) from openmolar.qt4gui.dialogs import medical_form_date_entry_dialog from openmolar.qt4gui.phrasebook.phrasebook_dialog import PhraseBookDialog from openmolar.qt4gui.phrasebook.phrasebook_dialog import PHRASEBOOKS from openmolar.qt4gui.phrasebook.phrasebook_editor import PhrasebookEditor # -database modules # -(do not even think of making db queries from ANYWHERE ELSE) from openmolar.dbtools import appointments from openmolar.dbtools import patient_write_changes from openmolar.dbtools import recall from openmolar.dbtools import patient_class from openmolar.dbtools import calldurr from openmolar.dbtools import docsprinted from openmolar.dbtools import docsimported from openmolar.dbtools import memos from openmolar.dbtools import medhist from openmolar.dbtools import nhs_claims from openmolar.dbtools import daybookHistory from openmolar.dbtools import paymentHistory from openmolar.dbtools import courseHistory from openmolar.dbtools import estimatesHistory from openmolar.dbtools import est_logger from openmolar.dbtools import daybook from openmolar.dbtools.distinct_statuses import DistinctStatuses from openmolar.dbtools import schema_version from openmolar.dbtools import referral from openmolar.dbtools import records_in_use from openmolar.dbtools import locations # -modules which act upon the pt class type (and subclasses) from openmolar.ptModules import patientDetails from openmolar.ptModules import formatted_notes from openmolar.ptModules import plan from openmolar.ptModules import debug_html from openmolar.ptModules import estimates from openmolar.ptModules import tooth_history from openmolar.ptModules import hidden_notes from openmolar.ptModules import reception_summary # -modules which use qprinter from openmolar.qt4gui.printing import multiDayListPrint from openmolar.qt4gui.printing import bulk_mail # -custom widgets from openmolar.qt4gui.diary_widget import DiaryWidget from openmolar.qt4gui.pt_diary_widget import PtDiaryWidget from openmolar.qt4gui.forum_widget import ForumWidget from openmolar.qt4gui.customwidgets import chartwidget from openmolar.qt4gui.customwidgets import toothProps from openmolar.qt4gui.customwidgets import estimate_widget from openmolar.qt4gui.customwidgets import notification_widget from openmolar.qt4gui.customwidgets.static_control_panel \ import StaticControlPanel from openmolar.backports.advisor import Advisor LOGGER = logging.getLogger("openmolar") class OpenmolarGui(QtWidgets.QMainWindow, Advisor): ''' the main gui class for openmolar ''' fee_table_editor = None fee_table_tester = None phrasebook_editor = None entering_new_patient = False reception_notes_loaded = False summary_notes_loaded = False notes_loaded = False _db_connnection_progress_dialog = None _reloading_record = False def __init__(self, parent=None): QtWidgets.QMainWindow.__init__(self, parent) Advisor.__init__(self, parent) self.ui = Ui_main.Ui_MainWindow() self.ui.setupUi(self) self.diary_widget = DiaryWidget(self) self.forum_widget = ForumWidget(self) self.ui.tab_appointments.layout().addWidget(self.diary_widget) self.ui.tab_forum.layout().addWidget(self.forum_widget) self.pt_diary_widget = PtDiaryWidget(self) self.ui.pt_diary_groupBox.layout().addWidget(self.pt_diary_widget) self.ui.splitter_patient.setSizes([80, 20]) # -initiate a blank version of the patient class this # -is used to check for state. # -make a deep copy to check for changes self.pt = patient_class.patient(0) self.selectedChartWidget = "st" # other values are "pl" or "cmp" self.editPageVisited = False self.forum_notified = False self.fee_models = [] self.wikiloaded = False self.addCustomWidgets() self.labels_and_tabs() self.letters = bulk_mail.bulkMails(self) self.ui.bulk_mailings_treeView.setModel(self.letters.bulk_model) self.ui.actionSurgery_Mode.setChecked( localsettings.station == "surgery") self.setupSignals() self.feestableLoaded = False self.ui.new_patient_frame.hide() self.ui.plan_listView.setModel(PlannedTreatmentListModel(self)) self.ui.plan_listView.setContextMenuPolicy( QtCore.Qt.CustomContextMenu) self.ui.completed_listView.setModel(CompletedTreatmentListModel(self)) self.ui.completed_listView.setContextMenuPolicy( QtCore.Qt.CustomContextMenu) self.setWindowTitle("OpenMolar - %s" % _("OFFLINE")) # reimplement these functions to catch "clicked links" self.ui.daybook_filters_frame.setEnabled(False) self.ui.debugBrowser.setSource = self.set_browser_source self.ui.daybookTextBrowser.setSource = self.set_browser_source self.ui.backButton.setEnabled(False) self.ui.nextButton.setEnabled(False) self.ui.reloadButton.setEnabled(False) self.ui.relatedpts_pushButton.setEnabled(False) self.debug_browser_refresh_func = None self.records_in_use_timer = QtCore.QTimer() self.dcp_dialog = DatabaseConnectionProgressDialog(self) QtCore.QTimer.singleShot(500, self.check_first_run) LOGGER.debug("__init__ finished") def initiate(self): ''' initiate settings etc. ''' LOGGER.debug("Initiate") localsettings.initiate() self.setWindowTitle("OpenMolar - %s '%s'" % ( _("connected to"), params.database_name)) dl = InitialCheckDialog(self) for message in dl.critical_messages: self.advise("%s
    %s" % (_("CRITICAL MESSAGE"), message), 2) if dl.has_issues: dl.exec_() for message in dl.messages: self.advise(message) self.set_surgery_mode() self.load_pt_statuses() self.loadDentistComboboxes() self.ui.notesSummary_webView.setHtml(localsettings.message) QtCore.QTimer.singleShot(500, self.load_todays_patients_combobox) QtCore.QTimer.singleShot(1000, self.load_fee_tables) self.records_in_use_timer.start(5000) # fire every 5 seconds self.records_in_use_timer.timeout.connect(self.check_records_in_use) self.set_referral_centres() self.diary_widget.initiate() QtCore.QTimer.singleShot(12000, self.check_version) self.forum_widget.log_in_successful() def check_first_run(self): ''' called to see if the is the first running of the application ''' LOGGER.debug("check first run") if os.path.exists(localsettings.global_cflocation): localsettings.cflocation = localsettings.global_cflocation cf_found = True else: cf_found = os.path.exists(localsettings.cflocation) if not cf_found or localsettings.FORCE_FIRST_RUN: dl = FirstRunDialog(self) if not dl.exec_(): QtWidgets.QApplication.instance().closeAllWindows() return params.reload() self.login() def forced_quit(self, reason): LOGGER.info("Forced quit %s", reason) app = QtWidgets.QApplication.instance() QtCore.QTimer.singleShot(4000, app.closeAllWindows) self.advise(reason, 1) app.closeAllWindows() def login(self, dl=None): ''' raise a dialog and get the user to login ''' LOGGER.debug("login called") if dl is None: dl = LoginDialog(self) if not dl.exec_(): self.forced_quit(_("Login Cancelled- Closing Application")) return if self.await_connection(): LOGGER.debug("getting allowed logins") dl.db_check() if dl.login_ok: if dl.reception_radioButton.isChecked(): localsettings.station = "reception" localsettings.setOperator(dl.user1, dl.user2) self.advise("%s %s %s" % ( _("Login by"), localsettings.operator, "accepted")) self.check_schema() self.initiate() else: self.advise('

    %s %s

    %s' % ( _('Incorrect'), _("User/password combination!"), _('Please Try Again.')), 2) self.login(dl) def await_connection(self): LOGGER.debug("await_connection called") if self.dcp_dialog.exec_(): return True return False def check_version(self): ''' ping openmolar.com to see if an application update is available if there is one, inform the user. ''' dl = CheckVersionDialog(parent=self) if self.sender() == self.ui.actionCheck_for_Updates: dl.exec_() else: dl.background_exec() def check_schema(self): ''' check to see the client schema matches the server version ''' LOGGER.debug("checking schema version...") if localsettings.IGNORE_SCHEMA_CHECK: LOGGER.warning( "Ignoring schema check - I hope you know what you are doing!") self.advise(_("Warning - ignoring schema check!"), 2) return sv = schema_version.getVersion() if localsettings.CLIENT_SCHEMA_VERSION == sv: self.advise(_("database schema is up to date")) elif localsettings.CLIENT_SCHEMA_VERSION > sv: LOGGER.warning("schema is out of date") self.advise(_("database schema is incompatible")) from openmolar.qt4gui.schema_updater import SchemaUpdater schema_updater = SchemaUpdater() if not schema_updater.exec_(): QtWidgets.QApplication.instance().closeAllWindows() elif localsettings.CLIENT_SCHEMA_VERSION < sv: LOGGER.warning("client is out of date") compatible = schema_version.clientCompatibility( localsettings.CLIENT_SCHEMA_VERSION) if not compatible: self.advise("

    %s

    %s %s %s %s


    %s" % ( _('Sorry, you cannot run this version of the openMolar ' 'client because your database schema is more advanced.'), _('this client requires schema version '), localsettings.CLIENT_SCHEMA_VERSION, _('but your database is at'), sv, _('Please Update openMolar now')), 2) QtWidgets.QApplication.instance().closeAllWindows() else: message = '''

    %s

    %s %s %s %s

    %s
    %s


    %s''' % ( _('This openMolar client has fallen behind your database ' 'schema version'), _('This client was written for schema version'), localsettings.CLIENT_SCHEMA_VERSION, _('and your database is now at'), sv, _('However, the differences are not critical, and you can ' 'continue if you wish'), _('It would still be wise to update this client ASAP'), _('Do you wish to continue?')) if (QtWidgets.QMessageBox.question( self, _("Proceed without upgrade?"), message, QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.No): QtWidgets.QApplication.instance().closeAllWindows() def resizeEvent(self, event): ''' this function is overwritten so that the advisor popup can be put in the correct place ''' QtWidgets.QMainWindow.resizeEvent(self, event) self.setBriefMessageLocation() def showEvent(self, event): ''' this function is overwritten so that the advisor popup can be put in the correct place ''' QtWidgets.QMainWindow.showEvent(self, event) QtCore.QTimer.singleShot(100, self.setBriefMessageLocation) def setBriefMessageLocation(self): ''' make the Advisor sub class aware of the windows geometry. set it top right, and right_to_left ''' widg = self.menuBar() brief_pos_x = (widg.pos().x() + widg.width()) brief_pos_y = (widg.pos().y() + widg.height()) brief_pos = QtCore.QPoint(brief_pos_x, brief_pos_y) self.setBriefMessagePosition(brief_pos, True) def wait(self, waiting=True): if waiting: QtWidgets.QApplication.instance().setOverrideCursor( QtCore.Qt.WaitCursor) else: QtWidgets.QApplication.instance().restoreOverrideCursor() def notify(self, message): ''' pop up a notification ''' self.advise(message) self.ui.notificationWidget.addMessage(message) def quit(self): ''' function called by the quit button in the menu ''' QtWidgets.QApplication.instance().closeAllWindows() def closeEvent(self, event=None): ''' overrule QMaindow's close event check for unsaved changes then politely close the app if appropriate ''' LOGGER.info("quit called") if params.was_connected and not params.connection_abandoned: if not self.okToLeaveRecord(): event.ignore() return try: self.clear_all_records_in_use() except Exception: LOGGER.exception("unable to clear record in use") if self.fee_table_tester is not None: self.fee_table_tester.accept() if self.fee_table_editor: self.fee_table_editor.show() self.fee_table_editor.raise_() self.fee_table_editor.closeEvent(event) if self.phrasebook_editor: self.phrasebook_editor.show() self.phrasebook_editor.raise_() self.phrasebook_editor.closeEvent(event) utilities.deleteTempFiles() def fullscreen(self): ''' toggle full screen mode. ''' if self.ui.actionFull_Screen_Mode_Ctrl_Alt_F.isChecked(): self.setWindowState(QtCore.Qt.WindowFullScreen) else: self.setWindowState(QtCore.Qt.WindowMaximized) def aboutOM(self): ''' called by menu - help - about openmolar ''' self.advise('''

    %s

    %s

    ''' % (localsettings.about(), localsettings.license_), 1) def addCustomWidgets(self): ''' add custom widgets to the gui, and customise a few that are there already ''' # statusbar self.statusbar_frame = QtWidgets.QFrame() self.operator_label = QtWidgets.QLabel() self.loadedPatient_label = QtWidgets.QLabel() self.loadedPatient_label.setMinimumWidth(450) self.sepline = QtWidgets.QFrame(self.statusbar_frame) self.sepline.setFrameShape(QtWidgets.QFrame.VLine) self.sepline.setFrameShadow(QtWidgets.QFrame.Sunken) hlayout = QtWidgets.QHBoxLayout(self.statusbar_frame) hlayout.addWidget(self.loadedPatient_label) hlayout.addWidget(self.sepline) hlayout.addWidget(self.operator_label) hlayout.setContentsMargins(0, 0, 0, 0) self.ui.statusbar.addPermanentWidget(self.statusbar_frame) # summary chart self.ui.summaryChartWidget = chartwidget.chartWidget() self.ui.summaryChartWidget.setShowSelected(False) self.ui.summaryChartWidget.setFocusPolicy(QtCore.Qt.StrongFocus) hlayout = QtWidgets.QHBoxLayout(self.ui.staticSummaryPanel) hlayout.addWidget(self.ui.summaryChartWidget) # static chart self.ui.staticChartWidget = chartwidget.chartWidget() self.ui.staticChartWidget.setFocusPolicy(QtCore.Qt.StrongFocus) hlayout = QtWidgets.QHBoxLayout(self.ui.static_groupBox) hlayout.addWidget(self.ui.staticChartWidget) self.ui.static_groupBox.setStyleSheet("border: 1px solid gray;") # plan chart self.ui.planChartWidget = chartwidget.chartWidget() self.ui.planChartWidget.setFocusPolicy(QtCore.Qt.StrongFocus) self.ui.planChartWidget.isStaticChart = False self.ui.planChartWidget.isPlanChart = True self.ui.plan_groupBox.setStyleSheet("border: 1px solid gray;") hlayout = QtWidgets.QHBoxLayout(self.ui.plan_groupBox) hlayout.addWidget(self.ui.planChartWidget) # completed chart self.ui.completedChartWidget = chartwidget.chartWidget() self.ui.completedChartWidget.isStaticChart = False hlayout = QtWidgets.QHBoxLayout(self.ui.completed_groupBox) hlayout.addWidget(self.ui.completedChartWidget) self.ui.completed_groupBox.setStyleSheet("border: 1px solid gray;") # static control panel self.ui.static_control_panel = StaticControlPanel() hlayout = QtWidgets.QHBoxLayout(self.ui.static_frame) hlayout.setContentsMargins(0, 0, 0, 0) hlayout.addWidget(self.ui.static_control_panel) # TOOTHPROPS (right hand side on the charts page) self.ui.toothPropsWidget = toothProps.ToothPropertyEditingWidget(self) hlayout = QtWidgets.QHBoxLayout(self.ui.toothProps_frame) hlayout.setContentsMargins(0, 0, 0, 0) hlayout.addWidget(self.ui.toothPropsWidget) self.enableEdit(False) # - add a header to the estimates page self.ui.estWidget = estimate_widget.EstimateWidget(self) self.ui.estimate_scrollArea.setWidget(self.ui.estWidget) # -history self.addHistoryMenu() # -notification widget self.ui.notificationWidget = \ notification_widget.NotificationWidget(self) self.ui.details_frame.layout().addWidget(self.ui.notificationWidget) # cashbook browser self.ui.cashbookTextBrowser = cashbook_module.CashBookBrowser(self) layout = QtWidgets.QVBoxLayout(self.ui.cashbook_placeholder_widget) layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(self.ui.cashbookTextBrowser) def set_referral_centres(self): # -updates the current time in appointment books self.ui.referralLettersComboBox.clear() self.ui.referralLettersComboBox.addItems(referral.getDescriptions()) def setClinician(self): result, selected = ClinicianSelectDialog(self).result() if result: self.advise(_("changed clinician to") + " " + selected) self.load_todays_patients_combobox() self.set_operator_label() def setAssistant(self): result, selected = AssistantSelectDialog(self).result() if result: self.advise(_("changed assistant to") + " " + selected) self.set_operator_label() def saveButtonClicked(self): self.okToLeaveRecord(discard_possible=False) def bpe_table(self, arg): ''' updates the BPE chart on the clinical summary page ''' charts_gui.bpe_table(self, arg) def deleteComments(self): ''' called when user has trigger deleted comments in the toothProp ''' charts_gui.deleteComments(self) def updateCharts(self, arg): ''' called by a signal from the toothprops widget - args are the new tooth properties eg modbl,co ''' charts_gui.updateCharts(self, arg) def navigateCharts(self, direction): ''' catches a keypress in the toothprop widget ''' charts_gui.navigateCharts(self, direction) def static_chartNavigation(self, signal): ''' called by the static or summary chartwidget ''' charts_gui.checkPreviousEntry(self) self.selectedChartWidget = "st" charts_gui.chartNavigation(self, signal) def plan_chartNavigation(self, signal): ''' called by the plan chartwidget ''' charts_gui.checkPreviousEntry(self) self.selectedChartWidget = "pl" charts_gui.chartNavigation(self, signal) def comp_chartNavigation(self, signal): ''' called by the completed chartwidget ''' charts_gui.checkPreviousEntry(self) self.selectedChartWidget = "cmp" charts_gui.chartNavigation(self, signal) def flipDeciduous(self): ''' toggle the selected tooth's deciduous state ''' charts_gui.flipDeciduous(self) def toothHistory(self, tooth): ''' show history of the tooth ''' history = tooth_history.getHistory(self.pt, tooth) self.advise(history, 1) def tooth_delete_all(self): ''' user has clicked on the delete all option from a tooth's right click menu ''' self.ui.toothPropsWidget.lineEdit.deleteAll() def tooth_delete_prop(self, prop): ''' user has clicked on the delete prop option from a tooth's right click menu - arg is the prop to be deleted ''' self.ui.toothPropsWidget.lineEdit.deleteProp(prop) def tooth_add_comments(self, tooth): ''' user has clicked on the delete all option from a tooth's right click menu ''' cb = self.ui.toothPropsWidget.comments_comboBox comment, result = QtWidgets.QInputDialog.getItem( self, _("Add comment"), "%s %s" % (_("Add a comment to tooth"), tooth.upper()), [cb.itemText(i) for i in range(1, cb.count())], current=-1, editable=True) if result: self.ui.toothPropsWidget.comments(comment) def chooseTooth(self): ''' ask the user to select a tooth ''' dl = ChooseToothDialog(self) return dl.getInput() def okToLeaveRecord(self, discard_possible=True): ''' leaving a pt record - has state changed? ''' if self.pt.serialno == 0: return True if not self._reloading_record: course_module.prompt_close_course(self) if not course_module.recall_check(self): return False # -apply changes to patient details self.pt.synopsis = str(self.ui.synopsis_lineEdit.text()) if self.editPageVisited: self.apply_editpage_changes() # -check pt against the original loaded state # -this returns a LIST of changes ie [] if none. changes = self.unsavedChanges() if changes == []: LOGGER.debug(" okToLeaveRecord - no changes") else: # -raise a custom dialog to get user input message = "%s
    %s %s (%s)" % ( _("You have unsaved changes to the record of"), self.pt.fname, self.pt.sname, self.pt.serialno) dl = SaveDiscardCancelDialog(message, changes, self) # dl.setPatient() # dl.setChanges(uc) dl.discard_but.setVisible(discard_possible) dl.exec_() if dl.result == dl.DISCARD: LOGGER.info( " okToLeaveRecord - user discarding changes") course_module.delete_new_course(self) elif dl.result == dl.SAVE: LOGGER.debug(" okToLeaveRecord - user is saving") self.save_changes(False) else: # dl.result = dl.CANCEL LOGGER.debug("okToLeaveRecord - continue editing") return False return True def handle_mainTab(self): ''' procedure called when user navigates the top tab ''' self.wait() ci = self.ui.main_tabWidget.currentIndex() if ci == 1: # --user is viewing appointment book self.diary_widget.reset_and_view(self.patient) if ci == 6: # -user is viewing the feetable if not self.feestableLoaded: fees_module.loadFeesTable(self) if self.pt.serialno != 0: self.ui.chooseFeescale_comboBox.setCurrentIndex( self.pt.fee_table.index) if ci == 8: # - wiki if not self.wikiloaded: self.ui.wiki_webView.setUrl(QtCore.QUrl(localsettings.WIKIURL)) self.wikiloaded = True self.wait(False) def handle_patientTab(self): ''' handles navigation of patient record ''' self.wait() ci = self.ui.tabWidget.currentIndex() if ci != 6: if self.ui.tabWidget.isTabEnabled(6) and \ not charts_gui.checkPreviousEntry(self): self.ui.tabWidget.setCurrentIndex(6) if self.editPageVisited: self.apply_editpage_changes() if ci == 0: self.ui.patientEdit_groupBox.setTitle( "Edit Patient %d" % self.pt.serialno) if self.load_editpage(): self.editPageVisited = True elif ci == 1: self.updateStatus() self.ui.badDebt_pushButton.setEnabled(self.pt.fees > 0) contract_gui_module.handle_ContractTab(self) elif ci == 2: # -correspondence self.docsPrintedInit() self.docsImportedInit() elif ci == 3: self.load_receptionSummaryPage() elif ci == 4: self.load_clinicalSummaryPage() elif ci == 5: # -- full notes self.updateNotesPage() elif ci in (6, 7): # -- charts/plan or estimate self.update_plan_est() elif ci == 8: # -- perio tab LOGGER.debug("perio interface being rewritten") elif ci == 9: # -- history tab self.refresh_debug_browser() self.updateDetails() self.wait(False) def update_plan_est(self): ci = self.ui.tabWidget.currentIndex() if ci == 7: self.load_newEstPage() elif ci == 6: self.ui.plan_listView.model().reset() self.ui.completed_listView.model().reset() def home(self): ''' User has clicked the homw push_button - clear the patient, and blank the screen ''' if self.enteringNewPatient(): return if not self.okToLeaveRecord(): LOGGER.debug("not clearing record") return self.clearRecord() # -disable much of the UI self.enableEdit(False) # -go to either "reception" or "clinical summary" self.gotoDefaultTab() self.load_notes() def clearRecord(self): ''' clears the memory of all references to the last patient.. and ensures that tab pages for reception and clinical summary are cleared. Other pages are disabled. ''' if self.pt.serialno != 0: LOGGER.debug("clearing record") self.forget_notes_loaded() self.ui.dobEdit.setDate(QtCore.QDate(1900, 1, 1)) self.ui.detailsBrowser.setText("") self.ui.notes_webView.setHtml("") self.ui.hiddenNotes_label.setText("") self.ui.bpe_groupBox.setTitle(_("BPE")) self.ui.bpe_textBrowser.setText("") self.ui.planSummary_textBrowser.setText("") self.ui.synopsis_lineEdit.setText("") self.pt_diary_widget.clear() # -restore the charts to full dentition for chart in (self.ui.staticChartWidget, self.ui.planChartWidget, self.ui.completedChartWidget, self.ui.summaryChartWidget): chart.clear() chart.update() self.ui.notesSummary_webView.setHtml("") self.ui.reception_webview.setHtml("") self.ui.reception_webview2.setHtml("") self.ui.chartsTableWidget.clear() self.ui.notesEnter_textEdit.setHtml("") self.ui.medNotes_pushButton.setStyleSheet("") self.ui.medNotes_pushButton2.setStyleSheet("") if not self._reloading_record: self.prompt_clear_location() self.clear_record_in_use() # -load a blank version of the patient class self.pt = patient_class.patient(0) self.loadedPatient_label.setText("No Patient Loaded") if self.editPageVisited: LOGGER.debug("blanking edit page fields") self.load_editpage() self.editPageVisited = False else: self.load_notes() self.pt.familyno = None self.update_family_label() def gotoDefaultTab(self): ''' go to either "reception" or "clinical summary" ''' if localsettings.station == "surgery": self.ui.tabWidget.setCurrentIndex(4) else: self.ui.tabWidget.setCurrentIndex(3) def webviewloaded(self): ''' a notes web view has loaded.. scroll to the bottom ''' wv = self.sender() wf = wv.page().mainFrame() orientation = QtCore.Qt.Vertical wf.setScrollBarValue(orientation, wf.scrollBarMaximum(orientation)) def load_newEstPage(self): ''' populate my custom widget (estWidget) this is probably quite computationally expensive so should only be done if the widget is visible ''' LOGGER.debug("load_newEstPage called") self.ui.estWidget.setPatient(self.pt) def load_editpage(self): self.ui.titleEdit.setText(self.pt.title) self.ui.fnameEdit.setText(self.pt.fname) self.ui.snameEdit.setText(self.pt.sname) if self.pt.dob: self.ui.dobEdit.setDate(self.pt.dob) else: self.ui.dobEdit.setDate(datetime.date(2000, 1, 1)) self.ui.addr1Edit.setText(self.pt.addr1) self.ui.addr2Edit.setText(self.pt.addr2) self.ui.addr3Edit.setText(self.pt.addr3) self.ui.townEdit.setText(self.pt.town) self.ui.countyEdit.setText(self.pt.county) if self.pt.sex == "M": self.ui.sexEdit.setCurrentIndex(0) else: self.ui.sexEdit.setCurrentIndex(1) self.ui.pcdeEdit.setText(self.pt.pcde) self.ui.memoEdit.setText(self.pt.memo) self.ui.tel1Edit.setText(self.pt.tel1) self.ui.tel2Edit.setText(self.pt.tel2) self.ui.mobileEdit.setText(self.pt.mobile) self.ui.faxEdit.setText(self.pt.fax) self.ui.email1Edit.setText(self.pt.email1) self.ui.email2Edit.setText(self.pt.email2) self.ui.occupationEdit.setText(self.pt.occup) return True def load_dentComboBoxes(self, newpatient=False): LOGGER.debug("loading dnt comboboxes. dnt1=%s dnt2=%s", self.pt.dnt1, self.pt.dnt2) inits = localsettings.ops.get(self.pt.dnt1, "") if len(localsettings.activedents) == 0: self.advise(_("You have no dentists in your database."), 1) elif inits in localsettings.activedents: self.ui.dnt1comboBox.setCurrentIndex( localsettings.activedents.index(inits)) else: self.ui.dnt1comboBox.setCurrentIndex(-1) if not newpatient: LOGGER.warning("dnt1 error %s - record %s", self.pt.dnt1, self.pt.serialno) if inits != "": message = "%s " % inits + _( "is no longer an active dentist in this practice") else: message = _( "unknown contract dentist - please correct this") self.advise(message, 2) inits = localsettings.ops.get(self.pt.dnt2, "") if self.pt.dnt2 is None: i = -1 elif inits in localsettings.activedents: i = localsettings.activedents.index(inits) else: i = -1 if self.pt.dnt1 == self.pt.dnt2: pass elif inits != "": message = "%s '%s' %s" % ( _("Course dentist"), inits, _("is no longer an active dentist in this practice") ) self.pt.dnt2 = None self.advise(message, 2) self.ui.dnt2comboBox.setCurrentIndex(i) def enterNewPatient(self): ''' called by the user clicking the new patient button ''' if self.pt: localsettings.LAST_ADDRESS = self.pt.address_tuple localsettings.last_family_no = self.pt.familyno new_patient_gui.enterNewPatient(self) def checkNewPatient(self): ''' an alternate slot for the save button, used when in new patient mode ''' new_patient_gui.checkNewPatient(self) def enteringNewPatient(self): ''' determines if the user is entering a new patient if they are, function will return the user to that part of the gui and return True. otherwise, will return False. ''' if self.entering_new_patient: LOGGER.debug("enteringNewPatient") self.ui.main_tabWidget.setCurrentIndex(0) self.ui.tabWidget.setCurrentIndex(0) return not new_patient_gui.abortNewPatientEntry(self) def docsPrintedInit(self): ''' load the docsprinted listWidget ''' LOGGER.debug("(re)loading docs printed") self.ui.prevCorres_treeWidget.clear() self.ui.prevCorres_treeWidget.setHeaderLabels( ["Date", "Type", "Version", "Index"]) docs = docsprinted.previousDocs(self.pt.serialno) for d in docs: doc = [str(d[0]), str(d[1]), str(d[2]), str(d[3])] i = QtWidgets.QTreeWidgetItem( self.ui.prevCorres_treeWidget, doc) self.ui.prevCorres_treeWidget.expandAll() for i in range(self.ui.prevCorres_treeWidget.columnCount()): self.ui.prevCorres_treeWidget.resizeColumnToContents(i) # - hide the index column self.ui.prevCorres_treeWidget.setColumnWidth(3, 0) def showPrevPrintedDoc(self, item, index): ''' called by a double click on the documents listview ''' ix = int(item.text(3)) if "(html)" in item.text(1): result = QtWidgets.QMessageBox.question( self, _("Re-open"), _("Do you want to review and/or reprint this item?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) if result == QtWidgets.QMessageBox.Yes: html, version = docsprinted.getData(ix) type_ = item.text(1).replace("(html)", "") if om_printing.htmlEditor( self, type_, html.decode("utf8"), version): self.docsPrintedInit() elif "pdf" in item.text(1): result = QtWidgets.QMessageBox.question( self, _("Re-open"), _("Do you want to review and/or reprint this item?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) if result == QtWidgets.QMessageBox.Yes: try: data, version = docsprinted.getData(ix) f = open(localsettings.TEMP_PDF, "wb") f.write(data) f.close() localsettings.openPDF() except Exception: # general exception used as could be many LOGGER.exception("view PDF error") self.advise(_("error reviewing PDF file"), 1) else: # unknown data type... probably plain text. LOGGER.info("other type of doc") data = docsprinted.getData(ix)[0] try: self.advise(data.encode("utf8"), 1) except: LOGGER.warning("unable to decode document") self.advise( _("No information available about this document, sorry"), 1) def docsImportedInit(self): ''' load the docsImported listWidget ''' self.ui.importDoc_treeWidget.clear() self.ui.importDoc_treeWidget.setHeaderLabels([ _("Date imported"), _("Description"), _("Size"), _("Type"), _("Index") ]) docs = docsimported.storedDocs(self.pt.serialno) for doc in docs: i = QtWidgets.QTreeWidgetItem(self.ui.importDoc_treeWidget, doc) self.ui.importDoc_treeWidget.expandAll() for i in range(self.ui.importDoc_treeWidget.columnCount()): self.ui.importDoc_treeWidget.resizeColumnToContents(i) # - hide the index column self.ui.importDoc_treeWidget.setColumnWidth(4, 0) def importDoc(self): ''' import a document and store into the database ''' filename = QtWidgets.QFileDialog.getOpenFileName()[0] if filename != '': self.advise(_("opening") + " %s" % filename) try: docsimported.add(self.pt.serialno, str(filename)) except Exception as e: self.advise(_("error importing file") + "
    - %s" % e, 2) else: self.advise(_("no file chosen"), 1) self.docsImportedInit() def showImportedDoc(self, item, index): ''' called by a double click on the imported documents listview ''' ix = int(item.text(4)) LOGGER.debug("opening file index %s", ix) result = QtWidgets.QMessageBox.question( self, _("Re-open"), _("Do you want to open a copy of this document?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.Yes) if result == QtWidgets.QMessageBox.Yes: try: fpath = os.path.join(localsettings.LOCALFILEDIRECTORY, "import_temp") f = open(fpath, "wb") for data in docsimported.getData(ix): f.write(data[0]) f.close() localsettings.openFile(fpath) except Exception: LOGGER.exception("unable to open stored document") self.advise(_("error opening document"), 1) def load_todays_patients_combobox(self): ''' loads the quick select combobox, with all of todays's patients - if a list(tuple) of dentists is passed eg ,(("NW"),) then only pt's of that dentist show up ''' self.ui.dayList_comboBox.clear() if localsettings.clinicianNo != 0: header = _("Today's Patients") + \ " (%s)" % localsettings.clinicianInits else: header = _("Today's Patients (ALL)") dents = (localsettings.clinicianNo, ) ptList = appointments.todays_patients(dents) self.ui.dayList_comboBox.setVisible(len(ptList) != 0) self.ui.dayList_comboBox.addItem(header) for pt in ptList: val = "%s -- %s" % (pt[1], pt[0]) # -be wary of changing this -- is used as a marker some # -pt's have hyphonated names! self.ui.dayList_comboBox.addItem(val) def todays_pts(self): arg = str(self.ui.dayList_comboBox.currentText()) if "--" in arg: self.ui.dayList_comboBox.setCurrentIndex(0) serialno = int(arg[arg.index("--") + 2:]) # -see above comment self.getrecord(serialno) def loadDentistComboboxes(self): ''' populate several comboboxes with the activedentists ''' s = ["*ALL*"] + list(localsettings.ops.values()) self.ui.daybookDent1ComboBox.addItems(s) self.ui.daybookDent2ComboBox.addItems(s) self.ui.cashbookDentComboBox.addItems(s) self.ui.dnt1comboBox.addItems(localsettings.activedents) self.ui.dnt2comboBox.addItems(localsettings.activedents) def find_related(self): ''' looks for patients with similar name, family or address to the current pt ''' if not (self.pt.serialno or self.pt.familyno): self.advise("No patient to compare to", 2) return dl = LoadRelativesDialog(self) if dl.exec_(): self.getrecord(dl.chosen_sno) def next_patient(self): ''' cycle forwards through the list of recently visited records ''' offset = 0 if self.pt.serialno == 0 else 1 desiredPos = localsettings.recent_sno_index + offset try: self.getrecord(localsettings.recent_snos[desiredPos], addToRecentSnos=False) except IndexError: self.advise(_("Reached End of Record History")) def last_patient(self): ''' cycle backwards through recently visited records ''' if self.pt.serialno == 0: desiredPos = localsettings.recent_sno_index else: desiredPos = localsettings.recent_sno_index - 1 try: self.getrecord(localsettings.recent_snos[desiredPos], addToRecentSnos=False) except IndexError: self.advise(_("Reached Start Record History")) def apply_editpage_changes(self): ''' apply any changes made on the edit patient page ''' if self.pt.serialno == 0 and not self.entering_new_patient: # firstly.. don't apply edit page changes if there # iss no patient loaded, # and no new patient to apply return self.pt.title = self.ui.titleEdit.text().upper() self.pt.fname = self.ui.fnameEdit.text().upper() self.pt.sname = self.ui.snameEdit.text().upper() self.pt.dob = self.ui.dobEdit.date().toPyDate() self.pt.addr1 = self.ui.addr1Edit.text().upper() self.pt.addr2 = self.ui.addr2Edit.text().upper() self.pt.addr3 = self.ui.addr3Edit.text().upper() self.pt.town = self.ui.townEdit.text().upper() self.pt.county = self.ui.countyEdit.text().upper() self.pt.sex = self.ui.sexEdit.currentText().upper() self.pt.pcde = self.ui.pcdeEdit.text().upper() self.pt.memo = self.ui.memoEdit.toPlainText() self.pt.tel1 = self.ui.tel1Edit.text().upper() self.pt.tel2 = self.ui.tel2Edit.text().upper() self.pt.mobile = self.ui.mobileEdit.text().upper() self.pt.fax = self.ui.faxEdit.text().upper() self.pt.email1 = self.ui.email1Edit.text() # -leave as user entered case self.pt.email2 = self.ui.email2Edit.text() self.pt.occup = self.ui.occupationEdit.text().upper() self.updateDetails() self.editPageVisited = False def accountsTableClicked(self, row, column): ''' user has clicked on the accounts table - load the patient record ''' sno = self.ui.accounts_tableWidget.item(row, 1).text() self.getrecord(int(sno)) def getrecord(self, serialno, addToRecentSnos=True, newPatientReload=False): ''' a record has been called by one of several means ''' if self.enteringNewPatient(): return if serialno in (0, None): self.update_family_label() return locked, message = records_in_use.is_locked(serialno) if locked: self.advise(message, 1) # return LOGGER.info("loading record %s", serialno) if self.pt and serialno == self.pt.serialno and not newPatientReload: self.ui.main_tabWidget.setCurrentIndex(0) self.advise(_("Patient already loaded")) return elif not self.okToLeaveRecord(): LOGGER.info("not loading %s as unsaved changes to %s", serialno, self.pt.serialno) self.advise(_("Not loading patient")) return if self.pt: current_address = self.pt.address_tuple else: current_address = localsettings.LAST_ADDRESS self.clearRecord() try: # update saved last address self.pt = patient_class.patient(serialno) self.pt_diary_widget.set_patient(self.pt) if (current_address == localsettings.BLANK_ADDRESS or self.pt.address_tuple != current_address): localsettings.LAST_ADDRESS = current_address localsettings.last_family_no = self.pt.familyno try: self.loadpatient(newPatientReload=newPatientReload) except Exception as e: message = _("Error populating interface") LOGGER.exception(message) self.advise("%s
    %s" % (message, e), 2)
    
            except localsettings.PatientNotFoundError:
                LOGGER.exception("Patient Not Found - %s", serialno)
                self.advise(_("error getting serialno") + " %d - " % serialno +
                            _("please check this number is correct?"), 1)
            except Exception as exc:
                LOGGER.exception("Unknown ERROR loading patient - serialno %s",
                                 serialno)
                self.advise("Unknown Error - Tell Neil
    %s" % exc, 2) if addToRecentSnos: # add to end of list try: localsettings.recent_snos.remove(serialno) except ValueError: pass localsettings.recent_snos.append(serialno) can_go_forwards = False else: can_go_forwards = serialno != localsettings.recent_snos[-1] localsettings.recent_sno_index = localsettings.recent_snos.index( serialno) self.pt.set_record_in_use() can_go_back = localsettings.recent_sno_index > 0 self.ui.backButton.setEnabled(can_go_back) self.ui.nextButton.setEnabled(can_go_forwards) def reload_patient(self): ''' reload the current record ''' self._reloading_record = True if self.okToLeaveRecord(): sno = self.pt.serialno self.advise("%s %s" % (_("Reloading record"), sno)) self.clearRecord() self.getrecord(sno) self._reloading_record = False def set_note_preferences(self): formatted_notes.show_printed = \ self.ui.notes_includePrinting_checkBox.isChecked() formatted_notes.show_payments = \ self.ui.notes_includePayments_checkBox.isChecked() formatted_notes.show_timestamps = \ self.ui.notes_includeTimestamps_checkBox.isChecked() formatted_notes.show_metadata = \ self.ui.notes_includeMetadata_checkBox.isChecked() formatted_notes.same_for_clinical = \ self.ui.summary_notes_checkBox.isChecked() def updateNotesPage(self): i = self.ui.tabWidget.currentIndex() LOGGER.debug("update notes page called, ignore=%s", i != 5) if i != 5 or self.notes_loaded: return self.set_note_preferences() note_html = formatted_notes.notes(self.pt.notes_dict) self.ui.notes_webView.setHtml(note_html) page = self.ui.notes_webView.page() page.setLinkDelegationPolicy(page.DelegateAllLinks) self.notes_loaded = True def load_receptionSummaryPage(self): ''' load the reception views ''' i = self.ui.tabWidget.currentIndex() LOGGER.debug("update reception Summary page called, ignore=%s", i != 3) if self.pt.serialno == 0: self.ui.med_questionaire_textBrowser.setText("") self.hide_reception_right_panel() elif i == 3: self.pt_diary_widget.layout_ptDiary() mhdate = self.pt.mh_form_date if mhdate is None: message = _("MH form has never been completed!") message += "\n\n%s" % _("PLEASE GET MH FORM") style_ = "color: %s" % colours.med_warning else: chkdate = localsettings.formatDate(mhdate) message = "%s %s" % ( _("Form confirmed by patient on"), chkdate) if (localsettings.currentDay() - mhdate).days > \ localsettings.MH_FORM_PERIOD: style_ = "color: %s" % colours.med_warning message += "\n\n%s" % _("PLEASE GET MH FORM") else: style_ = "" self.ui.med_questionaire_textBrowser.setStyleSheet(style_) self.ui.med_questionaire_textBrowser.setText(message) self.load_reception_notes() def load_reception_notes(self): if self.pt.serialno == 0: self.ui.reception_webview.setHtml(localsettings.message) self.ui.reception_webview2.setHtml("") elif not self.reception_notes_loaded: is_summary = self.ui.reception_view_checkBox.isChecked() if is_summary: self.ui.reception_webview2.setHtml("hidden") self.hide_reception_right_panel() else: html_ = formatted_notes.rec_notes( self.pt.notes_dict, self.pt.treatment_course.accd ) self.ui.reception_webview2.setHtml(html_) self.hide_reception_right_panel(False) html_ = reception_summary.html(self.pt, is_summary) self.ui.reception_webview.setHtml(html_) self.reception_notes_loaded = True def reception_view_checkBox_clicked(self): LOGGER.debug( "user called reception refresh summary=%s", self.ui.reception_view_checkBox.isChecked() ) self.reception_notes_loaded = False self.load_reception_notes() def load_clinicalSummaryPage(self): i = self.ui.tabWidget.currentIndex() LOGGER.debug("load clinical summary page called, ignore=%s", i != 4) if i == 4: self.ui.planSummary_textBrowser.setHtml(plan.summary(self.pt)) self.load_notes_summary() def load_notes_summary(self): i = self.ui.tabWidget.currentIndex() LOGGER.debug("load clinical summary notes called, ignore=%s", i != 4) if i != 4: LOGGER.debug("ignoring clinical summary notes load - tab hidden") elif self.pt.serialno == 0: self.ui.notesSummary_webView.setHtml(localsettings.message) elif not self.summary_notes_loaded: self.set_note_preferences() note_html = formatted_notes.summary_notes(self.pt.notes_dict) self.ui.notesSummary_webView.setHtml(note_html) page = self.ui.notesSummary_webView.page() page.setLinkDelegationPolicy(page.DelegateAllLinks) self.summary_notes_loaded = True def loadpatient(self, newPatientReload=False): ''' self.pt is now a patient... time to push to the gui. ''' # - don't load a patient if you are entering a new one. if self.enteringNewPatient(): return self.editPageVisited = False self.ui.main_tabWidget.setCurrentIndex(0) if localsettings.station == "surgery": self.ui.tabWidget.setCurrentIndex(4) else: self.ui.tabWidget.setCurrentIndex(3) self.forget_notes_loaded() self.ui.actionFix_Locked_New_Course_of_Treatment.setEnabled(False) # -populate dnt1 and dnt2 comboboxes if not self.pt.dnt1: if len(localsettings.activedents) == 1: self.pt.dnt1 = localsettings.activedent_ixs[0] self.advise("%s %s %s" % (_("Setting"), localsettings.activedents[0], _("as patient's dentist"))) self.load_dentComboBoxes(newPatientReload) self.pt.checkExemption() self.updateDetails() self.ui.synopsis_lineEdit.setText(self.pt.synopsis) self.ui.reception_view_checkBox.setChecked(not self.pt.underTreatment) self.load_clinicalSummaryPage() self.load_receptionSummaryPage() self.ui.notes_webView.setHtml("") self.ui.notesEnter_textEdit.setText("") for chart in (self.ui.staticChartWidget, self.ui.planChartWidget, self.ui.completedChartWidget, self.ui.summaryChartWidget): chart.clear() # -necessary to restore the chart to full dentition self.selectedChartWidget = "st" self.ui.staticChartWidget.setSelected(0, 0, True) # select the UR8 self.ui.planChartWidget.setSelected(0, 0, False) # select the UR8 self.ui.completedChartWidget.setSelected(0, 0, False) # select the UR8 self.ui.toothPropsWidget.setTooth("ur8", "st") charts_gui.chartsTable(self) charts_gui.bpe_table(self, 0) try: pos = localsettings.CSETYPES.index(self.pt.cset) except ValueError: if not newPatientReload: message = _("Please set a Valid Course Type for this patient") QtWidgets.QMessageBox.information(self, _("Advisory"), message) pos = -1 self.ui.cseType_comboBox.setCurrentIndex(pos) self.ui.contract_tabWidget.setCurrentIndex(pos) # -update bpe labeltext = "currently editing %s %s %s - (%s)" % ( self.pt.title, self.pt.fname, self.pt.sname, self.pt.serialno) self.loadedPatient_label.setText(labeltext) self.ui.hiddenNotes_label.setText("") if self.ui.tabWidget.currentIndex() == 4: # clinical summary self.ui.summaryChartWidget.update() self.ui.debugBrowser.setText("") self.debug_browser_refresh_func = None self.update_family_label() self.medalert() if localsettings.station == "surgery": self.callXrays() self.getmemos() for warning in self.pt.load_warnings: self.advise(warning, 1) def getmemos(self): ''' get valid memos for the patient ''' for umemo in memos.get_memos(self.pt.serialno): message = '''
    %s %s
    %s %s


    %s
    ''' % ( _('Message from'), umemo.author, _("Dated"), localsettings.formatDate(umemo.mdate), umemo.message) Dialog = QtWidgets.QDialog(self) dl = Ui_showMemo.Ui_Dialog() dl.setupUi(Dialog) dl.message_label.setText(message) Dialog.exec_() if dl.checkBox.checkState(): LOGGER.debug("deleting Memo %s", umemo.ix) memos.deleteMemo(umemo.ix) def newCustomMemo(self): dl = SaveMemoDialog(self.pt.serialno, self) if not dl.getInput(): self.advise("memo not saved", 1) def medalert(self): if self.pt.MEDALERT: self.ui.medNotes_pushButton.setStyleSheet( colours.MED_STYLESHEET) self.ui.medNotes_pushButton2.setStyleSheet( colours.MED_STYLESHEET) else: self.ui.medNotes_pushButton.setStyleSheet("") self.ui.medNotes_pushButton2.setStyleSheet("") mhdate = self.pt.mh_chkdate if mhdate is None: chkdate = "" else: chkdate = " - %s" % localsettings.formatDate(mhdate) self.ui.medNotes_pushButton.setText("MedNotes%s" % chkdate) self.ui.medNotes_pushButton2.setText("MedNotes%s" % chkdate) self.enableEdit(True) def updateHiddenNotesLabel(self): ''' check and display hidden notes ''' self.ui.hiddenNotes_label.setText(hidden_notes.toHtml(self.pt)) def updateStatus(self): ''' updates the status combobox ''' self.ui.status_comboBox.currentIndexChanged.disconnect( self.change_pt_status) self.ui.status_comboBox.setCurrentIndex(0) for i in range(self.ui.status_comboBox.count()): item = self.ui.status_comboBox.itemText(i) if str(item).lower() == self.pt.status.lower(): self.ui.status_comboBox.setCurrentIndex(i) self.ui.status_comboBox.currentIndexChanged.connect( self.change_pt_status) def change_pt_status(self, *args): if self.pt.status == _("BAD DEBT") and not permissions.granted(self): self.updateStatus() return self.pt.status = str( self.ui.status_comboBox.currentText()) self.updateDetails() def updateDetails(self): ''' sets the patient information into the left column ''' if self.pt.serialno == 0: self.ui.detailsBrowser.setText("") return self.pt.apply_fees() details = patientDetails.details(self.pt) self.ui.detailsBrowser.setHtml(details) self.ui.detailsBrowser.update() self.ui.planSummary_textBrowser.setHtml(plan.summary(self.pt)) self.ui.closeTx_pushButton.setText(_("Close Course")) self.ui.closeCourse_pushButton.setEnabled(self.pt.underTreatment) self.ui.estWidget.setEnabled(self.pt.underTreatment) self.ui.completed_groupBox.setEnabled(self.pt.underTreatment) self.ui.plan_groupBox.setEnabled(self.pt.underTreatment) self.ui.closeTx_pushButton.setEnabled(self.pt.underTreatment) self.ui.plan_listView.setEnabled(self.pt.underTreatment) self.ui.completed_listView.setEnabled(self.pt.underTreatment) if self.pt.underTreatment: self.ui.estimate_label.setText("%s
    %s %s" % ( _("Active Course"), _("started"), localsettings.formatDate(self.pt.treatment_course.accd))) self.ui.plan_buttons_stacked_widget.setCurrentIndex(0) else: self.ui.estimate_label.setText( "%s
    %s %s
    %s %s" % ( _("Previous Course"), _("started"), localsettings.formatDate(self.pt.treatment_course.accd), _("completed"), localsettings.formatDate(self.pt.treatment_course.cmpd))) self.ui.plan_buttons_stacked_widget.setCurrentIndex(1) if self.pt.treatment_course.accd not in ("", None): self.ui.closeTx_pushButton.setText(_("Resume Existing Course")) self.ui.closeTx_pushButton.setEnabled(True) def find_patient(self): if self.enteringNewPatient(): return dl = FindPatientDialog(self) if dl.exec_() and dl.chosen_sno: self.getrecord(dl.chosen_sno) def set_surgery_mode(self, is_surgery=None): if is_surgery is None: is_surgery = self.surgery_mode localsettings.station = "surgery" if is_surgery else "reception" self.ui.actionSurgery_Mode.setChecked(is_surgery) self.set_operator_label() self.gotoDefaultTab() @property def surgery_mode(self): return localsettings.station == "surgery" def set_operator_label(self): if localsettings.clinicianNo == 0: if localsettings.station == "surgery": op_text = " " + _("NO CLINICIAN SET") + " - " self.advise( _("You are in surgery mode without a clinician")) else: op_text = "" else: op_text = (" " + _("CLINICIAN") + "(" + localsettings.clinicianInits + ") - ") if "/" in localsettings.operator: op_text += " " + _("team") + " " op_text += (" " + localsettings.operator + " " + _("using") + " " + localsettings.station + " " + _("mode")) self.operator_label.setText(op_text) def labels_and_tabs(self): ''' initialise a few labels ''' self.ui.main_tabWidget.setCurrentIndex(0) self.ui.tabWidget.setCurrentIndex(0) self.diary_widget.reset() c_list = QtWidgets.QCompleter([_("Mr"), _("Mrs"), _("Ms"), _("Miss"), _("Master"), _("Dr"), _("Professor")]) self.ui.titleEdit.setCompleter(c_list) if localsettings.station == "surgery": self.ui.tabWidget.setCurrentIndex(4) else: self.ui.tabWidget.setCurrentIndex(3) self.ui.reception_webview2.setHtml("") today = QtCore.QDate().currentDate() self.ui.daybookEndDateEdit.setDate(today) self.ui.daybookStartDateEdit.setDate(today) self.ui.cashbookStartDateEdit.setDate(today) self.ui.cashbookEndDateEdit.setDate(today) self.ui.stackedWidget.setCurrentIndex(1) brush = QtGui.QBrush(colours.LINEEDIT) palette = QtGui.QPalette() palette.setBrush(QtGui.QPalette.Base, brush) for widg in (self.ui.snameEdit, self.ui.titleEdit, self.ui.fnameEdit, self.ui.addr1Edit, self.ui.dobEdit, self.ui.pcdeEdit, self.ui.sexEdit): widg.setPalette(palette) self.addHistoryMenu() self.ui.perio_scrollArea.setWidget( QtWidgets.QLabel("perio interface is being rewritten")) def addHistoryMenu(self): ''' add items to a toolbutton for trawling the database for old data about the patient ''' self.debugMenu = QtWidgets.QMenu() self.debugMenu.addAction("Patient table data") self.debugMenu.addAction("Treatment table data") self.debugMenu.addAction("HDP table data") self.debugMenu.addAction("Estimates table data") self.debugMenu.addAction("Perio table data") self.debugMenu.addAction("Changable Fields") self.ui.debug_toolButton.setMenu(self.debugMenu) def new_forum_posts(self): tb = self.ui.main_tabWidget.tabBar() tb.setTabText(7, _("NEW FORUM POSTS")) tb.setTabTextColor(7, QtGui.QColor("red")) def unread_forum_posts(self, message): self.notify(message) def forum_departed(self): if self.forum_widget.is_fully_read: tb = self.ui.main_tabWidget.tabBar() tb.setTabText(7, _("FORUM")) tb.setTabTextColor(7, QtGui.QColor(self.palette().WindowText)) def save_patient_tofile(self): ''' our "patient" is a python object, so can be pickled save to file is really just a development feature ''' try: filepath = QtWidgets.QFileDialog.getSaveFileName( self, directory=os.path.join(os.path.expanduser("~"), "%s.patient" % self.pt.serialno), filter=("%s (*.patient)" % _("Patient File")))[0] if filepath != '': f = open(filepath, "wb") f.write(pickle.dumps(self.pt)) f.close() self.advise("Patient File Saved", 1) except Exception as e: self.advise("Patient File not saved - %s" % e, 2) def open_patient_fromfile(self): ''' reload a saved (pickled) patient only currently works is the OM version is compatible ''' if self.enteringNewPatient(): return if not self.okToLeaveRecord(): self.advise(_("Not loading patient")) return filename = QtWidgets.QFileDialog.getOpenFileName()[0] if filename != '': self.advise(_("opening patient file")) try: f = open(filename, "r") loadedpt = pickle.loads(f.read()) if loadedpt.serialno == self.pt.serialno: self.pt.take_snapshot() self.pt = loadedpt f.close() except Exception as e: self.advise("error loading patient file - %s" % e, 2) else: self.advise(_("no file chosen"), 1) self.loadpatient() def exportRecalls(self): ''' gets patients who have the recall date stipulated by the ui.recallDateEdit value ''' dl = RecallDialog(self) if dl.exec_(): patients = recall.getpatients(dl.conditions, dl.values) self.letters.setData(recall.HEADERS, patients) def bulkMailExpand(self): ''' expand/contract all children ''' self.letters.expand_contract() def bulkMailPrint(self): ''' the print button on the bulk mail tab has been clicked ''' self.letters.print_() def bulkMailLetterOptions(self): ''' user has clicked on the letter option button ''' self.letters.showOptions() def bulk_mail_doubleclicked(self, index): ''' a row in the bulk_mail data model has been double clicked ''' self.getrecord(self.letters.selected(index)) def showChartTable(self, charts): ''' flips a stackedwidget to display the table underlying the charts ''' if charts: self.ui.stackedWidget.setCurrentIndex(0) else: self.ui.stackedWidget.setCurrentIndex(1) def show_phrase_book_dialog(self): ''' show the phraseBook ''' if self.pt.serialno == 0: self.advise("no patient selected", 1) return dl = PhraseBookDialog(self) if dl.exec_(): new_note = "\n".join(dl.selectedPhrases) if new_note != "": self.addNewNote(new_note) def show_clinician_phrase_book_dialog(self): ''' show the phraseBook ''' if self.pt.serialno == 0: self.advise("no patient selected", 1) return dl = PhraseBookDialog(self, localsettings.clinicianNo) if dl.exec_(): new_note = "\n".join(dl.selectedPhrases) if new_note != "": self.addNewNote(new_note) def addNewNote(self, note): ''' used when I programatically add text to the user textEdit ''' current = self.ui.notesEnter_textEdit.toPlainText() pos = self.ui.notesEnter_textEdit.textCursor().position() before = current[:pos].strip("\n") after = current[pos:].strip("\n") new_notes = "\n".join([s for s in (before, note.strip("\n")) if s]) pos = len(new_notes) if after: new_notes += "\n%s" % after self.ui.notesEnter_textEdit.setText(new_notes) new_cursor = QtGui.QTextCursor( self.ui.notesEnter_textEdit.textCursor()) new_cursor.setPosition(pos) self.ui.notesEnter_textEdit.setTextCursor(new_cursor) def callXrays(self): ''' this updates a database with the record in use ''' if localsettings.surgeryno == -1 and not self.set_surgery_number(): return calldurr.commit(self.pt.serialno, localsettings.surgeryno) def showMedNotes(self): ''' user has called for medical notes to be shown ''' if self.pt.serialno == 0: self.advise("no patient selected", 1) return dl = MedicalHistoryDialog(self.pt, self) if dl.exec_(): dl.apply() self.advise(_("Updated/Checked Medical Notes")) self.medalert() self.updateHiddenNotesLabel() def newBPE_Dialog(self): ''' enter a new BPE ''' if self.pt.serialno == 0: self.advise("no patient selected", 1) return dl = BPE_Dialog(self) result = dl.getInput() if result[0]: self.pt.bpe.append((localsettings.currentDay(), result[1]), ) # -add a bpe newnotes = str(self.ui.notesEnter_textEdit.toPlainText()) newnotes += " bpe of %s recorded \n" % result[1] self.ui.notesEnter_textEdit.setText(newnotes) else: self.advise("BPE not applied", 2) charts_gui.bpe_table(self, 0) def nhsformOptionsDialog(self): ''' adjust the top left corner and scaling of nhs forms. ''' dl = NHSFormsConfigDialog(self) dl.exec_() def unsavedChanges(self): ''' important function, checks for changes since the patient was loaded ''' if self.pt.serialno != self.pt.dbstate.serialno: # this should NEVER happen!!! message = "%s %s %s %s" % ( _('POTENTIALLY SERIOUS CONFUSION PROBLEM WITH PT RECORDS'), self.pt.serialno, _("AND"), self.pt.dbstate.serialno) self.advise(message, 2) return [] changes = self.pt.changes if (len(self.ui.notesEnter_textEdit.toPlainText()) != 0 or len(self.pt.HIDDENNOTES) != 0): changes.append("New Notes") if "treatment_course" in changes: course = self.pt.treatment_course db_course = self.pt.dbstate.treatment_course if course.xraycmp != db_course.xraycmp: daybook_module.xrayDates(self, course.xraycmp) if course.periocmp != db_course.periocmp: daybook_module.perioDates(self, course.periocmp) return changes def save_changes(self, leavingRecord=True): ''' updates the database when the save is requested ''' if self.pt.serialno == 0: self.advise(_("no patient selected"), 1) return if self.editPageVisited: # - only make changes if user has visited this tab self.apply_editpage_changes() self.pt.monies_reset = patient_write_changes.reset_money(self.pt) self.check_previous_surname() uc = self.unsavedChanges() if uc != []: LOGGER.info( "changes made to patient atttributes..... updating database") result = patient_write_changes.all_changes(self.pt, uc) if result: # True if successful daybook_module.updateDaybook(self) if self.pt.est_logger is not None: self.pt.est_logger.add_row( self.pt.courseno0, self.pt.est_logger_text) if not leavingRecord and "estimates" in uc: # - necessary to get index numbers for estimate data types self.pt.getEsts() if self.ui.tabWidget.currentIndex() == 7: self.load_newEstPage() self.pt.take_snapshot() else: self.advise("Error applying changes... please retry", 2) LOGGER.warning( "error saving record %s changes are %s", self.pt.serialno, "\n".join(uc) ) if "New Notes" in uc: newnotes = str(self.ui.notesEnter_textEdit.toPlainText()) newnotes = newnotes.rstrip(" \n") result = patient_write_changes.toNotes(self.pt.serialno, [("newNOTE", newnotes)]) # -successful write to db? if result: # -result will be a "line number" or -1 if unsuccessful write self.ui.notesEnter_textEdit.setText("") self.ui.hiddenNotes_label.setText("") # -reload the notes self.pt.getNotesTuple() self.load_notes() else: # -exception writing to db self.advise("error writing notes to database... sorry!", 2) self.pt.clear_lock() self.updateDetails() def forget_notes_loaded(self): self.reception_notes_loaded = False self.summary_notes_loaded = False self.notes_loaded = False def load_notes(self): self.forget_notes_loaded() self.load_receptionSummaryPage() self.load_notes_summary() self.updateNotesPage() def enableEdit(self, arg=True): ''' disable/enable widgets "en mass" when no patient loaded ''' self.ui.clinician_phrasebook_pushButton.setVisible( arg and PHRASEBOOKS.has_phrasebook(localsettings.clinicianNo)) for widg in (self.ui.summaryChartWidget, self.ui.misc_reception_groupBox, self.ui.printEst_pushButton, self.ui.printAccount_pushButton, self.ui.saveButton, self.ui.phraseBook_pushButton, self.ui.clinician_phrasebook_pushButton, self.ui.medNotes_pushButton, self.ui.medNotes_pushButton2, self.ui.printGP17_pushButton, self.ui.reception_view_checkBox, self.ui.notesEnter_textEdit, self.ui.synopsis_lineEdit, self.ui.memos_pushButton, self.pt_diary_widget, self.ui.reloadButton): widg.setEnabled(arg) enable_tx_buts = arg and localsettings.clinicianNo != 0 for widg in (self.ui.exampushButton, self.ui.xray_pushButton, self.ui.newBPE_pushButton, self.ui.hygWizard_pushButton, self.ui.set_location_button, self.ui.childsmile_button, self.ui.completedChartWidget): widg.setEnabled(enable_tx_buts) self.ui.closeCourse_pushButton.setEnabled(False) self.ui.actionFix_Locked_New_Course_of_Treatment.setEnabled(False) if not arg: self.ui.backButton.setEnabled(len(localsettings.recent_snos)) self.ui.nextButton.setEnabled(False) self.ui.relatedpts_pushButton.setEnabled( bool(self.pt.serialno or self.pt.familyno)) for i in (0, 1, 2, 5, 6, 7, 8, 9): if self.ui.tabWidget.isTabEnabled(i) != arg: self.ui.tabWidget.setTabEnabled(i, arg) if self.pt is not None and "N" in self.pt.cset: # - show NHS form printing button self.ui.NHSadmin_groupBox.show() self.ui.childsmile_button.setVisible(self.pt.under_6) else: self.ui.NHSadmin_groupBox.hide() self.ui.childsmile_button.hide() if not arg: self.ui.medNotes_pushButton.setText("Medical History Dialog") self.ui.medNotes_pushButton2.setText("Medical History Dialog") self.pt_diary_widget.clear() self.updateDetails() def hide_reception_right_panel(self, hide=True): LOGGER.debug("Hide reception right panel %s", hide) width = self.ui.reception_splitter.width() if hide: self.ui.reception_splitter.setSizes([width, 0]) else: self.ui.reception_splitter.setSizes([3 * width / 4, width / 4]) def changeLanguage(self): ''' user has clicked on the Change Language Menu Item ''' dl = LanguageDialog(self) if dl.getInput(): self.ui.retranslateUi(self) self.diary_widget.ui.retranslateUi(self) def printGP17_clicked(self): ''' print a GP17 ''' form_printer = GP17Printer(self) form_printer.print_() def advancedRecordTools(self): ''' menu option which allows adanced record changes ''' if self.pt.serialno == 0: self.advise(_("no record selected"), 1) else: if permissions.granted(self): dl = AdvancedRecordManagementDialog(self.pt, self) if dl.exec_(): LOGGER.warning( "Applying changes from AdvancedRecordManagementDialog") dl.apply() self.updateDetails() self.updateHiddenNotesLabel() def apptBook_fontSize(self): ''' user is asking for a different font on the appointment book ''' i, result = QtWidgets.QInputDialog.getInt( self, _("FontSize"), _("Enter your preferred font size for appointment book"), 8, 6, 16) if result: self.diary_widget.aptFontSize(i) def takePayment_pushButton_clicked(self): ''' user has clicked to take a payment ''' fees_module.takePayment(self) def feeSearch_lineEdit_edited(self): ''' user has entered a field to search for in the fees table ''' self.feeSearch_pushButton_clicked() def feeSearch_pushButton_clicked(self, toggled=None): ''' user is searching fees ''' fees_module.feeSearch(self) def feescale_tester_pushButton_clicked(self): ''' show the feescale tester dialog ''' fees_module.feetester(self) def documents_pushButton_clicked(self): ''' user should be offered a PDF of the current regulations ''' dl = DocumentDialog() dl.exec_() def feeScale_clicked(self, model_index): ''' user has clicked on an item in the fees_table ''' fees_module.table_clicked(self, model_index) def feeScale_expanded(self, model_index): ''' user has expanded an item in the fees_table ''' fees_module.adjustTable(self, model_index) def chooseFeescale_comboBox_changed(self, arg): ''' receives signals from the choose feescale combobox ''' fees_module.chooseFeescale(self, arg) def feeExpand_radiobuttons_clicked(self): ''' the expand or collapse radio buttons on the fees page have been clicked. ''' fees_module.expandFees(self) def plan_page_course_but_clicked(self): course_module.newCourseNeeded(self) def closeTx_pushButton_clicked(self): ''' user has clicked on close course button ''' if self.pt.underTreatment: course_module.closeCourse(self) else: course_module.resumeCourse(self) # static items may have changed self.refresh_charts() def refresh_charts(self): charts_gui.chartsTable(self) self.load_clinicalSummaryPage() self.ui.summaryChartWidget.update() def showExamDialog(self): ''' call a smart dialog which will perform an exam on the current patient ''' if course_module.newCourseNeeded(self): return dl = ExamWizard(self) if dl.perform_exam(): self.ui.estWidget.setEstimate(self.pt.estimates) self.load_clinicalSummaryPage() self.updateHiddenNotesLabel() self.updateDetails() def showHygDialog(self): ''' call a smart dialog which will perform hygenist treatment on the current patient ''' if course_module.newCourseNeeded(self): return dl = HygTreatWizard(self) dl.perform_tx() self.updateDetails() def addXrayItems(self): ''' add Xray items to the treatment plan ''' manipulate_plan.xrayAdd(self) def addXrays(self): ''' add Xray items to COMPLETED tx ''' if course_module.newCourseNeeded(self): return manipulate_plan.xrayAdd(self, complete=True) def addPerioItems(self): ''' add Perio items to the treatment plan ''' manipulate_plan.perioAdd(self) def add_denture_items(self): ''' add 'denture' items to the treatment plan ''' manipulate_plan.denture_add(self) def addOtherItems(self): ''' add 'Other' items to the treatment plan ''' manipulate_plan.otherAdd(self) def addCustomItem(self): ''' add custom items to the treatment plan ''' manipulate_plan.customAdd(self) def feeScaleTreatAdd(self, item, subindex): ''' add an item directly from the feescale ''' manipulate_plan.fromFeeTable(self, item, subindex) def feetable_xml(self): ''' user has asked to see the feetable raw data ''' fees_module.showTableXML(self) def configure_feescales(self): ''' user has asked to configure feescales ''' fees_module.configure_feescales(self) def handle_chart_treatment_input(self, tooth, prop, completed): LOGGER.debug("%s %s completed=%s", tooth, prop, completed) if course_module.newCourseNeeded(self): return existing_cmp_items = self.pt.treatment_course.cmp_txs(tooth) existing_pl_items = self.pt.treatment_course.pl_txs(tooth) if completed: existing_items = existing_cmp_items else: existing_items = existing_pl_items new_items = prop.split(" ") additions = [] for item in set(new_items): add_no = new_items.count(item) - existing_items.count(item) for i in range(add_no): additions.append(item) removals = [] for item in set(existing_items): remove_no = existing_items.count(item) - new_items.count(item) for i in range(remove_no): removals.append((tooth, item)) for tx in additions: if tx == "": continue n_txs = existing_cmp_items.count(tx) courseno = self.pt.treatment_course.courseno if completed and tx in existing_pl_items: hash_ = localsettings.hash_func( "%s%s%s%s" % (courseno, tooth, n_txs + 1, tx)) tx_hash = estimates.TXHash(hash_) self.advise( _("Moving existing treatment from plan to completed.")) manipulate_plan.tx_hash_complete(self, tx_hash) else: manipulate_plan.add_treatments_to_plan( self, ((tooth, tx),), completed) if removals: manipulate_plan.remove_treatments_from_plan_and_est( self, removals, completed) if completed: self.ui.completedChartWidget.setToothProps(tooth, prop) self.ui.completedChartWidget.update() else: self.ui.planChartWidget.setToothProps(tooth, prop) self.ui.planChartWidget.update() def complete_planned_chart_treatments(self, treatments): ''' called when double clicking on a tooth in the plan chart the arg is a list - [('ur5', u'MOD '), ('ur5', u'RT ')] ''' if not self.pt.underTreatment: self.advise("course has been closed", 1) else: manipulate_plan.complete_txs(self, treatments) def reverse_completed_chart_treatments(self, treatments): ''' called when double clicking on a tooth in the completed chart the arg is a list - [('ur5', u'MOD '), ('ur5', u'RT ')] ''' if not self.pt.underTreatment: self.advise("course has been closed", 1) else: manipulate_plan.reverse_txs(self, treatments) def estwidget_deleteTxItem(self, est_item): ''' estWidget has removed an item from the estimates. (user clicked on the delete button) ''' manipulate_plan.remove_estimate_item(self, est_item) def makeBadDebt_clicked(self): ''' user has decided to reclassify a patient as a "bad debt" patient ''' if permissions.granted(): fees_module.makeBadDebt(self) def loadAccountsTable_clicked(self): ''' button has been pressed to load the accounts table ''' fees_module.populateAccountsTable(self) def contractTab_navigated(self, i): ''' the contract tab is changing ''' contract_gui_module.handle_ContractTab(self) def dnt1comboBox_clicked(self, qstring): ''' user is changing dnt1 ''' contract_gui_module.changeContractedDentist(self, qstring) def dnt2comboBox_clicked(self, qstring): ''' user is changing dnt1 ''' contract_gui_module.changeCourseDentist(self, qstring) def cseType_comboBox_clicked(self, qstring): ''' user is changing the course type ''' contract_gui_module.changeCourseType(self, qstring) def editNHS_pushButton_clicked(self): ''' edit the NHS contract ''' contract_gui_module.editNHScontract(self) def exemption_edited(self): ''' exemption fields have altered ''' contract_gui_module.exemption_edited(self) def editPriv_pushButton_clicked(self): ''' edit Private contract ''' contract_gui_module.editPrivateContract(self) def nhsclaims_pushButton_clicked(self): ''' edit Private contract ''' self.nhsClaimsShortcut() def editHDP_pushButton_clicked(self): ''' edit the HDP contract ''' contract_gui_module.editHDPcontract(self) def editRegDent_pushButton_clicked(self): ''' edit the "other Dentist" contract ''' contract_gui_module.editOtherContract(self) def pastPayments_clicked(self): ''' show all past payments for a patient ''' self.debug_browser_refresh_func = partial( paymentHistory.details, self.pt.serialno) self.refresh_debug_browser() def pastTreatment_clicked(self): ''' show all past estimates for a patient ''' self.debug_browser_refresh_func = partial( daybookHistory.details, self.pt.serialno) self.refresh_debug_browser() def pastCourses_clicked(self): ''' show all past treatment plans for a patient (including treatment that was never carried out) ''' dl = CourseHistoryOptionsDialog(self) if dl.exec_(): self.debug_browser_refresh_func = partial( courseHistory.details, self.pt.serialno, self.pt.courseno0 if self.pt.underTreatment else None, dl.include_estimates, dl.include_daybook ) self.refresh_debug_browser() def pastEstimates_clicked(self): ''' show all past estimates for a patient ''' self.debug_browser_refresh_func = partial( estimatesHistory.details, self.pt.serialno) self.refresh_debug_browser() def NHSClaims_clicked(self): ''' show all past NHS claims for a patient ''' self.debug_browser_refresh_func = partial( nhs_claims.details, self.pt.serialno) self.refresh_debug_browser() def show_memo_history(self): ''' show all memos for a patient ''' self.debug_browser_refresh_func = partial( memos.html_history, self.pt.serialno) self.refresh_debug_browser() def show_estimate_versioning(self): ''' show how the current estimate has changed ''' self.debug_browser_refresh_func = partial( est_logger.html_history, self.pt.courseno0) self.refresh_debug_browser() def show_medhist_history(self): ''' show how the current estimate has changed ''' self.debug_browser_refresh_func = partial( medhist.html_history, self.pt.serialno) self.refresh_debug_browser() def nhsClaimsShortcut(self): ''' a convenience function called from the contracts page ''' self.ui.tabWidget.setCurrentIndex(9) self.NHSClaims_clicked() def updateAttributes(self, *args): ''' refresh the table if the checkbox is toggled ''' if debug_html.existing != "": self.showPtAttributes() def showPtAttributes(self, arg=None): ''' this is for my own debugging purposes I can view attributes in memory, and compare to the original db values ''' # -load a table of self.pt.attributes if arg is not None: txtype = str(arg.text()).split(" ")[0] else: txtype = None changesOnly = self.ui.ptAtts_checkBox.isChecked() self.debug_browser_refresh_func = partial( debug_html.toHtml, self.pt, txtype, changesOnly) self.refresh_debug_browser() def cashbookView(self): ''' cashbook Go button clicked ''' cashbook_module.show_cashbook(self) def cashbookPrint(self): ''' cashbook print button clicked ''' cashbook_module.show_cashbook(self, print_=True) def daybookView(self): ''' daybook Go button clicked ''' daybook_module.daybookView(self) def daybookPrint(self): ''' daybook print button clicked ''' daybook_module.daybookView(self, print_=True) def historyPrint(self): ''' print whatever is in the history browser more than just history! ''' om_printing.historyPrint(self) def printSelectedAccounts(self): ''' iterate over te accounts table, and print letters to those who have been selected to get an invoice ''' om_printing.printSelectedAccounts(self) def printLetter(self): ''' prints a letter to the patient ''' om_printing.printLetter(self) def printDupReceipt(self): ''' prints a duplicate receipt ''' dl = DuplicateReceiptDialog(self.pt, self) if dl.exec_() and dl.duplicate_printed: om_printing.commitPDFtoDB(self, "dup receipt") self.updateHiddenNotesLabel() def printAccountsTable(self): ''' print the table ''' om_printing.printAccountsTable(self) def printEstimate(self): ''' print an estimate ''' om_printing.printEstimate(self) def customEstimate(self): ''' prints a custom estimate to the patient ''' om_printing.customEstimate(self) def printReferral(self): ''' prints a referal letter controlled by referal.xml file ''' om_printing.printReferral(self) def printaccount(self, tone="A"): ''' print an account ''' om_printing.printaccount(self, tone) def testGP17(self): ''' used to test print a GP17 (NHS scotland) claim form ''' form_printer = GP17Printer(self) form_printer.print_(test=True) def accountButton2Clicked(self): ''' user has requested an account printing ''' dl = AccountSeverityDialog(self) if dl.exec_(): om_printing.printaccount(self, dl.severity) def printmultiDayList(self, args): '''prints the multiday pages''' # - args= ((dent, date), (dent, date)...) dlist = multiDayListPrint.PrintDaylist() something_to_print = False for arg in args: data = appointments.printableDaylistData(arg[1].toPyDate(), arg[0]) # note arg[1]=Qdate if data != []: something_to_print = True dlist.addDaylist(arg[1], arg[0], data) if something_to_print: dlist.print_() def daylistPrintWizard(self): ''' raise a dialog and give options for what should be printed ''' om_printing.daylistPrintWizard(self) def printrecall(self): ''' print a one-off recall ''' om_printing.printrecall(self) def printNotes(self): ''' normal notes print ''' message = _("use the checkboxes on the notes tab " "to control what is printed.") self.advise(message, 1) om_printing.printNotes(self) def printMH(self): om_printing.print_mh_form(self) def print_mh_forms(self, serialnos): om_printing.print_mh_forms(serialnos, self) def med_form_checked(self): if self.pt.serialno == 0: medical_form_date_entry_dialog.allow_user_input() return dl = MedFormCheckDialog(self) if dl.exec_(): dl.apply() self.advise(_("updated med form check date")) self.pt.reload_mh_form_date() self.load_receptionSummaryPage() self.updateHiddenNotesLabel() self.updateDetails() def diary_mh_form_date(self, serialnos): ''' called via Qmenu on the appointment book ''' for sno in serialnos: dl = medical_form_date_entry_dialog.MedFormDateEntryDialog( sno, self) if dl.exec_(): dl.apply() self.diary_widget.layout_diary() def childsmile_button_clicked(self): ''' A function to implement NHS Scotland's Childsmile. ''' dl = ChildSmileDialog(self) if dl.exec_(): manipulate_plan.add_treatments_to_plan(self, dl.tx_items, True) def notes_link_clicked(self, url): LOGGER.debug("notes link clicked '%s'", url) url_text = url.toString() m = re.match(r"edit_notes\?(\d+|__SNO__)", url_text) if m: if m.groups()[0] == "__SNO__": serialno = self.pt.serialno patient_loaded = True else: serialno = int(m.groups()[0]) patient_loaded = False dl = AlterTodaysNotesDialog(serialno, self) dl.patient_loaded = patient_loaded if dl.exec_(): if patient_loaded: self.pt.getNotesTuple() self.load_notes() if self.sender() == self.diary_widget.ui.appt_notes_webView: self.diary_widget.show_todays_notes(serialno) else: LOGGER.warning("unable to match clicked link '%s'", url) def show_diary(self): ''' called when the diary widget itself has something to show. we need to avoid changing to today's date as this may be undesirable ''' self.signals_tabs(False) self.ui.main_tabWidget.setCurrentIndex(1) self.signals_tabs() @property def patient(self): ''' a convenience property to use the new style pt attribute ''' if self.pt.serialno == 0: return None return self.pt def setupSignals(self): ''' a function to call other functions (to keep the code clean) ''' params.signaller.message_signal.connect(self.advise) self.signals_miscbuttons() self.signals_admin() self.signals_reception() self.signals_printing() self.signals_menu() self.signals_estimates() self.signals_plan() self.signals_daybook() self.signals_accounts() self.signals_contract() self.signals_feesTable() self.signals_charts() self.signals_editPatient() self.signals_notesPage() self.signals_tabs() self.signals_appointments() self.signals_forum() self.signals_history() self.signals_bulk_mail() self.signals_notes() def signals_miscbuttons(self): ''' connect the signals from various buttons which do not belong to any other function ''' self.ui.closeCourse_pushButton.clicked.connect( self.closeTx_pushButton_clicked) self.ui.saveButton.clicked.connect(self.saveButtonClicked) self.ui.exampushButton.clicked.connect(self.showExamDialog) self.ui.hygWizard_pushButton.clicked.connect(self.showHygDialog) self.ui.xray_pushButton.clicked.connect(self.addXrays) self.ui.newBPE_pushButton.clicked.connect(self.newBPE_Dialog) self.ui.medNotes_pushButton.clicked.connect(self.showMedNotes) self.ui.medNotes_pushButton2.clicked.connect(self.showMedNotes) self.ui.phraseBook_pushButton.clicked.connect( self.show_phrase_book_dialog) self.ui.clinician_phrasebook_pushButton.clicked.connect( self.show_clinician_phrase_book_dialog) self.ui.memos_pushButton.clicked.connect(self.newCustomMemo) self.ui.childsmile_button.clicked.connect( self.childsmile_button_clicked) self.ui.actionSurgery_Mode.toggled.connect(self.set_surgery_mode) self.ui.actionDocuments_Dialog.triggered.connect( self.documents_pushButton_clicked) self.ui.set_location_button.clicked.connect(self.set_patient_location) def signals_admin(self): # admin frame self.ui.home_pushButton.clicked.connect(self.home) self.ui.newPatientPushButton.clicked.connect(self.enterNewPatient) self.ui.findButton.clicked.connect(self.find_patient) self.ui.reloadButton.clicked.connect(self.reload_patient) self.ui.backButton.clicked.connect(self.last_patient) self.ui.nextButton.clicked.connect(self.next_patient) self.ui.relatedpts_pushButton.clicked.connect(self.find_related) self.ui.dayList_comboBox.currentIndexChanged.connect(self.todays_pts) def signals_reception(self): ''' a function to connect all the receptionists buttons ''' self.ui.printAccount_pushButton.pressed.connect(self.printaccount) self.ui.printEst_pushButton.clicked.connect(self.printEstimate) self.ui.printRecall_pushButton.clicked.connect(self.printrecall) self.ui.takePayment_pushButton.clicked.connect( self.takePayment_pushButton_clicked) self.ui.printGP17_pushButton.clicked.connect(self.printGP17_clicked) self.ui.med_questionaire_print_pushbutton.clicked.connect(self.printMH) self.ui.med_form_checked_button.clicked.connect(self.med_form_checked) self.ui.reception_view_checkBox.clicked.connect( self.reception_view_checkBox_clicked) self.ui.recall_settings_pushButton.clicked.connect( self.show_appt_prefs_dialog) def signals_notes(self): ''' all the notes browsers need to send a signal when they have loaded so that they can be scrolled to the end ''' for wv in (self.ui.reception_webview2, self.ui.notes_webView, self.ui.notesSummary_webView): wv.loadFinished.connect(self.webviewloaded) for wv in (self.ui.notes_webView, self.ui.notesSummary_webView, self.diary_widget.ui.appt_notes_webView): wv.linkClicked.connect(self.notes_link_clicked) def signals_printing(self): ''' connect buttons which print stuff ''' self.ui.receiptPrintButton.clicked.connect(self.printDupReceipt) self.ui.notesPrintButton.clicked.connect(self.printNotes) self.ui.referralLettersPrintButton.clicked.connect( self.printReferral) self.ui.standardLetterPushButton.clicked.connect(self.printLetter) self.ui.recallLoad_pushButton.clicked.connect(self.exportRecalls) self.ui.bulkMail_options_pushButton.clicked.connect( self.bulkMailLetterOptions) self.ui.bulkMailPrint_pushButton.clicked.connect(self.bulkMailPrint) self.ui.bulk_mail_expand_pushButton.clicked.connect( self.bulkMailExpand) self.ui.importDoc_pushButton.clicked.connect(self.importDoc) self.ui.account2_pushButton.clicked.connect(self.accountButton2Clicked) self.ui.prevCorres_treeWidget.itemDoubleClicked.connect( self.showPrevPrintedDoc) self.ui.importDoc_treeWidget.itemDoubleClicked.connect( self.showImportedDoc) self.ui.medicalPrintButton.clicked.connect(self.printMH) def signals_menu(self): # menu self.ui.action_save_patient.triggered.connect(self.save_patient_tofile) self.ui.action_Open_Patient.triggered.connect( self.open_patient_fromfile) self.ui.actionSet_Clinician.triggered.connect(self.setClinician) self.ui.actionSet_Assistant.triggered.connect(self.setAssistant) self.ui.actionChange_Language.triggered.connect(self.changeLanguage) self.ui.action_About.triggered.connect(self.aboutOM) self.ui.actionCheck_for_Updates.triggered.connect(self.check_version) self.ui.action_About_QT.triggered.connect( QtWidgets.QApplication.instance().aboutQt) self.ui.action_Quit.triggered.connect(self.quit) self.ui.actionFull_Screen_Mode_Ctrl_Alt_F.triggered.connect( self.fullscreen) self.ui.actionTable_View_For_Charting.toggled.connect( self.showChartTable) self.ui.actionClear_Today_s_Emergency_Slots.triggered.connect( self.clear_todays_emergencies) self.ui.actionInsert_Regular_Blocks.triggered.connect( self.insert_regular_blocks) self.ui.actionSet_Bookend.triggered.connect(self.set_bookend) self.ui.actionTest_Print_a_GP17.triggered.connect(self.testGP17) self.ui.actionNHS_Form_Settings.triggered.connect( self.nhsformOptionsDialog) self.ui.actionPrint_Daylists.triggered.connect(self.daylistPrintWizard) self.ui.actionAdvanced_Record_Management.triggered.connect( self.advancedRecordTools) self.ui.actionFix_Locked_New_Course_of_Treatment.triggered.connect( self.fix_zombied_course) self.ui.action_all_history_edits.triggered.connect( self.allow_all_history_edits) self.ui.actionAllow_Full_Edit.triggered.connect( self.ui.cashbookTextBrowser.allow_full_edit) self.ui.actionSet_Surgery_Number.triggered.connect( self.set_surgery_number) self.ui.actionEdit_Phrasebooks.triggered.connect(self.edit_phrasebooks) self.ui.actionAllow_Edit.triggered.connect(self.allow_edit_daybook) self.ui.actionAllow_Edit_Treatment.triggered.connect( self.allow_edit_daybook) self.ui.actionEnable_Filters.triggered.connect( self.enable_daybook_filters) self.ui.actionEdit_Courses.triggered.connect(self.edit_currtrtmt2) self.ui.actionEdit_Estimates.triggered.connect(self.edit_estimates) self.ui.actionEdit_Referral_Centres.triggered.connect( self.edit_referral_centres) self.ui.actionReset_Supervisor_Password.triggered.connect( self.reset_supervisor) self.ui.actionAdd_User.triggered.connect(self.add_user) self.ui.actionAdd_Clinician.triggered.connect(self.add_clinician) self.ui.actionEdit_Practice_Details.triggered.connect( self.edit_practice) self.ui.actionEdit_Standard_Letters.triggered.connect( self.edit_standard_letters) self.ui.actionEdit_Feescales.triggered.connect(self.feetable_xml) self.ui.actionConfigure_Feescales.triggered.connect( self.configure_feescales) self.ui.actionEdit_Account_Letter_Settings.triggered.connect( self.edit_account_letter_settings) self.ui.actionClear_Locations.triggered.connect(self.clear_locations) def signals_estimates(self): # Estimates and Course Management self.ui.closeTx_pushButton.clicked.connect( self.closeTx_pushButton_clicked) self.ui.estLetter_pushButton.clicked.connect( self.customEstimate) self.ui.recalcEst_pushButton.clicked.connect( self.recalculateEstimate) self.ui.apply_exemption_pushButton.clicked.connect( self.apply_exemption) self.ui.rec_apply_exemption_pushButton.clicked.connect( self.apply_exemption) self.ui.xrayTxpushButton.clicked.connect(self.addXrayItems) self.ui.perioTxpushButton.clicked.connect(self.addPerioItems) self.ui.dentureTxpushButton.clicked.connect(self.add_denture_items) self.ui.otherTxpushButton.clicked.connect(self.addOtherItems) self.ui.customTx_pushButton.clicked.connect(self.addCustomItem) self.ui.estWidget.updated_fees_signal.connect(self.updateDetails) self.ui.estWidget.delete_estimate_item.connect( self.estwidget_deleteTxItem) def signals_plan(self): self.ui.advanced_tx_planning_button.clicked.connect( self.advanced_tx_planning) self.ui.plan_listView.customContextMenuRequested.connect( self.show_plan_listview_context_menu) self.ui.plan_listView.doubleClicked.connect( self.handle_plan_listview_2xclick) self.ui.completed_listView.customContextMenuRequested.connect( self.show_cmp_listview_context_menu) self.ui.completed_listView.doubleClicked.connect( self.handle_completed_listview_2xclick) self.ui.planChartWidget.request_tx_context_menu_signal.connect( self.show_plan_chart_context_menu) self.ui.completedChartWidget.request_tx_context_menu_signal.connect( self.show_cmp_chart_context_menu) self.ui.plan_course_manage_button.clicked.connect( self.plan_page_course_but_clicked) def signals_bulk_mail(self): self.ui.bulk_mailings_treeView.doubleClicked.connect( self.bulk_mail_doubleclicked) def signals_forum(self): self.ui.action_forum_show_advanced_options.triggered.connect( self.forum_widget.show_advanced_options) self.forum_widget.new_posts_signal.connect(self.new_forum_posts) self.forum_widget.unread_posts_signal.connect(self.unread_forum_posts) self.forum_widget.departed_signal.connect(self.forum_departed) def signals_history(self): self.debugMenu.triggered.connect(self.showPtAttributes) self.ui.ptAtts_checkBox.stateChanged.connect(self.updateAttributes) self.ui.historyPrint_pushButton.clicked.connect(self.historyPrint) self.ui.pastPayments_pushButton.clicked.connect( self.pastPayments_clicked) self.ui.pastTreatment_pushButton.clicked.connect( self.pastTreatment_clicked) self.ui.pastCourses_pushButton.clicked.connect( self.pastCourses_clicked) self.ui.pastEstimates_pushButton.clicked.connect( self.pastEstimates_clicked) self.ui.NHSClaims_pushButton.clicked.connect(self.NHSClaims_clicked) self.ui.memo_history_pushButton.clicked.connect(self.show_memo_history) self.ui.current_est_versioning_pushButton.clicked.connect( self.show_estimate_versioning) self.ui.medhist_history_button.clicked.connect( self.show_medhist_history) def signals_daybook(self): # daybook - cashbook self.ui.daybookGoPushButton.clicked.connect(self.daybookView) self.ui.daybookPrintButton.clicked.connect(self.daybookPrint) self.ui.daybook_filters_pushButton.clicked.connect( self.show_daybook_filter_help) self.ui.cashbookGoPushButton.clicked.connect(self.cashbookView) self.ui.cashbookPrintButton.clicked.connect(self.cashbookPrint) self.ui.sundries_only_radioButton.clicked.connect(self.cashbookView) self.ui.treatment_only_radioButton.clicked.connect(self.cashbookView) self.ui.all_payments_radioButton.clicked.connect(self.cashbookView) def signals_accounts(self): # accounts self.ui.loadAccountsTable_pushButton.clicked.connect( self.loadAccountsTable_clicked) self.ui.printSelectedAccounts_pushButton.clicked.connect( self.printSelectedAccounts) self.ui.printAccountsTable_pushButton.clicked.connect( self.printAccountsTable) self.ui.accounts_tableWidget.cellDoubleClicked.connect( self.accountsTableClicked) def signals_contract(self): # contract self.ui.status_comboBox.currentIndexChanged.connect( self.change_pt_status) self.ui.badDebt_pushButton.clicked.connect(self.makeBadDebt_clicked) self.ui.contract_tabWidget.currentChanged.connect( self.contractTab_navigated) self.ui.dnt1comboBox.activated[str].connect( self.dnt1comboBox_clicked) self.ui.dnt2comboBox.activated[str].connect( self.dnt2comboBox_clicked) self.ui.cseType_comboBox.activated[str].connect( self.cseType_comboBox_clicked) self.ui.editNHS_pushButton.clicked.connect( self.editNHS_pushButton_clicked) self.ui.exemption_lineEdit.editingFinished.connect( self.exemption_edited) self.ui.exempttext_lineEdit.editingFinished.connect( self.exemption_edited) self.ui.editPriv_pushButton.clicked.connect( self.editPriv_pushButton_clicked) self.ui.nhsclaims_pushButton.clicked.connect( self.nhsclaims_pushButton_clicked) self.ui.editHDP_pushButton.clicked.connect( self.editHDP_pushButton_clicked) self.ui.editRegDent_pushButton.clicked.connect( self.editRegDent_pushButton_clicked) def signals_feesTable(self): # feesTable # TODO bring this functionality back # self.ui.printFeescale_pushButton.clicked.connect(self.printFeesTable) self.ui.feeScales_treeView.clicked.connect(self.feeScale_clicked) self.ui.feeScales_treeView.expanded.connect(self.feeScale_expanded) self.ui.chooseFeescale_comboBox.currentIndexChanged.connect( self.chooseFeescale_comboBox_changed) self.ui.feeExpand_radioButton.clicked.connect( self.feeExpand_radiobuttons_clicked) self.ui.feeCompress_radioButton.clicked.connect( self.feeExpand_radiobuttons_clicked) self.ui.documents_pushButton.clicked.connect( self.documents_pushButton_clicked) self.ui.feeSearch_lineEdit.returnPressed.connect( self.feeSearch_lineEdit_edited) self.ui.search_descriptions_radioButton.toggled.connect( self.feeSearch_pushButton_clicked) self.ui.feeSearch_pushButton.clicked.connect( self.feeSearch_pushButton_clicked) self.ui.feescale_tester_pushButton.clicked.connect( self.feescale_tester_pushButton_clicked) self.ui.hide_rare_feescale_codes_checkBox.toggled.connect( self.hide_rare_feescale_items) self.ui.reload_feescales_pushButton.clicked.connect( self.reload_feescales) def signals_charts(self): for chart in (self.ui.summaryChartWidget, self.ui.staticChartWidget): chart.teeth_selected_signal.connect(self.static_chartNavigation) chart.show_history_signal.connect(self.toothHistory) chart.flip_deciduous_signal.connect(self.flipDeciduous) chart.add_comments_signal.connect(self.tooth_add_comments) chart.delete_all_signal.connect(self.tooth_delete_all) chart.delete_prop_signal.connect(self.tooth_delete_prop) self.ui.planChartWidget.teeth_selected_signal.connect( self.plan_chartNavigation) self.ui.completedChartWidget.teeth_selected_signal.connect( self.comp_chartNavigation) self.ui.planChartWidget.complete_treatments_signal.connect( self.complete_planned_chart_treatments) self.ui.completedChartWidget.complete_treatments_signal.connect( self.reverse_completed_chart_treatments) self.ui.toothPropsWidget.next_tooth_signal.connect(self.navigateCharts) self.ui.static_control_panel.clicked.connect( self.ui.toothPropsWidget.static_input) # -fillings have changed!! self.ui.toothPropsWidget.lineEdit.changed_properties_signal.connect( self.updateCharts) self.ui.toothPropsWidget.lineEdit.deleted_comments_signal.connect( self.deleteComments) self.ui.static_control_panel.deciduous_signal.connect( self.flipDeciduous) self.ui.toothPropsWidget.static_chosen.connect( self.ui.static_control_panel.setEnabled) def signals_editPatient(self): # edit page self.ui.email1_button.clicked.connect(self.send_email) self.ui.email2_button.clicked.connect(self.send_email) self.ui.auto_address_button.clicked.connect(self.raise_address_dialog) self.ui.titleEdit.editingFinished.connect(self.check_sex) self.ui.family_button.clicked.connect(self.raise_family_dialog) self.ui.save_new_patient_pushButton.clicked.connect( self.checkNewPatient) self.ui.abort_new_patient_pushButton.clicked.connect(self.home) self.ui.advanced_names_pushButton.clicked.connect(self.advanced_names) def signals_notesPage(self): # notes page for rb in (self.ui.notes_includePrinting_checkBox, self.ui.notes_includePayments_checkBox, self.ui.notes_includeTimestamps_checkBox, self.ui.notes_includeMetadata_checkBox, self.ui.summary_notes_checkBox): rb.toggled.connect(self.load_notes) def signals_tabs(self, connect=True): ''' connect (or disconnect) the slots for the main_tabWidget, and patient tabWidget default is to connect ''' if connect: self.ui.main_tabWidget.currentChanged.connect(self.handle_mainTab) self.ui.tabWidget.currentChanged.connect(self.handle_patientTab) else: self.ui.main_tabWidget.currentChanged.disconnect( self.handle_mainTab) self.ui.tabWidget.currentChanged.disconnect(self.handle_patientTab) def signals_appointments(self): # signals raised on the main appointment tab self.ui.actionSet_Font_Size.triggered.connect(self.apptBook_fontSize) self.diary_widget.bring_to_front.connect(self.show_diary) self.diary_widget.patient_card_request.connect(self.getrecord) self.diary_widget.pt_diary_changed.connect( self.pt_diary_widget.refresh_ptDiary) self.diary_widget.print_mh_signal.connect(self.print_mh_forms) self.diary_widget.location_signal.connect(self.patient_location) self.diary_widget.mh_form_date_signal.connect(self.diary_mh_form_date) self.pt_diary_widget.start_scheduling_signal.connect(self.start_scheduling) self.pt_diary_widget.find_appt.connect(self.diary_widget.find_appt) self.pt_diary_widget.appointments_changed_signal.connect( self.handle_pt_diary_update) def start_scheduling(self, custom): ''' An appointment is to be scheduled. ''' LOGGER.debug("starting scheduling, custom=%s", custom) appts = self.pt_diary_widget.selected_appointments self.pt_diary_widget.layout_ptDiary() self.diary_widget.schedule_controller.set_patient(self.pt) self.diary_widget.schedule_controller.update_appt_selection(appts) self.signals_tabs(False) self.ui.main_tabWidget.setCurrentIndex(1) # appointmenttab self.signals_tabs() self.updateDetails() self.diary_widget.start_scheduling(custom) def handle_pt_diary_update(self): LOGGER.debug("handle_pt_diary_update") self.pt.forget_exam_booked() self.updateDetails() def appt_prefs_changed(self): self.updateDetails() def recalculateEstimate(self): ''' Adds ALL tooth items to the estimate. prompts the user to confirm tooth treatment fees ''' if not self.pt.underTreatment: self.advise(_("Recalculate Estimate is not normally " "used on closed courses"), 1) if not permissions.granted(self): return if QtWidgets.QMessageBox.question( self, _("Confirm"), "%s
    (%s)" % ( _("Scrap the estimate and re-price everything?"), _("Custom items and items added using feescale " "method will be unaffected")), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No: return if manipulate_plan.recalculate_estimate(self): self.load_newEstPage() self.updateDetails() def apply_exemption(self): ''' applies a max fee chargeable ''' if QtWidgets.QMessageBox.question( self, _("Confirm"), _("apply an exemption to the NHS items on this estimate?"), QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.No: return max_, result = QtWidgets.QInputDialog.getInt( self, _("input needed"), "%s
    %s" % (_("maximum charge for the patient"), _("please enter the amount in pence, " "or leave as 0 for full exemption")) ) if result and estimates.apply_exemption(self.pt, max_): self.handle_patientTab() self.updateDetails() def fix_zombied_course(self): ''' a situation COULD arise where a new course was started and the client crashed (without cleaning up the temporary row in the currtrtmt2 table) this functionality retrieves this. ''' course_module.fix_zombied_course(self) def check_sex(self): ''' when the title field is edited, make assumptions about the patient's sex ''' if self.ui.titleEdit.text().upper() in ("MISS", "MRS"): self.ui.sexEdit.setCurrentIndex(1) elif self.ui.titleEdit.text().upper() in ("MR", "MASTER"): self.ui.sexEdit.setCurrentIndex(0) def raise_address_dialog(self): ''' raise the dialog for the last known address ''' dl = AutoAddressDialog(self) if dl.exec_(): dl.apply() def raise_family_dialog(self): ''' raise the dialog for family management ''' dl = FamilyManageDialog(self) if dl.exec_(): dl.apply() def update_family_label(self): message_2 = "&%s" % _("Relatives") if self.pt.familyno: message = "%s %s - %d %s" % ( _("Family ID"), self.pt.familyno, self.pt.n_family_members, _("Member(s)") ) message_2 += " (%d)" % (self.pt.n_family_members - 1) elif self.pt.serialno == 0: message = _("No Patient Loaded") else: message = _("Not a member of a known family") self.ui.family_group_label.setText(message) self.ui.relatedpts_pushButton.setText(message_2) LOGGER.debug("updating family label '%s' '%s'", message, message_2) def send_email(self): if self.sender == self.ui.email2_button: email = self.ui.email2Edit.text() else: email = self.ui.email1Edit.text() webbrowser.open("mailto:%s" % email) def advanced_names(self): self.apply_editpage_changes() dl = AdvancedNamesDialog(self) dl.set_patient(self.pt) if dl.exec_(): self.ui.snameEdit.setText(dl.sname) self.ui.fnameEdit.setText(dl.fname) def load_pt_statuses(self): ds = DistinctStatuses() self.ui.status_comboBox.addItems(ds.DISTINCT_STATUSES) def load_fee_tables(self): localsettings.loadFeeTables() for warning in localsettings.FEETABLES.warnings: self.advise( "%s
    %s" % (_("error loading feetable"), warning), 2) self.ui.cseType_comboBox.addItems(localsettings.CSETYPES) def hide_rare_feescale_items(self, bool_): # TODO - this could actually have 3 levels. if bool_: level = 1 else: level = 0 fee_table_model.HIDE_RARE_CODES = level fees_module.loadFeesTable(self) def reload_feescales(self): self.advise(_("Reloading feescales from database")) localsettings.loadFeeTables() fees_module.loadFeesTable(self) if self.pt is not None: self.pt.forget_fee_table() if self.fee_table_tester is not None: self.fee_table_tester.load_feescales() def advanced_tx_planning(self): def _add_txs(items, completed=False): cust_items = [] for item in items: if item[0] == "custom": cust_items.append(item) for item in cust_items: items.remove(item) manipulate_plan.add_treatments_to_plan(self, items, completed) for att, shortcut in cust_items: manipulate_plan.customAdd(self, shortcut) if course_module.newCourseNeeded(self): return dl = AdvancedTxPlanningDialog(self) if dl.exec_(): manipulate_plan.complete_txs( self, tuple(dl.completed_items), False) manipulate_plan.reverse_txs(self, tuple(dl.reversed_items), False) if dl.new_plan_items: _add_txs(dl.new_plan_items) if dl.new_cmp_items: _add_txs(dl.new_cmp_items, completed=True) if dl.deleted_plan_items: manipulate_plan.remove_treatments_from_plan_and_est( self, dl.deleted_plan_items) if dl.deleted_cmp_items: manipulate_plan.remove_treatments_from_plan_and_est( self, dl.deleted_cmp_items, completed=True) self.update_plan_est() self.updateDetails() def show_plan_chart_context_menu(self, att, values, point): QtCore.QTimer.singleShot( 100, partial(manipulate_plan.plan_viewer_context_menu, self, att, values, point)) def show_cmp_chart_context_menu(self, att, values, point): # use singleShot to slow this down fractionally # (was occasionaly firing the Qmenu) QtCore.QTimer.singleShot( 100, partial(manipulate_plan.cmp_viewer_context_menu, self, att, values, point)) def show_plan_listview_context_menu(self, point): LOGGER.debug("plan listview pressed %s", point) QtCore.QTimer.singleShot( 100, partial(manipulate_plan.plan_list_right_click, self, point) ) def handle_plan_listview_2xclick(self, index): LOGGER.debug("plan listview 2xclick %s", index) manipulate_plan.plan_listview_2xclick(self, index) def show_cmp_listview_context_menu(self, point): LOGGER.debug("completed listview pressed %s", point) # use singleShot to slow this down fractionally # (was occasionaly firing the Qmenu) QtCore.QTimer.singleShot( 100, partial(manipulate_plan.cmp_list_right_click, self, point) ) def handle_completed_listview_2xclick(self, index): LOGGER.debug("completed listview 2xclick %s", index) manipulate_plan.completed_listview_2xclick(self, index) def set_surgery_number(self): LOGGER.debug("setting surgery number") dialog = QtWidgets.QDialog(self) dl = Ui_surgeryNumber.Ui_Dialog() dl.setupUi(dialog) if dialog.exec_(): localsettings.surgeryno = dl.comboBox.currentIndex() localsettings.updateLocalSettings( "surgeryno", str(localsettings.surgeryno)) return True return False def edit_phrasebooks(self): def editor_closed(): self.phrasebook_editor.setParent(None) self.phrasebook_editor = None if self.phrasebook_editor is not None: self.phrasebook_editor.show() self.phrasebook_editor.raise_() else: self.phrasebook_editor = PhrasebookEditor(self) self.phrasebook_editor.show() self.phrasebook_editor.closed_signal.connect(editor_closed) def enable_daybook_filters(self, bool_value): self.ui.daybook_filters_frame.setEnabled(bool_value) if bool_value is False: self.ui.daybook_filters_lineEdit.setText("") def show_daybook_filter_help(self): self.advise(daybook.filter_help_text(), 1) def allow_all_history_edits(self, bool_value): self.edit_currtrtmt2(bool_value, False) self.ui.actionEdit_Courses.setChecked(bool_value) self.edit_estimates(bool_value, False) self.ui.actionEdit_Estimates.setChecked(bool_value) self.allow_edit_daybook(bool_value, False) self.refresh_debug_browser() def edit_currtrtmt2(self, bool_value, refresh=True): courseHistory.ALLOW_EDIT = bool_value if refresh: self.refresh_debug_browser() def allow_edit_daybook(self, bool_value, refresh=True): self.ui.actionAllow_Edit_Treatment.setChecked(bool_value) self.ui.actionAllow_Edit.setChecked(bool_value) daybook.ALLOW_TX_EDITS = bool_value daybookHistory.ALLOW_TX_EDITS = bool_value if refresh: self.refresh_debug_browser() def edit_estimates(self, bool_value, refresh=True): estimatesHistory.ALLOW_EDIT = bool_value if refresh: self.refresh_debug_browser() def refresh_debug_browser(self): ''' update the debug browser ''' LOGGER.debug("refreshing debug %s", self.debug_browser_refresh_func) if self.debug_browser_refresh_func is None: self.ui.debugBrowser.setText("") else: self.ui.debugBrowser.setText(self.debug_browser_refresh_func()) def set_browser_source(self, url): ''' A function to re-implement QTextBrowser.setUrl this will catch "edit links" ''' url = str(url.toString()) m1 = re.match(r"daybook_id\?(\d+)feesa=(\d+)feesb=(\d+)", url) m2 = re.match(r"daybook_id_edit\?(\d+)", url) m3 = re.match(r"edit_courseno\?(\d+)", url) m4 = re.match(r"edit_estimate\?(\d+)", url) m5 = re.match(r"merge_courses\?(\d+)\+(\d+)", url) m6 = re.match(r"consistent_courseno\?(\d+)", url) m7 = re.match(r"edit_tx_courseno\?(\d+)", url) if m1: id_ = int(m1.groups()[0]) fee = int(m1.groups()[1]) ptfee = int(m1.groups()[2]) dl = DaybookItemDialog(id_, fee, ptfee, self) dl.exec_() elif m2 and permissions.granted(): id_ = int(m2.groups()[0]) dl = DaybookEditDialog(id_, self) if dl.exec_(): dl.update_treatments() elif m3 and permissions.granted(): courseno = int(m3.groups()[0]) dl = CourseEditDialog(courseno, self) if dl.exec_(): dl.update_db() elif m4 and permissions.granted(): courseno = int(m4.groups()[0]) dl = EstimateEditDialog(self.pt.serialno, courseno, self) if dl.exec_(): dl.update_db() elif m5 and permissions.granted(): courseno1, courseno2 = m5.groups() dl = CourseMergeDialog(self.pt.serialno, int(courseno1), int(courseno2), self) if dl.exec_(): dl.update_db() elif m6 and permissions.granted(): courseno = int(m6.groups()[0]) dl = CourseConsistencyDialog(self.pt.serialno, courseno, self) if dl.exec_(): dl.update_db() elif m7 and permissions.granted(): courseno = int(m7.groups()[0]) dl = EditTreatmentDialog(self.pt.serialno, courseno, self) if dl.exec_(): dl.update_db() else: LOGGER.info("Not editing %s", url) def edit_referral_centres(self): dl = EditReferralCentresDialog(self) if dl.exec_(): self.set_referral_centres() def reset_supervisor(self): dl = ResetSupervisorPasswordDialog(self) dl.exec_() def add_user(self): dl = AddUserDialog(self) if dl.exec_(): self.advise(_("New user added to login table"), 1) def add_clinician(self): if self.pt.serialno: self.advise( _("Please exit any record before taking this action"), 1) return dl = AddClinicianDialog(self) if dl.exec_(): self.initiate() def edit_practice(self): dl = EditPracticeDialog(self) if dl.exec_(): self.advise(_("Practice Name and/or Address modified."), 1) def edit_standard_letters(self): dl = EditStandardLettersDialog(self) if dl.exec_(): CorrespondenceDialog.LETTERS = None def edit_account_letter_settings(self): dl = AccountLetterDialog(self) if dl.exec_(): dl.apply_() def clear_todays_emergencies(self): self.show_diary() self.diary_widget.clearTodaysEmergencyTime() def insert_regular_blocks(self): self.show_diary() self.diary_widget.insert_regular_blocks() def show_appt_prefs_dialog(self): dl = ApptPrefsDialog(self.pt, self) if dl.exec_(): self.pt.appt_prefs.commit_changes() self.appt_prefs_changed() def check_records_in_use(self): ''' check to see who may be using the current record. called when the records_in_use_timer timeouts. ''' self.check_waiting() if not self.pt or self.pt.serialno == 0: return LOGGER.debug("checking records in use") users = [] message = "" for riu in records_in_use.get_usage_info(self.pt.serialno): user = "%s - %s" % (riu.op, riu.location) if riu.surgeryno == localsettings.surgeryno: continue if riu.is_locked: message = "%s %s" % (_("Record is locked by"), user) # TODO something like the next line should happen here!! # self.enableEdit(False) else: users.append(user) if users: message += "%s
    " % _("Record also used by") message += "
    ".join(users) if message: self.advise(message) def clear_record_in_use(self): ''' clear the records_in_use table for the current patient / station. note - 2 second delay is default in case quit by accident. ''' LOGGER.debug("clearing record in use") QtCore.QTimer.singleShot( 2000, partial(records_in_use.clear_in_use, self.pt.serialno)) def clear_all_records_in_use(self): ''' clear the records_in_use table for the current station. ''' LOGGER.debug("clearing all records linked to this surgery") records_in_use.clear_surgery_records() def set_bookend(self): ''' raise a dialog and allow user to change the last day appointments are searched for. ''' dl = BookendDialog(self) if dl.exec_(): dl.apply_() self.advise("%s %s" % (_("Bookend altered to"), localsettings.formatDate(dl.chosen_date)), 1) def check_previous_surname(self): if self.pt.sname != self.pt.dbstate.sname: dl = AdvancedNamesDialog(self) dl.set_patient(self.pt) dl.check_save_previous_surname(self.pt.dbstate.sname) def prompt_clear_location(self): if (self.surgery_mode and self.pt and self.pt.serialno in locations.all_snos()): self.set_patient_location() def set_patient_location(self): self.patient_location(self.pt.serialno) def patient_location(self, sno): dl = PatientLocationDialog(sno, self) if dl.exec_(): self.advise(dl.message) self.diary_widget.layout_diary() self.check_waiting() def check_waiting(self): serialnos = locations.no_of_patients_waiting() n = len(serialnos) if n == 0: message =_("No patients are waiting") elif n == 1: message = _("1 PATIENT IS WAITING") else: message = "%d %s" % (n, _("PATIENTS ARE WAITING")) if self.pt and self.pt.serialno in serialnos: self.ui.set_location_button.setText(_("WAITING")) self.ui.set_location_button.setStyleSheet("background:red") else: self.ui.set_location_button.setText(_("Location")) self.ui.set_location_button.setStyleSheet("") self.ui.statusbar.showMessage(message) def clear_locations(self): dl = ClearLocationsDialog(self) if dl.exec_(): self.advise(_("All Patient Locations have been cleared")) self.diary_widget.layout_diary() def excepthook(self, exc_type, exc_val, tracebackobj): ''' PyQt5 prints unhandled exceptions to stdout and carries on regardless I don't want this to happen. so sys.excepthook is passed to this ''' message = "" for l in traceback.format_exception(exc_type, exc_val, tracebackobj): message += l sys.stderr.write(message) self.advise('UNHANDLED EXCEPTION!
    %s
    ' % message, 2) self.await_connection() def main(): ''' the entry point for the app ''' os.chdir(os.path.expanduser("~")) app = QtWidgets.QApplication(sys.argv) mainWindow = OpenmolarGui() sys.excepthook = mainWindow.excepthook mainWindow.show() mainWindow.setWindowState(QtCore.Qt.WindowMaximized) sys.exit(app.exec_()) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) LOGGER.warning("dev mode in use - verbose logging") LOGGER.debug("Qt Version: %s", QtCore.QT_VERSION_STR) LOGGER.debug("PyQt Version: %s", QtCore.PYQT_VERSION_STR) main() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/new_patient_gui.py0000644000175000017500000001611112710144046024456 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import writeNewPatient, families LOGGER = logging.getLogger("openmolar") def check_use_family(om_gui): if localsettings.LAST_ADDRESS == localsettings.BLANK_ADDRESS: LOGGER.warning("New Patient - No previous record details found") return if QtWidgets.QMessageBox.question( om_gui, _("Question"), _( "Use details from the previous record?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: dup_tup = localsettings.LAST_ADDRESS om_gui.ui.addr1Edit.setText(dup_tup[1]) om_gui.ui.addr2Edit.setText(dup_tup[2]) om_gui.ui.addr3Edit.setText(dup_tup[3]) om_gui.ui.townEdit.setText(dup_tup[4]) om_gui.ui.countyEdit.setText(dup_tup[5]) om_gui.ui.pcdeEdit.setText(dup_tup[6]) om_gui.ui.tel1Edit.setText(dup_tup[7]) om_gui.ui.snameEdit.setText(dup_tup[0]) else: return if localsettings.last_family_no in (None, 0): if QtWidgets.QMessageBox.question( om_gui, _("Question"), _("Start a new family group?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: om_gui.pt.familyno = families.new_group( localsettings.previous_sno()) LOGGER.info("starting new family group %s", om_gui.pt.familyno) else: if QtWidgets.QMessageBox.question( om_gui, _("Question"), _( "Add the new patient to this family group?"), QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, QtWidgets.QMessageBox.Yes) == QtWidgets.QMessageBox.Yes: om_gui.pt.familyno = localsettings.last_family_no def enterNewPatient(om_gui): ''' called by the user clicking the new patient button ''' # check for unsaved changes if not om_gui.okToLeaveRecord(): LOGGER.debug( "not entering new patient - still editing current record") return # make the ui dialog like om_gui.entering_new_patient = True om_gui.ui.new_notes_frame.hide() om_gui.ui.details_frame.hide() om_gui.ui.new_patient_frame.show() om_gui.ui.family_groupBox.hide() # disable the tabs which are normally enabled by default om_gui.ui.tabWidget.setTabEnabled(4, False) om_gui.ui.tabWidget.setTabEnabled(3, False) # clear any current record om_gui.clearRecord() om_gui.pt.familyno = None # disable the majority of widgets om_gui.enableEdit(False) # move to the edit patient details page om_gui.ui.tabWidget.setTabEnabled(0, True) om_gui.ui.tabWidget.setCurrentIndex(0) om_gui.ui.patientEdit_groupBox.setTitle("Enter New Patient") # set default sex ;) om_gui.ui.sexEdit.setCurrentIndex(0) om_gui.ui.titleEdit.setFocus() check_use_family(om_gui) def checkNewPatient(om_gui): ''' check to see what the user has entered for a new patient before commiting to database ''' LOGGER.debug("check new patient") allfields_entered = True # check these widgets for entered text. for widg in (om_gui.ui.snameEdit, om_gui.ui.titleEdit, om_gui.ui.fnameEdit, om_gui.ui.addr1Edit, om_gui.ui.pcdeEdit): if len(widg.text()) == 0: allfields_entered = False if allfields_entered: # update 'pt' om_gui.apply_editpage_changes() om_gui.pt.cset = localsettings.DEFAULT_COURSETYPE sno = writeNewPatient.commit(om_gui.pt) if sno == -1: om_gui.advise(_("Error saving new patient, sorry!"), 2) else: # successful save so reset the gui and continue finishedNewPatientInput(om_gui) om_gui.getrecord(sno, newPatientReload=True) else: # prompt user for more info om_gui.advise(_( "insufficient data to create a new record." "please fill in all highlighted fields" ), 2) def finishedNewPatientInput(om_gui): ''' restore GUI to normal mode after a new patient has been entered remove my help prompt reset the state of the newPatient button enable the default tabs, and go to the appropriate one disable the edit tab and restore the save button text ''' LOGGER.debug("restoring gui to normal state (after entering new patient)") om_gui.entering_new_patient = False om_gui.ui.new_notes_frame.show() om_gui.ui.details_frame.show() om_gui.ui.new_patient_frame.hide() om_gui.ui.family_groupBox.show() om_gui.ui.tabWidget.setTabEnabled(4, True) om_gui.ui.tabWidget.setTabEnabled(3, True) om_gui.gotoDefaultTab() om_gui.ui.tabWidget.setTabEnabled(0, False) def abortNewPatientEntry(om_gui): ''' get user response 'abort new patient entry?' ''' om_gui.ui.main_tabWidget.setCurrentIndex(0) if QtWidgets.QMessageBox.question( om_gui, _("Confirm"), "%s
    %s" % (_("New Patient not saved."), _("Abandon Changes?")), QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel, QtWidgets.QMessageBox.Cancel) == QtWidgets.QMessageBox.Ok: finishedNewPatientInput(om_gui) return True openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/pt_diary_widget.py0000644000175000017500000006042112757337102024466 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import appointments from openmolar.dbtools.brief_patient import BriefPatient from openmolar.qt4gui.appointment_gui_modules.pt_diary_treemodel \ import PatientDiaryTreeModel, ColouredItemDelegate from openmolar.qt4gui.compiled_uis import Ui_patient_diary from openmolar.qt4gui.compiled_uis import Ui_specify_appointment from openmolar.qt4gui.compiled_uis import Ui_appointment_length from openmolar.qt4gui.dialogs import appt_wizard_dialog from openmolar.qt4gui.dialogs import appointment_card_dialog from openmolar.qt4gui.dialogs.dialog_collection import CancelAppointmentDialog LOGGER = logging.getLogger("openmolar") class PtDiaryWidget(QtWidgets.QWidget): _pt = None start_scheduling_signal = QtCore.pyqtSignal(object) find_appt = QtCore.pyqtSignal(object) # also inherits a signal from the model "appointments_changed_signal" def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.om_gui = parent self.ui = Ui_patient_diary.Ui_Form() self.ui.setupUi(self) self.diary_model = PatientDiaryTreeModel(self) self.ui.pt_diary_treeView.setAlternatingRowColors(True) self.ui.pt_diary_treeView.setModel(self.diary_model) self.ui.pt_diary_treeView.setContextMenuPolicy( QtCore.Qt.CustomContextMenu) self.ui.pt_diary_treeView.setSelectionMode( QtWidgets.QTreeView.ContiguousSelection) self.ui.pt_diary_treeView.setSelectionModel( self.diary_model.selection_model) item_delegate = ColouredItemDelegate(self) self.ui.pt_diary_treeView.setItemDelegate(item_delegate) self.signals() self.setSizePolicy( QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) ) self.appointments_changed_signal = \ self.diary_model.appointments_changed_signal def sizeHint(self): return QtCore.QSize(800, 200) def showEvent(self, event): LOGGER.debug("pt diary show event") self.layout_ptDiary() def set_patient(self, patient): self._pt = patient @property def pt(self): return self._pt def advise(self, *args): try: self.om_gui.advise(*args) except AttributeError: LOGGER.info("unable to send message %s", args) def clear(self): LOGGER.debug("PtDiaryWidget.clear") self._pt = None self.diary_model.selection_model.clear() self.diary_model.clear() self.ui.appt_memo_lineEdit.setText("") def refresh_ptDiary(self, serialno): if self.pt and serialno == self.pt.serialno: self.layout_ptDiary() @property def selected_appointments(self): return tuple(self.diary_model.selected_appointments) def layout_ptDiary(self): ''' populates the patient's diary model ''' if self.pt is None or self.pt.serialno == 0: self.clear() else: LOGGER.debug("layout patient diary") self.ui.appt_memo_lineEdit.setText(self.pt.appt_memo) appts = appointments.get_pts_appts(self.pt) LOGGER.debug("%s appointments found from apr table", len(appts)) self.diary_model.addAppointments(appts) LOGGER.debug("appointments added to model") self.adjustDiaryColWidths() LOGGER.debug("layout_ptDiary concluded") def select_apr_ix(self, apr_ix): ''' select the row of the model of the patient's diary where the appt is ''' result, index = self.diary_model.findItem(apr_ix) if result: LOGGER.debug( "selecting new appointment with database index %s", apr_ix) self.ptDiary_selection(index) else: self.ptDiary_selection(None) def ptDiary_selection(self, index): ''' forces selection of the given model index ''' if index is None: LOGGER.debug("clearing pt_diary_selection") self.ui.pt_diary_treeView.clearSelection() else: LOGGER.debug( "selecting new appointment with model index %s", index) self.ui.pt_diary_treeView.setCurrentIndex(index) def treeview_expanded(self, index): ''' user has expanded an item in the patient's diary. this will resize columns (if necessary) ''' LOGGER.debug("treeview expanded %s %s", index, index.parent()) if index.parent() == QtCore.QModelIndex(): self.adjustDiaryColWidths() def adjustDiaryColWidths(self): ''' resize the treeview columns. ''' for col in range(self.diary_model.columnCount()): self.ui.pt_diary_treeView.resizeColumnToContents(col) def oddApptLength(self): ''' this is called from within the a dialog when the appointment lengths offered aren't enough!! ''' Dialog = QtWidgets.QDialog(self) dl = Ui_appointment_length.Ui_Dialog() dl.setupUi(Dialog) if Dialog.exec_(): hours = dl.hours_spinBox.value() mins = dl.mins_spinBox.value() return (hours, mins) def newAppt_pushButton_clicked(self): ''' user has asked for a new appointment ''' # -check there is a patient attached to this request! if not self.pt.serialno: self.advise( "You need to select a patient before performing this action.", 1) return # -a sub proc for a subsequent dialog def makeNow(): dl.makeNow = True def oddLength(i): # - last item of the appointment length combobox is "other length" if i == dl.apptlength_comboBox.count() - 1: ol = self.oddApptLength() if ol: dl.apptlength_comboBox.currentIndexChanged.disconnect( oddLength) self.addApptLength(dl, ol[0], ol[1]) dl.apptlength_comboBox.currentIndexChanged.connect( oddLength) # -initiate a custom dialog Dialog = QtWidgets.QDialog(self) dl = Ui_specify_appointment.Ui_Dialog() dl.setupUi(Dialog) # -add an attribute to the dialog dl.makeNow = False # -add active appointment dentists to the combobox dents = list(localsettings.apptix.keys()) for dent in dents: dl.practix_comboBox.addItem(str(dent)) # -and select the patient's dentist if self.pt.dnt1 in localsettings.apptix_reverse: if localsettings.apptix_reverse[self.pt.dnt1] in dents: pos = dents.index(localsettings.apptix_reverse[self.pt.dnt1]) dl.practix_comboBox.setCurrentIndex(pos) else: dl.practix_comboBox.setCurrentIndex(-1) # -add appointment treatment types for apptType in localsettings.apptTypes: s = str(apptType) dl.trt1_comboBox.addItem(s) # -only offer exam as treatment1 if apptType != "EXAM": dl.trt2_comboBox.addItem(s) dl.trt3_comboBox.addItem(s) # -default appt length is 15 minutes dl.apptlength_comboBox.setCurrentIndex(2) # -connect the dialogs "make now" buttons to the procs just coded dl.apptlength_comboBox.currentIndexChanged.connect(oddLength) dl.scheduleNow_pushButton.clicked.connect(makeNow) inputting = True while inputting: result = Dialog.exec_() if result: # -practitioner py_inits = str(dl.practix_comboBox.currentText()) practix = localsettings.apptix.get(py_inits) if not practix: self.advise(_("Please specify a clinician"), 1) else: # -length lengthText = str(dl.apptlength_comboBox.currentText()) if "hour" in lengthText and "hours " not in lengthText: lengthText = lengthText.replace("hour", "hours ") if "hour" in lengthText: hour_index = lengthText.index("hour") length = 60 * int(lengthText[:hour_index]) lengthText = lengthText[ lengthText.index(" ", hour_index):] else: length = 0 if "minute" in lengthText: length += int(lengthText[:lengthText.index("minute")]) # -treatments code0 = dl.trt1_comboBox.currentText() code1 = dl.trt2_comboBox.currentText() code2 = dl.trt3_comboBox.currentText() # -memo note = str(dl.lineEdit.text()) # TODO - add datespec and joint appointment options # -attempt WRITE appointement to DATABASE apr_ix = appointments.add_pt_appt( self.pt.serialno, practix, length, code0, -1, code1, code2, note, "", self.pt.cset) if apr_ix: self.layout_ptDiary() self.select_apr_ix(apr_ix) if dl.makeNow: self.start_scheduling_signal.emit(False) else: # -commit failed self.advise("Error saving appointment", 2) inputting = False else: break def apptWizard_pushButton_clicked(self): ''' this shows a dialog to providing shortcuts to common groups of appointments - eg imps,bite,try,fit ''' def applyApptWizard(arg): i = 0 for appt in arg: apr_ix = appointments.add_pt_appt( self.pt.serialno, appt.get("clinician"), appt.get("length"), appt.get("trt1"), -1, appt.get("trt2"), appt.get("trt3"), appt.get("memo"), appt.get("datespec"), self.pt.cset) if i == 0: i = apr_ix if i: self.layout_ptDiary() self.select_apr_ix(i) # -check there is a patient attached to this request! if not (self.pt and self.pt.serialno): self.advise( _("You need to select a patient before " "performing this action."), 1) return if self.pt.dnt1 in (0, None): self.advise("%s
    %s" % ( _("Patient doesn't have a dentist set"), _('please correct this before using these shortcuts')), 1) return # -initiate a custom dialog dl = appt_wizard_dialog.apptWizard(self) dl.add_appointments_signal.connect(applyApptWizard) dl.exec_() def schedule_appt_clicked(self): ''' user about to make an appointment ''' self.start_scheduling_signal.emit(False) def schedule_appt_custom_clicked(self): ''' user about to make an appointment with custom settings ''' self.start_scheduling_signal.emit(True) def clearApptButton_clicked(self): ''' user is deleting an appointment ''' for appt in self.selected_appointments: if appt is not None: dl = CancelAppointmentDialog(appt, self) if dl.exec_(): self.advise(dl.message, dl.message_severity) self.layout_ptDiary() def addApptLength(self, dl, hourstext, minstext): ''' adds our new time option to the dialog, and selects it ''' hours, mins = int(hourstext), int(minstext) if hours == 1: lengthText = "1 %s " % _("hour") elif hours > 1: lengthText = "%d %s " % (hours, _("hours")) else: lengthText = "" if mins > 0: lengthText += "%d %s" % (mins, _("minutes")) lengthText = lengthText.strip(" ") try: dl.apptlength_comboBox.insertItem(0, lengthText) dl.apptlength_comboBox.setCurrentIndex(0) except Exception: LOGGER.exception("addApptLengthFunction") self.advise("unable to set the length of the appointment", 1) def modifyAppt_clicked(self): ''' modify an appointment in the patient's diary much of this code is a duplicate of make new appt ''' LOGGER.debug("pt diary modify appt") def makeNow(): dl.makeNow = True def oddLength(i): # - odd appt length selected (see above) if i == dl.apptlength_comboBox.count() - 1: ol = self.oddApptLength() if ol: dl.apptlength_comboBox.currentIndexChanged.disconnect( oddLength) self.addApptLength(dl, ol[0], ol[1]) dl.apptlength_comboBox.currentIndexChanged.connect( oddLength) if self.diary_model.appt_1 is None: self.advise(_("No appointment selected"), 1) else: appt = self.diary_model.appt_1 Dialog = QtWidgets.QDialog(self) dl = Ui_specify_appointment.Ui_Dialog() dl.setupUi(Dialog) dl.makeNow = False dents = list(localsettings.apptix.keys()) for dent in dents: s = str(dent) dl.practix_comboBox.addItem(s) for apptType in localsettings.apptTypes: s = str(apptType) dl.trt1_comboBox.addItem(s) if apptType != "EXAM": dl.trt2_comboBox.addItem(s) dl.trt3_comboBox.addItem(s) hours = appt.length // 60 mins = appt.length % 60 self.addApptLength(dl, hours, mins) if appt.date: for widget in (dl.apptlength_comboBox, dl.practix_comboBox, dl.scheduleNow_pushButton): widget.setEnabled(False) pos = dl.practix_comboBox.findText(appt.dent_inits) dl.practix_comboBox.setCurrentIndex(pos) pos = dl.trt1_comboBox.findText(appt.trt1) dl.trt1_comboBox.setCurrentIndex(pos) pos = dl.trt2_comboBox.findText(appt.trt2) dl.trt2_comboBox.setCurrentIndex(pos) pos = dl.trt3_comboBox.findText(appt.trt3) dl.trt3_comboBox.setCurrentIndex(pos) dl.lineEdit.setText(appt.memo) dl.apptlength_comboBox.currentIndexChanged.connect(oddLength) dl.scheduleNow_pushButton.clicked.connect(makeNow) if Dialog.exec_(): practixText = str(dl.practix_comboBox.currentText()) practix = localsettings.apptix[practixText] lengthText = str(dl.apptlength_comboBox.currentText()) if "hour" in lengthText and "hours " not in lengthText: lengthText = lengthText.replace("hour", "hours ") if "hour" in lengthText: length = 60 * int(lengthText[:lengthText.index("hour")]) lengthText = lengthText[ lengthText.index(" ", lengthText.index("hour")):] else: length = 0 if "minute" in lengthText: length += int(lengthText[:lengthText.index("minute")]) code0 = dl.trt1_comboBox.currentText() code1 = dl.trt2_comboBox.currentText() code2 = dl.trt3_comboBox.currentText() note = str(dl.lineEdit.text()) if self.pt.cset == "": cst = 32 else: cst = ord(self.pt.cset[0]) appointments.modify_pt_appt(appt.aprix, appt.serialno, practix, length, code0, code1, code2, note, "", cst) if appt.date is None: if dl.makeNow: self.layout_ptDiary() self.select_apr_ix(appt.aprix) self.schedule_appt_clicked() else: if not appointments.modify_aslot_appt( appt.date, practix, appt.atime, appt.serialno, code0, code1, code2, note, cst, 0, 0, 0): self.advise(_("Error putting into dentist's book"), 2) self.layout_ptDiary() def findApptButton_clicked(self): ''' an appointment in the patient's diary is being searched for by the user goes to the main appointment page for that day ''' if self.diary_model.appt_1 is None: self.advise(_("No appointment selected"), 1) else: appt = self.diary_model.appt_1 self.find_appt.emit(appt) def printApptCard_clicked(self): ''' user has asked for a print of an appointment card ''' dl = appointment_card_dialog.AppointmentCardDialog(self.pt, self) dl.exec_() # self.updateHiddenNotesLabel() def memo_edited(self): self.pt.set_appt_memo(str(self.ui.appt_memo_lineEdit.text())) def pt_diary_treeview_doubleclicked(self, index): LOGGER.debug("pt diary double clicked %s", index) point = self.ui.pt_diary_treeView.mapFromGlobal(self.cursor().pos()) self.execute_menu(index, point) def show_context_menu(self, point): LOGGER.debug("pt_diary - show context menu at point %s", point) index = self.ui.pt_diary_treeView.indexAt(point) self.execute_menu(index, point) def execute_menu(self, index, point): appt = self.diary_model.data(index, QtCore.Qt.UserRole) if appt == None: return qmenu = QtWidgets.QMenu(self) modify_action = QtWidgets.QAction(_("Modify Appointment"), self) modify_action.triggered.connect(self.modifyAppt_clicked) if self.diary_model.appt_2 is not None: action = QtWidgets.QAction(_("Schedule these appointments"), self) action.triggered.connect(self.schedule_appt_clicked) qmenu.addAction(action) action = QtWidgets.QAction( _("Schedule these appointments (custom settings)"), self) action.triggered.connect(self.schedule_appt_custom_clicked) qmenu.addAction(action) qmenu.addSeparator() else: if appt.date is None: action = QtWidgets.QAction(_("Schedule this appointment"), self) action.triggered.connect(self.schedule_appt_clicked) qmenu.addAction(action) action = QtWidgets.QAction( _("Schedule this appointment (custom settings)"), self) action.triggered.connect(self.schedule_appt_custom_clicked) qmenu.addAction(action) qmenu.addSeparator() qmenu.addAction(modify_action) qmenu.addSeparator() action = QtWidgets.QAction( _("Delete this (unscheduled) appointment"), self) action.triggered.connect(self.clearApptButton_clicked) qmenu.addAction(action) else: action = QtWidgets.QAction(_("Show in Book"), self) action.triggered.connect(self.findApptButton_clicked) qmenu.addAction(action) qmenu.addSeparator() if appt.date >= localsettings.currentDay(): qmenu.addAction(modify_action) action = QtWidgets.QAction(_("Cancel this appointment"), self) action.triggered.connect(self.clearApptButton_clicked) qmenu.addAction(action) qmenu.setDefaultAction(qmenu.actions()[0]) qmenu.exec_(self.ui.pt_diary_treeView.mapToGlobal(point)) def signals(self): self.ui.pt_diary_treeView.expanded.connect(self.treeview_expanded) self.ui.pt_diary_treeView.collapsed.connect(self.treeview_expanded) self.ui.apptWizard_pushButton.clicked.connect( self.apptWizard_pushButton_clicked) self.ui.newAppt_pushButton.clicked.connect( self.newAppt_pushButton_clicked) self.ui.printAppt_pushButton.clicked.connect( self.printApptCard_clicked) self.ui.appt_memo_lineEdit.editingFinished.connect(self.memo_edited) self.ui.pt_diary_treeView.customContextMenuRequested.connect( self.show_context_menu) self.ui.pt_diary_treeView.doubleClicked.connect( self.pt_diary_treeview_doubleclicked) class _TestMainWindow(QtWidgets.QMainWindow): def __init__(self, parent=None): QtWidgets.QMainWindow.__init__(self, parent) self.dw = PtDiaryWidget(self) self.browser = QtWidgets.QTextBrowser() pt = BriefPatient(1) self.dw.set_patient(pt) self.dw.layout_ptDiary() self.dw.start_scheduling_signal.connect(self.start_scheduling) self.dw.ui.pt_diary_treeView.clicked.connect(self.selection_changed) self.dw.find_appt.connect(self.find_appt) frame = QtWidgets.QFrame() layout = QtWidgets.QVBoxLayout(frame) layout.addWidget(self.dw) layout.addWidget(self.browser) self.setCentralWidget(frame) def sizeHint(self): return QtCore.QSize(800, 400) def start_scheduling(self, custom): LOGGER.info("start scheduling custom=%s", custom) html = '''

    Start Scheduling

    • %s
    ''' % '
  • '.join( [str(s) for s in self.dw.selected_appointments]) self.browser.setHtml(html) def selection_changed(self): html = '''
    • %s
    Reversed = %s''' % ( '
  • '.join([str(s) for s in self.dw.selected_appointments]), self.dw.diary_model.selection_model.is_reversed) self.browser.setHtml(html) def find_appt(self, appt): html = '

    Find Appointment

    ' % appt self.browser.setHtml(html) if __name__ == "__main__": localsettings.initiate() LOGGER.setLevel(logging.DEBUG) app = QtWidgets.QApplication([]) mw = _TestMainWindow() mw.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/qt4gui/schema_updater.py0000644000175000017500000002406713022004060024256 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module is called when the schema is found to be out of date ''' import importlib import logging import sys import time from PyQt5 import QtCore from PyQt5 import QtWidgets from openmolar.settings import localsettings from openmolar.dbtools import schema_version from openmolar.qt4gui.dialogs.base_dialogs import BaseDialog from openmolar.backports.advisor import Advisor import openmolar.schema_upgrades # used with importlib LOGGER = logging.getLogger("openmolar") UPGRADES_AVAILABLE = ( ("1.1", ".schema1_0to1_1"), ("1.2", ".schema1_1to1_2"), ("1.3", ".schema1_2to1_3"), ("1.4", ".schema1_3to1_4"), ("1.5", ".schema1_4to1_5"), ("1.6", ".schema1_5to1_6"), ("1.7", ".schema1_6to1_7"), ("1.8", ".schema1_7to1_8"), ("1.9", ".schema1_8to1_9"), ("2.0", ".schema1_9to2_0"), ("2.1", ".schema2_0to2_1"), ("2.2", ".schema2_1to2_2"), ("2.3", ".schema2_2to2_3"), ("2.4", ".schema2_3to2_4"), ("2.5", ".schema2_4to2_5"), ("2.6", ".schema2_5to2_6"), ("2.7", ".schema2_6to2_7"), ("2.8", ".schema2_7to2_8"), ("2.9", ".schema2_8to2_9"), ("3.0", ".schema2_9to3_0"), ("3.1", ".schema3_0to3_1"), ("3.2", ".schema3_1to3_2"), ("3.3", ".schema3_2to3_3"), ("3.4", ".schema3_3to3_4"), ("3.5", ".schema3_4to3_5"), ("3.6", ".schema3_5to3_6"), ("3.7", ".schema3_6to3_7"), ) MESSAGE = '''

    %s

    %s
    %s {OLD}
    %s {NEW}

    %s
    %s''' % ( _("Update required"), _("Your Openmolar database schema is out of date " "for this version of the client."), ("Your database is at version"), ("The required version is"), _("Would you like to Upgrade Now?"), _("WARNING - PLEASE ENSURE ALL OTHER STATIONS ARE LOGGED OFF") ) ABORT_MESSAGE = _('Sorry, you cannot run this version of the ' 'openmolar client without updating your database schema.') FAILURE_MESSAGE = "

    %s

    %s

    %s

    " % ( _("Sorry, we seem unable to update your schema at this point, " "Perhaps you have grabbed a development version of the program?"), ("If so, please revert to a release version."), _("If this is not the case, something odd has happened, " "please let the developers of openmolar know ASAP.") ) class UserQuit(Exception): pass class SchemaUpdater(BaseDialog, Advisor): def __init__(self, parent=None): Advisor.__init__(self, parent) BaseDialog.__init__(self, parent, remove_stretch=True) self.setWindowTitle("openMolar") self.header_label = QtWidgets.QLabel(_("Updating Database")) self.header_label.setStyleSheet("font-weight:bold;") self.label = QtWidgets.QLabel("") self.pb = QtWidgets.QProgressBar() self.insertWidget(self.header_label) self.insertWidget(self.label) self.insertWidget(self.pb) self.pb.hide() self._current_version = None self.apply_but.setText(_("Continue")) self.dbu = None QtCore.QTimer.singleShot(100, self.confirm_update) @property def current_version(self): if self._current_version is None: self._current_version = schema_version.getVersion() return self._current_version def confirm_update(self): message = MESSAGE.replace("{OLD}", self.current_version) message = message.replace("{NEW}", localsettings.CLIENT_SCHEMA_VERSION) if QtWidgets.QMessageBox.question( self, _("Schema Update Required"), message, QtWidgets.QMessageBox.No | QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) == QtWidgets.QMessageBox.Yes: self.apply_updates() else: self.hide_brief_message() self.label.setText(_("Operation Cancelled.")) self.completed(ABORT_MESSAGE) time.sleep(2) self.reject() def sizeHint(self): return QtCore.QSize(700, 300) def resizeEvent(self, event): ''' this function is overwritten so that the advisor popup can be put in the correct place ''' QtWidgets.QDialog.resizeEvent(self, event) widg = self.header_label brief_pos_x = widg.pos().x() + widg.width() brief_pos_y = widg.pos().y() brief_pos = QtCore.QPoint(brief_pos_x, brief_pos_y) self.setBriefMessagePosition(brief_pos, True) def reject(self): if self.dbu is not None: self.dbu.force_stop() BaseDialog.reject(self) sys.exit("user rejected") def updateProgress(self, arg, message): LOGGER.debug("%s %s", arg, message) self.label.setText(message) self.pb.setValue(arg) QtWidgets.QApplication.instance().processEvents() def apply_update(self): QtWidgets.QApplication.instance().processEvents() header_message = "%s %s %s %s" % ( _("Converting Database Schema from version"), self.current_version, _("to"), self.next_version) self.header_label.setText(header_message) self.pb.show() self.updateProgress( 1, "%s %s" % (_("upgrading to schema version"), self.next_version)) self.dbu.progress_signal.connect(self.updateProgress) self.dbu.completed_signal.connect(self.completed) QtWidgets.QApplication.instance().processEvents() try: if self.dbu.run(): localsettings.DB_SCHEMA_VERSION = self.next_version self._current_version = None return True else: self.completed("%s %s %s" % (_('Conversion to'), self.next_version, _('failed'))) except UserQuit: LOGGER.warning("user quit the database upgrade") self.completed(_("Schema Upgrade Halted")) except Exception: LOGGER.exception("unexpected exception") # fatal error! self.completed( _('Unexpected Error updating the schema ' 'please file a bug at http:www.openmolar.com') ) time.sleep(2) def completed(self, message): ''' called by DatabaseUpdaterThread when completed ''' QtWidgets.QApplication.instance().processEvents() self.advise(message) time.sleep(2) self.pb.hide() self.label.setText( "%s
    %s" % (message, _("Openmolar can not run"))) def success(self): message = _("All updates successully applied!") self.advise(message) self.label.setText("%s
    %s" % ( message, _("continuing to openmolar"))) self.enableApply() self.cancel_but.setText(_("Quit")) QtCore.QTimer.singleShot(5000, self.accept) def failure(self, message=None): if message is None: message = FAILURE_MESSAGE self.hide_brief_message() self.label.setText(message) def apply_updates(self): ''' applies updates until schema is current ''' for version, module in UPGRADES_AVAILABLE: self.next_version = version if self.current_version < self.next_version: upmod = importlib.import_module(module, "openmolar.schema_upgrades") self.dbu = upmod.DatabaseUpdater(self.pb) if not self.apply_update(): break self.dbu = None if schema_version.getVersion() == localsettings.CLIENT_SCHEMA_VERSION: self.success() else: self.failure() if __name__ == "__main__": # - put "openmolar" on the pyth path and go.... LOGGER.setLevel(logging.DEBUG) LOGGER.debug("starting schema_updater") import os def determine_path(): """Borrowed from wxglade.py""" try: root = __file__ if os.path.islink(root): root = os.path.realpath(root) retarg = os.path.dirname(os.path.abspath(root)) return retarg except: print("I'm sorry, but something is wrong.") print("There is no __file__ variable. Please contact the author.") sys.exit() wkdir = determine_path() sys.path.append(os.path.dirname(wkdir)) app = QtWidgets.QApplication(sys.argv) schema_updater = SchemaUpdater() print(schema_updater.exec_()) openmolar-1.0.15-gd81f9e5/src/openmolar/resources/0000755000175000017500000000000013024000134021504 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/resources/feescales/0000755000175000017500000000000013024000134023436 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/resources/feescales/example_feescale.xml0000644000175000017500000001646412243640771027500 0ustar neilneil00000000000000 0.1 test_feescale Example Fee Scale P
    Diagnosis
    Preventive Care
    Periodontal Treatment
    Conservative Treatment
    Endodontic Treatment
    Crowns and Veneers
    Bridgework
    Extractions and Surgical Treatment
    Prostheses
    Orthodontic Treatment
    Other Forms of Treatment
    2013 8 1
    1
    CE clinical examination^ clinical exam 2200 2200
    1
    ECE extensive clinical examination^ extensive clinical exam 4500 4500
    1
    FCA full case assessment^ full case assessment^ 6000 6000
    1
    S small xray* small xrays 1 film 900 900 small xrays 2 films 1500 1500 small xrays 3 films 2000 2000 small xrays maximum 2500 2500
    4
    u[lr][de4-8][MODBP]*$|l[lr][de4-8][MODBL]*$|u[lr][a-c1-3][MIDBP]*$|l[lr][a-c1-3][MIDBL]*$ filling* filling 4500 4500
    3
    SP scale and polish^ scale & polish 3300 3300 please add scale and polish to a treatment plan conventionally
    3
    SP+ extended scale and polish^ scale & polish > 1 visit 4500 4500
    5
    [ul][lr][1-3]RT$ anterior root filling* root filling 1-3 19500 19500
    5
    [ul][lr][45]RT$ premolar root filling* root filling 4-5 19500 19500
    5
    [ul][lr][6-8]RT$ molar root filling* root filling 6-8 28000 19500
    6
    [ul][lr][1-8]CR other crown* unspecified crown 35000 0
    7
    [ul][lr][1-8]BR bridge unit* unspecified bridge unit 35000 0
    8
    u[lr][a-e1-8]EX extraction* extraction, 1 tooth 5500 5500 extraction, 2 teeth 6500 5500 extraction, 3-4 teeth 8000 5500 extraction, 5-9 teeth 9000 5500 extraction, 10-18 teeth 12000 5500 extraction, > 18 teeth 15000 5500
    SP 1 visit scale and polish fee removed from estimate. 2 visit scale and polish fee added instead. maximum fee already claimed for this treatment. Add Privately, or start a new course. 2 visit scale and polish fee removed from estimate, replaced by 1 visit fee.
    openmolar-1.0.15-gd81f9e5/src/openmolar/resources/feescales/feescale_schema.xsd0000644000175000017500000002072512321230102027252 0ustar neilneil00000000000000 openmolar-1.0.15-gd81f9e5/src/openmolar/resources/gp17/0000755000175000017500000000000013024000134022262 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/resources/gp17/back.jpg0000644000175000017500000236655611632461105023727 0ustar neilneil00000000000000ÿØÿàJFIFHHÿÛCÿÛCÿÀEø"ÿÄ ÿÄM!"1#2AQ $3Ba%4RqC5Db‘&r¡±'(SÁETÑ)68’²ðñÿÄÿÄG !1AQ"aq2‘¡#B±ðÁÑ3Rbáñ$4CSr‚Dc’%Tƒ²5E¢ÂÿÚ ?úoñŸÑ§Ó½ç?=ù×̧¯/mÞEóîKÌ.ÊçF·o5ã mì>¤X|¾ZÕ j™œm¬œY*Uk´rXŒ-{³<®}-yŸ\ñ™>›(ý`}!'€<µ/g’¬úÖzדðö<Í&VâJvµòÅlÿѳëÌÑ.²5X%¯ Ë3G2ÆNÿFÿM›—|±í>×s¹ü÷Œ4<¾W+fl´·²Y\†¹Žµrý·A’Ô–]ä–áraŠÀ„«s4ØúúP¤ Ùðn¯^iYäöeyDŸ"XÄ—>à4 @JìY'ü_]Ý?þæµ4ô§rÐë‰2§¨JQ˜)*=XQ»ì>ÜÙü_GNz‘“¯&3 õiÁJˆ¥ÊÂ‹Ž çÝ«} ìö|I°ø2ÿÔ/Ðt½âµ"lþñSøãË[‘¥fdÉf)M¹Yò~^¬ÙÜšWÆÁÊä0Ö¢¡jlÍÓ\Én( YµôžTÁøsëS@½ãŸ ìþ=ò\>ú›:ïžñ{n÷¨W±…Îà|³fþÁ†;GvýM«Ð†Ž*v{™Æcs#•Ž¢Rôç?D?IR Y<¨º«´„‘“öËu0¼ïÍàñÂKk°$ïî•°>‚¡¿¤¹cP|©ÌˆÊC2äHˆÄ 27K¤"ªž¶x>ß²C@L‡£ÿì¿5Do—ÅFþf¨Äñ}90Ø–»Øp_Žrÿ™uK¥ =1“cÕ‡+E®Æ+ˆ&§ü3S7Œ³ø©ß£{YÝ73åm‹%ãMËÆChúqÄOäìÃåÓÞ>ñ‘òÕ[˜­Z…– Ç!šg¹yìäZŸqö‰¶O éžNú4Ï}+ù7Î?OÚæO=©äµé6ŸPÀhº³dÜ{¸;ú¿r»®uéRÅN±X½ŠŸc1äåK$¨³uèké-z¬^Ôdg1à F™îÞäj»Ù¤BOµî"!¤!Ï£} },$ÿnþÓĆ«5\œlÐÉ$o, =®D?Â,ÇtóìÏSý?«tÿøg Ÿ*‡Kzš¹ØboûW±ÂÏã¼¾£F¼Ø¢&–˜‰HæÒ½ëb¸Oé#hÛ$òýå®ÿÎ}ƒÅ¾?ðæ‘ñÞ«‰Æø¶¾ãœ’dãÅù?FÛü•³Zò.+È«»àêeuØ+c¥z¸‹­,qÛ1Ÿøt`çÔ±Wêè»]ÜøSjŸRw¼y‰ñEy¾”qɪø«}ñ”šÃv|Ï١٤ÞŲf.l0T¿gVŸô1ÇoÔäŸAßL$s§m_ÙB'‘’5B¥dAoƒ ª9e'þ–f$=ÿÀ7éb8•ÿøzúUÁg<…«ùOÄí^Ô°Þ1ñ楎۠±_f?Oä­‚kÙ,ZËîf&ƒeÆEœ˜•¤VzßOšdÌ%”'³G bãdŒ}}ÑÔ•‘Çei+7åǬ?зÒ϶Z_§­)Ew•&vÄÞXÒ6C°Þ‰¬†Es$}Aãí¬ûV¥"äØÿðÏ7©ÓS”ôÇ ¹j–W‹;Ñ}ÿºÇã|¾Ÿå9€”ºÚ†ŸjÍ[E]íx¿*o¾Û¾¡êxëOú úïúvØ|YãÝæ†ô˜k|¼æo`0U1š¥9wüŸžü…k>/¬êfð4ñ¹6’ÊÒáXžyšÑF¹áü¶rð§×'Ž(íž*ßü´øF_*œGp˜ÝGË4ëÌßyAêù°n£`ÎU‹f­ºc³8<õ;þü6á¾¶^EY‹èkéM¡u‹éëEz°Ê}ÙWrh” bÆyE°¡Š¶úÃ5pÊyô<B_JµãYéËJJ’¦ŽÃb®¼¨n±2ós¤ª;2*óÄõÿ&>êcÿÂüÓ—W””„ |Í^¯I-,¬mœpŽhd#®ÜM=.•in"ˆçrš3¿È}xÃÉ;/†6©_¬}H.÷s>PÃï±¼g|ËŒ5qu|a†·äœÆ3÷‹'f·¦à1Õs¦«¤ST±Ž¦g™5Ÿ౟F>Jú@Ý>´ük½ÕÙôMïÅ~4òžfmz-OñÞÍŽ»ŒÔð{•%ò«ä ž‰Ž±>Ýú¬™º5"®iã*Ât} ý+Àåø;è0:ÆÀÆZcHü¹ï÷a˜@Ç„°x{j GŽõ£}ý%ûNÉôñã™kÃalHßÒçhã÷Ùc2DÆÙJæFˆ¿³#×”ó"“þç"2ާ)êõ2ÕlbÉ_m÷áhK£ÂAŠú†ÀhË“9½†VÅÿ_m¾8òvŸú½ñkl{ŸüI¨i;Æ>¾ ¦KÇyïè”ôlŽÂÕO“dµ°`·œugLÞ­W,xùÚŒ¹»’¼cY_ /æ#Ý6õ‡ã,'”äñçÓ¿áß-kµ5zW‚w¯¦ÍC¬SßpïgÉWdÃo‰63úNj¸¹°ö—»ŸŽ¼w ÊO¢¥h¤3MôçãØ#ÉksamWŽgf=b^öKGî+r¨È%ã·ñ2ŸJý ý,7Þû_Nº Ê’©ÀOó#FÈ‚u[`•’Âü¬ Dðv%ˆGÿ†9 /S”×-_lÛ‹¹w¤h±àÿÒÈG™Çn˜5ùZsù}6ã£Zï˜íÀòߌÁ,G¶w­a¹dŸÖMx#‚OÇøàÿò^¹…ÿÀ£éamƒ'ÓÇŽ–TXd &@[¯ ²0k<{ƒŽ‚?î´”G>„EŸJ…B§_F^h¢œDÝÌ <ï7ÜóFKM4àŸº¯ÿLƒÜGõð~À×僦R%;g¿®üfþ)Ê_ü>`nö†.¸1ôÏ2ÿ>E-7–üb!½Æß5r ·Èf?Ôº•sÿÔü8ÖdóW†#ù“Ëž/OÇŸÏ|ÕÐ~TüåPG‚§€?@ó8}ý*HΣéûÇ6QÈ÷¿øŠàÂÓžX%Ï™G·0ã×¥ú.úZœÄÒ}<øÖd•½’[)îõÈtRM¢U¡dW Gq`5P:0>™øÄþ7(H®ú”ß¿±íÄþ%Êü>b¶1 pW{ÝûöÇ-ÿþ<ƒæ$høö® ÊŸ“FÄä¿&óÇ”ÈóëY<ßá5oËÌ~.ƒ2yVCÊðJÿôG’¿ óýÃàò óë™ðýý+2ÍÇÓïÞ_vY~0 ¢±nö,EÅbšR8žx +íÇ"Ëôgô«ÔÝJ(ô€óÃ_;”ËBüÊí¶ÑÜpO‰rx—Êæ*ñˆ_n¬‹ƒl7wã='ÿž~Bù‹ÅQð |…«òǯnO9"[ƒù~DþïëSç€Ý¼ÑâIìÁ¼«O䤌§RUØò@Qùp@üO®lÿð1úSû2}Rú¾_1Ԧъ]Dûc{¬ÖÜt‹þ~x-ó_ŠT9oùªebüŽM€ xUý“þúÖo?øõÍ^)2u ƒþaêÑ÷‰à°N ·`A<+¼Ÿ…ã›Oôoôª©,MôóâÞ¢ªÍ¯*¸5¿ÀE°Xp8[@ŽÑ²@G>µo£¯¥ YGÓ¯ŒaV7VÖÒy—øýÆ”Æ&å¿V+W•ŠŠð<—ôcð{ŸÊnfõ(ÛÏ¿íMgƒüW–(–—3’7ˆ]!ÿQöÜÆ3\tˆyÿÀÁH5øŽ2¤s×ÈZ£uàrùÃÏ'·-ÿˆàEú‚ð37 æÏ¹$/ùV䳕9?ü¸^%¾c·®l'ÑÿÓaú|ñlµ^h#.5ôš1îUŠ3-˜È%÷b숥€ôv/¤¥ªÎÒAàOCÜ{S×"Ùe<÷°JÎÖ$Ä¢f÷“Mü[uù5Çåu/ Ñ‹·°ûw¾ ñ^T Òæ d 1½KþÙúqѧú†ð,nù¿ÄÈ «oú·!ûò?©ö%H  q×üôŸQ~|ßâWïð8ò±QÀ<¹B®x ó·äŽçdI?Kî;xÆ*¬ÈåF8å¥ ¡äi}ÈÃKÄ•Ø/¸ÖŠ@"n}ßIŸL1ty~Ÿ¼\«üÑ"@Œm¸ö HZI8IÉJ2¯¶ Wô§ÀyÞú¼·šþcy1u‹ÿF¯ˆü[–tõï]w?1õÙ¿ª×BŸê3éõ^Ïœ¼HÏ(þ1ÿ0õŸËõÀ_þ) ðH  [àZŸ¨ß§’~|çáðC >CÖþA2‘Ôÿy#Aàüzç”ILÁžQà{èÒMÿ§²»@T,ŸÉÊE “W_̰xX»úÀúHú_NDOþ5ê‘CÙ›’ëF‹gY:ÈbB±ØxÇY#HšÌz?ÀyÞúÜ·z¯™Ú»Pý|ßß„þ+ÊŽtõǾ4òcw«¶Aýk¿CÓê7éí•ó§‰doÄ»þµ"£þ•z&Hn` /â>PÌ¿R?O=•¼Há•Ty[ftíÀ•oŽc#Žxö¤õ@"úYúfˆ/Ûx+ưI$Ĩ]bbò¡!ž"åd?G³ÄC¿ €ÒçÓT ¼~ ñj£$JÒ¦>ßS QÇ'n\(v~³j +D}à\öί-g¶¦pwíô¼b·¾!ñNUc?—®^wÓÙ »ß±ïÅùÿá%ôîOsçOb~uæ—û”¿á|žÜòO/Ô¯Ó²uïçoaø¯ú÷]ì÷P­ß"\€ 'ò=yoߪ>–~œ‚¥ùãY”0^§[­/¢°W+•}ÎI$ijrßü>–iü•ñº<²4’vÖanÏ »‚{8öÛ¬¨¼Éxñf0’#ð>sÍå«ÿ汜`~›»äâ?åd‡Ë×)?äÞËjûmÿšâù7Ô§Ó³°Vó·‰ùSË Þõ°bà0å™n+óÏFoÚò?:©Ÿ§(Ê«yãÄHXò ïúáíóÀ$µï“ñ¨óÿ³ñD‡ÓOÓ¹<7…üz¬LjõÚÆR+·hD²{ÉVhåùjŸc–°;'Ó?ÓÛCáŸHUš>šÕWýÃ<ÀDOýÄWåë,£¼¡ŠNª@ç*þw-}±©Y®ÉïÄþ)˺Zêcú ÙUŸ¯ðª—¨}O}81v>xñ!öû+ÞuÙ ðWñ¼ü˜‚Ü) 8=Èà!Ùú˜únµ$¯/Ÿ|KDá+Çþ½×*‡–fÿª'–ã’­ß¡ä~þ6‹éÃéò?оñäK*ª´i®RÇVv VËÔû³Í:Ù “4•x`ã_éÓÀr9+áHËÝÆ©H0 BÊQXp‚bªV´‡¼†–N¨ÇÓÇà|ᶯ/y3óÝÁ‘Çý¸?ÅyG 5«úEùÅIº¬øýx·çêké¨_¨/WŠD„oºú€®Tû²‘wðSð±•ùsÁbyëèåoª¯¦jé4õáã²ö½Êð€•ÿãࣞG<‡~œ}Sçúyð:Ⱦ߆|j‚8ÚWyµª ܤb¹f“Ûê#0Êa¸O%Y¢jŠËÙ”Éú~ðCµ…ÿ“~9_wáRM_æI FˆÝPuö”·1ªÎI?¡ð^ußW– ?üÌd«ÇìgÁß…þ%Êèæ(—ýUÚübß· }Qý1Á ™þ¡<:–žiÐïø6IÀ¸ûÎBóÔr(äŽ@æ«o¦>‘›PÞ‹Ù/í“¿`³¢ðJ¨¶z«b{8ì|Ь~Ÿ|ÊHð÷K¬ bƒqøüĶ^EUU÷;r°HB´dúÌ>ðyQÓÄ^9`vfÕ±.‘Ž!@^"j^ÕäãíÖ#•ŒËÀSàÜæo[—kÓ©aûãž,àŸåú|Æ—§›­½_eúc‹?Õ¯ÒÝn&_¨Ï ÈΧþ¾ÀDœ·g#ÜÛá?&f^ÀÁ?#_êçénC#¿ÔW…È‘“¨o"àÊÈ‚–r?±—’»äú¬CÁ^ ´>"ñªåíÿØ–0Àw ífŠK îò¸ö…Õ eåI¾Ÿü=2»øŸÆ_mfÌ´ã‰5LI°-ÑžJ44I– é@ò 鿃ób¯,2@Æ­ÞqƒÈáÀ oIþ#Êîióæ´èØW)ßoÓÇUÙ>‹¥óWÔ/˜vªd úˆñ|5³è§pÖ᥌Äxäïι*ÙõÉ5‹6ó47‹KJZQÃGì~å&µ$Åa¯ÞÐ>—Dn|Mã¾TH_OÄ7Ĩ©9nµÉ0¿c µÀ÷¬;%ðPÞ²žðâ–OùQã¯y挳 We,(2È+˜â—§ ̵0Üd–õGÿ³¼Ä¦.§-éYb: ªIÛpi û-‡Æ´‚ˆkæ5“I@#Ë‹§Õí|WÏ;i?L¾aòÏ“<±®ÿÄKÅÞ.³æ_ëÞ"Þp•µ¯ yÚÕpXܦÇ‚Êoç/)’¯›¼$ÈSÆ4ñK$,‚Q]G©áO¦}Cq¯µxKþ':OŠ9ñ¿Ž¼m{—Ô~<Ïk#GÇ4bÇár³åüŸ‚ÌŒmëB3=‘®ãpÐ œ(Sq¢Ü/ù?â4ŸññwRZýºiØ~PBÏ5TŒ àFÐZÍíÂÔ°¯Ö "« |Mâud•|cã¦=&=ŸPÃ+ûR?“•«ÙRÃþSȸ“p"_lóêKÿ†uY:Ÿ3CªReÿÍ2–ÔLeí¾7½Ú?Ó"G£W§¤…&“é*‡u £6ngto¨ §é/ÍUü_¥õµ ø«ÌÞËMžñÇ™µ«CÉe0Ùlžsn«ŸÒ6ZÙ /iÕvúÑ$™Mbþ21×½½væ"Ýxçh"×~’²sk±ÿ½õ7®yB÷˜ñS6¶\¿SfÈãŸs_¥â˸û<£âÖÆ<•“ǘúh§?qý@OĆÍÿÊÏLFñfƒÀxÚRúv¤/FìÈk0ä,(±+M‘-Üžu—Æ-UxøÄ…£v£é'Ì–:¥Ú'QÖÄh¾íÐL‘«ê?ü7¯)_ÌÐÅ_üRñ\ž 7ßÊð§Æt¡Da¬Ówü·vØùé/òþ\·»UJ} gêãnùë»Sògr~Z›ÌQßv,ïŒèÛòtçBÌx½ˆ¡[¤éØ<bI°Tp•,>?!ä óÚ³fi#?HŸðëÃøó%ãº?]Xƒ-á¿ ø‡+ž“jÑïçrñù=ŽÏ¶Ù‘³iKYlXªx¼V<¹Ç=4•¤ˆ¼ÝøøËªI¼{Ý‚ßèü12Â@…AªR@ªxáj·_›AÌ~0ñ„~dzã„Óx’=? }°’{Aª^C«Þ¤Dótó ÁT€cÿÕ}|²ù­\ìªÞ_>|W |r'ôë}.Û¶³UYÅG~J«ÿ-×Á<+¥ýCø+Âunäüu—xññ•<µ£Æ÷±ù >nî:Æ1°ù‹×2Á=Á–­u$y'gGìèÑ>å‚ð¯'Ð6³þ.qg|›âì®Á‘Ó¼‡.“ô˜oâñ{(ãrxÕ‰äÐrUD*e\ŽcXÊæ!pMk0äÚ…ñ¿ŽÿåÇñÝ‚j˜$^Í#³I µAs‰$sÛŽ)?¹DsÀ¼eãhÜóã_À¿u2¬±³€¢¡h“‡Ž9²OùËÄ'ÑøoZUüÎ\:ctjô½96j¼&ûÐÇ4Ì|½U/ËS¨ eÊS·jÁ’£K9ï¥-ƒôÌžHúøÕ<…·ý/yƒ+åüVëuüCª\ßnßÅnØNcÖô OUÓ°8m{¹C†£6¥®bo݇]¡w+bæNþRÝ–]õúmÅùÇ}óVÿ¼gŠ?æVõ­ï;†—‡×þ™7MÛú௘¤Íù3Ä›¶ãˆ£”ÇC- Rá3ø‹5b³%ª2VÈGÈgïùsã>ˆòx÷Bo¸{2‰N¥„GæG"ǺV¡ Øþ4ȹå`°«ö£ÚbÞŒ¿Žñ÷^Ž´(‡ÉTMOñxTí eàM"nF«/(Üît XôžW‡]O n¬kökÒY£àý³¨èP”°ÝÀ_@ÿá­hŇÎÐ "•©’-‡UߨòÙÁþ7 Ê24õÖ1OS§G^T6É»JÐcµ¥‡ÿ‡®?À¾:ð¬]lât?6ã|ûgd›jÕìlnú6L–Õ}óC€ƒ_¡ŒØ²Ù;O×𘚴"Tƒµ#SÚÙù'ê·èÛÈÚ÷ã̧Ô狱Øï"ê»6©—¿Ù©œ…*;66ÖÝœb˪íjœw×kËØH½èdPÊYqøóǪ ÿ tYFŒ¢=[±¸$²DìÃã“»W°ß$»ÆB×Ö#ñï9OhêêgüWRÃ{jîœÌC½SÞw„ÿ#iãí*êØðæ¬c ÕÑ "„$Œh+4”w~ŸE~/¢±“¥¬£Ô[ŸKey¯Ð1ÄY¬f¾‚õl‡Ò-È~«´ì´ŸH:WÇš]<®Ã¯ÉÛÉjx}^ŵ#×˵Êô1u21G‰8ˆVÔìò@ЄU‡3><úgkÑâ?Œ7 S|ó6ý…Ïêòøƒ9nÏ9XÖfÚqñ›ïŒ7-vlMHuÈ(áä·…±~(/Ú&ãÚŠœÕíÊhÚ1¬š‘î±V@º¶›X 1¨9háP‘ð;ݬ©#qÓFŽ‹¡ª¤èÚC!#WÂ7SÕø(ÿhWÜI)9=$„ÉM»×šeÿÃ3zWWAÿG©uDL“Ý Á|üj€†¾û\»³%fßÕâ8Ùwï¤ }9çþœ|…õÕG~þ¿Œ’¦[Ê)¼yßž´y£–¯1Åé^?×<}bU+ciŠÚ\ &>´oŽÕ©§¹<–ñ§Ðß«ùäﯽŸÊ{†ÿã]{Ä<‘´çüqS9ãï`¶ FÁG^Ð0š¯ŒõýG¹ – ‚äìä5ü¥Œ¢Â­+›œÚ7tmFxÒ4Ô‘ã@ }_ò¡„‘FÌõCt^Èk¡ÄÀÁlþ#âÓ4×U/£i}úðªÚÖ%DIAe$TQ¼„H,ÿ|68D[ŸEÿá­Iô®¾’ÄŒi„ꊦÙR×z{ïćƴ¡u§¬Vú´ñùV”ºzs”Øvâ³O_é3e×pÚç“¿âK´yc¬ù?Æ~ZÖëìÑxO/âÙ²­F•tñ÷…õwž¯”Z[õq“´`¥YhZ¡1±$Âkº¿ü6´Ú_V8Gêk«à>¯îÁcwÀbsåÆivš®M,7ýÝfIhœ•Œµ¬Œµ2ï–©·?che’³ßèý2&Qþ‹ÔE™_ ÔG!æNbûN]O™ ýRûÌ8b=`éúiNŸ¨³ö9ˆ,¥8=‚¥BYd*±Ù?ß<]Z°åO"?ü5©M}nŸ—;ü©•›x^û}žøìšzÙ¥7‹x+s{æ¼nuÿáÙ¾æt\Î_êÍêËãϧ³éý¸&[zžÓn•‹›Œ®7\‡/CoÆ\Ç@ô.ã/TÆÃ/¸–1sG#!/âÉ~†<»í^JÛ>¸ó^kònÁái¾¨î>A›IÄä5oÏÅçm`(Rñ—Œ´\V7nþ³¸nXý“j‘q‘EF½KyX¯Xص 5\˜´ýU20ë¬âC(Aò£íiˆ?ʇ˜ÌIÁ˜G±ª!««r^¨ kX€ˆ®ÕZ)~Ì9h¥BÑ;€nFÓSuøÇÿ†u ÌhÛizZdC>­Êú™/{‡Æôé=jýQº±ÃX¶Ü;ÕàáÀ?PŸCO^ñï…u/©k;®øÛ˜,Wc´eÍÞª×m[K6Åàq´&ç³$hô±õª( ß³4Ë[ë«é K37ÔŽÒI"Â=—ÊÝHälƒŽþåEv<ȨÍû^=D‡]Ôj»‰u-X•², 8|{jÓHzÕdhT­ÃÄðôjýœ7«#ÿÃÚäXþ+J1{GE/ª¬üÛ6‹ûo¿Д‰<¾«,o©ÕTôvûmãCZ‡ÔЋôíOéŸçí¶-¤å<_3. bmå0™8î}͘²Õ´Z¸uÌ@·¦ömů-x ÆZ“•%¤}fýxŸÇú?‹µo-\:扪b5ïtÝÒÎBÞ?FÐÚ½b¾­^ ¹kQ »’žõVÕɧ´µãYz+‚(±…¤)ŠÄ³oª >8øÿ‚ÕÁyB|×Qñ4?Ç£F:'ªEŠÃBÑ„(Gû}ÂŽUqÓ†¬Çä¸5?ÿÙíx±§é‰ù.´Ìé6¶«µðÏÅ´3ÿ§Õ—T™?Î •gÿ—{¸ö|ñUüÿõ}ôåšòïÓOŸ¼oäFÎmþÛv kn×N—¼ÑŸg📱/¬ïu*[“ R™Öx7mn¦BT¡’Ìa«T–h’Oudý›ê·è;ióO‰¼ù˜ò¾ñ&éáœ/’5í)qš.éµo¿Á†§³MœÇM¦ÙÈݳV<^=ñsSÊcR«Ï?¿ ÀÊ#•Ìu:¼ŸÒqE˜…ˆe!îtbd÷BWå“ÛØ_þ1p'ô…‚¬£ÿ‰Ø¹ !Úd3ËÛíÈf`;Y½·$@…>“ÿÙÍ_Róõ$šÑÃ(‘¦‰ãµþößøÎ˜D9yâ)f©tÿJôc+¶kz â‹ygcÿ‡”w½çmÈùãêOJÂyPÒO7x·Æy/Wñw›DN÷‚M&öNÊQ C;.—›Õlf±Á ¹3‡–FšpßSÿðíÄTó&(gö¼ÎÎ98.ù “ñFùo’Æ®ƒƒñ¦+TÆT«©ÒŽž©ŒÑµL>‰ü”à‡ßû¦±e¥6CM¤«ãY(—,‡ˆÀf€¬V‚|Cc°…bæ&&CÇ­ã\xYÔ),Ñ…ETG,"‰°ØWS%>Ÿßr&ëSéOþK“ÌÇ©3Z¹M\¼-˜Â㺯Æaé D ζqH— ä*ïb»qC¼S¹ÃGÄ9l®Uü£õå¹ìhëÔ¼á‡ò’q~?ñ6ÃÝr¾5Ñèɨc££¿-,¼³æögÇC^œÙãZ¼qªw‹·?øqxnñö×OËÿX~EÅx~Õ̧„|eä¸ü¿½x×Ä7-cnbëXÑp—58-ÿTÆ`²7uÝo!·f¶kX|%ûjÙUs"ß÷’´`éÔ-î?¶ÿÓiÃ/º¼-ü$,Äs“°é:sD¹çЕBÊdOµÇ4~ÜoîEN¬hŒ ‚(–#fö›²$¦C}Ó/`ÿû7"'þ£M"ˆü‹\ƛ봺¡k¸³øÜ2::­™‘­ä68–—Åvúú¯ðŽCjÛjm9¬Þ'Ï¿T^_Él²à¯hÛv3J¸Y±š6“Á“ÃUÆd/b05¤½uêÛ’¼r\‚¢){uë•ìη ?9?ìASÿßÿn»ªàq×€XòI$pÄò~8ÿ þÏøõÍÕå¥ÊêÏ––§Ì4ȬˆV^¬—/ïõãd9ˆó:pÖŒ:XEI)‘U 4{àÍn+~ù?Ôê§à’œòñùez¼¿ äù$ñÇÈ?åÓž‡°ø?ãž>GÇÀýù Éøçõꚤ€Îþ0v÷Á^ŽÞ}±žòŽ…·ãŸÅàóÙL‘Žxu$‘úäþÀz÷¬ä‡ì“ÁTUoÑ<òè¼?®?j?\€}{Õz”Èñ«!¶<ÿÞ©+—OVlºþÑg½þ•Ǩσþ¸[x92Pæ¡ú^Õ—6Z\¢M¡‡Œ68Îä,"ÏÕ¶lLœÍ{ùã=þ׋>€´?$c0Tsù éãNÎÕÁåîX‡“›¨aåÌúqO4Lb(õe«ÂJ2#ØïãéÓ¿}Zx¯Å8ÿÉä¶Êa¯ù;A¥¾á*b5Œ¦Ã‰¹3[Õ±—5ü>A*H“eéßÛ±³bê:G–µR+vR$©ZÁÆZSÒÐÔŸ9>Vz\¦D†D 4u-‚67v]öxÐÖÕŽ¦¬N\æ4çÌëYD¦±éh2wÔÛçŠižò¿ÕÎ×oAßfò<º±ß[x?ÜÐtB3’øö¶gÉ•æÛ|‰·d*ä²Ù yëÁ¯ëQ‚}oaÇI…Îçìävh–ÿ§oÕw•þ£4O©ïäuïyfï…t™-¶h˜½gaÕ<‡´dµŠæW#ºãNç€Úó54•©R 67ô,*=‰ò+>a(¹øx‹œÚ-EK=±xï®é¯ÈéÞ<Ýó[Æ×µl¾DòƇ0Çakâ¿Ó™})Š2—qÙìeÉò4¤Ym\Š,m¼=‹.¯ýpiÛßšr^'Èk{3›ÆNñ>女ϭl9 Þ›6×K¼l7¨ÇˆÒwëpÔÈ¥-<Ø6shÚ¹#s)yYÁÑ>+7S[[Mù‡R²€GÔ²ôéÍ)E›Óÿˆ„iò#¥§3§CRq—¤ï(Å X÷Lçˆ_À^uóÿ˜¾ž>¯O•¯=¬þ‘†Ùéx÷jÃèÕtÌÞk ™ñô{:a‹×0¶&wÇäíÉ¢˜lDÙªsÅäó¹›ñM~Å4Û¼yõ…©xŸFñ6ŠòLóóâï+ÐÒügäœç•v½ á¯G¹ùeÈožI“ÇxÍo`òo.hwDéFMZö/v»§N˜ßúáÕp×—tm£Å¾U©wÇ~[³â>ž¡¡evŒ÷•ïctÚ;ÆÉ{_×ñ5 •m;^½ggÙ)W_š×>Õ¨»-ùêããÜwÒæÙ¥jy?*hÿR[­½r9tÜ>o;¹Á«ã-ãÈléÚ¦&œ“äó/’Ó†2Þ Õká")%²-Ô­IèòúÚ'_ÄÖ|®—ËÔœcë©j°e!L=DVè w®&–¯1 ã„c­9ji‰†´Æ0‹µŒz¶¥Çžfî:MýÒçš|³ƒ¡æ|nÁ?ÓO<­†Ç ËÉ”èã<Ç·l4qþG«À&U«=õ·N÷Øà"­5 4¸’ )ô“Màþºo^¹Ÿ‡Ê³xëV]´ü$ʶd­ôÿ¹O¯ÿ§%‡h_ÿJªÎS N ÈäÖ ˜g6´äƒ«ºO×Óîùäý7ÅZÖg`»—ßjCcZÎ&‘‘U±³ˆ‡=&Ÿca–¢P¯²ÃŠlÝ×ìº^Šà’ˆJõAõû¨b·ÏEÞ|UäÜ[ æ­«ÄšI×ôŒ¶Ò7UÑ0z†Ç´l3Z©JA8 .Ø3y¼e¥OS§vÕ‡h‡ª§ÊòrŽŽ¡ñêœe(ÆI©*‚¸˜FT”·}͸¶:üÐÎ'"Øi Ë1;Xž£ÒÞÕöâ€y7BóvÓŠú¾§äÛþVËùÁ~3ðÞÅûN%µa#Þç¬`ÅźUÆj÷"ÇæóùÝXQ}Ò¯³aFgï²ÆšN}HÙÝhø›ê?Åpà”7::î_éÿÐ396â÷œ>;v±O¸lÞ*òeÍh¾Gñö.îÍ{aòÖ›å¼&ÞC_Àe±52Õš¦6½ëdŸñ*úpµ9ú5|£}eÉE $*Ù£ÎdµËXdØ©oXê2Ò¾‹”Áȹ\6m‰…ù5ÈWAâ-ãœl[=íƒÇ~ZÇàè瞃oãÌöÁ“ò»þ¾Øö 4êÔ{ØÜn \ÿâ¦t@CWŽlc$lrQ)&—ÃÎÿyc”YÈŒd¯RÉ®ÐÁ¿š¼ãN®F]ÁQ J1Š‚-XÉé/%½È딣ÏÞbÌ5ÿ4Rò./Á^5ŸéŒøº_"ý¶CË•rê²×­_[#Rrà¢æ¥Üf‡_׫NÅ£Dõ OCÌñmÿU¹m£‹ê)ñ[EÍ)1ßPÃr‹h›IñìÛ4ºÑ´ÃôéSŽ<€ºœô«9uÍÇFz¢µ=i£XŸ­}Kyò·‰4/as»^§ä-Ú}C5勺Îr–… ÃL£¸G‡Ô6?´þ•ŸÛªÔ¿ {¶Ö!› ‹S?t «ÿ_ºÆ‹³ù›^ò–—¸bqþ7Ú³Xm[dÒu‹nÄl¸ígWÆí9Ì|¹ªô¾Úm狹c9>»Œ–i­ê¸û÷Wƒ”+kòüž¦¬µ¿‰0„õä\c8éÆR:¯¬KJ‰-;U烣©ÌÃLÉuHÑÓXõE•"c§1ÊýVXqMçÍi\ž%ÊøEþ¨-øÛ^ó·…öÏ5å¶8<“”Ðᵩ`Âçèä7³ž¯u¥“É‹«6¸×ÙX$?>¥,ùƒËoÕ'„<Ýáí7ÊÛO€|*tÔÛmÐÂ[Âêùª~gØrz†×&èìMˆÛó™_[ÅÍ{.3’ƒ&£°d¢€´s=°ò—Ö>Súyóž¼m«dü›_Ä{UM5°pP½¥±fNw‡Ìä±×ê×qk ‚| k™¸h~ãíñÒ³O7¡×úú’´^^Ãì¾?Ìh[ŽŸå½¿FÒ,íº~ó_FÏàu|Žê]£›µKù o‘ªÇ¸Þ±°êT ™µÛu*V¾Ñ@ö:4ôôtÏ“üHŽž§G1—¤ƒÓ} ^ªèiÆ@¸C…Ó–¼ŸE“½“0=¥Ç¦Ù~"4{Òo_ó'Ó¹Áy®Æ›¿ÚM§õQN´îKÉ;¦Ó¿orØñ¾5ÃyYɬ¸-g]Nõ$ÀìXLbZ¿B®Ì+3ŸFp~!ß2þ;Ñ$Û+iš†³¸göloÚŽû´çne2—iE‡Éëã4Y-3!BÄ–2øya‹19 ¸èeGGdøšEYÅŒ%EQÓ$—äªé; fGƒNw¥”¹“Ò=]6Ûª a“–W”+ƒ_TøŒ>cð o4Ãäy>ŸWGÞ?Õ/£Á»ûcÊ«©Õÿ—ööìfˆ_bÓ$$ޤ3+V›6Én×´¼°çæbŸÖf; ºgìá¼›X¾~›µ-ŸW0ç¢Úr˜ ‡ÌvàÄìâÌ òþò->dró" ln‰{îÅlîùz»¶Ó•ËMWþ]ZiñzË=Ø®U(µƒ{!àíƒÈùo§ýKEÕuLäd>¯jílÕoˆüg¬äsOÓ-'?³ÿÌ Ã;½ä6š70ùËz•º›&7[ÙþÀã+Ô¥~¦n[WoÈ\ÛÖ™ål†™7„¶ëzæµõ °øŠíìcÌm›> ã;ÛÔYmkµ–£ìFÅT”T­4´«`mK?y=¯R¯>¸ü5æ_!k>=Ô×yËWÜO»ÜÖr•ôÆÚrÞ=¡åˆ4{™ÑjVÏC¥dG0’‘9œe¼ŸO–ä5uHËŸw4¾Y”‰ƒmõuT–óiÚ®ž·9¥¦ÏðeSªL‘8Ä”AêÀ gkâ’n^Ëø#Èy-ðëÞNòîñ¦}$UÎav»Övl܇åYìCg_É[µ„ªòãÃÛ-‡ëïaÖü±å/ÞÀkÕrz÷aŠR¬í{þ#n×­iÍ#A¥³ù'%àߨŸ îúŒÕö,F¶ïg|M‰Õ0º6jÅdƒlÃÞ¯¼gò»tX·žö@a±ÒÑ庤Õ9¹‘ç5ôȲD4Ô=Eƒ»#ÐÆ[¡‘±áôÿQ¾[GRRéõ³ôF±iÒVaÊ. ¯þ>§œÎaµ=Ÿê—ÆPQ`§ñÍšðæ¯A½G˜Ö<ÑkÈowkÅIVV¿¬íóTk§îñý:†0Ã>5ëþr™‡é¿³Ãõ[±lžC×ß —³¹å†¿C{ñ÷œöï!N¿E©ý¯—ðû;Ââ«Àe«‘\î«fÄ×ÔdÍá~SîÙ¯}Tî›gÓŸ˜|Ÿ´d|wžß#5J¾Ç$™ Í$N®Xø?¬O(RÚ5<ç’2þÔ|3’Þoxƒ!Íìù¼”r™Lkûµ’`}O%YúV(bün·FÓÅÊ÷£‚HꞯòºO+ªóZ¯]jŒ´•F]+©"xIXvˆU5³æfs:g/§˜|¬O¥ƒZgKrnïÚì¼ô¿îäóüM€Ã°.̤$LË‘rDìù*ü¥5…øo^&–OuØ%†AQ¨~ ž=´<Äì±€#ØEö„Õí!âƒÐÿˆGŠrC[ã¿.äóÛ>áWRÓuÚ]ʹ­¿ú†½±ì˜,Þ¼,ªWµŠÊÓÕriÓ"ÿ¦­µ_ê"¬¯¡Óþ"~"׺υ—MÿV¦Ì5kÑá*äÏoLÉÊËOg­Œ•»T™U_3ša‹¾»¿Ä¾»¯éïäó{ãë½/Àóoÿ#S¿cê«ý¯ß‹æÒH3Iî2¸†ŒüFÐÏ"’Ϥ=fp’ß‘_ír¶dUK …=ȋ°B D …k9cüBFâdSa7!$ÉýkéØü®«€± ùSÊùš®GrÔmb±f6mK;µi)“¥9?a¥‡i.dbˆT ¶ñíÝf¹,íÏêÎÙ­Kè¼NÞ%Åï¿W^(×÷ìÖKÉØ}#§áoä|§yo#Œ¡GZ¯k,µlÙÎ߯câ3-$£zë!I˜+ñ.Ië蛨FØÂ2—çœb3%˜ã·geÎG™õCåõÜNº G©oí^Êû/CžYeŽF„D‰ì:ád%Óþï䌰¼¯øÉ4wR9ÜŠlãÐŽË1Nç‡rÌÈŠg7,…$‹¹ä°(¯]½¶¥2;žpxÇþ"ZãSJÂmúVÕ…ÜòSòk8»ÙíIÚæÏäõlRð¬}òX-£-‹1Q»<•«_©È¬9ê4ßñ¡°ãüIwCð®ùf¯6Ÿû˜í¯o ”¹âÏ%hûfÓÝ´Ú‘÷|…Ûí¨ÞƒºÑE-Z9¶é+RYø§!]_:®ðEd8)Àk.kÏø7iòdoR²½9Q>Ÿ½>8èØy׳0JdDyá•ч`ÈzK'ýŸºáNâú²2§¢K8öÜ™™•æ&"=ÁíD>¤Á½õ†vå㜨™l—ª‰b 8?®,^ýäOhÚŽ«œÕ&Ú·5Çløÿ#`Ú¦DjY,^ö%ˆ´Õ½=ìLæ1ò»d+¡†i#E#³7É?ZûOˆ¾¤v½GÈShúg„µÜ½ìevÙ°¹Èó[>©ÇšÈ캿’¡¬úŽ_{¯”Ž|,ž bZÆ Ui{'ñ>JF§[8:„>d-‰$¦½!žùÛ9àœ‡5):}$fEÔbþdÅ%VïåûoÇL¢žnë–U9ˆ3G2$h%PzòiNÄj_œéäÜ2zÝgšXç1ȼûœpÒ#€ÿ›Oˤá›åm´^Û\p,×ÄJú¢8O¯;b¯…‹áŸ6e÷=‚Ý5×tjš¢K»‰ÉhÙ¿"böH S“ &«¯e-‰æ”X[I‹É¤S„ŒÇ¹/ø’øm¥×öÌ-ŒÈñ’cÆÓtj×2²~K_¥”£ aoÕVv­%z,FÅ«öñ[/Wíâøz/ÎŒ±è/t­ðã{,2a¾<6¹ÑVŽÝ±³Øì×wt¼Ú™Úxÿ4CòÄÇÛîd®%YÙƒÄöRQøê.;Ü•=ëÿÑ-´¥Õeí\·R$NBu›€ƒZigÊE!±è8¥[Öö™¥Ë€Æï^.òž±²Ù›e—nÖò8@·tcRµãêùͺ뫽l¦½ÛÉúƒb Ä<÷'žÖIæ‰kâ®2§õC¦;^J¹C±~aÏø/+u—úÝÇZò~[B9Ø«£t­ŒØ)c`Ø^ä1aåÉ-8¥r}âšÌ„ÝFLÞjéQm;o›àþ˜¬::å[˽ä¡3õ;qz ifVXTÔKÉ·ôÝcÅŸM»7½«YÝö+í"ë¸|½SǾJ³ã-®ÎWfÎk5&¿†§«VåI ÃA—ÙhdªÊu¨íQ´a|/ç¯/ùèÂïö=oŒòDº¯rðÃØÅYÆlY%«øüB­ 1¬]…½zT·-Êy5B¦’Q‘üQô·áo íݿǚž_°ÐÕvÝ:«ù»·c—ºo?ód«4sÆ¡¥Èíñ6Z,ļN—|DÁ/¥Gé·Ãú—‹ö¿ aµK’xÃv›9>cKÊå/ÜÄ%}ŠÃØÉÐÄÅîÇk –ܯb­ sÃZ c°#ÔÑÑø²Ö×%'ORIF0Œ’=Ákd­ÞÃ&Ü>¦§&¥¡8ÔôçÔ’”Ø[×µÿ(Ž:wÚØSèçÊþRÞ ò6­æí—v½å(êV²úžááÿø¦mb ‹U¯ž ø˜´ î^¦ÅK!bg›>jZÖ QËZô Â!êø3ë3êfÛ~žçËyj]º¯—<§¾èÛoŽö?á´m;­ëç*`Íê~g¯„Ç&wd‰êEö˜œe»·Òš®’V‘ã=TðßÓß‹¼Ïcô n)vIb³²çvlÆOiÙóa^7Š,e:È;A0M0ö”·qJÞ Äë.Ð1ÚE£«øKÈ™o.xÏù¶¤Õ·\ذ¹¼M![’Â]²–¨È>ʽIZÂ1uõTù^~ZZ3SÓ%)¦£Õ)2@È®§¦ícÓàÛ‹#ÍrƦ´¨êÊ còâ:Q¡Ø¿é½Þ9Åá﫯©1áß%ýBo9ï*îŸxßÌ»}W5ôé¡jžÍ^ÔöœŽ·­EòîdmªìØé"¯”½TêÔiÅb­ÑuíVü&“/yÇê_Âù¯Ðßüí£ù¢×žþŸüä˜1t4}[X¿áí·]ñ­Ÿ"`²¸¶×êØ·–Ñïà ⤇bŠ_» êQ9íÛ_}ý9ø»#&_QÓ3ôã½§u\ŽÝÎi’b÷CiöZ_é[Öo’ûÙ™«˜]®¤òL¥Z%r‡ ý }4xËÈXï'éZ†w»béfpµ}Ý£'•©&­™ÆÚÇXÒÎ?)ï×—W†+R>„l•é°Z±ÊäŽxò?#ñ Ž_Ÿ+‡T½R£Ó+1MWôæ¸g›äYJ_)¤*&=+EFcR¶Ì»8â¯ùê§Í˜?ý#yµÓ«°ù_éxòæçs)¯kÖwv×>ŸcÞéeŒ1бŒÅ@›/l„Ô±•S”ž × –Ôr×Væ‘õõg’ðVÓ¿RÚ¼³šò_@Ñ,èô¼Áàoø³Ærì;ŽKããÖ ÂíÏ$lk±~m'±ãpmVIª¼Ê´f»ZÐ×Òþ_d£¬xÑ£Æm^oÇM†¹™Êe0xt‚Ì{¯¦ãoÙ—ý#†Ë™çŠ*•H–VJÓ<5½´!â>†>™uüKXÇ9;šÖK [_Ÿ_ÍmÛW:sE>2\}{÷0Ù eºÕ§¡šÇûRáíÅTdR9g“ø¤æI×§¤„ud¨BJ+nT]mÝüO$?*äL”§=Õ¶dwÅ ÏïÅ;ÈùãÏY}Ggp~{ò&±ä/¦l&7ȶ50ý?øßPó-íföº=È1Q_ÐsÖc=O#£ïz\œša«M‡ÎV–Ȇ&·ù<÷—´èr|Ä#/Ÿ¬ÊrДbüé±5caqA®3jó:Z¨iiÍ„šÓ…°\cF KamÅø9?‹ú—ú„©¡êv©ù'Êrm>dÞ¼cã.ÉæßøïÇúN‹{x­›Ìç7-æ»zÉß,ÁW .3̘ìnåìlÿc“’ìµÔÇž>¡~¤>ž²žUð†KË3ù/ƒÖüe¿éžY«¡iÔ·½w±î4u]›RÝun'ý/<ùA}r:¼ÿÑ žåºÑ$T¢‚Y„½CÙ|W n¾:$Úõ,~ÇÑPÇbiëy%šT©GC ös£ òX˜à­ö–©J’ÅQRÉ•¤î S†ú>úqÅjù­:·Œ+ÙÆìÛ fÚ.å.æ²ûÛÕnÁ‘×eÉì—'|•ú¸;Uà—CGRp†ºÇÛó4ËáüõF0æ¦ÔN­IkNñ™@…½dìõ.*±·ÃåêRŸ/K 4 ¯xÙ÷íKÆö4ÆÕö/(xÛ\ñ‡“¥½°aZþ^µýcX£†¥{VIM üøjre$R”«Ã¹–¥jSS™üÝlž»y|Œo^YÄySÌxWZ¡âýÇZe ü¸½Ÿå8uÜ-«9êyj¸ÑR\¶nJ‡ºÛ€ÆÍh¡ãý/ä¯Ë½mjy+y×õGkÚàiëd3Z†µ‰¶Ò;Wb¡»f:6Ö4’¥y¥­eÙÒ0Ö¼YãÝ#IËx÷VÖ¡Áé™v;¹]r·ß66Ôû„“’Y+<ÎÍýI¬XkÕ#elŒ.ö¢Tè=Xò<Û¥£¥ø©ÂzN¤™ÆR꘣§oP×nõúqSÍòðž¬Î\‘©òº`‡L( MŒçò˜ŠÃǼqõeç˵<3•o+ùo½ä¯§ï*yuÆyÄšF“¥áóºæ™ˉ»áݧ¯ãs;³$˜ËÒ¼’Es$p¯iâV ì÷ÑïÓ>áÔ°ùâ§§ j‘izÜ8™³Ûý-$YkéÖå¡r¼ù|0u1¸ëòX†E÷c‘ãü•©‡Ã~ UóLáXK[R=V .PŒ–¨W¸_¼ï)=¹wNn:8ɇ„¾³Ø ÞÇÑ_¬Ï9y.î7a;÷™µ»1Q™aYÑìKG¿U“äð†mxûGñ4þ:ÄOãå°»™¥J,¾–Àd,d°6…Y,;ãòv¬\©ZãX©BÛ‹cdš—=¢ëIæc«-M.˜\äF:žž™¶Œæ²q^§7Êê|°ÐtÍ=RR¨RŽìGmX»^ÀqÉŠZžkÈý}çü˂ǚ4?ª/øoÈžFñþ¹ŒÌ[Íi[Å»ùh²X-1‰±‹»°fæ>½8Ó 5<Îz›ÇËÂY]coú…ú¡Ö²þ<Õs~DóοãËê'9£êžI“Ä>6£õ%»x¾›•ÉØ±cÇjÖuZùÌ6ÉNµ|FMRœóÃ5êϋىýtógúið&á³ä·=›ÄšÎKdÉäw#5¬›Äó¶1‹OVXC0‡ðÞz ÛԜz½Q–¬âÊšŒºm5¶ ƒøþZDG–ŒjQÓŠÆjõ §VðÃ8ãšô¾º<¥ãLFµäï+gâÛô|®»õáè§Åa1´0»‡›<3°^ÇhÛ½[U«O¥cÈÒ®6l- -˜äÉ@¬Uætͳëgʾò_Ó†³½ù2…Œ>ƒ¯x…~¬×7†5lí7þ £Ù!ÈæEêuÞ¾§‚iäµk×1±>:ÖZ­xnÏ%¼r_©c«[Óׂ·-QñVÅâ­O3ãÍ+/C7§é“âä\1ŽVZ9ZFñÍ¥,Í]æwyì<†×~ݽ.Yð‡²Ÿ'kùOk9 W–îZÉù7“ÆW³õvö6¦*i³®,–«¡B=Y«Á‡’¼ ªÈÅ‹ð߈Gny „¢³š’BŬ±d.èZ8ç¹L’å—X¤c¶§™• Y },ùqÜö/©¬V÷³.Q´_¨=ÃDÓk\±‰£&/\Ä[d£‡« IZKUXÅJÌËaD*°Èömª@#îf2,järÏË|VŸÝd!K\â YiËǪã‹úGúlÀíUöÌW‡pxÝ’ ´ò°çŒ¹¤žlž8§Ûd-ÅEã–Ü.€K÷I$²ÊÉÙ’B}Y$³ÚS †g¤“–@Ò#—ëJØÚÄ5Ùד$dŒñÔäôõôôz5س-$I—WR¹¸‰KUn ûqÏæ¥¥©6Zˆ¡qœ¨ ±ÛOgêãŒ}ª´‹t÷S·V$êÿÔ< 1{ÝAjH¦””§ËÄɆ.Ý”Ð+ŸÛ”¬ Mϼìõ#˜†û°Üä,jp²{m+<6I b!lN?힤“Ñc!¬7b@ôvV` u6¹ìÑDÞß=€&b¼H¡[øì˜Ã4–sÅø#TªÊ(öË¿oÛîVçHÖIØ êª/>‡ñþU/ `«Ð¤RžþÙd ‡¼Ob8bä,cí¬PæW?|…[Êy>ͦüÁeVë˨}‚ÝVb–†b?„sWḰÒ,rF¦'‰€±@ÒEþH)Êǽdpd«|¼SôGãÑ}I`gòïãÎoÍâ‹ì\6Îå_‹íÛ~ÿáÀ‘¬Rx„^$¬¨ü©oÇÚ~‘¼ÿšö bk$šÌ©Ö’ ˆ«ü(Fî¥J«ºrP’F~¤íå(±â&&º«‰Ab_Â5pŒÈ®d/ÏnäþL:ƒÏ+s°Xá=d€ŸAJa-ñÈqÉü Õ¶&ù2Ôµ>аºÇ”ø%ƒnçÒ«9ÚÿL³ÄËT§›¿m»^Çëáà¼Q£»1%Ç۬ẲËòz„ë,qþÄÕ ¤ï/ýBô‹ãч‡»$ˆÑª‚ñò¥’ê&~Ȭ¡•-—R"–F­ÌÈüæHû+uS#{²2€Ä0'‚UŸàK")+C’²§5’~uPÁx#«3"ñhÏWFX<µP L'!˜E²ê€ïCÜoÛ8¿ïÂÛi•ØHà°m{{öýŽ3«{ˆ™$üIVñÔ„ ŒÁtµ$öÕ.'+v^[C*ªº•TåÑD.T|¸ ¥•x([¸[]T˜šuø‰8DB¾áèÀFÜ«•V Hpë\Ÿ‹À¬1Ÿ#DKŽEèdpÞã9UYD´zYUof:¬–™ˆJ6íVv¿mÝ•öïÁŠõCÄR“"[šc˜DÒ¼qó1VI¢YA àÈ=žÝš‡¥#¦ý/rÌ:„‚ÉñîNòrbò³#"*ª…è‹Ô)†É*ϘŠ4’¨C݇Š0dádí.å!„q©š@ =Uoœ‡'¿ÇxÛIñ¦?Sr0ÞÿAé™-·3«Ò·ZôÖbÉû¹¿g·-ûtì×Ë­ˆæÉ´¹0ÙU\'‚>›ü]µxוðÛ!Ôßô 6Œè²¦¦dªEjw±4êô©j–r3¼7æ‰%‘KW"´`/9vï¥;\ß)øƒGdÙó·7ÞzËã|ŸkÞ9Áý6Ããý›žEþ޳Úµ{÷1Óå*y''³Ü¹i5¨à®lM7Õú-úœÊËc=·xvŽÃˆ§®áñ5èì>EÌãÒ-kÂ{—‹Þëd/kÕg‡7›Èltó9yëÆô—ÂmdkC g†½²–—Ázu4çÐË¥—KQh/(Uå;_-7 5>%ü½H…ÊСo5íž,–|Yô‚»Fϱï{@ÀîþI—)æw¹­ï*›NHëØŒn…·îš<3ÜŠ·qã5ÍÆtf)â‚9 hä]£éãÁ{þ§âZêÚÄ`¼Ñì¾9]_r³¯f´ÆØu ÖµZÜõí®E[!‚Ú²âxs ô·¤¶äØWÕÆÃÏ8åÀä[lñ4Ù¼fêVIngü…“|,î˜m£I¹¯æf×käÚþ†7!‹þ=XÄŠß¼“Ì ô¿šúóþfÆØò±­o[ßñy=®<ÿŸ5åÚÛÕc‡Àù Æ 8wÅÖ1äð™LÖïË›§…®"†¼¡Ží=}[Ô_ƒ’ùÕÔR/«¨êS{éj¢YçTéi†˜|I>R‘eIDcDpú˜„®÷«x»zwÓ€4»Yܵ V'˜£ 5ä]–¬¸¼–GFÁW¿øodÇËòþ¯¯µ:Ë|å2U1˜ôÄ™ Õ… ë¾jåŠkÃ=pæÍø.ŸTtãÓ¦_V¤ºƒ¦-ÁºïÛ‡”¥—üJO\åz”X¯±~KÎx=¶`~ŽþŸü­n6NM?j¡žÃîä1e¶k:-›=:;5#òa+g3g"öaŽå©»X¹·3Jê1xCéã~«œóÿrÔ+f7ÞæÂm»vNõÏUÝò5²>*Úv‹Z_)‰ÅXÉ mÖ©eÍ8’/síƒE;Èô¡áõu"žkÍš.×·×¹ŒÉù+›}Ê\fÁ’Àù2öÃŽþ—\ã§H«QÒF*•‰œG,ù˜ía©4S½¢Ù¾‘¼µé§ÅÆl<Ÿ1§ïþJض»»´ã°Ù¬Vï”Þ²8(pYJ˜‹™hr˜öÊצ¥{)\ZV«1:C; Õ‘­ó>¦B05tôˆ¤IôƉVXŽ*’šÏ ºc¦éóó&ÍÓÔš‰AêÅÜŒ>ÎÚæ™ôãïÃôaµoz†cŽƒã}ÑË>3°n[˜¶ 621c'yèì6Ekäê- Y#­`ÛŒŒôÈ}/ý6[Å]¡ÅWÈU¡¸íNÃw)½Þ·v=Ïm¡« «#°äçʃ.K#•‚± O+U·=X`µ5’jn;þ>PĦ³nÖOÂ;f̓Í}>l—2ù™·¤—;•ñ~úßQòU𖮌fq„y{%$2d/dkAËW¥X´ãÚ¿ü=<ŸO/†G5—_¥ä9³»dvâÜþOÂ>Åä ùË혉±ñÚîÙnÆÏŠ«ÂÓ¿ÅbÚ¶EE«5˜CWZDa?ƒFdai\d„3²¬ùº/ çˆÇHCâ2-”¥Ur”£rwíŽ.#Oúzð6ÖvAjž7kó~F¦‡«ùév;»)Ù¬Ícƒ¯³ÎÖqVåž_´ÈÙcJ®*M}Q ÍøWèEÊb|l[n ¼sªãð×7]3”ñö??“Ùoxdž“/jÄ:Þ±zÖh‹ZWX+Ò±·8ÕÅu‹ükôæ}+3â›[Néâ­Æ=qñžÕwfÈÛßeÚu|V-õ·¢i§Ä¾6Ms.¶axçÌY§‘†Ê9š%€¤¦bòßÑžÉä¨ ¯‘ýÿO¡ì¹o§\ÖÉ‹Î.Àv{V|#”òµ­ŠŒ©Çˈ³_=Ýõ‘,ö2ýˆµîR2&ìí/›=¾¥OXŒ4§é„ãÕ9˜þ©D´í|$eêÙÎÍ'§Õ)…õÆAEQPlÎ\m|M“ý8ýêZðÉ]e•¥¶Ó9ïê·í8ú ÁmÃé‡;_#þ£Ïb4'+­Õ¿»e±XüÜß&¤í™hd¹Kc^ض[ö(ñÛx.QÊS³V8¨Ññ÷Ð/–´ÝßÅkÈ:¶r·lVæäY­áòÚÎ?´g2ôp®)ñ?eÇe°¹*T,.ný¬•¤ÅnŒúüéô‡æ"ùï%äý/tд ¹ì¦‹rO ã%Ù©yO ¯ë:ܘ ¶³gZ«±¥y /÷uÍ›eÈⲸ sÿEƉ~Ò±’jüÉh’Â4ã3^n™¹OK¦Ù*Fê†BÖP鑎«üJrÓt™eÒFd£Ce´[UÛf˱¸¿ø?UO,[ÄÇ€§‡ò|^½åŠ/¶3ánÍ‚ÁŪÑL­ir’QÄg«`#‹jzÿg=Š‘«'yÁUöÿо…ô{Ûr¹< Šë`õ†Ž}Ù/彿&hðøÛXÄËnl…‰zçt\T, z“´CÞ‘ªÜ*íc~‚üÁO[Óñ­{À×eñý=.…Ü,—|“ý7Ïvõƾnn~eÊœ{äq™ì¼·õ ’©Œ¿[Ù"e £Sþ>@¡”×ro±x¿n³ˆ¯ô픟'³ÅµE—¿žðæ{7s`Ž9kc.pùªy¨qøÌ„ï&J Zî&­š‰NÔòÆšºšÉ§ÓðˆE„(É!ÔõJrÓ¶õ—‰¦i å/ˆJç?T„¹WLü»)n-º©Aü!ôK{U—É5¨pùˆ³$ÊÞÞ5ê7Œi/E˜®#£h“PÒɽq ên 8dy ¢ýCÅOؽÃZËf4]ƒLÞu§íwܶLÔÚ¿1Z6é¸cp˜üM¿ë s!SRÕs‹¯kòᤎ‹Ã6¤0ž#þþj ú^*Æïâ*øÍ%ux1Ö±nXì­|N½O-O-Bz­…ZÙs-”[™gµXÄÊÕ)Õ·z³›ßÒ6w|¡ôYƒÊíõqXÿ¦ûHwy5»YL6óA{Ã) Aþ…ÊÖ…lcòÐfâ§”²— HìêÏ:³}ä’DYuõaÌ?Âôtõ:cÓ×ø³ê‚­ù3µg„>Nœô‡Õœ-°_@Š]n¸%ûð{NѾž·/ í”|y¶ÆuŸ¨ k lî.Ë=¸g¡Æã&Á&BÜ»†Fm†å>8¾Ò<\ò3b¤ªWöÕ—Ó/Ç&úEó7Uòn.dÜìælÔÏÔž\îîkÛÖѡӟQ¿äDñ¨ÌÁ„·vHé_‡-˜Ld­r)&µQš&’C c¿áÝä%¹¢ÕÊo~>Ëbõì~»žÔ‰´W½¬TÕ6 вë`‚ vrÖ× Ýs÷s7ñmg!î™$""6þ~JÄÚÔ~ÓÈZ›ÐÄauÚòͲÓÈé·5¬fÏI#ѱÕiCJÚl²gc³•¿™µ\R‹ÕžJiadF\Âé³øDéćBP¬£!‰HFÙmwk|=iOñÇ®V'бhT#ð»Å¨Öþ¾–õÛšÒ`ðºóå1;t»N›ÜŸ'fŽÑ#1‡xõÚm–š9ML6Ř¯¿rUh®ì!¹ÓéÃéB ù t°Z”x\fºÚFuªn¥qtñ7ªÿNXs-[£å¤brW%\øƒÃ ¡gõ]jÃÓiÅì~7»ƒÛõ(±¸MÇØ¹o>жqF•¸ÝÙò[ö¤Wë“·¸µŠ¸ÙÎ^ÞÆ;#N¥–[µ#5_ÒÃÛÄå5]‹_ÙüybM^Þ¿›Ëh›ÙàÒü“±b2Ûõ›éäi±õ¬\kÖÛèîT©jX-c=‡ªµå†Dbz±ÿü.—¥°3ꢒ²mv=ãòßËñ-GÒ’ôÖ,»Æn¯xâÙ從¾›6O!à¶Ëø\FG{Çãu<– êl’›RÓÑ0wpºžf¦>¾HÇcú>Õê´/IÔâŠI–ÿ¾–8Gh—èÛsß¼gôØ©±YÏøG„ñÇ¢À.óˆÀøäC §XÞðwk>'7oAÄb₾Rw±=XúXpS¼_ôIä Í:—“3[¦žÅa¯ÔØ®CJŽÏW#¯äkj{^¼Ú6“‡þ\dš<Ö6XÙß%’ÃÁl¾%¥²'ª{ÉŸF>IßüÙ™ßñûΛ£ãrÙv¿>ã¯ÖÏÖòeM}´ÆÖïé¹UbmCdƒï¤8·<”ðç«Ð“ú^1XCÈ3–±¤Ê Ó„§ªCSOåõ:šQéƒUrº{c;ð‘ù_2$¹ÙÊ0Óe§6LHj)œe+ºïÄ­¾–ñ·u¯ˆÐ0ËãxS¯^­¶¦# Ì,¶£­[/%L¬tòÙ7sg±fëÛ³C-v+ßõ]MÌøé6¦+DñÍÍBˆÅÝÖõ¬£>1‘hñ:ˆ0wZ’Æf¦Ylb1Ôp»>N®<¬v ·¯Üžyk³…üAô›Ó6ïf·[Þ>Øðš&ÎùŒ†¥F®Ë‘ÆmF޽c¯f-×ËE6³v/IW7>6JÿÓ×ì&µrÇFTí{þû¶"/WpY« ©Ü14”×+>LáªÕ¥xYþY)û6&ÿ:ý#ì~\óv·äض=U0Ø(üL‰†Ìѽ°ßè-—nزóÖEêË&b=ƒ˜áÈšÛcÚÄåÓŸ6ZŒ~£§Ó©§Ó>–ëQ®©ú=¸^¨GTœ¹ÙÍa.©GÒˆúc¸¹®ØO$©xKÀÞÎ`bÂÔÁëyÍVÔùŒIÎíöl^¡EÌÏV¾k(Ò >+vî=Á…ëCÁêA°žúDÇkøýzöÆUõÌöË¿nxZ¹=†z™Èy¿¹g(3äcŠå¬†IQÖJ’XIc‰ñm"{A›õôo{ÎÛ’7Ú±x¼¾Éâ­SJÒ-KÉgÖsúï‘õýÚì·æ„sàv¼6+!®æ,T[¯S!5$IeSÕ(ýyc â{õõ%ñþÿ›ÉSÆcòº~?žIµ‘‘òt[}»^ÉdÀ’a÷c¸¹uŽ­öñ+ˆBëOSJRŒ>¥=(þT?1pŒ¥½Ê\–°4ë9#çÄ;uɰ–©lÙ]›`Êd·—VÀìå¯&}òyýrLî½¥RÙ–¬R´¸,57¯õL©bƒÈX,³evü®Ô6•ÌkÖ3y¿%g¶û¾GÍfa§Zìµ%¹g-›šZØèehikö*bãraBkn™ô1äìÞ/«oÈz}­[Äv6ŠúrCÍC›Ê`¶¯©ŸýBå-lyCe+>Ÿ&¦¯TÉS,µÞ´–!i"O?ðâ½.nÕéE£ø·WÐ<†,â3useÀÚ7îy;PŽ bzÛvzÌÒÁv¶fZŸg^ 6‘¦®¢Ì+8|.êËCÒÊ/L]œ‰›K ­øeÑÄ%ÏMézº¢3©v)ßl]Ýq=b¼Côƒ™Þ²^!ÆkØŸj§ã½h\ l–G3«iZöCo×qûLºmêv±zÃÜ~*XHèäæ³›s$: Q~”¼ÿØ¼Òøî¼¯©Åuª4ٜ嫑=gi·×rÎIåÜ«ÙÚ.\Øe]ŒÞƒž·i©Ä¾á&¼xgé;Í^ݰÛ6#|ñMšºÿWÄ 4ºNN\¶Ùª_ò¾~ÚvݲPêë> 6oC5¨"½*å)Ëe^T‡¢­¤ÅÀd÷‚$Šï2KÏe‚UàmS™Q#þ¬UÜûÊÃÖÞKCNZrüG# ““˜Œz|ª¦ôàß!Åή¤e•ÌËV,A•ä@Åvñm»Uû¿H¿Nùw’Õ¿P3Ë“·v²µÌœ/‰ÉÞØkív28¨VÁ‹~Mе|”mI!z—.9@£Wé_À´ðo­Eã||Øy1Z¾"Z¶gÈØŽÎ?DÈ>CZ«fI-<³Ãˆ»$“Îe.ÓÈìõ•¢n=XÅpD’, —QǸ¯Ê<ßÈUš4<{2°WÈ‚õ"F¢F-ÑC27°®Ìz¬a(Lœd•~"‘AŽ íVoä;^O“ßðúD°>i Í~[òUcÝÈó\ÅtºÚ˜nºšÛ {vÙ/Õ0}#ø‚–_˜Ôð³j3VÝuí³`†.å†ÃKY٧ݱtqå.Yƒ ­.Û;ç†#V’‘#–Fëu%t:…Gy c²e0€êÿ"ýéå¸<+{õCøy_‚N=Ïæ$O"ie¬­ DìdPÞǺBÁÐ{­sŽÌ+¹áÉe‚êú*0“c¾Y%´¡V÷d•W˜Ò¼dqbrÊkpZ Äé%¡££(GKN}Z°² \ˆ {×Ðý©hêêêg6}:lcÕš¶=ÂèÇŸzá¯$ÐDõ¦±b*ÐAif³*Ã(ÐÈÒ#ˆˆÃIIÖµDWºÒ0_J–mSV¯ »T}ú´t«´ã¶M{² d=Åœ‚G‰gŽºÉ(@f ±'>¡>{Íá¯+¤ŧñöÝìD¶9çk•ˆB=Ù$NUÍÈžä>ÞJDN}WŸ2`ò»sè¶7aØõ{њ̹ÝnwŠý/·ðæBD‚åéâ’É}“íc³f2óHë ),µó:îŒÐÓeZq™H,¥0BMîݼwáô4zâ\¢\ºjººzbJäVË·zqÚ¯¶îÿ÷ÇíÎîIîP ŒÌÑJ³r‘‹ì°"šk÷HX«ËÖ‚NLªHu,ÈÏÇ´Oi%H1@à5ÅZ7®/d~«<§TjWó~@mg!¯ÓðÎc¶™íàol:ŽG̘\–÷üŸŽÄd?Ô:Í}þPî›f~Ö¥d1·Œ ïX“7/}Xbõ¯*Gˆ¿{‚2´´-Çb·Œµ,;+rÜÒðòíXÊl¶¹§øÒzBþKJÛÕÊKrçÛ´pž1ŸÒ”%Z× Ò›«ÁN6‘´¶ðãGà5:ãëÓ •ÇRµ¹JÁß~ýV´êa•Ô“üRÿiH̱²0¿"'eá!Çù’qŠ á.”$Î…KCXÏ1õ€J  lü{³•¯1Ó›¨©Þ'ò’6¦Ï4m¸“å§KË–|#°kt¶üŽ;f8-W#sK­ŽÊlÚî ¬{Uã‹9‚£c_bµkÛ2„§¯ÔŸ­ê™Ì<§GË[Ìx¶Ÿõ R–Ù²cö'䩇ò'vóoÖ5b®º•þîÖ刧~L†–j‡µ$aGfþ'8i¿+SùÐf°‹»x¼læ³Äü¤Ù†¦•hÈ‚Ý]ô¤»ÐV±yÀqÙ‡¨2ÈÊزGœ•a3Åñi Yeÿ›…û>*¹ô•p´ì"1¨öIc2*Á •ËDWhÈí,@û5câç%•“×)òP~EÅæ|?- ìí‘I¼oiÄî1å°{Z¶Õ³[ÅùŽÏú„ÉP›[ÔòóÙÕ6L¾g'B®³R†"¥ ­I{rdãÙv•_˜½žP«XQë×ó[Ú3~Z£ˆÚ·?Fo,íØÆÕqé{»ÂßOÙÝ^5¿=VŽZðgó; w­+‚™8ìaûUФAwÍ¿Sù=Ò¬8 æwÈêky-Å|^ù-Ÿ%k¼pùK–/jØMZî„Ènÿô–·<Æsײ±ABJðʾâÃâQ.†©r©î7¿lcߎ#ÉÎVGWM鉂ÂÀ¨Ø6¿z{îñÖœeȉñ­%d½,²_„Á¬“JõEÁ»Y–´í¬È€\•ž­·DX‡¥²5šÂÓKÕä¿1±8« ¨}÷Ž¡ ?³ 3J~Ïál²¡LS°ŠP××7¾6I÷7TجnÛ–ý“O¥Ìe_%ßÛ°÷±1ë>]±¹ÐÊnú†N­štÿ ì˜ËvL;&©Ö0ý½º²0–=ä™iz^@ÌÄ]I=çV<‡ˆ!÷:öDÚ¯ KMaÊú>Qó¤þg×ñYšL.bÖÆ ‚Õž†ë’»²x÷-ã¼E½×+SNÄëVñL,›TÙs»¥ÌÍEÃg㱂±ì5UŒ¾¾¤|—žÁùËbÓ)ù rÕM_§ˆ7ëŽ>Ýȶ/,ÿÍ}S‡¯uëQ´–åÈco\¥ŠÆØ’,O7Ù³Ka£Œ¾#NZ®Ž CR:EÕÉ’„£Ù»¼=‹à¼œ¾a¦N¨³²¨ªk5’ûm¶ï Y5öÖ§ŽA ‰—î eŠÒ–Ÿk¼e¹jáŒsGÒÜÅ]˜zr héÛ[²T•êØZ’,òÅr sZfƒ–¬0ÈÏ(à–H¢ ´ä,Ü‹òW‘ü˳m»f¶·¶º‘fìù?KÜuÊÏ´É“×q•4Êvõ§› 0†/'•‡+oN»W5g3 4MèVŽçå KOÃÔ¹—Êêšï+nØû[^RM«__·¥àÍ ôJW2úæ¿›Î%œŽÈ׿¡jÍ­±ì*kKe¯[й§ø´SÓËÍ*êwn’£?æ¿Êî]qgðö4|ØFIÒ_u[£½Xæ¸ë˜»U“Û‚N‘) PwôgöèSðâA$KÄXɑг«Ž1ÓC!’t–)aWÿ¨@e€¡fï~Û9hýЪáŒìÇîb)aë›oê:æ½wqÌmžN^½´}>`©`i`r˜\.S¸xËW#_·¬ZÆE“ßÌd²²ØKÑC>>t"ôtíך5{hÙÍ£AúÎ\ÂÓòÍÃÚ1ÒÇ@]MÏz}ºÍ+9fšÅKkÑ׫X|Œ­Jwl®6šøúÖ¦0ÆÚ4ùæDïGR04ç©nYéP¾§±vcüS.TŒ£Z±œºá ‘#«}£»Ù²ýúÁe¢€Es¼ÌÉ6*H“÷(Ò„(sic $©ÀªõÙ,Wí8Hy{cã±jüðÔ«Ó‰­ÜaZ¼3^µX«¼ó˜â÷¬M,pU¬d–yâ^ŠÜÇѲ¾bÞ¶ü'lÞhjÍÛÌ{—Õ›oz×t5ñ_޶oݧ·mØNNö-ºäöôÅÙkE$óÁbœRIV¾w¬×“6ü o{µåKôy?§iü©C€ËK†Ûµ_’5L6m†8(-Vƒ % -í9K6!“©Ž°²Ô|R!¼ÒLA’P´6ÕŒsƒZò2e"Z±É•é\Vã¨W|qÖÁ~h&•"Q$ÉK$P $“Û!§ ÙGI @‰Üïa Piƒæ5®ð‰)A~I89ö¢R^ ‡ýK}»ê}Tgüƒ…òv±þ™ÌlQkË£Ò¿GX¥[lÂÁŸÜF÷›ŽñÓ¶½C°Á›ò8ÀEŽ£”ñÆË =,ô’;ª¹+Op“yúÇl¦Ôúî/b‡Ê“§–®ÙÑòTö›ØºZM!íhÒeÎ #“‡"о¯{œÈ_Ý7Hέ)¿•cmo‰ÃGUÒù³bÄ–JÁ²Ã. ¬ö±tù)êÀÕu`u}Xl ¶å»VÞqÖS‘£‰Ž¤Y ÐPµ·0ÆP¹2U³~ÍhÖKBœ2õ±gíkºMiꤓR­Zò+zZ¬ñ[[Rie…]LF ;•DŸË dbæ9$ªƒ¨ˆŒ‡bü¯®/EÔ¦ê¾;¿ãåÌìmknÞoéÙ=¦žã=]o1‘ð^¶7÷ÿPmx,-ïõDùȲ8ín¥Ê?銻$ÏŒŽô«Dsl|¥¸eq¾úsÎâòžSÑðÛW™þ›µ}Þ½êyå¸5Èx}|×òõV³å.glÅ&j‰“NkyãÚL, ·W:5#­¨èjiƒ1qÔ€‚ Ë#Û]œIò,%§™uË¥§ò½=YÇÔúÑŽ÷ViÅYî^ºßaO¶§½fØu¡‰CÍ-·1ª¤1' bIU>æ"¯B=I'g‚X¡Yiα=k) Ù†ÓË–§2¯³4þÛ}ÕxÝÌTªÖ’6ï‰òæÁ­y!!ÌùŽæ­­xÓÉ–¼QšWëÝÛg5MA2‹v¨Ÿ-‘Z¢ÌúùI˜e‰¢vlÑÊýKJø™©Ïå8¼Í&÷âö}Xar•¼súpO¦½Þæ'I¬T‹Wh›Ì±øö–«<ÿX!K.8ÀØ·¸ñ$¾&Ù'–™) –V5ê¥{•½]ã$äo¨ù±Q;lb¬ßïo·dÊ-í#@{³3Æ…f„¸˜~/qïðêéÙÔ½†æ³¨^7^iN(Ò¬Éi#ŒˆÅY¢‘#•ÛL‹#¯J‡«¤ÜŠMfÇôO¢L6JJÞKÛ¼µ•ñž›Ü!7²0yžÛ´C‚;ä²½j³Xx5so#6w‹ÅÛÉÐÇV±:«ÌÅ:ÆnÛÔ›Ö¹ão%í^vÄèV óŒm+[ò<›&sÀéWu ¾úž¶ß²c×#o0ÚîH㽋—d†µÞ–&¯ –küCäš0t&ºŒð‡OVHªU€Þ7Ctáty7WªQÖ€Bl@2"EZ3V‰ÙͧnÑ¥Zr»ÆÎ¯Q)­b Høö)òÑÁ±(r…SñQ§*M3Ç^׸•bšVX¬2"TØs^æ)Øuëß¼p¤rGDÙ~ 2ÙO±ÙóZ¿çwbð5öG-gĸ<cÃõnùz¾Ó—†£kõlT’ ±Ífäyê“D1ñ³4 â\špZ®žË‘úŠ·³d|5ceñÌØZ»&^äßQk½Í<’aÅP™ð8ê²Ð³%ÚÔÁ®¸/åžS7fZáñN¨?úm^—¤íWCNÍö}öxyr!.—[NªÀ»‰g|Õ»¼uæ9D³4*³{…`°ÊŠa“ædêÞÈqñQ˜@í‚É”|¤ôñ™Š8Ü•úxܦj`˜jf,el׉¬ÛJ¬tµjÄu‘ìd’cY¢ièªÔ2ÍÝ‚?ªì%¯/ëÖ±;öâOcòN£—Ò.Y©•òÞgʸª¯09XëZ& Ýl¿K^þG'P-œE[Õ}6üKˆò½¿8iccÄù#§i>[“cÓ³[¡¼ÁÄk»'‡w,.zzï‹Ç^¿BÆÅ_ YK‰«,«@Á–â÷d~$³ÒŒymRZ©™AëŒ[¬˜T|Û]¸S’¢r–¬$@o¥izl6sgýNõ㎭EnioØÇD ±fªBæS%˜c™ ×’Äž`3”r"UÕíF]Õ€/!³21±[ aãhÖ9ŒòÈzÇ"”àä碙 ¤ùzëÖ8ãdç×8<Ÿ¨íu>£ü‹žlwšŽwËþ}÷'ãüNß–kºE NRžB-Sú-+3êf2pѶbºLòͪÒ8‘îCç(¾²Ë‚;»ysÛLXª™j׫ù>O §ÔFn<+AVÜe"ò }7®ªËšÇfÆrSY§Î®®®œ´ZDÛeÐ…˜ÚDL®êg…yR1Ò™«¯£¨pG©.-î›ö°Æv¼Ë™˜´uî;¢¡ù†o|FªHQÐrõeeÇðKÝÁ>¼”çp²}½™coÍ:ó{lí݈ eK¬O¿‚b–³Æ=rgÊXÍþ=$ë~-Á}PQ×£³äKº{vÄyaØÎvŽŒE\n—†Åÿ¨0´­ç…¨µõò˜ºÍâ\æs†«9òs›÷ i£ÃU³NŒ³V%¦þ•K'–ÁVüúÜ—¥¸‘¹QºêþQò¾Ú™ëÚwŸdÑ´ýŸþ÷)RËj;~IsZç ~~ذÚÅšuò¹S†Æ»ds™}kãZÿÖ¡ghŒ½õuâ]£mòõ퇩î{=\ÿÒ/šŸV Ëò7ƒ‡üIiBZ·×ÊLAcÓLb—J™ÜÜtM£°Æ3rÊDkbV’)4Oyz(â«+ªÏ!âbΆ—úÌSЊd+a‘Ú@¼ó™]c‚ÖT𻟶zÍ÷/ÚØ~xýä?}AkyŒ¦‘_)'ÓÖ3Ì;•ìtÕuý£ÉÛ ­¿`,hÒǃÀYM§-¤Ã³®ÁN¾^«K×ö¹1é˜Hé %‹¨^Æít¼MãZžBµnöíSMשíWòuëUÈÛÉ%fŸ+F„ö«R¸êµÚ°Ù–zÙ(å6*³z~_œŸ19iÏ—ž“¦fMtÊËhÌãÏëò‘Ñ„&kB}J„ŽùnŒÆ€Sz®$6žSeTáá”—2´Ýƒî_žæþ7àL®;ò#zÚ±$1H ¸:;³²OhÊÆY‡¾íÉSM à·­’ãçºÈŒìÒFPÁx*μˆ×Ÿí°xû§ÿ§NI‚TTH~‡C/@D*##¸äžJ?¥9_{…qëbÇ 9FÑ+#Ûú¿¾gÇ‚«b_±„ý¸­~pG<Ãùä 2}UÅ$]>G&‡ŸB½ˆ÷Z>Æ.ÜÈàì±å@ëèäuýÕB– ©Ü9$Ñ?±ë‘^nttú循«¡IIï>‹¿v!¢ì W ö‰"VU<õÎ2@@Aø’/úsÏÀQú øøã^?â‡þ¿SZzfJR·ÿ/~='ÃúŽ[Lÿ«S%Õ BšûW‹­«x_Åñn €~GÂx ò@_Ù%¿àOß$)ûOçŽ>H‡ù篟ÐãÖ„þD«¨ãò#Ô‚qøÿ’ Ÿ‚O¯!RÅz3ü’@#‚<·_üG'ÿ×óñÏéûžïíŸó˜¾Ÿ vè_šºMÞEÖq­/û_¯Ñ·->N$ÁŒ¾§Éý×µ 3HÌSåU¦ŒK¶¨²¿%Ò¹f'g´æEUõDµFÍ7ü7pýV<ØúZ×Ó¸?»ƒ¥>¢õý–/*êÙ¯,ù"µÿ®±…Þ×Ã{&—®Yµ–òÖ¥BMÃ-ãì–ÌX»”éØÈÐ]…°íbö%'‘h˜`wõCñ½Íò5©dÈ”@¢®ª™x¼ýx´ø^©*u´ié çiŒøîmÇx¦ŽAîÈÒ$ † ó+»ÝbݨÏô>áµ4ŸõPt„‘ëžNÄ–PFâÔ«/Û·*€¤‘sØÍZJ•"7eN(Ïõ7õç’ñ†ñäŠÝÆ#Vðš6^†ÄÖ·ÝZíïÈ+5¼3_·[E·ÌiOiªKzÌWqê+’tß|õ ¸ýh>MÌe³:/àòGŽ2›¥ßêÙLå¼×«y>ž2ÞZ,ÃWÍ}“à¤6N¥<<ȘézÉŠ½86ÃâÚRŒ˜èk.žŸÌ=Ê6G ¹ïïŸ~þ8KLu´ÇSPÓi²7YO‹Æ_|t¼§^®Î† ]DješDE”FA •VÇ·FõÁnßWzf;ýqWjòÆÁ°i˜?ZÛ5=çÇ©(nSÏõ»ëyL1ÜÆÆõ…<µò§9†*О…§²ØÈ¡”ÝO£1ýNùGxó¶3θZxÝs\¹48xæÃßÂ\ÔóO;Jö¨$“ޝ™ÃÖÂWÃd&Ècíe¥ShÙ†á3*‰¡ñXêÊ0y}xNEÅ¥‡¦"ÜìJ»ªÇ «ðýHG¨×Ó”˜µ/WªQ‰?DEv¿¿D£Ò¢|2©•c¶ Ê©®z¿ÚûmÈI$\\ªˆÙ8`hšÊ{K#(!ÒXË´jÎ\WŽ8ÌÊÏ7Wn“+,Ü['í]×× ¼aå_­›z'©Z¹»ëØ,/x·!­ÉâüœùªT÷OÜÚöMâ|ÝÜwõŠùkqª1•–ׄ֒½–OùoêßÇú®‡¬LþCÌd±Þ“gÆk9Ÿg2GmÆßñW’v­§ÈYýÖ|{MGuÓ÷쥮ãôÜ„ðe³c3ý*,|òÉ"_Ód2åù€ªeÐ[#¤¨›ç9w«8'Ã'}±¦X¤¼"äÙßµñÛÑüJêGi;¼¥ØòÊËù0œEÕñÁ·*91䤂AÉÒorbc(G…9XÀ⎿sÝö•œ½úÊf¶ëf4Uä]ûësÚ½6ßvdþ®¿LC3káÈÿ§Ñ›ÎY))ïI X ~Í|QF8­˜ìÉÿĉ$#< G¨òÿÔÇÖ­ßéóL8½îŒþjÔwý‚ä¡Ål˜AæÏ$xÞ-Ý!‹*à²0i¸]S`³jöC­~ýLÅ$±C*²©~5¥ÛËs=[Zv²Ä@o½÷ßÎUhü2m?G9‘ÔÔJ‹yßzC¶W¦jœÜ‘Úq$j!Í0t‘Ó‚ñ¼Å–pÈ8ŠF m¯j„+Þ‡Æ{¯_¯d‰€& Õ»¨’R‹³F¾ÚŸŸ³¯$L¸»j¶½ä’"Ü(ñùõ!ªèØÙ³~fÆU§¯kúß—¼ñVѱnz4¸Ì¾iïŒN±.*i¶IÆE(cò:®5<}±r’ ŸÄž`úáÍf|±y#šÖ)—é÷^Ü9§¨–†¼Y!D-¥», » t;pšŸ ”:“[JQ‰Ôú“@D¦­n³Í]ñ×¹‰É,L„$nǫȨü?ì¯,èþYdé7Ü!eªÀzHRÒX¯%…Y¤•$‰GûwŒ+ YC„ŽX_´×Q ¦8²_©3;µJÄ¿õŸ6ýtç°̵ö¥áïe¼m[b–í]''¹b1óVÄdo¤X‹,Ó%Cž±Fi!) ÷ŽN®}j^]ú¤òÌ8|6½¸í[á‚Àk{65”ñøÃOªù/cðÇž³¶0×ëbÖZVµ;›Ö±Óõ¼–\ÅZö*üpÆó<ØÛ_SâÐÐ茴µ%)êN0ŒAj ìßõ}wáaÈKW®F¬Ä‚²“dFT¥”]e/)œ=º4kEÜåÄ]à;FO-Ù„ø÷v Îþ2qÿÔ/´Ü‚¯Œ"VåHe9,C¼\90êÄGÿvÃÈžínkÅ]mD¥¸ÇºyÓë‹+'öÍ/XÏëºß’¼ƒ¸K†Äg´|ª[©‰Ö³µý;VÙiIµŽÜ0ñ[Ú¬ÜÊbÔÈÍö_x•ãPmOÔ¿¾¢u1xŸYÑjlxC5†Õ¦§[UÒçÛð›ç’®ùŠÚô-Ë`‚¼ÑiÞÇó_Ù)eîIN·ÝÆg6Ýù‹Ðþ-£-)j|­{Ó”I ­BãQú «œWºÿ”u#›£/™HIXt Žäý/AÊŠªÒžY‚<>À $ vüdWUžxHè³AÈžÏfP=f£,3Kƒ÷LìÀX²eeF % è;#Ä[”)6Ç·=E2¨çïÒfáõE·n—q^q]„ë›—ÓþGÄ›ºk` ñÏ©ùnMBž«_)%h=ü•-ÎJÝ;¤Ï“ŸØÉDP=S-‡Õ^’•¶œn{Íö¶AòvdÇg´¼ÆV]Êì_RxŠô4Å“!A¡½Gý“?Š÷-CŽ{ô`°ØÚD Ôø´!£¢Ç—Õ”5Y¤%4ßNW ¢…ZlœY§È2ÔÔ‹­§*êeE^ÁfþpYÇxr ,ŒefŠv –é ñ<á@÷k±ž2²›J%b¥½‰d”ªü429«Ê«ôäʰήÑR¹ÇÜfBÉRÑU€ ãÿ‚|õs„òwÓNµ‘Ây?m [µhV¼u•ÃÅ„Â[Îg¥ØvœÞÏ“¡-Ú´fž9 N{L)BµÈí‚e¡ç/ù§êkÉX ŸÌtµ\ç‘ü9¥M²kÝÚޑ⻾q¹wÆšj–cÎ×£æ+˜]/s½Š­n\-[ÙL†[Ýö’?Ó4Mo‘«ÓÖiêDŽÉl¡))ÎüáòùŸ/ç@—OTex‘ÔEÚþ©þ=gŠ´ÊÖg~>ëÆb<~%$d‰Qø1Ί‘¼¼–5—j Ì㸪%öZ¸XÚoû}ãhë»ÿñ´hZÌVI-³cæ×"õÝëïkMŽþÙœÜt U¶O§í' €Ãøö 4Ûä<ƹwç2WØ»®àMû¶ñQÊÔqsY·-ïm áfÿ¤ýƒêo7´äpÞp¿µìöcÁ8MÚ‘Øt¯ôÜZç¢òŸš´ ® •Ø«Â'¿˜Ñ4­m»Bvk—#Ï-úñ,7«3Ù§ñ]=]HF<·0”@ôà¼ài6ÎÜ$ùé–ëèÉaåMZU÷qÞ–¸è6>ÍjñH=ÎR2džùY;0ìHú4gÿŽæP£u–’vùô:Á¼,¹G¨Ó!)'U`JË]â(í`•êíX„êÇú“òå”rKÁ[oÔ¦ÌßOšFg¾ÉãlÄ0ãwI´L¾7®c,Ë—#¸e6¬­9)]¯^äxòµý ö4Ët«f¼…½?·ÝÃê¯æ_3ÔÕ+ùÆ[¯n­áïâ´8/ø/©Å®`çÕwlÇ­,QUÛÎf]†L~î$½–ÌSM~ŧÒcŠèÊÕtu¯¯å1"µ.޾«Ú®­º¯wŸEןjòX>WÎ[òNÛãDÖ·m˜éþ,·³âuìÞíX!×ÖÇ“iÖÕð×lCÓÒ³'ôÕ™ý™ 7XÙ¿â‰Ü<-æ÷ Š}§CÓ·ŽbñëE®æ39íföC}Ô÷ `Ž-VmW;¬Ö¬Ó¹¶ç³],¤ò®?Ó¨Ìå¹–8‰è)Zö|Ž~¶/‡IœÆ‡VZêJ*ógüÞØ®;#+M$\Nï(¢÷ZºWgn&[EX£’nVRžiÕ±³4U&2&ÔžI&ßôAG¸Í#H;ÇÔý˜‘aex°“7·Ì‚@Þ¸åŽÉ}Jí8Ïm;¶Ñõ=O!ª}EêW<ÉŠ¡ãÔÃãu§Øq~#dÆj•j@Ö÷V·6º—-'ÂT¡“\¤w^xäx¦O¨¯ }Ua~«q8¯âüƒŒñx,1³[©œî²ÔÌëûd™¬•lZ²sc^ÌTÀ× ‘´—î{õ¥B†gô_‹ÂZrÔ—-­éœ ³Izv¡ êeÈÌù}:ÚoÌ—Mƈõ[J¸Àc5—?½N $RþHcGŠ[Lž¾ÂÊ).ÛÇm”Ç &÷hd vž}š¥Z^ˆ¬±žÏ WûL³ñ$±ŽÇ‰l±Y¢³Íh¦AõÇo,îß]°KåwÒ±Þ\s­§Oc©¶“Aô|nªúö\nÙˆË@f#å[»dªfõj2X%}èbŒÖƒÜ~CÙ>´|A€òŽÇwÈÞTÎkzÁò>†[?¬âž+Ž«¡å4ݸي$Žæj|¶s?­Q´?èr5jWDZ÷bvT—Æ4̼¿3P¾©ŠËmÕmŽõn8sáÊGÿS¥®šÍ墳y û¿^;(É)KUäžE™¡YR»ºÅ1‘îG*kI+,´ÉUeÌ4ŽG·è%-"Ç)÷Ú8×íä™ìþF5ÒŽð³+°þi‘>ç"zOq§+ëŠöúÑÉ[Ço¾6ÄùOs}b®ÙŠ·O"k2`7(mž0ùYÖ`dL 1£ç@ꦽW[}¿KÚÞ-Ó*3,üŽLÿTmí¶Þß·vë»k~1Õ³ÞBÛ³k…×5kf³53D”+DYƒÂ?4ÖDPQ±]E»wýœ{‘4E‘ßÌþ>LVK4<©ª×׫WÆ_Ëdlì˜ÊõªA–é..\„-p×HìÈÃÜŠë/ØJ¬Ôâ–Ì]¯*jw÷núM¤r{^³ÃcNR8æ§RÖ=ã‚KÀ«(¯^A™'¬UŠOP›*@¢{Ñ÷’òšÍM’,f“[Éxï9ãüÃkWÁì͆ÁìõàÒ$Óëëy=ÆJr¤2a$³.W^³=q¬Êð¬Ò‰^o™×ÒŸò´#­e¤”FŸµ‘Kݯ:9} Àuu'­1 ÂF±»²/üñ'ò毛Y«sËØ|}Í+ÙÓ«ÚÛjA&ÎÙYàÇR³„„ߊ\âÞ–hëÒ†Îέ ´{®}Qxk+Œ¹‘¯åÜ-stÏhÁv ƒ³WiÖ®=,Œ8ÃvòH;*}Œšû5¥ˆû ‚B­ëŸùÏ¡ß9cñ5p:ý b[CÔ`Ž †Ó{·´iÞTÍùs%„±fzÖ2›.7ÊRÆëÛ%iiÕÑ.6Fu©=QÇ£KéÈ×v Ï/•BûL¾ê?¯Yê·ì›¾r©Û÷iI_¥9uÛ$fŒ™²­êï1B.Ü]ÉüÙãk¸|¾ÝkË:}ýw•­„Ïì§iÄÏŒÆæå†F§Œ½‘³eâ/8IdÇcmʽâÿPBƒ²žjЪd°˜ìÇ—õhnmTq‹®ÖÉoxçŸ=C$Üáä '°Ö'Ç\oš—kÂa¯k¬8õ1‘ÍÞ~|€û&±·è2jøßô ?šE\£jØ­’îµâlo޶{ùÔU§«ŒµJÕ¯`rS¶Ù ~[0’zÒʈô~…6œŽü£§ÑÊi°f<á­BÁL±^½«´âvj»Ntã-Ü÷nÖÁ×kIBîà†aoÄó¬ˆþ L “ù¦R®à×nõŠ®´¹N‘üK™^b „@UR³†Ëã ž<óf½äüǜҷ‹¶pš~ß´é{–§j)Øô¦Š¶}íÖšÂÃZrÈéÙ Öƒí¬ßîÉІ]¨ællÖ—ÉšôømApw3;Ńu3o)7ÛÒ¯ƹ¶“'ʱوò,]xƒ@xOmÊø³ê?Ź|†…o.ySÊ{æ—ŸÃC+5LGöÑBŽÁÔííÝÃXÃäk@ãúž##v>ÊÎÁ;_Ó7šw\Å]÷%Sź†ëØôÜÞ'IÒ²VñšÎb GYÈj -½„Öû|nMidŸ+‚¹%I"ÃMR,eÁ,’ }4ùŽnÓž—) j0]H…lK­ª1‹œä1ÅpÑå¤êÖHÙ\¯›]ܨv¤^-±ú‡ñzì‡SLÆ&J | ö¤Ìc&ÂE¨¾\aêe%ÊCÜkó2Ö ÿGb§|€²ù52~Ãõ ®ã0˜ü,ôûƯ•»ä´üö³ÇYËd¶lN­+“f§+,w3ìO-j>êŒ6 ¹b ÄÍTæúGòÎ'YÃbu¶ ˆµ=„f)‘n¼CmÍýAGæ¹1Ø<ԞŠ]³o1‡|¬«#RÙYóU+EŒ· ('é É•¯ç2‡J‰rÛí=ζ—%‹kQÅæ,êxêë¾d1Ù {®å§` ÀÏgW#ý:µÉ¬^ž(/±x}ÈMD×þ<ÕFJ–nm¾9{Ø­¥ã¡ûL…è­ä5}õ÷ ~NÍb«^ž7'¿«s‡‚Ë4ïbI«kå? '—vŸe3óq…ñö[5™Ëc±Ù<Ž"öLeu›¸âÃeqòEb­H.\÷RYÛ´õѱî¡d¦ž§5¯§­Õ˘ÂZ0œ#„3õ]Ôj[(s|4¡¡¥=2:Ìú£#Qôy•ˆµ·œšÔ¾¦<²kX ¦wm›Ç—2y|æ«™ä<Ƶ㶌.uõÜÎ J˜¼Þc ”ž ªAXd0y\–:'¤qÖås*ƒ7>¦òŸ–²Ðá«dt9|r–5,ö!vjÙEÛ¼m·ë7/É’ÙuɱSG[c6z•!‡*d¯Šznª„ÈËëßS?Lxß©7ñdw³ƒM?3>•+É$žAð¾ËR¤»‹mˆŒb8v}—§ìU¥ŸµjöµÈëZ@,‚4KSš?(hš‘ƒF2‰%#¨²ï!¾¼W=:7¨Ã¨”µ’L‘ŒF-WŸé·kÇŽÕõãMKlÂj{g±xxó47,ƒì}Ÿ ºî#-©G¨äïkù[2QÏ_bÌã·ÌFcZó¨±fL½¹(7µ÷†ïyÃÇØJÙ››Ný¯êxŠyè0Õ³ÝÏV‡›·ý'ú”v)ÍS-:ÆÉ”΃3Z”â‹´KHó“è?Kû,KjØõ­›`‹DúžÀçîvD­s9çܶc ”Æ}è•«âtìN«i,TJt¨+{Ü|¹g1ˆ§˜Ú-i™èϘ×é×½-ü–5ZËk“E6O2>Y‚=<àò;^M³áõ\Ãæqšo$-¯úeÁ 5ìý]n*È–ÜwÖí„k…!_ÉŠ´²G9ˆÀ=údÍi)¬››»vîêÚïÔ–C#ŒÖ—öõù Ý`:V: >:jI¶Q¦oý0ÒÅñV»F""i¥¢^¡çKž\“$ŸÓìø¦¯Ó‘®GzžÕŒÙÓ)îÆ¼‘ËZŒ•…"¼°‘,2BTêÒŸ4‘ëÓ/š2JWM%}ðÅ ™D®*œ4:ž™ÉËXõIôÏÐAbõaÙ3Œpj×™ìéèå:xdÉž§–´¨­jh©Ÿ¦›F4ÂµåÆ´o=…2r“G‹ZŒg–¶S¾3&=׆J´_ø}f´šøÚ-¾kÙÌuœ>¯ŠÞW!€ÉÆ#¯§ísìxK}8§ZõÍv¯\Õ¸¢¾2ÂIv4Büz6¤ ÛkÔõ]7)¿iÐ|k¹å·­zšu…Íä¯åü•³yZžDÌ#}åÜzMµ]ÅL˜_¾ûLfQTÏ‘IÌüF"G“Óˆ2¤¦+‡(ã©¶ÒïñgÈå,”¹¹¯§»ˆµ Æ1Þ¬£‹/gÏ>§ÅdmùsG‡›–äX«_êj+JgÅÚJ96á•Ú„X«Î´²îßÒ² 1²4a‚z8Þfñ/õ]§'“õ*ù=6®Bm¦ j”"Àdž5[7^ï~¸Ølb§·Qó˜ºóص¨e/ÇÝÀ–*µ¿¢­ºZr¾?eÒ°»N[+¹dó9ªzþegÅZÛ²õòv¥×Ýg2dg†½qʹñ.;#+}ìÈÖPz#ô‘ä)³»uÜG”ðÔ­¶ù\V¯i_?ks·Œ–'Ú1Ò³c!xÒŒ•îæ0 Kc3E-ö6¤üWćÿgÁ꛳,ç-ö÷«Ÿ#’és2¹=ó^ »é¢²‡fO¨O dž\ä¾PÕá¥.Vî6A °s˜úk‘Èã‹ÅOï Æ²ßµZ:Ifå !HH%óƒÞtýÆLmlÕ‹ÌÙËj¸!â"Ää©äeÈj·öp{D%Šî/,ÌÑbïŽhdjE:´­©"%lñ7Ó&Í¡ù¼±l ˪3rb18›V"IóˆÔîÑŽþvKÈ‚cž› ïTye¢îS§>˜¼5¶ø÷²ìy lÚ­‡q»­jZvÅB(³ZÓ^•”Ûïx—D5éObn®’)aÓ% ‹‹÷ÆJªísÿò^cu3Ê”cüeg-îÜ8¦{3Ÿd‚DTDt“€²¯B;˜QúÆò=·FïÁ'¹üŽæL¬+Âf á‰RUG´Ç²ðê¡ ý¹ã´ŠŒŽXžA:»rC#D˜‰`dF~ªƒà·B@ˆ¶¡ìŒ%N=t›Ýڱf«ûWo¾ÎÔ4Q¿èvÅxá+¬ëZÌ9$×ð8¬'õœ­ÜÆYñ´ºåòVOk¹¨ŒIjÝ©$Vå’äª}ʯ ãô¼ˆ¡@tn69nåI”“Ñ£$eYæùŠjãˆ;QóëHÄFa’7RU”IÑð:2TÉ? m¿>„Ž9àtZrêªÃ§EcÂ+)%ÕYGí–B\Gû¦Ç™>$‰#Q.ðQʴÞê±µÉ}H´V÷¿×ô¼ñ‚Þé2ôxã`ŽSñÍ~Ü PITêì¶d*™'UüNCîªÀ)RdVTe.È R0ÃÙ–Àvš¥ÐUU¬Áb ¬‰û…WEd‘ˆŽª;{Dv)&Y?¾úàH‰ qÝ»Aä C2íÇV—Ù "?ÄoðOÜqèb¯5uï†(oEUmÃqÛoÛôúm\œ† #+í¬‹ùpXÆAÄ##ùd ¥¥¢bJÝS$‰í‘Ãð?¼+ž¦YÛ¯·ùÊU{y¤éýrüB&CØ&~ÿöج«Ôuïø´r0Tf“䈜úwøyd_jb±Ÿ^HÙG,ʬ#wb¡T²!êyxëíÈHžB ¡71D:²ŸJô·rÏŠÜØû=ýñ¸”ÕçzÎøóþø3*/YyV@€°Pžrc†!óiyc×ù*wr<é/PJû®•X¸BP²¤|EÅ©äéË"G“®¦Õ¢dOÀ4gFŒô³F 0õ•ˆ0ôç€\üÈÇ>ûÜz·yƒÂHä³F?xFÌà¤K1Uî?˜X-\×RJ8N¬=@yªíŸ§Ólñ<¨Z+ÚŽÞº>æ+œÕ—Î@nýþ¬±Àûef-ßJÎ")FF fiCBy¥}‰o]|Y8+1OÉRI#ö99ÿöR둾pày›èC´nÏÿÂÓäŽ&ŽTÔó ¢Ú“Ë2©ä×ñ< y-ë®Ê¼ðª õ ÈìƒO<‘ðÜóÏ?àúò?ÿßjæ!§eØa Ü ¬_o§áêòšY\Í3›ôSžû›ø··¡` cò¥xäò~T¨ä…ç‘Ϲá”ñèNÀ± ùp8ÿ Žu|ÿ·Èÿ“ë<8.Iàþ¹ ŸÙ-ÏÁùàß®;qñëß—öò8 0`¿<ƒòÈçÿDúçµ`Õîq´ØíÁ;§­i€ƒÀíËø«7 Çî ŽdëÞ¶º¬µ¥*Aë¹f`¤øðAäi??ããý¸õïTêH³½ž5Ø|÷öìß Ö[œb• ÛµÞ.¾ßn8ôû½ã´¢Où!S#Çê>Òó¶ëcÕ`ÈØ¯_Wƙ㧀 [SÉù"KÐe£+vªBˆûqÿˆ¯´Ý£+¬bü[æM¿?Ї-‘ËUÓ,jpÉW®êšÞé²ç¬>O/Bg¯ƒ×¶x$F¯^Ý̪—1éû’Ån9Cé{Û>¼)¬ìTâÉk»‚´¬NknSÛÄZÕ)C9’Øë%eXK©È/0Óá¦~#èßèÛUYïbðùÙ±»fÖk-å{›yŒnç†ÆiÛEzùkÄ’ÛµŒÇâ0þÕw’|T‘Eqe”+{`æŽ_“9yòð‹Ëhõ:¬VÈIáŽL7hçŽþšZüÔµ´õ¤Ç_V!¦½?™Ý‰ùš•c8~‘ö×ÿ]W\ÞtáKJÞcð —üÇ‹Ìù#F—Ùî¹ÏTÀT8Ïc«gÎVèmÙKømÇÑK•½¬ªÙ¥Q'ªVpñ6ñÖÕ6=_Ä¿P»vo;+Š×24lƒGjlÄñg]³µkŒÎ6ÄkU®X¸ó½|V=gªÍ2&kCÿ‡-Mƒ7±çß`áò>mÁl6¥Ý²—R0‚rüÉÓ´ž ^£2ª¡­ž#œOüKq{&Ñ¥ÜÅø»b—ÇÛ…|åÌÞÀÛÖ‰wjÖò~<Û¿ÒÙ\*ÏolÁj•(µÉ §”ÿUIÌÁqå–Æ*•„`üñ8ñÅœtÇø«Ìy›]Ýw ÞFGRÈ·µ?n~;Ñvý“=•·o þNÖæÁn½‹»D>¾Õi@ñæcxd>‰¾Šíã©ëêøkS«³j’‹^IaÉ'’v¶½ŠŽròMœ¾K`ÙjÁ–ǽÊÂäYJäˆ8åÍCéKéW®íX‰Ç>>ÞgÐ6Øóð»1Âﻑ²íX<íÙf‰¨d3Ùßéׯ<ëŠÓâ¨Âßu0B?ßñ\;P“°§lUÝ´ä»á$ò”åùžÞKÈZ·©é¶úœ'øËëÿ—¼ç…Ó´Ý;cÄxÏ+ãß'íÚöç³5·<’ñîວõ:<^Vĸ\öc³BÜ{v»›í¬ §Ìq×?üJ÷˜3så<¡à}Ï㚺NKjÙSWÉb3™Í=iyÏâÛÅé²9QÁ¬c“9ŒŽÞ—ÌîE¤ÈEý/^[u¬¿ŠRÚvú5¶™-7¾k2Ë¿‰ÐiùN]‚¶Ç™Ãa)da—Ul¥\½”>߸â?£aó{>-[=ݤxWÀÞ6­å &®G&±µé8½_pñ¾Í¸G–Æa4f1ðÏ›~ïÝÒÃ\¥*ÃnËÅ]&Ž:Æ»‘“f¾Œþ’,YÖ¶R©‹Õ‘³ÕòQYò =]úýmfÆ‘ÆCfKuÞí­cK%…’ž9Ú½ÜBÝÅä#Y©±Y¬üC£J:¼¬gÖ%82“tõÚ”7û¦õÀÒ98Îf´udJk¤‘–"ÄHý0SW]«„GÿˆçŒß ›ØnøçÈ–<]ŒûüV?~±”ÖâÆlÙöÔënK¨Ã¦½{ =¬ŽÑŽÄc!B¥èÝ%ŠxÜÎ à>´|aã«{3ôùx—^ÅÇ$þGËRÒñ”°~A»âìÏ—t½';ˆÖáÌ\ÌÚÚüo®TÈÙÚªÙþ›¯_Éb±Ôñ9hhÚɳ‡ô™ô›‹Ëy_hÙäÔ¶Ž{# ê9 Â]ODŠþ¿S .¯†£^ïôì|ÃQWzÁL»W‘êèO§Vùâߦͻ:ùË”hÝÝ÷Ü^gıîÚm†Ë×Õòx“=€¡²ìíN̸<>cUÐí [nØB."5­€ìÂÊú¢GÄX³æ¹2ci©ÔIµµ‹ò¯ÁŒ¡kå­I¹Sùh¦®³š­¬á‘'üE£‹=CH“éïÌpy3n}&M¼éW2[>‘ä*}kw·˜ª¦ae‘2z­‰ìÉZ¬>䜄’ÕŸKþ%”ðúŽ…»ã¼æË¹o-Ëí’Ælø¼výI~D·®`òº® ”|~\~‹rÅü†w1«ÞÉE^jø&ueŸ+BhÐ>Ÿþ“ôhõ\Þ·®däÊááÂîRmuìXÉlZž/ú xIä¿"V¥Ž¬:ú7h±×¤k)W Kê^ú7Ï¡vü6‡‹Ö.Dù|f¯Ý'»¨l9§Ë²k×ç±§åçŠö^:qfv:óÇ,M‰É¼”‚Ã1bâ2 ¼ï+Õ(Ü¢È5)w#¥ãäN¸œ¶»E4Ú»¤H⑳o ¶|Iÿ:ÛæÍàÿn~(ܰ[Ÿ“ôÝ`Ùîkóln—ãìÿ‘ñ¶²z~>íÊš¤Ô/k¹LMI-æ6L¶Ï‚¿¨@V!…Ë"›>”<±ÿÍÄZÍx¿tÕ7Øñ¸Ù7¬^n†qjÿH6ÝCZ‡T¥DÐÄÁoÐP§>gÈÝšy,¾ZML wÎ<¯ãÏ}:a²8 ¯Ž0zéÎx¾3Yœ&Ñ-öÕÆ=,>žk ¹alÞ.­‹kÓå=2þ=VÍÖ×Ñu_©[zïáÝêÿ˜¶Û—öKù{^'ÝæñžI—]ÇjÙ½Þm£Ù]RZ4°±Úöj3ôÇLi㥒@Åçôô!)ó|¡©óˆÂr¦GL£a!“,Þâ|¯ˆÁêüg,ÇS¥¹t1®˜—u-£nð®GR=?‡×êÓkfóÔ•CÙÏÑ1~´éCà/#y¿1â¿ •ñFmµ}³ÅRYhr–mãâ¥-Á1q<¤ZÖšeµˆl3Ðt± ûæ;ÇÄN¬³l±m¾ßµ9°Ú—™v,Tw<—¦æ+çöoïž;ñ¯”tù¬Å‰ÇA„Éb3žQИUÍÏ’£w#ý_{øêøœŒ£ä™>•õ 3qÖö¸õ{ÚÎçä}; ämvøsžöñ·çpúþµh‚•†“ Î5²KžÍ 4k5‚êa~°ÿGNÙ·èÙ%ícB—È[FÇm…})u_©­Úžw-o¹ÉepÓçvýßÁºöÁ-z–$» j¸;s¨3FÙOšôFç-ÔB0Ô&•-K•Èð%dRÄ}ëÓ‡.[._ZQ”¤Á‰*4À¨ÕÒ•-ÑqVà Wÿ‰þ›µICcÅ[þ7fÚr´5íCT;d¹·ýÍ·\~—³k¸irZV½–tÔÿúŸ+Í긌†C Fıáh…KEñä¿­φüá¿i›®Ÿ‘ÌxGQÏxŸZÉy\ÊRKzwÉš„™z6.jRÒšî÷Ü…)c½j†Oq52˜†ÇŒœ©{í“v_}/ø3sðW“²yŠZ–_Ü6„ðö oêØkþWò®"L~Sq‡8²M›'‘ÅÅ'·”™Î6…×Ý$•§»ÑÿšRÔÇØi9[ÐÚÂØ»µmÓ®2æ*þ.¥{W¯µë™ qÅ¿Œ¢oC­Á”¯ïcVk6×²Ì Uža-sœ´9¨jô‘–‰¦\¥æÙET§<[|˜Æg/­- iÒÔžBeDjÄ"”`’†ÜðWÖ”Þ}Ãy^æ#ľHÔóz6-ó:ô;¬[,:ϱG—MvÍ ß9¡ë´"ËËcâÆCo£†Ä$ìb%À¸¯ø•æWZñe »Ãòã7-j2ÛŸ/®ù&]‡WÁmÙŒã‘ÓïÛÅý§ô ,jÞÞn-·kÕ3p‰>ÏØ©Ìö`°»gé«èꎛ4”±š·õäj^9Åf©®S+¹°dq\æ>\ÅùmZ©ÑRºä>æôoJ½‹¤Ö¬íÅ{ÄÉôkcÙ08ÃG1â]kzÞr´îj™œd5CÌfõ½ŠÆ*¼Ó%\–Rwó4ñ”#3I&&é·Œ$¾Ž¬ù“åÃñÜ´uºSVðÆQ`F8¸ "U`¾&œ9eœŽ_]Óf:)}ETe·šœVŒ}“|sÿëþñíøÓjÞwm¯//¢Çê–³ôÛ?°jšóm>I½WTÓ£ü9âÊSÇ«¾xûËxKFI²-“Ô-êp㣇&Z3B7©›¸Ù¥Zß|¯­íX9«>£f ØµÜ›5 Jû„6¶ïê8úVó¬O­zÂYÃx³XÇjFÈØÓñµ4œÁê›Å«ñ-&µŸZÿKÄæìÙYÇGU^I§½5T†FenLÄýï~VòÆM/ÇW|““ÇbWr¿r*ñ×Þq»¶¹„Þ;¬Ì×…,“Y£&7#žØ°Ñ¬Ôò”b§-T?­ĵúÃK™Ðƒ«6Q„˜¾‡N4gcªäoj9ÏhGEÌôuXé@ŒÉ\¥ ÇPPãøxc_ÿˆ]|G†±àÍ¡rXÊ–Ÿå,tZÀÖ>7Ùæò6»âÙ!Â\R·ïPl»nZ¯¬qø»Ví =sBÅsÐâåüÔ²×ògŒ0>L§ä¹m{Dñf—Õ±8én¯˜÷¿à¨dsMjÕ© £kMæèȦAãlñ†¥‰~ÙojGxÝ_rŽ?ÂÔ4Èò¸ís~lŽ":¶¶ 6ÇGjÆÒK–o²äó”vŒf;>«,òOjí8®LÅ¢OI¾2ñ÷Òvå³Ô:ܬÿ¥îa³”оmó°ak-ØžþBŽN£ÆÞôIj±âëÀõdgÍSŒyÞVZ’tþ\žˆ‘‡[XÄ©2‰Ž+#Ëüȯ/­1‘©S“)tF«Ôú‹Þÿ«zÏm?ø‡ç¶ saÀý:ä³8*y?5ØÅÝËy·‡µµjMõ÷ žaÜ«ÁoI¸Øô©ˆÀcbÓhÝ–Õݧ!›»†ÉÜÀRÂ=ÛêQÿÄkVö3u¿í1ø¢Ž×ñæ·¼&ÑN}Ÿeݰzý<þ+'£×ä³„Âæ1×ë-\Äyüìø‰Y«M…›¬Jó>Ǥ}dõ*Zþã‚ðŒÚm 9(SÅe'ÆÖÅCcÈÙœªevšíèXÛ3>^øYbi. ¢XXÈÒð'Ò·ˆ³;Ï“6ªLÙ.îYýŠMƒ{–˜£Aw*UkduMyd´”`ÁY†bºW‰,؆Áµ ëX! ÿï(‡G=ËJ$IJAG…jÁ•VmíŽø-òºÂÙårDº½Þ‘’÷ÉohÿÄ¿\¹_,oºqžÏëÛVÏ’Üëíqçö¬¾¨àtYtkÙ ¯ ûg5 ŸuÁ_Äo¸éq0 __»>ÏVÆ ­>"Q—õÐI¤A$l™¤ŒJÞËK4nCưžDRÄO{u¹’¾-Ûš½ÃPEúoðõ¼FC ®xÿDÍbuÍ·)€È‰Ò¥MS)c.ñ’§‘ÈÞ±=¬]©*êrl7¡’J’Óƒ fŽT‰Xm»êGÄ:v3“‹mÇíÖµ¬¦#Áé·)ììu¼Þ@âñÐ͆IÆÖCW«2&ö¤‚ë¤ñºÚÒÐÒ“ÎsZ3ÔnرˆENÅ2s{]y3jéÃZaÊèêGL§¦D•–2­ÑŒ}{×Ò*§¶ìÜvYxRä$#”'ŽÜ’eiצ@2FŽ= e ”˜XåänB±< ÷•˜†V–4 Ù—ª×’$¨žùì« Ó)¥õœ:%c™ʼKûŠ“/±Ú.ÝÁ0ÆN|û’×ug‘ íénÏwG‘zޱÈūֻvDìJLÂ&šÌxû^¶Ü{ê¤Õ9<F+Ó,S÷3eÓeÖ6ßÃÄhM›®å¦>çÓ~Ü+²²žŽ3­‚]d’ë﵉âcÄ*YẔb'¦Š=ÎPò'‰å*¢ÃÕì4ŸçÌJK;{*_íý¿bZ䨑½ÔùrÈJBåÕV(Â+´Š „Gî&à¶Ž_²‰+ÌK•á½d‰çvUŽ')\4ž%XL ÿ!†g8y’K|CDzäz:o«ÇÞœÓõ1ûg¿y3ºDOm÷jÔÞ¶½ÕPƒ¨P…˓Çï bIe^?ûs羞å©,’׋ˆ•‘$fW1ðñ7uCÊG¹Ö$bŸ”&aíÖUhíó(Ò›«*ó܃! ûŠk”‘ÈH­2ð¦Òícdâ@xsÉLŒ*õ¬n:ºrÏÌUÿî*¼sÄ@æ>ð<Ç­±ø)ô‚õâév ­œçÇ·ìp-+Þ»öi÷ßàž:öfjË‘¼Ýádb•dŒHccwÁC/¸±wW²,#Ò›Š}Xû ê­ï/p¬½#Œ¸~Lnè ™þâð#¢ÝdƒÇ¤Ì\pÆo¯i•þæÌƒ³¤ŽÒ…q®Gš8ÙžÜþÕh¦®ÆEsép±1¼"7ç¤lV2€ƒ2(üÔ§åüIf.ÞçèFrGÁq[<ôáÿ?Ò¡IcUÛpßoíŽÙÃ^m`ëÚ{NëÿÌË«00€562Áf‘ÌWû%weUÔ… '´Ð‚Ó3Rd6 yK…öä’(½‰" X×å놰‹é2ç"$Yc¬Mòdì#Pz†ûƒÂ˜Þ0}›Gþê+Q”Ô›„Ñs9ü\9:³cý·±,*'™û:V‘yd ÉH‰`Ôàn UŒßƒê½}m=3œÈôÚ-®ãY°¬}>œ%«>˜…Ñ—mÝ·?¯µï¸odG{чþ(š9dv’>Ѫ¬¿åP­XÂÜ%g±ù¡Bn 1´ÑË‚L¤'²¥ ¦¤`ŠõŸ„µ:5{<}šGvIïŠö7ö»ÏŒ`¢n½¥š>Ìÿ5àr×óœŸävXà(Öñ^{Ù‰¼[#,K¸12vEd³ÿåFõ¢–y-|ãÖøoÃWœ§0MzSlÙœ›Ö¯›F눦Å~°¼¦3¡]Oñö•IP^6@T$‘ŸÊxø!B·ÕÙÙÑHÑDí+H`#$2¯tẉ˪åØu2ÄÜÉ”„,•™ê`ì°Ã7±ra#<ìüšEb¤—†»ža?÷¦íHz ôGâ­Ž6Ÿ½¬t±ÉQ D²J²¬ÂTRŠ)Iä¯9TThW‘#q#ñS¢_Ï‹TšÍ„Úûù£¿~Ês#ÓiÂÙµ&Õ0þÿKb¸ ù/º«#*±!df z‚J½¯k—ŒŽiµP÷ºŒ}#[Š1!ŠIÛéX†pÈòv”ˆ½ŸÉK<DzՋþå¶í^qíõâk_gÿÞÞ3•¬UäU ²Hª@ÿ§wîéÒÃÌqé׉³Íi»Ob#R´¿d^AåO'JËÀ_ûpÀó!Ïò¤¿ãÃe¬ÝbšNùÛµlí%Êkе—Óv>k˜Çé†$L:Æ ¨ö^?qý’G-ÀB ðèK«ØaÿÄæÿ¡*T«’Y¿éÝWªqÀoq\Jw‰yhã• ‘:ÌÑÙ$W$zšcñFt€­œ¹ñ~ŽªŸ WÜžºŸnFë3ÿ"‘è•ïfÒ¿ÿãÃ4¨dI3tBÀ–ýe€¬ïñ, "QÈ>„>%É’?ÄüÝ轫}ûQï–y.`/ Mîã[œÓÞ«k§D˜èÝkJá¤i™ÂŽª§¬Å€ù1Âz­‡D ’ôÊòÞuคkí+Fû¨!öˆûL^7Z=Ø[¬Ÿq!2FËêNÇx·`xÝÍì[7»Èek€„ÁUê>y®G1ˆI¹n£­âM…Ë3ZÅ|¸P œ ,Aøª…‚T{¦uGć¡/ˆrŒä:ñGŸ%ö1^ ¢Ì/ð\Æ*  Õ•ºa¼­àúñ·Þ¯p4Ò{¬¡ÇBÅdõìýxoqÕ–üdŠ$NHìÖÎAT9jüDÕ”FÞüŒ;¤qWWÈœ†w¦g“í‘Uêä–„ú•#ñ.i-™"¿Žrdu1Éï b¤rX(ê’ð;ÄP…®ü”ä“èÔÞ"Ù¦H·ðàG÷ Î,õet«ÉÔ5mü­ ¿ÊgHí'&_䯾|+§vñA]°å¬S}ï$乊¯–ض2Žë» áú&Ôqd#öŠ2…åœ:(P2•3ÈÂH`iT¢•ï:Xæ% ]‡¯#K[²ñG³È„:?¸¬Á£@cƒ¯'ÈÙZàÞq"ò{U^û`q· ò<ÎÌzR˜ªáÁ}½Ó|oÄV°ÄÁ¹Ýã)Õ‚ªÅ>Òw~JsÇuGàQcÖrÊG9x”p—…Œ쬑s!ä²:‡•ë{¿Œ‘„k)l{ñ¢Ó—æVOåäÊã%SÈRÐÊëÜø: €¬§çî8 SèOùM•yKI–¤íý«1!‚ˆ ôû…%ài8?ô߀ª·«?‰r}ùƒ¤ØI]ÜéÝí•äùƒ}:Z ›¡¿úþÍQÄ:G kˆÑ¤G“¸ =Ó'¥Œ– üÈœÉa¨Ndˆ GÀˆÉ~¼œRZGsÇàS³Þúò`P¾æE¾ácdAê\>!ɆWLÎ3¢$*ÊðMØu~dAŒ1“Ú¨,ü NAø‹ ìelµ6('${G¹,Žª;8PG»÷$uåá™x‡„cè?äõŽ”Ë,&*‚ËÂý½ðNG˜Ç¤ýLyAopûF‘ÉŠÔ)nf geŽ2Ÿ¸eùbª æéÊÑ—cè©#¸|ýê¯ÅÙ @x±ðþMÔ«e¨ >DdW•¹N£¬8ã• ‡ªG²ãùY»ŒÿÊ,„qÿ&V£Jý û‘ÚT÷Ià…~¡ÜªsÚÃ%•&)@U¯ñLºÖ+¶%²Ñ÷ÃNÊr\È«M]}\^)ÎݳÄNò{r"pË÷™$²‘e›ø@d‰I6@Iô@ŒY”zÔÊ 1ªû’$Lcu•’"Т7B$–H•ºÖ&T¾E˜ÛÔÀ‰$ï;¼Vz”±•{v|>F.\m˜ÆzI+q÷Jy„_]rüX·<–?Ü;p8ðùç‘þ~?×›øš¼þ¥dèÓ¾z›¯l•t®1·o‘C“ÒTÛ‡òí½þŸzqØ~‘ÉùëÓ© î?ÛÀçôy?¾~õà¬Ê¬x`Iêƒ؟•ÿoò>?çõë=ºü"~ÀÀ úùõØŸ×ÇÇÉçÖÁ`CüòуñÇù#üŸñ‚Ûü›ÿV/ûàúvã_QKÛúµŸ§Û<ƒNdQÁh‰äüÇèƒûà×<Hç×½zâóVÂrÝš2«ÈøçŽAý|sòßýßzÏ91–Míýÿ¯ÓÇÅr;UïU³‚ö÷¯§1ð~ŸòOÐ_´ŒvqõÛûÓ¶¥®E¥,¯>"æCNÇ@]\<36Iâý»eifg»ÝZ‰â?á?n¶¬p¶ò^7žuÔ<Ã49l¶·£ù{Æêx½;sÔjŒf*,$µ®à-gòÇViv9¨ÜŽ/WA{ü+–Û0?A~7ÏxÿvÛôé©ÝÔpÏ –äÊebÕ©KF?³«Ì–úËŤÆ@ÓνT¤V4KõõÊ0>0“%ݰÝÊùvævÎêßO{²OŠð”•°3m[¦J–ÁÇ2ìz^bì¸ PâÕ|ö>ÍË´‹Ï…œ[¬ò?+‘y­>br)¤CäA˜oN]ÜV÷îr4cÍ|Îmåõ4¡óZ½F£®¢M¦øJ;Õ_g‰&ÿü6¯ärÜ1Iá¬f¿°e~§²˜˜±ºb×»y|éñŽ{X©µC(¨Ü¥ã|ž—wY«Ñ]q:ìxqʾÌ+~ïü16ü¦Ù§mù½×Izx-£1•} üf½«¶^Γq6"VÅÞŸ¼Q“Sµ\X£+)=¤S7J™·VtmkÏñ Ù2^A¥fŽS.GmаUƒÂûcå¼Uk-¼í»0Pµ‘Ç××6Zvü{W_Øej÷æjU¤­°ÞéO9Qý7ö©ÿ¬ï so;Vͯà·|—ˆññn2xFÌ·4ÇÏùÖ÷Œ¶ ^+TK&cÍj5ãÙñظ£|ŸyVÍh¤ T¶:ø_M¼·:E¯Vc],j«-7Šr®úcøù'óùn ¢%%Hbħ{®ÙâXËÂÚ<Äy¼¼3øö-»'¥à*bö™0Ys˜§ål7š³ÛþCÊ'%Ê“mèwñz´Yµˆäc|jCŒ5iÚÇü1"ÇXÜhص-Ê–Ýåo mÛL¹ê·/Åå<>¡õ¿7äŸÈ8§£^+û|Øì­CœÈe3vâ«‘±Êäkâl5o»?Ö.~ÍMƒ%†óFÓœØ0 Éë:ñvׄÕvGÕ¼š¯°fr“cÍxôM›Îbò’Özõräd!je_2ýoì¹k¸JóoØÙv!ø—´ì9¯dðíâ Þçæì†³¿ê:¬cŽŽñ©c|U }®mÆ8šŠ•ò¯`%ØA#ðöU.WœüÏAL•016Ådóžç§œ¥Ž¾ƒˆuJAUb…Uì½óu¹vé—è§ÿƒÿní[>4ØpùïOãÜ…:zuxòôjVØó™ 51mj"ÒëRá²µq¹ bÖ³c ©sІH¿á©˜ln?ŽÉxc ^<†«_µà´™pûŸŠñÚ7žò>l‡gðͺ•}sÈ;ÆíîyxdÇ¥¼&Ýä!£ý&U,NêËɘÝ_|2íz&÷¦\ñ_Òýý $'žm¿xÊ]òß•²º¼É1PMz–½V¾Á7Ê4­Øé`rÊY¸?0}ÜÚæÖoÁŸ­W1æOøë3šÃ3d|k‚É}@ëºãµS(Á¯lšxw!”òžÓ~éëjmŒƒ/jhñóÌë Ÿ!(Â+ÎÓ”&nBÆHìú“ci¾‡2NS9S‰N© "FÌ7Ò8Nœã{Cõ ôi7œ¾¡tÏ:¨àõª¤5ð¹+V›U³¨fmæ*ÛÓ²Pb/ähE´5²Ø*×½…þ­_ÝÇl3߯Ë(«&[þ¹Ì¶§\Êm~.Îѹä­ëÉö0võfÆköçò¹Ö&Õò ržËZçÿ­;xþXñSK¬>O:¸(°·nÖÌTÎ/yúÎØpZ$^@Áo»Èì~:Úešoe°Óê–±^Bò«–ûøðÒ"]‚ö½¯k›]º–Ý¢»v¾F(^•ºòþÏ?^5´,åªU|—{hÂn›,˜ùbðÚ¹ ä××ñ—ðzöý0Í‹†;ö¯Õ•3ÕÂe£‚jPß2Sf+9ü;SRz“å¹ÑJ½_™#wMv,ɳ‡uÓÓçaBü¿L= ôE),Îëhd Ìá¶ ÔÃd‡6)8€$^®7Ó.ãõ7°yo%™Óf“IÍàü‰”©C'¡ËªâtÌÆ¥äѯëØ|nÂè©leõ‰MêÓY(mC¿X=YKzšZ_ÕÔ†™Ëóp’ú¬‘ uDÌ–š¢ƒÝs‡ƒ©>wKNruô$=,W¥‘Ó#ïtý¶í]ÿ‡^Ë[ž…Œ‡‚òódqPb_OÍxè¿‹0'ñ~;Ç·6ý_XƵ*µ7¬ ”5«ä–¼ÒgŒWÈѾ’Nò?„~‚«xÊØ,WÛ0[>w¹Œå½·#¯†òã¬ÇôçãßÕÂçö¹ä“#û¬®†6»P[³b ÒÏKp›UVëW=oÍ_;^íC[›åmS[Þ<‰¨âïìy?eª7ŒpY]§%ŽØë£_­:z8l%zw'ÈÖš|}?¸#%Ÿj@}&í›ÕæüžÁy‡™q³âü—£[“¬øŸ?O¼RÔ¾¤ü™®ì›·vŒlB-WúŒµolí–EÇlØ¢\Ý!=ÁÓ~Æz|·6Î:± ½]=D¢vQ¼9;myâ1æúz'¯¡ÑÒ²ªºéŒªð(ø§?n&.ÿë'å ¿–²QlÚ!|—‘ß3Pîjy,7ª¸úèmçeR“g{BÇÖ¥ã½PÚ)ÒÑÆ7¹ìZ·<Éã­ƒiÏTÂÙǽœ†Ñòf d/,ã3‘ÆkÒ5ì„ót€×É0¿Xæõ欮µ'Õ£ùoêƒmÒ2y-?ÖóúóZ¡kÇX}n[èdñUQ5Ln?ÓE‰é$âŠOÇÕÕúuÞ>©¶¿©«¸?)b³¸ß[¹·Ñ½­^Ðs˜Mk‰©³áªxß-©ïjÇŠÎdvle›re1ÔîX½BKP݆²ãä —JÔ”tçÊs0”¥ÒKªH…æO¦ªÌ›ímú’æá¸ó:¨]4?Ò•Mèí¹·ÿ†ŽSý7‹ÁWÚ¼c‹·‰òµÿ!kòAãœÈ4š9 5 ]üVŠkØü.rö]©›–6ªøMWa´²-VÊËv6¿*Æ+þ9<ã¬O¿h{ýhÇkbÎh"ÞÙ£ŒNã¸n·†óÛ’}B-¬mmŒÜkE2 IVê]šóÛŠ(ãoê/êÛbÆå¶½\y}‚ ÇÌ8½ÛŒñ.IõOãíéq83ã|ýXdMçh³‹I£Ìkx–³’…ÖIxä^Û›~³.$ïØòŒüq¤i¾MÜu‰6¯_ÀC°_‡ÍxÝWE×rqìTµšÎƒ’Lå\Lˆ·ó©KÂ0!ô𢃗ç¿êQ _QkÃ’«4ßþ:•ÕåÙzA¢Ù(1h»Nï~.·>—¯}=XÖ,éY_ÕÆÏ§j:w’"Æèñc¬îupÛT™ÌÆÑ.N”^Ên S¾®Wl|¦bìË5ù PúŠú\¹ç½®¦Â7´×ëVðÆïâß馥›âk»^Ù¦ípܹ,v ŽÖ¸kjÍŠÌâÕ=Œ½;¦.$šJoËß[dó¼,¾g»ã:7wœ·ŒüŒÞÌ.ëä]Ž®.œºVŸ½ê¢·Þjž5Èä§°±yíZøËPÄ‘=‘ éÑ›òç×_1ãqZß‘lUjì+åqþ0Ìš^<©_nתۋM©IWzÌÒÁYÈÚÆÃ§É˜iëLù[Ñמ#Òó\‹£øw–ç%¥Õ£¥ô±Œ[¼å½¤·ŒñDynk殿,jfÒ_š3”K—§·Š³n-. èþZN>fð…¼ö¡­Íæ›=±[¯ãmNcÇÚ}‚¶6š`tý1¨c0&0K= †ŽJ{×›#P{Ì­c¿á‚¡Ìe¬e¼y÷?oúŽ4|uì&…½î¾j×<—CzÐ*&7OQ‰ÁÜÂ-}sˆ5³ÙÌíÌbP©˜µ­y?ëfO&ø&¾ãò.cYËK§c·JT|GšÀbnà²Y ´;6É´æ-Uü Õ¨E—=‰ÏXÆlT¬H“b¨X2:‰3êfú ÌŽ™ãª^C]xçõ­{[Åá4‹9/l~%Ø<=W#å êç‘£©á¼­©ïò윫-˜¯]ƒ4*Ê2QHdåðùiGQå9´Òc¡$‰gù‚–÷²ÌÝx5Nƒ[@ù—¯4N›Œˆ$v6¤¼oø°ŸðØÌWÏm&KÈÞ5ÊÛÊÍ­I’¡gÆøÏôöÐÚŸ’°žB«_|ÃÑÆËG ¸‰p™Z™»»ú±Ý–ÉÈ{MMîÂå$¢R÷“µi’æ[AÚ«jUt,}/5Í/`ó®!®¾°Õ2˜×Ñb³æé!Õð60öâÀWfŽ4Çörãä ­½»ÀHßFš¶÷“µ Öáå&—ä+Ttü®ëåŠÊé»ÎÅÆWÕmf®l·ò8ºû~Ô·$®³áTƘÍßþ!?í†_¹kwµÛ^Ö¤Õ+øÚíŒÍÝovÓuœÏ‘<»«Ö«ù,ÞÙ¥å(PÕW[Ä×´økÛ_ ¹»‰« Õ©¥ðÝ9Tù^nZ”㦲"±Œ¨•’Á"Ô1ŽÜ<Ý4½jþÁG;G'ŠÊlyÉ®ëÛ~FÖ/?BLî[ Œ5ñ׫äþê¶W#äîÅÍê¹ú¾Àïù½»SÔ|²ù$Zó~ñCýc¨æ$Õu¬¦Ñô›“[¥ª_³"à‹ÞAvÀ]ÕD§ÛÉ-*2Ã^åÄc!å¶­Î2Zú~Íæ·Ô°Þ?ÛöÍSrÏxºÎ}Ý6¬SéŒÔv½c+ZµÚ/võ–½8²M²â¡c=Ø!YŠõò:“'©ÈóDñÄ&ŒbÂ>»ihÜÄV÷k†cÍiŒtù½RM¢’•ÊL â×½íž'è[cÑ|•âÝâ-c=ßæ4 ¦G=­`³ºfë¸ë:6fCÅûpÂì ¦mº.Ê#•ry›\ÈløT¶ã },ÇVÜ'}Cä*m>TÇì^>FÎlž4ÙN´xß ±àmç|y­ìºÜØß âP¥}›’«³Å—”Y§Äå¨ÓËÌ–U«}º<Ýå}ÛéGÊ›OÓî½µ§›õ:Ž—c[¶ Û$6ôɼ©kP×ä&,Ök§fö ÚÞ)É{YŠPâŒRßöbz][9õu¤ßËÒñD~i“\Ú|ë´m¶Ó²ø·->Ѻ›cÇØMþb`ïVFÔ5L–»Èš¹èÅОÕkæäÐ\„Àl×#¡éG–æ5tçZë¬=$a[à^™‡ª©§GñZ³–¤¹(jGù5*ì’—k§{ÍÞ)Çw#ôyð‹ Ø°y¾Ÿü‹gÊxø7ÍRžÕãM¯%tl±Ú×ö س^Ƶ‡MšwÔ©¬SŒ0ÇÑ›Pµ^†ÇÿÃ×^½Û®˜Ùê?Ïg7¯ø¯‡4ñÚO¶/åu]Oî/e¯ë¾^|úluuÚY‰p•©ÔŽ•ºö/F’%e×'úÖñÕÌ®½ªWòåz²y×Èû¿‘Ó3;Jl¼–éÿNc'ÈIŠxß_ÁÏ”Y3ïb®µ¯$–Û†ZñÆÏ%GõU¼â·ÌN;>Kåº[Á­atÙ0šYÖ¾¢ò5tо-Øê´9Éoøšѱcñ†â†–Yó"ZjËK.OQ¹r<ÏQ§T‡§%¹õo}—«űӿ#*1¢Á’Ùù½]6ÐcõÅS¿þXøqd±_ˆv šÐÈköqû‹0Û—‰ßw\¯ª>ÅWGC GÈ"®LyÚPQÊEaýÉ/Á"›K`ü ô”<çŸ$y®õ}¼©–ÜoíšõÍz8}˜ò[m­^­©ÙkVçÕëaÜ”ö¸Ùd¡”œG’Œ=–•Í<ñgëG\Åøó º¾÷¯¼{¾RÎW¥¥O§ŸÂg|¥›Mß%å|Ó#E¬[‹Gzù]e¥–Í]xéÑYmJbKéW+õQ=Ømù·L‘Ø~›5o$nÏ®Áƒ:·˜ä“hŽ×p³H±AN´0£ú^IÃÕšôm‘ö„Õùs“5´Âsœj]k&blùË#yÒðºÿ‰ùS¾gBQ’ X„¦(ö(ÜoÇìó«ô}ß§ÿ"xæÙZíMûêK`úÈå.k±Ùª*ç·=p}>þy¤L¤RŤN{2È3 ÁfÔ#í'ƒ³ðñ£“ذÖjïúv+ZÄù?-»®²*ñqÇëøŸkßéõŸ-­ÓÙ"Ìã×]]f+pÄY,Ž:Åu@ÑY¯j+…„˜Æ´µJ¿¨ɸϪº¾oúˆ_ãöíOPÏû3jÖ0FIv«‡Ó_›sxLX»e%[+åHt]iÞ÷ìXËB•Ã-žU©‘Øÿâ1ÛiÇR¯œLMwä¦Ú\f- ó^ÓF{Ƙ*J…çØüe—ÿ[´UkG$²Q\KF’\uŒÞ¼–”utžG™ Òœ MŒú$È®ÿÓkm÷¾+#Ìê:R9­ŠêB2é:zÂ-â¨Z+7t_ïËÿGZ瘵§Œgalefµj×ò´qÑ‹·(ÕÇźxâÒI0„Ün`õ»—#‘íÀŸ QÞ;Vd¯X_øvEK-š\‡—5¬ëþ_c´½k ƒ_Îo¶÷xïd1ZïØ¬ ¥«4š&¯V9˜{¡©ö:¸p³9ÔQB”‡ýBýxøÔ<2ÕZHÌÃåK¹37ÿ²§ë‘!›ëÂÖ÷¯ç<£cs©SåOë¹-::ÈõL¿Žvj³äìæF8U¥“)®æ)êV²ÿo0‹”·r`žÛ¹wæ&ÔZB%D$«) µ"’œ‘$Àþ¥B´Çâ=¹=kñ%òµ4ÈëÂ$u [¿P]™ÎîxÁ>_äÎQêÓŸ^’úv+¥¡Û½Þ+5ž ¯9ÞÉa¼;å ¾//k ÇxÿhÈÐËÁ*Ãs%éÅ¿â÷,­ä\†w\ÁëY+öñ1*ëtî&_+’Îc2V^ µqòYihˆ‹Ž¢Y-Õ·Bõ8/T´´ÔmAºW„ȰŠsG:µk«b‰uûvVj$ƒXŒ¯¦Î3Cñæ¿G+‰ÀøëKÁá³u,ö/ §b1Ø|Î9×¢TËÔ«Q"Êcú;*Cf7*¤±U‹ž3ÊêëN3ÓÔŽš@ŒfõuÆV=AaNÏV¦x} m=(1ž›(ßS#IS²ñ†-þùâ›éžyó^÷¿`|cJ÷Šêl—1þm̾Þl §.7Æ•<•\nµ–·ûkJ6\­ÏêTpïjíb(žÕ¾§<…ŸÚü{²åóú•lvó³xÎ'Mþ·.«>Éã­ƒ3‘·bÌQÍo%«K’Æuo»¯-J³–gg®!õÓ\­©kPÓƒ\Õu­v¾2 ¥:Qàðì4xúY›8Ù¶hk5:ñ˜#ÉYÃàåϘ ¤ï‹ÅYˆJô£öLJGÒ¢š­´ÑõXmRŽj6ãÖ0Æå &þ›Nƒ-c4pÑŠy¤¥NDÏ4È©ÝÁÎò\åFùÂRŽ[ë”_H 6Ê⮪»YøŽ_©N^¢¹®‘ËhXæ€ÀÓÇ8pR^]Þ$ðä]ÓHÔïØóߊq;n?ô/kwµûÇIÍTÁǵ㳙6W™¿¯•ÂÙ§fžvÆrήNzÍ52^#Ê[‰¼©¨xS+³à3zjoÚ§ŸaÊäjgwÌ…ý®K6*WÚ(ãògp˜¯ËZVìkÓj´©D&l¬n)/ÄDàõúÒP+ªˆ¶ÓxWžµùvÃGùlX‡Ls%ôɼؽšÇ‡Ž~ýV[Ù¢ßw\ž;x­—Çjž$—+kÇy~ǃ÷ F®C//’üu~ô ­ù/5,8ðFµ›±f¬ÖªU‚ZJùÁ©ãÿªMÏdÞ®jzöc­b³•(í«å1M0K°^ZÛÃ÷9L†4B—S'`µ™r¶îeèûIjoFañï¡lŒñøÿH‚L²Ý³£‘Žð'02Eiõµ÷‘þY/s´6£>á*úŸ‚çR?ú¾™T]H²›êªÃ²%b©K·6ο+ji}’ØŒQ}ß˶ױCL/}Zì}gg"æku×<“õg¨¦» æ ¥Àø›Ïø÷169ìdñó”+b¯Ü–ÊzÕȤôlÛ­f¹ôÓß>©üí¢nuu9bÐîË…Ñü_¿eíde­©c75òŽË†ÇK…Õ›-–\».³S%$2ÛÆQËd-fRiÒÇJó/BWIÑRýŒ•MLþ±~”Xûù¤Õ±+’ÇÉIqñÓÈ]ûSg!ZÖ&(iÇ^w꘸ã†PÐÖDôf橬åîãr™-S\Éå0’)ÄeòlmÜŽ)ˆá¯Xç¦cˆÕxâˆUGºÓ¼—9 êç:H‘eˆÅ¹XÊë»ôÛ…Ž·()ø~®ë —€j¢å+|øáy"s+9wY~e,ñDZ9Á*¡èÒWsÿPŠZ­È{Hξ¬gŒÖËê$‘vÈå …!XKHeÚžÍ+8ùk ×î@Vàõ^œÉ ¤³ª¨e>çFö£OäÒ'Ù¿‘2Ûà2ú±þ-`šœ]H\†Pö@Ì½È ©/Ë|1+Ôr#q Ç¡ñKü<1¨FÓ½>ªGoµ§Ó‰ÈÄùïMÆã*®ÅÅÍav¯ÇuÑäžiJöd唂Hù`PWƒð@çž~y‡‹ÜªHýrð<óÉý7+û ~8? ¡ÕÀNѤ¿ìÅ¢bxÿ0XžGýñëÈáV‚~G$4‘·!D?Èå•IÿÄä=yŽ¡Åõ¿kO¿n;]N•ÅdÜÃu·~ ©²¨¬1äW—=QÇ^AžÀ€>¶öäù1;#/Tb8ý0ü[’:ž¿<·©£ÏÈ7Y2,³Ÿ‡ü! ¢þˆýŸ×<ž8“Ï¡d=QGK@þ3Ù¾~?û$rTze %Ú]5¿wìçvÚ0"·sc?^ý¸-Òr}¹,IÛ†>çàIbyàÈà)ɽö§†v™Ÿ”U÷AÈêý¹aÇæyãñnÿŸYïºWùZOÐ#"°è‡ö„‡¿Ü~yôb!q€Œ†ãç´`qÁcþOÀ óÏùô+9\€‡j?\ãݼ+ÆÒ—46Üm6Ü)Å×íÀ"9ëG4¬ÃH~ŸíöÔòP|«$×½,Ȥ<®å˜F?@ÇÐ…‘L‡òbJªƒüìAôG?%GïõÏ­£þNzèÁ»í_ÿ<x rxyãRív^ÿ\{â¿BÆ ¡ŒVÌ{U]íwŸj® ÁI‰¢æOÈŽ‘Ï ãžƒðHäŸ÷ãÖ Ìì¼ØHáŒ\¨P…Ç$°?ߎÜ~?úôl¯VçÛü›ñ*§äüüç÷É#ü¯ ;åyž½‰føøãž8ñú’'ÑÆ=%ïníxÿ?LPŒDµÙ·ÍPÅ¿í¾Øà’Á4îÉ<²¨^;T·ÇÁaØ>HõÈãö=ekÙ•Šy‚Ÿo޼ž©ù@_žß¥#byI³v€äóÉ$óòûð@<ÇÇ­Tu¨ /Ìl§“À:Ø+Ïüüñê»F‡ÿÃ;_øw߆躛ÛçéUïö¾ÜX]»¸èGnzðÉ‚xãõð8? Ïr2Weå£%ˆ PA^íð'ž?'ŸßüŽ|+4œ7äK’OòÊ ½~Jþü¾8çª3%ï Œ8Sð¡~8à°ýþ€ü‡óýyºõ!VW )U=Kþ<~<’ I#Ž9øçˆÍØûx··ú¶pÆÁÞÍó«±íÿnŠ€ðWÉ*:(RGËм©ø$Iý’O­rCTðGR?<‚ Ÿ’~yà~øøô"¼`:L ]DdüØ|òO=yã‘úõ–1€¼Ç;õDi:+‚ªÌŠ9ù#à| ä€ ›fFÁÛ§wûçýškH‰žÿµáïˆæûöÈøWs'‚œý€ç÷òè|qëq|w`· ¡ã–?àqÏsÀýÈÿ?¯FSÚ‚²/¨aàøTóþß°?@ƒóë*𼌑‡å9fVO•#ÿ%üvù<ÿ¸ ߠͽíýŸí·¢8r—xvâóí¾ÏÛ€:?$žI^ÁüH sÇ?ûøî>F¥d_‡ë'ûuàtþÐÁ™¹, #‚ì~G>‡êÊAŒ –b~K’<þºóñÈŸ…äzñˆ %˜·oîø'ŽG ö?ƒòè=7]Î-ý¨ï›ûù£‰K^׫5¶{[†ß6RÒ…à‘ÀöÏö"üqø±à?ìžOÀ ü=míž?¼“ÉìOV?<(ý‘Ç??¯ÄŸFª #óo†=zò:ÿëÿùýüøùô‡ 4„vøþÑØ‚ÊÀpO‘Ç$þÏ IeâëÏŽÞ/ü¾ñ#Û|à»Rœ}>•šÞ¸ £ÔðÎz¹Uaú嘃ñðyá,?`úŠü¦“ N¯%[!j&ücá}ÈkŒ9_yf°E *–¹—TŸR±(ŠÈÎÏ#pG÷8ý1$p9©ç€OÇ¢¿+~¼;{ yÉÑˈ޽šBÿ ‘ÄY êO¼èÉö¿œN¾M£tzþªSUåû}CŒÜÜbòú˜Ú äÂÊÛ6þ”×αò—Ñ\ŸÝV:qT#¼DŒfBýĪˆ¤nª:•‚b .\u¨–ý*€t`O%ù<Ž¿#ž>8ýó듾tXÏ“~Œ‘äæþª´µCÐÍ0Æ_0 ( fžÏNŸ•‚ã×YŒ`9 ¤23 ‘ñÿÖàŸž@¾üzcøÍIðÓ¶›°é û í‹ )¤bºµi•\;U8Á}”Ê0—°˜rWò øóò?.OÇ'· ÿëÖTHXŸ‚Gíjù-ó–?+ϯ[(+ÁÄ¡ý+ËÔ|Ð OùäóþyÀýþˆä~@ðŸî'û›ŽHãô9ÿåzÁ&“h]Ö_µñ¯¤ñöíß·ß‚¶‹Ö€¿%‡-òû|ùùøGèz÷ òL¿ÓîÄ"C!#pxçä‘ññÏÏÇÇ??×½gÕeÕ¿N˜²ñßvóG~éBÀݑحŠÛÃÇþšvœ>‘ôUáÇby+àõ¯éyì“Wª†ÊV­ªc¥”Ô®d¬Ù»Õ+T°ò’^(³ „Íê-·õµ±í^VðljôOí:ÆÓ³ù3¯yJ‡“¦ÁÓ¿£h3j7º9Ìl:ÞÙ•¥’Èl:ñ¯’ÕíÏmªë±¥ør•e¾µhØ’þœ£WèGÄRyú[hßüõ–ܨH͉]~¾§I3-jBKñ쇖ÁOÊŒí÷7SéCÅžúX¡”Ð7?ÁO-²[iü¤ç²ÞDÌíûžR½ý}µ”Ê<ù»òæsøºãœF' yeÆã© 4Ò&€u÷9M.COG[F9}SªJ¨@ŽôFÎío\p§-jsSÕÒÔœÍm^„ëè-r¦Èe¼Ž=½}`êzoÈÛ8òÞ{Oñ6S+¥î~KÖµúô\.íK^Åî7´›l3CbÇV\fZ¸·›Éaë`Ûhyq‘eL„ †³ZzvE²-äí{:ÙÝ#nÐüqsVÓnït‘xÇfò¤»ŽÎs;tú²åñXpæpùmg!%¬UFH+A&j_ážwï§/¥ o™,ב±ôr[žV¼Û_[³ä¬ž+-˘*ÄþB“E‡%_Ûk[Åc°ëä&¨o>6 ©îvgrO{Ð~’hk{“·×­áèà¦Ädóïof´ø¼.…”ñùÀãÖ â9²°èù,Ž*²RŒú˜Î659yßk¹}Bá´ÍçRñ´~ã»íyVò®åKr/øòi"©6ϘÇår•2*ÔÃUÂkÔ²ùZtëÍ‘•p¦?ññšØÃã“BòŒ®áœñÞ/ĸ˜¢ÕZÏ–pþIò“xcVÙ´×—iXhcŸÈö1¸;mòàìØ‡`à òGBݹ).˾}ùûȺ…)6 6ɶã°YÝô¶kúö#9ƒÖ6…×rž?ÙZ­š±n*l•”SÔrÂÅ|„°‹K¢žd<ÓgÓJìwó˜Ms“صëIÚ¤‘w;ù»ºNÑã­Äy/SÅci s.Ÿ€¥ºÿöM{L§lFFÚ5†®ë߬œùùjKðüÏ)òúºcl2£¥õ »Õç%œÕ„CWC˜&@±%ÒÉq´¶q¹kWK|D¸Ÿøƒøƒ!w[‹%«ïÚ¦?'¯f³¹¬¶Í]ÇëVµÅÍDZã)®^›îW5[ ˜ìÙÑb³­Ü’µ¡<2=˜›tÿâ'ã<¾¯{dÃøÃËy¹hë^CÝ28jµ5ÅZÚ'Œ5¼û°íeŸa8yq‰«çkå+ÐÇÛ½•¥H©ß£sXš«¶{þ5pzÿ‘ñø{ù<&ÑcÈyXhÙ½±fµëù]K%j®ñ.ߨر&+!šÇXØm¥6¿cBòÙ¸íÚ·Ô¦q™}+S’kfŪ¹_kÕŠ”RÅþœÃcä¥1<‹Û1­Ï†yÎ@ˆ~oA½U\¿rÛ¼q¢:\¢Ä9NjðôúœYQ/5ß#G—Œ>ª³žPÃýQm¿O[á8à¹ãÉîej&OÈØ|·Žñûí;™zÊí kuòËr8ˆ I–zm“·|Eõ¿ˆò>$¡œñÆÏŒÎoTüq‹Ûòø™ð¹M3Nò”1&kEÔ»drÕv ½m‡ ªåìÕ¼0óפ*7õa¦¬Ì·ŽØþ–f„4ùÎUÕ#×­1õÁÔŒ‰GÒXé`D{Å9r:²—-¬AŸD¢D½W*_™žÇdóù{ëCÉš?Ÿ²þ×|OWb¡€ò‡„tÚùs1ÍÚqþQÂ6Zæ?÷¶ñ˜Œv]Ÿ¬‹ù ¢ •¹¯‰$CïJúññŽëµøûTÅj¾@Žþô1ÔrV§Ð³…³d·Ÿ!xî– a£FýëÑCWnñ~鎱±P†Î³«AB½œ…¯¶Ê×á÷ºj_Mü¡¯y33K²ù÷‘tÜ#å5í Û‹½êÐK6£›Ý°¸ëËŽ«cPIdoÀd¡]z¢”_Aaü=ô‘—½àßI¥G@ËÉ ,„GGÕaÙ³»NÑ䊭±Ó"pûÀ›7¶‡Y“.Ò]H¶æÆa‰Ÿ16<×+-)j’#6+;‹è:q…0¦×œ­ÕËKKL—/­§¤C¯¤T…qf@Û½XGžiú»µ¤î—´ê·21é[}OÉ›îJ¬réÚöRΡslƒZ§F<¥ž\’G v¦ÉAR\l,þ̶#®æTIÆÄJÅa©®µÙ/ÅâyÆr½,.¶ùŸß|q㺔^<×3›%,®o°å<“ˆ×jfõë&/]ÏTÈP¿ý8ãŸ#~oÛü?ôòù /¸î\ÿ\Ö‚¾ceŽ? I‡TZ¸¹1uv]«]©‡bô[އdÉAïKqY&nzŒ÷ÿýè=o%l:f+bÑïãõ­_œ½·á2×sXM?Ãúe-¶¦ÅC¹ÙÃiºv­ŽØªË_#k5Û%4Vj{ž†¿ñ8jkêÛå:¥0Ó;×KK‹Ý¼yài¼‹§§¢òÚì¬:‚Dç9S@§ÿ†¿^/×_LòÍ;kñF߯WÈamá—EÉÕÆØÞrÞNµ°WÄkU0yšÙuk:Nr­ˆî¾qå­$£­›G"´^ÍõÝ£S›WŠö‰¾àåÎ&î2—3÷5í~=wsñ®kÉZ®å¦EžÉf Ö6­»Wؼ[Åfªë[eíâïkwpØŒš]žzñω~Œ·mz¾§¦#µì[¿;yhÏà<­kz­‘ŽÞ}›!¼»æ¦B¼Vªìt$Ÿ!HG%¸ýKÁ_HXÄÓ­‘:V6”0³ù+ØÔÇÏžÏdhdüƒ†|”•óv¦Ú<‰°ä“5ŸCj¶ÏºÞ¾óÉg6ÖÄñ8ó|œ‰Ô­”Zêb¤}À¡]Ú ¾ ŽIiåù¦ªUfGR6»—õ‹#úßñv©’ÖôýÄ[dö6ýwÅ›þ;\ÔêiØ«æØìeêÙÉã¬ä14ëd+û6rY‹6X¸A–Ü–å‘\È.ú¨ñ¯ÔÈ0åt]›©ëZ7üË»cwÀSÌê›>ƒFÖbÍ›õ&­â-fq™ Z̲êöÖ|”36(תÜàJñO†¾ŽœxûgÓu¬&3`ÏGRö‰ŽÜ7®í6(höíUÃׯãr;.àµõiêãèV÷©ÅŒ)V²¥e$ýHúdñ=]‡dÒ²:/±ÍcCÍå2;åL¾ CÙ)æñÝ“¿.? ˆ3fò¯6ŸU+‘°â#4êÝeW˜ä'¨é‹Òà `ßU5åwÏê~=ÇÌiêw%Õ@ZôŽ[ºÉŽ+¶Ãõ¿lQxSâ¯ÚÖs~Zò—‹u¬koù -ª‘xÛȯíÑÚqxÌ&Q l¤¥kX¿v¼:Åûuäç%7(ýgë^3òõãÿùk»lÉ 6È옻øð³lO£™³¡ë£É^‡.ù ì¸©é ±Zxeï‘hÌ]æóˆúPúXÅiûŽ×€]z…ÿ(øñ4܃_ËæåÆîµí­?&9§Þ¾¡­F\n2¡¬MV7§AaÃÃË:·Ó3åmëÉ­©V©žƒ<•“h\nZíïc­ä°ŸÓíV·¬vÙ­b6²1_·–­O% øV•$õÇBÃÍræ´X,^–Óépà¡2U½ø!ËÊzuËk:K(ÅõuMëŽnÛ ³±Šº¥ÿ‰&.®á¹Á?6ŒŽ*êøš·‹4UÂä5ï#>ofÖw þ÷þ­9õHâ«®ÁªY|6Z¶*s2¨Ó©e/Ãb)^_¯­ lØÇÉã¿!cvPùKLØ›¥eëjOÃ[~È5˜2[ÆEÑõ‹ÇÇë„ÜiøÛ1Åä3F”’eª\ΈêÜÅÐÇå,âì]|L±Wi=÷~ê“sÊ}2ùK͹Mc©et¿&mzŽ!+™¶¼vR®¿å 4vÍ –°Ö$ÉÙ­,†þ;õéV³ ¬”Ûoë?Dûý—GÔðøÏÿ¦aÇíºÖwhlq¸·aNÝ«1––Þ-s6lךw •Ý,²€ýemÓ^úhñg…<›Úq¸\„6+£|ß^¦F{8 Ö²ÙlM“Åû3˜kWÉìpP½X·A{*f2v[mÝ´žvQÔÕÔæùiÇåHX1ÌÀ©HÐÚîí†Òo+9mhËæFºí”´š’ ,I§ÙM ñUü­ÿ|½MGbOø§-Þ2šÌ[ó›þ_6›ž¥KwÁh{N~j¸›£/íã²y~ ¡<Ô®m7³ÕRß;'üAô}@J¹Ïn’X¿ãÿ¯òœø½î§‰¶‹–n¬ÏˆÝlAZ•Läñ׿ˆÉcÃڊјWwi¢Ï-ÿU¯­ã4köücWbӚ킽[¸Üå1{®vÕJ­sÞ]kúÅlnVLꨭ‰µY‘%Ez%¼êGúW·ï?ì:f»³i¢L&ÍœØ5kÒm5XwÌ]ükê5(Ú–…8ïoùJÙŒž/ñC’Í2ù5sØ„‡ñuŽ{—ž™“qéŒ"æ@A^“ …áâÉ~c¥øMAdcÔ²“ÒF=VÐÓ°•€mFÞÃõï[_Êä𼿮WžHŽÞ,mz”s-ß ëϼù/ùÙ°•»¦U¿›Ç[K3IŸÈÔ“]EŽãµé{ÿˆ$c·xtå3yÜV“Þ4܆cgך¥-Ý4dìff׬f ×&ÇÐÜ*IRœ×õÈm$ð[Ãâ*˜d¶òÖöo¤/'˽çò8l6¥ÔvM²†÷WÊ2#aÄæ|ã§[Áls_\¬ð@­äl†3î+ÊëÄ‹Šûñzw }as™L6/ãÄË^Ó²X즰û´®’Åá“5íëR_"µ ˜¼FÖO%í(³*9{r­…W,¿˜:<÷)(Mĺ¢$/`67úá+€¦šüÎSXœ3G\ýX[¶Íß/‡ˆ_õÝ_[>[Ágüos?šñ#ÉþQò.Y‹_×SDðßèê·vÜ톷~Âï9c>·«ãèG„½•J“ä'šŒuO`üaõOŠòwš¯øŽ®µb£3ùV-{wÉfñqû-¯ìMsnŠLmKd±°aìR¿*]‹%Y¬OY+Ë\µ–GÆ¿A‡P¥w/†¡Ãg'¹oȸ٠Ø!ºØ˜súþC,rb]§“4pÕò˜ ²X§’d¥JÄ$ÉgŽ·¤›qjžaÓö`2›n+bß5̦OjÄkùÔ©å)èçö«Òâ27¢›6ZΩ«X@¸g¢Õ/åêi~2†ž§9Ê‘:eÑÕ b¡)¬ xV¤Yî“/"L9mrIWWb4‘“œû‚_§ õÿ°ëW<ÅsÊþ0Ÿ!ˆÑ¶0ejͦڢÐê^+ð•H†Í“Ùÿ­[IöŒý駇ú^ÇœŒsfxM6œÌ9o­Èµ¼åý`ð~ãCÊX–»´è©¼jvÓ ­ã|}¬yúÜ‚éÙ™/ê»5QZ8à­c%vŒ;XñÖÁiéZÊUÕ`Ù+e3“ÓÊ`±8ù2±Á÷Sd y|&'Z¶ZTö¦ŽPC#DÈÅ¥oQÓù|öTc(j@é}H¬i·§t@éhá"è@MNWU$“„©²) µr^Aì™Øà‡‚~©q>hòEŸ.³êùj8¥¹C3³Û¥¯ÚÜÛ€Õ®ÛÌb07jÁ ÌVUö  ¡œÔr»• Uj7)ì«…½¿^¼õ×¼SÔ³›?“Ž¿Ž×ýÙÂMu±©^@,FÈ5é¼ósçyyéêi1ŠtDëbÔ‰P½2#ã⮉œ¼Våµc2q“!”’Qô¾¤ÍwÝ(»®+.Kþ"Zž¿[6{Å»tv”Þðþ5Ï×Ù0“ îž>ò¾«â ƒ]’…`ö´ê™M·nÄ]LÍ÷¾kÓK3S¢Æ‹l=—êÊå¯.Rño•üAН©l>6ÆRÙü]›ËøûÈW«ù6O¨'xšûä2¸Ì®kRÉê‘ãt|}äÓ¯a°û.6ü’ÚÍá𹕳ˆ¬þò°úÓ4m~îë†ñ^Á¯låpú†c°ÙÏQóg5ê[F[YÆCiß)C'»I…Éå³tƒGŒŸXH-Ðfþ _MàN¥7‡u&Àÿ§cÕßõ¦t“.Ï’ÞV”Ö™¾öo{pÍå¶gȼÇ%k5“¿5¹‰™‡¤4þ#7¢ß/ªÀ„¥Ë/é•E%Õ[˜ÑÃJ|¦IåµtÉXH[ÇI`Ëó_pþüS½ÛëÊý­:áð׌çÄÐÓ3VvØ3öðSatÚ›>[fÄâðØÝ?= Žgú–7R¶é‘«j–=\u8¨Ïö×Þš¾ÿÜnC†—7ã½£)ƒ¥±ø÷Mܼ™_ZÃÌw"è’nº¤ØïÂ×f³VJñ¾6öB=‡íjMÁоHÿe¡o¤¦•—]°þÒÄÚž%uÍjE¤bl^ Ö²5kB#,«BîK!-+v–YpÒ_¹^³¬w%ËCéËÂTqV°t|w®b±örx,ÌQÔ žý|î­†|±•†R!½€ÅJjãcwª HÜÆO¡Sâã7ñZWA?”ÄpE@âý»dGÏøzËêt‹&ßR»‹Ôà(~èpÏú{ú‹ÿŸ=× gÇ/äôísÅ[TÑ_Ú1;Ul¶Ëx¬ÖÅ«ˆ¦ÃÁQ±÷+ã1)&BØÃfüxÛMJ$y-Ìjª9â1ß`bŒDê#T¥È’6Fûjb6ÿ·p«­vDd€ CúiúQÐ>—àßIµ%“òC c5“»ŒÃà`‡«UÌWÂãhâpQEI¦‰3™3¹ÉÐÞÌË%9‰¦¡.Y¢D®Ì?Ô\ÃeQ#ÿO$(?øåùýÀxŒŽƒ1ãÖÝ/ÄC—Ðü\‡XÕ:رJd‘Ì| GjµN–+œ­Ò°ßÜÊÞ3Gq¾æÝƒjû•\'ÝNÐÁ7ySj¤ˆè9Œ_ØBÂfî”Cÿ8»ÓÉG$¾Ñ`ÔˆÔ+§÷™zƒ·Ì¼–ycˆÍÊ™:›bBbP+0 Äæ©ùÆ $ˆäåLíáœÉ,ÄÏ=tþ{èØ<àQy°i†•ä Ë#PJ©Â;/Ú£)öœŸu'‰ÜÈ,îIZ[ÿã¨Z(ø_[$d(ˆÆ ‰ºª¢þ@öR±ˆK]JwéZNE¸É[”AëЦ@ ö®[•‘ƒ~(x"Ô%Há,ò:òi¡ È%Ù/Ò&0^cÛo+iúp/nß\ý/5¥p,™(ÁÙ^Å£xÄ…å… c–•é*ˆÛ¬Ž¥£U#%Ô”z.êq¢0~ŸmVGYÇ0C d¯½%¤EMÝ©(éq€?§Ì!yVº«þ"ä,ŒÁËFÈ„õ®ñ|ûQ¸éœÉ0ë ô8YQº¸PUd”*¥[z7páYiäNdù¬Jè8bîVS|w¹üq:›Mðe,+/z«3@mÀ¥ë„ÏâJFñ:N®Ñ¤a‘%ŽÄŠQHX¦1ñX+á#_Æ6\û¬Ð(,ëP8ë*ÝãX×’õÙ\­Ò¢A+ñ‘gÊú$rí3‚dÿ!ã@Lˆ:J«ð¥@W’5á#/óî’I{qrYTð¬ïnÊ—N8š)¹ `üÉy8èI_G ˜åMßr€÷¤¿û)ÁÆ:b${Ó¶S€ÆÎôñ‰%v&V­Ô$§´Ï i™»þ’nwE-^Á1Q ÛÖÿu•æi«Íìi%"Œž8$a&Þ&âI!cŠ >øue {v:¢ûaæG;ôPÂ2X“†­öèLjÅ`ðóï§È‚°"):FKC J¨¿{"†pHÿüÁsÞF&GCèÖ<;Ýmg³Ÿ/ J‰rx­ª’ïÇé\”ê¿$%ŒýTÈBdiUBÍ0´3H ›$V;uLKsc€‘+L«Šrߟlñ«—ÖtäN1d£›LEùótìôÞx¸©˜Ç¬Q Èâ¹ã•‹ä!AÖeg‡àÌĪ¥‘ùPÀu$Ÿ5ŽzFfÉãLNC}ýhÓ… Xû‚våA_–䀊X‚ˆ§¢…‡‚ +^ÉàXgŠH¦`ÏÍ™&XÇäîÄ-…_ćcèaß´Z¤uöÄa`Ë'qÞ¤_+Ó˜z±¤9ë,ž\Oá]Gþ¦ªE1º°Ç«wÅym+Ž‘ñ ´ü–¨½÷³zìíìíeÛZy¼sG)L–0J=”(×k?ŒHcvp%öÛÝ8Çù’S©+çqSJðI”Å–Q ƒN£ör?ÿ³ •ÁŽ"ܬ²³ú§´j¼ÑØSVÜ¡¬À˜faìå:’½ÄO;7Gæ÷Ä‘¯ð7´\^LZ„ñªžåŒ.¢V-ÑX…6ù°ÉzØŽI2_Ò¹_2Æ"K5Yê*©û˜ïÄ~!¨Wò/.-¼n¦Á]–Ó8ímÎo¹6EÈcå½P†(¼–à± #~%‘—£r¬ƒQìÆé,™ 9cVûú ÆýÂÆ\™»ì@SËrÄ|ŽGªŠjß‹0±%iJìJQ©Y!ðe§Œ%©H¸Ÿƒë'v¡ÆZ{Ï'åã«ta<ÊJÒ,D«ü{f3ï(ô„hUþ+)vîHý3ôvâ¡»ju£+XösöâÜäòX£ìê˜Á"}Ãô7«|*Žà¹*‘¸*üXœ)¯._ 8Y28£2@§#Z@ p¼™Ï.ц‘9r9*8QÅL·N×ZàQ´$1EVšXÁ0(eêËܺD„$ñ~²N "C=krP"£rYäꡚ ¤úð§¨dŠË!$Öò_H|/KÐ<ÑLžÑ@Ç™…eýëÝNW®W¢ÕcsQPÅßÛ!‹âÜ ¶.Jë$¹ZJÑŽˆ·k(rS²…f—–¿<«p>#Ž}$ÖÌbÞ5ïÆÀ¬è‘ƒz±f,äF©Ý‰f‘Ãá ¼ýYcïê¯ÇZè¨èXy†L01·ruëÌE$^k~¾Ýû ¸D ­ukFËFÑ ï#=iˆè$+:Èþ <ÈŸq$\I¨²Ö'–á¡ð3¨üI„ éBÁ·×ÛéÚ‹/†—?¨±þ@˜)%…¬Éí}賞-ÉÉàÊ™7‹Œ®Q/×A=Wûå'‚Ü)eá{òƒ’=“7…NsÆþU[!X'+"$ÍÇu`k•›…_†²ŸUSìï$ìBÔ‘";™g­7Ëu%¡U Q$\qkâB}>6ËÄÎØëÁŒÑ–¤¬Ì¦h½åPá–ßwþL…OˆøtôçÂônžjWuùcXþc-öïGñú´°°›¹íuã?cfß>Éû‰a#‹sêÙ ÊǪ‚ÝÞU*ªÀ–ü”1ã°'ç³x9+|½œ21‰ïT'ˆÊJü§ráå'ŽŠCª;z©÷ñ™V`±cn*ªG"XHçFá‹Ûüzž‘p‘vü#íH}À=y鿤¢¢lmÖ~õãŒ-iø+2vñfàüÌ}Èd>ÉÕG´^ŠæBÜ×Jö.º«íçõâ~?PÿòòÙí/·ÖÌ›^7ÏÊ Ö"*ÖõJ"&NÏr°V†Fæ9û£(h¤${.¤#–çѪûEìrدó/Wn4ììÀÎLm‘î†ÿ¶8/À z¨)eÅIÚ,tò<­Zs¯á#3B†>’G#^/“]IŽ=†ŽZ2ë..ÜHƒ€b«a‚ôª*âX‘K*¤Ÿ”ðò³žQ=I|'De|Ôníü¿ôÞ:¾•›ñ²ðcñ _Køpv·¨È@}ËÆKÛ‹O{ýÿøµøg~Ø*[‘üûpK¨ Gùª•ùôcúö°FÌâÝ™*¥È·h„œÒŸÚ7e`8(ëÐŽj;CìVš8£VûK*Vþád1EÇ4¬’dü\ÿÂt¿-†vªõ}ÿîqWÉlGÕÔàÆ}±¿vÎg\s“–¢¾Ìl"é“DGû‚P+B“ˆæ$‚#ŒÈAà)çÒ‡úŸ ³ fq žËÈRKµÝž(åHêL£°uˆÈ S)( `GªŸ>3#$r1Åäøfà-9”€¬LË'ãÛ—aÚSÿpÉÃÅÂñè)áya†Vg["ål# TÉ2WU)8…±€†"g^?£·H‡ÈàvQ ‰ò@ž?5#íñ€}YüJ¢üéït‘ª¨Þj·úý;0ø´ï:pªº…ÛÞœ˜¾ï¬íZê—ÿâÞ-\pGkiÙ”ò©Y pÇâ5-Ë¿½¹ãÖ_i×Òóé%cÿíJO'€ŒÄ¿îf Ëú ‚I}TÉáoɨF`D@,…9n½äˆæ©ú¤üLCÖ鼄‡bUeòA±«<ÇVÈX‹·l‹ºXz…õ?‚èá5¥x® ¡¢½ñØÞŸc‰‰ÉÒ‰…Tv(ݧëŽ-|{F c“¾c6Tï÷@«É'"4VW#òàôì1üTö#Ôiä]ŽŽG‹†®B­™ו£‚à(ªbYh¢±¤ÉZäŽ!¥?¼“’Ýoj(¬:Ï"ÈÞÑaÝŒ¼*‚?Ábà,¿MþGÈõ˜¡ìá4iLAt?»Ë”òdr$’ŸöJÈ.·Èôú_ ÓÑÕ†¯ÌšéÊÃÒf‚éÉç·›1UësòÔÒž™€¸²ß¸{âþÜ@n†)<‡ô{!uD¯õQ£Fª9G…ž ŠªìäÏÉ/Ж–iåâI)–¬.ŠÅ‰í³*²õ ðOÏ$Ààr~>yçüúäïœSÿ³ÿ¤†uŠGƒê«Ç³ÈÆ^ÞïÝC4«*Ÿû±ÄXEdžQ}uŒipT–fäþÏä@Ÿqÿ®GúâüR7Îj{éé·½eÆøÆõy7ã§ÈtþHÀÜö´‡pËX«ñ›± ň<vüöþ%‡Ïþ<~º·¬ž)˨'â ìfòxcûà/IÞ)äò“Éø??=y³Ç¯ð>Iõ¸î€·_–v<¿ >Oï¾Gèsëùþ}6ÿ·¸!”Aý>à@5ÝAùUoûþòDA$üëÞµÉhÜžL2*cÉ pAàqÇRÜŸƒÇ?¿^õF¡!*NÞû¦ÿéÂ=Þåeêðx½¿±öã‡ÿOšroÿB-ññjì›oÓ†±­Å=˜RíXçÉêPAMæ¯"Íxå’)+VL•ø’µ×/ªBšп‘ô_$è{^ÇÒ"ƒ³xëq±²Ö£±ÐÝpxÿiù=NÏŽ4÷”ÃN l–ì2ÆHc’¡–äikߎÜRŒ?¨Ùÿ‡.™ ‡õ»L0Ï$wÅù4Øã¯?Ù"g·#ª´®½_+9[0¤GuíSê¯éOÅU¼£â)iXÿ-ËãüfS[×rO/¿Ž¬atý»-’òVg ¾MoŽÙü‰œ‡_Ösú%hã«É/´«–³W׫ÔtˆrÔåõuc¥ÉéÎzš/垟Oõ ‘Üj¬ã™Q—9kiBSæu"iêD·«ªØÿË@ÛÒžw¢ÉyûèkÉždòæß¼c·-#XÅæ÷KÛF&Ìt­ãö6¡{ÁØŸÚÖvAUóÖñ÷ñk”-]û0ïU1˜ê÷êÏfd,¿ü9¶˜1W†ŸcÇád§“ÅSÓs˜ìËi¬ÞÝáùe•ߨ׫$Ï_x‹'Ïc,L3uhez–ø¶³?P_[tlÕØßRŽ1¼‘wÇsèµüMb½=lx\ò# ú¡Ïθï$årÚÝ2ñŽ¿VŒXìû˜'¢Z>~ú¶»³ê;úêòyìW‰¼‡€ÍùZ׆qÏ6³ƒµ¿øáv Ƴ„ÅuÂl1ap—syh°¦»›Öè4r°l|ªqêÏẓ”žWœg©¨Í^£Ò×SddKŠDÝ»8¼9ØB15¹b0„`/j ü´'ÒªÎ.G™>7O ×úu{Þ8ÍÉâîÞËÓß(d¤ÅÝÈîqTjo˜91ò ëäõ‰©K4¬#†ÇJ¼¬å¥ô—ô·ôë´øïÏ^OضZ8ü ë´ô ϱË^ÍŒþgyÅhæ­¾:Ö­KÅØ¿âül7Ý2dàƒoÙc´;wZÄS–ú†úÑŸ™ØõèlKŒÔ´} mÀ‰<'‰[~m“7åý—NɦS* ZLòè40ûTÚö¼Ö6ųyV’?R¯Ó¿Õ’²;noçð}–Á¸húG2øÒž³ƒ§¸o[燡«G“ ‹‘’ÀÇc1I—±±†¾°OÒS$Î5hKÔæ´ussdS¨T˜U;»¡X¶—zã>¤yÈhJ ô§Ä%Ќ޹FJ`ñšºŠï\4(Ããdƒ!²M-ý ´Úÿ”qÚ&Rž¹e28\Žû䪻êm]‚¬usXŠ¿uˆ–åÇ´ø÷X¥“ÔÝôÓô›²x'È^JÚ2yŠùq±ëװծѹ² ¦wkxÍî°l~3#m°îëc0ØL.F¥36&½ÌœòMG!8 +ëßPv<¿õ+kPޤž'—ÍŸOY Ž.ý=¾-»7Lu?w#ã|¾=¿¢ÔÖñF6]Ьà¥à×T¿£ýWTËø“Æ`<•oÅž>úµÖ¾¦lìÙ)oä¤ß¾§um7¢ØšyMÛZö¡¦7–·\¦"VzÙ,QÁY’³Åd¹] q9.c®²Œe×.‹eVFŸM2«k°ã‹Økëi\¹­–0”£DZ ¸nÂÎê¾ÊPÿ„ÆÃ[^ÅÕÖwjuä³ã!jþA£W™m_1¸mYež–í‚e—!ÂUÇasÐ’ݱD]^RÞŸ7?á¹_^µ”m t;:…×ñûšî›FM2Ý+WÍà³Y¼wbÍ6é e »™1‹Îê*ö(×…±ÍÔmÛ„±~¸¼Kå}çÍÞqÚu/®ÁÕ|GáûúþÊÙm¢¶å®d+ì2É›»áèö`ÂÚÝÅÚ<¹ËÃ,2Ò R[ÒöêëNÖ{É/c ~®Ç65½®MV÷Š16³Vüw«y'C«—ÅjùˆÓïó{‡<={{ÌâeÈ÷³ŒÜðt*ãÇÚdlBQø|'«§©Èó±' ³eÓù¥vQ{¶¸Ÿ9(iêióZReõF`œª£Ý\÷/Rñ3îGÛîÝô£âoåw¬~Ý´øûÁn™Mƒl±²É[7ŒÄæòÙZ:jç)ß‹hh1»Õ°ÜÃäFs/¡ü…³vI\ÄŸü|µK^Èâ0ÞFÑê¦ß,µòx¥§²ZÇé8Fò®äz¸##‘ËÜËæ»¶¯5 MªÝÛ³µÙi¤†4T0}B}zÁ²h²úÅA6Ï¡aw 8ùmŠ8+T¶½k5³æi[ÍÕC“Àæ|k•l^³Ò2•ï]¤Ã0=쿨¯­-V¶Ÿò]ƒ9…Ìh°ì[&J‚±Tîc6ý“Å;U½U‚BþÍ?!ã5õyå =y²µâµ¦çÓOSáš’Œ¥ËsÑè„t¬°‰¦D/Õn醸09â=Öå[”¤’b’”ýRG¤¢ó7C‡þ»¦7)†–¾ñ¨bðøÏýL˜ì5=†ÔÙNøìåIe3šÈÜÍc*Ù“-G®Ý¿”ÅÒµ ¯÷«¤1¤ÿø4¶,nŸ¥aðû>²SZð÷‹Í…»®mùýƒ'¬bð8èÈÇduèmfJʨ}èü/§JQåùŸækü\çŸË#RÛ:KéqZà|Îvå_GªF·¦1™&¢t¸«~–vÞø]½ÿ]æyóQQÚõ;ºýì6 ®N,ÍMç%.É>¹ÄÅ–í¼üÙÍVÍI1½îeðY¹á0ý¼Ù u‚“¬o¦À}0]ðnK?¢eòY?!gw¬•<æŸONËa3›ÕíÆM+1^œ¸ì©ÈÙ­q"á¥Ål÷3T)íÅ©,6!š¸yßL ÿS{ÖsÊ9óv÷¼äóž¯ô°x†LíÕ°ÔìÆ3©„Ù)XLnŽHËos³°BëœÃ“ZrWãÑl‡Ô‡Öø¬ž&µ\æeÓ¯yН22ø:C%¨üVÇM‚½$m—ï|0ùS5“TÙ¯šË•×Ó¯#¡-sW—Ö2Ò:'-I1ê¹ P#/ê2•‘vk«]D´õDbFA„Ê¥zV†ï^ k¿ðàÞ°[Ÿ²ÝòD9Ì^7aµ5}/‘Þòÿµÿõ]Ž–#ǙÞË[¦°-d3Ù r6T’@¨Õ÷ü9°•°ÿMXÊÛ=\U¯oÙLϘìâ1oUüå¢e÷“äÊ:¾~À˜Ø»j¶ù¯i¹<}Œ„óÂøüVC b`žj ¯å_ªŒ~Õ”ùO^mÿÅ>.­µK“ðÆ/6§…Åíy nçµc4Ú!°Ÿ×–¬pçêaR5S[ ¶˜±DSÅy;ë_f¹¡Æ3Ù=__ bn_·à}nÅ͇ ä<ùÓGÙüŸ˜§”P5L¾'Å:·Š·½ŸO¥Æ; ’ÏÕ¶ê´íÎMþ2O›WšJJ"È èq`îpÓyÅ‚ó<¿LQí’¤#¾vØ¡jð›ãøuìÚ þ¸ÐsxLþ‰­é¹¬ÎwTÈf6mé—rc›ðþBÖR8µëÙ¨/Gýo#'òSÊG!†)•Ôvÿá˼¾—’ÁÒÞtÙsòKŒÇáò¶ÆårPá5UÖ(m9,}ÜÔ˜[9¹$ëg-¯Í‹|]šë{ÖYŠÝRþú‰úÑÏïÞÅù' ³Å„تÇGj§Œðæ ¹»ôö«ø‹»VzõäÒ*¾½{6°ÚéUÆÄã'°~KŸê§ê3êËBóù­x[QسX½,ØŠ¼WƒØuì”ÇÆ×ó˜ì®¿žès¹…—o¯2ÒÝobüŽØx”¬@‹“á¿+漿4™£Óž³ª#Ôw£µ¢U5Åzo8ÌÒu´‹¨JΔ%Hâéíô´¾&Ÿ:ýl_POã,FÍåL– Oñж| ~§‡Á›y/*ìø¨õ‰÷‰©æ«e)b1ÐàŒtjµ~âOx¾6ÝgT™aËßA>RÙà8}·ÈÚ[vý›ÊyŠêÙ/êÖ¼•·ý>êÞËÍjrOˆÿMô]ý:1ÔKXëy¦:k,ë «Ê¾JúÏ«ˆÚtmÃaÜ-è;&±Ÿ‚·u/§ì ýÎöÓžñõÍkͱQöÕµ¹vBøëD©Æ_ i#Æ«¤‰°þGÙ3/òŸÐW6=CÉ9]+Wñ¾Ýƒò$ZV·›Ú²8®ÁãíkF<ö‡g3Ãv³ÜI$žÔd Y}Æ #ÌjjêK–æ"(Ô”ç(’$ü¢Å"G=Ъo‡oJ0ŒuôdúØ‘„^ÝVIŒjJäú7µ4óßðôÊíXéä÷mw^Ø-yg+¾eöÝ+^µŽÊ®«—ñ<>4Q¥i®5Èq‹‰rmKßXž e†ÔO¾®Ð…‡Ø0ÛWr4³-‡'•:†«¥ØÇi;é“ôé…Íãð–-Ù®virH·«%*’I"ú¯GS‘€²ä¹¨ËV2ÓJ0’E“µIé¶Â…NR<̨üN”£§8É“éID%µWOjClØöÛÿá÷äŸ!ìY_2n~^×ò>\Ëí8Ió4qþsZñbjx/çükŒÁV­_;g?W5VžÉc->s#•ž:· Z¢´l3£3 ÿŸ ZËæðÓmZ^¡¬iYû¶t=¶Mn\æó²}ß‹uý(²9;G‰z¶Ní¿±|ÍlÕišTÄÅ©#¾³×' G«”æL±Bj΋¹Éü­†Ô«Ÿ ¯âÇ£™Ð]íVÅD¦îêÒŠÚÞ&_ ÿçý ä:{Þé³êÛŒUGd\]rÕ¨ä÷ms]ÀI’ÇK’äQ¶¾ [%fJ‘^G Éb¤.Kh?ðå³®&˜ví¯EÙli|'…¥b=½ƒ•ÀøwTÜõ„Šôy+6å’ÆãOf£•ËF²òèInÀf(±ÚŸ¦_/î»®ˆÇy+Rò5îŽ*¾K!ŸÛuŒN»ŒÙ Éeïã°‡Ø`1xGM®W§'[ÐVjòæUd¶=Yг<²…š6¬5‘¤ïÑŒr¿n¨àŠ7˜õžuø¯cþž/âaÇg—øw%ÌhiêÇJDBÂR•™…’îÒÕmž9úÜï7§­-7R6ÈD:]‚ª®Ýðªr2Çü0³w¥Š§üÓÇÙÁM¥nXk5Åm‰28ŒŽsMòˆ]m(æàÆE€¯óÈW½Vw³¡sŽXä¹Õåkè*ö—’ñnc³xñó>ƒéö#gDZMˆÙ/ø¯Ç5ü{·æg†…Ê–áÎmU«É›ÂÚ’Wµ¿?õÈ5EÑ´šÜׂ3G§¸…£ip ]zx\|/Ž8>‡xVŽidR2° ’1#“ÖB¥­˜Ï9ÝÇñ+“l~ÉF]Fš6J/Z¦Ò*œAúwâ¹|C›B2‘IHq]µ¹nsÛ=ø þPú2Èí^^ò˜u þ›K`ÍlZ{¯oZcìÚ…á¬ë™½g+W}ÇÓ»B|äY(3äkÏ^zö ʪcEÛ«Ûésé#ôÏ6^hòðmÙ šG‰4œfÃÃC_e§OÅÚ… õäÉs3KBíÚÓd £‰^½Ya¦·fÂâX˜×IŽE 2Á“Á}¹¸-ÜJBÆì8©ÿlóîsëw·=c¼‹ «ÕOÄ„‚¨PZ’³4PÎ)ÛÝqѽ6Ÿ!Ëië~"0½N¦CÔҶɧl¶ß½a.¹sœÄô¾K5… AÞ±O›ßÏ.­ÃGghÊäÛ“ú.Sê?^òõ,XÆ´–iøÆ®ÝؼWRëÙVH6]“'ÍA”ˆ kb%± •ý®öÆ7-¢>{tÔ³º×‹¶=të´¡ÓZ­ÍÛSÂù +¿ÌÞZÉYÉOã¶G&@aqù©!ZpG\´õç±'QÓ³g¤Óư/D÷]¡i?&fP¶„üò!yyWÈH¿ŒD%Šã’Ük™¤’hš ‘O¸…A`áxT1¨è½S«GâëÒéù'Õ_Ây%d颤¬šx°.üå«xÇóTf"Fâã¹þ¾8£_O¿HOà?/yÊx]º Ý/)e¼¥‘Ûµkhakm[Ímß@¥¦Û2»jQjó®?Ѝ#£±ÅÅÛÈ×…ñ•¤ë%ÿ ÜþŽO¶ìÞP×6HÕ÷6­cN™!Ž%Ï¿=[”d¶ø\tÐýÉÃ]ƒކ¤öâl³Åf[rŸ]X‹¬Q7d$¯vq)ò-ÝøV+4“Ʀ;6““‘®¦‡¹·)Ì££Jî…BÝ™cQ|1Š«UOÂW9ÿ•9õ«ø_$éÃOåÍ„%-H2WL‰"ï&×x>·Âþ?™H‘z‘„fô¾“ëÿÇŽZgÿáÛœ´mÈ…lNbæÆ™oep8¿ýCî>}Õ(øÖj™ i§®Ln÷õ}Ç^+-PÅbó‘ÃõŒKÔƒ •ÈÊ¡Œ¤/òâTE’VrOi'êL–‰ y@zh§ÖÁ*U¢1†FSÙcüÿ„ÎCšíaKÁa‡yç-A϶S¶±£?y?ŽU’ÞçHÒ6_Á‚qù:Hë(ãäÆü=YËòœ¿-Õ-°5ÚÉS§;e6»Ù®ôëó:¼ÏI«.¯—€ Ï¥=»?n<@E#–áÌ=XÿFàûpÎ#£†6öd…KY&Ê !PªèÊÊÝ#,ï"ÊêëÖYÄ«ï8obã/½mé¤è8$.‹¤†h:ÏHÖ'Zâ6r$n;ˆLÀ9EüÚØIÔˆù3¯b‘ŽªI^Ч«ŽrTr;ð¾Ÿöá$KTäú× F•ÛÔ”ö7öñ›ú_ÇqüÕšZ«ÿNÏÛY˜ê¾ÊÈG&gXº´M"+sÛ··=œÅŒ™–9C{ËÂáX“T²½ÒHÎÃZ)›£ÈªŸbÂ4Ai«Ç#üD#u±%ƒMǤ”†Õ¼d‘Õ¥(fB·Ë2Çù,Gƒ’€ d>äúq$Šºœ²2:vØaXË„gV“Cš­ý©4 ñ5™? ÿG¸õ›R-éÚcV8ßÏuÊ?Bú[¹8›Ùé/6Ýç¿úpÜ÷@;u2<žéSøÄÊg) ¹N¨†?»e )[þÒ B,ö$Œ4+3´eº¡yb_ÜA‘˜¬n_‡„7Yn^áPüéu2Ê#M ²Æ¦ ‚j|·ÈöÜ7ôäàpòÏ ¯îRöÊ×"+©ˆ?çÉ÷%›ÿþaÇH êä…å{+î/ítùL€J©µ‹YÍlÿ·JlΈ²K ¨­*´ˆPuVA("ZæK%kCw‰eŠc.9beFS=˜²*°,TFð¿!œ´QhŒŽL*þÝ G¿ ‘{(бRc*?pz+Lý•˜ã'ÛšT‚ºÚþ™üãþ¢ÆÁAT`ìòHêÅ‚õŒo‚ÃùTó @lˆþ7çŽ}G¤WÞ²¹1šqW¿g8à •úcÆÉuÝ?óÛIº€Ü,Ü*HäÊìÑ4rºi î²N¨Ó4 O)Užº-c!;¯¼dyà˜‡ué$r©šoq"÷Ñ#>Ó°‹þäNMuƒùcgœuõïužEé²ôBJÆzžLM×Úwc¶yeŽBW‰d ?¯9X˜¢²Á$q€ª¹èU܈ †nLq‚\XIüDò= _æ{]î—vf±›ñÁý{·ãoõÉãµwÄyþDÐÒƒª¼¬É"böVu•"—%eqB;Èò™½À]Ö…cn’™aåTÅ,àÆÒFÜÅÌp¬iÒ}”ÇÞOr9ã»9÷$(Ó©àH$*?Ú^¿s,Yÿìþ3?iSíI¯<õ÷#B£¯ %…f(£±¨¼Án•>„A1šLÕ}×4v8*Êä¾ï‹vØ~Ùûð$rlB£º÷°y€…”ˆÊY’+\ûW`è¤ä5,Ú °Á-ešñÏ(Œ†á™g¯-™º7ÙËÂVB‡Ñ–@§‚B†0ò %H߉,eœþ6%™ ›SÖä8âå¢>¹íçø|{ê¿I­õ[O±¥Xð6Èp°ï–²àÎy6 dbjIFXáLÒÒ’AMÉiV¿g?È€ŒüÆ«¥¦êd³ dDÍUË4^öź:2lJ6^ Tª²Ë«¿¡¹ÇCœ•iÑ’H\³Å$SÆé,SW–jö ‘H?ê©þ5n™ ,ŽžŒ˜Ò8Â:7 Ø”˜ÈR@9–Gè­/½È-4E–ÌC½1ø±}_©?'ø§ÆÚ6>¾ç“ŠGKÇçµêÛÆ¹O/—Þü_”úŒÙ´ßÚóû$Gc¿{#à|^cÉÙÀ†Øª5ÛÛ ŒKð~ÏÀЋÝÆî¡29eì "ã°cûú<BÆ“¯Rk82ÙÙ‡P?c¨>'ö~–, OÈùôbé=Fè@T‚PY×åÇ'àsþ çÖÉË)â eÈe*¤ž@ãöÍòù!Àäò(IÕ™Ä2c×Ûb ª’„¸` ýBøþÛãÑddZº³'÷wïÛƒG|Õ7½~¿¦ûðUtQº¯ Æ9¾X,zŽG<üóëIB¢3³C GÑŒî D“ð#ø±áðÁãÖêÜ‘Ö9žV rW ùøåWž8qÏÖ+aB5Y:yG!½Î£·Y?žÀ~ø!”üð@>§QäÇkÜÆv÷ú}ø ²ÓØË_èãÅÖïfœHÿY¢øêI`€×Ï?üòxùÕ…—ç±IP˜žaÔð äöðaÏ$[•3,ˆñ–‡ç8$H|)çžXOèÏ Óî¸^´äüº’Áø,¼ð[‚:×ç‚ãõéJÃcIk—»îðp¾Õxº\V|þØ÷Ý„ºÅ$ŒÊ‚2…@$Ž¿¯“ÀAóò@çt’ÒÈzº…!þ ³òrH'€X·ì’OÁàh ‘FÆHd*d.ÆO–çžOåÇ$rC§ò|C ‡Á<óþÇ©ø~J£ç…?#ãçüzb•îáó{g½­^xœz%€W–ä³»òW“óÀøþÔqøüqëįd^]øef.Àû<°,¤|°íÇ'Ÿ[ȱHäG°PÜ(%xãçüþåñϵüUá‹” XñϯÀø$¯ xxÿ•Ž{ײPmu__®ßxŽÉŒ7v7’Ï?¦Ø»¾5<’僀ç‚Äü|ð9pIã‚ ¨=I?¯U?i6fÍ y&nÊç”JQ‡+¡@¶C¼ppÏVÔŒöˆ©:kšU°±ùv,Çãôb8CÇÈÿ+“Vv¸çFh¨Ue»*/ˆKGøº’Ÿ¶/`e?ý®}±ù¯®ßÁãê/M:B[Cê;Y¶vVž9ŸN1ŒšŸL²Q~7k÷á¸ò3²DÖã’2²¤¬Ã¡ x[ øÀÛ)U!xTf’´°,‹„/ îGÝ…òZYµì´!˜lΪ¾eG 3‡f#„HG_äSÖ;oÃÙçí™#äzÐ$±<¼²<ŽcåMÄG„ íØ¯ÈURLtœ˜§ \ûiÔ•,KÈP(ùFTþv ~"Cò,ŸÅW“4_¯^†Uý/<#\s,‘’£ó1“ÉåOâ£ò¸£î†_G¤6ó³ú^3Ûi·gt™»ß{@7?ñÁ¦n½*2(qÕ¢”r¯ó'r‰ÏãʃÕz9'˜ánÙ¶ÀB4È€s+Æ#Þ0ܬ]½Û2?%RÄÀ,ŽÒ㬄©4!_ÐJòĬ&P¨¥øìYÿˆŽfv+ðcsÇÞ±þO€ÕÇÇ>„£eFXи• î¯~¼•ÆiÖ!µT´™,9÷Õ½ GÀà¶f·ÆßêaàŠb‘¦Å¥ oà_5[n4d»u‰FEtƒ7ɉš»U^J–aUÇf° =%FY‘$b±Ÿ’]R/xUue–¥˜ÿ©Å’ë$R*U*Ç%Õ”ð¨CËü±2ð{'aùý»r;×IîÉʃƫ#¡'ÙT^dî¡QåGöÐÌñÈx_q‚ °ät–¸ þUoJDÅgèÒŠn…ý+Ç}¸1’E %·°ÞÙCï⊊ÿçY'}ãé ¯@«õcãRxH¡ŸrÂØ r$h”ƒ4kü×þ¢iy#¬LY\¡<‚ìݸn~>HíþIôJóÿ¾>y/ç9v朗€å¿øVø±1gkS¤>ëüiÉ"šsL}»õœÉ"»/¶¤$žI$ö Ÿ×þ$|°ÿçƒð=y/Š‘9ÙŸ—7fã›m»öß‹áÝ_…€¶|ÍH»vùiØòï³}ž0ä~,8=Töå‰={|uê9É*O>²ÚXõ<qäþù㟅$òÉ?>¼8`x/Ôöä“ÇÉ?¿ß%‡óúõãË2“Ûþ8  ÅGìóÈçzçq·ûߟgm¼÷½¸)yœR¶9T&=‰åSà8$|þn~9à}{ײ!~ÖÐ$ v8 ;I€BŽ9'ýϯzªm¿@ÿ?Ï9^*“õK¥A¦±äò_íåx×ôiµôŸôéí‘ø‡I‹¡à˵„§>áÿ«-7a×ÿ:Ë׿«Ñ3Ú‰Š˜æ)$l²Œ4eÕÚ7TnÒ!tYMeë,S(ºÝ¡^¢¼}Ç*ý(};€xùM¦’¡J°•pµdˆõ~?›íÜ(RLS× fNgcêÈHd’Êw§^®Ü8gBUË}–ø{šîD~¾‰ðôü'*ï|¾Ú_å(GÞð·UǘçñZïSf¼Ì(by˵ÓâÏ~a£Pf±$í!¹G uy^n¼gà²?+yYf¢Ñ0Ѧû•*ÊþJ¡»3ô•~b—ŽëÉAÊÔåºfŽô¬åG õE B Ÿ°±èÁ'~yá£IâCØcds]GSÏ¡xd ‰vQ!xªÀ•v:gª y¸[+ø£qjõIÁÞ‡kk&ågëô¬R¬Ê-X™wïçôÏò,žàqÂ'cîºu;‘Ö_û¨¤€b?Ÿ’kÌL²qج…œ=Œ–6ŽFÎÅŒ®"ÖJ…+³árcc.K5”‘±Ùé×ncä·û{˜Úv­5{$M *Å$™Ä#¡vi}ž 2HÝž¡GäÍfýYOˆT}`G?ˆfU†# ~J²‚6’ °¨)x®óð©#XÆ+4÷ 6qŒcƒí…;Þ6Ú¯4WöÍq´bDV%ÙGâ (¹#粸öžI9ìkõáÿ¨þ>Å@JÒ¸v '^³7+;Ä?Áؓ٢owfßRô¦¤HjÌQ†XÚï)1g+ 3C,F@:GçÀ1YÇòE'eÆzÄr0%`w,í ,¥}Õ=8å\òŒRÑöb!š±’æÚ¡ôjó…;/ö2öÛM‘¶&ɱN2x®=3ÆT¯(õרƒüèaæBV0Äýj¿9un W"4šY%@ÂY¼Ž^2£ÝŽb®¡ÒxÕ ‘]{J‚zÅ L¤ÓB$h¸já?eö¿ƒâ%GoÉGãÿKÈV˜Ž8Ö? Õºpx%b! €áeùö\ËÁŽÇ'Ø›­` rR)õºê½Á7=«l¼ÚšÚ¶íãɵð{íÇïÊÊIíÕãf/Ïe“±"4d/¢×š äÚG‚CË8UáãXK~,\„ ìTº·$rÅÖÁf«k¤AÐá¦dT Ðñ<>Ñe+þQ‚¿°j’“?=Z¸‘$Nÿƒ;‡cØÇ åÃôä|Xtü¬ª¤|+ŸFÅJ1·ÒͽŽÛÝ}ÃM=«}ý±²vï_ìnÈÞÜ’"~À4­‰•ùÜ$ôößþÜì®i¹‘$O¸œwÂÓØRÈTsÉQ\,@Èÿq$dV~2Ìí «sîÇyãZRû*ò‡ž:M(AÉVåe€y”qëEˆ3uI[²P~[Ü=¡1ÊÄ—^G0wáì©j’ª£ÑBé;ôÓ~Ÿòóï±ÄÝ)GÚíE_m¶vxÐO31’Ga2Í$¼:Öf—Ûpîòþì¼JÌãùj <ñ•’ÛÑš@è~¯n²‘ ‘¿ÂñôŒ³%šÜYÍØÊÈbÉÕ‚£0)Áè°œ€cpÜ…rÖn`nO·Tëד)Urá'ÃržÉ‘’C ñÛQaÂÁ äïš:¶ºµ0Ûý·N"÷¶ý5ØÊw3Hg~ÜÑÌ­ÝdfãÛ( ¼Ê “¼¼{–™—•Yœ·ý;¢ž=oî)$«ÎÁUz“/rd,ýYyeBÐÄ}ºáȆ°²¶²Ÿh/‘]ŸÜ ´y••Y9aøZve=W´éøÆç¼#Ž}xÄüHê[ÛI:H$dì]T—Ic_ŽÆ ܈²ÆÞcîÀj­«hÁäˆ ¿Ð¾9¼ îѽQõãdbªU!tY%0*‚?i¢oÈ[Š^QØÀxõ³ûÆ"Vi€Ü•fP•}Þ¯ÙDL«pÒƒs%eJÄz7ˆ¹çŽÝbÂO˜û7þlWãîÀâÜ_ÆŸ#ŸZ7¸ÎžÜŽ:0PìËHöB'=µ¹üDLÐÌLª¾–†Xµ²ÕoAc}¶íBç&«ïïŒÕû}oËç ©h£ ¡Ý¢°R’9ïùÕn>ÞRÿ²¬jÜ~%œçŸ<Óü´,á¸a/W•[Ú2(Y#¸v‘œ”K,9‰ƒÐHŒ7¡×ðFY`ì ÊÐòÂÓFvJÌÜŸbAïž?=lìë °e@ÿŸfâC”U üH‹¨rG²ðða&pÞ¡œô—e¯sÛé‡aÜßiKå}¯Ûõñ}Ï\Äûjù@ƒ³»2{LŽ lª¢ogƒ"\|ê$p¾‰¬E~ÍűrHnÔ¯Rt–Ô†ºŠ’Ü•§ŠÏ·b×Þ7õY™¯4TìWU‚¿E4b/#Ç·à¦0£ä•& Ç_uzöŽøÙBVoŸÞ"ÛßY"3ך#P¥Ï‚DmÞ8­ü2s%:õôq#!AyÏckúÝâ»qè ÛfÿУ·Ó<cbOvÝ ü„w‘cèCÈÖERD‘ò üÕÁ²:úwàJcD1‚Vid ½R‘òNÑ—cþ+×í%fhÔ¢»³ð‘{aÇÀíÐòü’u…?Ud%¥üOIY4n"£fÛp‚9eAÙyhÒIÓ´Çât™»"Šr1+ÇnæÞ÷{[x£ÞŠÂêœgÝïÚóÆKL²—,ê’Gy"v“óŽsÂèŠ6{«}°æŒ›Võu¸ Û \Ó}›oÿøF©VÔÐË Ú¬Ð{ŽQ^W™Ø8Q9ŠÅÖd^mÉÐÍuQ^˜VŒ†Þ¥k'b"¡äªÍ-¨ìÎÊ¥šåTXdëˆZ1²9rnÆ@W÷Oæ’1è‰#“ å—°Œˆ_cgœ¬fžÕea*}ÁèI‘åÚxÖ4ä+Ä…ƒ+va%^U¡Eà4kÇLÍjBRAê:’lq–±œd¯­ÕCn"#iuõªÁÞ¬Ûý3º0>åßíÛ‰6ǰXûHÊ®Ëîv°ÈAÈ!jÖJFPúX‡³†?"5 â>9ì§ÙœÈ#HÉh!/Zee¤ªÎˆþ¶c/¤p‘Ϲ4Ž¢r¾ï½1àtîdRÂûÛÐå¤!SÜ$çñ Ä+Gn¬½‚¼OdÇhƒ3?¤S o4Ö÷t5ÓéÁér•Æ^ØþÏ¿ 7}éâxÒ¹R’F(F ¡.=Êα!8ÖP%î\÷‹©ÊÅ5å2YW‚¤LK1+í†%ÔûÏÄûJ¦(éâ`@uö˜ÇVcÒ(Óáø÷A1ûœ»Lxsì¹>€>ëY”ª?gE&4Eë!îêÁ¹W-À‘•zQ~}Ÿ†çÔ%ŠÈç5»à§n£Eäl?§Û¿kà…(:´Ö9í1d€öEf‰aVZÂ&î $WVsí÷xòLîÑEc6¢vdªc†UáÖ9¤E13 $ö>ërÈï±+Ò9¨oKBfÉݺ¬J±²²öáã&V½ÈÈ÷-â´Üõæveˆ³ GÈÅT˜ŠÂOž'g_Æycíî/ ì õ VåïyÀclövûy®KV ÙŽæ~žþ/~ãöã„•Þ@,{N^ÙIˆCõD‡íäfê€4X[<Ì ‰2úJF¯îF­ÇTRT‚¿¦Œ‚¥”<Ìeš>Zi¬²ª•ʨҷbˆ‰± Ë"¨Nèä³Ô^¤ûlµhËqiZD´LÑ*úËJ$VŽAåH ýCoîCÏ2§cñe€iý üTz¾/£ß~ÖvoôÍVáÞ&Xï“{Ùïý³œp+¢ƒÄ | P¤~rÀÈ¡DLòÄÚéÌ1D!³A^Ôr1Õ2ܨY €“GÖ2RB9€Ê$á“ñUGÔ£A=·6;’4jËIøpZ0I"6“©î…dQÂ$gŸ¶_•ǹd°J8HÖüz»šdR¤3<ñˆP«î†%cÚÓNÁÄÌUO·û¯[[KB$§$–ú¤}äÝ?Li´ôõ5V1âí£oš7«=œq‚~=Àd p†Rñ†êbü¯V2¯ð-†.Ô`ˆNO@toÀèÀ*'µ!XÂ;htURVäUT•ør%ØsêhONázæ‘ÇÂðk coÎO–å9ˆ€þ8$U±2õe¨®'+ÆÈUÞ­§®ó•ç ýŠb^U¯X® ’ãƒdÉâ½.kKZRŽ”•LQÛæ„û}xyhjiÅ”Â'åìÖöc6c·ž± sÌ".Ò2‘RVyi$fW˜öDbZÎÖ™¤+±”ÿKZWDpvH8Xav®9ŒRIÌ­¹ Qð1-ü…_±£*ÅÁ£ Y8à+’;s ¬}ÐD&ÕÀ3§¥øŒk¬[ø FÇUcìÌH1­öÇØª)0OÞÆp§Õ¿åR7«6§¶Ö]á)+Û§w7¥HÁm¯bƒz¼ß‚üp„ŠVNÈÒtcˆ“ŸÆQÌêò†÷LVÕ—À-=ÆD³GÚTá„'·¹,ªÊªÃ™K•—ÜRZiƒIT°ÏãN†I$$y *¤ŸÜ&Õ—ÛêÓŽíÉ!“™Ño7åJRô{n¾¶’5ü»†aÉŒ#'ð„Dfv‚²ü3)þøŽŠL¼ò¦²ë& ”½¶ýr5W÷áÃ&ß_¯/tHb#ჀŸÊå;·r8âbæ¤q¹š½ÙL—ÝhÊä4Æ5öÞQ‡{Î ¥A"OqþbŒ’?‘àP*?åAB|ú&]ºÆS¡ bÞ绑S¹¸›€H É”¯üióz4’7UsÙ[ª’Ÿ‡+2#’>ߊ˜‡ÄLßĉÌ2rÿ>}\›Ý«Û‰ÜÏÖÇûlþþ1š¬Ž^ËûQ¬³Dªé4fR8Þoˆ—¨h€Œ3Ĭv\›·rPïZK22KóŸuв‰W°ë$ªýJHeOÂIÕ½dª«( ëJ„dd ) þ$F Z'¿÷™Zº~æ˜'ë Sèx+L&‘ÅŽ‘1Y¤Ž^(\‡Ê‘ «€îéÈÆ¿äƒŸTέZí¾R颲Õš*³ÝÈH‰,Ó¸x7^ÅÖÝß”]ˆ!S#èêVè+Ã!!Â/"æ,=žE©ÔH= nŪÁ~kXRâdG:*°è#œ²»ÈÅ[ÛžT2\oú)}¨ŸDò ý¥ŒLÀ¡fE„EÙ¿%°è8y9ï)[§ðn=0XiZxž9âoq¦PTG( ( ä­¹@åÓò¬¢@9j¢L)¾/¹µo±îdDõ7çÙiQìvß·ý‡³ÔÐWˆ¨^S¢*´EÂÈ$B×5ÙµRŽ*åÊ"ô0Z¹§bÔpÞ?©À–g‚w…-Ž‘äªÕ‘h„†k%€[ÑFŒÓ±sܼù˜B=$º…¶€ ÁõûUÞø×Ëêü™õêÅüµe)vß–êÓß‹OïO 5bª«ÃØ·”¿9nK0<ƒËûüú<âV¦âN1D}ƒG ŸŽO?çûIø€}Uõòß45 \ŒÉ ,UVº?`1þÐCNªÀ^"’ˆ„ÈÐäÞ8dû‹°2…‘Ç·]GE‘ |HTTNÝÒ"{Õ™D³lž8’ø?2Õ:$®Ú›nOkð?j«ã£/ˆèÃÕ"lP"Q…ßoïÜÙâÈT“¤w$+É ûèÅGäKr’ÄŽ[ç‚=ªöFfxæ¥ÃÆ vçðtìy#ýÔ äUr‘6âóʬðÖñZ0 B­I'‚²lÜû݃ÃüdŸ[ï{‚nßÕª‚qJb¯·q$Ó€9 ,QB£…¯!°9*¡/„s(õifœË-‚ƒUYýéïF?Ò˜!;¼˜ÁÝqôúgn,¥‡»oÅ]CCÀÜsÊuf ¸*9`?´:þ@ž±aã–â ÃöäHxbÃŽy`Iù€B€Éÿ"®Íä]¿î¦ët4ŠÐsÖX p1ØÂ¤mÝr×£~bH÷¼¸"DÊFŸÆA^7nOæ óÀ¤Füûa Äߟ£ðŽgÓrÓ®š.Nõ»Gší_«B<öŠÈé2ºÃ‡§½Ó»çjâÏ_aì«ćŒ/ À䟓ÿÊà•'’8øsòVN9#”=‚~ÛñB ¯_Ñ#àHàòÀ|óZ,ùq¯»’I8;u­ DE¥æàŽâ0W½e±‘Œsuàqä=UHɬO"Ã3FÕàëu‘GÇ$­™xëYÂ8nKGàÜÕY-#/õJƒÐ›'o|îÑþ# 2ÍvÚé¡ö§8Î.8²‰3ÃH*{§™†è9ø9?<óñð9øëÊÏrÁØòCª•FàòA僟Ð!¿$qû«ï»eš¥©ý¹Y‘ú»«ðHúöê ðñÎ6âfáäÄ~@ÞY¦wÊëÇÊ0´ˆ ),œŽ¤9’0ÂÃİq%~dB¾„¾ÌÓëÑ»¼ÍZzC¶WjrQ¿xóú1 ±›` Ä|mwº¾/XʆE°¡GÇiB*¹cøŽ@cÀø?¶ãöGŽ}‚Õ™Iåà*$+4’¼|“ËÉ(O søþˆ#ƒVéymyÀ‹,Å%H‚׈!"Hš WótŒ ’•ˆg!Ƕ}ït÷Œ‡.39Q Qv *Òzø°÷`ŸŽÓ2škù²“ƒó7—IÆ3â®°¥ø{Ö|SB¢tjnÕ±µÕÓe{bø´ˆ6Y¹DRäpÀ‘Ô+/<ü–øãƒèÔÒ4uáhØsÄJçŽ~ ç©øçŸƒÛŽ9øÁ<Z«#ºòv=¼ñªZ‹¹Ëý¤`Ìñ™8iK¢‚È ù– x¶@³@X ä”H&"bÒ–,7#‚ÈîÈÞvƒ¤R?R–+ñplGÛÐ °°éÐ{ˆ¥V7*Í¡Yå,}ù!Ëwsá¢ýç‰Ô…ˆ¼‘“!P…Œ„f$v”ÇH¡Ç!ùõØ ÉX¬&/ ^/é¿öî8Sd ª£{ ¾/¿ŽW+¬r/‡¸1ƒ»rQ?uã=¿³"ìy#_}#e<‰O ÖB3w“Ë3,NÄÿ(>åiy«ŠÏ ÊJòqÓˆ„LcW !‘‹…•xƒÊœ¼Ñ7 e¸™çF3HÃâHˆùùÒ–‰ŠÈ9ãòÀÁDÀô5ÿ9©†Û3Ù²žê`«¼_Õá{™¯ûQ}®ªŒûxàòM ªïÜöXÈ„P%dG$~'žØþRˆû®]Ç ýØTÊÉ+±V^oÊeÉ,¥˜Ìœ+ÊTœ¬L?lįMܪôIÚ$¹PW¸öƒsÿsÛr¦«‚›ˆ¬ñ@ô2I %—ñwcÔ{®UÚ9zõV6#sÍ9B%uéÛÔh·µg¾=(9Íù÷ñ\Ømµû¥×þ(K^ I× 8YX^#bʾ×oq ‰tù ›‰-V!‰ôœrQ\cÄ~âE+cñn@þ&&XØu¬?– ]G¡ 4LŒ¨^(À$a˯aÙ!îõŒ‰öäbÌ{|Jºsc…ì›f•ÿ¨ñ*±ãQ`]}8¯Þy•“múQ²ôV~"¢C&ÞFXƒÁšCÁœ:FÖwªÊWã­D±fëÛÛ%×ä~\“Ë8ø_ÏÈ<×èNyéc}‹é]ܺ§ÿ ? 11¨qÉΔ¬Ýÿº(–~¥]G ßô¼…rÞºÊD…Ÿ¯ùwåÔþˆÿ~G$(ý|þÃ×ø®yÙµÿËÛÝÿS&ùo~=ÃsÊC3››óWïôÞ›ãþ—¯pÏþ<ž~ ÿÄr?e¿dzܹp§†çÏ'¨ø.O+%v€Ú–¦:¥ZO8{tÖ´ãeªœzL×üUãmVW±­xóQÀÍ.Í_py±˜jTç]¦‚Ø5v,QLµQjÐû˜ÙEd°òÕ ;3zÊòë/ýíîO2îD³j®ÞûSk|yÎZ1—G*Eôôdz{¶®Èìù jŸ‘|¥äüßÑÿäJŽ»£y3‹z—7̹•‡˜=û­ärø}v}ö®CZlœNYmë$šŒOo%¼°³˜‘õ©)\ܼk6O3â|ö•ä9§y’]’!O‘Š),^—Öµ¶ÀÛ×eÀb&Á]Y«Ý× òb®AqŒÖÒzN†µ¤˜¹sVT1Ûõ›‚qÞ9ñöd—sÁèú¾#k› W&ËKN®fl]t‚…¹â£¦íz¶W6©™©qsÛ¹wAÒòÛ&/p¹©ë·vìÏ67g·†§c-‹›€ŠÔ¬N,|Ö 8¶,ÈoFp:.›ªäs™]kN×°y®ì¶l¦ZüͨŒÍ ¹ •Ñ$´Èö&h;uþ¤^TnH‡)ÎG˜'ø·äüÆn•ÉX®‘GŠºÇËÁ—3£ò¥“üÞ€5œ k»GæsœñD¼£õ-çMNþZÝÅé#• ýú¸íM¿–²©ª[Ž}AþDúVÑ÷ý»SÙ.ì> ¬G¨¬Þ;ÀÐÖ¥Ô²°i;N;rÖ ÇÏ•ÇXÍøúöL>2|ºè¶ñO±CPãvg·•jòŸ.Z|Ì’H|¾¶$nV¢µßµ"qf3É„M^\(Rt6úzbïl²_eÆmâ“Xú²òv—ŒÅßÂdüQ¯hØÝãÉÕö{Y¼fÝ地ÿP[•@lL|ÛOÉž?Õ,cþÐá¶œ‘åìD¹âø×õL% B<ÿUpÑáÝõœo|{ºçµ³Î[=Ý—bÑb‡’ÇjYÜ5=wÆPר>§µÛz$=mý‘ÏÖËï™}rÝØÄ:øÛqÑ=L¹ãärXl–SEÕ²Y=föC!…ÈÜÀãž|^Bí¹oä­@þÉâK™¦»’‘KvÈÌö á›·¬äv-ý{i×dx£Y3¬3dÞâ†[,Y¦†8mKÚhúSáÜùuÏJ5D+«Ò5ÔAu–»­åáŽs—¼rÝåv—ZżÉmëŽ{yê§Ï8†­o|m‰Çnþn±á=oÞЯg&ñìšþ®cÍì™ ß™¼a®n;bkMƒÑõ¶U‚åi2öó™7›ú QÎáõIæ#x{†öõáå5ßä­ìs-ÿ©¼Çzï•'ñå\lj2Øï0Å[D÷qøÈß##åׯo–d×i]“\ç®õ-©ê»#+ÍëXl¶ /ane±Y ];´26ýÂâåšòÄÂݸۆ/'\8K·ãoåKúF«rmb²ãõ„±‚ƺëÔXµ°ŠÐé@¾ß»V:³c”˜9²\;uøÙ1”# *S¥Eþ‘J¢¬¸½¸Hó\­íHÈ”©½6ƒBƒÓãdïÇ>ïùÏ|(n™l—i¼‘«¯ƒ¼%¸oÕ¼ÁŸÙŽð÷³ºž_cÔFJüs¥UÌøƒrÒmÒØ+g§5ÏH2:&‰š¡ŽÅeôÍo+C `ÛÄcrZv)c®O3Î×1ðY‰Ò™–˼ý#PÏeœÎLn}oþ…Ò%Îf6›^¸Ûw65°Ï‡¡ýW7‡ž²»ŽÉ[ö;ÍRÕ4ŽžB«1‚¼k^º\²ú’äùÀ¨sr„{£#¦T íwF:†Ý¸‡1Ë4Ë—´¾–Ë´lýñUTÛÇ3óþ|óÕÇÄ:†áå`ídvÿ§ ê|Ö•§ætÜhÂyRí|óU3~[Ë®oZ|zGˆÏXÉÒ99fX/kÑYŽ*Ä}Gùpjž:Èa³ž&ÀøëTÁ}$Ï·ê™-kvÚ³LQžiÙ¦¼›ªx‹HÙìù‡ÅÛÆkXÓ¼%ý71€ÊXÞþ ò~X’i²Sëyø¼¹—ÊPÏk1§úz;˜|íZmŒÆù‰!$Æú›~¦<ƒ´øûÏXºúßš|WâGéËÊͬGõj[­ýwÉÞ>JZÆ<‹ãêñg&3I×iYÏåðtç¹ ©®¤‚àH‡#‚ÊVÔõØòzÔÓÀdF³kÉ;½›ðsû¨Õ’Vixz ŒÍ$`Jy'ó:¾«³’l:öaj&1NLÖ"–Yéʲ,ñËU­Ã)‹‰b†döÊœŠÇÓrðŽ乘éJ4Ê]Z}YÜM1°Ã™bª£é1{·ât]SPѨȗTB9e(¡[QN[«úqÎ êÿÍ{™õ|šÞ¡‡Öò¾[×üY™ñÞZ-[¶T׳êRe7¬fZï—mÞŠÅñDŽ›Â€»¯ÑjöÊ–,O™£-yÓÏ^aÐ6¯<>ŒÚžC[ð7„¼Qä;Úµ½FÖkjÛ6¯0ìþpÓ±†\òïºÖQÔõȼYDzOk’%R¬°âîb¿ø­”Žáÿ¥õµØcÚ†½„;jT»'ôÊ':jÆ=±U2¾×½µ{qÙìÛ¤ŸÜ£²P ËrIiÓ•òPÔÆå’J‘‘‘ÆÔþ£%,uÖui,b¨¶S'.œåã§c%yfmMî49^hÒ”%ÎIÔ”ÉÂbÅ#ÒǤËšÉôá]}™¼H7–D…–é`Qß9ÅñÊü?Ö?—íÚ¡¦í¿…|uJÅ¿ ÝQ» ?5¤å"Ò´üFãDÖôÿ>l:V/È»c1-x£ÿ›Ù)3Ú¶#bŽ 3’¥zMÜÕ¿’lÙpYokü÷’´ wl¼w"½—½Hýx'ÉÏ/Žu/,ù£FÓ.e¨m0Å‘ÇÓÚ°YkÚ z±kúFᷦͲÔèo“~œô/"êø]Z…ü÷±zå˶ñðxé¨a±sE™ˆ×ËÓÌkó×—_ÌÅzaJí92˜+Ì.ag­`+‡½?øâ®«ˆÒdÒµü–³ƒ©ˆJ´s¸Šyg?é¼m<>*õÇ»²^ÉV£Z½EžÛIf”q%!P fü?4¾iN©=R¨•Ðd¯V]üñyÌr•fˆÞXTjîɹIPè­»ñ̉>©|¥C-•Îb¼¯¡åfòÿ§jXÊWp˜ÜÄØ Ç]Ë\ÉmøŒ“üé¤ãa¯±Ú 1å]ÃfÑ0VöiŒ†k*b©¸ò·õYõŒw%}Ÿ2ø«ÃxÝÛ9­á°K˜o#çvát|6V¶{äüι¦i:ÝIcÞ¶ Ø¼ÖØ“ÉO9®ÖÚ0x*ÇbõÑ솗§fb¹W%ªëy*×ñµ±ùoàèÜKØÊ,ž:ÊÉcª8ªAW IQQ%b®+J3Z V2µe£ý0Ô«B¼q5(j´IDAÓØ’ºTg­%Yê¥+~ç>œäyÂÏÆÈõ$Õ®ãm=žÃØ‹åÚÿÓŒ¶ÛÒQU°Uì¿~9c­ýVù—=‘Ãh[w‘<#ãœF{uÎãjýFg ñþ[W»G_ñ†c{»ã¸õ êkÐq[Îk+Ž­C c)åȽ¼Ñ’ƒYÉlPÅŽµ4Ἧ·øçèkžxÆä°}<˵y^â÷OnñT[öóStÉêödË5ü~Vr˜y° 5Ìø—î«ÒIr°À.Kr ÑôUÂit­Mu•¶—a×£Àc†oYb¸´…qXŠn³Wœ žë/ÚÊþÉëéÒÔh #öU«II)ׇ¿·TEŠiCLÃw¬r xr|Ü æå%Òaæá'¡êî …•Ô·ê²øIó:Rètô5 ±¨æ&7 1ÙÅÒqÉ]/êƒËUÿ–ÑnxÍKVÈâþ¤>–õæ ã³qehlžTóN¥{V»xvüZŒÆ Ç9Œy¯ÌG“Àç¶ìÏ“ÆÙ‚©ÆKøÃÍ^eÀxÔùçéoǾÕs›n/jÁZÚr„£êÈšÃk¹Ü¹ò¹©ä+a |]Ü´É—Ë=ÊõéZ¬qØX¡¹Üéq8™¥>7$¦Ý O(ÆU‹µÚ3Ç.:ÜœGï Ù‘'ÅLÌg¥z(g.±sÀ0`uúõ玥lŠÙ\Œ)ˆ¡wÖÍß¾XàU™í\š[Wœ‚‚ôb°wcQðýwPÔ—79J1«G$ZpÚd\ÛHîðï;¥ÓÓ^1.ر#!nÏïnr7Îø‡n­GUÈ_ɳøëVÉý}kf¯ëÉ~ rìÙÌOçØ±50Y‹›4Û0Ë-¬¦³z Y †"ž/' ènÏf¹M›Ëž[Ó³úδí¾.Û³8©¼]°à35 ®ˆÖr[w‹¼™šµJ|l;æBýK”ÖiɆ¹—µ]éÏ\ò˜ÌV«t›!†Åf=„Êâ±¹h`YÍ1•ÆÔ¾™jÉJ`‘Ï…PšJ6 QíKFI$œ:öS»ã1 É3R£bp‹ü“Õ¯4ª±E,D'‘¬2מHå—·7 ™’0È ºœŽ´õ5&s 0Û©®’t€`znûœU§ÎF0„]®®¬DÜj½=XTÏ`6Ú‘ý2}EnGÕ|á6Ï–ÇùcñnžÏR¦µŸ%œÜóéÙ=€ëÕvŸn^EñÆÍÇ” ¸œárÔ7u+Pã³ÚÒäÐÙ’¨g~§¼ƒ€Í`7ü'–|mæí£-â}¾N¶—Š×õì‡-ï^hfWa­“ò•^“ê)ÅK/’6ÝbÆ1®G6çeuê\ì+_ÃëÐ}ž‰ÂÔ’Ã]û, ¸Š¢ÜŒ J±ÔŽŠY«‰Æ=—ºånKVÓµZðå"‡XÖêÁ™k2faƒ¯K7÷²—´™J‰ýå{s/¹f C3[&Û‚èK“楥¥ÅôÅgë¶L°Ñ+q†Ü^pNgHÔœ¾IÑ4¨$PÁtô•rõ5_¥ñËñä'ø/˜òÎjzŸÔ%cj8Hu:ú¶v‡|%å]—¬ßßüeä-ßÅH‚ÞçÙlV7 fŽÕ‚ËÚĦѫÓÊͯd³=v‘z²‘*ë/᱑›Ü/* Sd/zˆ¦­SÄ”ýÆ%™½Œ×µÊ8øécpZö2•\Œ™(ãqøªÖÉ4œœ**œ}.Z¶f«îc’OÇNöÕŸƒ'in§¢F(#Œž(¹ÿ G×ÒsØzéò|¾¯-ÖÔue$oÕg¦8mÆ^ÛS½q‡˜Ö޲:Qùq `µ_mƳJÒæ°å£ì­‘ØE/æë…ü[ÚF‹ñöÉf ´}rö=Mø"Ïã9ß ½Ÿ%Ôâ¥kvЋrž²L: ëØu³, È„¬(«×ˆ<–*’z¨p 1)"+’$$÷Üó8°¿Ê·×Oà‘Á~à<…o ‰­§J­šë-—il›ÃË/ºLq«„;9Y©Æ¿ômÁbPð9£=H@J‘›«"v_÷]÷îym]8IdÉtØyMówýò^ü94Í6ÍÍ‘0ÈôÕÁ†Ç— ^;h:)®…‹cãc5ƒ!—ú”’¼ptcíÅŸfο· 0¿†?oÜ«´`µÌÖ¿°¼æCjyIhDŠñMëÔ¾¬þžr”s™ºEÇ. SrîBlnE1¶ñù¬ôºWqrM\¦"\ºýƒ¾?Þdʬ¤+é?ÊNL]]1Œ˜¶ÓÕ·|ÐŽp~W3bCS¦P æ.Í^ØBê»àâÂ4S4’#ºÍ$Ú9Q•£‚bÑ…ü¬EÛ¸Q"‹7¾=ºG\ùôjœ’?n$r¬8h¤‘V’?þ–’q%LdœÇf ›ê¿Áõaô÷5lë¿G íY,Ö'Fæ7#S)Clר½dŸ_NzÖò×í¤5 £$`+³zUÔ¾¤ü-º_§C]Ü~æÞ_9CY£Nî;!FLµìK± Bµã7±ùŠõæL]ˆûVÊE#ÎèÙåeQ5t›ªc;âîé(¯'is1»† é@¸ ]Ϫñ8…šnyÕ£f!£1IRa‰qíb¬ný%h˜{Í|4ˆaÆH‘€ÊO•’Ë21TxÌ+È%g3ËÏxŸû²«ºc¸Yé#’Þ¡ú ðœ9\Îã}‡kËèÔrc¯ä± ±`·K^9ËS·™ŠJƒt£{V[Í*C’µVleG/T°]ðï—qÞZÑïo61¨TÇnÞFÓí¦W)NÒRƒÆû&C]±’âÅh*XŠ„¹J•&P(Ôcé$t,V<Ï/9ü½=HI¥H¢zH«-Íœ_o¸»£­œ¡ dعéóÛÍã™a¦´€•´Ìå)j pJÑÇnÄÀÆ /«ê‰-ìLRVÛ7B¿§é¶íM÷ɾ27æAyfb\ï"¬-2õ~޲I b…åŒ]€õjG5sîzñc…ÖKJã·µÓ§cÐ2ÈÎè$ä¨KPhœ.FBc,ŠbÊvç‡î‘4QªE`/Ìof8Šº°µ>¦^l#r=/míÕY~cK4Ã,¯+Fêò§EqðÊ„“Ñãüì’ÐKø¨ô=UF;®q^1Ž2›#?™1h ø³oßÁ·ßáÌ碞 D¤ªÜ §žó_ê(z›Ãþ§±ugud?!8â^ÇÌ󇋡=‹@Æ'í ò×-÷emF¡­ªÖǪiBX,|©¬ °@áGHà1ºñóúô‘´ ]Ì3T®Š˜ùÈik/´ŒGÇ!9n$ ðT· zãCâÐgü—Õ ÄÌ2Läl/îžz#.™ÉÕÏMæ(8óuݿݫ«©üc²LbOs”Kó7-2­ÖCó߯lŒ|Õt…QO¬ûÓ,]–fã»4rPå=²° ”Ÿ±²çíqvíl†”¤ÿãi>ºÒpÌæåÒÊžã³!4½•J$¬@D¤“úe­GûLPªºJWÀWcÞ6zûrþ˜|(ç²ðàzmoŠGGVz_#«¢t½UuÝ)ïä¾ 9)KN5i”bÐJ·mqE`;}8§^ÌÜÆ7´P:tŠ'‰d&NdåM‘dü&[\º¼TÝG¡;OÝd{l‘û“3V5_lBÑÌÓûj_ÙcÑ¯Ë Eý56¨‡ÎK§{š´[MàdcÝÑ™c…‘ÇHÔ7HмÖf ›QŸn>ùm,±JèV#oÐ Ã/$ð÷ä-ˆÛ³ããoÄ?x,~À=m9ššzrc]pŒªÚJ_\¶ä*Ý‘³\‘DqÚ–@I#’2’·f„*¯*u´ vâåMú!èÖQmUµšÒcß„b»66¬¨þÒ«HZï!%A$ŽK©ãŽz/Àà­ûTHéöÑt<~¢ëÊû|0Qíõäô#å ì8ùõÈ—ÆL>Eºmž0Õ–bÛú÷L¼ttþ&$d¸’jûžnßöûqO&i‰‘å¶î‰ ™'í„DަhL†eª¼‘Q–U›øÿQi]xõ¸÷c=R¼ì9p$);¯)n,‘䕤„ólÆ[qç¦è€—ü`*›YïpC3)‰A–¸$DÒ8aHŸ“ûl3þs¸2Á¦Ob{QðêV8Ôªõ*€pªI JžI rVküKäê:f…úúOQU³¾}Yî&%×Ïæ%­Ç¥ì´Ž×cSØûÇù‘7v“ÜŽB‹hIÊ|·I[ÙšP¤"~F¬ufaeO£ hý±/$­*ÌJ,vX‰K³5YeE–ïwÆÌ!®Èϯ'¥h¶*½QbãF[³Dê\„G8êˆÇø‚ÿl¤HçƒòÅhœ¿gb댳W™c@}î:±šDÅ}É?ŒqËWä1õÐÑÔ5´´µXô3ˆ¥ˆlQ/ÒýëŒz„¡=H’ZzW91C–±ï_]¸Ù9høDyHÚIB+ÈýIˆeU#ìR“˜‘\Þq4žã4-!Jò©ŒÔ°¨U'N+ïîZ«Ä“ÃwÛº] îÄøý#ž;Ü„Èí%ˆÙ¿%VÕ, uBƒ€£åŠpþLI{¬Ý[¬*ÃòäAÇoî+øü³ð=Î~Kè|ó5>,ijjiü›èœ Ë©.š £z]Ìc{ãly¸BF¥ cCÿõªFùÛþüTEîÒË ‰ûƒ ‘D&K  ÝãXŽß^Ã,o°€ôÀ~}RÃ+<•쎲†¦åÚ0¿ƒÆHü' W–Þ„ÿÕºÛŒGêeÕW#lhT2±É¸ÿ槺؉ ¬ ü’À¥ó | uà^Søá!Tp1¯Çoí%T‚áTp~Ž=>¯ÄÍ)ÇOåVœ'Lå†q$Ö/2ÞÿNG“ùºcó6”£@vjÛÁ¿Û~* Äc<˜ý¨Ë”f‘,BUK¤fwÈQÀo½ûÐk’#Ï¡>ÚßPV €FIXˆÝÊõDuuT2adéJoçü½ÎÉäØc÷5¾Ú/zËž •c²À‰ÿRI"Sð_ž8•R$Xaü"*cˆáOoÅ[… pç°à|ÿ¸çЗÄú4ôu>TWYKÓÒ‘=A•ÏjO&—^®¦Ÿ_OÊè-Ùnòô¹ÜÅÞ+š^.„¦¦.'/a¹ä8söôødˆòÕù%‹×<!’þj9‘ø¥èOWäôôjCNºîú²¹0”U½¸s’#­3Sú%;N–|ùO5İÊàsBq©$­;‘„ø1÷Ÿ£N±³©çàÏ-‚"¸a®y`8FŽxdˆŽòç-QPpNë‰DsrMÉ{H˜¹µœHÒGpÄ*s×’z‚zóý«ðACú+Ï<üU«ylÙµHÕíÄ£“Ý>âÁµ7òŽ‹n&nµ¡êkšUœ~WŸü^¤´þ_I2»^áUGú+|'3Ë|˜“ê¾¥%ñf0vÆjÕ¢nÿ$¨~Œ³ XÉŒ«)Ib#šS“rÁò=”˜ÛPá“ù]*L±È_ÛhMŽ>þÙÁ3rXào}ä|ÖHh±c˜É°ˆ¡ùgîÐônVfêÜ–Y æj‹ÿ|òÑ•P=g‚PKÉÉ~!@?·ÜI9Åd'®0+-eJ‘‘"rz>?\=¯Ûgëú=ðuI).¿)*jä*{îwM÷â¼}B2ßÒû°EêÿÁkÜîYö.ŠþÜrCØXùRœÉR(9”)¸^µÈå¹éÁ-Áà \òOQÀ<ü9㟕øã×&|þ,.S附"P¿W>*8ê‚¶(‘ÂäXãݪŠ{Ed{“ó+묌eaÂL„;qý…¿DqÇ üž?^¼Å€ç¥Š~VŸéêÙrŸ·l'‹áËøX–S©­}Û>þ÷}î»wÇý¾òÜŸí_ƒÐüXúùaÈ_×ë׉ €ös#–<(ýà·Ž«Ùy#Öx^½¸fQÀä’ ñò¼søüð§ö8?àú X)“Ô0'’Èü¦çäÈÿë›þ¯oaŸt,ÆhÚñ†œä†t{¸|¨ zÔ9¯ ) RXžPü·ÏÉ>½è,× ‡Ê®x¡q›‚AOàrzüóò ‘úz÷ªu#.#Žç¿ý¿¿NDd ¥Ìg"Ûião~8óôP¾“~žA’.©âív Ñ4%ûzý,MÙÀ=žpÚˆ'·BcÚˆhåülüªŒð–TY 4qd!‚ò­íp?›¨ª’Ì*Ö‡PTú2²j}øBÔQ9±Žñ>>úV°Ê¾üøÜmÙ¡Šfƒ]xL”Õzµe¬ñf=.é_P4òOz¿Ô÷“S/å5­"†gg±BÞf\E6³FÔ¿Õ³3d.¥X+$Ó%§ÊX‰¢¦Iû’ÖŽ—)ÊH×) ½Î˜Æ#ïVã{ýøóÜÎŒ§Ís¾fq"d¹I¡3V¦.þ¼YÈ è•RœÌäÿ V9pX¹á/7"êsTuçШd Ë2ô@aÔ*Üc<’;| <ÿOsÚÁt`E>µõ·àl~»¯lrÇå‡6þI÷°ÑxË9gmÕäñ^'•›w×éX‘õ¸´<ºÑí‚ʼnjãXòPÄú—üYç_ù³å5)6zqi¯BL½=«SÈëY ñÙœ_Ïc1¹&yò:îÅ…§jþ¹’FX6ZÕçê«$ úx󼶤þ\u¡9Hê¨åbFÆö(Ê.>ƒÅzœ¦´"ÊzS€ ¬qv^m«0ß,¼)*YT;3uŒ„Ÿíâ2éA $SÚÑœaU¬I%ÈöÀç’dü;tDï'UàÆó¯ :7Ív2Æ ¤Qê›ÃõëôÿoˆØ(§”§¡š­o9_f+Þ©¥ÐÍØÖ¦ò>b ìÄøßË©z†7q>ì9 *Ù«ngsë+Ã43qêø»Eû™kï«k{ Ñv Þ%Øwa®>ß_]‡sÇHÝ–®Vý*B+x¨D’´#,D÷)Xæ"í`äÅÇÅ`3æ®®¸ÂëÑ/—"é,¬”PµuÙ¼–v®-+²¯ ˆƒžžÒÉ#¢v;/VîA& ‚Û^ž¬ô'´:ü¢ÇÿpKñ“ð½ÓÀ §n©t 2+´3Òî«3-“ëËÇ‘éYLÎ/[Ýw]Ÿã åßô¦“­ãì¾jε„Ú²šncÍÚkµòqbópä/ Ȳ®=¡(ôûÅ}gxo'´á4éuÇdóOŒÆS¹©Z¯¬â·ìޝcjÇø³)±5£/#]ÁÃ5¼>!ë¼n lsY[7kFÐø‡'ÕF¼,b-©mD•Þéúð?̺Rp•ª,’Å J]©Ú¯‹[ìÌ?qUÌÊ¡æ|«,c¬r̪’$„‹=„凬!toqdS"ª*ð[òã¡E=K(d2cÛ%zÄ£ -Oeúèð2ëz–ãüË—[Ü5ª›Å;ÿòÛ1`ü{~ÂÃGÈÛf:[Q[Àèv®¼µjfeŽÃ•î3ÂÐÂY„_«}oaóW‹¼]ã¬nCa×·M£ÈºÎÃäËúæ^†‡<ÚN‰>×f‡wHåþ•±fhäM [tb0Õì iŸ¹2t?å%ˆëBRj1ˆ,žª UîÝö¼æ¸)­:rŒb~izAr媷¿j]í⤌­É‰@‘zF²'VTUã®\üÃ)蕈5gVtìÛ9‘X"ffEPz¤j©qÕ4äqײÙùúg$W½êsÃÚnõŒñæã°dµ½‡/älo‹1’æµÛU±×öŒÆ¦»¥+µ2­'Ú¾µýƒÚÍ¿LtVB£ƒe¹5’o¯ü=܃A¤iyÝ—ÇùÞ©›¹§íÚÜÄš_‰÷ïkÈ6rÖZ®C²eôÇîëñÄ"ÓmÁ~PÖ.Ue:Ÿåt¤Ö‚’écT†8©M·LßO’×ÔÌa:‘c,FœÙ.ÇŠßíŽ$LWÜ•€Xþáä+"§bœñ0áfx_ù+)QÏ­âPLP¼`— Ì 3{¼üH¼žêž9kHZé ¯¸ø#êSSóZ®,é¨nØ­CLÝnb·=3)§Á›×öš‘vÝãûie;ŸzóÍW ˜"0#U‚äbBO¤ YÞÃd·Œ>v¿°•tL.ã°É±ä´,œ:ÎÑÐmT‡sOdãµ#ìáo^¯Y©¥Z³YÈ›Uª™+Ç!,óœ¿Fž³«E"ÉAéÞÀ«­ûžåuú¥¸Æäï]-ú¨M²ö³~-jŠýä$23 -Ágø8.ª~PðóFBÛâ%èDád`Ünн[Û%W¸ë„W¬ U ¯òfèEEo¬ÿM÷ظõ7Üò37¾žÄÙŠÞcÉ{ø‰v8sØ/î–yõ[¤ËävµZèÅTHB£9õõŠŸ2ãÇþ>Úví6\ƒöÌ^Ï[NÎÛÈmد0m>QÔ²Z® ]­e&›u×ó¾<›Yƒ Ž{û]²ŽAÕµçq\¹þPŽ5â» Év·;”eñã‹#És ÿ.QÙo½à­îûf±Žüt7»+ö‰Ø’ªËÐÊ9$*‰ ar}³+ »óþ/‘„w.ÿØ„1*YÚ$ ŒŠäDÂBË ´x©y#¼riFCëëÀ45üFÁwþeEbæCv­´êRh7×qñeOæßYßòžW½¥—UÆkDhòYböá·G­šH8>§yËHòÎǽkZm}ªùw”lôd5»x½*låeY%ÄavKOöY›ÔñV±ùÁ (ªÚî[‘´ÄȨ¯§Îrº’! ]9K·K{†E+wb«Š¥Ëjé—-9—GVkxáÎ.ë¶{ã‰yŒq³H }Õ‘Dà3$$³Æ§‘ïÂXI3ƒbâô$Ц5è~ 1s ¡EæHËÆ@àÚ?ÃØ)5nfWõDcúêñí­Ómp›®?ÂY/ùÈ<™°éYl~?É5õ‚vÿ†òf)»asÙ)LíˆëMrE­Ö:§úáñHפÉÖÒ|ß™ÏW¹·ÕÉø×âÜžKÉX)ô ?mÎ˙֠ºÑãêS% `Ù’»UKQ €Œ§Ä9N¤ùñˆõYaA½üâòîqaÉó^›¹öQAòáoχkŠ[¡þÄ‘Tˆ™ÈÉyFŸ€ROž¬±7`¹pñðv( AVDáDèW© ‡ü•¹û‡‰:«2Xëö¤W‘˜S(¾²õk»æ–hÂøï—ñ(xØ´-’LNó®ù3Tµ±OoN³NɆ­Ú‹\L¶á434á»=Ș×âÖŽ»´dF†'–ØuV|ã3¹DÄà®ìÙxìDkG~ä†jujÃ<µªE=›ÁkÆÀ·õo¨Ûû?„<¹åÉü[´âó~)Ú¼é­WѧÅäc·¹7†÷Í·N[zïk&ÝïêÒëJ™ùkË ë›pÎ`1¡*cc/kÍòäå§óP$̈ÜD”®²`÷ÇržË걆£1›=XeÔ€ŸKóŽæÜZÃá‘—èÇòd~ 4œÆ'ý”™ø€ÃÌ ÌÜz.y÷²F=Þ!Œ—¼³ôŒf! òÔ˜rÀO¶ÈtP„óÿÇ¿\–s»&åŒÞ|Sä-_[hñÖµÏPв·u½2ÿ’ôìNW]ÄùW*¶ÃÑÉe¶|Šâ©UˆK%H%¥jÓ ,ôüÐ>´tM“=¨h×±û†KgÎPÕ¢Û6Ü&ƒ”ÇèZöw|ÖbÛ5úÙÊÙl,}¼SRLÌëÄ­“Èâ©Ë*X™ýšãÏòÓ"‡­é\el£5‰9ÉYx2åu£w"eŠJ†ÝÅqHÞDÏ&xäæ’4C«v~# §–æN…©ä5– )È}¤ ŸB8÷yäÆåQˆ ð»£F‡²«ª‘vœÇÞ˜˜dêko¾¨4Ÿîùmþµäí!­ë¸m×tÈéºEìþFÑò·ç³äëOjxú6ϵt–Héû²2`ÞËýbøß¯ç6<~•åí› ‡Úmj´²¸]ĘmŽþ'3{CXÌ[µ^¦@¢ß¾L•«qЬ²–*Òæùh³g­¥I…©µÑ¡£¾1T#ËëO¦´Ú•1{#AþW¾qŲ÷B‚²» å߯Çu@¼IÏUࢯSiÔw{‡>·E”?e`T³Ñò?‘J'R²1Dl»™Ã'ªŒúÂñfÅ>¹cÇÚÇ“¼ƒÎëÚfÁ™ÚtÝ%”×|z›å›”µnùy& Ìæ.P¼³¡I“[­Ziî2ÂËê1о¸kæê-í³Ç›ždØ(ê•4_aü}“Êm¯5šÜ)IR„—.IS5µw½p‰ý/ƒ!MÞ´µ½UøþTcTnѧ§³[g¶ ÛµðÇ'®Å—E yÍP†ÅàvÆ{Õþòop^V•[ò K¢ÿ(P_à–/ǹ’‡½x‚:‚BHgz¯"N¾à(½@…œÄŸù²±†´]èÏÚhÔú¦Û×…´Ùñ1n8ï#ë167”߯ftËTcñYüìšæ+þfÀf°Æ\´2œÍªÙ\)6Xÿè£~nDî±Yž¼×iªË=iÕº„Iaoa»FyY:”ãÚù.:äX’ÌÞ´ikhë’tµ#.Š%ÓoM•žö±ï犵4µ4霒¾•(C~é7ýøôŽ}¶IÚ@Œ>§ääF†¼D²ŽfÚ³+?=ÆXå~4J_¤±û‚Ñî±YöÝÙJGaÄ‘ŸzGU „…Y¾I>ÜοÌ9¤Ð3OTÑ,ÄÑ#Dhл<,l{˜‰àIúwœÇ:ñ>½%ÕÅñ³ŸuÈèX0%´@)ñŹˆöë'W¯ù’Hmq›Ç×òý w-³=¸1ˆãªŸ/övín^ +HèQ‘B³²9XÈêAË{~Ò @L|Ÿ6™’UôZWê$*¡þ9<ö…@,H+Ô{}ÃÕþY'唊¬=i%è=²&žSÓ€Qâ‰ø‡ ¼cƒìü¹HKK!-ñ–µ_lÍü”ÛÛà3ÊßÇ7ãù›j–öéü‘ŸR:‡.ÅÿÓi“¿oüG§9“ïG¶w+7w~ݸEU”À¡¡Óô$¬LÒ#Hî%è¥RXÛŸºŽ50ÒŒ‹µÌÓ3¨3]=ßr4`dà‚K g„~¤sÞ0¥×’×Ô­°S±Pu.½ËuhQcŒïÉ"CÑ_”öåòb#ý¡.·WPwá˜Æ‘ã Œîýä+ÈcÁŽ^ÜI ’}Ù\{‘Xæ¼\!軎Õ{ûY¶þ×Û?j¯§*¸ó·z­þ·¾v=€îJG*·öü­ÇÊ÷nѼ«ŽÓ~0ËYš:á­¢Kí{3~µK4õ_¸ŽHzÏÛŽ²*?Œq²”¦ûöPu¸á—å!ËöEæ6êb^à"J“3#†í*B¤Mÿйø³) '}Óç½[Çn€¬·`—+,+`ûp3­™5¿tó$½y2…ø–CÊõ—š×–„# Œ¥)Ƹ:€rSÛÉïÅú0Ô›H^£Äz{X…]ÕmF8‰“LÚNç tÂJ^ÑŸÈÅQýÀÀõ>âÙe/¢©ì¸!Z†Í`²c¯5g04r©â¿ºÇÛ¢¿îÈIÆÏùÛsÔó©o-‹-Z›R†kÙÉi ñ—ìÀñN$¤—ìD[ºFÕêÆ9†BQÓ‚U@¼ÿ¡í•_ÉùPx£G˜Öž´´u¡t@j2l:ƒ6¸NøÅñf¯/£#R“‘)t¬¿-µøªßÙµ4,P;«ñÝG¸!î?eüŸzü ÊI@,=øqÄÑO*ŠÎ«z‚û]¿„¢ÌüWã‹  †±8JéÄÑ3¸ãÒ¿y$:2{ƒ•i olûŠ:Ë7¼OñÒ„KM¿ ôµnúÆXFk°\öR2þ‹ô38 •ïóˆHøí/)lçÖlü¼ãæiÞÛ‰w¾°½ªéÏi„º£–á"ñ‹ª·î|ì°6lÛN=­ÅZ °kÙÜ{½ZÊÒ—-Žjiq²4é]l™%F"|Üô¢h‡0¶WéN“ÃzÏŠpõ #‡oÛØö¬v«V¹Ûmø§9ˆÌÌùƒÔIb-‚LkžIgLSY *O `lUE' €²ý©Û‰ Ã+30WàÅQžB—,ü= P¤U¸ŽF,°ÊœcnŃËv ó"V~Dr¨äû$u™{Êý¹ÒkhÃSSªp%èè´n;VKFÒŸzÂðœôâR,†ŒdkÚñîY•â™í_OûîÈ[•<]ºxÿµmMå\vN·tܮǬÑÖü—6¥‘†ZÌFWaózžk[#¡;œ~¦ZI6UÇã¾ÞFúzðéï“×pÙËYÜ]¬n­ÇØÈЧb¼Z¦ 1Žù9«¨«lß™d±[FQÔŒRVÒJHYHE@¿jï÷³S™ÔÔ‹ôX7Œ’²ÑÇöÏW=ôo±(ò6cüÙCÊy/&¦Ú±å­bîbòôrølÞ‰.¨Ù4¦Ã-¤dÆ<’:رxLíÓ/ô¿³hC ôÙç&ðgŒ†['¨.ñ øÿÆšVƒ©aõ8¡ÿGÇ’ŸrÌå7ùïä,aö{Ø5Ž$XðÑRÇç*;Á$2ä ʽQ¶I­e”¬Š`fäw KH}ÿRÙËô‹Ë$¯ÿNÜz#M™Y‹…^:»Œ…™xfš%u`¡.7ɤžËçÕ2øw).©zâíPidôK©ÿ¨NÕg”®-;­‹"W]=q#ý#x¨bÁÝ⣤«{^ͽîÞKÝpÙm£ÉšÇ’umÅô=TëøZwZ413¡ÖÍÞÉä1ë®Ô¢m3ì¶²WoؘÐÌXj‘C¦¶Kék}Ùµý’®÷å=~=ò¦‡ãěއ¨X×ëèe(æ|{ä,Ž*öFëd¶3¸¼e¬ö7% %±¬uJu¨\p/ÐÛ Ó£ƒ„f>Ù’nYb'óW0Ø”~= C•Òœ˜éÈë‹ =RÄR"RÿUf«½wâOš×Ô‰Õ2´¥H=V#“4ûûqF.ýb17†GÁ»M?G­8šÎÃËíø{;Ÿ‰òù»ZnK+,Ùhï>*¶½´ìZÆK‹·U?¤ZÆMš+x®k=ôo·mZîg–ò¦æ÷‹þK¹½åI–,}±ä½«·Ø‡VÆE”eÆ×ÄÚÀEGNKÃ)šOê„ØšðÒNjü•UftätìÍï3Fâ?˜ÿÒT'ŒM€}þ©:zRXÂË+¬„*8dV€L€’óp¶ºõ÷¦ë$?‡'ПÃùKΛDTˆá —~{}©cÍëÇmK{¬"¡Ží®B®»mÅ@µà½Óäü¯™|cäÉSí38‘¶k6MJ¾"øÿÅ1÷ªcrË÷nñý –£rªrMW#šQ";è÷_ÇxÓeñ-òÜUöL7‰±/—8z)‘†ÏŒö\æÝjE ´s™üí«pê@À˜ë :(>­å^¢Çó0çþ°»èñ•“©iÊ‚±Øãð¸#Ô‰fäbHk)‘k­yz·»ÄÁÿ3ÈHCòeçIãÜÉÀG |Zü;“fÏ ÉÝvq&•3E>ÅmÄ9­fI´"=5eÜEö\v*±ž9ù˜ú½”—oL—‘°Â¶X›Ø8]K%ŠÃæsU7 Û]\Ï”õø³¿ÒîÙ_¿lNOVÔÞâÂr±FrÖd¸Ç#ú$Ìkºž[¢ù[¨ì¾DñO“|C弤Z[Ãf5ÿ)æp› ˺>ÖRk=“]¹­c©à­æ/e(åñ}6u»š\|ðt×¼†¼a™ePË##Fe" *Ž8ŒÎÀŠp}¤Ä ™c>³:šæ9RªL~Ü$Šò;º€åÑØ¯¢V'Þ¥ÿv9:^< $U…òTzmrÛ¨{µ”i ¯‹^s]duí[ÇÚ&Ñ)0?PZv/…ÅC†Ô°x8¬$°à°8L*Ïe÷ÓBµæ 'y¤ŠV¬^ $"É•¤©k¬h„ž¦‰9—ó?y˜'P@Auá¾E¦^1’í€JÂ%޽¹^%¯¦fHƒ4$ [¸åL¢@äãð¸¥'® }¡˜Z*¾ñV®¨½Níì¿–üMÅRzÖÿ³%6÷¤í*'­µA‰}#Í×åÂûV×õ8Å"äÊÆKn=ÖE&=³v烰O¨ÖgâEPèñ૳4 9Tnê^’—š®; ò…õ¥6’,¥fã9’(Ç?ŒNÆHÔrXRuróBÎñÄ’Ê·*c!xcØrXòx€¼pAçŸP…¼ãuÝi¨Ü¥nY™äë^.cHÝy?å§_ß¶9–Hˆ±ÉWçÓ¶§”qk Y1÷R9Š–öÕŒ±¸º>TÄë2N@FÄ9›åy½Nc_R2`ê¨ÑŸUØ^Ïmöúœ//ÌrÑÑÒ55 !FB)¹}ϽÝmÄM¶»TÞ-L‹M^Á±ÉË©0ô ¸`{Fƒ‚êá–› Vì@MÈg%É´0X– =¹&ü’¼kÉœ1•%Zñ£JªÎ¡«Gü¶þ.B@Gãü\ÖÉ.F«³Ôžrc¡'`ª9î9Yû¡‰ÿ W°›òàä•§G–HcNÎÆD¸TB¨äˆÕÈâ5fU’+cfÂ5„”zôZ:GF‹¨®žŒ €ŽÀ­ñßã9z¤Â^‰êIq‡1é .ÝÚû]ÛXàð¢ø\5n{J’3ÿ €ÆH€GŒþÁB¼¯¾GËl”h?#1ìx?ˆ_ŸiR?<*‚zö 7ŸP¥$añ¸üE+±ßûªXä©eá©q™–EvB?‹»‚’)kòO‚¥é¼•–­r*_R­€R2¡%S¥º¯ò$2uWXÇiÑýȸ‘æõ9>mÔ?“2,äÙ7<·â»çž;z|Ç+Ñ_2,ˆ•™‘ˆß7Þ³~Þ2²ò\Ú@‰#ãØté0•O2È2ô g‚9÷:¢×nb*zóê`ŽNÈŠT1%XÈAoÃÏ'ãõò8àþÿäWmKe©ªÙÎÏ}mØKê‘Uöâæ–h¦•‡Hd • À†Eà“îéøžTÁˆÖ?´ÉtáWÛEw£%ÀPQ^nk²8åÀ#Zy®O^zÒ–ž„¥0#!ň†k ÷ߊ45ô¡¥z+qN¬[ÊÞüpÐò»ªçj†Y?¦«QŠ6Y€–e$rb*~ðƒ•°iÚÏär1W†omÖÁŽÄb8kDãP"uxd!ìG7e¢à׷ظàÆç°A³å¢µ‰b«9kË‚ÂA0=äëÁÆŠiÀíâH?>›QÆŒÏ$nÝÕÏs0êˆèOthPÿ)A"”AÉ»[¥¶æH˜Žß)£ÑËèÃT:ôãu1¸Kz6GÖxÞ¸ækÎ.®«”e,ôâ2( ÅÝßfûqe|o#¶¡MÖ29mt^¡ñ<œ¼¹/í¹·¿ÕÌŒÝWÛT>ž’L‘—<ðÊ‚Gü¿PTr¤~Ù?.ž8ó껵-{ &Äg±“–¹öY$2,Û.¡Y#=%@x`}8_Éøi…§uØÇ(/üiî¹jZú³ŽŒ’Z“†ã,oG[íÇ[G_Bzqu¢ºnÇk¿ º´å<—³ŽÀ,/HXŠ(yÛb«×ÙV^:—{HCÍÂ=Lod#¼F7aÕOö„Vxÿ¿xbàŽA×FÉ¥·e6?·•êdc¸Dh¿¿9hdåù™xéixì'ùŒ,GÓîO(âä!ÞŽA$ojxˆF´±0èy–·?ÎGê& õw7Ês:šºrŽ”¤~J/ý2Œ#{·e;;¾3ÂrúÚzR%©_2hÝõ f³½®KÃÁ'+kîŸo#*0‰bĤ{œvV^>‘KÖiHçÔ³ ‚D„ʬ¼G™ R±)æENB±†+ð|z¯›VÝSe¤§VHN2Õ©¦i8ä…¯¶\qùþVíÏÞ' ñéé“qIÕ ¬lÈð~bä/ ¥}·PY QâOK«ÊsRåùhšRe¦êØV.bX¥õºçÅ‹¥¯ËšúÓ–¬HË£¦­$ôÒßj@{VÙ8l…•>ã(l}ŸÆ/hò bÞâ„<IíÁG?›â—UÕÞGWŒ6Bl2}­&7*hÂõöìHäŽQÊ._ȸ¬†>í/³”™éÉFG…áŒÎ=¸äœ•ócÂòÁpséKÛkk¸·£n¼“È.OcR£ŸR<—1ø=]7Ndå«§27¸E/ìù­¶Ïëòñæa>¸‘4ÒòÊ)xZAOnüX' ¯ÕX¬H…H.ç’ù 9ø<Ÿóê®ïS2íÙPìB#ÂYÒOsÞ† ÀÃV–OçOâÄŒ«vÜ8ù?X/ôÛ\ôA ÷«¿iƒì°UüOCï(<‰c'ä~"=ŠìyÌÞC-há‚W†TåÔÌñ'·RÑ€#QfŠÚ$ò‰¨?ˆ=høo-­£«)êé$]9¦mŽºåíÅæ4µtã=HÊ]v…ÕtöÂjÚ¸D2º•")=²¨žx—¤`Ÿ‘$|õÈü,ðòFÜBvì7È$â@±݃w~Qº•0*ïò†Å@ T›HÍ!c눊XÁ!ey•^vàò3Ï·i>ÿqíöÁ“BÅI$r£ã 8,ý8ÁY‚–¡Ç÷Èò-£Áv¥]ßû˜Þ¬o¹žür€Kº´ öóƒ~îÞõÅ~úƒg†ÿÓs¨ìSê÷éí$â9$a­Â(_Û•„*Q6$ú„@Ä0×XFv#ÿ“*Èä±ÿ+óúùÿ#çäúåÔ<†9>˜u^¿X?N‘¬†V ©cy‚Œ”=¦'Û²8)Z^¯’:ÀÄ4ŽDä$ŽH#±ì@_È@ê öO?×ø«ÿ®–ùZwûíÚƒÛEðèäãYzõ%vìšXJ¬#¶Ç鯇±$ѾàÛ~ÈW?¥<9[OåÈ윂Ê/Ç Éù#ÿ <ñþ=cáØÐà•Nz±aÿ°x¾OŸžrç§â …SÏ$0çŽ_'ç¸ä~þ=sþ¼m*òûûþWùåë…Ë?‘Œ¸Ã·cË$ÜaÉèy'€Ààü}{֙ɰ9`î§¶.ÿ¸¡K³Ÿ¶“•^£‚O ð[×½W3&¾¿OÜã6µu™« ]w⹬û{Wyú3¯÷?I¢ÒFñØñ…j¯2FèÌ™H-­™‘UBYy'öåÈØ+•¯5lÔÍÿ¦<,ßOx_§¼f×™ÆbµÙ1c³VjÉuòc ±G³}ŽÑˆ©•Â]Àå™_±â رQæ03[£_#Ró«©?¢;ý+xP#FǨªBV@ÞÜ1dòë£*ðÆ_–«cÞÅí×ÕŸ‘ú UWg°È,®Šÿpòùx‡„œX r}{ÎOB:üŸ(Jºù]=9'hLƒ"Çf¾Ï~8<Ö¬´ù½~‰¡y̪«ŒØÅô.3XÆ+Šeª}ëÚÖ=‚Ÿ~Ìe*çpžxׇÛ`qZìxìÔFCžÛk×¥‰™±¯_°aíÚÑ¡Ž:&Žô8,ÓZŸ¹;óƇâ|~6Úhä®äŽÝ§øïP»&D!j˜¿i¹m#f¬‘ C5ê9‰­^’QÚ•øa޲=wvtQ}ʳ¼òD‰î+ñVpÑð£KÜZ®G¹}ø¹’=•‘eåYDlG ž@ù^ÜŒ#“ƒ²^Ì¥O­å9mD4ˆ¥ÄµZJwò/ŠïKÌëjßV¢Üº•«Q‹ö¦9ì5½qH³CÚFf§á©³[¯>“ã•ñ4÷v-_¶œ®­Sa¹³SÊc±Ö®ã*k›Ý ™+”âÎÆÙ¬M[UŽMbÌñ‹MOôÉå“´ý"˜Éë?Oú˜nùT¼»F›šÖ¯Ô;µ«ÁJ…8R¯‘îí9¬µ´s®f5|.©‹vÉìõ÷ ´•q:ÔÝ!ŒÈD&*C²#>aF+ ü;I5X‚ ÙýBQø¸&X̤öeì}¦òÌGÏÛ«Ö,/åNÉØ2ÃÕ:Ÿ å5e`Œe/—*ë0tÈÊ—™.×µÙ§ÏkÆ,z‰”ÄŒƒÓ¶KO"ÞQËÅ·ô¦ä%ÁýÏ’6sŠ×µ§ãÄ|N/`½ êÝF}›nÅKSýK«áâÆAœÁk9½~e¡—’T—7b0µâXÃ} øë¼RÜ®fäɽ}‡¼e«ÛÓ±Ô²;þ3Ví\ªgEéïãõcjŽnµ Ò®%—hÁc³ë²ŒLwðnÕˆ¦…ÐG,¥Ý] ÿ2÷AÌ¥ÿ1ùU$ÇýG¿É„ª=±+]ì$X¹bíq¯º'†dwþ&OÏîÚúf'Õ§Ãy&hÄlkÕvS{û~» üw3+Ì|)OH½Sx7ºÇ»oú*ÐöœoŽ1Òl¹*O xcIð-¼­­±æ3:…JX›Ø‹9'ZúžÜõ„Ñ[Øà­§rœþÄ6š¼s;é+  nzN\òωã}·yÝto¾+&+œò.³k²¤ÛµO%ZS/õ|&¯I1÷$ÈTÈMy.Ç k{-y¢÷}ÙÞicŒ;ë Æ#PdbD…[¥9Dø ú+ZtJaá`EœöIdiîœd‰çÏùxò”dkGJ=C”^ñªÁE-›ö¾æù”tÝU:k&2S'é½­/#Ž*Wœ¾|_õ’Üò[žSc¯&ããXô‹5j‰­2]£'úÛ\žÅInÑÛ%Åãªkðeœ±†ŠÏPWUIëmŸèûHÏçnì0m;>l„Oj4+á#ÆCƒ—ÂùO]Æ¥Iª¥5­w"¹o¿ýÌVÃQ-Iª—¬À-ìu”öUµ#:1îÉí¼œ„^ÅdÛ$‚}÷çÛ·Ì—èŒ|÷x‹8öÙU[©üš% ß‹’½š\•x»Ç0.«Ã‡#«©=GB ¦¬–ëgrñÛ9³·湈Æ05Z…:°Uô.‘ñúEZ׈ðZ¶ù[­–ÉÞËTñF§â&¥“Z•¬¡8±W'a#‹îVãÇÿÅë*¤Ç‹U½´n¢»Åô-§Çs`¹?v»0l¼—Ž–9pÚ¿õïé¾RÊI°æ!Ø6ó ¹­¯+„¹<5µ¬´²U£ˆÔêÑÀVÂØ·A2Mx!÷!^¹TD#ª±Nyî&pXFúYÈåÛŠÍÂqèH£î²4“&—¢XØupÜç­v,ÊÆ2xÇÌ{ÅÀôú¼)3N:š792 ×TºU¨µ—¶ÏëUÇšæ#ÔÇR™Æ1—u")¢°wÆÿz˶}2bv*d¼á®î›å;Kˆ­‰Ø*bqú¸|}=~λw˜¢ÁK5BÉ-A%»U'#ŽÌ8F«#kVú.ñÆ•™Ö²ºÎ͹W§‚ÂøëøÉ­cnŒö{ÇžDòw”q¿•êÓ¦gpÝüÉäŒÆÒµ`ƒ±‹B–* ]X¥¸‰FW?ËEÃp¤|•Vìý‡É2î4€NœFIô 3[š·»,a$˜<²˜ÌŽÑˆÙÌ‹ᤌ0÷™xŒ×)b#ïFÇÕqä9)*éGª7,²*ä< [TÖû#Ë›æ:hÔzh§kÂø/oŽüQ­“èÅ{gaØNg-_7·íÞDÏì¹;8}o2÷pžJØÇ–ÕñUòõ,TוÖzøLÄ­ä±É/ßGrIt³ž3ñV»âÊ;ž;Óä±›Î÷²y)S6}êqÞÙªãqy,4à R˜¶ÅAMëõkâI%šj–E“¾Íå‘Þ°??ÉFyf£F‡Ž_„ã©Sÿ[æü··í"Ȧ=•RR:†=Ë: ØpJ©%%þÙbV¥Áxþ—)ÊèÉž–”c9\W7R}Æ„W±x÷ù}J„µ=1é‘ᢠÙ[V?LqG¡úÓß †ÔsžPòfË£é>?Ùüeã S.udBÖ³†3SÜÉÅ‚7öœæ¼‘%*sfÙ¨>³JݾnEú]Ôti-Þ\õë¹Ü¦'Éx|ì~ªbfƒÉÚ^7GÈ¥]cN“ƒÅÀø…÷.Ϙ»4¹,„óF¢¬ãñÏXùiV% Ç-Êuü¸Pë|w®~,|p=h¤–F÷Š{\?Uä rÅ€+üƒòïŽq쨿>„¹O«¯äÄh[ Žïrñ_fƒˆszÒŒbêP6 R7]ó‹m»x«øï¥]KWŽ­¸îQã𽱆ãÅÒ"¼vä1ŽÈY ´€ñÝcãþÙy q@ÁGr=scÑ>‘ nª½ûŸ¶1ŠŸæ£ÝOÍ;þoÈ—÷½ÃYÉlZî«®diâ©êYºu“K–Óâ2:”›n¿˜¹¥Í1¹(Ü£×>Êæè‰•ï㥯…“µ¯`µ½É~8}“bÍkÞKÚ|£´[“ C^¿åìæSqÜi`lRÅA ÕgÙö,þw_&—R\‚Pk6#¡ Bmû~¬X˜$Š­ ^¥[ŽÞçÄIàÇlò*?0qÁôÔ‘#Sï¿Aý¨ñ…b†e Œ£‚QœFV°áêÈ ©·*úhrܹ«=HéÇ«QzåOó:ªÇ;K¿o¢q%¯ªéÆ,Þ4a*,i?p}Ê£Š«¯ý%iØ}s=¯ÜÜ·,ì».ýã/!]ËÞL$9Ìx¦¦Ž·Z(èâ+ÑJáÁÔ[¾Õd·•/4)-bQãD©ôa£VÎè——vÛ¦Åøþæ•‘Åãª.z®SEiâiâwèpÑmúÞ©šh«ä¶bë8{Ù½I'¡W'BÍÆ`ª pvbäP "NG!‘Ù $®9´‘=…N´’0†º‹YOw‘ad2Wÿ´kôºG¾„–þÊ$oNcWc}E·ý(¦ÙîcñZÄSæ)=Ô·kËWïߊŸ½ý;ìžFóo‘7K{Ö{FÐ÷ê¾?Îã´ÖÖ]÷Zsã-œÁdëæñY\ž·Yã,®V·žXÉ–_mKvúMÑ6ýOHÕ!Ù6íz¯ö]ÛcÁ4 ­g(ËW~ÇcpùÜ>g\Ùð9g+_CR=S)o>GGÉIw!l€ÉYˆÙã:ˆýÆê ™T–dg=xCÏ ¬Ç-xsàZûÌ:ð¿ÈÑUK{IÌq€ÇªLQ‹Å#óÅÍi•G*ò<´Ùõé’e9I”åWÔŽ:wÙsˆsz§CÑǦ5ºmÁý;çéž*gŽþŽuÿ&¦©å¿,bµêXík¶k5lê•©ïõ4Ë÷ïk)ž’®«K:&Rî?h¥­\ÃE¸á'>äX§†)"%Sè›IÇ[‡/ŠòO“)îZþB¶S@Ý㹨I•Ðæ©’Ú/Š«G¨  4;v[”¡›ÅÜlÞ)1ðÁj”$³5º7ŒN¦#Ôÿ#ÆY"RO$ìÄ,eG¸óþÂ'“øo*h亮¤‹-Æ)+û× øÍUmâÚ2•V{¸ÿ~*sè›DÙsxœÖwuònÔ´õú^@µ—­¢çsþNMk1&ršä6L¾¥6KWkÏ-ŒNJ¦“&¿CQšMylá®ÇE.[ó3¹œAîÉ+ÈÒB­eæ‘Ì}%díí33,ruï3÷Ç•X#ÉCjuf.ˆQX´­!b¥T«•h““í°[¹|¨gˆÅŽÃ€Œ²¸hêÊùFÜ,8Æ^ºÌ}n <‘å–³E‰!ø <ŠˆeWy RlJÖ‰&áS£y‘!-(*Ò¬ÜL…‘£FäN]T‰¿îV2<£ÜAȉb@!%â’$&>䂹‰ÒÛά½-¿çp¨ñ-aFr…˜La~ŸKÍù⮢ÌÖ÷t‹€Ûûàúpe¡®ªÀu ÙlÈHäIzvRñr.ôba)R7HëŽü©ˆÐ"Æ ºZãR„* çí", ˜²;…$¤²I̳„ÍuðÑ$f…ƒG'FæP? «Òhÿ“±µ°d”{_öËF ³dáK–‰G,€Þ-%Áž~O¡(×uËçbªöúx~›ÂY6êk ãõ~¶lÛÀëKÖFH¹RÈ¡ºÇˆ®ýæöÃð“JÈÏ ¾±UŒV•ä{V‰_«.ʱ±žÊî‰Ú:ÝžÕ‡ñãò´’<’iû‡0pžÛ2 %SÙ„÷Eÿ½'^ÜJ½—íÁ®¼Î‘ Í´:–.‘(?í¯< ^ó ãþ•–ž>E‚Y},†-¹vÛm²}ìÛm¸ƒj ¶3€óåì^wð)QÙ:8 ;ÊÅbbŒÎÅ$öÖ72<.ªØÇ2d[ÛµŽ)ȧ+龜­ÄmQ+IXH]Âpï<‰,J%ø!Ú „ #-d2©WºÊ §ÛŒÒð®üðŽÅ ž 3?ýTœ-iÿèu‘}n<½ÌI!’(×£EÑ#eb†G#ÛgvfZ„qNNÍ)‡¦- ¥¼ ¶ùj–©ýªÂ¥o_kúúÓýò±ˆ$ª#䤎‚i˜,¡Y”F̧™Wæ¼G‡Ë@V9ŒrGó+êû­ª09›2H$žášº‹¨K›ȶ¢Œ)ŒÆêÔ¬qÈ .Ä€=C’1Ö“òRªÅã<áÙŒ¼ºË^'!ì”æ_ÙzŒ!ÆÞñ&5ŽS! ËÖOw y¢ý4àe® Cÿ¨ÜçÖncJ:Ð#&@N2¸ãÔ`Ü\˜°ÿN.ÑÕ–“Õ™)MŽÊ=¶³áÄñÍxãv¥ÚË^Ý:Qcá1V¶×™¤1´Ñ´c¼É'xÄÕ‘ä /t(D[²\ƒ!°e¯Ò“Ü«nij×iD;Æò—P‘`•Ðð“\&KìsÛ¿¦¡³ŠÁ£Ž$ç´Lˆ7ËLÇ•-ÉPŒ9팂¿1úËZdeá•™föe_î"U‹ˆB¹!~ä â9×þœÂ LP ¯G•ŽŒÙÆsœ«¡f’À¶Û™ÆÜ6¦»©0 %z­ýÎÜ(ûαpAG Ý_Ỻºª*´!BkF@ŒÊKÈ壘śYÍ“:GçñnÏ,ÊEŒ±F‹®ñ‘ÂÝšB³[_Ï#!²²³¤rE/ + –8ו*K‡/ùªj„v[å{BSÓ×qèk9Û"­iûæ0壚ä†3 ÊÒØ?ö˜žPÊ>*|ÇÇz}yN ÐÈÔÓ¨ÚuTƒt¬öi~öðºT(àb•_J¬ö~ŸS†r³¤‰,3įtbzHHxû¢Ü -4,>ÚËM¨£ýÓœŒq£ Ö­!ikN‘ _sÛ@U›RæÄ±ê"tâ`ýL! }/.Å!èeÄàÑU&9@Hñ² åŒFĽã®9–)ø¸çØ“^—cžŒÉˆÆÅ1’%ÆÆŸÊ•ù“¨S!CÄ |[`#‡¨ ú#©.•Ò€´Y©?é÷}¶-®!Bê" z[íƒ?\ž8kØ”Xf’YaŒ¼rƦIŽ?>ƇUrZÜ©Ôc!³ŽIÝ¥*b9l­`©<Pu.!íî¿’˜Ä½å<κ¯ýZñiÙXékúë¬JßÒqm2qÔ 0 ¤5ýžü,sÅÃËAäæ*ª^­¾ÅWb³íÃ*b°…Ç"¡¢ÇÁIRT$0¯1?$æÇö•Œñê?4«ÑŠc.¤jìpäNÔ&wxƒ ¼›ú,ÜÊÞý°{<5ä–ÁÔD¥×‘,FIøëG>ë2FÜÆyžF_úÊÝ«TÄ,O£÷bg5^]W„vŒ»„^ch¿F§Í8Ìn?Žû3éÏÙ#ln) ,-Òl|q•¬™”±*òäG5ˆËGLàä‘NfråÅâ²Cˆë\Ga»H…J÷hó%>ôìLªÝxV¢Q£¶¦{"úsuµíÄè†Q­ë¥ÁéF¯o{}­îì}ºôž°ç³/æáDr¡½ÆQÈR§ñø±Û¬X~da0–?pK 3¤qÃhh‹Ç'ohFÿ—QÙ1Ž“ ðɾƒ‡¡:™ 8è]b’GqGéUžE&7¬PÁÍ€Äæ<ýŸrX׌cü±4iˆNÊ–äU+ù¸•©´¼¤ç±Òެm4aÚŸ˜mQ¼U;wO~Žœ²ê,›þ‡-[ÅwýM¸oÇnðîâx‚—‘ÛÞY¢R¦GI HÈdr¯m‘Y¬Ùe·T¥)€ìMj~¥®ÊXÈ"(dux×’déíÄe¯¼ÑPñb4èAs Šóº–Äcx2#¡õ¨Þ¹PÍ/^{9ጩ(ôy›ˆ¨©†¦ñEì,L˜ØU¹Y;DcfN‘ðüˆc”ñ^@>àðx$unݞơ_ÿMþëo4ÿç”5§i‚ñú]¿¾Íø¥ž3 *ý»s#««KÈ~JTûR<¥Çu*¨ÙŠÂ+R¸–OF–ÕÙÒxcü••£•¤UëñY™JÌÁ 7UEŒš€´Å[Òïõ›®ÂOéx×e #)ň¡XyH¦%„Aš “ßoï[ß5€®ß!ÁšÈ4 ïGD#Ú™Û±’ }ð&UA3*¨Y!NV$âÉóê^«W¡¦8µÔ+)æ9ÿ±îðztÏþkêßÑØèß>KífÜ6TY¯(–;1‰ópU]X8H£<½K}ŒSȲ1-JT £knÑ’'gªY‘Þ0’°UOñ)‘ÑQO"y×Ý4lqBñ9e\M‚Ó QÄL²=²É-=¶eI¥F©iœ²|Ú^'Œ¨èDÏßy{}VµØ9Q¯îÃ*!àÈ¢2Q ŸÍ@®ÐvSüàzŒµŸÍ¥¦4ó`»¨ÙŒßj­ö0ÿê.sé¯ZxíîÛöì[™‰ˆRU"§IH« Sí…~Þå,k±û‚íï ("  rä‰ÜŒ2©~’”/x¤ç¡Vô½Á”YÀL~=˜/¸±ÅŽ‹»$ÅZÃFH‰˜JGþõì'cÔZ ‚ù0£FQÞÃ8¬+÷‘;åWCär^§ ôT¯äƒÿ©Û^ƒßõq½±b=r3ÿ-ÚW{{_ëžì÷äP>â¸À§t˜B©@¤õ`!U1¼Sû’pä’xxx¤UÕ–i‚È’{C‰/tõE/ïEd«JÉQ˜XÎdåVÿ¡¤Z4ëØcbn¦9 ŽÄFU'éÕ}¿”z¡greì}kþ¡Èsš¸Ð²%ÇÀÃÙµ<žÓ{d²ª£ºŸ–¸¦HP†@=­ZoOMîŸ0£mÌaöñžòÉF§+Rî&÷mÛ3Iäw+„_»³nÒÃÈgN¿ :§F’XÈHúºJJÜGOj„ŠÏI™[»—"K2Ì•ÖT+Ôº‘¶'º/i݈2WaÅ”ësñ•.(ö,„Œ¿ôøÿÎdrF:¹/$5ÄHPªšG‹¨„¯ÃZÖK)°dÐÅÙR‰7 ¦×üòbY?Ær‘"Ùþ)´xô:µF㥦wO˜ãwèß5MZ_·4©õMÈÝ~ä§Œw»ulÜ"0ïbí'1Ê“vqYXJÊ…¦ CYûq^¯ÔÑU•N¬ó9Xä–‘¿ )qÛÛêοˆqÉ¥ ž²rïÛ ôåc¾‹ÝjQNŽî>>¨Ñ)ÜFcéìÊViíѲH‰Ñs°ecdEJ%}¡¬¸¸=Ɖf÷ûqÓ–Dn=Èù÷&‹‹Ý@uWþ .úÓpÚ¡Úëß¿nŽœQu%nC¦8Ûþª­Ï~ë²XŒˆãž¹B Š]ä•ÇoÑW= ‹È†ÐæNÕdDˆ+Ö{ŒäI%wWþ0$GöË´e—¢èç”EE\U†Ks!…ñ°æY$c ÿ'éõ¿’)Ñ‚Òû®G œ47>°6\¨W+=¸P%*£«:dpȤ ƒìTþ<`ž¢j×ü=79õä£þW~ÛíÀ”tJõÊåíüløªíOm¸nƳW"Àž³;4²twU27f.Èû^ç>ÿ¶¬ï'BËz,Ù–BˆR8Ées"û’r±ô•*³€Až$8ê4w«™-ÄÈVŽÑwñí8f -ZÁBÌ•W1n2G¹€÷ ¬?\úv«âec9:Ë‘‘¬Ý!’›«'àάa‡·+VvYåRõszP¿$÷¤¬|¶÷[Å8ïA­!µ±o¦ÌGw8Ë^=òÜf™–y% eBÉ"xÃà·nŸrO0ü 2‘õ2*:°;¤·ê´lWønG,ã««uy# žÛ1ŠF8Ï|aFŠup¦Ñ}+¬b:ÇJ£þŽ»"¤r—!‡¶X"1æÃÈMËÀ=¦³Õ–iœˆè)_ÌHôª^åLFUUЃcÆ:üZOåú\ÅÉÓ rêíF`ѽýJ½ÙN-šˆê?Û«½QkœpÝf±bEh¤Šxå ÄeXkH²-мüŠ“È-Öøy‰ê@Ý]ТH “€½™˜OÏ™"Å”éÉiT©¿ ûxzKKÿ꬧¹S^7…É‹œuvB$%£í ‹²ž8ZÓ0?yðÒpž±þ®ËÆYé7nÊiVB’Œ¬ †±×”­ CáÈ$uƒ§å@ÂÑ©HÙŸøy=ÿÁRùåj+PôÿÕÛb¶í’=Γ1 ^RcP™GâªA»ñ[°öÒ0b²ÆaÇ ÇÇVˆD–«¸R¬áH˜ 8G‘ Id :[/Q‘*ÊT-.ÛœfUyé’EÄ‹®G¹ø‘áóÙ¹ë4ö8±ÁäúÜm•‹ª˜zþ`·ÙÔ,ª&YåF"3î0eíï¯ <Eõ˜Liéä ê>ÆoLp.ÜpkH¯\ºŠÁ±^õ‚±—·‹ABìäÂZ4Œí'R…ôKò ÏæHú4x÷=а%}g•NKÉí–-‡YYYJ‘ä››0p%ȸ „!_mÇ/Ö_rJ¡¤yO ެþá~§gOû<Žr²þ˶æDÜÑ.¿ôÕý¶HÑc®ÑH#$Å>ÔS¿YšÄÜ?ƒåC;ÿ3d-ÏÊýŒnq?•&úÝÁ Ø¢­ÞÕ÷?~cç?!šFåù_s«ªsÚFEHÞr¤™ÙhO·ÐÎ õ¢±FXÔ+ö•Z0æIƒÔ¯¸¾ßè–ÇðKÎXò<Åܲ©ÁF€p„—4«ŽLB0¨Wûež*°îÏÎlÍŸiÖÕA'dr¿eUœÇreẍå‚K ðö”­¤áTú'Ît´ëbõè+þk>ªÙßZ]==mâ£Q´{›}ïð¤üBvø˜{ˆÿéüöüe˜ zRÿu>}cÚ“Ü Ô¨*þÛ˜ú«t#ÝWˆ иåaÉ€‘{–,T/Gµçˆ fŽdš•PýK{Š 4e%ŽVŸkÙü?îzËm¹ž¡ˆ~df~*V!d°‹8S,’"ÿÓiI›üzK×ËòôýåÖ¥µiz{ýÜoÄþM 9vÚ1½ë!.ÞjœÝ`QŠ1Ë«†ç±=[ñfø›¼eOY] %Ûç+)FÜBü4j§ù@HÏö°àñü)ä:pµK´ÐµkÝå éLî™  ­ÈLõùv­T•Ïná–2D+Ô¥©[æ±%açà ¿0@_¼–‡ƒN±=‚ÓÈ#຀Íì(êÑ:[$·>‘9„ÿ…¼2Nq_ü¼>ÛWu¾¯I"uçÓ³¤mœvNY9FeöàTŒ‡iVfˆ*¸`@‰Za\·áÿíI`© ksèEI•‘D­Û‚9Tn\°W`±ˆš&xÕXÞF&8#ë5òBÇú¯6¬©%¸T‡TA\v,8V÷ a? ?øð7°¿õã·fý¼…FÑÒ¬‘[§PAŒq¥ìÑ2ž1ÅÚÇG£'˜£Ñ ø›‚Žÿ/õß=íá?•wÕ+ªü¡j˜^¬o[—ã¿ Ÿ&>ïØ‘ôü]Õ—·àOP ‘÷àÀG V@$ºí#Ö r´ŒŒdopJò‰Û¬c«Øî‚7â8ß•¹0³rF2Ð · êü¬ÇÛ[¨;ÆÈ)×Y$YGV@žßï'˜“-Ý¿cÖÕ¹˜ÝÄw–@­î•Ž>T¢D¿ÈP”N3Úoˆ\`~¤éæ:4Ä1ë‘›º(ý¶»ÇÓ¤Õ,»ºîŠ/vÚ)v+_ÔŽAú¼úl6Œ?gmêY˜*ò®§‡âe‡Ú+\Íñë«òdpSÿ9„-Ëžz§aÀÛÉ#‘óÇ×+>¤ó™Øï§Ê—-FðKõƒôËW ‘ºy¬œC)§­ð#þ«‚º£)&Y9‡¹)fä~gñçžOÀÑõå~'×øÙ“"&œ ¼}#½ùܺ)ã¿Èôþ Üçb5ŠRŠÅ{âøÑ‹)î p«Á Ð ö#ò<Ç€xùãýùך5'Ÿ?ÜŽW‚><Ç’¼ÇïÖœ¯¸ö¢þg’rx8GóÇŸödþøaÁà1<ü’>C(óñþxõ‡vUâœ~ÏÛ5ã„-‘8×ó€§ú>Gûx,é%ø^ݸäy“Çë^ô.xñ„Ì÷ã Å_çŸÔ} ~ û#ŸŸ€ß×½"ƒK#ÁªÇšðÿnïu˜ÊE1Ø.ýÏõoýoŽ7}‡‹éwÅÑc5±[2É!A_Ú‚Ž×²‹ŒŒ¼Â&·$lðX¢"¿M$µbEÖ›¹kAÕq[~™‡cÖ3‘Ic•¥G#UlCZyjK"Áœ§ÈÆÂx$jT‰\Φ>’4 ôaÔý1øÖ7…U^†ïAÜÈ}È·mº­hæ—’²J³;G ‘íÑ%ŠbPê3!ò~è»âX5*¹-Ú°‚¦{V÷¡»,ºüûìy,ì˜ÊÑIZŽrì8'šÂk÷]1ù»É>Òµ+î¹m]M.S–脦G’$D±”à@ §êÛ¶2W.bŸ5®2ŒW›”UÂFL­©=£òçÏpL~ÐN¬a”È“ø^7‘£†Af3)–›†AM ’ ›új,‰ÕÊ• ³8Hvæ0ž(Êl{ÝT22ŸÊ\y¾;…ÉN |¯®Làþ—|•žÖ¬ëÛŽ¥œ‹®ÓúÜ“GÃgrýf´yŸ)g4ƒÁ6*`5y`Âá®kTkäñÕq4«Ç‹Ñïп[…ã[2[¦¯åüE[ÉøËXÁ‡£²iž“_ú´ù(ìïÿìø$ä»K#´V²»5¼<¶r þîÃj(å°zÄ} .{˜×«äe§ ’—ZÌ‘°ª¸¬?Üš¼®Ž˜°æ£9’ŒP#ÒŒã³ÀÛG‘ÙâѪ²Þ‰¢1FV[PzH¤V–~OižÊ4Ü/íhùžøeµ^8â<Ûö–¿Û|obÌu›WU!<ÊÂzï=‹f>Æœ1U™nƯŒM‘0#rfçÒ•ðØ/Ö­®ç²õâñVN–k±‚Ù2X:åüƒšÌe7|½­ÅnÇ…|–±cU<¡ˆ-—À½Â$RU­©m—$òN‡¦ÿL¹´ù¾×Ôv—ŽÙ¼›Co±4÷tíG«r}o)‡& ¹ f"Z–åÉã®U,góy"+ hŠþª—Åy7¢|›/]JNÑ=+)^cXÎ{ñd>¥©R‡0KyN z"ªËöv+~®d¶íz¾¬û̦?ªG‡`·•Ø+Þà nxÒÄ9<Æ?7[™ÁVq=…Êcéä °^®R&Œ*Evu±öêIš™lu[ØÛK:~µ¨cz÷ªL9[u¥‚tžÅ¸âö/QuJGîƒÇÜ÷Ò‡œ20ÿM‡D\¶s5ãØ´ý¿1´e1wð)ˆ‡Ç8L-è5=ȃ²A™µ™ÇKG!¡Ü–mbK¬ÙÊÑ÷°O§n£ôËæØ<¡ªl9j¹ªUðûÿŒ¶lu†§V¾µâýsMÅRÙüUa’µ“ù›ØÜÞ±.›‹0S¶ÝÅ$ÑM·èŸçl¿‡ê4†#32é-±7¦šªíàK’åËéæôâÛ‰tªFž“5çÝÇp‘Þ*‚7“Ü$,ÒÝE÷e÷Ž(Z̈ó\tâZÍBÉ÷ºòÌ·¼jØ î¯¬ær‹K9¿dr=7 |µÇËepø+Û5ê¯zŽ>å(L.*ýêWó’cêe,Õ“_‚v±f¼oËŒçÒ'’pÞ3ðv¥ƒÕ/]lÓž««l¬Cë9k¨o¹–ÆÝ½dö ª­û:œØší¯)ËÅ.9EdŽªÀñã_§&ë>iñ6˹é³ì{N›æ&î>Fú€½ŽÍ=›CÙ<9±j:¦ „O»È^Àå²Tp¹4xaLe(çÊãù—17GÓçù¹K弓RÓôÊ@,:¶]-^ÕœðO–Œ:¿ J1™òì%~¢=VŸÔß!ߎœcM~ÖcS bàõ¢0†xãh‰ÂÄÿ‮NVWdê o²ùgǺÆW=GdØ£ÂÙÄÅ’·lf0»-*÷"Àk6÷\ÃkÓφ‚¶í&/]Ç[ÉdëióÙ(¤Š'zñÏ*S–“}KøÎ?“3›ïnPÃfð0a<ãdì奩NçžõL= 3ƒÍP ÂÎ&]urÙ‰l;4»R;1½ŠìÞ¢ë_EÛ®½²GsUÔ)lXL5\´îFþn+™¸²ÛŸ€÷ü&ÇŠl‚ÈÑÕw Tå~CtÕ¡ˆ¨mnwâœã¥ÉÍ©0ê‘)BPê(*Àq{ÕUp4ùnUŒó1 ƪqPzn‘Îkµ…ñÖ<6k°âèæq6ÅœfR•l…LKJít³–©Y޽º³5ic’å{QW–8X<1,ªx7PK ˜âµSÅ"K$m42–W`S •œ Y\Ö{§+] NCB¬õÁ~¿â/,.o­cu'3àëÛT8«¬[1åŒ ¤l¶_#=­å!íޱ˞‚µ‚cPMÏ}9ùÇ=”ò¾Bž';¿á|󬿲8‡×°l¬;nN‡ú ä{- ɸítçÂã* Õýƒ!2j›uËUpu¢Æû ºßæ¡¥ þSÔ”å‘%Òt±¤+wõÒ–·ÂC–ÐÔœÏÄÂ1ŒbÁjäK¦Ì½¿ÓíÇ\èÛ¢‹4ßu ¡ È×j±H§Úo¬Y»7!GÌÄÐeŽE°ržYñ¾«¸Oªg6ì] †Ô"“^‚,…ì¥!ä®ÃŠÒ-^­B¥Ù±´vL޹°ÖÄÞ»íã°öqÿ®Ü«VzòMC6¥ë˜5æ3Oc·¦;sk,·ƒq7*5=³kÿF_Ãæ6‰õkì¸Ë™*9ÉiM™{ 8ãýA»f˜óFú/ò\¾¯û®à³âþ—â fᓳ“\«VÄèÿQ^hßòùY:ä6jÚ¯‰·ïèä&gqÇhvÔD‡Öys¼û˜rI'ÐõuËub.$×M¶ek‹cÊò„}\È‹u’ÛѵSŠT©)ž¼Tû(lÉ#¼²vÍÚðÁcÞ=c¬HÅ^7bâŽO¸[,+-Ç­¬{bä±E$2Ê`f*®†xÞ9:Lg¨Þ7ŠfU¾«Ò¾5ŒWQ‹ÌQxѺýù•/m¸|%*¶|Y_pó)ð÷Žð/®X­ãuݳæ´m«Û%Kðé5q«$ë&__H²ºúÄbĘDŠ‚ú}2øk%ã-¯Ëû^ék›¾óä×ÉSÞë:å²y--WKƒë½V¼ìô¶\¥, /ßû»yÍ•U[¹ns›ÕÖ­NNzqˆ’”™·Ð7Óez“£ ß:ܶ†œ.<É5"‘sѽ#Q»pæ÷Û‰òÆí­Ñܰþ>³’Ž=³`ÆlŒ.«ßžIñúÍ(òûYi=d´©È“Šù+u,lQ7|jX‘Y},É<2Ö¹lËU"é}ÏßR’¤¢>Q˜Î&Š•Q+Ã/ÛµV5•†F>¾¹KéÎ꺦' âµ*kÞòvåÿ4ÖÛiÙ¨Óg°r¾NÝy²YJ›Œ*òä²9ÐN½iμÐMP—2žƒôƒo3fî;É~?ÇÿË íåK8Oì°ë8šõ݃ĸmG_¹&‘©Ñ¥«b!½¹Ñ±šjµØâï×­³Ù–KvT¥OĹ޴9)¦¦éÅôÚ˜åqwÃþ–ŒEæƒÒÒÛßÚÊé<[WÇEªíx*¹ù5Ö¼_(¶u¬\ø¬n'+š—slª÷ð9g Jô,.R”R[§–ÏËBŽ:¸6r÷ªªõ%óû®±‚·ƒ­’ØpTeÚö5Ö5¸§ÉG3g¶Í&*‹ÖSÙ("‚VÉàÈ‘G-?m•Õ¹ïŠú_Þñ±kÓè`“cx¼ snÙhì?ѯìrøû w·áïì4R,ÄY)nµÅKÌïMj F:–O~“·½w+£Ú³âMnŽ«¢yÃûv:®fž£†ß˜bõ£ä Õíãª`2‘bçÈë¿Ó6y m£j0ä¤ÌÛ‘êÕUM/ˆsî¡×ÉÊ?2G«¢la nÁ“Òf¶víÃÏ•å\y‹{:š63Y£?ߎ²Oö¢çµvJõìÜn•[3ՆūÇØÃN $Arì<{’Ò®^6©ÚëJ…}7µíÛ\ß5Û¹=O`Æg¨b6-‡VÈÉŒÉ=“MÏ^Õ¶|Pžd‰åµ‡Íâ¯ãcøç¼Õ`™ãŠ)äç×Ö7ƒ|¯åï+\Øu=³bq:giøãf¬Úå}‡±bsï•Ükesû>ækI¬‘ÅYõ™4«ÛYÛFH2Ó¨ȳ7‹üW±è>+ú‚Ô°ÚV·€Ù·3ýDï´©ÁŠÙqQÞ3»†˜ùŽŠVlF5‰Ó6jö‡w]héHi²¤æù‰ó2Òü,-"i$›ÕÑ ¬§o%>h—/ iBˆI1¸úpÉÙv€ù«~-µ{4¥Š[kfŒðÂî¯fÕ–*íÿ,M`NõÒÌiË«±_éÁ^ ܃è9%¨~Ò6·TÈ…$¹V¿õf/^{KehìU¥Q=ñežiN¬¼¬ñGÑöè›Ejÿ‹õú>*ÉùÅ{ŽÍ©ÛƒNÅbré|щۿ¨hú~'‡/fÝüallñØ·ŸÅôÈäíO(uôÙ¡ôcå|NlÖ³>8ÖwÊù_Ùñ÷€mɰVŽ·Ò¾v–|™›ÿRëx Ø }ÍceÐvhóÚñ‡1~Æ­ž[íq˜÷‰cñru/Á¥»¤î,QØL£ƒ~ ¹M’?r¡J1.•Å6§}¯Ž—Qó?‰ìlXÝB–ጱÊfwnÑ&Q¨ÕÎøç™}Ó˜ËMŽ‹‡ŸRXŒóÞ½äG½?eaj&xjI$ nHf°µ…k/X°÷gLy+%šêÝDÑ!)\‘••º:«róôGvîZ\|mãíË[¡¼ýBí6²Ùj˜©qÛÿ!x𮝠lOƒûeFÏQÙ¡žEk¾áÆÇ1¸Y¬’}0õŸ£¨JÛVŸ‘Ú&‹'´ã²>6Èb¼’™|$–´ORÒ²8Œæ…gbµ“tµ ×%L5 c”©¯íïË“ÈA× dþ!ÏÏ’fÎhtÆqè(B*c|`Þ¶·ðœ²ÔyˆÆ1Ó‹ÔÊ2êl1N(Ü÷*«=AD–’ЊÎe±0¹ZÀ¬«^ÒI¦3Ö.ÞüÅGÝÕgJ Í>ƒŽÅ K0Þ¥58¦zÖeL… ¯<<,•Å•™Y„:õ§;!޼Š.ª\Q®~îÞÿÃgË^<©ªcñ›Œþò=Ï‚a|æ÷\’ù±bì1¬ù+–i[ÇTûÕüItB@=5t_¥+ûâ­Ç;á/ÇÞ©×öÜï‰c½[#„Ÿ)SĸÜumòln6µïMµnÍJík0Éz䔩æò²K;/Õçy¨ºZqåIKSN2˜+ÐɪPØ«Eµª+ÎB”MŠ '»‰y^³V˜G3ÅÉÍèßê+?³yS5GVÖ5<|aä½;f³‡Ëëšîz»gÌú‘¨ëÙg×qtóv1>Añî¡•ñ–w}Ø/dò»n—lTŠJµ¤¤_.ý!ì;æ;eÈèßL)ñ½\ïüæéšv')‡«Ƕ6Ù´[ºîÃv8hÿMÄØÉ>a­67W†ŒPQ¿BïÜÜ¿rGÌüCž¬r“Œïv:™ˆŸ’Ã4‚IÍ^C‹W–&2æ#(µ`Ä,öúSšk·W#»³3–1ÂÚP£~ÅO¹†;µé\†;UgÈÑi…ütleBÆÔ¤†ò$Âè¦ôn×ŽÝ 0d+NóǺvªÜ†V‰ý»HÏNYhË%YƒG•û9Z¶:À©ÆÒI õË _I~T}Wʸ*ž4ñý&l‰³Ù“êBÎÉ[õ¬Ž[FËÕñ™«Ib®7!¬kÙ¯eNÎ2˜*ø»uÚ¥#Zͪïg>¼5´øƒäÈr˜4Ì&á¹ârúÆŸ^ÎGF• _·˜—©ãñ:¶·{5­fZ¸Ü]äzpÃÍX±³!hsœÖ¦¤4çʺp‘&Z‰#¥ŒOJKÛÞ*Õåô!§)ÇX”ÄXˆÑe_—zLn˜·M û`,Ü/OÂ7.’•bPFÒôYËÊœ-Ø3£-Åë"^Tè=ÉwÁæÛ|vãD]j·ÿÍïw ´¥Â§ ýߌ]O툛Re#³Ór©v!)‘—ÐühÑHª¬x 8•ùþ@Íw ïÈ¿ïYŸ‹Qk·¬Ïñ%€ˆ€WøšB^C(ç™ãpzT-ËÝXlò}+`r}çVSŒ#¯@~R)OÕWûfû`šKÀP=1Œ¡&[¯a ÚɃÍc²pÌn«jÚ÷ZÍ?o·8¡D²ÇÚCa»†D—˜QKבQMF´‘u–Ôjßký?­µ~1 :ëoÑ$—¡(´€z³ò}׎UjÊ}É2ñïЯPœe•ˆ ÙxTS)d‚J$R:±© rµ¤Ø&1†+7T 2·~Å~YŒžÙÓÝì³ÉÏñXüku‰‡1éDôÑ‹jüMö{÷ÁÀ°üÙý÷ pÚãlp£ÚC¢Ýù¤ÿVçšÍídfQÔû!K*©%‡-ÉCÅI£>íò v që7&‡58éjjj@ѲRT긘Û-ew2qo3ÑŒ§ =9uÒD0ÕŽgpÙ8kË…»*± Ù¤”Ë,<žâsùݱæK¨#ldI"9.jkë€F˙Ğ^YíÍÚ«F…* @ù– K™`*J{€ŸM'…Œ±|ØpÒ(Rd*Dª”4çôÑÄ%†øÇȦ˜ÿº§eBçU˨ê"œ(N³4u‚<,0Þã’ã½nÇŠ³s$ ©õÐÖÓ{|Ý> ªRGw+uelq‡Gó˽BO„+­ÞÏ߈·È·îb|w½dqÓËJî;QÙnP»^vAJÍl]¹ªÝŠÃÇîDð2¯ØÝ͘+61U}¥#‹ßNPRZ·‰éýCíyŸ'Þñ„~–Öã±ý]gb‹ÅÛo•2YÊØ­7#á%ðþ¿å1e±"9&ƒ+ŽƒÇç#vc3‹%<6‡s-Õ«‘‚݌۩zµÊ—ëXâHl×¶¾Å¸l¢ó I#",›ªÿÓ2S!žCé“?‹Szð¯<厭oÈš—õu§¸çöLT’â1t4;/ã\¼V±MB¯Œíf7?ôlt9³í•žÕT¬Û7˜ü—©êStÇýLï‰ä?}gìþ9ñ§…s7¤y S§·c1õü}ÑŒlÓ¦F©ª`6(íV±Ž´ÞôÕÈ=„Ð|1âOÚØ®xËÇZ†wp·ýCc·€ÃÇŠ—-hÌΠ欪òV[Ë0­!+^D 4œ¤VúsðE öo*Wñ‘äÊÜÙu—[¡>É~ã .eã²ñÈ£$ìª÷.ÆÖ?æ„ûËóWà9¿‘¥¤sꌵM”Ƥ6Ê2;SÞÏÆhú“ùIÃLŒ–ÈØy w^9mâÝÇΛ_™üË’Íì^l›[ÒüÏåL|,~§pÜ¿b!g½z´qöM–…g÷^5\ÿ™<©…òõ*äü¯ä ¯Åx¿-ø‡Ç–vO ù/M»ŠñÕ‚®'‘ñg™>˜7,>+iÎ6Ö½%›[Ω°gïd(J™L@ŠÌ0Г°røŸÆY»ÍKº.µf&͈ÉoÑŒdMß{R*X+y„™[îßN”0‘ÙiÇTA1c½wé÷Á™=ïäü·ˆô<ŸðéŽ\nßgKúÝaŒXâÅÎo˜3ÐH¢ŠæÕ b†ï@zmO†sOI§Ìô„ÉfzlŠ©D«ÜÆÇ {GóOG©bFôDVŠÌ…­ûùâ„è+ò6WêêÃÅÔ>¢~¡rTüEãïŸ>oÉð[¨»_—¼W´W±{h50ögº¸\ÄìÞ2åZÖŽ¬1EZ)¯"4ž·ß0øËÈ{Frטw}çKð> Ãx}—%á/hšÖñâ,§j£aÌyÀ^QÇâqžeÅyC"R—_Ý-çÌ.ñ6:¤¬‰jkkZõ ƒ=³ã°”iìÛ%\--›;ªäsu°Í_NDÙqsj½ZŽæ,9w±)7‰³x'ÂûÖÙCÈŸˆô-wÂÉ^LnÕ›×±öòj´\KXزð5‹"„ª¯Ý´Ä2¤Õ:õY«ðígD4µ˜j|ï™)KRy‚%8ÁexÂÛÂióñŽ£-M1‡Ê!ÐB8B6­VCs"÷ÁÅUúªß3WvÏ¥A䬿ˆüiç­‡i·‘ðwéê™™ ¬c3–—Ga¾òG¯K»^ÈÛ…š½¨ïÁsø:´@¹¢ûo•¼ *nþ#Õ|ß¾oš_Ž>¸7°·þ/MÖ9£§§ËFå¨Ô™uuÞeÔGÓK[böã'ËiÝuH¼?˜ïæ·=ê ʸM“Ä9¨L‰¾nz!Ãcòº^½ãïªxukþ;ò4ú„2XËeëegÒlÜ´ñQöÓ£DÍè|Ñä/)ùkS¥„ß|Ç›ÀÕúLñ–zmwnú’ñçÓ>^mÆŸ‘7íS5˜Ìî5°_÷<äÑãjaÍífVÇÝ­ZžZüð0¾aí–Cé×À™.Ÿ²žñíÍn\Ž;P:Î*,= ­”q‘¦¢ö²7`UŽæA‘ AFfaqŒçÓ§6dÆK³xsÇy¨°8*Z¾ nê˜ËUñÞ,M,(ÌjP¡÷¶@ÅÆ¾ÃýÌ—z—îÞ³çJÿÕÆª †Z—$D,’…d¢²ÝÏŸÐÇW,J1:adE’EŒ¬É ƒÓœÕ×rð÷Ô._ÍÞvÎáv­ûʺŒ¾°(ùã|e\_u<‡òž4Û2¹OC¡yþ¥Ñ¶z~Uñ)Zn[~Õ¼-àß+Cæ_/g¶ }djÞ,ËPÙ7|ü=­w^Þ3á×èc§¯Y68⇰I4¹jÍ @«±õÛ˜üs 6N××KÖÓã§¥>‹BU4¡¦ËެÔq‡[®"TÅEV‹šÔ­U ‰§’°ª¯¢Mãœf34m^\FdM· |%/±Æmq\{ñçèVˆ¨g>ùä»N²cï7º[ù[ÓCáœÁÔO˜'4“ K˜ŒØ%T’Š—Höj¸’çô™:GTj(±þ‘néoµŽïfƒÌM_øÏêR—Ÿö‹U¿ÔQÚ<wh«‘ïõ-—!…Û<"ž‚9/ãVÅ¥5£1ÇŒŽ6¼Påó™&’ev`Kõç­+HmSlÞv x//}^âfñò·.Ø¿¤I¡y—[Ⱦ سP³Í.#¨¶G!¬X…n>Xb²šõ˜0Õ§gîøº¶ù?“êxïH¡ä«k$³opë8øv‹[ ›råa®.{öUZ;V}ß¿3;9”C+rløÛDzbêà?Ðú«ájl¸ÒÄK¯ãþΆÝ^À¾6Zu½ŸfüvÂØµ’Œ W•·4ÊIGá|âc›èc@ Òh9[†Gæ Æxw⸌¹eÚ€ÄÂF5¸V¼ïµr+Æ^XÎëÿT~9ÊlžQÙ|‘óŸw¿a÷Ïù–žsVÙàûÜ¢c´*ý-yHÕwÏãôÈéSsÑçºØË‘†w¿ ‡Hûe·Ë3u +¤®ÅŽ +J»šÊÀ­’Y,›" TûUyÆØx§ ºä|™‰ñ–Žòa-G”Ýèjøš»Uµ¾€d%—+u³<וV;ê$Y2õÂKaõ!7¹(Yˆˆêˆh̤…„‚zËŽRwe„IŒ ±nä9]nZÐÕÖù½sŒ£lÒ4S~þ+÷ÅÎkis„ôàC¢ à,½ý5HSëƒ|pÁÝ]\ÀãiQ[òa"ÄÍ  ±]8±gçÐC«ìÅÝܘÆà1ƪæÙ`¼%@¢lõf2D ) hĨ1Èåä¼h‰'ä¹-Z3£öŽrT¯¬w,"#޼¯<‰#wfNé1<×NÆF3¡÷iÞDHG¶ÿ=ÅW!ÌÓŽÕ‚ý˳ی±Æét}¯ôÿ^ C§-ý¼}›’#A“âp~¬ 4ÑZtøGË}ÁÁ€5NI~#+±*˱H2†àX¤@Û0FŠ?–G=G€u~,RDyŸÙsvÕÓ·ö­­eé«kh_|Ušà¼eY€CШ`ÊcÜ“Ú@ñ<cRO >äŒE¤>Ñ<쬼öH^FnUÚ7•Ù—–I«Ì‘„{Vã FÅ&ÓÕî¡6$–^òQ‡_ÏáÛ¯ËDãžñõçÚ™ÿ7$Õä[²3*Gð#<¬ŸœB2XˆÑåíÄ,ôÉ×–ø€04µƒœ…)¼Ÿéâvk(žÛVkµ`Ú‡µqŽ_Ü`ÜdŒY9$~ ‹óQ‹û“‚Rã)ã€Û¿âZ$EVY?†Wfø mΔ }¶¶Hh&ŽU(èç)ðÀ…,‹¦AÕÛ‰xýº!âÙÉ4ŸËXý ÅÑÙ›ÜXýÁ¿ÉE<òÜuy’)cõ€¤ÑñaYŒ°¡.€_;=¶0ò× V™¹»é¨¸nÌç°ön¸Á–EˆŽ¼¢¿è«ÎJ̪ %ö=±Ç‰Ï¼€ŸAÉϸ‚vö•ÑùfFsÇÏ)ø¤ƒ·þ6d`&Ç Hæeg%^NdU ¡£b'˜ùAÃÃ⬠û—TŸ€Hô*´2;°$+/`è €À7nI-À-¿Ù·jª ·À”i¸"x½ðxNïÚòg€ hk ¼Ùœßß‚¾Ûpˆ´A"‰ %^Bá»Ç‡ˆÛ$†H‹ãÚ.ÑÞ"o¹ˆûq _dpù pªð‚A,Œâ~³‹µY_ÚDÊ*Ñ/U9=>:Æ#"€ qËE$‡‰)Ê&"Ó0@Þ„,>:“î8’O– !fUŽwiPΊ,¹,-ÂÊ+€P“_VÇëw¹ç|X{â°pÄV%ß5{{ÿ°ß 2@K8èÒcº#…2=Æxߎ‘·Í‚â!Œø–7_Zˆš.Ñq2LÓY=¡!é Išþâ»Jꄌr0—1?‚…J´ÊÑHÒg‘•¤R ¬j¤Ÿ™>ådqíˆÕ–À-Ç>þñÙ% ¶O¸ ø À.;*S‘ýÁØóem«Æ…kHÐe*)÷0½€«²·~Ü=~ûþßèç„×ïÁëSy^RKÃ"'!™å L GÜt‘®DýR²ÈõÖXì倫Β"¬Œ¡,RL”ÉÔŠ¨AžÙ(§¢ 7¼]ùØå÷‚ž‹ìü ž4%…†ÏNcÜ`}h ‘s&4æä±®¥S켪í^%äÕ•[%‘ÐzFHW¶ßTÁtµãÛµæZv¾ ïÏóê- Wðizý^ý2ɲg—«Ÿ"UhÚ)žuŽwæ*öY¬ÈM[B*àIë¬Óu÷¦²‚ïÔ)åG,B¯èðxä[‚A+ÈõÉߨƒ §àyባú¹úiêóûß÷›ÈÔÑŠ¤-i‹0I–F1¸< ?'×YgVIæ$qü²€Å,Œ®HýüÙÿ¼Å¿÷Òízq_­G?§®¸ô ÃC.55"}Í7¹acûUq§ UþâAsÈ#䔸buPÇüŸ×º“Ã/doóÛå¿|¨*¬>øäŸŸŽ£ƒëÜžxn /pxöäüƒûãüÆ ¯aûçç†RJ•ìx|ÁøüñëŸà¾ÿ¥ÖÏné+láºOÕ›np‰³ÞÀÈzHØ\¡,X²}”ýXf‰ù* r>8öõ¦ÐUµ½*Ó–`Ž„–u¥;ãŸË±®!¸ùã×½S=þßçùÿ—<¥“ÓgÍ{÷{ù½Ž9 ôaÃôÃâèdfmþ¹© …‰™¡>CÚH3,Ií´U¡Yˆ›)OÛ½!Švš1g ¡£ Ò© ðèBö{†f)"uüVÀRØÔ î0qX>‹¿Ó'ŠÝ½µ3AºI 1{a–MûeYì•nLhÖ³måá(ƒ¬ ´–9‰ºcIJ˜•B³€H¾ØLÑ©ÍÜPj>eQÏÐþ*äùNœÿ#N¶Ù‰Bµ]û»â¸óœäW›æ#ÿéåšÿ­q·‡A懄•OÛˆDGÝ"H¹ v½·nb $ÇÌ.HÈx& PÏÁU€x¸PO7_x/2Ê„KEU·¬ ±aœB‹íö_‰Cû½”7È$•A2¢¼_²Ñ’OÉ= °[íÉ?‘‰îßÛùòªÈ–yëP“Y쾺Qô×LQ·ë‹®ÞþÜÊe¬ûJaý/³ŽýøÕn¤ „H¬Šÿš¨‘£ ‰lZXÙEi $lÖ9Æâ%&Yq8xóMsi…ÅÇ™’½•ö>ݳ‚Ì-W-UKÛo½ÛqcªÝYCÝUå$oyz€A艧¡è¼…€ë=ê¿ÿÆÃŒý­žC4([3+<­Ô¤‘§Ý)‚â"©÷ìi¬•z°==‘1ÿ/æ 0Ä»ðì,ûpÛ¶vkgmͬq}öîØÆ5íîÆ‘€½@‘?"èÀ/++/ʰòï72B=Î4ƒ˜äÉv»žû¥Ö8TA,·qxÚï8ß~7Háïìõf6ììÊè8'“Ý:‰P=M̨«á2¤0ƒ/,©!Oã*JÅÈc g1–¥lW (p6T¹×»$e¨äÆäû“"`'ã·öò©dúŽ>ÛäAAÏ.?u‘,I׎d&n瘤?—±Øõ­'á?=׉&÷©býªÎÞo}ƒë‚C”îû¸Ãçæ¸Ê<’rQD}Õó±”sÏB’I?¸× ¸?‘й+ëX£Ž2AHy †düƒ³sÀŠb¡e¤øWOúí2‡#‰Œ²rȽ ˆ‹îPItˆ?(òdŠ`ÅHˆúÝ3#¿¶ùe¯ÑøÒAǸeT5hÃ,’t=a„Ev?åf>™“Óh0ìÝw¬—W·—Ç?Õm¨ÞÇo·|㌭8C0  ÑöOã•ýý´ä•)í©TPâdGp²¤~á’7dGýõCÞÚq0ù!°Ò˜¢ãÜR܂б€å¤ù÷$0ZG5Nk(ûˆûzqsÔ8ÆKìº3½ë8Üå9Z/É¿·×û5}×WÈabJ¼3CÏIAK|M vJÿÙH‡ö^>ÌbC l¡þ»†•úBÈGf@–Útµ]ãŽ9AªÛIV’Ií©Q#H$#þȇ’Ü«¯¢?ËRrxôVYOlÈ­ ½kpeojE•‰$Yciå^Ñ4Wø_Ô&8ýëÓfôcs½w߃ÓÒßOròîѽÐ=ͳ{œj¬dæFHdÓ”kM(RÜ¡hûÈŸ—n©ZTýs8ô0U‘{s¬aD…;/à€ •KD iRH¬22'!€{˜Ý :»´F:€c…â"Oû•~ZœŸÊOOÞcopËQÇ"+0–RÌ¥C'ÊðÁc—3)-4Ðl·¥“ôÐo¹E‡;^CÛ‰ÓhP¯nøÿ×:f‘ÿexRކ8Ï ñÙ<UáHQd­ú®ýÇy(bê߃þ¥‰C‡PÅ^šDRc’.±÷£t”¶/h"È‘žm°$SüK, bß7Ü!XUO^9?Hå;¬‚4RPFbbch哼];~q¤’vE…º“ö÷[Ú“‚"Ž#ì0ãlvÆØ6sÀ¢;ˆ-Ù³Ïßo7Oâ÷²£•åG  •~HUíÙæp²iüqõ~¾µ1DV+#Œ!îB(OȪđ€à;7AîC"b$T´ZÊ!oG“')oǸ@c1ö+#—RŠ&ø±'ÃÖ—‡«ÔŒÍј `¹èÝÙÈ^¡eŒ¡ä™„Îdš§ (áÏTUùiâ&Aì/~%‰U¦Ê=lC÷bê´Fb÷_Út*yCñ7e"oµã›UÕìKùF=h$xÛ—uqYÝ‹ ÷¶R’~ä<ïg÷pÿÓÃÁ‹ŸATÎp⪮®©ìyœ¤râð­÷Û¾k¶×vp"ÍÑ”N¿µ`âVXŒkæS1B@ZãâÔÑ–‰YàI #ÖP $—¤c‡µ3Ç# :`Y݃˜ãÍKܪ1@’±hš`ÌјԠY¹cV-ÈY$PíV9Œ*§ìÅ}y僲«1`c-´lÑ´I;'¼ŠÄ€žÉÈÅÞÄrÖãÙ é)%ŠÏè`´ºìUsÜà‰UÝïG¶<ûwóíÆüÝ‹”çÛ a þ !Çeøf±è­×·¾MdP²ô #Ÿ™[ðìcEáGn{(`@±€ÄT$Xg8YB$@èÎæI³ÆbNÒã„<=Ÿhq˜‡½õºLŒ[–sø¢«9÷ÔÄ?ŒƒÝeŒ++ò÷¡âY‰bx(Ó„qµ«’œÓÛºðüµßɆͫ²a6ÇÛŒÒÉÁìOKÁ2ÎÄ(g Õgte?Ô#!B@å\¯[( '²Šº¢ûi*ïabo·Hž7y;( ʈxŽB©Ìf"¬¥åV?‡FdŒ8Ì$µáyòÊ’OqL}±}z¡e,ÞÂEÛ@ÿ” löy€Nß—ÝpžÍvàXâòc/ž“jÛß÷®å‹7XÉbîïÉ^ÈV+7ºÒð »–„É 1{6T‰$PŠ«Ø(™™”©TB‚Ç1Tá–u"ö y×’=X‰q2È H=öfŠËI'â9H —Ý‚ÜÊÕì˜Ò¿Èy÷~½#`Op2¸@@öÕã]“îÕPc­ÂÙþæbVâñW] =Ÿ-ã¶Ø^_¦/½V;¿Ý£ƒJ B²+4j]#,Ü¿?ja‰šf›†Z_´Ìµóa9mDQ›•Г#E ÒB‡Ûþ2ñs H¢R=¹l9V©:=P’Òy™ .V8¸˜vpxŽ9y¤` ÈÊX¡°ƒ‰oFh:¬MÌ«h0ì¸C“þ¯f”–§’)!jõçbõ¢û“+/æî£ºŸhx¯a›[[ON,µ_OQ«“7µñvœ%)téú¥J°ú÷óÛÍ<0›!}¨šÛ0&æäРŒ¿¼ˆåØ©rà‰šr²\± …„d¼ìÖ¼Ö'³#‡ovU;4}E‰K°Q?SHÜ<Œ}Ú)í7oS(ñ-^?ÔVd“Û“¨ûZÁ?°DœÉ;E•á$ä /Øqk„Ìä1±]’U©2Có*FÒK©Œ¸þÖrœ­kd{p'ý+•aV3Ëêê1Ñj{ÊâQr™ÇêwâÉèjÂ¥©ù_-™ À¹ý{wÈ–È-ÁrPÆ#i˲uV Α…šX˜{RBËÈl¾–©{k­gU‰?üVÂÿl}ˆã*à¹ê‘ûŸ¸‘¹“&£¢‡Ï¦ìl[©ík'^®ÏÔ¼rLÞ¼\l4¡’ à{±ÙôÍì°_N¨Sc:®Ñ«._ìÆEdૠƣ—d~̓ÏÙ|ý±^yõf®M=ÿâi¸¤Ä·0ù>¢Vv]>ž¦‹:¶Ïk~·\ †Œ9ŒˆÅ"ª3¡-e“â9!žÇík¯¹Fá{/2¢ø¢åÄŽuÍUh%4j“²s*‡u!ÆÜü ŽŠ öÀù.á‚™QÕ‹ÉÈEëÔ~Ï]¨ü,°,YGå‘«“‰¦“âhM9±î}­pCIب¯ ²ž„ü|²ðü߬æåÊšr„˜²exŠÿO“ßÛd6r\¼9‰N2/¦1s$î}¯ßZâ“Å92ªbÍÔY\õz³˜Ì¡¡ä7Ͼ…à@=SÛxz̉²ǶV²£­Öœ¥Â2ž€!‘”„~ ùÓæoËŽl)¡ ‚ÂI”äþL[’G ÃrÀ<ƒÀ~ùôJ¥ušÃ,Œ}´„8ã)ž8*þ¿“ä×zåGâÜÇJõÑ?,\™Æ3Û5çsŽƒðý¦/V6š›vÛ~÷›ïÄž&ÈqÌ™ˆ€H Z_ão«t¹büòqÀ‡˜‰P ψ²2pÃ5T)ê¬"¢‚J®àòŸÝ9+ØýÐñêÃl,8LU•»w_ß?'€¼~$žßì üúK¹­!ä«QÏ`·SÃ|Èì8äóþÞ”ø¿1$ ˜?å*½=«È¸ÎxgáÚ¿.Ú3Ôâ«6–þ›çBâkª@þ±a bßk) ϸ¨ÅûFì•ñcb=}ÿ”øeL½Vnrjʪò+†Œ„? ¼åäDÕ‰8èHç¼€‘ð¼È@cÁ$K|þÇåðy'üzZk ²2”uêXžæñÉ$‚ É<×øô#ñŽhâ TØÆDóƒÜà<†Š_CE[Ôí_½÷û­ÕqÛÊe«±ê+=i]JI×óxÃöw` XnxŸ…˜taÁÉñ-¾lÄ  5å$0‰Cpä‚cà©"3Ï^à1Ÿ ©ìó´’4ŠòF±Æß€CÁŒÔÇEí£¤“òëØö•¸v Žx'ñ~‡ø?#Ž=GâüÏMüÍñˆmm·}ûݸ?Ðhèn>ýšÜÛ½·ïïpGü¢±É'/¡P¯T‚¬•g½·VFë"0÷OíÈ2xŽ×Çx{€4kVB½xç ùåÈ- vˆõ`å ˆ’¿¸à*òI#ž§–çÿ.ÁŽÃŽ=­r3vyŒ,ƒäò̪>ã°ƒÈçÈùøÇ7VϨ1]k|UkÅÕ£ð4ÙN§7Vå_ó¶xå·riHâ"Úá(›Úêà nÖàñ—·…ÿ”Öj5‘cn¬ÕÉ&PÄ"º÷“Ûnì9ïï =G_Sñǧ {³³‚¤¯ xù`xøÿ,ð8>“çaœÇ 3~Q{ ävqØ‚ßÿ·ÿ(•ùÐ>/ÍÉCPoL{ öwÜñœd¨ü?B…‡sýv¾ÿ©ôâ>$²ÁJæÉïÙÍbK(#—ê®Ý*¤ˆA‰:û‘…—±8"ŸƒÆb?Ó¦¡eI/ÇÜüˆëÖeù/_ÍG«öw%Ì©Ø'ä¿p8=~ Çù'’Iô^ÍhàˆJYÀi<“Á rPÍòÏèsþ?pø¿3³©–ŸÉ­oéÿ\~‡ ø ¿–Þ©ªÅwß|ê{†%ˆÏ´>!Ÿû?«"»sÚ§ ÊK’{¨PÑ’>DRÿÕ(÷©²åšÈŒÁŒ¿!øcí·ïàü§<$òû…Súl@Ò8,·W<úü9äãIþGø·;þwæ-éŒwúeðå-áŽC•‘N›V”Ÿvꟻÿˆ üFíîF™³ `ÝC×ìªÝ€Q/楕Óð˜Ùœ ‚Hõ³xˆ«p¹yOWy01¨Œdì@.[ø›¿(Ð7öûÊ®&û¬Oi¸b>Àå~Iø?’yäóûôcØ„D²M4¨Yö<…ŽcÇÇ*[·|üqÇ©üW›5w¯é†}›ŽmÏjóÄ9[7 ~©5UžÙÚ‹¯§U©]$ ò¼r?on##† €þ_ñÈý|¿¢EÙ0w1Ljª;rÍÝX’?Èûç‘þàú‡Åy´ÿˆˆnÆ;uQúS÷ÏäyA¯—y3rÜ þ¦±½mxâ >"åSÿ‹–ŽªÁ+¯`¬¡I¡?Ä­È>oZÉòcˆ6U•Qx1Û—òÕ9~Ê’ª¤ª¼—I—á„\¯©Ö:!L£’{òÏñÏÊü<þQùçƒèµ˜Ú"ЬijõŸ€‡žHcÈy,Hüõù>ñnpq«YÝŒ@Èã‹á¿Ë5pº¬’Dªkçï·¿™ñ ö2.^R@bÅi O^ÃûÇÄ@TndC|ú|J@99û²k¡LeY/ÖR …qñ÷${“ãŸS=zмbI擳v¹*[‚G ?íÇ<òÿØv§¶]‰ W“+7? 1‡À?çä/èsèç S¬´áH¶ÙËï±ûoœ—-BiÓÕå-kVØ|eíľ#‰ääeíª«ÜWV<*õ‰D¸.§‚’Bþ*¡›ÄiÄH3s‘ÙT]4j¤¸³*ñ/å*rÊåƒ3Èé ®éFÇ¢ž¤°nªü©ä©ãž~9çüür¢(F:¨g$Üv`aÁ?°8r<óÿ¿Ñ—Åy±ÿŠÝ Q¸–íàóígäyjÎŽl/5ŠÂ2öÏÓˆ9|CRƒ+/n ±/vþoÓv+"sÝ›’²aXÄpÊÙke݃}¬LOR Dôå XÁ‰Ðþ8tfi+ÙeIÉç’cüx,óÁãŽAÿnIøù:µ¢_¬€ønxåXp~ †ãàŸñé_Šs¡:H¶`Ù¿æIøXTÓÏõfTW|­ßîe8ƒ‰ ITœ¥”‹¹?0+üg–$‘Ä‘± îæxɆQÕ½lÞ&@¡FjÒò¨@Jð¡ õSȱïø>V>ÉÏ=º¨÷å—‡SËöaÙ³‘ò;‚Á#Ÿ‘ë5âv’PìȨ©'båU¸è>~›äüòìzÅ9´³R^GX}ÿ·~—+Ó§uW#Oœ~¯loÄ0Þ#ˆþ-•²¾è!ÚÄX†ù~OnTKÀìœrÄì¿£•ñD†9›¯"+•w¨ŽÑÊOt¯þnЕVç•*9 wõ5ÕÕ™C1Ϭ®ž§€Aà€xøããI¨D<Ã̪‹iŽîÌK/?‹X©sñÉýpèzÄyÎÚËU¹÷[†Å–±|p'ËmòvÊÚx¿f×cEcÄ•:ž2·p9- _ÝÛ“ðÝ™¡rxXH ðêyøôÎÛ´ÊÚ´xÙa¿<þý‹P¬RDŠT …Ï=y<Þç·öà«d% cö‰6HÅTñÄ̧†³”$óÛŸÅOÏñÏì~½C>_Žðkà4’G÷yRY™š%æ½ÒÉ =Úº1‰׉cw„BTI):y.s™Öæt´õ5$Œ›%–¶(ÙAóߊ9®[GOFsÓÓ „k.-;õ=ë5îñD¾¥Ÿ®3Á¶xföþ¯¾˜9Œ,|žH¢?\²•ûöJü ÝÈ>ºÙ7"Y—žÍ7?"¸À0ç°^xã‚ùc‘둟SäÁø4§»‹êóé~GïTI,¥<‘@É_íÃ{o#!î`øO·Ãó*ƒë®–{ ¬ûÓrU½Æ<ÿßèþÿ<ÿœ¿ÿÞ¸¤Ó†+Øÿ2}v·Oÿö½³9”. Ó«÷¢¿óÁr[à‚Oi9àóß· r¿ Éùãäüç$üŠžàð[òà8ä(ø ÿ‘ýÇü~½nÂòxrÊ¿“Ç$ÿö¿Ÿ÷#õþuêI?“tž«ÏsÛåÏ$þÈãõþß>¹Üm:boA·÷¬];Óô>¨›+×sîIápùÄ¡ìU)LÌG$ð¿pxçžO½ë]¡c}kaŽP[—I@B2= ÕÖCÀ$29 þ¯z®bÈ¡pl>k°ùÿ2˜õ$ XÆFU›íb»oæšíÇ ~‹ môÃâé£kóCy²G¶s3m[\ý©bZ¨ïZ)£V­ìWŽ¬Ý²pÈL9 ùwmÔ>‹üg»Å•­Ùö=£¨«÷Ûv,â5h·(^=»jšIa³g­AtÚŽ¼ÖkI4µ ©vh(³H²ïÑX~—üW$kW‹u‚>‘§IaO!mˆ‘G ÛDG±_ªÆ]ŽD'`,„ø,<¸‰pÒ`°£n+4íërañÒ`lмŒ·«Í„ö?§Ù¥yÒíc\Å’Yu,I>ç•ÐÔÔå9o—©òåø"ßQ9F-ÙuTäÈí¾8ºóŽŸ3¯Õ¡æ–ªú˜™{­žkÉ d­[Ö#¿Çë5rU$y–Á_óO‘²šÒ­½f–½­ìŸPÞQñ·ó6,Eܽ-r®ãaòw(c=ìuˈ1‘ÞÇQ±,½{Þ´üFY§ÈlkbidèÆTÊÔ«†%XO}ôë\Ef–´—aÇÜ|eˆ/ašµä›n»ñK!‘Õ¦ÆZ¦K%KU´‹ôWJÎSÒèò\Öœ5ôçÍ[=2:mê\gÕª®Î“vÝÉ® ¹ ËOR¼D’Î6¤®˜Ð¶µUOáÆ}Nù^ö/n¿6Íã]G%âý[ zyÌ]Æ`Ìeòÿo`aË媾;ˆ?Ó ”?«ÞÈíQZŒ½zÑõ0x7qòÆsÃÞ[˦×S+ä7-ÕµJ=]4«m†£•ÃjyøªÛïb5Ë¿f’Jõ?§Â“Gs»Ë[5wMÔ.ä0—²V—ÊkÖ.ÚÁ\¹«`.ß×ä{ÅÛºýËdŸ $÷$’kÓ㤯*Úf± -#KÑaqË“–µ u#™·ýG:hP¥RÎc%,qÄ÷ò¯ZåËå-VŠç–ãK5Ú•ã÷å>Êf%ÌÆdµy©Nu"75:Š$ ƒN.¥–ï>gJqM>Z1¹BRB&"f"©[mLÐP¤üŸ[ÇÎJæý¤^½ª¿Ó>¯Õó4™öŸ(ÉæO&jšVÅ—7#ÉAc6¾Ç~å¼mè“+‚œeMLÛž·S^…Z•¯Í5>ë"¯%Ë Z&RYbXš\—µ¶By`X㑬&·YQ‹õá}6ñÚ^’–ñ9Ñ4˜òºÚÏþšÉ×Ôõèr:Ûä#žúc"˜õŸnCvçÞt•†Bj¿i甾™r<Ĉ0æ“åÜ$¬ÆC>¨Ê‰(½ÙÚ8¬×ѹuhEêbàH‘‰(¸SªC³e©\R/¨MÛvÓ¾£°7µÿ(âüw#é#Èû"c÷Ý×ö\Î©ä ¢úââ ¦>—õé ŽµLØÚl†/=?éÌ€Åéµãª¿/ù}Ó›9¬átÜNòxÿWÍhù[Ú´ym^<}»#›‚+{}/!d-Ëb8,áñU4©ä°v}û9(,Ò”ÉÐ솗®g¦«g?¯k»•¤†Jê '2i˃='¡&Rµ‰j<íSd*ÐÙgiÊËËfÀ`“c¹±>¿®¶ÈµÚΛ0Ç<éß61Tå’‚ÚnZ²Úûh§!!‡Ñy.f\Ôµt¹¿—¦Î3œ¨Æ@ÂÇ)gMRÚµ\sZ& òÑœˆtB˾š*è³y^0Ý$ú‚ó÷•¼k½ù¡5Xõ_xUòL˜køI.e3ûV㙯ƒ­bÖ|^©Ž§¯ëðÊׯ#"Gr>In¡IfVí/¨o(É—³¢ßÜ4=B29;cÉvÓsæ­lVŸŸÚ\Ëb´]ëjÕèZÎÙÅÔXž]ªKù"åc³DÉV³MѳªÍfIëQ’kP}•Ù%§½º1ö2Q¾å žŒjÄINVzµ;4« ÀÅoƒ4=ÛU£¨Áº.¿ŠÊÞÈãq¾>§‚×ñªÙj¢ö—2\,“OYƒG~*)x¼uïP± –#›äùâRž59ZÈÓêB™ žÆ Í4N_™å‚ÔåãDasb2ôÆ"ô¾•[«ÆÕÇ<´ÿªÿ/lT«ç1¶4è6 »Mñ^zì˜ëØìm»‘]Ö¶žFM:Ÿ‘6ÝkK–*ŠOj|æ1%%x£È\hcTÌÕW–—vÚö=o7s`ÄùR?¢ŠOêZî3QÆèX­ûÆžwÚ6½Ÿ ­o[6· ¶=ŸT«Vn˱GJ­ì• gÉØL}/ê½?×ü? kš®'B¯ªë—´ü>6Ž*¶?…ÅìpZ¯ˆ¥)rc-ZÔyl„ Zo¹´UÞGƒ¤¤‚ã]c]ËMn ¾³¯d«Þ¥x28^F+Ø*s‡Åá®Gn¬©’ÁÓêN7h=`Á¢h“¢Y¿‡s¨¿Œ'óÙ4Fír2Ê{§n,yÞ^4~FŠXþBBa¶ñí»s›:ßÕoÔj†Õ°ËöÚ/‹ö¶|~­]Ž-ÂõO(å´<6_úæ/amHáªWÏíuhåò`ÈGj~kúr›Þz·Ôç—/ù3RñÖk?¢ëòžDÇãîy_?¡š©‚©GÇÑï5=£¥n;>¥G?ž´¦Î.Höy š/½kì¿Ôtä¬ý]£Rxç©[F5¡*©Ñ§^5ÅUpëíBŠ˜šñ lO²¤„ÕŠœzL“QÕ ¥¸š–¥_^ŠAÌzæ|_$ri‘‹ E¥Zòä\dЄ[¯f¹4„KÛÓœ‡5Õ<üåèYþx–ÓÓÿÛTc#œ;§ã9Qø8—(ÕP:sÞÜ J̶mÅð?•vþNž]¿’ÈìwðÞ%Òö-Û3± –o1‘ךíóšËXžÕ™2VîÚ«Óìr7¦šîFvc ˆ®Oª;ïq_×2ºþsFò&‡ˆØ6(åéÓÊÉå¾g/â zÚVËÒ²Ù$ñ_Øgò²m.2yíŠÕšE‰GX#§Ž±¡OB _³$ h¢ÆGXüËtxáRG¿Yb‰9zèãÐñãèJöÙ©ÐXÉ¢ä=:ÊŠ1^B=®j¢ý™QÿEÇb³#)ÞgæeòãnPÓ„4ã=0RR\¯¨kmn÷xM.oJ=wËFrd±“W¹aéUò탎XêSó^¯à»ÞSÇùžãoJÔt;yÊ{Fµ=äÛí_Ùlã­a[!S% XI)â‹Åj©É–7—ŠÃF°ŸWÞqÛüQ’Çbô›ñã2#VÝ·¼„vñzÕˆ¬cuZøèáŽæÃµíÚŽµY®d`­‘ÙÝ›7S—Àá\Óµ2\jZþ.„v!¡K^‰æ±66,}hÕ‹LZK6£HVæšSî[’rÃ$‚9l+4G)†Åeã§v+”?©ã(d“q šzRZŠoµ°ÈÑHðjI#¬$Ã3CK׆†®Œ9—®dORÆB*fÆEc¾6¾ ¹½êÃRzÊc¤ÀÉ]>–÷<×¼ïç\µc¾âvmF–´ŸQþðm]:-Nl£^ÆùJÖ™‚Ÿl³œ|´ nà®m3dq+P|mªu L½bXäYéÇÍ;Ï™ÆçkeûªxÃ\Ô.Ò‹‘wº>xä¶ñõ;åÊ9ßyÆ–g±åañÔvA¼7„§{r6½3_­>ûQs1SØT©-œ×ÜfªÐŸk^Žˆ*ØšÊηž|ñ¹íºÏñû6¿€]³ÍZåŸ ÝÀk{JÞ'Añ'…|‡†š˜â‚·Ëá³/ƒ’¶|ïäÙ²t6݇hÄÝ—-埥8Ž¡”ÇçqØÜep»L;6ËŠ«‚ÉA•–‹\Ç×|½Iëæ°bIšU§zÚCTºuß7ùsybòd’ýIøŠ ‚æ³Ô²Z†SQÝ4?$ß‹K;‚Ü3kcW½ þ‹¶RÕvå›#‰½™ÄAfµD±ÔéX﹂ØÂâ¾ð †ûФö+V©!±Z Ö5t­c›Ò7Q³ü޽›ŸIkzô5¬ãà×uø+d,œ•Êðaqõk^¼¶#µ^ôë¢Ï‘[‘ ¡ÈH­KH®ó,\Kü7šêÅã©e•Ëò9ÎÖV;øcœÑ"éýAéqQ{…eÛ—ßÊò´aâéÙV6”Gù¤æ3í²™Ã(ëÝÔ´ÌãÛ¶©Æ¾÷Së ù˜”^%Šs ÄœªÀè; é? v†ßò…õ#žÌŒd%‹ÆF%”¡V° ¯ÁhÔ<“ñX¸€{«ÉÇßð‘ÇfB%n™•À˜¡ÿæ“+ž¬PžgP.?°=¥L()—Ô—‹³~õõßßW±ï¶3ã÷8Ò4Š1#J~7áýƉc¡ŒLÓ•WA7Ågƒ1°æ˜+Zc'¬º’Í Àñ»E®A Ä`¨CB«XÆï1˜3³¬áFà±VåÉ=Œˆ:¡”0GY¦0èý«–F‘xY¡þ@˜+zòÆ¥’8¦å€ ¶ »«bCüÊæ5a3rd‰J[&DÐÙs¶ý«üÎoˆ–~[Ç{³}—ûf°pKì™yY&Œ£4fÒ´_™„î UâWIUå‘jVâÌA+¬Œ¹håû’Fr‚PÞâ(2ʤ)žY jÑËí{p!Q[Û 52öZÂ)¸}ÎÁƒ¯¸î½=Ç=yîaV^GXÂ’ÊŽKsLŽ Ò5I”?rŠx ^ Á=¦qTR %Ú(ùÿ ”•“"ðËpù ¿ök4qd'ÚÛ÷ýëzÇÛŒò¼q!öú3¡Œ‚RÎ7ˆÊÁQCþPÆäIvïÈ×§¯I=É SØÈI‘âP€ûs*Ï$CÝIa¤†Á1TO³pÞ…!•$YKÓˆ1‰½åö "t†eà¤5ÅRŒÁPA‰•€g IBKüÇY±ÊÄ¡LÌ}¿h}¨TçÕt¡K_ôïÙÛsí›ÎÔ…‹»EÛNÕuVc|{wN–(ДY“Üe(dš*äÇ1Un޽ÙcöÔ$] C *äÞBëí R’5iÈ‘A-ÞXÇ òH*ûŸsÏy$óÈ“AÑ>ŒˆÇâQýÎáLHUí³‘ÀþÚ;‚ѤŸÊ³YÉ…€ô*ÆcrÌŠHtPüp;ϸÀŽÁú÷®ÜÁöϦF 7y÷n¦Ýݸ-Ð&ßµVùßǛഉ7v•d ífPêQ}ÅFŒ¥‹¸GB +ömMf‘òÆ€ òQ™Ö9Rl(vf/*Ñþaš)¸c È¿sxò–Ñœxä¹$eI!*Ê>I”ÄP#öX´¦±äÖ‘âºIF '¬–QL£™PöYYXûŽò,JžÑ’@[.œ,î=ÚÁc?+†Ã§`,k¸Ržnª²3òî;Yåqú÷ÆùÏ  }ƒ‡íÉŸlôTtI‰ˆËYeöñ¬Â‹ ÑŒá¦ÄíãËèM™¢-”Ž ²¥ÈPÈâ8–¦ZÁWXdX¢+ïóÌ ³Çd_—"6~åÁê!äð­Rž>asîL<žrÎrõ̵¸KyÍ©¢^c‰"wV5 Éí{Ÿ)æÁ—•Œ^©ÐÒæaÕÕ†žœ]6§!.áӌӽЋ½Ãjjé|¨éA”¥õd«:AËï“Ø÷¾Œ»ÆÆœÉ<ÆwVá–Y=äN¬²Ç´­Ïõ(TAI}èË¢c®lK×°9Lhñ@’µiYyŒK7fŽ"äÓÖ Õœ,¸`O¦òÇ”³Ë2Ç""Á@h‰÷T7%€®Hi[’”ZD5ÿ ô騰¶·°BZ>Í©2‚ȬEŽºÓ«褲· WÖvãý:ºvÖK˜mÝvÅ¿n*ÒÃ2œ’ªÂvÇØÍ‡×¿ ÔR¦.Žgâ.ÎbŽb^08¤`ˆóDŒÂXà•ci¦tlD¨V_WW^EL>;¢_³®Dm€±1¡á nd€¯èÀà´|qñê—D޳ Q:ËîÈÄò ‡²$V§ŸÅÀ¬«íÿnh—½@³+ŸW7 n8q˜øä.í+’9i?ùŠâCó"Ÿßfä¸ þýq¾8.ž€ ³“Qö#egÜïçߎŸÂ¤uêÙKïµ^×xûþü8 žÌÊ=õç‚r£ònBõà=cÒN8uœsì"ŽO“ÀøùåÇ‚GëFMèXòAT |y$°r£‚Cè¼þ™¾ïÑ:R$2ö”3süÙIòy,Ç<·Àçÿ>z"3“m‹ÏÙÅ_¿ïÖ“ê?ü5ïß5o±¾+Øáx÷“É*A-þáBðXññËÐÿ#žJ=õëe‰ ÃD‚NèÇ–íÈ ¿³Ïëñ’Iƒò}nœü³'@z‘À*[ŽGþ@~?íþ='Ùs<¥‘X' ¬Å{<þ,O'€?>9ùãŸñéb$½¿íŒ÷¶«íÅ’¢¿«!N.»ÑG ‚ ÝI^xÄ@||üÿò$8ôFòqQÕ˜'Êþ|€à‡–žßò#žxø-ØQG@Ì ìA°SðüÇÏ“þß‹Xµðº/{°êXvã†ð¿®à‘þß±þ}@D[ÞÝöû>p¼ 8F­(Å·FÍ_cöãj5úG œ´ŒÊþ±‰ðJñþ@ý‚Gz=Ôü3Š>Ÿö<Ø£óûÿ~}&Ö²µã—ÝFˆ †ucعu#à—x¡È¯B¾N%$3〈ããáXþÇÈýÏÇ ÅdáËãϾ߿'LrKÍfû`½¯sÂt(NAûFVi ü~„Aø11R¼þúŸÀpåéØuàÊpxçä(€ÿíþØǤ(% jIÈf†IÛ€KcEGÏãú$¯UàƒÿÊQ’ü!€ë ”pŽÀñûƒûø<óòOÿyæ2pmAÛ±œùý«‰…Û9w[ÿWûŽo‚Ùî±2¡SJZ3È#•ëÏà’Gÿ©!Gøô¡N5â÷CÓŽ¤‚GöþÀ#Ÿö<ゟ4ë?Pªîè_žyvR 7ÿ'Àã÷ÇÏëјnB‘D¤7r¼኱ƒÈçöûŸŽAàþÀ§¤+7}½ÿ߃A&VþŸOÁ‰C*ÉÁåº3qÁð:ÿËäðO'üz+AÙ½Æä· ¼ž¤õà’È#<ösÁ!‚üþ¹#[ë"‘í•V ¤?*Güÿ“úÿË?äµk+M¥=‰F(Ó–àÁÿ°$ðÃý‡þ¸ô*DdSÚ‚¼ŸíôÿIv”^ÖÚÕöñO—nÕ!OäƒÏ¦àò¬Ä?Ç`8,~8øô“j56û*òaá¸7F$Ç?£ð8à‚~HçàÂä£ê $òÄõŒ˜žoÛsñð ?Žy$‹NÓÎò&B>P2– ÉùdöëñÉùäƒNß¾óºsù¿„Çú{x^RÊçžvYÿ@/ìñÀü¾8TóûôBùgƒ’Ü©uì·Á >C/óÈIàÿó¸õçÉA "H>BvPߣú,AàHçãž¼Ž=rÒJ‘ÆÑÝÕ”„%_¡åƒ8‡èóÉîÊÆ(MžÛ%cÁþ{?£J˜æpY$YÂ*’CHÀüGP'õÉ 9ùô.1å!£žhøv!ÙKÛ0ãÇÀàuäßëת\ÂènTõ${7ÈúäžÛ‘úø3ªÀ“*óÁ$/ìþQùžÄóð?÷è´,Pµ¾¯“þÿïwYbœoYÛ¾7ØàœºÜå?oÀÊy`ÝOü?Düóǃ3ÙIä÷Iã°1³4aB· GÐpß,~z·=ëÎQÖ+rä+™x¯èsÈ`Äî‡> U)Vf,€9P‹€“ÿÈù2þ¿dþ½ÍÑ )\fû_û_¿’€_V:ºœb±__oò“¤«$ RI½ä˜"÷I’HKŽY@ /¶¤ž¼“Õx ~ ô¡a#JH  ôX™@gG‚)nA,GÊñÃ/+Ï“›rÇ9@ªÈ¢"~yà~$É<ð?À¶K¤XÑã÷5P EÉŸ’y <’H¼gY+»£Ç×Úà/ø/è/<*ÿ€8?Ï¢PM{D˜$jìWäÇ(äöÇøä¾†ûšÞÔ‹R#º0+ÇéTþ¸ñÇøÿåñè Ò¥bæXøwX¢öøàü×àò?d~ý:U¬¥6E=€ÛÇ߃’gŽšZÆ/ôÍ~¸ãxÊÇ4/$ÅÜ¡VìGXɆn¤õ ~?^܃Ϡú±µ+»)Fh—¯R:ð %ã¨=¹?|GÏ>,õ{34EòÁº…'ŽÜñÏüÿó¿ù@Ë*´žó©TîŽ ÔÏ_öÿn9ÜúçߦJ;û¸ËÓ›àJ²`¯›FÖ«jºï‹»8ÖiÛîž?}U 8r <xŸßÇùô-§GŠž£å¾BŽWãG–à·#ŸŽOŸB{õ$üŠ#nY™G$þˆcþÿú÷ãÐV9Ì"¼|ž{súEˆv^9'àŽxùàzƒIbz¯oºoúßå›XÈ®hËCmÞç³(­]ãE«òA ýØö?|üñèHzû ÃÕ#’÷Õa‡˜%‡$qÕ€^GeÒÏ´§^GåËp[÷þü|þ¿DŸîÿH•…ÒSØDêü©’Y‰Áùì}Gø#õèð¼Œá),ßç•^ã’C’9ŸŸŽøõ%™c7_Øíþ?«Ä†">\bó‚Ÿò»pž¢wHHë ãôÅGÁà~ÿúãôGϳ½€Èñ¢ËÄmuŒŸYûryÿ<?È$ú Ù¤H²F¬ÜI27É ÿ•øñû®9 öàèžü,ļ*— úÿr@ãöxê_£è9#• ÃXí[½òÕ{Ž‹ö¼£¶6÷Ýß ‹,f2Ö°9R¨B—-ßñ?¢ yçö |óññèTr!´Ê@üP€ÆýG=€þx=Hþ½o4ªbjñDT° ¤¯GÛŽ>²~¯ZA:DeÄÌÒu¢òA Žx xp'‚}AÀ&òº¼ö­¼äïíò•ûwî5ÚûvÎ>—èÅ29\ɸQØðHVøàÀ…<“ÇïôHEVb#6•T·ñ†c1B ýûqû èú0ö¡PÙvöÁàÇÏÀ_ƒÉ _Žyˆûœ” „wä7TuaÇžÄü¿Èàs錨vÎN‘@côáYdªÙÛúÙ¾ÛßaSa­W§‘«C³{ªÃ·Pü¨?¿×ùùçóÈ#ŸQ/˜b®²¨y s"ñ”p¥:ÔxTf+¿PMŽ`*$ ¦O·W—ÍØd'ø¤!G¤N{ÏÇûžOûòýqð}Cþ]“šZñ<žod?j:õöqç\rgEuI$ùâ%T”ƒÔ[9£™åú­õfþƒä½ßíõË΃ËêÑgHäj‰Gïÿ~ùâ}OÊ"Ö|.·'êÏéy"+'“1ã–žH¿Š6—€‡§Ü´¤ z×`]¬þVl|òDó@åGò7ÃGï’>H<ÿŸ\ú¦dÿJx‹ù9úªúkìËüŽ^_$ãUú§Jf_;lF¥#êWŸ]q´ìYø!ö? yRÂB[oîçŸöãô}Чãå¹zQAñQ÷ËwYí^ìøi\¨ ÿ2e»×N~½¸ò-Ãä¼þ\Ž¡×ö~ƒð¤ry>´cÁêYTOÀ矞y_Qø‚?ùCõÇ­¹PX† ëüõã’ ÇÁÐ?<úÃG “¡”òyÚ4ÀØH8p‹ÙËʦ C*Ÿî“¬J9LˆfF`<µû!ë4È¡ËL„´ŒTŽóHŠ{—A퉕ˆÈF X£÷GoU~±|o±é•3º£å¢–Y.ݱ[fY±˜mÊÒø¢õ»Ô«ÚIc‹bÙèl5L¼LZä˜{Ѹ0‘»S~úÙÅÕ©BoêYŒõïùÃã]Æ>ÇØZ“/‚Ý·iô«Uèý…îpû…KÑG4x ä¿¥V?ÖÈ•Qwñ>DÉ­4ÔŒõ>–Ö±ìooG’æY'D¢õT¯œZ×ý[ˆûâò È¥X %^J¾ã2ñ!›…b{-Á†0¾ÅÐguV(­Ù¡P³§¼±½à$fuÝŽ·¾#ŽYcOzŒ‰ñUØú„²¾w¯7‚öÿ2êºÎ[/&©‹Øì¶¡‘1ÔË ¾¿xâòx‹ÍíBÿ{.~ñQoEÂ0\ú—Öòöõ3wVÚ)aö}ƒKñì»ÏÛ×µ«ã<«»`°÷°š¯Ý,3Å’Ëg1ú¢zä²ð“C÷÷1]øþZ,GPõÀœ£7;â¿ÃëtÊ¢¤dÆI„J»/;˜Í›_kjtbìò÷üÔ)!äb¼`FU„#îSþÝB}ʬK^è1Ÿy•YJI'nÒ3š0‚ß”&iÓÚ¤’ ëä˜#¨õXó?QkZò¦²j¶íh>?ÀøÇ-{sÇWïŽÔénQ][6¶_vd“¥[‘BØø(D'‚£I-×—ª TñßÕ‹ü—¾'Žð r,¶R–ó’Ôî\Ÿf®ÏñÖs­o ‘Q»bî&Z—òõd4òÐÅ&ËŒ‚ÞCc|s+žå¥?–ê¡?• *t–;[t6–eíÁyMx†§ËXtÆK€Ô¯ÉÒn;›vâÅ{h{ ‘ŠñðLŽ+Ìân~ D‰/ñI7^õ¬^>`àú%íõ•–Iz¢H;z/ñÿ#‡H™À1~-(ÿK%rYÀ©ÉõSý7È–ƒ›ñæÕ’ÉÑòÜž/Ñ£Ö¾Ó#.Âõ4ê›}ü­Ïºš ô׈žY¤b²F”!Thd¶“˜/¬olC.qƒ)eik²íXÌ$ϱaqÛV/RšÔ*¹PpQÒÎæq²ë†²ÏŒ³÷v‚&ªø$=&¼Ed0•űI4žGÛõ8Ÿƒæ0šrOJHÚ¤ \=É_Úüqk*Î 3³“*«Ò4~^V¯báÔ‰$^½ò@ýÍf`xÇĬ8°¯#)¬sI$ªœ rðÉÅ~]ƒ8SP•êmÆ£Õ,ëCY½šÓ"Åk9&Ô¬g|Ï®ù+e’õéÏ).Ç‚Ååa×R Ÿ{.#¸ŒôÖY->!ÊŸV¯K©N,Êê„…¶^–г§·SÂ<¦½)¦È„¥¢±(±¼µbËf×¾l›ÖA"ËÙÀì$d÷e‰"¿ûp¬ðŽà]CšòvOácÁ‘2¼’Iø•™å˜ö Fì;‘cm€æ¢=å±~§X«äàF/b4³LH$@Þ£=ê®lö“â+»^·”Ò÷/!ø×ÁÞ@«f\`Èà6ŠûÖGBÖö)õXã·÷ìuM·y©[T“+$²PÀåñwìviÚº.¯Ä¹HI„åLckÒ…N1‘—w¥ÝSXâG”לD‰êz`]ÊÅŽ«1ܯ‹žÕ‹´“+XR 4‚P½Ãø[§hšf„+˜Ð^.,w3sëH⌉º3<1ÇÕ¦iRœ¤Êÿ0tn‘N|Ô@WD¨h+ÿP¿šò·±ÚÎ7Z¸¸óu-d%Ç4Scæ½%a[)B 1©çd÷¬ëÙªIjK› +ê%ܾ±q:Ö[KØ?Ó™lg‡îg<·C=ä\Ý58üÍR¿´ººEn7§ËoiŽÅâ…ÐõoÒ»Sô¡÷IYsü¤4á¬k.oLdoù£|PTñ[ð!Êkºššd^¸Tºm0ÅMéZ%Aß8.“9‘“Ø•/!þ*ÉÌlg cfýšÍÀ×ø,òÀ^‘"žC#û„¼$)"¨Q+-w*ñªuiHƒñ+Ø äVxûSŠ?Z:6c)[SÅiûN[~µ²kå7.#(¹1ºaÛ/¯æ©g(Í.ã,C§•¬=¹éäÃE‹Re^evDÓdñÔnæÚ:qØšIÖx­-;¹Ïr½$£¬1u >´Úm,i*WM™ÝÈÖêcòÑèfh”~”l]o“k ¡ÔwŸ«#Æê –Š¿Bá^U“#@$]UZÀ˜¬ˆ¾Ëuìâ2\%êÀê¯Ý–?‡-dkþÙÐAj¡c$‹ê ò_Ÿõ¿gv>Å„Ø-ÓÔ|}sÉ»†ÉŽŽÃjÚ¥'ÈÖ7oY±"½¬µ›Tž.¬Qöº²þôA jû²}cŒ¿á4,Lf_búñ׉ü™ùhæ©ëÚVÓáO&ù¶ŽO>t§‘Éå0:µð‡ÝãX¿†Û±Y¨&š“2jóü®‹8ËSªqÄ£êÂy¢âª¶×¹‡-«¨Æ]4 ’Zùsß[n}¯ÜjVF )B㣗㪖"bò–°¼õª6E8›ñp=[å{—™ 0ïÏ ¯ÒeN¼”´¥„Y©ÖÔD=ÿÃãĶ0örU5ºêÉ‹Áì…l˜Ü„Û~dÜáÑhX©5iZ<E3–aþ£ŒÊòTè±»^f¬YKÎ÷Õ~ ȲZ×È!d¼YÆæoáqg|­V–ö߆©~Ó}Œ8ÝFºÓl–fUZ´îå)}g{HµŸäÓ«çF÷=ƒ{hð©ãmøxòšø‹§&èo-µ–Þê~üZÄebªŽ ¦h}°À4‡“Yr!“Þ’AÖœ%R5~cÈ0VôegPÆ@†èOæJ)wbÖGb1hÕø.,‡£íHo\òò×;>ò~õá39±ì^?ñì~Åcdª`ô;¹kóciav¸Òu±—’•û·Óf3sä œþ1z·^aòpñŽåÒ°únÙ¿çsÔ÷œþ+¯IŽ¬Ë‚Ð%û|”÷®dàkÒÔ(˜Ê’FÂçÄ ðÛòØsܤúåó.1UK,»Ki,›É“ðúÑé‹“Ôtܤ¶NÈmœý;ñ'4Ñ——ºJ#,ÑN%^Œ¬í$jCöýL’ª˜¢EÙ ÆXz p$xÙ£b”±3Lä?Ì\CÿTêÓṉ̃Ä$·)[•@¬ìEM«õ‡¡^Ïøï×v±þMÌø÷\Õóv.áªL›?’2Ö0¯­5›Y¹ fUÀe²Rý­X¬»‰–ÕxË»@úÞ¯sQÓ6_!à— Ý0Òdžӱr׫ZÎÄÞRòF‰Š®çze§J¸Æh7­\’ÌF,RP»JÑM Kñ>J4:–"2-©¡Eïžæ,9=tÄ=J$qÔþP£9ß&1V9ã¡áfe÷;v– .X’"„û–H`ñW_~ú¤àkð·yQJ«õp¾É,ÁK c a&V1ïÈŠèWÕÍ}txû„ض&ÑwLMDÜ<“ä±lZ.¨xêÑm§$³uhvÇÑŽlæ úk"e6f’¿¹í™¿ÃYØ<°ýAaó:äX(<;æü¯‹p· ¸,^ÇSÔu]Ž\•¸”(©~YvšØ…VÉ=JÕ‚²JÌñçy}mHCOS®sº#Ž’ë©)rm¾ÂcŠçËêéE”¢€×«Í^1o‚¸›åF<ÉŒD{wi$zÐi Žb,=ÙcôÒ”Z¥•ä A§*éÊFJ°XÍd1Ùâš%_ÁÐíL’Õ‹Òð²0,­¡«0vì¬Ìܤ7wwÜÓ"3¬>à¬fEp\¡>`D¡xယ5“ìGpÌÕÙù;rÉíZrQT 6‰Mxo>¼yîv/Še„‹m¹·Í8¬&Lý¼Ö¬8êìPÙ£²ÊÁTH Hd¾àI 4ðŽÙH@ûÞ"}n]£`JÈn„ƒï2²¨ëø¯!åö¿0}¿f:ÜÜZF_[{*v,=Ö@cŒÙä Är{Áì·ö£küÁY½üJü8FV,=¢¼EÑ$<å¢fŒaƒ½çnbpÅÆYh¼vÚ·ó·p;^8€ûÑuàïöÛëÀÊ‘€X ^) ²u™$n«"±p%KŽ´Ä‹9&*F‚>ˆÀ!#”èèŒ{a¸N\Â}´b¦k¤Í)Ts¨÷RIœ·&C),ÉÙ¦EJdŒFöÓ¦Aãü!é…½VRU¤&9!u‘; X¨`Žž\/"ò- KS*±õÖÏõÂaÎùÛϱ)Í_½'l>6à^fä€\"¾Ôé†Fæ?ÁáB°Ídw­^@-¥ÅÌ>V>œõŒÞY=ü~*kÐ@ïZŽj1´9K ÜØäXœ¸ý=º¶ÿLû•,B)ဠ(Ò¼ ¯w~þÛ‰˜È[´’4\ÆöOýNô£>à§mÍŠú-—¬a÷`±íýù„U¢ufXÑ··ZP=˜È$¯V—»³šÖž†—VIu!ªÒ¥ÄÙ66âþ[J:Ó©)d .*¬Gè)ã~"ÔѶÅåNÉeåT›8¶XóÁ|{¨æø<†;RºØSoÜ øËrÔÉBô®Ã,©,È‚A3'v‘KÀÎGá,ÊÍLý=^O©£YÝób®6t¡^:Ôç7XLÅïÉÝ6!xˆóí*¿ÈéÁõoÿ8lÉîpt>àb Õœ)^RÎN#ç¡àU¡¯ÌK_äëGJ2ù}cp± ª6+[æ·¾,ÕÑÑŽ‰©¤Í¹ÕÌ ½¾ÕŒpÓ(ı€€ËìÄ!…I?´µxú0ÈP +D¬<‡[«éÇ‹ ëRz¶SÝ–tjêevXGf’ã´üûuÄ‘IãŽ5 "¼jÒ±eeû‘ü"™›Ýä ìa’@$·í%›*¶â>ÓH ¢‘™õ¬ê}Ô½ŠÍí$®=Æë9Yˆ+ ‘×ï@WQÅqðAѮ֜)É©¦^ÒÒ&oXÅqV‘r[qcÓ.ânvöá'fU*ç°üJò¡%B,(;U¢þÀzàægK¼­”à㻽*aá•P¯Á= óì¯< ¡Aƒú_ð)ÏxÃHÆã²DTžÑv` hÃ’Î§Ü #r_)+ÌÅ¡]\‹ú&1x ŸcTŽ•_áR ‚@ÃÒŽ9ÿ~/Ç$ÐjÛ•½²GôÁ_^: ¥ÔnÖ1ê3C{g|VÖøÛ©ä†ªåUU»äsØ€Ý@º’Aà€çÖÈi}´PÝ£î„bPž …íØüþSù|zVxÔ+õç…ÐI_Ž~Ï`­ûù gÒN%_¸è²1‚åÏ<ǰAÏ ?Çâ#ö~=yâJ+ØÆõûµßc/;ç¿lvýÛî,+»uãùyHBxà©#ƒÏŸñÀùãÖÎåäFWO†NUCxäübïžAïúô®zöäóË•^Gä„ƒÕØsÈž9Žxô—y‚ÌQ[cE"@y‘êN ~€êGè|z• ¯?Ê?n$šíþáÆ$n³(UàôB¤òñwç…çãûXóÀä/=F9¥¤…£^Gv „$ùöà±ÿ*?õéaG`9d`B’¯Á¯Ï`?—?#ÿûè®@ªÕ˜ŽÇ’¥øù=~?Ï^9àðaóÏ¢MZBœ8ÿ¿púê]~ÿ¯žË?b±Ã,Ž¥‘ײÆ?¸†íîñØK)ø ½YO Ùšeç¥yaÃ)hø^£‘ÁìÀG†ä8>ŽÑoÆP ¯iè¡€üþ<€y>Fä±áøäñÏä@ÿ ðxãŽ@ÿRS¥ j‡ —Eá Ôý{ñ>–>DÿnðX-#FÈë"’ eG*ß%˜„Ïâö·ø$ü%pì`•œ°*Å•KüðG™Bƒðˆ<±>µŒÇ÷ÌVPÜ?Á<æ4*ŠÇöf`~À^`È<n;|rA'ô¿°'àŽxÿë#:p‘½òô—ß…6x´ìx¿løáÌñ²™kËòW°(yn8$ª3ýTðIø??bîJ¹„ü²/`zð”3/ïö«Ë)à°ãÐ×zðŽ®W‰|þÀëÕHç¨^ƒóÀý×Dö`Eåc€ú¦ €??ûãçžOSÒ5—öÏ—=¼ðã_æÞç¿ }ì°a$2‚•äBW©ù (~àÿ·<óÇëõëÊÄõ+wáA-ðB°nü›Âüž/ÚÌÑþÈ1³¿*>å—žO#ö>@?®~}'cÈ ÊÿöÄqqÊóÀ,ܧ‘Ã8øüG 'åI©$¦ž×äýnû]Önø+ºªvNk?Ï.U¨çç’¸cñòy ž>~¯¿¶•¹ wç€nO=xù<ò>9ô² äucÔr <ž … ûäþøàÿ±ÒD®ZÔ‘b?¿Èà÷~¸ìx$€OøàØ"2—oV<ߌö¿µq?ÓH…W$ªŸÙ@#³ž¤1?Ÿ< K P¾ÓÆ•[¹%'Ž/ÿ+’ñÒènžîBüŸž€°Ux'‘ÂÏÈSóÇÀ)x ¬Ä–^~–üK/nÉêxGëÿcÑ&ˆ9¯8ÅÐ{mF×eìΡbÄ,R”‘Ô¬‡ž9Çò7ø+ò¥‡¡9všÎ9y?çý½ÇÐò{qÞAÕ‰pì>Ï< ||ƒÀçÑߎ?"ÌXóÏŽƒÿ?çõþgãÕS›Ôàí{ø?O߈X &?×÷á9NÒòTÇÕK€¿¿Ù/ÏùàüzÙ•Tž"Ч,¤òA³ÈþïÄýÇY„»îI¼Ác%(¹7òà7<€TþäzV#àöä( qÇ­ðIáxü¢Ï£);PýWl;/ë\Wz/uÞóFþ(­ðíí2rdþ@?RÇ‚Kt Íîò—’>8<~²{·fö ~!ш ăØr>$)äÙøøè墅ý1y%~;Ò€?òýŸ’}ˆ‘Hňè=GÀëò_žÃÿ¬\~½Âw·kôù­ÝœvßêxLQ2rEyЬdƒüE@‚X÷ÏøŸðݿʾ SšóŒßé¾ÕÁgˆð\Öuv>ÙP®AýqÛã°Áäþ¹õº†SùE")fàvÿ HìGÚIxQóþ}(O?´„Fy,Ÿ“ÁýröðG|ÿè½¶$e8,Ä2÷@¹çƒÁ_Ñ?¿[¬ÑÈ b~yäG0_ŽÙêX÷'ÃpüžOëÑý+¿Ÿ×jû~½‰œyÇÓ„,‚Eü ª ^ |…ü‡ Žñëe Τˆõ À ò8ý’\…còGø:\p’± U JÄ Ÿß#³þ#ÿ?Ç¥¬GÌHá”ã©d Ç'©<ðÏúàsñè+B¿§ëßþü Îç÷)ý>¼”˜›³Ã3(#ùãUV~=A“ÏÁ+Ô|G?#ñÌŸŒr‚<¯^TáC+~»v`à¿¿Ä™gY#±ívå:¨Jð9ø þ$p ìTòGÇ ëj¡WÝ`¤T,?}ˆ@‚Ç‚yìÏ<ËzmUý½¡ûq;ב_©AýÞ ÿ dP¤NO€8$òJŽÀú×ÜCؘä÷Pê ûŽ@^þCb>àsñèì6bœ°@cºõdbÂ2’yÀAû$È粃ÇÉäöçãÑø>¹ õF¥uÈ9~¿TŸLòC툄"y/öì¦Drýc]?ºHÁžà]w°îl§Ãv±9#’>}ÖcÜž@üü‚ùñSÿ\Ó•ýÑ.[Yu¾¿ Èg•ŠuËÅf0ÿ^ G!~‡Sà)Få¸'€8ù䑸üZòŠÄ/Èàò§åAçÿ#òÀ?ŸÐ;·ASÔŽŽJÿp*y'ö9çö>yõ«Ÿ¥/ɳăø§ãž ùùîûóÿÏó鯱ñ߆®êGú?o'‚TØ» ¿-ˆ¶¿£Éà’¯ÇøàóëÞµÞ¿Ñ›Ÿ²z²j{)Jž¥Æï¶y¸ä€yøÍªÕ»YëO¼uïAbÛMRÄd؆h ³,jÞ~ޤAôç£ÈèÑÊùÏ'ÙƒÈ$ÿ›[ß¶¼/UE±·"V#™ë([lÓÂÀÙ–jáÉâ ÞÙåôˆæYXñÈnÑ¥²9Š@upÃÝò0ÓŸ'ÊüÍ8ÓËB5ù£8Ǩ¿ù\-g;ñÃæ¥©k_åÍ:yIØâÍF¥]êÚÏëÅS­ô›âªÒïVj¶Ü-ïTü{ƒ¿f ´ëÍ…ÄxË.ûf'®cûzQåöëÙÝ×c”ÄÂÞkbÉÛ¦X,„ŸFºKn£ÈÙÍÇyÚ6ªÛ^•ÆqZŽ»Y*i›ƒox\r¶³Jû¥›{ Æ'Þ³õbÚìâkÿD–AVyI·ÑD³Ã7¹* R 8aò±¹dÁr:Büˆë'ËÙÙ̇ÑH&Vœ<³…un±<Œ RÅ +(”‚ŒÝ™MÂÉ@96‡'w G夃?ÕÓÚêÜ{€V á%Íó ’ÔΉKü½ÓlŸeïÄkOÄzÝ/m~3¯o7 oÿSI‘ȉꌥ7ÚïÛ¹‘µ›¡®’V½;ŠS̤¨ŒP˜{mÜG:÷Ò䵾û÷2Ú~³žÔ÷j~3ÈTÁcõk¾Bп¤Ï®n¹+´Y³2Œ^[†ÚbÒ`ã[fÇUÍ=¹kj=šåIx“ÛK/.3E8ä;|ò;ª%gSDT Z/´Uv‘‰'€O-I”“Êä^ ryŸ³U´B2q å9]CNZšp½:è-D|tÚµTµ|Tkóë„fôê^(YJT-Ö±íŸWÍ›éß]ڷ͇zŸmÜ)E¼TÖq>EÒ¨ÿI“SÞ0z’θ|U÷¼>î‚»Yir6qåîåƵ‚GËzÆßNúŠv{{>`Ïܬ`ƒ^Õmàt¼N'X¯´gaÏÈ38¬<{FÍq³ ^W9“‰uŠ³ÛÆš÷ º%¯>F±Hû± D.êñ{Êà‚ÈX·A)aïÆ¦Ý ‹…úòÍýÅ¥I¢ ì¢þS"7¶õ•º±½Š¢C0yѧ9.WçGW u –)rlÈ%@^ûÄë°ù}rééèM„¢Pô«kí|W¹¾šôfòšùfÎci“)ëkÈUµ¹M(5Ú»>CQM+';4ddÚ¥Ü:û’R ={ŒmÆd«"ðÊO£-=wfÔ#ÙvÁ®å¡ÆÕÁc+ëÚUÒ¡Ào:ÿ’ñ‰Œ~& –õ^§YÃ6J®×ûL®¿ Øi«Y­bÓ›u#F]Uœ:¨D«1 ¤r"t™‰!Hüb‘Á’Àÿ§b¨ô\ºŒà+¦'ˆÝIQ"|õ†Xäögà¥)X£†Wô_‡òZR–”W©‘kž­û”7gaúpk™f€GÒoèé¬b‚ûãqUqG~:Å™žÎÑ»ßLžß»ny<|¸ý_ŽËå|•£â´mÒ¡‡§_Äå±XŠYv?QbÆÙPYêX‹úJÕpøÍy±žEݪm:^O{Ç»î3^ÐpÙ=B¶35ŠøÊ8\F.†'4¹<.'7•ÎÚ±‘͵xäöë[ˆµnÑÆò÷–. tU „T/Ë"Fh¢÷X™"_å7>Óõô¢´û²ŸiŒ…Ý¥^W‘Òf&?ÇñR¢g@ Vâ^ÇÒäB¾L|a™B™6D¬fÍÆøw›æŸS© [“ŠOúª)YÍ Ú}`|oÓn…‰ðYú¯˜Ý›R|„ù·Ø†V¼¬y¹³o°I™‹5ì´5² ™‘¦I^b¬\Ó°¢6,"ÝûéJ]¡µQíy-žL¿•°›ï™ü¸Z†¦×²`5|vcOIÃkøxßG ™«œÉàmcb—¦>¶O7Ò-•Ž+¨’ A! ‡CË£—b¼¤/äJ­+ãq8–RdçÐq²ÂÓØP9ferÌUCGÍĪäIËýÏz#¯“?‡òº„N€aÆ*§¢(‘LžÖZ bës_O»™+ß«¨N ÙÆ  bù Ç?%A®Á°d²Øÿô¦Ï&ÑŽ±ˆzñØißg‘¥pL¦&¡wjZ¶ÄGÝ¢H·L´€©dGôá㤩âÌTSgÚ¿‡äCäúfŽHÁyL{,µÝ@Ø+²¸‘IP‰%E<Üü‚‡Õräy>ˆ@ÑË‚ÔW¦+Õœ–E¯hçŇ5ÌÆ}dæMˆu5g4¥×wËu¿PúbÑ5\¶­œŸ5µm.Ÿµâ7L^JÍ=o[ǽ¼õìM8ðÚ¾2*¸Šµ$i­E$Ö¬Z̽'µîtվ޶SÕ ¡ÓÛt,ß°&´aIä†^Ídÿ<@ýÉ2F£ÒÿäˆÆ2ÐÓcÕé3†Ìž­Õ3»Höàþ'™êe×2U¾)ÛNÉeÕ;_z³ŒúDñí íÿTï·¶”Ïj™|nËeprø™4œü[.¿Œ·7J ý§ÉB‡'°gá“?žªZµI “Ì?MÚ/™²ðæ÷Û9¡Ôò:MšøX°ÓC\Éæ1yÉ—î3®Í…¿W/‡ ÐfpÆ RѰeöçi=Oý¡@¢UdR«)r[Úr(Ok~ƒÈë÷=’ª£nì6)ÈáºH‹Õ•—’¬c‰À’. zÚ·9.V1–‘¥JHÑ&¥!ÃJTQÛgˆóZëõM™`Õ%±°Å‹Q­­ûqZµ_¦]/Vòµäs³nûWH24ÊY÷¼X)¶M~Ư’2ìêWØsØÓ‰¹a0ÚþrÜØívì‘Û '±¶¥m¾@ÊùöknÇæò»þ“åyiÒ\W¯¾ø÷ªk¸Œõ|•ºrgW0ºv¿Bî£è0´òPÏœÅÆÓåï,–}˜/¹ÁB[°1÷Q#HÜ“Ð'ø•J9ä3>2ÂAtX•Ø`ˤRrߌ‡Ž½Ž:Çz.¦P§Òþ “ééùpÆ¡«î$Â%ªïhëóõHeÕÓJc ±ìñî~'Ñ÷ûô»}[ùü“ ×ñ¦×@XXéÙÕêZ¿y’´ S$²älO$ªdZÇÚ´˜Êëô©ãz ­¾Nþ͵ZÕ<“ŽòÆ>íØð8Ñc;‹ñ–ïâf*å sŽ©ý4? ìK~º,¹ öfÇúŠ+0<Ö`k®#*DNñûŸ%UûBÉÉ, ¿oa[†ì v9Œëcc€BËí¼žéGª«G#„yøå OOºܧ3Ð*ÂyôÏ+ÊêL”´ ÎŸSýVåÞ÷Ív3· óõà'2*!ðcèµùïU±_F~(Åâβ;–K½aµúO¯c+ë”u Ž· …¥ýZ|˜\µxÖî_5b{—±±ÓûrðÞž7ÓŽƒ´Ñ§³›ÇeaòNËålFÃTcò™&å»Â ØŽ2†~­ŒM¼Nr´QV“~³ûñQ¦ÆX$¨=éÉæ.)#S*ŽÍ!å !-,a> €JõГñlóÁ²%åHLmî·%`’|Ì;¬ä¹dây[¬•ÊÇϨr°|³GK§S¶r!º®jüy1Ž-9­|IÔ”-g5w¬˜Û4v8ªYÿ¢Ÿæð™wú¿‘°x ·WÇê~JÆáv:5#òN/ -™ñVö‹B„kS-¹rt\–*½z±R‘°²W9œHþ\ñNWËÞDÕv©÷<Î¥K «o˜lÅÝ^x±¹û6wkðÙ•jÇb¼õÖ›Wû´<”›vaxwFÒ¶ËÙÐ91˜»2I2Ί ƒŒ±üÇ ó ŽÒC z£C2ÆÏ/ÌLŽÁr} Ò+¨*Uø’ò Ÿã«ü+QŒ#H¡$¶)åzE»0+^e¯­}v²ËSª»Vî<âóÅI§ôUál6g—×-Áì?Þ1µ©dñ—ž×âÌ•L¶:ùlŽ*|Ô•íÛ¬’gñ1]‚ƒÙžl®2°Í)Ÿ£¯ ®*Ž8¶ˆ ÁÉ=Í>k7håmi–¬n;Vþ¯ˆ§wgy`ÍnÛ'ZÙ8&ŽÆ%ÖÇ·"r¶–7BX+Ä$J$sFÙ;*4läªKv5哘àê:±‘O¬É3¤DSÛ=³í¤|Фj[܉=ÞÞÜdû‹1)702‚?‡òQ°ÐÓIÝ–å×Ô÷v¼^Ü1Íó§+‹…ÂÕç¿v©â³d~‘üA—Ö7]o#þ«ÊÕò‰7¯ nWfÎ׃#’Ò¼“ѳµQÇU©C)d^°¸Ç¥PGxà¥F´Í\3ÌšŸŽõÍ+?ä-›&N´þZÜâßvzW/ÅsÖ5ìV¹.KÂ’P¯k„Ç$´ÞIë‰bvš_»æ5tÅ8"oyUdÜœ²¼ýœZ¿ î}˜ÛðI$°¼rÒ&Y"•CD#$ˆÏ^%5¿°8ûçù™½Y_M„´áNA‹H4%Ž{Wä¼ð®¦¶ ÇVrc$R¯Æ{7·£ž *)@=”rˆêDÈÑ*†`Ý¥„7uîT8ˆ“#¶•Ç­xaîfPI©?Ø÷Õ€b;|4‘l$¢ 䂨ƒÖ±éÛ‰9÷K¹,E™þdG”yí?ŸÄN=$ü¢FH°áã.ë *ü£“Ö»Bå–5ÿ·ŽQì?'ƒêß{\æücû˜¼ÕïPnhªÆ/ûx÷¾ZFgè†RÍÓ‡  $RÈŠ¼‘eˆ$ýôažË$‘/!ò“r±cØ•œ7ºÁ‰êÄÍñ÷@:,ÁWßU5£ã>‰×hà‰Ò5THCØ÷A2D'OË{¯`,ñ•‹°õˆm/äâePÑÈîf*=¦íÒw•”r)_±âJó±õGQÁšÊY³Â‹žî{c¶0¶ã·†t+È”I/SÙIVÑ^[ÛT…ѾÚ7n”Ü´Y.C§a¼©ÕQ=μIUJC,NK:¢ÉÈ-1 O¶€We$¼R ǽv‰ã˜•N¬ *ÈÆ¿'r߯¼¶RÖd&HG†rBu‘K²+4‘¿†Ý¥v&iR #PšÆ‰È‹•jxÆ2d3FvÃ_SˆËÓMÄ=(eôû¼(ÄÄ~}œ/n@ŒÀO¸GcÕZ«õibçÚÆ1[(d÷X KTÙuš:Ôø\ÚMj;2ÚšjßjÝ^)æ'Ú—Úuw¸T­ŽÜ)Ð(~!ï½e,ƒÚŸƒñ–@Ëd“öÊÑ¿ã Xš±É*¬‘^,Á@ÑlÁO¸Œ••ƒp‰Ç+0™ç»ø%½ø˜}²°@¬ÚÚÖ 4,dtÊ›R»oaÎ3ÃÃ[SFVD_ÊØ¢4šÇöR¸Ÿjl¾<£-K5¨Ù¯%¹Zìk³2H"Yä Áä‘áG+ Â4i}F{MꙬþO%H<ÔîÙ.ãÙ{Ñ!Ž"»,¤ ŸêQòò”“žY¢ØG=Yܲƒ‘"ßöT•%üà|'TÂ!Á*Éù720õfxé|*U-Zé;™nŠ3ØÞÀö¬;Gʨ‘Øü*@sÉäóÔñÿÏäzM¡?gåz²¬Cžœ‚Y¹ýþÇè·|r~G }ù™T™ŒcûYYT<@ä~$õùø’¯˜ú¼2 –I’U ‹ƒÝû'RÅx†ü$óñëÏF+‘1³›ªÍbþ¹ã³mÕS^LŠxl1õÍW•`¼un܆'ª1ÿ,Ü~¿Ç$òÀýé г’Üsv’/ñÔü¯üºƒòyý†È¦ä(áJ—ˆý‚ò`AùäŽIãô}y¡•Û—f›…TìOUøbBð¥I?—<÷êF(Øí‡·kÿ?߀¤„ªü´(­§ÓÿÛ…èÇb¬Hä¨ärê9%ñ*CŽ9ãà|ü…lˆáŸìüŸî€OÉçüÀ?äñé,-·Ù#³ª¡Tþ$s×ãžWöy$ÿñëÓ5¹‰ä>Ðe`0{t`OÊü)äÈüÿëè©n5W¿³ú¹¾Þ8ŒÚC8ñŠÝ?íÝ® ãû“7'‚ÒA'·^H ÈëÁùáA<óò¡É±JS• €> ÿìòùãÓ|­¥y#†se™º€< ö<çÿ©ù úàzMÀY¹ @¡OÀþâßãƒóÀãƒð9çÔ”2·¾UÅmŽþçþxa—åé7»Z·ý³öÎxÒ(Øä ‰Ê ±!g‘—óü{"ñÉýã÷Èþáé}8(yfnÌyíÔ/Áäüž?ÏÇÿ+ÓsíÝXጭ!ò{ GRzõ ÓíàGÉ<‰ ¸ÎJXdê¡yEFg|vì§…ã×ÿztõS(«§pßÝ~¡ï‹+}•öÿO¥ðrù шcш$ðÏp§°ãçžyã÷þ9=X7³ð?³“Ç?öàòy-ðyýÿûý"$)–rË'‰9üyŽG^ÿr8#ãМX‰DqÍüj8)O<¹bÈãôÀøãÿs¡ %o{ºsâî‡ÕkkjvÜóç?ÛÛ…©?¦ >B7ä*y_€$“ÏïäñÏ?àI”òJ¼˜ãì$žÌe¾@R ~Dÿò½ZÁüþá¸*)×ïúP§ž<ÿŸ[:J…^<·PÀðAQû~§ÿ%'ñ??çô:jÌgë×zÍc>ÜLÖÔÙYú7·o£·~ú©ø£ž­Ç`?ûoŸÑÿË‚ÀqÀ?åuAe›‘Ïh¿žÅ¸<õçž8n8çüÏ­ žFJñŽU*¼9?Ç'±Sñúä×­º¼‚NÒv‚Cr ðYHø|~ÏàtÈjŬ՞;÷¿¿•âz©Àmm¨¸ÁÝ7íç…`_õÃhå@V*À|òú?÷Ç Ž?@_ öã·ì”^BŸòA“Èø‘ :ÿžIÈÓ²ª,ÏÝxbÌAî'ƒÀ…ø?<ð9êxôV~ˆÒ´€~dsÕ»ŸÐ >ÇèóÇøÿ>”26•ó·¶ý¸ §åïwÔV) ®ÜøÁÁêKÍv Ïínyn;‘úñÃ|~?±ÿ³èðŠ«HSÕ¿ñ ø?³óÈ7È'HÇߌ0Ž^¥»üÀÏÇÀ<žàqúøõ {$©üà ”ryäÏï÷ò½yÿßèI—¨CïŠïþ½¸†KbSº]k‹ßËïŒñµUo½íñÈkOè¯'ö•$sÀ³óþåkòývøûœ8Pyÿ<ñçýø?àúET™&Ùeu,yû‹~Àf<‘ÏÇöÿ€ [‡óû–_åàÄ5êy Gé{;ùüzŒ:Òž–€úùÿ_÷àµ̃崺ÊÚ}¼~ª% ìQ‚óóñDz/Ž9'ý¿\ú;•…9QÂ"1e'–e·ôà‚Gëÿ~‘Ýd>Û1 ¸ë׆RÜ~Ø€~?@Øþ·SaÛYC”#ã€[©ÿ<Ÿß ?_¿’£Ò×@Ò5¡úc÷xÝ'kÃ}ÃÛnü+NÁ¢”åч ÙHø¸ÿ£À¿¢XîJÈyVücùõä/ÇþÇÏûüŸðQE‰•eH OQÔ§ù‘ÏÈùãö?ùù@ÑsÖTCר<APORAù?¯“øŸþW¡òÒâ6®RðcÞëïÁ´³Wšý>Ÿföˆì{üž¤pXþ'÷ÿ®Èçž|úIfQa•ÇËIà€Xrªxÿ|žO?íÏ­Y#–°ëðŘ:’9/Ï<‘ûçä­}‚ÅœÈÆDdràóÏ@JŽ ’HñÉÐ1OP·ØöJþæ’ÜS 6`ÝO¨ðvȴܬjŒ¬8êã¨àÿìxRÛõû#ö31b±!x&@ ê<©ý/øù?ryôI~ä€ ë#nQ”‚Ç·ïžHsÇþ_eguWf ìÝ8¿€H௒ô~yõ*ºrzL–ѾZ¿%`Ç…‰(\~×Vîö+¿íؾ ˆá…ƒª´OÙ)èX“ûÿ?#ßãÈäsèH£~òM"Ưí„7ŸÙf‚9 ë‘Ïëàˆ3¡n&åyü”©æ?®8þàAüx¯B¸*¨²¨ê»:vå?gŸAäõøç{xô3äý>žÿãÄPj–šÀ©¿ö÷ߌR÷^ŒHpx(?ßoîž “Ë|“èr—DŽàÄ?ù˜ ß$rJžAø •ÿß蜴]9 …Ob¤ÈOßnWžcÉÿßïÐ÷MʬÜ0éÀ$H ñð üÿ¿<ŸFŸ!‹,ßoìÖÇ\Ù·zj¨¼æÜöúq´éÚÊ–aØCÑ×ò¤þGž[‘É<ÞK¹ Á(K(V!yPG •ùýsÏ<yô˜‰)nÅ‹IÕÓòäžH%#ôG|OÀçòõ»-‚¡{©eÄv,â?|†Qóÿ¾yýñè"Ót•¶ÏØýíúç‚6 }WãW>?ƳÁ‰ÅAö,%ï’yäÇn?ÂóÁÿA®ÑN€ºò«uÿtò§àÄð9çßÀÛœ'YœÈ`c+ðÇŽGAÿÔþÉý’?äzÜ!$°—’ÖPã¨êªGù'ŽûžOÁùôÀU/uÙ¬Ñö7^ûã5Ä·8Éço³M›çöÏÃ^hÝ(©Ðwü¹ðärGp}ªÉub¦t*9PTª~$~yär*yyàó¢ýÈûžÄJ¼ SûP>H#ö ø?$×­H“ä+w$ö,AäîEaúù^#ÿŸò= ïcxúPe¼åñÚ߀+tx¬ïnÿçž¼R¢È°2”—±*ņ#ç§þÿÇÏîóݤ#äü÷œ¬7Dr{œýªzÛÈ Íòê–Êñ¾Ío çŒüçþÛS‘ÙÙëŽ}ÿjß·üú«•SMñL“²„‡ê—鸓4E’4>JÅ’SÛ›´ÍÔº 2ÉÀž¸öƒs×kkÍ‹[†û‹©#ôÒ·äGºþ~*HõÈϪiž3ì8Œ}Ný9¼BDžIÆwe³Ï`¥ºÇž $ŸôÿöÛ]t°?êlvE Ï;ÓÂg û‚EyãçãêÏŠÿïSzÓŽí^Ïzªº®áÍò¢Z²ÏôÃ}»ÿçkö1`ì8Uøä?´žÏÏõëW=ˆìx:þCàr~Àoö'üqÏϬH*Ì>Jð!Kqóþ{ð~OøùìO¬o€¨!G<ŸŽ¤Ÿ’?DsÿÖ?ûõÎÿ?^6›d¬ç6S@à½ßõá‘䙽¿yTya0èûtÉ$`,ˆÑëÙ2£Ô4_Þ„ò½•O|z÷¢`˜Öñ•¬‡µüe¾Êd Ê…‡UÊH]Ôü½yã×ÇÈz÷¥‘›Éƒ·¸Þÿ9ÈñÍçd±ô¯§q¡Éà1yÎJ|s3èŸ?=¦ a§‰µœÏ•.‰²ÏzÈŠ,nŒ÷,¡’)¬¶'àÈnÉ5šbjvÑÒÑMµZ(¾Ö7Xî\,&È£æ@©]®¨ªó<àŠÿ¬I^Ušiô›|ÑúYÕoBÉ^ÈDlK,Õ¨yz³HÈîC¸DbI“¤u«Ç"«Ä8¥ ÿˆÆãä ÃǘlîÇ>7p§äëûÎÆ5v¶ÝòäqL³“3£, ©é½¯ÿÄVËùWwÆÁZL‰ª-²ñŸc‹‡sýRõ@Ãw#5ҡ齑ªoé“´ãm¸í$ËÖÏg°èña¢‘Ÿî#èJØkN¬ð¨ ߈±ûÌ©ÓÖÐl™1õ¡®* ªP.¹=âV ¤¶ÿ@3þ”+!é+×,„Ô¼ŽÙæ›ßOxûX±ãh|œ5–ÛsŸê\Ɉծbªâîå²U¨àæh³x¬•šÐÁ² ®>ǹ3($u¦º/ÕßÔöá¥ý:F¸É䪻ySãèc§³>µ êZ¥Yìmy½Æ›\šÖÓzSU1Ø,UŠÏ÷Võ‰Ukðtk󜞓SG\ëÓ„â2qÔ‘7Ô½]R à_Ó oZ2”g¢nœ†di‰j‰µEs–œuýv[+qC]FUëG„Ž%1 :ÆÍ#K$…~zÌc2E ö^3úñÚ2<Èßa¯uYO¹Û]º(.ò@¶À6"ŽI¬«D2¡’?TÇéçÍ›Þí´yÏÄ>WÄà1ÞZú}Øq8ƒ/¦5ó¦í8‹ 3zæÇ‡«’2[Å^ž›ÇS vi¥®ŠÐ+ûœ7ª5áïøïyܶ!¿Õñ†_S|þÞFÄxóµÐÙ¼E¬øbMÆ|6ß°ä2¦ÎÆcL:˜Ç¤én¶G2"ŸÞà@µêüCÒŽ†¤£2:Ý]6IO—(ÆdêEH–ý»vr™ §òïÔ×QbÖbÖÕw}ûK&Õv8F7Òtè¥ðp´½Ïxn9›ÝãÝözÉj1ïĄު/‡é% }žF³<̘X$P,Án#d,SÛf¤²Ú N-øÓþ þlÚü;³yseñÞ‹ø[uÂlpÒµË6²Y:¿N[ͲÚç‘4ÛÐß™"ص|m˜ílÚŒÅ;,µ ZHH#ÄÞuòVõôùå¨WÃj¸WÁy/~ð>¡>>Í\Ìþ/Òõlæ[NÙ|‚ïq–{žFµ‰‡j­† ”¡×°×jL$³.@̧ñC]c )Ê´å­˜Kò@YK£%V­ë 5yNwHêÔb0Ó)?<¨#A½T¯q\^4Ùî'öTÁ+ ê¢@ò p¡WÜጟ<m¡ë,uÛÐ/¶ä£=Ö–¾ë ,¡°ÕÁ’) WHò©Q m±QQÁÆH%. ã©ÿß"ì^;ñ|ù SÖü¿“Ãí9#j—à¼øyð'Ç<ãýëMŒ\Kë;tÔ‹,’Ë;ÃlY¨“£ÇßÓ—GÿˆŽÙä)þ™ð˜-&µÍ¿Éž*òžçå v_]ËkXIw +Ç8ý§ZÂxÿcÊXÉqÙì»YÂd2/%Ú”±Öq×þ³™⟠‘ldâ+qz’HQœôÝý­Ç<‡Ä1“ ¢½`œml*šÂn~œuçýW’ij¸4G’1® ²ÆÍâP²ˆ!“rj¤{Õ§äxb?"§(C«®„Ž ’a*«¢G8“Üi{žÒ{¬;Êáœ)Oj9ãoyyô‘õWå¯/y-<{娴l>FçŽnmk¬UÕ6îzÖÇ»íË«ÁˆÙíÜ‹ÈXHë0fܰó@mæÕv”úpe|çõ3¾í_Qv¼ðâxûéÈôüc±UòUœµM“É›? ‰Ïm³áöhmWÃèX¼>;0´ð9,Í{‘ä¬A5WGÑý\sœƒ£¥­-IõêJ0‰PÀüÇHD¶¶-N+y~n3–œµ#Žž©2¨Ô“§ÕÓv¶w6ÍmÑÄÜ/9VHp„¬ò4ŠpÔ»ž&¹F‘^³{¯ ð{x91‘£Û2$ ¦61Ö+ß W°ŽËüÈ!e {2vgþ)ã…'n-y+þ$v‘Žú¤Ã¦¥Šµ¾ø·ÍXø²µ ÞWG}zZø×ÈǽmÔ-­2k=ÉF?‹`’ÒçÔÑœúàËã~´µï×Ãë6<=ëú&ù¶Z¹!Ûëù³|Ò3[Ö»ŒÂÅ÷ˆŸélf'FžrãU–LµÜÅz±ËZhdGâ? °§3†1*2œèîtÓß’½œä¹ó-Ñ j +Æ1–w)$Q稲³Ó†Ú²c·ZøEŒFì¿üF¨¬‘òUÛÞ÷»²C!Åc¢ÿM‘x?q*qþ¨Ê$ \+c!Y¾`&I¨u-ïÉíZµŽI;™œdƒG„Š>?ÿˆ/˜v-÷CÁd[ĹX¶;ÙñmÝ«íXM¾†,ŒôWk§¹_¿k[ÈeñÔ#’áÄA¹ rW1‰Êö|k[^ZÈKá%ì‹â†|÷ämÓWÐt;4ödò=é›Ìº%ÎÆû³k‘ìi”|uø4ÙèÕ½n¶_ú{Û‘¨ØD®?øju• >œkÖÔ›3Xõ]Vö3Èóå ¡Ôæº³tzOE.þÎ÷¿v;NI€ŒA†å’Tw|`Ìý×H ¿Ìß #rZXÀ’víëwÛ32;:TÂýÒHl^ÓD¢tJÁØ·ð€ñ×ì„’X6Œ±š£¿OÿY?Q~WÍäläñúâ1»7—(A­c|Q¿áÆfŽ…ýUp5‡–îæ'Ó1îÏF©·•´ŸkAæ’¬QE$€¬ô‡õ]æ.ùS+ã¿-Wаw­ø‘·øtÚZfÑão j™\nÏ[œÕ’†Ã{#[ÉeêT.®é‚zµëdg­4•š¾DÚ|ÿÃõµtá )Þ¬˜é³0·>«¥Ü}ï½ ò|Þœu%)çJ$¦U6zN×·ëÇReÙraU,"D±/ 6ˆxšFá'¯/Rc±(þ(N.#~Ür—׿Ôy!$abÀ¯ç+õ\ %ì&‡ÙáÃ…hÞ©^qó÷XèÈïVËÊ@PÚã•”;:9,Gg!x`=âzÉæAŇ^HIYU‡>…†1“ÙÏ YK³€€…•\•”eaü:…¸ÀÌO“¦­iÇëiêHŽí”o·øçº’úåHSØÛ%Žÿ·Ó‡ú›&À2V©ÿ¦RßÑ(‡SR@c’Hc†rJZ)f™˜G^û„Ñ6;ì¶5a/¸ç La'%Ç=„f´‡‘"¼©=J5Õ‘ˆoxØ ;º«žÜ¬Ì=±¼‚RyYJ–G˜‚oWcLþ$r/*Œq,Ê€•QX£ +´¬ \¤$¨Ž([Ú—™ŸPÑÑaØlÙÚ‡w®½Ž ©¨ÑÔõöÀoUô®æÜ.ÿ©r%ºŠØW*È¥ Rž7d=‘ä†8Õå•Y,Ó¼’2J¢“(ñUZH«Äÿ܂Åödùª® ÂîÍcãÐIɹ,AáK¼qÙ¹n¿¦ŒI)÷d™O¼'-DW#Ñù:rCOO Ô¡ÛÎ,û^,â|ÍXž©¡Š<Õ{[áßwcuÿõ6\$ŠdÅ»MŸÌ1¶°ÂFoÈÌ){S4Õlth¢®§Í›J¬ÞjÉ33=|;•_Ø\8¨GÐ"Æ!Y£^—¶¬Ñ¬M„ĉº¿–›þ–XÌ‘| ‘BS<ì zC²™c¸”΃ÚbêL~øœ’L¡Š-{\iYñãð‘ F½á!Õ£öÕûJ:Ü$ñAQ > µìiähØ*ÇGEÛN-ÒúnÜWœö òcˆêN€œ‡·Ð­ÊÇßýíyv\Çc$Ó㤌?`ƒ ‰â,`¿L{U.ªó>àæjHÑ7hýŒ.#ÙC4M ¢Ç%tÿï@ƒ¬Æçaa£¬ê ¥»~ö `±zH&ZÀ¬s)«X:Gl ^H+E «'–R8cx1D’ßÓNRf+ÙU $»:¬ŒUÕ¹Iœ‚ò #B¶$å› Œ>œ´¢×ö3Úb¢ö¼OXÑ•d‚ÄC8åfDSöïS(î§„ÖÑÓ„c(iÂ2'¤Sÿ>›+Óíhµgh³•ÆOP Ù•oÈ™v•ì5Âò®~HVVŒG‚dP„C,aÌ~Ó†I‚§¹ιyåûweK‘„ª,añ“K4êïJª³‰ÒI„(™R?m‰#óhØFíÉBŽiË•¤h˜¯,ÅÿÙÃÄ¿¿âPÝÌÖ‰û9Û킯«¡¯¬ƒ Ž *¡™cñÄ)Ô{G„@OÇ´Uùû“ä_by!ï3a*ÍÂ|³€Ç¿üßà‚Ÿ’¬ó÷• £Wîýˆ$ý üzÿwÇ$Ÿž}¿¦x/ `û¾ä¹(z{l;†R¿µ’Å€<InyìÓ¹ë5…äž@êQT; +Àùýð~çýýz— Wà3Ÿð¡ÿ_~‡@þ=(u¯…uøçŸŸÈóÇùŽOÈùøô²•¹°Éœžo|y»ïXéˆøÞç›Î<íÂ$QÈÒû>ôÃHxOÈñþGRKñø•ÿ?äŸZnW¨±2Tw ½»ŽOåσÛñýü|ŸD `öÈ zs($’ª¬H(½OÏÇ>|“ëXìXIJ´‚UWO…XúƒÂòä±RUˆù#‚¤Ï£R¿Í@ ÓX·öû<üÿ¿ÏÛ²–_È7rÇ»r>¸¡ Çø þWÇ>ŽGP22;<ˆ `À –– üÙàú)’øöŒlx ÝB°fsÀãØççõÿË¿Y’i"ޏFeyå‹‘ð9ÿ!”€>~8%‘$e2¨“ŸoãüI‘È<òù$ƒþH09ö¤xÀvTB¨@>;p?_%¹ä|Ž}0ÑVB¸ÿ\}¶sÄ*tÛY+·×ô{9¾ HT«M4™zw`@oü—‚;É?²@“™˜N"×´‰<…` ôn:©à䤀=­,‚@“¹oqʆýpür¼øàr~Ÿ÷ôŠ Ää>ìeY‡ð¬xê¤uûäxù €!»mã;^ûŸÛ à°ÿ—é„;ã;_ëÁµ¢ …ilIÇ,C:,¿®Ì¨ súø'ä(øŠØ‰aêï4ÒrÝ}¦ £~ ~$»•ù~9Ð%ƒ$Î$`cüG†^¿üŸ òŸþXýüY³/hk·æ[²Ë×÷Çä¿®¹<Áÿ ú>”_Nwîx¢Üÿbš}¸ŽlÅí–ªüÖk€ëAïÆÞ²½™ø^@êñåGŸ ~<ƒñóècM –XUüد¸ òGnW ãò'ñøõ¬"Q 2²ÆK;qóóð¸=yøž>½Vi$÷ÃH®In#à/‚>?*õòÌGϨ#~Í=ü¿úíÄkl7°÷¬ûðZóH‘´’"{mË'À¯†#±?‰ýóð çÑÖ¤B²ÌA<üÁø ü?'ŽG…¾yãÑ:d+sËvx¤àv -Èê8à“ò9ùùù ~½ m̃Ýà8©Eùà Ï<üçõóñÁ2g›hÎ>û>1À‹Ò¯p*߯6Çe’)[¬Žòu%YÈí pUÂŽ?<¡üèÂWb¤–U¯޽€ Ä/RH#ŸßÁ?à9-<ÜÎ8übtdˆËîËØqÁ`¤’€x ñøõ~×üzÖ8ä»´’/Êž«òýTùpŽH#Žô]žg¥4³ÊJ…ç˜ûñÇûþÉàžýüzÚdH¬ÊØ*ÄUHç•*9 ¤ðž9àüqÇ¢Uy¹aú±(iÿbïzàí›ï÷úðqª©e-,®AìvärIáHQÏGür܃1碰fþwRT·Éã°UøUVRý™K.$ˆ<¤Ç$D¯=x 8JÈ$þWûèŠd,…K12 ¿Ä¨e<üI óÃø†7¼w;5«¾íÂ1P"µwþßënßQEx‘ˆ[3|p„–@? °?ÜýÚPï˜íèàãä©.Bôröp±·cœFÜ+ÈVI9–4–ZÌ©ÑDSØ"[³Eµ^W*ªK¬ Áÿ´†Zù“*ÜQ¦U]lÙy;p0 ƒäüþ‰íÛÙàqÿËüG'ÿ—Ǭ§ƒð£ã·ÁTn$:…ÿsÈ…'ò?®¯rzõ—^G*9+ÇŸ’ÈÿÑøø8oËà’ îä‚ç€Ï$ñú?#ô¼ëŸúýÿÏóۈȎ-Öì®-}*šw~«ÄOç‰/ù¦^>cñ“eÀáºiy¦!‚¨=J†òy|sÇôGê(ôùç¡íM#É/+µ‘ä³)ÿAgøŽºŽ]¦vàFäíÔ–ã×½U9±•”„6V³Uß±_§–óëhÃVD¤ÄLT¡Ævûþg¸åïÑÕxîý-ê8¹–p™ü³‡ºì ”DÞMßhNk‚\Dc©*½Z¬ ÉXÁ˜pÍ;’ä×¾˜ü[®ø;5ôõŒ‡%•²êû“ÎÇ5Z›ÍœNÖÖÍò6lm*S¥Ô{.jÜá!%TÝO)EJ–~t˜Ò=æ*’ñ'YVZ^`ò,JªÄžR;0’Dë$—þæ‘ëA/Dükçm†¦*eß+×ÙsuâÍÍ­Š¯…ÔÆRÅM¢Î…:‘ˆëã1²äégwÝ3)rz[l°Ã>}›A¨ ;Y,T ‡ÈEc%n»@îñRŽ'i…~‡ëB•œIpþ Ùv\ÔðýDÜÉ`¨l˜¯°ÅPúoÉëØíß&™Ë¸šé’ÇÜM‚­Œ.6uFËŠåˆiZhåo yÔy’ȶ—œÒíëX}'`£W/z†U²X/"ëYlþ¯”K4b‰ ´á­SÊÔ'd ža'e³ð¨Î0Ðgó tο!’R¿ÍeÏÛ…Õþ"Åu¤±R¹B묢·¢tÝX›ñn_@M}îõ}&=Þý¦kúöñô8b< Wc—gÍUkã%lNÖºðÓÛ2BY!›V¤«FCHÒ׉| ­x—!ä|ö;;¹n»Ÿ–/ë¶wÓyÈSÊl9Xu,E¼.Ÿ†Jøìn7W¯bod!ÇÒ­Alfb·-¬‹6£‰…hÑ>¬wµ­‡+µRrØqò¢œXA&‘ãN ›Î£&Í%ŠÛ-=bÎ]á«b[1Ú¥žLMéãÇchÑÆ²,M¼_×&{+±oûÕg¶OjÿOÞ"òÖÅŽŠÎ·‡ÎxÞLÖãæ oȹ/¿|[e·È-{[ø¤‚mìŽ"|9¹j¥‘§¯ðˆLÕùDu¥ÔúE#‰u='£%ÝuokÃ:_”e j2Ó>©ù¢D¹ªz|ôvlæ/鋯øŸl¿Mð[ØÇ;;lÿÕe›)lÿ«öI6l“×ËÅN:ñÊJëJi)2ËT >Ü’#Ié±åߣ_y¯7{-»ÚÚdü]©xo5Ãå1øú9­Gò6Ÿå425N:ÄÒÍ&ä`ÿÔÕ+¶%'i "W+iÿ^ØÊ”,QÙêÞÝó¸ü¾1œËàkâõˆðºÝÞö»£>/ _ :lÙÛØècµk‹ˆš:qK~\©·#£NQþnÚ<9½xm±GÅ©€ó·’ü¿–£K]Éd2z‡…üoct“^ÆTØpÙktLdœõk:ݬ.Å‘±‹‹ rµñsd«[Ñó~­ËÊ*:‘Òùzl¾˜ÊU{)YHÚ;q[~¡N‰j™%tAk¶zc]önø kúú}Ø×Ê”êêmªá|Ë©ëú¦í¬i W_ÀLº¾Aò˜‡N¥V4öŠO"Ã.BfÌV†ÚPzÓgú+ñ†ÁOÃô°»?•|o{Áú&GÆúfwÅ›ªj[$š®rå ¦o’ÍAžlŒ™|®7ÉôC‘jËG´8%ö/ªœæ­˜×ôŒ÷‚¶*^WÚwYÃèɹànT›¿âv<¾7f³¶Ã†­Jµ|{k9:;KZÆlí°å7:å„À-|^NŸõ¬a2“Ø·2ÁÙQMDü¿õ¸ßúP—̳‰¾æ¶Ý'NÀ>í®áö*8þ{É8=äÌf^¥Ì]Ü3Ë“Ž%ÊÇTK×ÞÑò‘D`¾\Çù)$>gÊåýZrfœX½eÜ_KväxXésºsˆÉÓ55lšÔYÊ,m®Ìn¬#WßMžð–àŒF{«ØÛ3¹½¿`¹´o;®ý–³±îÛ¶Ïj3^\¾Ó•°°ýÄÕëõ¯ (+GSia`èôÐI~'‹Á9o§hÓ9sYüÞsaš •WaÏG±oÓy+5„Ììè WuÜÆnåš™z‘Ä«™×dŠŒ'¢IêµíŸW¾BLÕx±îë¶uºþ$Ây'ÇRjº®ckÁù!䜦£ägÙšW­;äêRIµ0.­{¥ŠÖ>hfc1UÚ>£üß²o¾KÒü_€Ïé3b4Ÿd5ísmÓ´ø<û?’ÿ¢ï;fÙ¾ó¶íÐê‘YÞ«µŒŽ»ŽÌFBal:>wœøWA—ê!—_N¥J@¦ëªÛÌñaÊü@—Tµúz¥«"‰DƒÔc&üO÷>’<5ß"Ý×õUѪùgÙïïx=:LgOÍÃíIz\Mj¯Q¶\uBaÆeW¦J¼L½=Ltüu®ÕðÒ¥çÓªø²·ˆbA(’ói±èÑxþ¬sÖ/záÁDëV܉ÈY3ך„*ð?—oå0~dŸÝò;cx²Xr¤Ü¼i‡ñg–µìô¹²RÁ¿iºf3]Ñì<òÄÍ­åôü2­¨½u§•ZSî¿RþyŽï€Óᛚ©ò¯‘5HqØ\Îï¢æãòN¸øëyØãÆeòÖµ{7ü_²cîb°9]Ö|U„•)5X0û£5úóÚkü;GHÔŽ‡Ë–¶ŸL£,ºÔ£"8¥»£ÔíNt¹ÉêJ³#M)dÓ8Äc/VòN—}ŒYÄ•ú$ð.^lj/ÚÇg"ÉøsÅ™ jùšQ^öKB½ƒ“[—±Î*˜röëSy_–8F&ÛÉ jÊý ÄßHþÉë~!ÔrUóyM[Â^?Ý|]©á¯eä†ú†÷¯cµ]ަÀÑÁ ù¦|^>¸ÇÏVZVðùc%Ç™kÏHÂ÷ÖÎ.¾DÍÇãL„ôö[2ã6êV·ÌtyÝ33Sx›Ç×ñU±5uüÜçÅìì$³½Rœ\C ŽöÃVW>?ês9™Îcu[ÂylÆohÞü·ªiQÞÞ°x„Ú±¾Ø2zï”¶”–LÁB†ålU\…“òŽñsn¯¡j¹"þ'VVŽ3]䬦FþDÛÈcAVÁùr›äÏ¢ÏyCmÙ· µï"àbßfÅYòÖ™¦nÙM[@òͬ Ö8ë^FÖhVÜUjR¯jZÓS{”"ŠÆB[(eˆÂš·üC´º†‹”ÇhYümMGðîãºA>ÃQóºþfÆ®[TÀRÆÇ¯Mñs‹’;¹;ð]×ëaªKí{wçR ÷õ#õ _éÇG+gU‹sˆâòÙÜÕX7JÆG«`榶ïá(ÙÀgnl¶æµy B¦" ìÕ» Üí8(ZÞ¯„K•¢1–Ž–©4c+%:,ÍÝP‹¹›ÁÅuÏš£r5u`ÄêŒ+*4Õ`|9^7Éý'xk/§y—G³^¶µç­þ‡’7ê•2¦´‘æñ‘S­ˆƒ ¬§ˆ)׊©ŒZkeDNâú){è³ÀuÌæ"î¹zöwaò.GÊyO#=˜£òT[}ÜK¯=¡+ûøü~5±Ô±xüMdJZå8Mbe°ý™oõ—B¦{r§wÅÙÚþ<Ò<©˜ðþGȉ¶aíÞ³¹SÄÒÌâ&Æèë‰Ké‹ÍW¾•rwlì ýÑêAôa2¾üCäï*nþXÏë®’÷®jí›Ö·6¸6\Î]êçFÉ×°ÙJÓË‹†µYµ[ïs‹“à\ÉXYìšÃàúÚºZqÑŒçh-‹ÔI½¢ÓÒÞø+'þ#¥§ÖêJMNÆWOk£ó T—ƒŒãþ’|7ŠÑõ׃9&?Oò¾?̘lœÙ8çØ)îØìÄY±jÍñTO% RÇì_Äu÷ž dYc.}1/ÃÿÀ–³–2ëò}]i7‹^GÃxÊŸnÿÊýcµŸM›'±kšÄÐIWÉ_1Sœ\±Ý±>"ºþEhOõµ±Û×?Ö8Ÿ¦ÜÖGWŸHòG±Ù'òÖ»Œ³oRñ6Òº¾ánõ9µ sb²)mN£Mv]¬ƒŠk¸To¸«ßXIë‹Ôð~.—cÂì寫æ1ûÆ2-/%‹Ë±b­hÑkWÎ60I®ÓËÛÛ¬ZÀmÐZ§>´•¦3*KWàR¢z:ÀôJ8#écT %Õ™0¼[|HºÔ[5¨?›¦óÙ°ñß˦¡ô3âMNå˜ñ{ßfÓ2w6»9oÛòž~ß‹r¿ëˆ­¦ÁÉhñû»•mÓÍ61,ŒV̳,Ñ€^>!úHñ‡‡·Ê>JÅg|“¸mºþƒ{ÅÚVSÉ;ÆGs><ñ®_#‡¿wPÓFC†¡‹É[×°³Kzf»’ÊÃN |SÆÌYKÅ^zÂy¢¦Ý6‹JS‡Ö4ý{'{bµb+Xê{v{6ZÆŠøÔ¬-Íf¿ÛMšº¶:Ï~Q_ìàXß´â¿«/ 7ðYo(øêºäs¾&¹äGs›yÕ°ôü”Ø=Ç ¥ìÇ3‚ÆêU(x¢ÅL–Ó«JT¾Î%Äec¹†©^ürдßþèÒ–Ž¬tŽ\ôæE”bBQ$¿þ&Ë:zŒp‹Ïkg&OL'1´œz¼^Å-ÞríÇ@¨æ4wå@PÌZ>JÈ…_²(n=Ãۤ䥣ÃAû›óÄ‚9#…#2NÜÑÃ4 ûAíFÑÈ«ÆMÖþ´+djOs;â{šúb[ÊØK—±›µ‹>íã<(Ø¢Õ±95MræZ¶íok•Ÿ7²'í'ÅO úZѾ±*îÞD×´9¼us sk­¡¾j=Ò¶o'†ß%Önì–ñvõ¬Ó¯þ™­Wcv`Y2¶j¥8õÊÒ"l>'ÈÉŒM[uX€Á±k¦ñ‹÷¢»¼fyh£Ó ¯QApwð†|{ºfÿå?evweXÊÀiÙÁBX<´xãŨýÂ#7DtB#2ŽI €ê¿¼èñ•y"Œ™,/·¢—oßQ~BÑ|ߺøñ|uSk×áÔ>ŸëxÖ¥ ·€ÉíQó–ÿƒ­c2w­k¹Ö5ûWîÁ1Ê[\Ä8*ðNÖñ™CabG¶3ê åñO–<‰°xöþkðÆG-†Ý|yKh§ž/˜¢øâÖwhñxÚ9ŒfV Åkt3/‚Å™æ2c&§R4yÝ NpzºôÍN±ôaªô¯õQJv߀rÚÔ$cRcÓµåÆ7 Ýß­ñf ¨QC#$¬Êl“òv‘=³ÓÐ7 JØ?Û=?qi -F8ñ"5Œ†Œ!d#@íЇ ‚7` šÉ3+Ù®ÊnH²ª¯ª_±ýOmº®7-Wkð¦;_ßkÞÔd×õ,¿˜q50=knÆåó8†þõв ‚ÊV§†½^ž¡Ÿ^ɦ|ŒôZ[ð&iÿYqnZ¾3WÄùœ~Co«€MKonÆõ&V÷–6¿o™mǃ…éãg´üÖg%ZrÛÙñ W9 /ÝËN ‰òkÐNB帷¿¤È†ÀkÉÁyg§©Ójÿæ< ï~~÷A\^a;¢!K³,½eeen¼…@íʤ HÓ?ld#óWõ•T§‹üb2öRÕ¤zÁq ÄbhíüõŒR/ªO2yoÅ{W¥b1ϯPñ=ýâ]š,ž+'žbÄnzÖ"Ln?UË`®T¾2¸Ü…¼1i²PÅ݃1XV½N7ÛwÖNgA¿˜Ôvß ãñ^UÇìçCNb­Õo`«êöð»òUOJ°ÛlnÇG¹&5¼¦b'{y•ª¢ÑYüC–Óž¤5:àiÊVºv+ÓUú‰çëÁ)¯©9C¦}{cƒ¤»µ¯åã‹ûîªÊâFÔ¸%%ŽI; 8ãàvNc-ÉóÈ|t°ŸC¥˜xêdé/É…¹Ži2Ž9”±Fq ‰„Öë GîƒKüå}ûzð—€w¯$Úý¿>yÆPù<Ö¹­ì:æµ´gòusøèîlڦ탯–™ðVèÏ|ašH)²®*JRdƒÕdå~­sûW‚<{¾kZtú&{Ê:4;¾:[Ù¼&Ðu6ÃùW\Ó2øi*K®SÆì2ehݺ«rªàe½C:E4cSœÐ‚Æ]@B:‘@©= >Û‰‘ÆÙc•Ô™ùå ½˜&õe6çÛߎ€K20i¥bPPÂ>ÊB…ƒÚU-UlÔM(h.ˆ¯%¾å3E*ºl$« …SÓ”µ'Ç(#Ý yQ]J·¨7À{VϾøâ}ƒlÈÙÌÁäo.ë‹kì1Ø;UÞ²Œ=¡ÁU¡ZÃSÃ¥jwóIßgâlس=´–S2CRx¹^RWe=ù^܈ÀòÑ¿¸HžU¢üûkX$œÔ·­z,u4á©#8¼J°¦±Vþçõ Fl$QSÈ¥gͧŠoƒÏ*]yDxš61Çdf$HˆÌ±Ç`ÿhÀ½%oYÿ¦$.ÑZ^‚E/n7=ÖCÚI‚ìçµ¹:†•ølx0’ìFÄ©%$…ƒ…Ž8¦wcŽÍ‹î§pÆÜhÞZ3Ÿm:°Æ¹Y$‘ I$eQçbA*U8UëÍüV‘“ŠQE €\¥4ã þØnî¼Þk„VãaÚ«Å×¾6§ôàâ1ö‘Ýdv™ $’ #Œ÷i«°EGïQÛC&L‡´O’jñ7Q0>Ì~àæc uoû(ÌsÙ8hì…훈†ŒÐ0,¼¨!‰‡µ•ü¡.]x“±"¬N¯%Hî­óÖÁ5\ uo¦ÙŽ9&Ê¥QVͪaE7`íñ#Y÷XLÒN¹mÜŽŒìõh¼+fÍ«­ uê=1שö6|Vü]KYé„r––*ÜûgénÕÃ6GøU?vä÷eeI™¸m;û2 †õeSh/ ½Ø{ð$>ÜlªýžETCÖe ŠÏ#M‚µ©Øû7qÆfo €ÁWb‰DDÆ•$¯Ñ±ÿaÓ‡HLieVÔ¾äŸ>¢ìþ½&/s÷_Ô~Ì”’Ì þç½&EYšÄí &BWÇ’„{°"ü§K™åõäÂYtÝt1Á[(rÕذjÉòÚº!)2ÿ˜]¬ ú™sÛ¶ Mp¬æQ3 Ž7^{ÞÛË*IÓ´¡ŠbåÝ~VBJÕÖö Y>ã½'ic+x bXÓª¥rÜ4ÑJæx¥êànŒõŒ(ãjæB¡H‰á>¢X¢b´¡^"–Ÿ¹÷!¥OKôÇöÎ#à«O¯ò±Ø• Röÿ’Ú6šVþêó£#Mh$%~=MU ]««§‹­§˾߯ ¤ œI¸ÊïkÆÀ¶v>™ñÂÂ*Lè¢9$YPÊíÕVnÒãaÑ‚_vaîÀ!—“ËŒ—/]½]0øèä‘XýV ¸ÐªˆT¸,BþÕÜ?å=S¨Ë°C4*ŒK€ÁX‡vPBD_øÄXŒÆP}[üR¤¸¬ci ÇTwîÖä»’K–’O‡X—ŸÊ>G(99?µHêùý·ïŽ=yî˜Ç¨os×kMïêW|ߑԫÓz*—Û;·ujïÁÿ½®xU’><9¬êOÁ'Ž~>??üî}$Ý’)¦nxÒ5îº2oÉ{r¼p“úÿoŸC¼+)^0T¯dþö G×N)￉.´#G•ó·Ò¼þµÂœw` )`:*r¡PÈùáÜøçôAz/rýc  òž¬ˆ ¯b¬8 Xpy?ñÀäþøôQDHOhÙT(Tè üŸ• …ƒþyä)òD+¼!~GV”úF\ÓsÈo‘óètÄl·8¿¶Ùþ˳߉Rª²¶¯j­ëüý¸œðD³+Ks!ý†^?ÊŽÜóñÿË÷ôeo@ÜÆ’¢ñÁ'©t òBŽ8QþÌÜvçü='õR]8Nàw~QB–'’ðAàü…RÀ^õ¯P 2ª²–U^¨ÜGÁ Ësò~ #¯è7ëÑc¶í§Ûcø¼ø'QXŠj­þ·ïvý¶÷¡û¯¸~É•ÀbíÔ°E¨êUºW‘òIbx€¤–ê8üY~xV?dò©ýŸGÿpz ȯÕUA@½£Y:ü·–åÕÿçŸØ#‘ÉçÐÔ…N?J¨ r~xãƒÏ ÔG?<~¤£e¨?SÙñýø<Õ¾MÏlïÞÚ{‰5˜d¤R‚{Ê •ùå?ùÏ,8-ÏÏÇDZ£µ ¤k,‹î*ƒÏ*œòyaÈ* ãäð¢É N¼ûj¬¬ÇàÉûü•î<Ž?ûy_ePU'†_ÅÂþù'Að“Ç9*IêG_×Ç­ †ê¤,Á=²Gnz8$·QÏÂŽPp8äþ‡œŒS½!g¯ëýS–Cù‘³jÛs¶ëçp¬.Tó(N÷/aʃÿÉ“ñóÇ äðl©™¦å?ˆá”7<†¸¡ú$Ž äþ°½~zF’oƒÓÛ$Ÿ“ÔsØ” X·Á°}VCò~y^G%~zž> fÿû'Ÿ× 0YÙÁÚî[bF[É*¬÷DªÇkUö¤M†ë“ÓÞDã‚yì ¯‡%—“Çaù||ƒÏ 赫‘Ê‚8Ù\–õRÎù±_öç÷Ûý—üYöUÁ Eç·Â!,J©?sñÏù'ž9ýŸSÀppTuä@¹<ÿ‘Á_ŸÙ<ð EJ[3]»oÚßûbëƒS·1²š ÿ–¿f߯¾7«r8—£J?¸…N…‹~ÏÇÉçãö?@pxøôqìÂ{vr@! uÛ¿²#ãã÷òzD;)déÇ'玒§É?¥äªŸ•ŽÀ@Uؘâê@'Õ¹ç€Ý×xàr<ð~xôX›íæ’¼×%æ8í¶+sûU›m\ŽHã±Ýʬ]¦,ÅI ÿwâIåÈ–áHäóñèãIŽ›‡f÷*A Ô£]x Äö þ¹ùàz ‚¨í*žOÈ^K-ð ©'©ðýp?ÈÀ‹ñàG «Íññðá—‚@ê žKpß'÷Ç© k5á³mþçÓÏ$ŒYÒ_ß¿÷÷íÆ³Ë¯ «×¤Jêü©p8à†àóÈ#ñýö#ѵ±^XÑ$e+Ó¯âü“ÇPG,½O$€ Ñ-ííè„ð …!CþÀêGÿ#þ@ä׬ûh¤ªD¼…~Íò[ެ ‰‡`HçÏÇÏÒ˦¨¼cµv/ïX¯¿Š*V]½¬ÿ¿øàé‚!ÕåFT|ž ÿ×nAøùõ$ƒÁä…^tÊ¿´j€°êyùä1øçŸ‚9±þÆ‚Ü|uà« Y—ÔŽóñÏ?ãÖΪćä¨,ä/|žÊÜ~¸`ùþÖŠ7ÍŸjÎÿLmç‡InQõÀøËþ›ñ°ž¢C0~AnÈsÃþ†*Á^ßz È}ïqYU B~A.ÁTöã…+Èÿ<x¢}"‰JP ‡Ã*¯èr8eãõù'‚~?mŽÝ@$üC$°-Ï ŽÛÏøçŸSôþ¹OÒÓ¹UêÆ ì—M¾F¯#Û½úßž½›€àƒÜ†ù'ŸØäñûäþþ9>‰Ø–»,0Äü0pÝ8qÙPG*GÈ<| ÿ‘èn¡‘Š¢ŽHXÄŽx!Ï?çŸÐÿåzò¤|†è°@ {ƒߣòGåþGRºlÀ}ÏôÇ~'M׋¶¿0ãëåú¼ ˆ`)4ªHäžËÀUäþò>@çƒÈçŽ}jR2 £2ÊW€x0$°˜ðHø'ç‘ñëÌŠÐJß$,¦ÿ云òGïàŸX PJr ö+Ãr¤€XËç¤rxoð¡þ­ùñýÀ¿÷ácÕAX½ñE;{»íõ»à($ "Èý ûl9 À¨'ã•#ñ'ä±ýüÐýŒM3Ã+R嘖!Ar8çà‚8ø$ÿž=®Ü„éðTôŽ“ÿ—'ÿŸÏùÿ`F[J°~KÀèy I ƒ’ÇüžxýÑñõßô3ìYúðÔZù¬}¶ Å›o—¿O$F^àÇÕbêT§$1àƒØÄ?!Àì>~?^Œ›ÕÞ3‘;kAøýrÀ9ã’GÇ$z.ëÈÿâ€øàüñÏÈãàŽ9õ üx`©ëò?"óË1nX¨?å ÿåÇÓt9Ù¯ûcüö¾çüvÇ×õÿ¾Ü”Ã%VX›HëÕzv Ê8àrx<‘Ïqò?õ˜eŒ"v^¬#þÕ m8àHä“Àäà“ëEeP[”`Aüù €vñÈSñÛ§ž8#×A`ÀA¡@#†·ë©<0PA<~¸óérÐùǶßç×ß… U÷m¬v6²¾Õy·{Tg@ˆŒñ’Uˆà aÁà+/øäž ðß±èŒe²Mî«2-Ïöu`½y$r¤Ÿ€ºŽK| [ñ1¡EçÜÉð~Y,ÀrJA'“ëbƒ¯!ø@¬Ãñà©f<Ç“ñÇÏä ("dÿ=»?G5½ÛžQW;g5ïïǦ–„§ÜtI:ñùÈzŸ€y |‚x ±äO|D>X±T×}•†FL†C€dnñ§ÚTYJ@–hÄmÄÓ;¯ÙqÑönàKlŒäª˜Ôü•øN;/Éødbú¢üŽ?AOϨ›Êü®'L‹&Nu*Œ¦& fV‘•VD°„<”V6´‹4v—ÖîB=<Æ…[ê;¯ôïŒÓfçðóÜHÄ,wê‰öúoUÇ=¾®&0øÛF’7Waõôó$K‘¼¤%b€ìv#äYKŒ2D€©õ×ë ›Y‡ÂÏ81Rºÿ°ç’9ü>8ùõÇ«… ã½&DHZ¿POöçû‘$ˆ<•ˆfržá \õ3LÁ…á«!V`{g°±l€9û‹ )f^ÜÊß*G<|qÈrϧø´zyç¿ò ìyïYý}¼â|7ÿfcmY¥ÛJ@nìÊ5ö÷à2O,yÿåõV Çø*A€<óÇâ`ò=8'žå‡%øŽH÷ÕXñþàü|ðã„PB©#·Á! 9ãÿ>GÇÉ<êÄ3~ þ* ’¿Ú9ü–êÜþÿ Hÿîzæý|·ó÷óÄåb£ÅþLdÿ—[ÁtCÚGS¬å; ‚BùëÀ ûÒšÚOù5æ€)°uÏ1îx-šæÞ¼¹¾xF–÷ãì{ïÛž73›Ïä†wÅ»6OhÁåŒtY{8Jå|l8’³A„½:cD¦¤ŒÓç¹=6y h÷k¥éG§)Òz—òâÌàK•æ&+ÍGQ•–.QtºépJ±³Åˆ³ô¹á»··³³W%ƒÊÔÈbóRWÈR·‚Á&¹@V’Å{Ьàã\nN«Õ’|¬(—*IY‹Ié½ú;ú|¡«‹Ö²É‡|-?)Н¹\—ŸÔ1{[i­ªìT¼YŒmm‡7“ºµ¤ž»nÚÆÉiC¼-Rlùêªÿ·ß$Óß|˃Ù4\Ó®[KÓêT¹F†Ùsmµ©!ÕÙõæ®ÿ×ëÅo&öÌÍ÷8K4ùOhW;iÛ¶9üå,–©„¿‚×j­ùÖ´/ŒÁâ2WêÑÇ´ ]¢í]žÅñ$Œ¥ä¯øçÌT㯻âäÏÒ:¾í¦=j9 êWÈjžMÃÁ‚Ûð¿e»ËR§JÕeYI²ÊŒ³Çì•x_Åøï"ì¿L~BÊo;§“3›®ìþfz¿ê<йNŽ3hÙ0Ú®W«Zóañ60”qÖjA^?¸š[#$ÎæÉ&¶è[×–±ÚçŽqu7ÿ5Ç¿RÙü©é8µ_+cFÛ¼y“Êa—Ëù½þ½ŠKRÙÅøìy 5k7‘²™lvìê0âG½8WÐóZzZO#Ó¥ÌBD#ÖSr¤•YÜSŠ#¥«6z‘æGSJL g>‘zZ¸å®šoËÅôÜ<=ã}ç3.{9û}ÅåÃd#Øñ™h±û9°WBÎ-åŠêQ„cafihÙ®‰ SKB¬†ìøWƶ|wKÅuøìèØŒ†/O ÷­üå°-}Ë‘·g¹µ5¯õ%xr³³0ŠK‘¤æ(é8D¦Uòù/Tóã»xï#äœFt}Œn{O{ök®ìÞx¯O!ZŒPÇ5°c´ìœ¹ºÑÏ–ÔìÜnî²q´›¯ŸuO=ßԤܼ•–Áê>BÄã0ºì“g6òŠbÒ¶ŒÎW+‘©íC«ås¹–½ mù¹¤¿¶”õØ«Q>o—åõ5ƒáíüÃJR€T…%{dr§åÛâGGSSOMüTD‘’ÜR¡¶LF€÷»1ÅÀÍx#ĹíÓ7ä\æ©A÷M¦Þ™s=š’ì´¦ÉßÐïËÔì\†9’»ä1öäovh8žÊp+Hôgwð¯<Ìçwäv Ír…Œäy+u3ÿô¦Â»N±g n„ÔrxlÝtÈнår"ê?V¹«6óåý™%Ãæ79dµ%±ámòöI³ûFOdÀåéyÝ}¥«I©Ã^Äco«c«áñÑlA*‚Þžy[Syf „ysê*­ûÑ}\Ù±‹§”µ‚œ0ÍÃ?„kýZ‹,æQYç^,mUîÅZÃIB(¢JáÏròê‡3%"I¥–d¦6ÇÿuâË^_V= ÍT£éWŽ˜1«Í6e:©øÃOÔFÍ-J¹ åíá"oÏíÙ«;Nɳ֊œ˜ê¸ÌÞbÚÅ÷xêTf–­ðU­×v‚Œ¿Éé•­ý9øgVµ«eq¸K¶òº=œéù|æÅ{-kZƒYÆæ°Æ >BHâ­ÃRØòÔp˜ÙÄÓU3ýŽRíÉ¢¤RšëžSú™ËïÛeÍnxlÌ·+Iþ‡†–Çþ”»¦Yñ•,ÇõD×q¢¶·W%>Ã%Ë6ö›ÒË–ÇdbJQÔ è “æù´Iµy7Ϲ:ƒþ¼»ä[ösy+µ&Ðò„ßg¯¯R£XYÀÄ0Û~Ý7©×V ¸~vXþû32œ÷-0èøv§òª0êŒcšYÛFç€òÚñ»ç :¥RU±´j–Šöqõ¸W¾”<u& ©Íޝe¯AˆËÛǦ^[;]½ÔË}н‡–¾ÛzÞn«‰¢xò3:KŠ¥T%ySéñóÚö¯CÅù ?Tµ­íJÙÓýWzS6CÉ”ógi½G=­›ÂMaÏÙËç±°VŸ‘IdªÒÒ⵸í)WWFT/+HÁä‘ÉE1Êåû}Ä$Àƒb61%ˆMÚ>¬ÚR€âP¿ÆÑcõ#oÁÍZÀ2{du'Érz•èÄë¥aQ›˜ËóR‰׌pæ5¢‹9=&"¢mYضè‡7Cú=ðÞ‰«ø¿^\=Œµ¿è'ŽÎVå©i¶ç‡ñÔ<ê“îÔk«Ü,¤œyÁ<•–y笆#&y7Á~4òýˆ.ù_þµký5žÒç³BZ%ªìÒGc;®d,WG’|u›0CrÇÚµgy#IjÏî "iŽ8ž9+¡PuCØ·»¬Kû )áùž9?„‘ ëcÆx*yÆ6#•`X’Ä,ô£…¡(øåeôNW“Ž›¦hCå´°=LJ:› £9¼ç€ëó™7Vd‚…±-nSŒxÆÇ}§âëdêÕÓ¨O_1¼Ãä|šÞ±nßõ=Í)ÁJ,¾EY‚ÙX©U†­E€¬p¤k-¥7*þ=ð¦â¬†C;©ÐÉ ÎSˆÔ­ås9ÌŽn캶¹%–ÀkÑOqɃ ƒkÖ¬–YÙýëP·¸²²#{i©‘°è¼(îxÐÕå'åë?áy¿\G¯ =N/þ=‹–Rz©2?!œ1oçã¬hMù}[S@c8éi†Ò¢ÈîEkc?Kj¸¶«p–¤˜JŽ•wŠÖÖSƒµ÷®!Š¿O¾(¡…¯¬Á©VL=StÒjQilƒYò]sÛž0t›ղѥ©‹söh¦j„0öËnÒüµ “RÕŸÁìÿëÍt îNÈÐc×eÙ¥tk.ù¬4Pã¶HœÛcǽ—©R”Ï!63Ù”ÀïÂòeU‰¹‚[޽¸ûCýÕXó+uãÉØÜàò •öã‘›Ý Q¿í4¡VÌüûÕn‚+(­!–|§+1-5¥Óê‹Ûnɱ”£†5µcÕZ“:·Ä)È7"ï¿}³Ä9àÏTñ-jŒ#äó{ǶlöµÊSã±7ö-žä·2’ã ·ÿR”"Y¾Þ¬—:ºÓ_µ«õ‹äþž¼E˜Õ°zeÍ>°Áë:ÝKZ;vTâp÷6gqJÔ¤s ÷"Ùõ s7бb9^+Øx¡È)D¼ÝÔó"UTŽÌdsÀ‘™W‚YOH)]x´¼°#Öl{sÙØ£¬ä”g= :F:ÙN¢L’ˆí©V‰‘åt>Q§-=61L#*@¸¨¯f‹ó"éxWWQŸ_\úä’“ ÆSØÁAé“Â†³¨œž6Þÿˆò¥¤Èf27&±¿`ì$Õ¶[ ±IóÛHß%})Ë*­±ûf)ér¯ƒügïcÈ4µ˜êlógîíε®I í—+y 0©ÖÌØ§ÍD™dûLo½<ƪ5™åÀ–~#CÚBªUQÔ’>–à<Ü|'±Ìc™ô$‘,|•£(!ôþq{LÜ¿fùZ±1?w:ØüÔr§/Ê5£¥qc(1ŽÌJ.óu¶ ÎDàºÚïSódõG¥:”õ1eŠÀÖ{þ¯NëáŸo¹<¾sf×ÒæS-¯ëúîC%^ýê7`¡©æklº´ðX§ ’­íg;Z –3'Uø-(–™hÉdðŽ¿{Ä>@ñN¨¿éêÞB£—)–˜M•ÈYÈç-Qµ˜Îg,LùKy ôþÎfᎽY#ž”qÍQ7n®Ç€V–0J{¨½OÄÜfEqñsÿ¥aLnyNÊce¼*õ¹z—ÛÙ‚è–¼¦ol÷0𼥿ìž{<ßÇ ƒ¡¡ë~DjFq’bR&G«"å»îÑÞø†¦©ÓZ’"VA6£¸JšZ-ï´ Ké—Ãuñ˜Ús`²s^Äåð» ‚m‡)Ïcóx­g!§Sl^Rô“Ì1ƒ[Ìç0iˆ–.2Xœ­ÊÌV×K1¢á~˜ô½oÈ-Ïá)bðú7…iîÖ|{¦Ð“)o#[qò6BlŽÉž½“ÈË%yjÖ{YIp‘K5¹ µŸÍÇi¾èÃ+Z 'NŽæ!A,ļ`Æ GŒñÒF!nMY¢bŸ Üú1–B$GoÏ -c³·øyG‘bI=uº ”¿¥9.U`š0Ëb²ÀúXÕ¹ºi§Þò»Íkz’lN™z««z/ Ybn× ×Åz.ÿo’ÛuÕÉÙÅcìá¨nÝPø¬•Ú7f¥f´RÇè¾ÿNÕ(-RÜ Xe…ý"ížñvÿ‘½•صXlf2·bÉd3uo[§•–Õ\$zÁ0YÇÚÃg|^HÄ£â´Uà<$R¬ÆZAÝTñ@ócÕÈëÊ©2˜Ã,¨§Ý¾œácnE*_€Èň +´‹Ê€?i\B©-ð‘Ö+†ž"XÏKBl™héÉšJL£mÐ÷_dw³¾+†¦¬*µ%8Œb mUßÞ÷í\3WIÖ*a´Íz¦¥L/2ž—¨ìà/jë`àæ¤¡ž7š€³jXE‡t—î,KašÈ^bŒ/ÒÏ‚ð“Û³‹ÐaŽ,…k”b¯6o7s‹Ää¶*ûm¬f‹ÆF6ÆËZ,ªÅR5šì«ö¬c¬‹°Ñ†A?Ø R#é‚{×{g¯EðL€Zb0>BÄÈK¢õ÷݈* $iJ‡€-ÌŠð²Tý“éeËéI%=-90XÚV1òÝw>¨pƶ¤l' ’à}…¾âÚûþÜ6õ½[¦ceÂ`qË‹ÅMšÍgµyÕr»E²™‹*ìÍÓï²rIa+È}¬T’K§‰øÙQ}²¤RÜIù$k¹À Ÿ÷c^ßöãr&òÒÓ:úØ+ªÆ]ƒ9EDW Å‹0/3/ ›Ÿ»ˆ4ó‘4CЊÜrFÑ8v‹¼…œ1àî{¬ÀpÓ(ïq8ˆpWŸV×LÀÚ©ŽÅ{Ý[þÈ­ª­£{½·½óvç~PŽŒÏì]æ+Ù…˜4‹Ì‘7Ï$­uš‡nÇÖñ n]úö3··"û¿ÈÛä¢QÎÆë]—ÖOá ²SܰOÜÄÆÒt êNÁ¸ûÜÇN2ð[ YyB7 àÊ9öû€¨~AOp—öà«KÚ|´<ˆ:€ÝGK¹œy;7ueb×m‡…éz°¥ÞíUoƒöÚï8Þ2İ™P¹fop3°(C‡#òi]Ok2¨ r°öé21õ9葤fã_¹×+Ü öѲ¬ñÖ8úöñ©zýlJDÒ bcð¡üGs %¸wŽI{ŸˆJÈPÊãˆðÓÚĦ6å¸S ´)Á‚rßÒ«ùSd^ßô8¤^¼]»˜Û¼¤¹%—ð'îx‚:ý$¦¾øsé‘—ËÙÌäìäòBšÄ‘ó í±ëûQ•I„_×¥èǽ9êž_G[ñ®¦œ!Kå$ ”Ñ›ï½q·«©¤èü¸JLºÉ\¢1ªpPa¾{3J·U{ŽŽOŽ#OÌEî±2¯_u¬–*»p¿Ž 5í™ôv“A•eûð²‚äÿ‘¾,ª'jÌV$r= žŠí÷áGká3m¸ 푲!'‘ÔðÅ‘Úeùãí[ùrÿÕ‚’DËêââ‡\^0¨$}…> s rËýðÇžGŽIõMÔÊèÈcgVîܼG¿î{$ 7>ý”>ü7X-`*HG«‘‡1X’ÊBÿN¤韷°¼òqØ ø‚?úü¿Œ¨hª•d͆\ç¶J®õuÇKátËSb;£DŒ}G.o' gù¬‰Ó8ã‚~*IqùGbžÞ²‡€Ï@€–cø?<7ü8çŽyãàüçä°å€+ò ©á”†ü\Ÿüx>{*ŽO¬ ±n? žÉ$~`þÏùõç ÂXck³Òïy¥ÏÓŽÒfûÕo¾oÞ¨g¿(`ÊÂ&]Ã7¸9nµ þWŸCp¥‡Ï?˜ò9ƒøŽ[àpx'‚8'ƒóëP;näß ¿ §€S€ ±ã“þ8#ƒèXû…wø~G ø‘Àny ?óãä–#àŸßëÔ\°Q›]“ûcˆn˜mGFiÿ™þܸ >OãÏÈbA%Hãür>O õ‘Àr¤½K¯ ðTÏ÷8ãòãö?Z§  ϯe ÍñÁ$+9^?úßïëËÇyb9= #(ö¥~`?çç‚=7Uþ]ñÓù÷ß:ùä‚G$ãô[ü“ñ‘òyõ”D·`À),ߢ9ø$r8àpJžCçб±S׆.Gð 9üI? yçÿ”=yY@*W‚ç‘ÏÁáGÁ'üpøÿäKÛ|ý¼yKû_Ž'ùÿžÜh~YBŽR8bKõ=Óô8 Àž>}eã*>Š’uuåÈçŽGï•çŸXBŽ>P9f<bžyàð@?òSÀۘ‘ù î=OÏ%“çžG?<Q´ÜÂZûoûŸìœìãûU·“Ûp¿’È~OËò ýŸäñÉð?^†’u,ô·ÈQÉù÷ÉäñØO#ÿ”=jwn€YcòOÏ<ý¼p[I?>ƒä’ä§¶¼Ê¯ùpI?¾¤pIàŸS¿ëãÛýÿÌp)ó¿ÓÎÏnßëwždùV[•òø<³('žûóóþO¬E –YA&$R$vuˆïÏGäAã‚8ÿr¯‘õ"G‡ H%»~þO?¦>Ûä=‚Q÷¡Û‰ÿ&ç“ÇþCàü;é}*Ôpä¢ÿNßï“<}¨Æ.ÿò¸<”~C­“' Å•=;pÍÈÿ#à|“ð>G<úF’)„¤ôVtéî;üóúPxžÇüZXcŽzüáUº±áÏb+Ï=¿_¯þ=t…œ•gRÂÊO,¤È àžx#û~},ctJÜw®Õ[±ç~¨ÏoÙúÿ–ðtAÀÿã†W'á¯Âp9UpO<ÿqççž>ž#a–f-î‡!“–áxb>Oþ¹ýØãEíFÈÉ*žZPct¾¤v矿 ûãž~9?çyRˆt—ˆ¸?$ã·?!‹ñûàŸB«§vå²úo±ÙïÄ ÛÊÞé›öú]8ý«xPËw¡âN!R²ñϹàðyôûü§ÉüJrü ‘ÈäG$ÏìJ£–ø^„ã…9ü{|‚OãE¦Q÷½Á×Ü„?Ïäxç‚{ñÇ$|qþÜz‘PÉ¢%m¾Öß­ }¸ê¼øÇëÚ¨ÛÎø8:µ?ùLynü„öòT¿<ŸŸèÕ x¥÷YþT7*>óùü‚~?\‘ëÒÆ”ÌÅH¦D„ðà’ª‚¡˜üþ\ŽI<|zÒXš*•Ð3v,¿rAf€<“Ü ðx ~~I„\z®ðcÙûm‹»|ûòç!ãï_éÀÑD]=Æ”‡”³)vITúQÀT?ûÿ¶5øŒ2Ø?ƒ…G-Ý*îJ…#¿7åþüHäþ¯` À ~½áù%¸ã°<ûòyùôWÛ< ¨áÕ¿¸r«úÔþøçÏÏ!øõkÜrÆPHÊå‹õêOoÐ_‘ú@;ä‚}D‡|VùÛ½nïíïõà^\?åyÇØÿ~¹RT|Äv Ç??¡ÏÀ#ŸðO'ü“ÀõùYR<^ƒv½‘ž²rCשÝÓøãªÜm?øæd1 g´sz’Ä‚5@­fùPý¹'·>Hùùÿ ‚=D¾[÷†F ¾Bë“ËÒ­gREt债yþBõf¶8ÓÈ Íèf®må¼Ã_Soz¾3ó€òÚ¶#µçÕÚ/%ìc~ËÇ=¾¯$x·V•È`¾}ð+ž:©|‹ˆTSòbD¤šñ3’/Âr&ëÏ`í2›6‡ö~ÀfýžD­Çëôçƒûø<Ÿ\rúÂw_ëEcuÿñéàeyV²Oü“…2®ÿø ü¦€rCžÜ'O]Š´£î¬vl·䙟CoÇÏûpù^¬ø©ÿ­¯ÿEv¼ÖÏùøt‡”hOæIíØ…õUÙ]–„û:¿ã’½ún?~Ø?¿ßéÀ'žØñàTØËò“ÇP °àÛõÉøÿP t SÏr'çàŽ~?@|ŸXçò*̬!l½Á`?G‚>Aç’9¯\Þ5ìd«oý8ˆþ =ñà?8Š\5ßù7å'¨K4`Y>t@ ¡,€LPö^x Iýûѯ9ÇxGÍé _þRù%%n§¹C¥æƒ–W· òã·<ú÷ª§¦NbÉŠBç×}¢ý?íÆ}}F,kHæúþR¬‘ôÛ¸ñ˯£qôí­\&ùç°Ò¥tÆ‹çÏ%¤j}¤%XÂ-z=Y§…Mv"JNæÐ ve ™’1Á Íî’yùyŒ>䃑å‘£U/AÐJȾªÏÑ|ýþžuÕhaˆEäO¨¨W¬oªÅõåX°YÉíyÈi­J#· H&pm2»õEų»ˆ<«pÅÕO@U[¬ððbŽ#÷1q8õïþ%ÊõD_‘¤5‚å¿›·¾Ž>§9;¾¥ƒVu÷ª²Œ×ŽÝ´€¿³-xçž#V?̱£ÝÖ öd©×©­H±Œ³Ù®$q<}ICbv›î~íÐT/¾ÊŒ S$‘˜ÞFHÿâ‡(­1 5?ÓYIí¦Ž:ò3»¸.êüĸ b&+à çÿŠðöؑǬ BŠY‘™}°±«ÿhÃsj×pûž»™ÕöÜ\9ì>'3‰¹$“ÕÉb.ÆðËJG…ÖV¯$|ý™„‰2|IM¤XÙy__qÐí"¡pŒ‚ìHh–X¹n±ìÕâ«S”™'÷@¾·(в“$ËÁ}Â6²‚ÞØp¿~À,ïÂMH¢vš1…WD| x6hÛɲwà`²µ L­»‰·ŽÙ=ø'EŠ´0•ëS‚œNò¼S¢‹ xŒUýÇÁ"Ea{.4·“´Š[ÐË3”uF˜ön²(â~Hº¿xÄŽÓ;D‡ŠL;Õ [™ZX‚z3$bRŽYÝŒR,n³sù˜l~Ò@  a a’2¯Á”±õ«#?á@€g”Ÿm× ´HÈ^>f‚ê¤ò\²—Œ $`ttÕ›"álíE§~'S}^¡G©?¨ÅîìŽ_~ùã Ós ‡ŸtˆÚB³´£ãñï·Q – ·¢þú˜Ã g²Ê²¸˜:–Ž):É2pÍÿNY¤ )+îV÷‚GP§ÛÛgwM¹åýÒ¡‰œÕ”àõy+g¯ý–Q%_‚y.8äHAVÑG¶­Ïe/Ù—äLTû’..72Ƨè0=5N÷[RÖFÁñã‹é©1¥É½?@ÿWáãA#@:´‹€• ªœŽUdhAGÿj’>ê;E¹ÿ¦*=k³CQî,kîñ™Ln ³‹+0¨u,}£¦V¢í)’0y¥àª¬lîx!½îÍojVaïN8™À{°ó `ÀrŽ3øVqÄ‘¼J±õ$‹~V&à¿Ú¤Šc€4‘KÙ}±wŽÛóÙÛ·fꬶørò½XºNö†>»†Dìp·nlû÷ vQ2¿·î4$•uܲ骢{ÙúÚ.€4‚ÕÓöåfë Hg6;;IÔ8-`3,þÜdõ™Q–H;c ÌA‰Ô¯VQì‘Ã1aÝöüA˜Xûј´¢nT•€è/nÁ,}—ôüAŒ|Åcå+Éõ÷9g…{HÞ‰„ŽŽ¬ßåÝÅÓßmø…¤JmÍÝ•ŽæÏcÙ}øÂä,Ê¢2Ó.ÅÕg –.YD+Ù”v?hæ‘ KÕW·L ØPŠãzÇú_ÖÌ-‰(ˆ…e>áö@øU‚†5[ž‘˜ÝqÓrî7T“º·wŽÝRê^2™ãB,ƒÜæ·`CzJžé'–¼dHe”iBFJ *æ%@oqzóì ½èˆ?1ǯ,ÜHn&À2²Ùú FI[ùXÆž ê=B@W¹tvj»¶jë;Æ%…¹šÈÇs¹ï|û‹EB‘’¿/,£³0OÉšX9ˆYx²ê?g‰cW˜z2òHc‰áùg•#ë'f Ê(ÿ» Í%#_´®A‹ñÝk« )¡BJ¯•*Ý{2"³ÐÁð¸ù9ìXF'x^U®îã³dìy,ƒ*¤…¸›·%¥WŠÒèMŠÜa@ô‘St2Ö=¿}ø%¦ø{—eb­óYO#ÂwÜòX{PBà3KÞGIëÉ›«An‰à0ÈG2Í¿ÇÞµi™ǰÏyB¡.“¬RI9ˆFPöüLÕ`µ.NF=ú"tUöÿ!#4$OüK*þɉ‚û7Îãþ™Àö•z…X…G ¯Äj;©²²…èå“í¹ee’ OÓ¨3¨0SI{d­±æËÇ:¢cÔU{˜÷ñô§ôà-‡ëHÕØž ,¢0³H‘î~KÂÏ[ƒc(„µEëÌÓ¬(áûŠpI•þTø´v.ŸnBEv£üD „2Ähà`DuãpB“ÕÊõe`ÝÚBAŽ>ãðµ{Õ¥þ8À„úóÄBEéÛI1{ŒWøÁ"(݉2ÔŠ6V;¼·»"7¹û`ÎqEöòðÎ0´˜óÿ.U+æîûWL–D‹ÔÈ¢5!‰U<¿Çœ—šKÐÉq¹‚ÉŒõ‘,À{¡PÄðJÝac˜ûOíûq<€$`ÊŒðä%в ±j¥HbuF/nE'äI•I‘SᜩàYç™l²AÕA#Wê½\#Cî€ÎªeêX™KG$¢6 4 }³WD´½¬£z–l çÎá€ls½7À§-žGjº=Ê ÷à¿ÝKØ7EEAí¯@ü:æFFÝ—é´9ríMµw¶J;¿ëÀ ,¡CtiÕ]™9R3$üûKd)5$/ø‹$J¸ûVE/0_Xym¤oìrî²Ç"T–ö¥±ù$ÐHdX‹ž\Ô íZvû»-YÐz4±Æ /åÁ,ë +À D8Ft_€’+D*3ÈüÚ¬®€³_ÄžìžË|‚žÔ¤ Y¨ûYÝÚ[ðj`„AÎ6;crü˜Â¦{UÙÄ P¦Õôǯóx®û‡VaìŽOá#¬3ÈÇà´r«?ÞB?O<+ÿV}Ê0qÀãÑËfh¥` Vá#€,“7OˆÚ#"UäÖG rv«pµ„ )rî[†îYFyOÈ7Dsü‚Îñ€+/W¬¢@Äå`EF‹±#°uRC˜äžb+,µ{1ë¹vneþRV;÷ò]÷LïYvÙ¸= {ßý¨_7ÿbÒÏ)tT5Œ¡" ¼C,lIJÆÛe?=½æYšïE‰R¤…†¶YTöÔ{q™Ižu®ÝÁPYš0cŠB݄茱b¤Åï+ŸFÖ:¤<Ë"ô዇ýÞœ:Êò+4ÒÇ çCŘª# A:”°T+2TVg@œ§euઃÖ,TÄxLª¦:WjNÛgzÎhýøG¯i¬™­¯7·ØïÔfU^ã{‰ï$(µ”s”K]Ù$ÙÄs×€™îô*ªbI–d壔/ib Ìfž"P#SòûJ »q2Á,}ŠJß‘3)ó,@’…ÔÀÌãªöàBÌUê°X‘}ù%÷1çþ‡:„‘ø‡P«íðUãr¨ç¬>á'ÙŒvÔ§CÛÒ õ]d*&϶?Ñ3¶qß–ý̧ٓ¿zöÏY$Ùìˆ:õ®e,á•}¸ÉYJ*3ÁU‡àí%ÇYcE‹C,%£2ðßÜv¬D‹ÛºÙöÉe„‡"ÅVPŒkÊèàXÁi}ÙV@Ád•‘äŒ*ñÄó…Äÿt>à‘YœzÂÃÒÿÏ–ìâF_™áÜ‘ø÷(ª,¢ <{µy~}-Öà×w;USµUvkè]‹ÇûÙÛ&õæ¾üh$VpÎYrFÝù~ä/²$(íÏU\´xö2.Iø‘Ö~lþÙxà“‰]ÂÖP¯üŒ’ö¬O_y€¼·AŠ$ûN„hÔ¨‰—„’_•è$‰Œ‘ó ê–P€×£ jvï¨Þ(9sÔ?¶´jDÈÜõ´‡žm"nk«üvj…†42päQM¶d¼jöÆJïy߃޾ß|~Ÿüãóþ2Ë,Ò97ñG$a~f„FWä0†hñé9üÙÁsÓXν³nˈVb¼©í‘U1–F%«¿$ÚÇ…[™GÅF8-·å#@#Rèìcªîð‘Û±%C1èÿÜ=Øï^€8ñRÇ>¿³¬«È ?"W쪙âDXíÙ¾ïŸz±&Ú4ãŒÚêÀK¯›¥Þ®õ!úysy³zlÒjIšé•†7,íYß÷h§„eWênc¬žÄ’s'¯FSöâhb%g¥Zms I&N>áaÿˆøÂ½‡8Êd•BŠ¿À£²¸ˆ‘òÒ2ÿqçÕI‚· 0#ð$3U¿> (îHu™@ «°nOÇ /øëÏ“úà8ãC GpzðÍÀP·ÃñÇVíÇ~þIýúñe—ö×x_ËÉùó×ô…ÿŸ^8³-a·ë»_“ŽÑX6ì}vþû¾|¼`HÅŠÿbðGGP¤ŸòTª”+Ç~Ksûà|úË´ |€€v ¤oÇå?dry^?gŸ×“€rU`<±çŽ“ùrx<ðøýüúÛžr ÀbG“Àã·Éý||qÏ©Äã*À*«ì>T€Ià†ã†Gè‚8ùäò­¸?,ƒƒÇ/óí÷d^çü÷øäzÓ¹'à€‡ç·'‘ûëÇ,>8 ‚¡ûõ°R¼Gbày!¹ãà’@äŽB‚HùçñéMÖï>{ÙØìcqÃ|G;íUkÙ, ,Iøc×ä Wžyä¨#Ž\—!ˆbÄò@!zþÜ+Üðòûr9„¯#¨ø.ÃŽG Ã7^WãôäO'ãç“ûЬ¼8€¥7 Ïä ø_ýÇÇùøôlÅVæÿ_~çë}²q3þÙÿ+§ïÀ+/òPŸ×‘Ú>?`1ëÊóÈ'Ï‚IãÐŒÅØ†$öB«Ò¯`Üðxd 7Ï#Ž=j‹Çn®Ý¸”òÊã•AÂüóÀ[ãÖËÛ¸PTubqÃóÙyø'ãå¿Ûž¨»P]d½Ów?¡ÿšæÎê_Œx¯ß¾\þ ñÑÇ ÝLŸ’’Üþ@ò-þêxíññû—ºr• ÝYAPx!H~Ü€ÿ8=d ŸÌyUB ~I=¿ÀýàüÇççÐ8•™•`U˜7r ñÈêòÉî?Ï =_göþÿ^ÊoWÃ5Š¿{ÿGýóõÍ ¯åS³0#ôU‰äž úêü”ñú>¶‰úÍ1™ú«ÂŠŸ—g7,z…ècê8p䣟œ)!ÃGÓûxP¨ùÛ <~9_Ÿ‘óÿ¿[òxücù)Udÿ%”O€ý·<>yaê'ÛlQŠJû>¾Ü /ÚÇ"–¶ÒpìÀWç°ø àŸÐàñòíë[sDò £(è"H%ø*ܳœ7ÀŽ9 Á#ÑÂ¢Ž½—‚TåH?$ú ø$…ÿú "ðÍJ’¬H'ò GÀíÇø'©'æDwwÛíóÿ9Ž*­½ý­úí¿m«·I=/㑈å‰^ÂN¼|v×Iä(àIyf¨ñ·°f5üãà†=Cuþ‹|ðWüóÇ&~HOžC~<8?çõÇô8êdîDPý £’{@'ŸÓHäûãÒ‘,FNLÝøßíßÎüG#o¶Ø¼ø¾ÞxÅkDoZfÝߘÜðHïËçà¯Àqÿ<Ÿ“ËJ" 0…Õ¹n¼r¹óÇÁ,8à~ÿ^ˆ½Ÿ˜€PxW<ƒù:ñþù<¨=G ÈzBŒÃ²>J(íÉ×€¥xŸ÷ÿ'ãÑb6·æ¾Å׿mÿc‰Æb$Oq™J¹, ?¤ê¼qÁù8øçŽ} Ù‰!, êÂD<Âö'‘Ë0êã·Àê¼[7Âÿˆ€à Aøù|òsÿË?µp¸qÝ8?á2¯p+ÇÃ|óÿ°*ßn'›’ŒÄ/Ê|€ÌHüäGÁqÏûññóòþ_’~>3åÝþÙ}îþ¾ù‹_¨~´?³Ÿ'ZxfN²À ¤0žíØyøä/'“þ O,32¤«©èåcQñÈÜ~€B/Ei  ¬Iu$€xÿÉ›ç¯#þ_­7ª·RS°'³ür¤þ¿Ïïô8?.ö0·øíÁ¦¯µÕûÿK5ÕLS3*óÔòCr$~ÇÀð@ã’xùé¨ü9‰€tü¹*U-ð?åºðT>lG*­î~* rß XŽGåÏíO蟞>ÿ¼8e¢€¿ˆätíÇÈ É'©U?¢ë€M~¿Ú½«ë·ßn'TB¬Aà³è’A'°ýuËûˆXžyØ (<ð ð~8äþøŒèBŽÌ~y<·Sñ׎A£òòà‘À ]Ú^G ÅT±àp¼ž;ýßàqþ#€yççѵ%fwZú{xºÛõâyËôƯeV,®£ŽT…¿ˆýÿãÈù×ùý·ëÖ †*:ŽÊüŸòP¤Jÿò‡Çóë'ó?Úª_Ÿ×åú$D*„ÛÍ×¶?l–‰HVàñجJ½›ñà~<7%¹ùêÜr¿çÖx•yR¼’;? ŸŽÁbW… þ>y#–"²±W=>’HâË/…™ÇÏÇ daðx þùýr?ÇïÓ|[ïkùQkÇ©«ø¯p⟇7ÉÄ£þ$éº\Aìç#Âc¿WK€Ó±§*¬ýG%™Y{rG÷:ð’Jˆ¡“bêHäþ‚ú-óØÇÀÿêsúɆ”ÎR3:…ˆÍÔû…ÛRJxù#©?ùr>=läv`Yx*ùn'‘Çåð>>~O?ãã\î7qyɈð—™OPå|Kä†PHUaþŒÍ‡¹¥Éã´¬‰úä¨çzÏ›KÉá_1±ò‰ü¡xWfc¦æ‡\„`I+ 1 O¯zVleEì;)¿²wÅ{»gŒ<Ø2…oYþa Ü;?jNÞç°ú+B¿Oºüý¤o(ýM@Í"ö+-©//T»«9äEL2[#Ø¿ôþšì€¶Wê…ðÿM9O¨¹tè–,Mä¥oVÃfnPj³Zƒ%W$¶‰†fÉСR…›iÑJÒ e?£¨Z‚±±M½‡òÇÕ$‘ ™jÖ¾§üÃ<2“^[(²4vc°Ôݾ69 ±j¼Y³^¬ý6àlø߀¦Úö%ÃXÉ.@l†,D™È¤M²¾Üñû“ÊÖk­)P÷²”ÛºØE—×´äãÌ<—)ò¬?”Ö5‚ 5m]^ ÞÛã—ÌËLæùƒR#\Ü™n\F]E› –owœ_¬}TxM0o°®guž©Ïl¬ØØ¼7æYöú}f¥L–ÌsZm·œ ޽Édv,¾¹K<–*ý²ãrtå˜Ùú“ðrãÓ/þ»€ãŽ×«é1Û“µ)}—oÅÛÍkÔãYðQM-L†#ÈM—HN¹J Ö²9Zsѳlo ý-TÝv]ƒ`‡É{F.=§nÜvLÖLV¥±ëóϹx÷HÐ¥únÁ‚ÈRžö·Ò¡Èê{=Èæ½‹—7˜ÆÖ‘!0Ã.3èÃI­ÀßÈíûngñ5Ÿå°óC„£Ù­ VW[×·û±ã1•$ÆmzÖ¿›Ëb5ÃŒz´ªËuíÜ©;´n¶Ÿ,44úN’2—IÕ$ˆ­Jë»—ßbÇáòˆüÝB=OT=JIŠJ2Ï›k‰ÓÆþmñ·—ìäjxû=’¹cS•¹_+¨î…Ùñ9në‰Øñ0nxÙík&c–<6ɃLž¿X¥X2-,"ÇÙO«ß§œ<Uܾó”Çãµ.í±[ÎÙм‡½ŸÅøÖŒ‡³ Lá¼’Ô±u/drÕ4[Yû¸ªxü™4æ‡~Zãøéßá+Ù{µ¶|ŽÜùK¤U!ƒÔµå¥«ëÏpÇZs«ap²e&µ=Ë3æ²™9,äEÙXÑšü/¨ƒ3ô)¬ìZ¶7FËù?w—NÓ±>mÆø¯˜ýJ+^9»ç=cfÓvìÅ|„·µ^Çê{Æã×hm“æñõ)g%ȵy²´1öjÚê|Wä膞ŸÎ—_Ì0J¿Uf#ˆÝ¡çŠˆ|?æêst¡ÓV"ŒrÚ$½T1j£ÔöâÆì^nñƧ¡kþJÏ^Úêj{Nc¯kÕñ¾ÿ—زùªykëtWBÅë6÷d“=$,øÓc¬…n_– ’Ã+GxﬧŒÚ…ÞsøÅ³þ˜’)sž.òεNz[‡”uŸ cò°ä¶MJ|FÉûž¯ªî™è§—«O˜®ûmÌ7›ë*ù7Æ<™Žñæ6ÎRö,xÿÊ“éÏjœär~:ši¨á²]¯2œvIfÿª’’U±p*-yëà×-÷éO ÚÖÃk_dò ËNÞnúx‡G±Àbëgq~|ò¾•¿f3ò䟣 ’Ò®ë«0ÉVR0¸Ô—)§k;Wb;5çñ=5ùQÒa8ɸ’e¨F,€=F{V+ x]rsó“ëKêH‘d‰ºìÖç 7æ?kZfÿäLÆË%];Ź<¶|ÍÅ„Ølœ6O,Pe`©ƒc%™ûi¥X᱄§“§éÉ<“Å"+.ª?ÙÆ½Ê™ êô©™§:ýoùnMÕnäñPgqöåÑSL;…\.GarXÍ‚Æ Dó˜ax³ R±w¿§ý³ÿfÍàMnÜ;/’rž?šÆs!mhÖÛ|•°dãØ÷‚Ye­>ò5ªvuÏ+…§…µ™Ø±Ú~G ©IvÉ´ô¶ ée)ܪqÑPìD…ÿ?ÕOël¹-Zæé”ÅXÅ ½mæ6y#_Ô!—BÁÑÙ7 ;î9ÍVޝ6ÀÀäªd.kåÛ?,nBãšõijßôs­â¼'»x2¶û¹5»Ç=ñœÛbÅ­ÅÆb¼mg wXÈc ‡ Æ[®„,rËnW÷¢ÈW’g2zpïŸJZg“õZº~Ó²l–±Goò¦í‘–”ØÜ\÷²¾YÕ°ºöb8ìV£ÇÓÅßÁTØpéHÀñg=Ì\¦l$‰DW×ñ¢L¾V˜Ì%Ðôt³Ó}WrQµ¢ïlqgO „z¥Ñë©6×Ojk7œwàüŸY^Ž2ɲmk{%ŸÅëÝQüUåC½ÜÊlȲøjiri±ì×q9|Lñ_ÅlbN'5YÌ8ûZŠXPo.}IëÞÞô-gmÄgìë¶•»nV¶]kVÚ÷ Î B -¹#“WÕð™l\KÐÊØÈÝË壧S ^Œõr¤Y ¦Ž™ô¯j»f§¹[ݳ¹L¶¶c¶Œp‹¦jøÛK‡Ö Öhã²”us’h`rŒ_†ü’I÷"¹1 gÈþÀù'a‡fÉdó4e¯âï(ø TÇšßj1¾Q­R†[-e,S’Ir´­ ÖH+dD½2H¨Ê·Â_yfZ±Œ5M>ˆÄ?)™uït‡arì<™«ÑSÒ#.©I¿W¤ˆVÝ9Íx=øÑ~£Kl£Y›Œþ öñn,ªÖº¦¹‘|%åLwš|W¥y^ž/!§¼`áËÅ…ÊÖÉEj¡’Ìð²ümÉâŒÖfŠñ£]3•¤†í$œDøÏ¤íK¨«l[µ'Þü?»šÒÍ‹rÀϯã1òªQÙ‡;¹.Ý–"³Y¸מµpbõ0ø{Æõ¼Eã=CƘì®C=Òq§ ŠËe«ã(ß“ «SÒ‚ÁÄÔ¡Nĵ ™iÉh>êâdž[2ÛšS.s®¯W2@ÒtßNŸDjl°%ÛTU5OÛŠ5ÿF&‚²ë¥•Û‘Ú«mûd$Åeº(üÙOãá£á”‚ Vž5ÿ-Åi`!y‡‚†%{r…*‘¹"9˜ffI{£cXƒ-Õ/µŒÆ€Ë8fp”£I G  ÈJ„¡© ûƒÝ>=n²Ë²³¡FéÜ3!`¶˜)Wdp©–à°Íš #•º@¨ô•ùAÀ­î V*ïÆZ6ß]êʯoÝ÷ã`ΉÏ1J”·Ó»uàÈä/`GÅÂJA 4À,êÞ°[…xŠû¨#NáU£*À+,nÀ,eº¤q™´' ×E!^*_“ù¨aî³°sÑÀG‘@ìÐû?Î8™>A¤œ8…üæäöV!H£ˆÔ+GÙKg`r%+$JUâý÷–3ܼãnÕà£+%Viÿï·Ö  ² NÍ'¹ñ|õv•¸@+þäUiN¯MzrÞ°wrª¥Ë9Ž?oÝGgºõY:™X›1°XªÀRèi:úÒï!<2õÍ‚¬O+uüÌ`9XbV-VNKYU’xø‰B¨ |Bsí‚lj@bOØ*«³OîÃt ‘ZQEâ¼bê”ÝT;lãÇ–ݱçÆ~Õ¿n5ìÁÔ³Tá;û…†R÷O+•—/d­ÃB$¤} X†ë ßµ ÂKȈäAUJ;|ˆGf†@¹ ‡e2AM•to‘ˆÇ›ÃVäq‰ž¤Ú‹ªvZîï·êÐjÏG˯Yc(u(°–éK )¡íÉ{VŸ¤L­É²ýž&=òFZA º¿Cvnæ§ñXä÷ÍHÉ郙[î ±Ì=Vf JÿäÙŠ„@ º!aYQÞ×2!5ÜU¹CE8Lîì6}xbšóNø=Ìã¶Îxò3žœ{Š_«•î%U’E'ø¹ ñÜ$5ÿåÆBžàVôêÁiùm†¬÷qV¨ªÕ°´Þ)æš&IbÄnèa–6£•e®‘HÏMíl$“#ª3ÔFT—n?݃*ªqU’UUè¯q÷‹1ãc+¬}ÃÔMž9a±KíE!ÈOÞ%ûÛÒ‘,:îY(Çff­?™:FiÆÉ^w~&o‰q´¢áZ&öî³° ¹ôµy—_äj|¶?-Æ>:hð™ðV.ž-ÕÓÑ4%©¤jY8š/µ‚¿Eí‹á)r½›ü³*©F!”îdUüˆùDþëèÉv±+€ãÅ,òà¶u¸)‰ê„IJ-ñÛ³|;ʉðñDâãÙc ãÓi,‘ÈŠñŸä YH.J¤Fd’Ú³=yKcâU†AéÉöS³À-œH½¨UgU]œÀ¿&5áóòÁO¼ò=T% Ê wbl;7dâs)I­u‘ÊääBÒKa£š’$&Nmî¡ÂbB€PªÁ m’b^xB¿ÆüòPCϹçç•ñ€a£oyî$b/sï­#†ñ'È(ÌYH`?É$€ycò:üð?~´9%© D`·Áù#ÌÀÊ pãÏfoñàˆxhûž9åXñÁù*O˜~ùçŽ?GŸ^uékvŒ5±X ýÇ~;?ç¯Uk–¿)TƒðO?¨-þã€?Üëg û,O$ƒÙ•Grüü/Ï=ˆ'ç¯^~=j8b²:—_ð>BO÷€9ç’y^/ƒÊüêcˆžPž ~JŸšÈ?ÏÉùàþKÿ¡Ï>ß6öÿú^Åê~œKÿ>¿^ï÷zåVû{q>ùß|öÿïáãwìz•Fà‚zuùQÊ÷?…*xr~ýõ>§æW«0%7$7Ž@$“òCןþL±’ycÂþA•yãŽC£—$äø<¿—´•U‹HÏÔ3v>zŽ¡Ðvà~¸ùùøåAõ6¡$žsûûoŒâ¾Óÿ÷N¥{‚¿ºüu=A<0'¬>ÈÁù'€D®ë(üÙ„€Tþ<žxb݈¾IøçäžAÕh¢Æ;•HŒ}ÂÎ rAŽ}ÃûpªäyÊÂb•Äe@`y ¿‡R¸Aå‡Ç8är=f°ùÛ½þ—\ù¾&íþã#™¤%bá¸"NÈŽC/`Àñú,<ô2Ìâ6›ºF‚C{`ƒò¿ö úÉ'ãÖ|$ŒÊ Rn ã†N>O<€Ý›àþ¾>Dªƒ/À"V œðËðKqú Ûÿ\Ž~gckÿÅ×’œv¿§ïjøØ¯ÚŸÓ€þã•pŠÒ7`€7ðß$œçƒþ8ç“ð,R¯, /¸ ³ŸÀøþ@¼±øõ ÏŸXjÆFr ã 7 þ{œñðãû¹ýúÄpûnîÁ™Û¨“¹ºŽB…#à),8äþÇoש‡ ä³·‚“zs÷ñŽ%wûm¶Ù»öª÷7íˆì³Hcb~Üù7ûrùVn9þÞA!};?ããƒèe¬¿‘ãóíØIׇ ŸÒöuN%ÿ#Ž9øo^X‡âN›¿sÀr?\¯É Èëò¼¹ ú %_éö¼íYÏn#kÔxÉý±÷ß8 .î‚37 žTÈw*Jò¼rOïüŸCDò•uuã ÌPž:° r ˜#ž@?¾ôCØ¿瞤2¯ ¤| ö¼ÁíÇ#C¢„r{3{{1n¿Š¯ºòÌ <Ž«ðÄsßô¨ïQÆwª^þ8>ü%~ÇãIÑX¿ä“ÏëQq˜,aXuð¡ û>8'á‡,û¿uäúÕê£Kʪ8‘S…pÌ=€?°9í×Á<ž@ô ¨ˆW<³‡ìyw,I 7$*ü‘Ïãð p>"áÝÝúVëößÛ‰OÒ¶î~;ï\ ²†>ÉFä»ÿŽ0ÿ=¾Ïìþùùø¯AO+#Ç ²÷~±ÀóÛ¨àŸ‘ñþ8äÿïÖ`*£¼…•ˆVã‰9ü‘ “óÃuƒûÿ>·jêÍî™f„~@`I 9$üv@w ûnÉu[öq{>COùäɹÿßÇcûõ·°…‡`ź „TþØ€xSÉþÑÉ“ÏÉã1ÀÏ%œ:U*?°~bGÉ•“ÏϨ± ªw.ëw}·››yÛ¿ÚæL-^CÚ×Ï5…åGVêÊ ªÄ’>$pÅH úÿËô~Áô8Ü7âPÆPO,*•ˆsʱùärP|žJëØ÷*’½áÃHö¼ÿ‚{|‘Ï­deRªñ[ù‰~Œß’8áOU% úü@$aªoÚ±†œûûàÆIÆ¥¦1{¨§¹á. jpü¢¹!Iùø%‡ÇÁ‹Á<¥YÊþOýŠŒ¦%”°äðy'ã†nþøô¦•UTp (N>y*~An~ò~IoòGëÐ2€G@nSñfWfä·ÊõI^ß—p8¢ .HZÇÔ2ÇëÛ·¶x UÊaº/k}Žåìðv¬¬F±ÈDd¯a ùä·É ñÁbʤŸØ±¨–GtD_™#,Ì#áO xVáƒ+ß'ñŸÐô8E¬_— xÿÃû‚ü/U¯ úýŸŽx(–)ñ#°R ððHý¨'äüW€Y”qé:ƒú]²÷vÏׯBó¿üã46géý¸'DH%V‰Ç|•~rGàIåˆ$p äÑ@VD@…»pXwgûA-ð9çž¼7ryàÃF¿¹`Xv=OcÈü‡Ïör~Y'õÏÁ¬Kòfî*Ç‘Ï+ÏÁäAãŽy=‡¢tÞÕîý¿ßí¿{àñ–wHЖ%Onp¤qÈ^˜“Ç Ô’yP õ¨yRfU,Xã°$ʸüsÀ£’C|ðõ‰º„~ åHoÉHüK|*õàü~¾9ç†õèâ_ma,H –,¿—<±n§”øìA<(àá\N\9ºÆÔ=óFõŽç釳ã€EÐ÷V‹ª†CÊ*·,?. Ÿ¡É<èþ½F~WšC†Å:‡@ù)Ô¸ŒHŒï AHHêÏÁök'å|$Ñ/&í*É K¬±ññÐp8<ðW‚–$ëüúм©R4Ãâûuú”ÅOÎ^Džñ7Ìp@ ƒrÃFf¨Z»V!žV:y'7£e?2«¶ÎÈûÕâ¼Vù¹Å9mAGV]Qj[­švúóëÑ<'_ÞJÓù¹ág?zå+)‡È¸6B>ÚU™e ùVT蔤ݲKuõØ», «|¡&9æ*±?ì?#ö äÇøã‡Ö\~σâ1ö •<3$‚b "ÿÌ|–6ÕdyTöZŸ˜È'HÊËóØ«.åž8%¬Ùv÷ŸžÌI??à€8ýÇ«>,W;ÿò`ïnsþõûc„øk|¯Qéþl±šü°í—p÷1 unÜðW ØqòHêÞ9äžxOÀ¶.I¨*ãã€xž?ùe‡Ï~¿Èã‚ÐZîJæ'“­KŸov…Û8Éì‹îcÙÑ»YàúõÚ6ò\§áš? ]Æ×PaÓŸ4HÎ7±®0k<¬y¾pæ#)?‹»ùk;®ô_Ó#oô¿2yûcÆéÛåŸcçñ–ülIŽÖõlõœ¿š4Üøì¦_WÎî8ë×Ö¯×Κµ*ep:æVîWVÉfqÓdbÝÙW|çM³Ê›†÷¢nÞ?£¡í.7SØ®cð{n/v‚ Âͺ•5¢æI ÁùÞ_^™˜X ìh»Ïúk⾘÷0˜Mc;õ¾Þñ.‘xÜÐõ,5 f½´ãîU£˜Æjqí~@ÇEskÄëu²npÕo¹7/Щ&lÌ+Ä=><ôù“ñ^ùžò^Ýä)¼‹»æ4ì>€oÔÕp:>:ε…Øêìñ涬fµ^­=£Èä)Ö§•ß2‘M™†‰–­IV½™Ý¤ó殊ºÝ Ÿšj|º²*¢ë¨ô§}®™œ³§«_.2é‰—Ö Lb$œ¬p¸Æ]ïˆïWúÆÕ¦ÇÞµ»`³X|Œù=Ã)…Öµ½ocÎgq¾4Ô3Ö5Ùü‡·Fi-|~/T³^|Íy¥Â´õìÓ‚K6jÎqÔüÏ£o{.ͪéù ¶Z},uÍ“!Wy5êåibó8hcÏË tgµ–£©N¤³dR¼’‹1CYõÞúSËãŠÚмÖÔ29}/?ã-òͽw ±Á¶hË?»AŠ©Bü/;ÊlÙe¡‘Æž ¶wYsêiñ—ˆ±ž!Öös~Íüfw56zœ7åGû[M×5O´FLÖ+kIvíûØÈ‹sV…ר…VÎ[SŸ5"k–œzÞ¾‘œ¨X–K2ü··NÇêÓ”Ii²&°::½%ô’“q¬eˆ¹3‡ˆó õQâLðÊMŽÈìRCÂg¶JRɨfRŸ¬æN½°ÿ¤ZJÁ6[Là8ܽ|b³ãl·ð bq(C›ëïµ_cgËl»†CuÄkšF7UË[ÚÛ;ã¼¾‰ŒÜqyLü3ôy‰ñŽíGo±¾\Ìœf7ÎÔS S_Ça±1Õóâxpí¨+ãÁ°)b¬øƒ6+'i>Û9’“»Å¯¡óþ//–šA–êÊ1:,:×aÚè®Á‡! zå.”‰ËP¸¯JÝÖvßÜ7ñÿÖn™¸êØíÓ%‰Ëciçµ?lX-3‹Ìf÷¨²¾RÔÛj§ˆ·Bâˆ"¯ é1¹ŠVš­š5I‘Ñd…ZEñŸÔ6Ë>AØõR•[Ú¶7HÓw<6Î’ØŠÎMö<Žsw’ÇÏo‰³ÉalV° 8ÆZìÖyNàú«ÁjøÈ<ǰ\·«cüi¤™Læ=ñV§>—Çm…zyÖY!µ%™ÙWúH/×S2º»éó鎗Óýë×êîyµî`1š­(r4èT±”³»ÇUcЬi÷W§±Ÿ»keŒvêCvxx×Ðåµ¾*jiÇX½õΣ/Jv\+³Ëºú‘ä:'-)1½0¥ˆuF¨Â¡cnK{W Kë'ÅÙ,Vbîõ-­Î<—~ý¼Ö/%­ ã]¶Î©³ÚÀlR×Z› ŒvEiÅ–ÇPír;·«š‚X'BPöo®ë™M~L‹ØÇj•éïw¼§o=Èc6¿WÖ0:Þo>WRö%·-}‚¾ÉBh$öÇsb{Ë.oFZGô,7Žv]£?w_ÄQó5.±¬1CÌ».3mšfuPð§³8Š-–2¦Äi5+|ÆÀú|½ô#w3ãMçý=±ÁžòÍÜÃK 7…ñî+?‘Úíi8écµS›1ŒÐä½Q`{0¥¬– )K4«O®KŒËQ¹ITŸNO ø{%ãí‹nÝö­¾}ë{ÝðÚ†#cÍÛÆÓÃP«„Ó1°cqXzxœdi^H`öõ Š¢ÞBÙkžâÄý=DZçÐwõÝÆŽûDZ_Øñy6Z¬÷Z™'åÌ.v=_%Z8ÄW1~7¿¸m›¤‡‘^Övy×ù«ÆWF®·Å=/—§¤Í%óIâEµ§ êiéA-¬f·ªä£9’œº=7.¢£Õx¼]ÚgÏ®,vK#¯âaÑ6¬ùQÎkx¬¶B–ß7•4Ù¶¼4^9Ä< œÈ3Úì°Õòu¨™"cfëøÞñõ!£ôß´ýAøÃ»Å|%<­l&.öu§›hÃyOl:¦Æ¶"7µÜ–¿»RÊ`vò@Ö1Ùllæ´oQÚB‹ã¤O6/f1›ÖÁ}|yñNhÐ –›ÅZ´úž:ý»Iœ6k;Ér´MíY<8ëׂôŸé§oÂ÷ƒÿÖcGÈ~Fòw’-ìËFËcrÞHó†sÎ3R£'µöòUÄä²Òëøì„‘™_SÚšé÷ |¼¾&CTÖ”^½9²=qÔŒ‰ %ÝX]Ãj~tÝ0Äã)åbÂÞ£b¿§gº}!M«ëwŽÁj{X‚lVoÇyí«g`½.7'ãýŸTÛ°:¦á£íU †_é¹}VæRÛgˆŽ«RŽx ±Ê ä­_XÊn•|u½åŠš—‹õýç#š×rö2Xýw!²y#\Ð&—j‡^åúúv½ÌXÚ¶ … Ö21ô£VH {ùèïKÝüŸ¶yg2˜;{®±ŒÃìlmz’á/e¨e0×ìm JÌF(²ùè0t±ùOy].B²YOr¿µ}4ëÛV÷syÖvŒŸ‹6ù}KLÆ]ñíVºjMÜq»ÊÙZt ‹-Víìô\þ+%ôr4­KFUj®‡Õþø­Uœ‰·Sž„(£¥FÞªEìľpôÉRœ¡a}EÛHÒQW³Â—…<­°y Õöüy’Çk/…Ÿämé³h›F7!‹\ŽB|‚VÌëû®þí\­|ŵ櫱Yä¨×múÑÒñ­¡Áªk;–~öçºj˜E zžwgoÓv«{.ŽáãXä­ín0MŸ×ìbq°¤µæ½Ù䲑Õûi¤“<]ôïŒÑ³¾KÛ6,ô&×å]jž›´O„ÔuïëC^ÇÉbX¢§©jU(aáϼ–&lÆià9+%½Ù,´c B§ô¹xÉãx¶?1íû6Ä;n¡±xï[³ŽÃÓÇâ(iÒäÍy µä¦× ®õ§bÏ[Ôþ‡éã¨iù]‡jH³RëšMO'áŽ:–j†_5¦%•!¯en*XÃM8»%}†å8˜äLQX¥ :™÷ÆŸM©¡yc9åÛ[žO;•Êa6ýY0Õq4µìeÌ~á³kû<÷ö꘡-¯p׿ÀE_ —±R+qlŃ$“ß›ÓéküNSÓuttþT¤h(%ÜŠLVºí| iòQŒˆNlú}%ã¨é*ë+1îáâÃûª-8Ê_ƒbL]T~a œt<Dß…€“ës1C*Å]Øìdì‰þXöVäÓמtжâ*èñ?uRŒ!#hÓÜ-' ëÛ†eã‘"ÏÜPT«oEÙ†úØô21DœÅRâXá대¦–?q£‘‡²µÄµ§ `)õÔù­ä¯ß8¤6ßkòo…Œd K“ìt¦oôþùá.WeVi«„uFDz¹ˆîGÃÉ[ûÂÿÖ1 õ³2Ê–YÊ$*RÄžê~.8ÏÓùfŒ,´×ñf[…bÂ8ÙyGøb°*—·Ì‰Ì W~}Ö˜˜¦þãÖŠýÑKƒ]àudR `z Ç´ÄE÷ ÿÆò—ª£vôDË67VX\TMñØØÏ׉æÒ¶Ýjï½w‚CÞqGßí„Û‘ÙãRQQ$n’M$c˜`ˆ¤XÙa2…ô3Ë$jÚaŽHpá–VqÓ¬Éûƒ•…øVºªõø^Š}(TXL(€¨R]ôTŠgê^ene+îÍt&Dr¶ùöû/£e:+§H•ϸX»(Ý”2¼Ü*œbxÁ~JËU@,}/ÍÌ–Éÿݵ+WnU1äËÀbÈ«UnêÜ{ˆÝðÕ÷¬+JñT‘Q‰EþxA…Š•Št÷UhI>Ì’n“ö†pìÀz5ïÊéÔUD…‚üÿÚ`†AíFÁ¿–52«þaaI—­Y—£Äø Ùº¼b%°çÞTU#‰CD  ˜äƒ›-üñè#1’NP,²³ ªÃæ7“ÞoÎn〖8_PbP­¨ë =8ªËuÒø¿§ëõ„$]>÷WXñi÷r%lá#Þ^Ê¥#<¤ŸÈP©B¼¬²jŒÝš ËN_nH‚Þ´ŠßWx– §½ª¯G ®d b?¹½Æ«ù;!KìÁ$+ëhú4a±tùEãÞŸ·Ïµí³k·$ƒ¤iÚ´ ÈËèæ>Yã4‘²–1,2»ˆÌN@”Aß”„IÿTdW‚p+ˆ‡¦dÕãcÒ4áv,;dþì[X›ýrÞhÛ?©Œœ'ÆÒibcenb,C+p:Å#€îŒäD’:öšRÕc7 èf¼ïE.®HP Æ…½±ÄaK1XZ2xhå=qÒ†RÜú\Žº÷gt^ê²ò·äY‡’W^½¤¥dP¦1í×þdçÐÂ2J¤? A&5wêTuA²4ˆ;DŽy±d™¹©uD ¢œv{æíoïÁªÀªÝ_í{×ÓîpŽí(OnhŠ©Q#v”’Ê$2(%£ (£Þv+<`äúÞN¼‘Ñ;¼’rxe° CqÊ;#ñï˜éáR²@]‰ô¤BÄŸ=d@WÛ’2XIÑ·Ã?ž4± -Èlx^„—~Ѝ'¸ñÂV%©áYؤMÏý¸\u¬Ý¢™›•>–3»¼`Tó‚Ïo×ý8 çÉV¾J7_¦Ïo<y¤pY"„÷»Æðs#{ªó…_’$PÌv/”®ÂÃ{f¤E³nUšI+H»vùR¥Ç(ßÊŸ®Š8K‘fxˆ†.e^ÄZQ<‰? ^óãvHJ¤«ŒIRõá÷ø‰Ê·¼×z½rµ‚®]U‡pY”23(ê±°n6E!+Ê’÷¨öj|O=ȘQÒc¾ê çuµ¾8”[›íÙ¦†»Õâó³}ø@^>ÚG™:ˆU… û;~*Òƒ'Ù$Ÿ÷B¼Y„ 2.›»C®bïãìâ,d#¹lÚnY"JíN  HÒ²Kf/r6ŽYߪÂÅjÆ ªújƱҲŒÎøÌ ÜH%"@Ò…ëö2_ü.#FRfŒ„:•šAîròFÎ$Rch×âK*ˆ$™ú­I`(cV³ßŒúñÓׇËÔ‚ÅIaJLØß»gžNsÓ—\%šÆ"™«Ã½ãýÉ$`}º¦¾°èi "©IQÇå·$+Üvo³F÷g1+«zvœÄYüÌÙ?hÒŠX! G1D‹ÎîŸ ¬€}Â16¤ûµÀ„óèŒ>ìJ”K)c/Èt蜯ebfšÑZÚ#‹d_[/½¶Tç”,ÒÊý9’fþÕ-ý¹ «óO¡N©¡Ëih,à#TŒ®‡¥ú^>éÞ,Ôæ5u#¬Xáü¡IEVs^(ý¸ ìð+9_oÝ“¨IHugHÁ“© ™cIÑ[ÙȰI²œzrb}õÀm ±HVHq'¬“t,NDpùO<«Á¯ ùÈ/äåGéJ쬑ÆRA%ˆjÁQc@åú:²±XÚG&8H&œÝ¥°DR(|j†Äm\´DÇG½•€ ƒ ²–ëØU…ÇYºÿÕ3+tŒS˜™3|êiå½X.ßl®Öp4Œ­â‘ÆrglyúþÜ2ÂIkû‡”삺̨DmÜlÀHlsöȤÐ~Öx"ÛaqˆÃ²(ÇÔa',ê£ÚRª¾yýp\Ÿ A?>ªÚÀ‡¹fVVïî$†`Ñ…‘ë•N™æ¬µmÕ>ò°õpð1¨À☎½ñõ¿ËLCž8þþßKúp9?'ãñoNŸÕ2›?¤Îí=šÜÞ¸èü6=L¤˜îQ:gÃn8Ê·.9‹©eJÌ‚CHçŽHýüÇÉÿ„#ÛÁÈ  €9ëð ?‘çƒþÈ?¶¸#ŒÀ­ùvo×  Ï`Çýþ?!‚r@`FŒ±²2²ÝxäŽzý|rAR8ðO?ý\ (QÍ{Ó°æþîíö[ã³e´—¶×ãýBüþ¼ÌóûlÉ,`Ž çºÀ8CÇ<¼ù'ƒÇ¡¸`GHXõXìåxä…ç“ñò@$óò¥GCý¤„ {;/fçü’Gþ€ýúð¡\ËñÀý€À Çç‘òÿç¯Z.0YGÔÊÖv>ŸÜ6…Õú_ìööá <œƒöÒ±ƒÑ¸ö˜r H¯ì=xçÿ~„y~F)=ßÐd=O¢[ç©P?`ò9ÿ?—z«r€"¿8ÿÇãçä“ú|÷ÿÐãÑ[cþ–b÷+Ôüõàí<ÏÉãç‘Ïÿ~u[íaï÷ßz< Áà,Ý{3Üñ=º†!›³ü|~þÈàóÁàI‡U)òüqÿ‘ ?ù.¿ü—ù<ð=R±±çºÆ ƒÇJò oÑ'\žbT|z=-GøãýÎ ”$'9I)Ïì€yê8ÿ<žOÏ |zN¥l<ÿlööï¦8"üº»þF2ÔBG#„Ž¿ñ$üž¿Z ËÎDñ»+0-ÇR ~EBž>?ÉàÈaþ}.Õ{Ž¡ÀSû'àäß üþÿù ^Ù‘,Æe&9;Ž>#ŽÝAÿ<ñÇ>œ—V)óú?ãöqİ˶/>Ü #•`ªçÉ~Ÿ-€?»Ž£÷Éÿ×ä ‹»”+’ÏÂõ Ç !ÈùŽ¿,‡ˆÅ÷5”©íÖTùÀçÏ<7éA8=ëã㟎A'ý¾ßÐÚ¬÷[·soonåw¾R]U° ÷B³Ÿïûp„)@>Ý©%W‚|“óÇ=‡$óÇìÿ·¡Ã;©»)– T7*£¯^ÜüI¾xô¤QB©R@‹(?—÷~‡ù`>IããŸßïŸ^輩àw¸ïÏ<XpT×øäqûãÒ-Ö6÷\×߃gw []÷ªû~ßnÖÓ3*xþÏÓe/Ê(çã÷Ø7%x`Ê~Â-ʨç`å'†? †ç€Oïãõè9—µÐŽ€p¤¯ü~W€ …ã¯ëàBƒèÀTʼ08èOXÿ’ÀòxàžOÿ+ôK´jŸ¡ç¶÷fÏÚÛ®%¸|%wÅŸénçúp]¦˜õæp%`P«ÁbÍÈä•à*ŽOÀ$ëÁ¤ƒ àrç’ ÇÀç·¯ƒñÏþþ=,GŸêàŽíÇøò@äòþùä È<0^ä© ‚ýž9'ôyùàsú„ñA[›øÆ?¾^]í÷Cû×ûûU¢?ºéˈ¸P§ð¤qÈì@ŸÙãžIçÐ.çà˜$ ¯ÉUžä~ÝAÿÈ|sÿ¯ŸK’rO·ÿ¿{qðyççõúôp'åØ_h)^OÇ<’þ‰rÀ|žAäð=ʯ²þç·ol\ ¾õ³Þ±“Ïöà/àÒò9 ÏpzqÏù$ù$~‰ýúÑf‘“•Š® !%—“óÏ,@„¥ÚŒö1íYòvÍç‰þoûþœC!RÍÁ™™€‘‚>‘Ç‚c(‘Ua˜Füuð̼€ÌHü‰øøãö?|ñé}UW•à³sÏ úäðÿ¢ >GÇèú¨à¯Qóþ~B>IìG÷r8øþ½/ÌÈoTl¯û_ž'ä±á‚:Áä€)Ï‚?Éù x<ßèp)f ÝHBÜv ä>$žG~ŒÜ^±8ê8ç«O+þGž8ç‘þÿ'Ž=@BFŠ¡¸Œf~¬_×È'²ò9ìxãž>O£ÕÕJØ®ØÆ=³Ÿ9Þ¸÷Çs½û¶WžßP³JÍý°1áyBbyø?µÿ‚y'öxçÐæI¶R®B•{@ùÿê‡ìýòIô£Q]ž9ùQÀ$üÈåÿåJ’±#©çàr ÏÏ‘ÈüO#ããÐê+§göwí¿ö;ýóñë¥êÜ£«ùøç•ÿ~”p9$sò>~ÁV?Ð?=~{ȼ|ÿsûŽ?÷è „f7bO^€þ\…HàHø'òÿÇ?Ðî}³ïúÝ›ý¸›ðHÉÃw–%•‚ðß¡ñòlùüþ¹´³{žÒÆYÔ)‘‡ÏRWãàr~†øøf'ƒÏ•nJ „Vçž?®§àþGÖxfíØ)còˆŸÚŽ?àÿ“ñóñé«3~ÿ}ûçýóĺñ÷.Ï¿½p“ü‹Ô¤ä±ÿ<*yÿï‘É$G €r®]ŒrDDC07Ÿ†øù¿ùß?ÒŒ¼{n£ƒÀ<*©øýÅ<Ïÿ,ÿìúH‹§¸z9‡¯-ÛÜã·è¿Á|~'äüŸñè–ŠÙUŒ{zíž'…çÜ^@C#’ ñð{ÿ ?ßÔgå&áñÝI!r2ðü©!n¨©=žy ±‚7ë¬3ýÁÁÌÔ1bNÃÇŽ:Ÿ×ÇcÏÈ'‘ÿˆøõyMTaqŹ+ýFBÅÑŸñ õè]Kt- ÉøKý•¤ç_#Òsš ®Ì*béÏ·kÏéÆ~sÿk«æŠÛþxoÞ¿ÏŸó¦ÃD8‘ Ê™ˆ÷#”Eò}vBÂvµgàu,>>9•Éb[çäüþ#àß®4ýoHÀ6¦•š.žJñ»3%—ÈX+ýÚõH™# ,üVTý¼e\óë³—›6Oë™çùçàô‘øøÿßèþÁãõÏ«~.Ÿ÷ùÛÿ»vüû¿~)øoþÐ÷Õ›úßoׂü?,**ÛG<~<‘ÏÇ*>~ß’}cpOöT0õ^ÇŽ9<~ÿe~>~~}dU@ì\÷!I ~<ðüC>?Àùõ—žÜ/p‚?@Ï<ÿž8×7˜í¿Ѭø?͵Úh Žoy6¸™ÌpBÒé9Åi¤—ÿãíÙŸ€QU<^ôÔ àO9†…𿕸<§DÏrU‡r ŸØ?³ÈøçÞ³êʦfŽ‘ÀÌßoU:PYcÅÿÓ»ßþgŽh}H’ø8±Ué7œþ­ÌEQTêÃÍ)ðÉî±°’FýjöŽ”ÞåyElôƒ„R$ ÈŠâRö~«õÊ;pL÷á›­©JÖ$ú¬ŸFR5¯$ŒîŸ7ý[DUP³8­õQ楈râ¼0¸¨ð{rËî_YŒx÷ÌyL€2`Ûq§%‘¦ãrÞý;ד —·ÇÔ­g'n}K #köïF–•¤ŽÈXÀCîùhC’å Éò:Þ¢Î0êÏšO®øÈðyØKS›æX‚œÔ VÊK'dúæñeŠ"XËQiË<¥[¤q”øˆw.Ê~ñ”“a×ÝÇ$¥d S, öZ®¤I p2YŠ’‘twšÇNºu1Ée¸cœ*š;úßÁløì"êþ5Îíûvk+åìDšÞ¥·êùœ%+Áê[Ó’ƒu÷«bîàÎnÆË…ÉCZ+Xë±K†’Š cÁ?PXÏ<Ë™ÇUÑ6Mþ+©nÜN~Ö*yóÚ^ñjålVR7ÄË4xÛ/˜¡5,†g•ã–JÙhíIIß§Ïrš³Œ#«lªQ¤A*Ì4m¿ëÅråuáR…d%˜Õ©x½ÓÅg{Ò×¥%0°G2 â‰T¹")— p UAk„¯ÕWÑif–E~+±˜Ë…S•IT#p̪G^ï'ñá¬ûi#Iï¨õÎÍ_ëË9}«&Ù/ ]Èà1žÊy+¬`3H²ô85o:st»°Û²ëvŽg[×qëŠÖëÖk9 ½L›ÅfŠÚI'õ¹ã «ÉÚ·14,IClÙ°º> d\Þ òÒm™Ì æ Ž„“6zžµe2U0±ÈïXfåŠ 3J7ÈBtùþNrŒ]^™õô†ä´ö¼5H•·\Ÿ1z,#Ô±J °íH6ãŽ-ÝXÙ}Þ#²ÅÃHð4±Jx‘)=± ?%«)iKse¶Ã“I,{U‚ÆïÇ*XHäüQ£‰Ã·@~µëYaÖÌžî)v,µ¿oúŒ‹[ß¶5éD’Ä\È—bÿ¤‘ÜQÏëK[ñ¶g5®ìøƒw=ŠØ6[ 5­“YÖla5-¡NEÆ®Nd‹oØZêÛ«GLG&})ËfåÊÒ<)"¬¿YxÛ» L^ ÅûMìðg<¥nöòØZØíƒÉ5|/²ù¯¯®i[-F¦WOÔöÇ#)r2x󀎫En;qÒ|C’-–·UDe—¤Æÿ|g¾8?ƒæH -±¶÷齯‹¢Ö§í jr‰ZI8ý£(VUæ&xÚHPºšÐÇÄÑÈòv@B8Ø™$hãg<-`Ÿß?¶E‘ ü¡ñ“%]doÜ#ÔYà#e|±á?ùK?‡Æ`r~BÐ5mÂÞ…¯~93”"»PU‘Óî"¨é*ÏB´¬òã‹ ÷^r¾á˜{©>ã±£eÔ8÷?Ÿg«i¸÷¤‹©Ž䄬/ õÑÓ”ztõ"½3‰+n‘ªûûݼ•–`3„¢ %LM¬•aÜý/îãhÖÅyDï!F"•O¶¾â0²‰z„°ý£P!™zúXÀ"Šhû¿Šw A…cW+$=¥,+ל +N Ýö¡‘@0‡ZÆèõs9¬]KG¤ËrAŠ­jäÅ¥n>éLmhÉïÇa2/hJ·Ï¥l5Ý9u±Øün6Äë¾îØšæ‘BJÒCÉ–xdA)™ˆ»Ã{²OÓ•åÏâ3Ô )séd-zRûÐ8¯±šWly#¦Ìiޤb‘FÒ@ãÎýñÇŠè³Û ˆâ(ì KH>HJÏÚ8Õÿ+æÝÆuž9ZÜJj^"15'BˆÔþQ`õ£Ä«0->ÇcŒÐÓVpÒMnª¡”-À†7vÞÛšyĦ_v$ üž÷IO¶Y„¥–)¤zû’(2^f…БFÉ$’i\Q£–@ëÀti„lñ×CÝ—ŠïDð¥ïDTT¿'ýbjž$ò|þ=Øu¨-énÓÊc¶ü$ûËÔ5Û;+V¯¦$O•¥¯}•f«&rõ¸®Lýµldµ™™ø?­+ –¡W`ð6Ó¨`· |M,{Ý«_¹[­yÎÖ×CŹ›ŠqŒùFÚñ¹ü2«OZ†imd ÉI j%ñL“§ÖŒdB@Kó>S®íJvÃŇ)ÌW_IIÔ\éÆ+ÞõeqzVä‚Vx«1.÷VHÒ2¡“à‘£›ž(K"¬—¿ìÌT} :ò·Fàq$jX%,­FaÁí*@Žç@¹X·_òø®žMú“H±âJZw²~QÉy—¼ç°U©giêÆŽ½ xòß“²yLãß­i%÷°”¤†’ù6GÛŽÈö{z‰/ýqjr嵜v±­Ç•©ä K °éö®î˜:»=Ü–Ù§Ã\l†‰Z½‰ÕAdÄåö™Ö1y•qx‰±®¶ÞÉs¼¦Œ˜ÏR$±è§½'~öXZ-p#Ês”‘M’SÓTdÍU-÷§g‹Íac™V"Ü>Ó!eC)‘Ohý°Î²±‚a•ŠÓ†Šy¼p|X˜EØA â8=±Ü¯1‡`’Dxnµ¬;H”ä-‰-E-+^Ì*×7±Ÿ\3ëø‹Sù YÅb7¾WYÃâµ®Û†ÖtÜ4·4œîïþ£¾Z©3L¼óÓ¯cbÍܬժÓEG’pôŸë_bf{Zñ6Å•ÑfÈøÇ”ÜäÙ°õ#Äç<Ý…Õíé5Æ**ÖfÌ»gvZزÄVàŒâš¦5׳5Jõ䦪”uéT,2L[{bÌð߃æb—(u)Æè6ï‹ØmÍ'er îÓÃA#à??Æÿß7üM˜ª Z ¡©«ÙQJ8hÝCžš9B0_{ªËL~¤òÅ~vZÓëžÐ}Xïú߉ü{çßSÔÆ É+Ó±ºÍ]Ž-o¯ï5ò[4ùlþÙ¾]Æ^ «dpØš8¼*Û¥f”ùÛ5k^’±±÷1ØŸ$y²Þ‹ªø[/€ñìûÎÁç_$ê>-ÔuZ;N6‚ÖØwù3ÉT'»°²Xù±•±Þ5ÌÒ±£‡ÈמY#6!©Zß,“¹1!ÎQ”Qa4Œ%Oizj³Ýá­Q¨Å%&1®¨þk{‘óX§·¥‡y#bbxIv-"ûeã,¥ᢄ¶¤Ý€ˆg_F#ˆÊŽ% YS±vTà…NK3ª2Êð²õj¬·doy ú¢Ù/®ýKWK¿sO­[´œ] ýkÛæ®ã†ËÙÙ«ê–¨jZx©=ݲ®½“±÷2öfשS¦XÕd"‰¹}}kz3 ûŽW ‹³fñãlò&\L¿µ ‡)«ZØñPØ£mîìym— š‡XÒ"T¹?ÙÇ1–ÇV¿V/Gø—%L~htHŒ½N )½ ‘{4c0å5ì½7(ïbaÚ«z{Vüt¼]B½v’XÉv™lFñ”ù¼RIÁuV Á1"LŠ«SŽ0Ý_ÑŸ¾”¢Š7w‚Ì╼l‘7_nH£,ʯüU~jØc9QêŽæ~®­µÈ*ë^Ïå5íŽæÍ«i{¶WiÄchæ<Œñ¥ÿ%âõìŽ(¦½Ž×òÔh U݆;ËŠÌ´F†:HûZ[âO _Üüão*í´*`ní> Öü²cê{·icS#¦UÜ2â›: !¯Mä¹?ÊÀY"3M5ˆä–C§ÌòÚÒ™§&LBKÒ‚y^æ6;Ùx]N_WHõ„zÃZ;V-*þœKdç€ûmÕ™Øu‰ßÛ‰ÚBßsRHý³4–À‚eŽ´¡½k%©Gº&¥8bÝVhcGp¼²ÈU¤Š±‹ñûÖr°bí3,,Á˜ŠM€úÊ—=–Ó±¹oìí%mÆè9ɶ¥,ˆ­Id‘e±/&H»öîŽöT­iX¢ ·b0aºLrc ƒ#-I×>ª¶³n‹XÕ|±m6.ùaÔpPýá±ÓlzÞŽÔŽé²QKt¤û;ê™|V;VÁß=v Å÷ÅÜÊc1½¶­úצOôû­yOÉu5}›aøGbÚ–\þÆø¥Ùü£yWi›U€ÐËår÷­d6,‚êÚÝl|‘ã/»àìd¨Sмì'ñ.Nú:Þ„$HŠGb£[«fÂVG-ò\Àúbu7¼9CMã.+Ž©‹Ö}غՑDr 7Ô©à èÒ`GË4Kd$täâKNÂeô"]T‹³÷ª²@‹$œ!,$‚3'1ºÈ×ÝÁ_Uõ3k=¿cõÚÞ'ÍG¤[Ù5Ý2"]Ø1 ÕÙwM¶ý®Ñ:Y¢òߥc)©–º¹’µøù1YP .ìÞ~Ê`<—×±þ:»œÐõ-ÃFÑ|—ä¶W¥oRܼ‰†«›×*á5s±.ÝŒ¯…½Ž±žËË‘ÅI_ï£Çã©^’¬òüW)ò¾g̨èÚC›"*ã^kŠ gR:]'RuWQa€¾öG¦x³ï~WRÞÜ­ÖFNZâe H–”æ5²ªÐÒ€%àÏ/(SÑI`{"£ó"q)™ñ%œÞß[©Öê!¡Ÿ^ƽo3ã»0³›¾FûdBA‰É`u„©bµªÓä«Ó5äy.k•Ò ÊUB3*t2ûäï\4y]Y¨DX©X»kÍ ~0nñy+Xš°¬S:¨°L°óî(Gf2K/¶ ÷—µyª^·kàum9öW휆¿ƒHGËD‚•e”H jK'Oã+/ÍòOÖêhYLþ.Ï)ÕÆ§‘jø—DÙöÿ#côüåºÇãÍWËYX2¦1.ŸƒÁj;“X°Õòö#Ù1õëW§-|Œ–ëJžú‘lÙ(UÓ4”ƒø÷ZòkwËçêA&}ÂÖZ”:¬88)Ë6NüY,=øoe"¹Ê‘ä鸆tRs•ÔŸD5.rü¥JÑ*.Ø;®p›q%ËkCMœ¢FÝêÀ¨x*ì6ý«‹P&=d+Šíꤱ¡éÈèñ7°÷#0×·'R¶{ââççÑÜP_­)WƒÓ³{0Ž}È‚£7dŒ3•\¤¸ë "_1°)踔F²v,¨;€^c 2(c4‚2:{ÑÆOºðG]~æ¯6Áõ0øÖ_ô ýÛ´èdÚ¶FYÉN±˜ê¦jñ¥ˆ$‘£dåG7ãt»d™¦p1¨hiüÆi($º2m,›4ÛŸz¾Ž—ÍÔ Ë¤Eº½«ïm>ÕFüC°Å*–gnC$Ѻž´X+¼¬½¤X™ÈKϼ–LoUMW/ë~òÊâÙYÊ€ñ‰ Mû˜0/¹ ‚nSV1Rg ÏÊú°ØÍ«N½kF¶ —Üä­IÚ… ²Ó±^·Jöc¬àû‰*­ÀËìÆ³¸^c1§‘+׃g¹>½°}žµhVQž”ƑđÇ¥ÉnaTA'1Úþ?Tès’ÕÕù:šÒX2%$ÅPЂ³³Ú¯‹µ¹cOGæGTÔ:ˆ 8ê ýÖÿ\e‹_Ãò\*R®ª®©ãC$`¡ã†ä±3ŽÄ‘ÈøÖ™Ó£EÜ›2'¦!‹¯Ðýxé|.OÌÔ,}m Þê×µ~Õ\8g~í0¸d“Ýì쌬z¸w준£ûyùRy ˜Ë"·x*PޝÇÈ>Ù°~$?\ÿ‘¡•]ù,C*§‘Ë‚ÿãü r[¨ÿ#ÐÑû]Èc×ŨêO÷Ò)›ÿ¶žx>¸UXÛ3ŒYú×Ïn;9+=ê¸5™#ŒVbÊ&‚IaË?n@ýò>xãžxäv¶¬ð¸r¼DéÔxüd ÷<€ß%ÇïÑ&1'À=”žT¿ƒ¿?µŽxçýþ=eI?›!?$vGüÏ·ï÷Áä<|ñé:=ïlÖ1X?nôû›¿í‚Ú$k7Êòz”f ÿÈž¿õÏoßÁ €Vyä1:{2q3p?*ý߯ÄÉýƒ2 ܑ¢±ÜñØüG<öýóúø€å¡r\i>Tp¼ ãåy¸ûA-þ C".÷“è×éºcÛ~"‚výïéáló_ØÂX‘ŸÇþ#«?\“ûÿ2! y'¨ã‚s+:O ‚0ÝaêDRëÉ’Á*£ôT7û||zôA“³4EI€ö~¹`@åÓ‘ðIoóñ×ÐE¹bœÉ–äò –SÈøýû$‚OëÑ«\œã7Y1ûåËÄÙûÞsþ~ÜK’3ìHx+Ô¡Bÿl;sÈçû[üu<žG ŽÀÿŸ…¨àð~òý“ú$þXýî;¨eqþyêß©žA œÁJŽ~õ°`Ýþ#ƒÇRßàƒËrù Ä“þýòþw8³~ ß°Ûƒ"Ü ?5åçç¯çbŸsËxý?*À‚ãÑÂ[(ëØuˆþ”e~OÏ=ŠuëÏsÏrãcÓ†$€¾Aù ÉçŸÑíû$ÿ®}  Oçù(QÀr@P~>OÁn9äÀÿß>˜~_N+¯?\cÛîð(wÚÏ~þ;ý;ñ²ö‰¢™b3¢÷„e! ŸÑ'çôïƒFÙOÍkÊÜð ŽÃ,ýT€Iõoß$IU#຅üy ñóÇ8$óÿ¯[ô^¬¤©bÁ@¾ôxäñÇ^9ðOíddW¼;}L·¶w…EYàÎßçíÀë‘v`ƳôêÅAh‹/G*AàƒÏ<x ð>¡Þ?¶ç•ˆV$·{(áGìCžì~ǤîÀ±ÄÙIRGãÈ+ñÇ=IsÇçäþý ™“àð½[ŸÉþxn~A?¢¢z"ùÛüÿ2~'Ö—éö»»*ýïƯ7kÍ,L‘ªº@fV= `ÍÔÜ+ø± Ï£@Ž&㯸Ñÿ,#Û‘Õˆüˆÿ'©äò~= Á™xAËp)Õ¸à ÿKAÀ'÷·Âñî[€ÅÔ·‡#«|$òA Ç<üð~} E /6ÞãÛ†û~ÇGê¼ç«&ýþÏRä‘Ä3ÌO!•BtŒ(çà–㟒$rTöõºå¹X'²Ý„A€ #‡<ž~GÀøùn8ô‘8P­ÕË '‘À?ØóÏëŽ8õý¥½iܰ,O ÜåxaÏ$¨ä1çäòåþÇÒt÷©}¾¢µïo¾÷fãÏùúß<’ïR¡jÈÊH%‹ðíðXþ`þGÁãýý±'Ü€«œüÃpAcò9ìKîrO‘æHòÆx!Aç‘Áìxä‚~Açäüñë ¦ ~«ñÉ$öù?‹$ðU¾@äñǯNP†z¶¥h÷´7óYñ·Œ„DˆDÀ" g Wß'ŽAä‚Oì|F#³Ò4Q ä¢Àd,W•V%{#ç¹àƒÇÿ$=,†R‰ñÿs’X‘ðyäGìƒñð9ç[0ëòY[±àð@n€2‚@ý–…çäGÀ”@[Ê.ÎþûÛ¾x†÷ì•õïöàѶHì!ž=¤Ž0?g…ìËØ‚è0ÿrOÉÊÚ%x1Jê~KDƒ’@–!Ûý‚‘Éà/$ŽJw‚°ãà9#’#ƒú=öGëý‡¡âSÛ¸!•åI9·Ç#‚ä’$阱ògÎÿøíÀÉÜËãcµg/éß9Æ“Ï$Ê@†AÁã÷XØgxãûÇ<€ €ºì}½¾›÷ïÁMÜS‹Ù±­¨>»ÖÛ ”‰$ŽEbY»(>ÛqÉãö@ò$pIãÑÔ±ÒSø>OAýÝ?ùpÈ‚9ý†#GcùId?“sòߢ‘È<©ã’G­XtKp U$Ž¡K?€AŽ øëÏìz‹m׌~†?ØàŽ*¨ÆÆÎ-k^ߥph_RüBŸZ½ÂG>Ô£ýŠå~!¿Ü/ÁŠ’ãüú #ÁˆCòvüQÇqþîÃǃÏ‘–UR •nÀ©ü~~Iãäÿ“ò 'Ïú€BS’×Çgqæø ¾C`«Cuòä;ëÊ€?†Â!’@˜‚9äž óû?¾=FVwtFe†%¸fŽx^@?<•,GÏÃ}nÅJŠÃûžuýð8$ñÀ'“Àh*·PnC¯? Tþ$0$óÇ?<|þý0Q'4Õ[~?·ûûñ3a¶=ö¯ï÷ú׬¼÷öù$(ì °*~@Ÿð;Ÿøõ© ü!n½¹ã± râäOÇïåI>µX¯Uèª -ÔþÏö§—íÔrô¸x$ÇbO,­Àü%Wä7_€OÏRyõ¨ê üØ7<3üIþàƒ‘ò?Ër8ãƒÈç×3ÜEÀ¾pSxO‡<¢¥:°÷TèùÕhÁ_È÷¨è;ÿ…SëÞ½ç¹<ç UEðÿ“Ø3Æ&‰hÙÖwx¤R’§–Õ–@Y!¸õïYµ™rI½ÿÌž>ÿn#}‰K?ÒÇÄ7¶î±íýùwôa`'«ˆØËöþpú¹ $(>­<Ý ˆIN±Î’Gì÷÷ÒXÚÜiØŒú}d¾ž¼w“ñKÂVàË¡2²Ú»*-×\•kÍ›‹bþ¡åR…ée¢ŠÓG0–¤ê‹q̆EfGÑßµ[Á-V‘¢ó¯Ö F@IJ̟WoŽ@In;ÎAí'KPƘÕW£ õgy%HÄ‹Ù@‰EU,T`IëÚT´Êérõ@f—“ïþ§ ò<·\#%åÈZa$UØ!Ǿ8óœìçwš"ôôó:’ S(É©`ß/±õ+¾£ô«ã½_aŸmŽþÓØlÏäÃ-Œƒã"®·|µªê:¦õ5lN&,|2˜/=Z5!û ÁlÎ ¬aùãï i.̾oQŽìWßJÕtG–Õ‡°®iù 9-zT{¿{jr.ä¸àQPÏ©´ÑÇ€0žhÐ×÷Ø:²37þã´­P¿ÝÕ³ÖÄ®õ߀ Ò#ò#˜)ë,…œ« ~H¡à¤5–N£âZ ³/'D9M ) 4a&5Ú;-×°õÏK˜Öž%>²NntŸ•´Q sUM¯~+ö飯úÍ­¶ö1³lÛŽ•ñîMnd%7+¹g÷¯èøÕH”Ç hÌ= ²{‹Že¥iÙЛúXñޝ³àv øúÕªøóÉ{pÌ`«¼ãµ%š›n±br¹),ÏR|jPÍNøçXZÙBñ³Iî$];”&XÙ¡ˆ+DQ'ϲü²U$Ã*»¨>•(¢‰m0€F[¢»ÉÆÂÄ^Ø~++Õ­R_hdª)µ'% ³ø*E”´#-IK¯Ô/ªT»©opóÜá®1#« ¢‚£IÛ5]óŽÔU~Ø>–|m°dnæS!°ÐÍæ¥ËôçñÓbß%´ÒÌÙYó4rß¡pc#µ”[~÷•rÛ—-ý‹¥iS…龜|WG[´˜‹I6§äy|¯ˆ«%Ö0AµÊí£Ã–åœ^z5ô=Û=Rï?;VbËÆ^tê'yäà¨VU‡FîÒ¸+ $v@ X  Kø¬ð“Xñóè3:H³í¼5eŒFÀÁ”ÅÑ¥üU›ù"«“ LþÍõut+IÉèÅSB %e û3[Qß#<Ƽ؎¤èÈ\h£µ»c/ž^;ñ¦¿ã-Nñθ×Û[Ò0Ôµtd¤ŠÆF®žÎ/fH•>äÖ¦±W… bl…TŽ^K“éÔ±?ÜJQ:"í·cÈøþÖg%êg%³QØ*¾•ZاŠIrÒ–`cF–f Åãùß<Ï^nc„­^¾‘„¬[Š ;€VPªX¯òꥂûg†•ã+bézi ¶iÙ¨ÀDé$>ÅRäñŠã4½rµ¶Jɲó›ÞÛß¾3WňÁáíç´XÚ¤Õ±=2ˆeNaz~ó載]8h ¿Ê¤™Ê·Ìÿ)m‰z8'.б²pB;ºÎT°Uê=»©„³¬sIùU›µÄr]ôºQÓœY‘èsÞP PÚ’Á÷ϤŸ6Z •¸º©)Û¾ØñŽ*fùô›âÝ÷vÙ6LÓl5²;^B,öbŽ6åõ&ÎÓÕL\—¾jI2ɪ¤t¦§éN ÜXšñg.)~¼c“|ek¸‹¤k˜ïãq¦;ò¬qUðÆGkÌøØv´òW·ºìLÎPK›¯0­a#0g)Ô5Ù@þªª¡ã¯-É£½¹9aÈæ¬ÜÌä£zÅ)Z¿‘Cs# Yà`;(šGà™#í( s©Wi+4zE$ªdyNZ$¥_L”©“Ó¼žš\¹¥£#¸1­*‹©$Š,¢1¥(.”±»°ûFÛƒô}÷bÀnY‡ËG•ÁÓàŠ•åŽ¦B¥l§õjMm%SïÃʃ=K‹íŠò3S—ÜL}›é/Å;Nk9´OS1‰Ïìû^Ù³l—q3S{YgÞíá¯l¸'ûú¶–®-Àc­%x=Œ†:À¸xkß5œd–™¦ Ç)â¿H€Q±)¤‚>  vŒ}Ðÿ¨>· +IÙ@“¹–2KJ;/ŸîPî¬_' q•áà×>_Fl¥="läÊL¢ªÐ^Õ~’½ª÷x²Ú sé¬WMJy³töïW<½ôå•7OeãÛ3z†¿âÄò´Y*úÜÿk•Ëcüâü!¡JëÅ £^ºN £ç#HM^‡YYd¾|?C-á«çpØLv±â58­wkÄ`5|®bîzV+Iw_b‹!W'бÚ¶¨ä°–«åm×25&±Mž,ŒM•ÒUGò—Óf+y×>Ÿ4Ík9Òp ó¡ähìâç–¶Á¹¤øŸËÞ;‚Žâ‡J™˜ò>D×íZ½j7­6.†VµHdL›‘h—íʆI /ü}»qÙÏ=J7n:ʪȌzIxsZ^zÒ"ˆé<}â’)"öä.9U+Êä±Y"2My§" r†¡";ºUº)!…uÆ0“$ R7c¼AW/ªîyiö ‡YËXÉQ»Øär¶²6ªC[¾Büx¹ãå½Y  I^a†eï! À{/'Àx•OXšAȬäI+5v+è¯&4YŠ(¸ ¢„ …Ã’«øªÆîLÖÕ ôå RÁêl‡%ÊôËù¹%HrH7óœïuœp’æuú€ÕÜôâšß9«½¶ÅøÎÄZóŒM¸êë[µý× ¢Ûˆ—`¿§\ñüŒYÇ2×/دY%¶@–ۙŸK<ðþÆÚõ[ •ÌÞÕÆ·†Ó5|NvÜù*¸-s ¬ OˆH¤p$­%ã‚ÊÄÆCÚxlY†TÅJñ×èT‰g@VVY;7 _ÜN:ÿ3Ó‹ªÏ$䣡8@ °y.ìãU}Ƀ§·îN«$ƒò¹·W‰‰_‘§ÜtȵÒ1*Žšö¯ÿ0ÖÔN™Ov)t÷2ãÇÑo~9óâß¡ÔÆ_Ù¥ònÏ5¯n¯(xÿý)˜ÌRmlj|€ÞDÔ¶ÉW 6aƒ5j®¶iáÚ™­$²Ö›¬r.WèsÂ9LaÂ_ˆ£v¦n¦u_2–2{7õÝšÎév\½ë5ì_ï6ßvÖÂÑc¥«ÞKJ%'°À—,Ä0·C$ÀBϤmØK!AÍhæo·– Ép4ÊŒ¹ì½NʬS„êÊS‰ {R£KزJ„Ç K;wǹXcÖså!2ÑŠ-ÉÍ“*Ý·Ûc8º|Ö³êuXÊ51ÁÒVh(PÙÁç&·‡’Ɖ{˜ÅÜÄË4ÍfH³ÙœŽ~ìíz?æŠéËäí^¯Í _lܲÁù®=Èn$pähê¿ÍÒ‚èˆtAÚ©Ç{qž:Ú°©CRQ·ªã*V‚ÚnýšïÛˆ'#ôáã]‹ý?íò´rnÕ|ŠÚ1óAkfÄnèÜ/k2¬Ñ2äôÝo„µFZÒ¦B³Ü[¢dB$MĺW”:´ôÅ­kTÔ™¥¸Ùµ€Ò¡³[^V–oþ8’¿Ý[Y²vžÌYu _£=d¿ñ”eˆ¤GÜ{ò°¬t±!ˆNˆË=™#ŽÅ1 u•KÜWîC«Hd³+«}P‰ áO›+·Z5hYïÄù:0Ô=(„£½&~˜£ÇsÔÔœº’cÕêk/«+'.h£€=$@½$_pÆÁ\¼ †coqIŠy£2pûruoŒ1ô]΄³V“"ÍZs$a¢„c«¤³¢³,¢8å,%yº¢ÈaþoÔ2’ÎÈ"íÙa,%ZFþD#ñ‹±îl ,b$>^g°Œ0gÊUŸ¹dìæQɘDL̼Ç4‚?â†ëU5DAÓŸTóZSæ4¾Y¨é½QYž”@Ö·÷òUº:ÓÔê"MF=*PYûÕn牃¡¾%ÊWÙb–ÄrÚ¯’ejÍ÷†gû¨«Ä¹Ž9k+3ÃðýQ­!៖_“&ivÛW’6‰ñØ¡ E"O ¨žï´ñrªÌ£·§¸¼ÏUçÔgr&g‹–û…"8ûI#ØU‰GVeìÅXchÕ_ÜL‘0˜—ÒŒr2…‹Ÿm2ðX>8òPŸ·È[e~â¤ÄÖ†5®A ¥ÊOKTÕž±ª‘a˜‡¥éiY;;cÍ5ÀÔ׋FdFd®îÓÌ+ålûØЉ ÌóX@OBß"1ÁçäA˜ÊÚûLbîÖÔ€íÄaàL^ÐO}Ó@ûQ‹8Io¬±Ê>ÑB„þQË7 "rÖM?{‡Œ¼ì$B Ü=cTŒôâ7âI)0 NF\‹iî×ú>Ó?½jqÕÓ ˆLÿ|¤öEOu£þ2U=×=âöÔOÌ24èí=1J[ù‘ªÇØþÞ*Ñ-I—‰GU@wŽsV‰öáŸY™zH#”2Å ‰V8ÌÁ“”H’_n(nIí¥\xVi#íouºÛ^Â9뮓ܸAù2:‰¹ä8aÈb@<U@#»ÅŒ’™ÑÕ™OY‚ÅÜqÜ£}o`ŸhˆÔ³sÁOŸ•žÈ?$z󤢲óîƒ*1˜ã=˜üsØr€ü’yì8%€!¹OjYTÆW—UÚú ·<Ž‡Ž ¸qº.ïm³ÇX¡ñEø;[^ß|}ø3 H¤ŒK*žÎŠÇ‚Èy Løäž#ÑJ& áXtP«ðYBÿŽÃä|sÉôùõ˜$+ÀÄžB'ÿ%b¿·žŸ‚{7<ñÇþ‡i¸$“È Ê|†#ü.¡O‘Áà(Ü?îxõ¬ô¡X^N2«Oùn ØprãçƒÈeꥻ'R@ƒðÇ“É ñÇï€8ããÑ[¼5y*PŸl9Rà‚WÄ9ù'Ð-ª¶ëk6¤±ÙÎ?~Û¹°j‹7Ãîm†¼‚W‘U‚8ä Ä”àŽ?¤÷åäŽßç‚ÚGž%X{lÌyà†äòH<~ù ÿç=„~¬‹!=©'ÇH*OÁAù#õèðêóà QÂÄß¶e?ÿ¢HqóÏþ ŸO&¨/&)|•_kÛÏ¿zúS±ö¯§ûð/ôø@r¨%ø!XÁ?³Çøÿuã•ô£+~I ü±— ÍÁ'ð¼rþýNõÚ¤–à°àsú_yB@$õüˆ?à@"å—ñëÇ'‚{pOû[€?d€yø'Ýjæw£•]©ÆÂ¶c{áoÂ;;ö~œ'š•ʧñ‘Ðþ=»(%¿Ç?!Ù7ÀýOÏ¢‡»hê啉N߯ ¯È±<xçýùô¿#(1u!#ã×Àà7? 9? óñé‚ûÑòBº¬:þD(ᘞyp8$~€à—ƒ¾\³úd÷n¶ÎüvmÃ^Ögé_¹Uß–ó®¤p®Ç«3s'n8,€’xøàŽ8ÿ'J-N»@~Wâ2…¸ÿr¤|òW’Ç<“ÁH–Ô=[òdvnçöß®Á[‡‚#¯? G¥Vp–‘{/ñÿ‰ÿ~Wÿd8$ò>Jöõ%$fšÉuXmßõ®8†[ßw=¶?OÕà±¥aÙHì>K±àÉþãÏè|ÈýýúðÇÕnýòX«‚¬·Ë$GÇ>Œ(^ zþGŸØàž?G‘Ï<·o€Oµ,…‡ówù?|ò9‡ÿpÃÿ¿ž\\»81¹íÛïÃVÞûU/¾>æ=óÂd‘C…U%OV_Å»ŽŒ ÄÜ«ÜqÇpHëÉŽ#³)ø@9äòO‚:¬@ä€ê¿°A‡ÿ?çÓ6‘Ëïî\CÙsyw¼ð6nñu“J¼_‹­¯Ç”«”äžCryàðzqþö:¯ûüñϯ58KW°SÁf ? žÇÀŽ$ñÁõ¼RrÈÈ@o† Áþà8äò9àÇŽGGWGÁù* =@ÿð>?ù""‘]§v±Œöï·éÄý?S‚gT˱áxãûýÿŸñÏÏï襊Ñ#Áˆ °CÈbX×üñÁ? ú‘ð¯ÝäT’W¨ìÅGè)b§ãö>8ããýý´ÊÜ„êGAØ?<¤•/aÈþ Oùz1Ênì­?ùööóÁÅ_éî¿oï~ÜP.ý» â@8QÂW’êýÿóÉôi*ÕaƒòUERHåxå¸ä|u|)ý¾}R~ XžX±=@ƬO'ÿ•úô¥ )ŠD}Ê/<1ü“ެeär ý9?‰2$^õg}Ë3ÜÚ¿±“ a»íž«€ÌÊä0#û‰,Ÿ?ã“úÿ? ñÇþýnµ ^;…ä1b¼sû$ŸÇOöG$z4 kÇVê ðGÿœ£’z–<€9¯€>°½;1Y·Ÿ‘Ï<|ò¤7+ûýú£énë+Šªq_oïïÃX—~«Øª*¨}þ—Û„ëqG·@ÁT·<1=@ø^À|'<±ÿ">xøähŸØ…ƒ¨àucÀ<ÂÊÄpJŸ9? èÅÐëÓ‚3!䟖·,_Ü8ž ýz/(Øÿ…PO<ƒÇöŽàðÈá¿Á!CÀ:{™ÝÜîûã?^Üüý¼þç+×I`”°~ÀðJñþ9€>xäGÏïçô"ÔªAå9U,I'…b~He<ð¿÷ÀïóëZŒžÀ³r¥¹ÜžT€ÝAçýqÇ£%£rT÷ÿÚò;qÁ<ðAÿ'Ò )šê1KxÆ|Wz®Ø5»¿û¿øp¡\±`„AìŒ@W‚$súùär~š¤^Û•‡÷|òx ÀäñÀà·Ç$ú::2̼ ~<G?¾Ü럟ALPGÏ'·Éù yëÏ·þ‡#ö8?? ’Y7kkÏþÇžüB³yÜÜÃÓ{ñá.¼*!ᜠy >>A#ã‘ðIŸèøNg  ©P@óVJÀpGïÿôúØÁ_Ÿˆ¾xƒ çýÔÏ §ý‡ùà|ÿ“$†ãòCԪÒØêx ÿž@äüÏ­K§P¯Ëÿ¯øà{ð9ãóñǤÞÏ8q“Á—¾Û_ÞUÿ›dÍÛß·ä§[«?´Ê@bfùãáÿsòÏëäñé5#öí0*±÷ƒÜ ·•nŠÇž7Ïp ù®¹^¬×€;r[ž  Àù?ãOï¨ùô‹c;’ý¶áG$?A ðHãöÃãüqêÈ·›h(±öÛÂ5XÏŽœÆ±]ÄßÒf÷,Ú·Â7Àá‰+î𿮤<?´ÿžÇäñýÝyÿúßç’À/^¬•åY I'Žçü€ìú>Qy<Ž <ñÕþO_¤'÷ÉùáyýäÿåÀàƒÉ Áe€G_È0bÏqÈSøú—“«ÛÞÌ%÷÷wú_±Û®ñšÿÁsöUY‚$ò+ÁüGÿó»~ÇëäzŒ¼¢ààqüŽY³1´hò{lÝcbY¶L‡û™ˆ¯P•ÖÑL—×°,OÀnxáç÷Ô!üA$|üŽ~Añê1ò“ÉýŠ¡ohecïøE!.°LR'ŒƒïnH®BÇ2Å$³°ûX•örYæt1W¨fž÷Iî—Yß8ÍÎíµi-óù£xûÿ~9›õÃa+}ÜGÐzìݦÝ’Àº‰ì/ž2°‡^ä@ ž>ŸãsøÅòð³µÛozØÅÿbªøe¼¡tÿ6gbª0­û~¯k/‚§¢ñúb‰cÏÐÿ¸øöyŸ€=ñ´²!i%•bP©R½d,?]#Ž ?çЭ×ùð¿þA@,KX¿Ï<üH%‡Ï¬(#à…* èfïð:“ÏãÈùpÀ<’O®oŒmfÙÅQÛ9Ü6?Jx‰üïV|æ˜-¢†Çˆ<^w­yÒ 4œâJ`OŸr`…ž4»¸PϽëÞv†ó=yì-*óxɰÏ~_u£©ÚVm%³*D²Hð×Fi6rñ‰ÉûÕ:€ÊÓ±_KÖÿ·ÕY=µ¶êÞ5xiºñæ·ã—ßGÑ´Þ»]Ñßê ë ]•¢}Yy®IßûHHÙØÙy«E=†ž0b@?ãÿªyVÿWêYÙmP¯äúþÊP±Žµ_7„Þ®å¡ÆRÆfpò¨·F £É ú,Ñ28×3^C’PþeöZsK¶jlc"jã¶œ%ÙF6±qPG^ëÊ”«²ÊÏO´¡ÒEÈKŽfàþ‹ü§5û˰büZp¹_i:n~ª­3…Éd43Ÿ&If®·ŽÃѦ˜L¥L–[ý3/.Vƽ£­fjwYCÒÇÑ6n:›ô >?Õnå|“õEž¥•×ðÕñ—¨é^iÔ)áu-PÏF¼3OÆ]‚ÌùM|?ô¶½J¬s«ƒl9߈#'’DÇCÖ20`S5½ˆ)^x­åy1?õPõ4zLí“©¬;fñOA(guLÎ&ÞK ”Ãì8š‘ØYÁe©e â y£X£fÂÇ*LŽ€M"YYÛ¬¡kÞ›˜¿ é9ø—1‚Å_ÙëwÅkY|öž~S-‹š¿ôÁyæšGš·`•ĉ^f†zŒîZ!xÁ;?ŽpþRü~ ~Çâq•éa³?Õ*é~?‹M9 ‚ÖÆâ0ÐZÉk/K–²”ú›Öld[\ôO¡ß[Ѽƒ‹¿_Ƕìνôõ‹Ò3ç\×2>#Ú¼—°å§Ç奮٠´6¼ á—b´r[ÆÎ2†I"…±æy×OBg-RÔŒÙÂKèéü¸Ä†Tù¯üžT–©-sÑ(‘HÚu(‰EÜ‘È;Uñy·ß/á¼q²à56Õ÷ Ÿ=œÓöÏ V£¥bªÍ[TÓoCC?‘¼$uF0Ï:1¢¼Mlv³ G´ï>x§|Çä¶ VzÛ Xå-ƒ®-ó‘@QÒOÞlrT»9@Ÿ¸ë;¦+—Ä[„Þ¾ÁW4‘ŒÌxksËR;™ ?¸.ARäð8fhRK¯ ÍO²Å'úÔþ‹¼¨Ëž3á¼1¾®ÿ.¿vÒmØÛ _„›·åv%Öü[Hûv“Žƒ «¯­+X´þ¯–.ÄõÊ@'ϧ/§íÛÀù›ï²¸}§´b°Ù {CÜ—sÆíXû÷ê¶¿aÿ5ÑkcšŒÚõ0Ê0™9òt’7†Ð”ÝË󼿦¤ ^VZpŸ¦B/Ë“T²¾õJ^MøM]WONL5ÉÊ/§¨óQ0—Ž«Ù{ðê½õ/¢S“'muO ÞÐpû¤ž?ËùK­YÊiÐmõ³[ÈAÓ÷²ñØœèl&c`©Zl%K1´rΉ|nš,3æ±qnšq¹ªYŠ Šv\<§4·¥Hï4·W[qV¸´Ñ‰å™*LQÌõÃWñŸÔ¯ñ™hùŸ`4Ù|›²í/){väÛ°Znß¹ÛÝö-zM"F«» Y/YÁPÈV¥Jò>RÅignÞ¨·>•<óWRò^Ís§îse"¡®^Öõx«3õöoª?nxìŒZÅ\es(õª¯¼†Jíê42™Ê2@O´´ËŸç´ü´õ¶uN£[ŒzVR²âY¥Z-9^RRCZ¤ˆNå<Æ–ÏKL©¿©Ž:¡¸ùÇÆzf§‘Þoìxüž£†Ãl[W?‚ÈÒÊVÆÑÖ”Oúk&ynÁ5•Há‚6–»«Á$a±^·äV«jÒmØ “ŧ\Þ ÅVÊÓ|ͽ^®ÎÒÖiáVf½ÜЩ=¤¬#2ÅeZËqW³% ß¾‹ü…䯗²ÒÕñ®¤þDÁy/ GJÀÔŽÞ¯­ZØ´ÌV³„ÉPHêCZKY 8³w;2WŒ=k @{hÒ°YO¤ÿ>å÷lFÇ"øÚLmŒÐVÂÍ2¸qà ž#¹‡¹ |aÈçrU¶<–S=K+6J ¹<$Ñànc•¡3J'Ï|D”““ꌘô20‚ÉÉvä‹ç;pÑå¹YF5¯Wª/õÅÓ½Úø¾š/”¼{½àôŒ¾#bÄ­ é8ÿ]ײ9˜ýšm{fÆWËÕžÎæ\Œž¥¨¤½Bg†BÏ{@¿© ËsP.ÈD¡•¤<)•BFå=ƬÁæ€%Ñüá—×;|-ô“äÏí~2ÈHš:Á«a4*^jµùr_×eÔô Zu›Ô1ÙŠv.`v7µVSs•­@cY1òã{‚磑׳ØD¢1í$q `AtùdXøhBÊÑÈ‘IÙ šOrÔY•So)ÌkêFn¾Ê”duÔtÅêbÚ ûøËÌièÆQù3볪Už†Ì]c{~œuf=«ž;¢*Åòʱ²¼¸äaã·Ã^‹€`9ué˜J¬äT¯¬Dò7³7òJÑÅDâb?̱DËÝ"‰ž¼¼Ìƒ†Ü†v°Ryx)Éä%.ò‹|Jàò­ùÖ2}?|l–o#0Ž!²•PÅdfØb~ 4F}¶oú°ÆGaé¹F<¶´¢£9$ŠßMd7Û±¾Ôpœ¼c-](±$2ª¤)„Û4fótV8‘—Äú‘éÐd{F²D’ ?(…ûEð¸@À… Ë¿<;ðE>&Ö~ýY™Ÿ‘gù:•¢È¼’±Êñ2¯h›¼H¾Ûõ&CVÉþ ÀÈ©U#ô¯?<äÜry¿[µ[ `¼€§çž~AòAàr=yI|C^ÊÖ™‘ÌÚ´ØÇ·’¾¹;Ñäô‹](ufê ¥›¦1œþÝØ¸ø›T@‹Î@bdCk´qH‡™ •ê‹2r“Ä_© ØvcÔ ÿ*µ~üF¹Ô‡ì­d÷=‰ö˜™cðe€,N¨RTun¨aÖ\—-Ð/àGÈàýÃñþÏÈãÐ!d0ÊÀ´gõÏ!—· Ûû¾>Ï#ãôAäœ÷0Éè×Ôq¹-ýÎý­;<Ãh7¥<Æ»ò¹úxñü]«¢ôâûxärö‰öÁ9*´|‘üòOŽA*Õ]J'õT†hU>ç•Ï:ÙørUvT °bΔcäü¯¨êU“ŽGÏåþ8ùŸƒþ=e©Xb¤*)aÈBxQðx 9'ñ<+ñÊ“Áçå?ˆsÿys%»Ûý7ÏûØò¼º_É‚ï¶ø7ͦ›·‡ü«ÕÁ˜ï:-ÔÙá²xÁžY¿•$4/ñ<“èâMA‰ õ÷=µx–U˜…VqÈ&A#YjÿÛ÷áŽÚ¹”º™R:—üÖ& †VCÀ$|ñÔž9äž¼ßñë&&BÅ"3!Ô9*I Žþ'Ÿ’}OÇëb?>gÒI’ƒ«ÏÞ»{pŸ†ÑÏòbzz^•+ôÛôÇkø£S.×"[³H²AÅБÁ“•á]¸üÐu*¿/ëQâíh¯C÷ì¨ð…ezöˆuä¯R¥%˜ŠáíøçÔ b˜+;²Ç( ÁãŸþI Ÿ‘Øpx¶ö90 ø,â ŽÏä8?ûýN|C˜#_?RV”²¬ý*›¾áy|&ŒcéõaÝ¢‹¼ßŽÝÚ¾#ñf¢€„\Š~2€#´Kqé° ²DÜ„p;I1±XÉôñN¨òFU2?Œ©/_»!T*u@Š£ðXÈgƒ‚V³; GR”ã‚ÓÇÞ‰”’WûÛ¡à’Çü?lxããXûK…˜u€€9^¾~H1ý|rxƒúôŸÄ5­~|ÿüS_ç¯|[~E«Ò‹[,zÞÛÞÿQ¨­¼S©§º¦ƒ¬ŠWÿXv êÁŽX"º‡ L 1*¥£cGÅÚ©þ@¹Ì<¨n†¼A%àû`€HYQü2'1Æ õ$ÇNÿ*[Û•~yá‡`ä,Pøã…'÷óÆ¢½”^z(ç¹b\ò~Iä•·ãƒñþIn©.Y£ç˶:»=9¿Þší¾8-ËݺQ—·BO/öÚ¯éÿÊÍ[ªtŠÙzy,“ƒÀH?8ì/Å„ÿÊ@“ŸÎ0§hüU¨´¾ù†ûLí,ÚáfWeãÞÛá§öúÆÓp=äDŒ¤e{eäŽê@RW„켪 –ÿbÏìúßÙ±?fE‰Y…ä‚¿ À>Xó¸¸ä’^|÷0…êêBúûQfÿøÍ;p§+£d¡¥±ˆ¹Ú”¼ý¼Þ¨ê_ê]½Å‡%1Oã[žÜH@ü@O㸖%PÞÌßšw$AÿÊ­5ÄGؾÀ@Ð)äF•dÉ'~¿üÙ¿’^w—–¼õõ&Šw€ ÚO`ß’~ ¤òy<øíÿ^û't)dRËØ·¾´'è)?ÿ¿þ½!ÏkV9‰4f¯k¾Ýóeo—~á´wùQËš†*÷;Þ ïÛ¼GKâí3·&,”øó#_oË¢{MÙý±òÊAç¨U]c.¢OZj/k!/XÒi.žÎ#'–n ©ÂNXƒ?Q#?n}I)^ò•O–võ"A ™ŒÅYøá”|RT#ÊŸƒÀÿ$þ¸ô2Õ´#<ƒ0,£’Źø ÿ¯Ÿöã€=×Ö¼ÇËÜeÓ]o‘Ø6¿löñÀü>›ÿÉ…ÿö…Ùß³ÛˆûþWê+Ú×ÐK‘–9/ü§ùܰ@GÜuU±ÇÌT«FA>¢=ßC°ÉÆÃ2SZØû'¾æÔÕUåc#…%ý³ÛÙn°{0æ`G«2ª*S¿·1^¤¡€SÀSóÀýIÿåñêºyE;m2™¢ ˜ìRŽã’J×N±…R¦qï•ÇÛIÌ’1‹ð;¾Ìjês!=YÎ?.tJJ*Ç5w‚ûbèñÆNwKJºÇN1‘8ä2)öúf÷¼ñ0’)’9:•e$wfbJ§DUíü¨Ä<¾AC'·íƒé{ ]3geY’b+3ûn¥„IqCN{ò±Áê·áUGµýàz@²Àª­sq,ÉÓï"©µ#ù"Uë︛‘-% îKØz÷S´u‚9:c*ƒ©ÄfÊÜSà ¸dùh9¿ù¡%õÛÖkH¶™NssŽù qýÏ~Vuz^£Ë˜«‹rï8Ï ä¯Y[©BJû1*,²˜Ù}çh#žéÚáºeŽÄ¼[1Ô‘yŸñÖ¯ÄЂ×ÝÇfµ_nN ™Qç‰xxÔ!éî³r¨èÄHã˜2¥_¯úg^G ³Ah§U˜I÷ÕäŽü±Á'`Ýò^T*zÉʱSÆ»®#¯ËºÛ2óÇuÎc ƒˆÌÀ¶G>à,rs:G1ÇSJuxNPÎLŽÆ.÷|jПÈOTd”²ÓP¶-{àìá¼d8œ×Èú¢ºÇ·;Êé÷¯"s#("ñû&.Íút`Ä8Пó/Y`¥šÓ$±|!‚@X+Ǻߌe‡ä߈à=@óeÂûbmkÑNÓAíìóLé+We…†EÖ8ÜOf¹!h‡­Ÿ;IGþ‚î1‘ã´ÜË×ùNf)(uçßoÆ9Tö¥ÖAϬ‡Ã4èþ^¢PÿÅ‚ï–Ãlovž8¹çµÝX;Wò©=œ´å>½¶©Å|‹§¬ˆŠ¶ãbì®Z9xŒ–“»±™H݇L½‚G¬#ê$+õÈòB0¼ËÇ2{lIì¯ =äN¡Âýzüúƒ£ÌÃ0FƾñÍ^xbMøÏdI™LV1ïÃŒVH»É76äXòÑñÔk:ç¼…Ž;„)è#å%{,z[V=çn`=áÚF>V¦B¿› Ö"67³aTSkÄüv 5t÷7Ò’mÞÐÇj³·ˆòF­pùãÝ,Í ŒŸÆÀ39üÃ9PHô ò^®àI¿!בåíñÊçJs(UìZÌ«À¡XòJ}£þšÁuˆ§¶Í˜äRŽÍ_€Ö:$µ•Ì*%_n%æ+¤d#Q™†4Wmc[^¤,p˜n…HÚ^]–v5µ;¤ž9JðËY›€|;A Òµ¾´KT*Ó¾iÍmVñ{Zÿâi¯“E«ôÖz­ÅŽÝï‰Àù7]BW­ÙB,Š({,¢ ¥ZÉ,ÈÁ e?›‰!ÈŒ Àòf±'²]$•Hÿéä^©ÀþƒrØ‚®`9çÔj²À€ë˜0Ï™Y ž7{ÿÜ3Ê©9޴Ф%•‹ˆ*“ï@;³zÒL¼LR ÖpAäk²5{DF’Æ?‹C8rAÿPÄ(a鿆i?ü‰•‡ùñ­Ìþ[ï±±ÙÁÁ9ùÅO™óòÑíuŸ¯«ôš[Éš²,lW$•Z'HdPU¥xÓÜ~OäÌZ5,-Õyìéä½e[Ü+u?2Ž^)©ÿÈ1'‘í0Q oˆ ÿåêþª{I"kúï¹)göÖ±1Ç®ì¶.g¬¬'’5X§ Þ[(O­ãË*ëšøGà"Šö‡*VæiØÈ’Õćù”ºÌÀzI|7FŠÒÔº«ùÀ#ÓnØð§ç¦Fþn›˜Ýè¨]ZvÇéÚ¸œ›Ê:Ã(-ôíÑŒmÕšCƒòÓpÌ£†xœH†Éz´ròßYH ‹thˆ1þêT– V^~y =BQæT—ý5¯2¬±Î¿ÁeQ[í™’Il|G3¡*ìŒáªÅÄj‡Ñ%Ï"I _ÐuÈÚHý€V¬¥˜W•fˆ)kƒ ’BƒÖ±Ú.ôcð½+¯“©ŸÿN?P)ß7úöÌ>!"Q©Àí6™sú}³ây(kr³—Ë)*×<³¸ ‘/Èç¿!=Å&Aú'ÖÉ:»îÇ}[Ú÷ 22ª”nEwV?öÙ”9#€ã‘ò!ÏÂî"M^+"LÌ&©0UŽN}Òvî²ÌK2豈ˆ:Öqëoê§Ûv}o] »JÓ+{•Õ¡‰Ô}Á !‰Š$Œl\Dá¬>‹ð½!“3ÿçGÓgå*éá©ýZ°¿&’øæO¯‹qž&Ñä­qãw޾IS»G'zîª0 ˆÀ²•d? Ÿ°‹ï#aëCäÍa ÒÉÒB‹^ÏÕèÄ4ˆœÏ‚Lñ«{=аõ E•‘¡èšþ¸OXãŒý´ÝRzA÷œ™=¦äÂÍÍ’KEuŠ€=iýNx‰kúËäŠÊ´±£Ç õ™‡K$R;{o4ƒ½) XBÂçÐ>£VéJ¿§ùàöóÝÎüGžÔb^¬ [­²xŽÛýjlÿ™:Ü%œÇy™^`Èã± ¨­êÄ$ØŸ‹!ù·ÿššÛp7¹‘#;3$ ”Oîà=º;3£ŸPpϪˆ¡l#CìL 'R¦ Þn¬†ÇJýÕd¬¼ˆT ÄHê6lô$HS¯ˆÕ&ìÍFR {ñ¹Iù&B»§òº…jeB°ôïÂôêå¡5\¿;côÿ±Ž!ñ ZZ5}´_nÝ_Sßõ8š[Éú»²…ŽðPŒZGC.ɺ‘I"4bcüi0ö]»èEòž® öKê}À–"X£‚¬z) DR¯@îñíðÞ¡…ÉI"˜×­܈Súq‘¤xùe,ZcL°r†ÿ¥‘¾ZäúÛú¼±2´˜ ` ÄŒ¬9âhbD{¸ü‹%'ݲŪ»{aG¥þ£ðgç<Á}ŒVŸ×¥ç‚s³ø¥ßäË|Q¾Z3ûßyCYåžJÙ"EaÂíRVnnBÂz™>8!NÃç×—Êé2jL­‘âã³½àŠ¥v’g@%·'äz‡nfh„x=i¤Šx§bqì¬$HÌ—™L—d- Ì{Þµ±ž•#1Iƒ×: ëî¢ÉüKae« Ä‹í¿,¡9™$(d³r† Ѫù¼ù‚ÂËÚý‚Ì8Û‚sº‘õ‘)ô¥Ô­]mš¯¿¼ÊžRÖÙZÙ!è„C¯?°QƒuehÀö¿&V0Ìõä½u‘+dÝ¢2”VP™W²uìÀ¯¼¥‘ˆŽ¼£¬Å…0ÙØù„³â0 U$rÍCŽ#î Xäêˆüö•âíÉ H(?&rôÁ:áõÎÓıª¶5S©K Ì ¿ÌþÊõˆ+f¼Ÿu7i£*IðÍ ÎŒð¸uËØ¼k¹Žûyá^{QæAºÉ¥wdodG×z÷âjO(kd–²a?‰ØHŠª#‘?¼ÆÎ}¹9‰Žý‡` }h¾U×G4²qŒÌ]Pª”G ,*ûjÊÎÄ”Eef=Cq6vReã ®J¬$vU¥ÝŠZ””ÈZDuAíÊ iþc@Œ¼ú ýÕT”aõÕ+ítEÇ+ûrEÁÿ+2(’61"ÉÌKÙÒÒû[Ðþ NƒK× PUºx«^öðvuHØ”:[Ý ŒŠìÿÊ⸘“ð1¾?&Ç·UŠK7^È+ŸoÞ1—à0!¾Ï­—ʸ:µKÊ®õU²”˜v?0ÈD,ëø¼­Â“Ï>¡Isö Äx]r4–Voéïת7r‘DdY^üö®íïFyD"!èS²™ƒË6+uq)ì¶ 1Ê9ÉF‹ôªz¢óu°zhü'Mšm¢¹…´éêÇNãyvµâ?ÕuBÏ“T)¾sìÝÞÅq0Ÿ(kѩ㓈³À„H§ä.HÇuˆ”ö“Ï¿”5Îß•,˜`9‘:ªðìoÈ$ÆT“acv¯î}D‹µNüóŠÃöЦ6¸,?mD`p…\r@cQÊÈ=Î=þ¢¿,ÀEÀ‡"©gld'²F&JÝ{ŸÅVG+ M+»Ãsµpœ?ð­-þD¼g˜Úêÿ£ûwks üCVŠÕŽ(¯“{lþm¯ÎC/ù_^dRhå‰=±höD=þCLoÏIÇÌ$“Ç­•pD+.>ó _޲GÑJ·Â«3ÚXù!â6S¥\ê O…Š<^ 0°•€œTôùÔ'?”`’î¿"“ŽjuQò`ç³q%<0t$.¹-"ðÅý Vhþ^Ø‹.¯Ê? Ð1òšÅ_1îmZySϵ+Á9ýJ·R;•ü£Û%«¬wÞR>[×çŠRÉ‘Š%T{eIŽPKvʤnýzzÂy_ áqyU£ïÙá6à›[°jWr¤wGR…*7å7ƒë°– ýͲ:¶§ù=xfi_•ìG*ÞìýÄø±?Æq#/‘ê3êʵ4QWŽ:ŸéyC¥_æÊî õt¯>Þ<ðêH» |ƒÂòQÐóÁ$’O?~Múõ¯V'€ÁIp>:…?!~:öçç÷ú?ûõ†YO”¤üXòü×$|sûǯ1à±e%ÛŸ’>z‚9 OÈ<ÇçžoKɒ𳿟óëÄaæöëáO1‘{ ‰üŽ}›²§c74}«n¿" 1Ùp;$Nçå€õïCyŠkÄ~W¯ü Øñ+Ÿ}Ùk©—R˧ó´d2@)QØ ,>@ãÞ’P%,ࢱgæÎiûûg·õµc ‘wj³˜gö{ûÝmÊO¤Èµo*ÕŽG–*ŸTSµßò.±ÅgÍ{ÏlFŠ¢=é§t‡³NÖÃZçí¬r+Ï“~«ü‹ªê­§\Z9<ŽÇ¦}Hmž6à f;ºXïeômz–kaÌXÊÔ³bÌGc³—Ëâ¡£9{R«bQgžÎ}.18_2¢Ã/JÿUŸQëaÉY y3:öJHX¿½bYgíËÃ[BÔ+ˆb§úHŸé3JØ+dñûÐl®6„QÕtÁ¯å.a¬cü{æ+šækg×2õÞcLvcYÇ.·”©rHªU‰Úä^å–…}/cWáü„yyËMùê˜ÖB9q‘,1¾æÇ½yhéó¼ã­»ÖŸI(Š~ÆZÜØ; û§˜îxâ/`fÔs›þõå{ÙF1Í‚H[A§ªWIã¤*½×o­y÷$>ž6¯:ïú¬˜ïô”Û;ØÖðAjÆK‡Ú†¿“Ó´PýÎCܯ2 äHñS¼Hä²/¦æÁõƒ‚Õ¢ËRÙôL¦¹¶av]+“×ö}›Y×°¸Ìo’4Í«wÔv\†É’ÊWÅI‰Ïct‹ý6µ™svvšPѯK¤ÆONý×Á2 òŸ…´ÌÍœgüÆ]‚J™ «!w/[Ù6 »ú”­Õ­R¶ñL¸Jí» VK7-½MŠG¾3ŽÎ#`Ÿcò¡òn')yüÏ_}‰<ŸjèñækÅ–0ß×_‡\“S6ϵëX¤“R°Ô6ŒNC·ØM’ևœN:=££s›gr$ Z×K€Ê )r/\µFÝ]DŒ ×MC¦Ë Ê¥ÚUwâ)—ëUdÌær–êÍ­ø¾–{éøã6_¶­”Î\‹Ë‰±>c‘Ç›u~Ê?þ MYÊOtS«MZ•¹,¢—.©õÕ¡í$ºþ«–Ìe6 ¯‡ñZ~½‰Éársì)çÑ´m+3Ö½%Ms*Û¸s–Âeç©’Ö?®c2XëÕÌO¨>޼)^¨Ù¥¸å±k.“-Ì>snÌf°ù—ñåܵíAó°]ív÷ô¯ëY Q°¿­FD\Ãä.D—YÂúhÐð# g¼²×Ö6¯í:u=·È™Œím0øo:Û'Žu½f›CV˜Ôp¹3Öõ+ñ^Ø7¼RÔÂì;&B¶# <|ŸŒ‹üÍ/]YÌb `ÇË…qóøm~IÙù}(tõÆ–Õ´»•}2pŵõ ä­ÃcÎêZ_—×ô?!æ²ceµVûQÞ|}˜5lë—W;$úör´b6ÌP’kIv(%Š'Ck´½®¶÷¤ê{®>»T«´ë˜­† s(•ª‹Ô[pKÔaj8³ÁÄcìV<€ë:²¬±ý?Ñ66 £Ç™Œžä,íMºšf§Íܳ€Wß$FÎ]ÈáÞ´§!6*?ræ³R½œmZÖ_úuÙÞ.9³TÂC¤k:Þ©ƒ‰#TÀâ°”D¨Ñ¼µq©0¼†¿U†Iî™n¨½*Ûµ,vL•ï§–Ñç#­?Ÿ"QèĬ¦VlÍÒS{¿^3ëêró"è’‰Õ˜SaAVáÆC;pö 0ŒÈ—(}Åg8h‰@ŒÍ# ¥ŠÉ“ŒòÁIP†iR²{ÄQ8n{NµÆK*H\¬ Ú“~nÖ¦k$‰abDΦdwâÉ™c S¼€›/\†‚^¨öØ“¤hÝ¥ˆ^6™%Þ‘Cúˆq Œ©Ôt191…ºO½>º‹¶Û÷,)ܺ۾üfêõl´ßÖÑ~ßNUå§ë+áJѳüð€"H”¸/7å^cÚÇXˆ>”‚) òFT·veî±—^Íî¹ßÀ‹õiI #ÿu_wª¸à[-ayêõ®¯Y#<#º+ÄÆI¸ù%iBÃh r?Ï ä ŽÜ£) ð/ “úcÀ‰ýžÇ’xõÿÍÌ_ºJÕ´Êæ%P°?ºÒÈÀ$m̽O À zŽ W*H>·ÿ›xv=[ :!ø~¸w.‹#;|Ç*”báÜéOÈ™³Ùñãû³Âþ/—ÛæFТûµ²ïÿŽ«ˆä ÜÊý].œž|8‚yç’O¥LwyabÈÀÇ,œÉÃ@·?Ç<Žì|Q„~Q×X¢.Ą̊­îWCí ,\‡FÓ&%,…• oX‡ÊøxÇKƒ³w(aPRBý$‰Á“©uoÉ€,dB²¡hÛ°º|—78S¡.¡ßº¾í7úÝvàǙеNžõb8Åí_è_øþ,yaÉ=ø‘¿\ƒÇ=~~Xóþ@'ü ш%I?öqûòMÔAå}Cã˸¤ix¯`…2'°|ª…¸ ·ñŽC*ÉÂ?%‡¬/—±ª¥þÚÈ%a~« (˜êÅ€!ùWU^ÜŽNª?‡s•"U¿o÷þßnâù|^¤KîÿŸn%çn»rã–ïðJ>y“Àär@äò8>CFÅÉ·V‘[« KsÀ 8äóû €Äð pH—ÊxBxz·ŒŒÉ#¤qE/¹È<“!£‡žÌIî:§Å[~ÃÜ7éG:Àõ ¬±ZX¤TJµÂÌðÅÃ*‰dînJLõå%«×gá¼¶¶–·Tô¦F:r¡YLo–Œ4÷8çsšúZº2!¨Ië%lg±ƒ*Û[cÃ:N¢`žç#ÞV>ßRxB̓@˜b¯*†¤lô¦Á _ø7VÄíecs$¸(~²¹ö±Ì!¸(Aøˆ€ööʪ˜rò*×J&SíÍuy *!d•J’ÍS©6Ri¡œx‹VÓ·+Å[Ýþ‹ÛÜ•¥r¤ZR쪇™€æI[ªOýÐøõÖæ!)é ©iØØâpq#Ÿïšæè¡%’Ý'širŠÏë»|y:ð#.¡X¿põa“Û–i˜r±¨˜õyЪâç`±£G!då™â³xËþKÔ,xçÇW´/lú^¹“–$Œ7–ö“¸Ü©F¼þ?ñþF„u6˜×´'¿F¾O‡ª¯1GU=+K"J FÀ«·`ñ*˜:FHV”Wb•VAìKL{Y/rÌq^5?¦ïêÞgòoœn`ôí‹gò Ü6Kg/£a,å´ XÊF”²ê›nI2ùìõ ÖgÂÿG•gã´rB¤z§œÐæäiC•ÔŒ%ó=si¨‘ºéª}X¬dúño+«ËA›­˜0:bX’¸ŠUVïz;ð±ýgø °g5¬¶WrÁÏ®`7íž;û¶ü.mÄø²,T›ó蹌ž.µm–Ö¬s”ÖÃãÞGÍÂmSǼÐÑãgèŸ]~6ò›µ iZ_”¬RÞtì–Ó‡òfcIÎàõÙ«ãݽ³Z5,>¿:!’¦ßìw)J“ß6PÂoÿ nÖϳl¹?0I‘¿±TóÝI³¶¼]…“~¿S͸UÄÞMïÈ’æäØ7éôvh×\‹"õ08L*5L&…¼žG!5 Æ}5Å‚ò‡„¼¥„ÞîÔ·âɌμÚÎ6Ö;ÈZq®ƒ?ÜE{XÈÉ:C<‚»å!¿aL;3œúÅäÆ:ÐÓŒ!©®›ÕÓd0÷º7Åú¿ÃúYiËRRa&ä¡JËRÓÈ6ª $ùÏ>xÒ|Íã?ã|QãÍ“\òžÓ W!'‘lÑÛbÑðU*Þß7¬¾®˜·lv#YžåZtä’qWbÈã±ÞêGi•ùËÏ~jÓ<á¡xWÂ^-м…Ý<}¸yÝï"n9]"µ::žIh݆£†ÊU±nÒ~oîÉ XùºÉ xÃIêEÅÛÎQyÂÞYìåkø²·‹ðºì˜Øš,%1žÈgsyšyV”¼–6WµR†Z´µÑ&Çb©ÁVv«yÃéÏiò—’´_.h>rÙ<¼éf_AŽþµ¥j;³æµ¼õá~Ö.H7(îbñ,¼¨Z©ŽûØù{ˆ@ërüë _—)ÊN°Â$¢J:VYXφêŠÝ¡£©ËuiŒ@Òz¤’IjTwÚÁŒg'?lÿŠ>]nèµµÍGÂú[ç°ÛÄËýCyZoã5]ëÇÛTš†oU§”£‰ÊcóÕ-ÝQ‘K1¶9Ó&Q}©IÔ¿â¥åMÄ;Þ£¥ã­Gàü'‘4­çJÝ­lºÝ䦭œÚW@§œ—UeŽþ/ í‚ÉÂ%»°BÒVÆÑ{‚(ÜÜ_Bõ[ú&sÁßP;ï„67[ÙuüžÕ_NÒ<³oWwMö»cÏ\Þ)äqØëÙüÄŸÉ+«Å&—Jÿq5•ý«è“¿áüÅSÊžMØ|³ysQñîæ÷6 ªgµ=Ãű^ÿKy7GUlv*žÇFåÈmŒU:¸üUT¨kN&§jÂzŧË|o®M„£TIBІòóÙ½ÍõO_ដL×W\nqm-*1´&;¼Ft>°>ªs9O¥Œ~¥àïX§õYã {Ðß1åmž•ÚC9âÍgÈ™ú¹JÐêv Š®LæF–ºÓØY²TkV9d­vY+BÝÍÄkzÇkòß³ãÏiÓEç&ø‚Þ÷¿oÛ/Ãzúxé–³l[n7\ÈÞÆç¶»%áÄÅk-G¹^\’#)õm0LøLߤ̷ú¯'bÏÒ^‘OFÂCý´wJ4|ˆÐ†C-V­¾øyg§Š­–¼”ÅÃs*òØ¡ìÂ8Æ}gôÙó™}LyKÆÛnwÈ>JÞ¯ÞÇbqý#)_ÉÒ-œ¾µ¶ø—h±–Ѷéqe#|VÑzŠfhD¬)¼qI=InÔåþ,Atç)-a”C©5}}XîÆ8Xêü>HONcí,½mm¨t¶y|pÓÜþ¯>©«ÖúmÌèþ ðÜGÔÚv»_ͯoú?’·gó4ß%§ásúý½&v§÷zÞz¦Ni)>QjåiÕ·ïAÇ–~±<ÏáÜbÞóáý/U ä]wC©ä,îp‡Ã8ê·õ—ÌlÛ6Õ±Á«Í•¥„Äg5åÊÐÆÙÆß·*[ûªð«ùÕ~´}Cú\ñþ¿²æ?¦ý/yC;匛øÜ}»†Å¸C½YÙ ¹VŸôüv¿ˆ¿–ò6o+Œ¡„¦+ÁކŽ!+¡$í.ù§ÅûW“_YÌèþhò'ƒw}')c)¯mZ-¼~wkï!j÷1›¦ƒ±×³¨o¸‰`vn›IŠ`R¤©/Öø—ÉÔ“©3W£MÓéÈêèÌ« bä~ÕÂü‰=3åHœ’bÄ”Hc©ÂP¡ÙŵÄqŽú¦Ø›èÛvúÉêZŠlZvŸ¹lv5íkÇnš.Å>¡‘ls]Ånºâd#|6Z²ýÿÿ&O­ V¨EygkÍ®2éšöüËáŸëùËÀûš<5sKßr[µž¿©jñíSi;k^Âc²Ø ìD­j9iпN¬3ÊþÛÅÔØOé3QÓ~›7¯¦ê›6c'CÉUö‰w]êÞ'^£‘Él;Î[ú¾o)‹ÕõÜ^\ÁS†ëM J´"6ö2W-ÙE¶cœoÐ¥+”2•<›çO"ù_4|E²øsEÉl8}?…ñ®£´ãcÃemà5ÍS‰\¹ÇƵ Ìì9[Vñäº)´³;-ŠthKM—Ìù15^¨f¥½0A’ÁÅ%){p!«È¡0aóž‹„ººÄÇ«þlÕÓÛˆãÇŸñܶ-#!½gð>Ù²×1~>£¢iò®OiÚÈÞJ ¯ïC1¯a¡Ö©Ñ‰¤û¼¼-iÃÕµF*,š[Û¾¤þ¦üK¨›žkúÒ09Ù¼Éà¯aöMW~³žñÆÕ„ó0šfiñ6оç£C•’õí)†©Žšq^üY6®³TòÖW­`ôeí_ǺMïæ4“_ý/³ê™;_¡”·‘ÄAR½/é¹Ë9*rTId˜KbäÖ¹ú ƒl×7/õÔ‘¶1î{wˆv›¾nÉëÚtY¬M/ mxÝ¿GÔõÝ¡¨c°Òf±uìåìݧ’»°ÚRqZ±ÈWÈÖhüb£1 Jz};ú„黾’ã‹>oî`ÀÉ>ªzzX7@ºÔ®áž'¬o© ƒé§G×òš.‹WÉ[ÖѸE€Ái–ò¨.K†l¶é—ciä-Çc­S¹•³/Û w¦Ž)>âÊ+ך~¾ózn÷¢àuòmÿã/NsÕ0è¼$°ár5/ì’Cf[5q¯4rÞÆRÉO2MTðå¡Ünñ·a6©Ï.nUtõŒ͆Öõ­ï¬è˜¼Oú¶LqË]_ùcSV7¬éñÃJLˆ°Ø†UY&'‡þŒ5/çñùª»žÉ·SÆx3mút¡®í5±Ö±©ã¯È·ú°Z+ Irγ=(ðXŸqb NSg"%œ¾®Åµ$ËLŽ”&ĈÎ+º—çoa6á4õ~@”¥©8õ²ËÕÔb'R7 î‚>ÕÄi¾}{ç5]#éou«á‹ –óN©cÊPÓ2Y+ã-â/â?Óµ¶MÙOn´Y=žm#–L}]’¼sÃ$ÐX…ã Éõ)õMsêü)Žñ€ná­èW|ɇÚ+y;i’ÆCÅU¥¯ì^öR4`ÚZ•¨¦†£Ü4ªÏïQIä'¸IÕá•à±µ±žJ·šòýLˆu xÞ ¬a#ñv™¨ÿWWÕ#Áä`F³{'—µÍGlIŽ‹=5»øº‹BXcž×üO„ðׇüo/“¶ â¼ÕåFÜwLÎÇz&¹°ç³8M7]ÆØƒ c`Ìæö«x+v±æleX1hÜÝ™]Œ@ ?ñ,„íO´vïWÕµ"c|±Œó>\å®d¯x‹sñîݯèðÜI*Ñz9/ÍšÏÓ³±ì7,ѱ‚ÇÍVÔT™žeG¾è[§ëÞ0ƒÆžiòo‰ü‹âïØñ=?*ê´ôû¹ ÏÇ–oÛȾtÖ6_]¿§=ÉÛ°ÕŽ•Ü|s2Ò.yÓ›ô3á¬iõ>Û'žÁk%ò·‰s8-¦zY×ßêy›'ÍíûfÝ“–”öÔ™ßVØï`êÜŽÕˆ+›z¥8îY©•¤¢’XÈc<ÙY»û”˜Ïd•™X~Äœò2–I$à õÀ©\™Ñy€><'†úfñ³á}Bæ_?¬êsä[“Ù¬Ck0jå23ÝJ¶,Á 9&1Ô¸mÌ#ölÉÕ˜´ß4“ÙY–D…fThÄŒì…ÞN v‹÷Ú6Œ²a앹nïë³ÊékGKKçÿÄæJƤVÒ¢é¿mè6㕯='WSå ¥â*YÎn¶ýx2¯Ä¡DHºl#v=„EØÑ'•Â,`Å`ûèV¢Jª£Db…æOÉKŽcCðñ˜ªÁ1*MŽÕ¬. @æ!S\É^®žÜÊ ?“ºÌA’ÂF{M1û¿…o[GzÀN"èDQ°…ÝÙÉtŒ Y€ds[˜¬•eU^Õ8·ctôÙŽJUØ {÷oìl,eI.ªbä«í·ÑBÓÝárUX¢nî;û’U_lŽ ÷CGÔ:1×·LtÝ™9ôr¢©ª(dE‘%ŽIBBaP3Ø7ßëíŽØá^Û#@Ï#¹P;Jì¿çÈ5•æ8§R:Çrúk½µ~ÜŸIq¹0+¯VgBJ…5Ïãðk2’í¹ë^P–äcòt–k6‰f†¸èNÏ!A#¨á£Tÿ-‘™)ò^.XZ˜Þ¹izÆóHÉpÁUiâ¤(ªûi DÍÂ♞«|J­é/î¬IÚB•·f?#³HA«l˃÷/Ø{µTZ=‹„J |—R$~gîTô‹Úª³­u^È8Šô lYaf%_Kòe‹«˾åc¿zûK$zz«Å÷ö׷Ÿ¯ÅfC ˆ{oí¼¿¸ØFŸ ö€÷X^´„MîÔp"ü½9Õœûž†7= Èç¯/îtámÉð“D¨ôÃH¯é*d‰RU¿,Ëí³·ù*É0áìõ·)÷¥Œš²pœz´ÑÏÜ{A%T_qHN HcŒ¡„0z„ö\K¼±?q1åÝ>¢L@m¼öûÿÙ|ð tôåìÒ]ãhí{Ä~–®#–2ļŠÑ§â9.U†5<wO‚“!râOÇÐÒ 9ÒB_åc H \tudáVp8›·º¡ÙÓîrLMzÏEIÚ8Óá$ÚñÒ)›‡³ó%‰9–©ëe»tu?Æe9yñ°`¼7OmJb½a0xÝ+1©Ñ¤°h ûw1Ÿ%û7¹po&~«fr{oÙájGpWe/Ì‘éÕX© 2À+„´µÕÈǰû–åAô’fŒÏ#ƒ0XÔ²óîrIe_ÅH2áBŽ$ ~Ot8þ(匰Ú,` ßlÇÜ4?ŒƒB4ßý~;nYõ˱è>žZª_ñŸ£q…=¾•Ÿ§w#åJò®Iy_…øá[ƒò8‚üñóÇ?p‡ä)åxP9!HçþR²Ÿžäù^µ,ƒÿ,ß‘*Ü” 8ü¾9çƒÇÿ$øþ÷<ò¨=HëòX¸óÁ<Ž8ýyäqÐÿ`ý/ýówÄå”/â¿(F¶‰—ÆûÜf쨽6}_*†äÀv pÆgP®J¡üIø>ôoÈÑ |uä8%s2èÛ|/$H’KrëÙicIb±bBI Ñ7ÊɪJzhnäíÙ{û'zã4.¤jÏIo\bZŽÉã>ÛV÷Ë¥ˆ™uÿ5±’SÇÕ_ÔzêCÊñù'33Hý’ñéÁNEDd•ÿ‘¥Qf]©S'ýÞñÓå‡âÎàüâ)æ¸ý%)ŸPò«‡Œ½¯ª_©bþ⣩’/1m•G0ƨ!XÖ¯1F9¹÷2[YkÍX”lÕN?iËe“¢ÉVÄçvÝs+™©¼êv6]^æ«Êd,f7ßDÇhÒ´«Ç%a´ÜlŒô­\ F: 3³YÉsZZ<$jÉé@‘Ëa‹÷±ÛÞù|æ”õùÞi„d†´–¬K“Xït{—ŒÕÙ÷ŒöìŠÊÍü’HBwxûZG^ ÚWx¿A²„ú Ô°1¡Uà¨Tä/Èá’ Ìy÷üáçòI¿ baê6>tñ$Y:,¦û­ã6 Õp¶Ô·¤x¬ç±³˜Ìl—aƾ\•Ì=Ú¹Xp"òM_阂Ë©õàœ¤; ª>QÖ,Áªã¡ÌçÞ»æ•+b§Ê&,…H¥ÅÁc;FÖrH°­. ËdeƒŽfCëªs¼½«§ÔÚ\Çjk{Pß|•oÿ ¬JˆN’."¾)Ú·¥É¿Œñ*ý¥‹ Ž€£*Fb¢"ÀHÊüs,Ü™%$Éå’0‘ÀMÄDܰ’> a*(bcOþhd@JÀ„X¸¶YL77Ôÿ†ëmZÎ¥6Ópíš>ÉäZ»#PÈÓ×1¸­C7þŸÊQ̽ʱ^Çl0[öÑa¹G­ZÓ%[¡,=ýÌmœ…øüÞ2®Aû˜+ªRº¦ú|C¼°€¦³‰‘CÊ«$JP–GŽ£eû•€I5¥&}ǃ#‰md5¡©p‘8ƒ³ÔuÕÞø§Àk…tçF,«T•‰1¦šíŸðá7¤¤¼L’³xLoY‹v^ZE0¨,ÞÚuiâ,8¶H篬Y`eWŽXÉN^e’PªŽÚüÅYL‘’.ZR„õÃ\¹ˆ¨%Š…?µü\¨ T~‡è‘ëaZ*æµYøÀÃBQ¿G~ IR@ãÿ”O®L¾3£@¢°ê[aOoÛonÜtO†^~nácä/d-|÷â—­y‰Àǫı#;4‘€ˆè_• b/ÄQ…1Y>ê°ô'ÚÉÊmÝ$bÈhËöä… ¸ï ÃÀªá½\‰+BxS^¸PñW±å»p§ ç–%œG$Ž <–¬|)By –H#WG_ícÂŽáCòHŸAøÕòƒä`ÅxúQ¸U<á~¨Þªák£sï÷ÿŠvE³¤ F¤ë]‘wÞáPÂ?ä$~zQ“óˆ·³öð­7ìðˆ\®Œä9$~GCו(Xüg èZ÷ŒÃ±nÝþ˜Å7»? ¾c÷†ûmêúç³çµ4\3¯³eÃûŽÌÑHîCÙ€ë'ºþT%ˆÿÓöqèX—‘¢K1:ã"s#ÇEN“UY¡øyaíГ ã}´!\(ª'U ŒõêR>¼ò¡@ê ž~wû:±Ç´GÌ£øƒ#±$«ˆÃsÉ㟂AUª¨ô²øÕcäîÔûÔhO#Ü÷àÇá‡KZ†½?küÅ­ÝVkSåC!y9ÔpžÙ)(#rªÃ‘¹1JßÞ?éÓ•½»MÔ(f ÚcŒ×Ñ#IJÇcÓh¼V?ïêá ð|f?Ò‹ p½›©ìö¼pWüp9äHàC‚?ÛöDrþJò«+õiG<Ub P}+ñ«F!„K «¬9¬ws߃…ÚõO#—¢±é{ËÅãÛ¾ÜSßbWæ9ªÊ’Ð1‚t^XöeHÊ™b O2£q)qîB¦Ÿ[¬W^dŽÇ\÷hÝcerß²¯àÒ±Èøë³G<%¤v­ñ€É`ˆ!ù‘±øëÈ@VàñûòçÑ+1£Œ%p`HhI=¹Tv^ž+Á €O|Hüa ù"Þjf1UùqíôÛ~!ðÊÇÌ“›¶ìR2f·ú—ÅEEbd"´ë ”¤©íJ?ÒY‹©0JÃ@£}¹`Áô"¬ò2˜ëÉ!pŸØóžÐ.¦ÃþbO†ŽRÕaÄ€‹†•£ŒHZ¼,ì{8h‘šVqýÜ…üø‚ƒ©ÿ<>4Æ®½jDÄÌŠ€ þ€¼+¨ãã€=yõ?Œ™þM•ÿ=Õ†6òí³¾ü4Âê&r®çn­·,«jø¨^Ñe~ñ9P¾ãJ‘H8öŸ¬ÎÅW±† 8V‡ájKÖI Y1K~ÚW³î ಱ ,‘ò«ØÈÁÖÍÄËl¼Vê`±7 k ÿJ£’éí‚Oqù«…^¥X‘Ê·ïçž}gÚUû(IbÅÔròC RÝÖ0GnQ^zþ>øÊ×ò{˜ù—Môìç|÷^øiõ3Í;Á{nWß;j§¨³öfö¬Èå Ÿ•wgå”ÅÜ–P äõeØ)ù/ýBëa˜À&¼ÅÙ^¿¸ñKašUHœ×tê$oizÈc^Møÿ’ÁOhmÊW2:MB¯ñ/ƒÛW‚8#à~ññèxÒl1Ž{Ä€r€Î†tåyü™ÀûJAøÎs¡±6€Æ>î;ÓŸ>aB·òÿ7ߪܮê˜ÇÇ'~̓ PXˆ]ÿZ Ê:<ŒzÁaQɬ3^hl¡bÁCñ2,GÚ=QúÁ&9öá`ºÛenš]I@_Á“ª¿`X{‚†€$\ǬõŒ¦8Y˜uü# BÈyw#ôU€GÈ矑ÉÅÜV€ “« ‡ÇüÇ÷û³ðÈ…üÜ.*]áÇ‚“Ûjâ¢(•+ZÛõS ÝU†qÊÆ]=ÃÉû…æH%àUGˆ“ë.’ô¨²:2‚^»ƒ‰„LÝzuUW" õ¯ [|±ßôˆ~ }¹  WŽçÇ!:cÈcÉ>µžãi<ð OÌ@á~KòXIàŽ>BÏüý{÷?¤»k5õöøXdÔ»sQ{¡˜ÿn*Ãm Gö¶ùRÑjÎÜ—Œ¼¢RªLŠ4¶R1ïÙE÷ëü!>1Ûy=[K,½e%¢v’ 褷n†»¬jD Ž“ Ž ²¤z·ê±þk¡`D|„*J…Týu<0ì„u,§q^$ê iÀRŒ®wŒ±eR§ñ ’Iyb{Ï ¹ñ…/äöës´Œ~›ÑõÂÌ1Û/@Ó\ûþ›qPÖ¬ò=«G¸1ö³s#¢3* h¸‘UT·FêÖá.“uDíëI ±Õy¯tò¹ !'L2I!QÁ™XŒô³ &Þûu‘„„)u<(ˆ+u_×)P‚T±•åxãvöâøUŠpA8P dR 7"&ç…ß $‡ã OÈ) õûj._¶o€|65_1wEwG‡>{ÙâÉ© m5;WÜ2 *Τl; "zmUI^ÄF Z—†R¾¶z÷ã‘¢Z¶ÝfRŒ¼óî‚WÜÆY=¶S`§çv †½\IbD” 2;,ã‡^ì¯aÈ*U€üú ñ™šR±#2"‰„$(.ð‘<ÔÁ‹¦]ȳ}±tô¨ž*òö¾'ðÐb|Ùub®.±¾Øº÷®* ×¾ ¹­kž¨ËÿN䲯+:aî•4Œ46›ß(¿mw¦…€½]޽†y%“¢Žd°ÍÉŠ^¨«ŠRãˆêÑÇðÏÂó׸ Äò Ï­Ø,PF XhÐäžS«ü|uã¯_ßûuêS’]Š7*8• „ñ;â~jí:’äÄ,­ÛRú ‘C3´ ‰^Fîðžzº€EcÄ]>›ÈP2òÎ]LŒŒ’Æ’õ(¹“Ûeidð³;‚Z©×Az"þœ˜eíGi+9?lw¬¶æTüÆ}±å¬Ê€M`<ÃÖÍWÐa»…²º®%ç¯×~3鞤À1‘úÇïúe²£•ïoÅ‘¸›’9IÚ ÊM…Nd–a¤³þAN’|ô”ÈZIG+2Éò?`#¸=Z^ r§1'äüú ù2º¢.4¬fäG3 ÓsË9-dX{ª«.‘¸>ªf·L’þ¸ó¸l ëù—³«å´·ëÚ‹Ÿ½Žñž8U¯ŠŽWjVé¦F'ŽÕhÃRû,¼©:šŸ'¦@È’õZ#Ôã|ï—õì#¤È¢YJXgªQˆΛUÎ3{ ²+)Q¤h Ñ”FZ& ©U´ð»È—OR§ÖÀyaó'YxáãbŠHAºvÿ,Ê;¤ŸÇ17'Œ6<çÜFócd×· ÷mÄo•þµÿ'ùs7¡é:&SFÆ[ñ§žö|¶«‡Š§‡vMfÞHUÀgvY<[´çÖÔ5Ñn/VÙ(Ìóù?ÏÙÌ%q´ïÛ¶¹²ÝÂku5=TñN—µà¼­[9³ÓÙ.\ÒõÛÔlGX:ØÏaòš}j8㟮5†jÓá>-¦¨èêõ~S¢—­”Ù:hn%×ÞFUæé±–$Ômm^ £e•{qÓrûžñüÁ%}¦èî¨Y]~UT’„”þ¡‰WêÊ„ƒ*ËÔ–‘%_‰”r×>å~òEóž5œuì þAÇP×tøô»:>Áƒ×f«Õñö|{†ßÎ夽¼bðq;VoɵÎBÔ³ë™-ñ“Öž{ÿ’¾°4ý§WÀã6lÆvÄšgŽö]g#™Æhøœ‘¶½§!F-ãœÃa|/˜•¨ë1MgZ†gñ\ÚÔq›K–ÈZàcâ‘Lòú××@º ª]ÕÁe˜Ù“U­§˜\J•µWæëo4ñÔÔq–N΋?k3::ÁÂðän¨¿Æ:¯$®P§6W‚¾T1ˆ3‡’5?ÈÒ|ÅÀ?œÌäs‡ÈƒìHaëŸßYšþÛòešúŽÃ¼C®ä¼!º`ð8Ü+‘în·™ô{8ÛVc±‚½3ìq`ÒL¾9r7ž¥Y«M“5äÇÏ=9"¯)ùsê[LmÏJÆm^XÊÜÒsžE}?wŸ  `x¡ŒÆã.ë¸üînŸ„·UÛòµ­½µ£¬áð:•M²ºËSbdŠ4FÔø‘¥9’ÑÔa ÊÝ$k†ý«³ÀÓäå© 9ºq”ÁI Þ·½Ó«Q0VIãROsØox¸*$hÌŠïð¦6V‹Ýt¬L˜ò{ñëñ†dŠìz¹çæ»)=EÁh$Vù¯¼2Jy˜{GæŸøv]ŸcÁ}JµÍ¯r­’Ý3gÖÒmŠ—[ÄíŸO^5¹Œ¿§Õ\$ kÜË ¾>*9i²o]qX»Z®]n5{ÇsyïOÓ4]ÛHÎo¹Ì‰¼3ªd4=³ZÀô™w9S0»½¹u¸vŠ¿a—+6k •źFOÊ]œ¼ùhÏäj1Ô%'¦å(F2c“Ñn÷tv¸rµ-Hº°¸ X‘T%—°d¼âÞ×ÇWÊ©GF î?"%„ º®ÄBîGÝ¿Áe”Uÿ§”ð.’+XYªÏonF¬DˆY>âñ$‘(þXUˆŒ¸òõI~‹<‰çM÷,–üÉo)goDñö+W:0Óe5&女ŬUøÒ%QÖ³Nսꮫ%5§Çf[²Ø·ø—9õAúvÔ»ÿªãuz:m©u V“¤a5}‡'žó…œÇ6nœ:’^µ5}FdÊ{4-Ò€Ë 7/Ab•ÝÿˆÇåéêÃCUë%pé –6ÖÞ+jVEªòž­M9ë@è"­bÝî+ïîÇQ¢³ûé ÐXö,ËVt¯46}‹p¹`¶‘3¼SÆÊRôMÒÄìªñ 1° ¬R¹'¿,¨T²I"”Rчžî€°‰“˜š2f*úä/†.ùÛÇz_µVÚ<…©Ü›YÐö½^‹TÁ\¡åO"n¾uÏÓóNÈyƒ­Ø·N¾±¤/ãiK ˜5±J¾C%jô‘Å$erS÷5fbò•°ÙM¯ž¶ «Ô´#[Y:V¹¸ÉãMJ*3éÉS’ÎQÂÛ½Rô—s›-ãµo*ô•êÉT~'5>[VÀ¸ƒœûã.¦Â«7àè•kÁ.²eé ª_-ÛCf÷]3 ~„,hÉ'·!Ž8ÕÁ0¤p¼Fü1‚b;± “‘íèh¢eŠc m`N`&EWu…=Ëo–÷l:1ÄÖ²ÐBVÄÇÞíH•ƒ§«ôþ"jÆrŽ”Î˜‰aœƒUu”rxvâ¹ò}8,žœX.¬·æšâÕóºÐ‰éµ´Š¼ÓS†h$µZ ^t£$ÕKûÑWšX'L]‡a š’ÈÓבT¯äÒJs'VUä3€<ˆ%êKî ø‹þÓöÊX/*ã>¦üÉäm#'¾âSà¥xq˜ýn{ë¾C³WË~ghÕóÔ­ã¬ÿ[ƒ†¿ýG!® 0¦MöÛ…I Ä=Xƒå/©,®ÿºÚÆå<ÃS[Çê_"¦/v†Èö6n˜¬¦CCÇãªxãJÃi3îž>l¾»Ÿ¯YÍãóU&£rÆjÎðø‘£ªéÏCXõ1Œ¡¢Q@e“»Š3²oÃÇ“ù±ŒH~XÊC„êÅ£ýqW³ÇXMÚ?È}ÏÁÊ{¢â9œ á[«€]~F6AÙ{Њü’K¤©áÀ÷ “ø²Îá”4@{–Ê­˜xXÛŽSnþGú¶ÆÚÖ¬c¬î˜Û9íKRÞµ #-« »߸X\®›±êóx§|ƒv¾TÁWÓv-·P×õýv´º’¡ìå图¬|¶é©ï»¯Žhá<¾ù¤þ0Äc2d|¯®ä5Ú˜º'õH2—%ñõ*wóö\å]u§¿_K+bÔÏV×ø–‘ MGOV&”£‘DºÁ7ªi¬8wÎIø)ºšq5`üËÈ2éªÂg6]óUÅìŠÜ˵iÒȈ¼rlE7µ‰vÿ"Ÿ b7ɬøãaóéÒ_×3¶lçŒ3UòÓç±Úá¥5:êI Çݤœã1ŸÔ¬âä¬j;ÀñVͺ'Œü¯â¯yVÅyu waÉ`3Øê9øüw±ÖÓüô‚×õìƒÃÂÒ£ŸMBÅ]\Û¯¹œ›™›«ŒÌÞoK«ñ CS åå(tB}A"W(‰ ÅÒ{¶ðú|¡0“­62”zd\R2©$®íö;еÇT_Ütá]„)mÿtuhÊŸmç‘GnÑ\P‡–œªüú-S#ÈÑŽî3%S'FÊN`Èã²²8«Ÿg4•/µ|,UœÃn´Õ.KVY#¯nR.&ŽtJ-ôí—òŽßã?7êûîWÊ<…}W!~ÎlÛ,òg¶ ÖŸxåêèSm4 ò&n<©XóÚVKhÛµœe»PÒ2u1žÕT¯»ýBèúFƒ©jY?5ã÷WÄþ;Ãhš]ÊÙñíýB׊÷ü×”2ÛtWålAò·ä€¯¥æ­ñµkVZ†+ f*V­ “øŒƒGPåõjZÕ’$LJR`:„Lï@¼òQ½Hüè’Š°‘ëF:›Çouö2;3¢³;Ùoj›çÔÝ*¸ _Ä·×lÙ±ûÎ͇‹ÉIGÇY=þÎG)>÷ìéOïb§ÜoÜÍ^‰ÎèÙ=˜¤oSýckV»¬xÏ`ò%€×iÔñ”[†swÚ´ý¯XOO+™ò ,¾jç¶ËÞM`r>ã‰Êoؽ¾­ &"ôž=¸øu£øª“ÊkÔ¨µº»(d+5m[Èü:ÔüF›(ƒ–†«»ƒ³‡ãªþú¨ ®È;†=‡öò¬Ý}ÙOb·ÁH‡ðu‚vaà öRý‚–€<?!Q¾b‰5¤ååÛëššF'œËx=&Éõ•–­€ó7®ì¯äýëȳӯ·fõ©aÝšlÃ'“Ò±Y‚ï\Ë5ßj×3h˜L]0±úÛϯœ0ßR6¦Õ1þrÇëzµ Z†*-K9½äô›ŸÓö¶Ïeq¾=Õ³ÿ¬%=¨`"Ég¼›GȃßФ:„z–"+Iaω1Ñ–§Èž5!#rzâ=W]²Xnç<)É¡V"Å›)YŒƒ¤Ív7ÛzxéSsí FÓôåS·Ä½ŽÊ%V"Êž$•yz¿«“¥“ÞÇ[§~ºÏf¹»¹^íf»Jyj[ˆK^I"7èZ­bºä‘ Å5k";ðÉå¶Ë_ê;MËëQO·}Mg¼Q¹é>Û<û™£ä-ë9ämVÙòž]òTÉDZ.gÆ©´;ù<Ž_âùpRb1t¬du¸èl0Áp[ߤìNOàÍb–Fž×Byv_*äD[Ü Îjo,nY|UÝ‘¤yíO{1޹W'hd'Ÿ)vkç23O=›¾‡8óÆ”´54Ò=W+¦‹) nŽîTÅ_ >UÒÓù†¬f2›FÆÕ¿lvÃÅ”e17xÚ>@!d䀊ò‘Ú8„§ø%Ìò”†N#<€zGÖEdä‚ܸ‡fA²yëÁ`xYx\_DHHßÜGqÙTñîH2buíÈ=^Wæ,ðŽ*,s/a¼MdŒ!û]…Õ{ÇÔÈ—Hض<üÇ$Bhò¥åéÓu!ßÉ›«ß.÷›ïúWÖ¥}‘öOÙ÷£µqèÀ †÷B²©3°ü•€>Ò“ò ¶”Ž„žÖ¸R} Ä•p®¤´eÌ’£:A>⃳Vf ZëüÂp~Ü{$7 ÕÓòçŽÝØv#¿Áå Ÿ"Ý>_äû=y¨Ašö÷T«§'§1‡ à¢Ødb·ØÃP(gUsZfó–û-Üm=Öüï|êÙ¨•b-íõòvÿN*gÖóCÓ6úòÇ"ôËh…HRJ̻κèñÅ ÌIXyöÞ¹bÍîðfí€nÛüûó|ÈH?î§ç‚Ã÷ú?ç×~·a‚_¦}ûá"‡ï4ÏÍ`HÑU7~U‰â`%5ÙÀÿ¤w2Å/ýK°„ë²vû}Õ¾ ðf‘+ÛÌH%¸àüGR üŸ%ñ’¹ÂEÈ8ÜxËNnï¹Ç øoþÙ 9*¬}0ý<þ¹8,rÂñÏíz¢Ž$Çï¯sG»Y¯Œ¡¢d±°&V*™IRîJk˜ZŸn_‘8’>XËmðÝgúžú°u+û’ú†ò9ìTЂ‡cÀºY…YìËÍ¢šnÅa!£d Ì]Çfãªä¨pÒ@>eø¶:}O%Éèó—%Öj:PÄeÓÔ ±Y†ŸMIk&G—Ìóœ¿;Íü¶1e­*ê‰*©oJŽýñ“Ç2s>òu|½ïëØŠy 7+äÝSsÊmÙ=h‹ µaÈc7 hr=,ô’¦ùÉE·P Ó• =$!}!my³¦XÓü“ªëwµ/ ØñªókÙ¬~/j†O.a|›r<¥Ì>6æ_¯dêbN(ôêOœÄIinc‚ò-ì4Åb’G‰=Á#DÒ쑲¼Ýˆ+%†`#–Ó Kñ|F©*rt±`,jJpU»2#øcÁuaÍ~ü¬KÌw•”z¾ 厲}sêÇÕÒéǹ)/Ú¨7ª_Ö“M!а$å‹”‰¬˜ÇŽ9Ñ‹úÙâÆ­k~AñÝXgÒüÙ¢ÍÃ`·Kxú¸ÿ*n1o¸‹8ÕÍRl\Ö³BJ—%‡ä«<–ÃWôôÕ>•7dò~©åo$ùCÊå0^WIÈà4Üʘ›Ujý,y+é¿‹¡geÆV°ùL}Ýö®ú™{ðÃY†"|E9[ õc7jITBà÷*Ob?,Ì~"’@Z>8šƒDOÛ0#ÈÒ ÎÌŸÝE^ŠGiO@ÁY¤!#µ"*#­š¡¥›†r buu4ô½A+Ã{=éjáÌ\–Qºm"hé7m¡ºÆPnš£à¿¥Û#Ý+lYþ4·ŽÀë{¯€›ZÅíÇoÉTÏìrì?Ô6\¶Â+ãuéi™>Ùpš¢ä±7g}’·•XÍÑŽ(KEÜ4§»I%&GeVÚ¼ ÝUKUøX_ÒBIìþ£rL\HåþR[‘#~2 çù n>ùÌÝñô~¹ 5fŽEbHaýÊPžñ‡ˆ»¶òÁ?ãS^REºzåôXi#ê‘u»K°6·Áj™¦zššÚќީ½‘ôâ©­Ê(kµý8·è*R±`[ž8ëÁ¨²¯×çñ8#žÄ²žJóÀ庯 |qóèO{ÚŒ’ ªõ<ü£Žè°ÿ#‚>?õ¸D={u‘AÜð§å¸ü@@'òÿrל©Ù.Ü÷ºÙ« SIézŽJLÕÝç½îüpªP¬ÜŽÏPÄýõ!yøø??íèb'uV_Ÿä 9Pùüv'€9#üŸþW Ó¯sІ@,AýóòáGÇr¬Àóþxøôkù/d@ä‘À OíHäüýsÇÏëàz®oå«Éuší_qÛ¿íűÜ[XÔm ¼_Nn¶3šdH<@êx¹oŸ>x'ý¾HÿE}¾ƒå¿&e §â'ƒ×¯öŽy<¿Çù:uPHì8/ÀÿO ŽD|÷}ËîŽ?áË7b¤~·Ï~@ò},fŦº}®ûVõy ¥ËNü„ˆ§æVÅ-a{ýÚÛ~¤Š„ÉÁ.É×åCð ·Ôü‰ãür=Wⲫ2„ ßåxùç¢0ü¹· ÇÈ(# Z##õ TÔÏ Á?ˆãŸØ<Àômá›Üê·À!{qù?Ѝç±1ür¦ëÞöJÍâð`.íÏö1‘Çfí·l9û›¼h܆, ì©%Q’«É,Ü·$Ÿþxõågãã‚ pªqAù@ ¾X/,~>8ô(1÷àž …AþÐ ??ùàüŽ}e+¿Áý0<·OÄvãü~JÜ#Þy<úB«ÜwökåÛ<4–û†6­ì{öíõ?PP– ¯ðËðV_ƒþ8?GpÜr8çZÎÁ%GÙI¿̼ŽÇøùøHçàóèS™ ‡<Ð)$pêI<ò?_ìHìWÜàÍ"•!Ÿ¯×‚{ðà‘ÈïèÑý%w×öÁöúq:“¤’Ú€•€¯wÎ ¸4P¿ÈŠ|ðC~Èýpxç“ÈêGÇ<òÉý}z6‘Vb®Ä¨+¯?øqÇåÏ?’ò?Çû‘èBüŽÃ¨ ƒòU‡!?Ü‚<xøô»{ÿ|¸ûý844¿k\mâÿÛ p^X’§¨PIäÜü@%¹SûøàŸ“ð=ŽÝÙ»tb¼ŽK|ÇÏ€üçž#Ÿð;?üüþ îã‚?ñ~ÿv=¾}V6,y!{7oÙ†'•!¿\Ÿž;pð9$[ÁO“+UX_#AF<+ÈUÜ«½†×|ûWž Êæ2U™u U¿òàü$‘ùpëõè~Á?ü™äAPÄð?ÁëÏ“ðÇ>‘#yP;?¤üóÿÔŽ>ã‘ûä“óLJP·QÁ%ããüzÏò¡¹ä½€ø=½3.ª²Ãsîgr«ý³Ä¢\h?6ka}ïéý¸Ñcr§°à($ÿ íÁþÐXrG x#ŸÑµë/<Û¨ ¹N–SÏToÐì%OG È„€‚‰© @(¤ž8 à/ëž>@ŽOÖ•PIBOU9<GÄ£JÈ÷ðOøõ/§ ÷l÷Ìñ4í~¥ ­VíÖ;c·tCd“»³HÞÙ#ªÉQÇ9çžI#8øõæ1ªde¨(1O“óÔ’yãç’ùÿIfä+ˆÙ ^ŸìƒòÇžX±ãçá‡ÁôYʸ ÌÝÑ”UZE$ƒÏè‚8à(?'ƒê2lÐÆÊÁö^ÍÑŽ b¢Úæþµ³{ø3Æñõ‘YÃ1P8T_‡AÈ€$p?+ûý?~¼#-!=™Ç6‚¿ÏÈ'ö€Gxäò}b'RY¡†qî–ê·eV‘Ç#€Kuãüú‰ Œöø à˜Ù¸’Hççõñòùüj¬¾o¶6ž׊ÝÁÚ·pãϾißì$*«ìÜÿpù+Á…|ñÇ<y‘Éøõ«0FP[¨ä” ?0C±SÉ‚Où€@#Ð_•÷ Â~>x'‘þ üò óϯV=_¨|C:¨çá>äüÏ$¿û>¡U’ï¸ö{W÷òn‚î` œ]w½À³'»C"õbA'ãO_žPð0±Ç ~þ}h“4ˆÊn¡ÁŒÊOÀxü×Áý|éï"/›¨å$׃òO<Ð@àóñþ}¡Ë”`á‡(¥‡[ôTàŽ~GÉ ÿ‘UNkÎi½Âÿ÷¬9Þ¼ÖOç¾N Kþ^ÄŽ¬C€XòÂÇ–çØô“öÉ(ä– ŸòÏ<~þyçãXYmÀ $Uè¢B¹ÿxç‚>>ÇÏ>²ß—'Žy$ ¯‚Cðy‚~Gïà¥ÀoÖ[q_möâZ­9),³GÚ¾ßnqò{ª¨ Ã9'ýËqóûà| ÛöG­C«uBËÝW#’uGoÑ?'žxàX~àd 'FþNCwþÞ8ùÜŽ@`yýó¯)×àp<±U=ØóÃ¥x+ÀPOìÿìlŒDж‰í^ùÅoúã« ‰eSý+žÏzß¶|ð*ˆ‹ºñÙ!ÿ,CÏãävà[€Gøë`YKˆ€–,ìÝþ=AP{w¯Ä§õþþ‹Ž½²üJËÙÕ *“ÇëòìrOvŸÐÐáÔ9f-þ9 J€£çã“úäWŸþ_'Ð $X[ûYÆý°^8¯.nû^ûúq‘' ƒK²–$~_=BŸýrß 9תšùËdC¤E¨M4n­XÄŽ‡ùdìd!¹ ?Þ?é¸ýlÝÕ¥Ž>Ä/tìO<†äÀ‚Aàðqþy<ú¨Ù©Cç2І9K*¡XÉ"H®Åå÷Uf§ã5p©N1ü°v˜]Ÿ„Æ¥©z#·²îysžýŽ9¿®5¿ÌçÀ»ù¯o¯”þÈY¤XLjÜtñþd~Z4Y:ÐqÍ9ƒKhˆÝxYÃÉÇm!/ÆDöÌÏöþðwduRÒB_æQó#Éñö>›îщcg^ 1FC<œKñ×¹’ªÜ§os' ÿ/¶b­àH46ò^húëæn#’5,$™W§ò«#ÀØCÕø•{Ž}vu£Õ{Ãq+ù‘ɾËã÷ÃÊÓ=CžöíXª1÷§†À¼ÑÍ|;4²NÒ‡NY>‹†ð$H ÕcíXÂe÷ mT~ Òö¼þ¥´îŸÓ2:­ ÷ó¹Y*ß8 2c1Ç1kÙŨI±×Ç‘n,Ds5Ü= \9§PVäuVŒÄ"Œ)=PHÂ%fr$Ž£ì•ÈÏÞ ì*õ_USxúVÅn’o|–w¼Ž7¼½½ÊÿqpëXüf;ÈVë,?ëHö«•¬eæ¥FÌQ决Ô²Ö²¹©fÅÇ­6CzÞ%…‘rt§®g‹þ¯¹„ü§â~œa§›Ù7]ß˙ͻȦ‡æ wÝokºÎ£b—˜0>!ÕìdÓ K!.3.§«x_^Åch­ßéYø2™ 9V5¯¤ ×Óf׌Ü|g°øÃËy}3!«`èë·6ÖÂà³W0øÝ{D¥¦`ž–µ’– YêùÈk¸ÈÓ–Ý'Œm(†0‡¯âd :Z8£åú¶‘S#[bÊÎj—LNO©:µ,ɨÈéj¬Û4w«­ø>ŸZ¾†æÅ{3™­_]§. -C=WÛÈÜÞéd5x¶ŒÅªXèïëÕÕêÎ"Ùe‘¨Yöd 0 †úÖðu[ÛWõ­Êô0y½Cªì­Ž‹)CÈv÷Œ+æ±ShkOÜ9S29$ÈÁ/³R)nMøÄþ£©á÷ã¬døì®»½lXm»–¡Çl›­©otD{;‹Ý-ÝÔ¶dLüÖÅ>–W’—í£Ó/Gf |7Rq¥ü×Ñ—ræ&Þ+zÈ`íj탽¥Pµ¤iû6µ¯_Ãêv4¬Å»zèèâ2˜›^·jp¦®4a2¦C<) «ñpz44®£™1‘%òR9éµÚñž9:µµ7éX‰ÒEŽWº¨=³i{X{¾kñž7ÅØo0®r¾CDØdÄ®¿˜ÇG&KúÄùÛ–ñXú4ã®­%»'#ŽÈãì¯(ò½_‡¦ãÔwúÁð&/¯fïm¶Ó˜ÆÑÙ"É.ýº:ö&Îiu¸sÙËÖzø(eåZ±Ü¼ðW¥užO‚}+m?Oø}›ÃºWˆñû~ST¥£f°6?[_Ö¯A#„Êä³cÙ´˜âÄê™lZæfóÜ×㎶7!¥fŸÝÏ ²ØbÖúDÕ¢ñ¯–¼WÈ»vSåßæ¼a˜Ë vs­eï.HÅB†==ºS™Åt–8ÓÙš)Ê+ÕV{õ'ñqùz:L>TY2FµAëݪ,Žn±ß%QüO¯SSª:©—…†qCM¹Î)mWÆê7NÚüߎðÖ¥]ó ?(C˜Ù*Õ³[_¥›ñFw®lx<-Éã‰3#²d²Œ‘¤ó¶/bÄä±V5…”9`ó"„~Ëm¬}?ÞÉ“4Ζ#·¯àôøw<ÖÁ 5CÍOì©I2YJ“Öþ0ÞârÎñÿÓ®7ÇD­¸c|´äuL ï6ä´/äèà×¥ÍõäL•¼’Ãcª£9´ ›Öc7•ÃÍH‰Ë¾£\ÒÀ}Ýðþ©•ÂùÏ_ËÚÊ[Á}BÁš£»ÁŠõ,c©l€Òr0à.Bdöå\OyªKg‘‡gDQêÝÆJ1–´#Ô:.—¦¡Ò—†YÍJâ½C@ejJPHz’B=GSjv휆xKܼùã]ìxŒûÖ³7©kyZx¬6îS%“‡rM†Æ ÆP†KRXÉ&¥ž´+õiÒÅ&½`¬S+3ÇÖ‰î6ƒ¡™—tMüê Y }kƒŠÁî·,ã±×öl”p´Ì”òS²FÛC,°A$Ð!öËÀi~·¿fü·±ï[†¦›Ž«o)K[À Ø®ÑCNŽ/"Y’¿µµß“-vbÞJñxí}iÖŠ´?¢7AÅá5KÌ›Ôz–5µ™üƒ¨}¾­4ÛþgL½”¹®fsÙ4¹Jhie¬â%£F^Þ9c%–pfõL§ñ¸éÆ1eÒSGæ Óà´*¸²å=SÔpJå},V+€W¤ýQ¤ þ³>ŸšÉǸ=µÁ+Ö«.ÅÌ®z,þG%®áò:Î2žlÃ^ÊaîcÕ(¨’d޵›*­$e‘6ß­Ïáñ›-Ü*l;…ÝnXkF<7ïÜ‹!ŠÇç+ÃvâG—_“)¹°b’TŠÅ}ÆF\ÑöƒŽdÜrÖéëùíO1©C[VÔ07ðµtü­üµ,nc5‡¡sn¿‘µ~EËlY+tïØŠµž’ÁžMó¿H˜ ŸhÙvœ—’ö©,fÛ56,PÂk8›¸{9©b±f]£+Œ†«y.<{F_Oe§ X7öïS³jÌ#´êø³.žˆ²bâ+¶õ ±CcayN NFåëšVX2•]6{ïfváá•ú³ð†¹˜Ø°¹½–lmÍ^¥¬ÇŸ4bÜx»µ1ùñ ñ´–eÄÝ¿^³²GÎ9l˜¥ …%³ä¬ïê^7Ùw¬L¹­ƒ=‡Öü—™©¦E‚ÉÔÎA/1”/ìpìT>ÜÙ×ñpÏ›×i_¹tE £ŸÄÏe 3rBšvÁ²Mœ¿å}Âͨ²û-¸ê¦Uþ£5=¿/Kc¿Íå?<¾eáËSVÄd®²2bŒÁ ‚ª9~ùé;¾d÷ÜõO#ïzf_Éôü£¯ï–°ŸÑîI™Ð¼½GÇ”·=&É@ÿaVL‡Œ5<Î'cˆI˜Âd«Ù¥Zq÷ êø£¾–ºz¤Tm}T#Û2à³\‰/ϨF†Cm8zR²5¹‚Œ[|.yê§°^2»RÌæ.ù7{#ƒ42b5û8Ý6=¾ÔY«¨2d‰ÚšÞª 6"W doEiý[xž}w!›¹&ww[Äeu«8 œyšÙ —_¿²a-W­j¤»Š¹ˆÄæmáò Å,„XÛµå“ÝURïò…°ûöµ¥kíYÍr ³cjÙ®5,äq-«Ë§ÜÇå*Ì#ŠÖ!ÄœWT\Uâ,E+ûŒ…Ÿ¿}-ê›þj¦vÎÛ´c­T‹@§*,8¼Î*ö+AÔ÷m>¦7'‹ÉBénŽ|ÌÙšYÌÓãvJzö͆‡î1",Ô~"Nn‘§(ô@éHþfU"d‘~ªh[ 8¬ü%Dœ¦=rF6׫ÒR5q\˜úŽ_}BêÞYÚ<‰¬ê8ì£ctmWÆûŽ3rœDºþÙˆò^™ŽÜqïŠÞS£¼µìO~(˜L¯A%cŸùÏ-å íz}{ŽÀêºî%ce§us7=¢´¨{q} £N­^í-™Rõ|‰«+7£ú|Äx]²g»í[Bfü}ãý!Â1Ï[Æø‹Zþ»žŠÃJ&ž–ªÏù‘Ô ÅÓt¾‡Õ”3VpãËuêú§¦tß_s4…ÕD3`5’KÛþ ¼u¢m¹#/s'_'€ÿG&Çj¾"匩Ow@º­¼Ýê±5*먫i+F–U¡UQÞùõ¡ã-#ÉЯ²ìù,JÒÉã°¸úÛ~/'k^%Ù6]S+”öqÙJúFÓ³ãêe.Ç3-!`b k«ÉÛOƒ5º×™îd³ø£óž+AÄmõiÙ†ëÔñõj4q¿ÒãXÊÔhD33q,éa¤ûnDYŸ£¿g1Y|^˼ïVp´õ­ÛVñêÛ¿ˆ©_Ä8-ÛÉ×—¶¹0˜,„óîºv¹‘³?#¥L60Dª½e•ßUø—ÌHéèšb‘G¨Ðev4Ýå‘’b+«ó1`µ+ Ày¼cËéœ|­æ½/Äv+¦åc%|^K=3c±—,-LÅjù•”TW­FݸŒ0m$¥Ä‘ˆ·¨§{ú½ñΣ¬oÛ.*†Å¾WÑpy<¸83G‡Ø¬clê1çð¸Ìôȸ„Êbên˜œ–T4ÈøÔ6§ƒ¸­k«ÏÌž×<Ù•«“Ùv]«4zÎwS½|kÑÅì2ÃfíªÇ+BèÃgbž+°c"LÊ¥ªGí« ÄúHÒ#Õv}¶ñäÊúFѯì«zÅLÞ> }îÏŒÃb2Ûæ61`v¦þ‰RÞ*<‹K†ÆØ½˜ŒA$ù40Y|G®QÒ„tÄÓÔz$²Q@õxÙ*œð4ÎL„e6_1²p¹ê±¹Êi½Šãx>«tx`¥šžÄù_5µ¦~¶µ‹Êå%Ôõmw?6 Löú·ÿ$ŽÝw¯•© 5éڂ͘ݣ‰ˆ|êPž;Ü·Ò0Ù Ÿõë§g\%»ËáöÔN$má2r"ÖÎD9¼D¹'¬Î×)^®k–”Q´¿J:K›>C¾ù oÉæÓÊ“ÓËã£ÈxM‡!>_+†¼lc¤|\R^µrZ÷i³^ÛxùÑbd™d{Â><¡™ñÞãŠÈå§“ÇMäyôç‡9¬Ñò ÖªgàG‚3´jÅ©âªa¦‚P0Ì,”{>û´cAøŸT#ªi’¾–Sˆø%ÜVMbA^öj~%òÝKo¤zˆÆI}ÍúŠê®xLÚ¾¥|{ªl{§r Ï-•ÖÍør¯ˆÖò:^îÕ˜¨–ëÄÑX— ¬Éj͘ f8¬–›Þ €µïª¯Q–¼ÒçîKŒ¿¨c·¬~u1óËŒÉkÙMR®ï ŠÓD¬ö=JÄyëáQCTŠKîÊ+Èí7‰µ9³› Ù²™WÈìnW2käaŽhNý¦ 2–*ÐDÿ ˆaݤ“w©c*Ò]y$ìˆWTú6ñ¯²šæk^ËîùåÔpؼN/LØ3XË}ñµ__Õóy;˜™2 ‚Úõ:QÓÉ@–kÓÇäg»="§&J_Œ–ÐÔÓ±ˆX—"Q¬ÚpSk€Ï ÁÍ KV2b+kmÚ`+5el´ñ/ä<ݯ[×<»–Óî¦Ï’ñ&»g*Ic%‘×£Ùqt)µ[vß,rdÚ›Jɤ%>àõ1ì_W~/‚ž&¾Yö å‘Äé™>ÍÛ[²gãÛ¬î·1×${îÝ–{ÍBý”kʘªf–3fxZ,I£²0šùO¤Ol71›_mòÕ¼ë•qZÞ±ä<¶kšÏê˜=r†O5há ýÅ{pæ/I´Œ†1ïæ®ÿOȨØõG“—ĘéKJ}sÒ~d O¨¢¬DÔÿš»Àä‰Î3gÓ×é™»˜Óµt²µ;ùZyAŽ:þMk-ŠS—Ú×å"; z—oxkTËxûTñÔ¶vJXM//®lk•oV\ìy=nØ»VîJÌTE[&ü½Î_Ù©Zµ˜¦×Jó*‘ Ôúñ Kˆ“+—ÞöLV:Œ8¯ìLuì{Õ„Ý)á¶Q&[ÚLYì%7·Ë]µ–ØèLøÜãª*HÓ˜>&Q£ÇMÊ!#Ô¼=‹ÅƒOIäúV1Ï ™Gª= Õ8»³Ç~$+¿U^*¥]£Èg+ÜØ°ØmšÎ.ì „×vLœ˜]c5²FêOd·JR̪ù:ÒGfº,.¸ü}õ£ù;)„Âkçd‰öÍg'¹êvòØ{xÜfÕƒÀe«á³—°V¬*W¿c vå­*§‘£!/4‘ŸQõ¤c³X̤y {øl.3^³킾Qrš¶¹˜›1ªàs7r¸[VÇjsOý; n+urìTUñSÛ¹k)”u/éþ?OÛÇØÍ¬~ÐöÍ;V·”È5âÕö :Îgb³°É-uŽûÒ]/f ŸØ‡ ß¾âH-¿S£üK¬yƒF¸²"Ã0H«„c¶jßôš&¤êJldz–¢âŒoXï÷Ï |ÿÕW‹°y¬¶=?‰5s­ŽÉ_Æ]ކ~]²ÞÏc°s±ât†,c"!&¾HˆCÉO—êßBÅâmÜ¿ß*XÅl;>¿žÁϮߥ”×­ê˜L.ǰϘ¦J}¥Xq™ì]™¦ûRÌÐÓY ʳýxó`Ä_ÎarÛNÇdäöìæ±S5µÕ?ªïô <€·›Åa?­ßV¬Àb.YÉ]šºÚ‚ž ‚z×ÑÒìt6k^YÚ|{nÚ6Ã.dÀìõî_¶ëØz|]ü–CYž öFª`MÌvzž.Œ¸èä=ã*Mß,õ~-ÕÑ?™Œ¢E‡Nigux ÕÞ|ñdcÈS-Bú Å^¢Wé)kuìváÿwê«GÂd¶JW¿®æÎ&þó~§ëÙ¼œôµ<,›wa‰áŽ:Y U|Ì3]§Už­ÚŸÏNY™eP›°ý`èuð»n_MÄn[ÜšÅ9ìA&;`cs“T8in­ …•ŒºÔ£ž¥úœªµ¯UïV´’4|zzÑúkñ¦aó×p1j§Y¹ÂjÕñÞŸå[» bäU•õ‰4Ÿ éÛWPöœí¸i*ƒ÷MÚ<{ã¬Íü>ñ²çgK~5ñþíãY2òì5iÔÇjû‚âN×oeŽH–9r0œUù½H^B·$²ˆX™¤Ï½Ã:M¾ë¹¤½C$™LnÁ^®bµh5Q³Gj?Ìñ±!áãÿ“~ +ž?Cã‚‚G?ïëQÝ›æ@W·ýÅN°? <ÑàÿŸ’=jW¸!Xùù/Aã€y,{qýÜ‚£ãäüè³õr~J€U@øä€9Vb9øø<ðøõÈÿwÏ·ùçÏn7‹á¦÷¢»í¿¶q÷¾3Ìí„̪NÑñ#-ÄÊTI 4-q($ñÊÊ|~-Ô·â õ¶jdLF[Ý $K‹ÈÉ8(xÖ”ÌéóÀ!•JqþäöËê£ê^¿nòÍ$žï–ö;.gEcFk*´dI'X2 #y§Š;?ÒDbXéîÌD|4ŒÈ€e€9c"'ãfNc¬õyöA°ƒiðÐyMºþNž›¬Óvö3_F¸à|@eÎs>Miõ·«=[ÓUý¸3„Ÿ“cÔ˜ãŽNCq2ÊKÛ¹"â(+‰—޼‡ø)hHЀ¿<Çgr{T‡ïÒ$&9!µâE€‡Œwìâ?î—ˆ˜¢ô÷¿q‚¥QåIÇ´qn¿+’ë"ƒè å Ä'EU`ýýÇ÷ÔŸÀ( vUb û¿Ìטqó¼úépd͘6¸Øj´ý*¸ÄáÂSݼí°û¿ö΀Jx.:³M'» -ª¡T`:µˆÍ§,#³_· êT 4¥„`H[¤n©ÛÜŒZÕ€êeqÛ@ù!’Èý¸Ž#ŠëÙߣ;9ã²ñÄin¤v…Tªb¤äLòw ¸ ©*+¢IÉ”»1‹ôáÖ6_~¹gV¿qeúØ©Ö5uôòl®Åv st4½½ë¶2±P¼¹½ŽÏ{·¾rSÀÑ9eåcëß²­y,©‰˜ðî§ùºžCÊ¡¤IË'5Ò¬-ÖU5šFcí2¨Ãµp$%G,hF „síXljaô’CLìî 5£Y•Š€Ì–aûv•~0jÓWè9YÙ‰1"ÌP†1Ií§ÁØ1icˆº†ZÊKÓ¹ wäÁ3£W  öÎæ±ã>66rú¢ vyÆJrÞm/½^8”É›!VŒµX1áiާ²þ?"ÝÜòô‚lQÊ•ùÒ/(mAS´”fR"º$Ч§·4ÌG°’ͧê˵û=¥Vôþ_ëJž|Ã÷0»,–ápÄFÇWZ “nQîYnA÷ý—ñ ï •‘ùgµ ÕŸßܼp߆çÁ>vùN°Ú²´ãïõ«â>“É{?äëüP¨ !Ur­2ûЩ`+‘7`G7òfÍÐ4DÄ?ò}°”Gî¨du±û•‹âJl£›¨$ˆ(tndAã-x–‹ÜË2H¤?{$*ÿ”=k™¬ä<+Ø©cÅ¥I_YOk¨½¬´œƒ‰.FލVcÚ±²KfN%w£ûyÇjb gVÅü/ X4½5mïÛnËsø½lÐ…ø#V wíãíÄqCÉ[+9zб¹,¢V^ëý‘;H¨y$Ïø“Ðs]Ϻú6žKÚ]~'¢ýј¨«ò²³q$}¤,à˜`Gâe¹µTŽ]‹%ÞΡ¸ {•ùe®ÜÈ…ÃI(v­jKÂ@'â¾"râ¹—}ãE¨QNͼ¼C—ø‡}`ÃŽ¡µcíÛý¾ÑáòNÖºª¼™ÝL•TºÇÏ1öd™*‰Yy[Àd#Ðyh23ªtC%@ž×+ÙÔ¢ÈÝ¥ó9R@_¹!Ч©0xÃ[F=låXÈ"!VÜ ê!ø²Ö÷þÊ'n¸çìÅaÀ'ñf® Ec&N‡ïhÞF ‚1%yT Ò~!!pe,ó­‚Iæ¾eòþù[”VA­¿Iøˆcù¾«¿Í‚³l©ê»ï~Ìå   ·T;rè% PWœt°'߬@è’ îÄ«åè×üÈÚ9 ï×™ˆg®¨Ž‰Á°ìίöÜe !bŒ•‰ôýoëœ!Yráû‰.¯¶¢8Är‚×=~ïžÓ²•ÿf8 ‹Ñoù[«!-å¢r‚¿|:ð²P¢%N"Fh# U‡‘ÃJ=ÿLs? j¹|Q_ËË“W·Œaì ü?Ä/:åMÏéŠO8ý1à ü‘µ3¹kUÇ*©Á¨½AWìeeRÎÖx5DRÏ‚ ëó7i$ôµK©–ï1Å^'ïÇF\?Ëc‘{¬ª=¼„2t„¼‘°8ñŽ´Ëǹ” žçNn¯cƒ˜âI püV†U)p71MbÅrbõ•ñV¬6“%Ûødb- ÑûsÕ\D+Ä5$Bq±Ð&op~3áfúÇò„/=Ÿ-ÃÁü7ÄÝRñŽ» ¼†ÕÛzï|Fä=ºVBlF=£H¨ÆÁ@:õ2¨idÞ®ŽQXŒÀ©ô?üÏÚV2åND|´‚¡eb誓•^ʱ2‚(ËÏYí¬ôdëðåû7Œu§n¬2‚2¬>ü¢H’C…ù ¨"IT=…˜ò= Œu”èÀäˆc+=¿q*™»Ë—kÀ*Ø$~–(š1Wˆ”(XÁrÀ'M°m¢‡8í‡z[gâ5ñüÙ›wCÔj«Ï/üÊÚ$uÿ¬£GürSÍí·IP‘ÃDÒ±+n«Ôã] ÑHÝ@ÿ™8-Þ„ãaîËPV'å¤ pË,@¬2ž¸½g„r}1#(*GáÑ7 /4>Æ?Åž‹‚mZ—Ü«‘q Æ«©f”wQ:‚ÊRY ‘Ù¿ãí(ê>,ˆÊÒ<ãc‹ª‰ ü*ЇjH´-[õ»ÛÀaàζß7PìÚùó›ÿl¾È»kÚ’T»XÃì·! ‰ån;¸€Ä 5P<®YUhÈ\e@‡I|“¶Ç$e²=Ä)ɺò@Gè%?4ù`rUøe‘Á @âB¤ŸÆ¢F”Fésì´@ØSö•ÄüP¶ßuq¤¬Âα3H“ÜI ¾É,UQ˜q„ì8ÉäCcòÇe‡ðœ°ÈÓöôZàÕ‡ß~#ÌkÙzº…UÖý«»Ú³Øáæ<“¶ò¯(Œ;·¹$QD ºª¬b^§ÝèÿÍ‚8˜ÉI‰œ ,™ä±rÔÖ%“½‰åiŸ„nâI8@J¢‚!™jVÉr¿ ¼)OÄF®«Ö@:! ù¹Eæ4gä«V¬QòfCaY½ÅFeê:Hœf‘ÄX™‹7E~G§%»æP{‘Æ£çÕºz:z]rÓ„bÈDjñ‡q¸ÕÔÔ®½IN&i­¼ç"5·~›¥ìxˆ_²´e»·¬ù‰çXÈû@®ÃI¤‚vkˆœ8õã!¡´¢¬²Äu·1ðÍpÖ„}¹'´xí³½‰Çác¸ úšÂé½ÖZuhó à1MÂý¸eLY =Ö8^õWxööi±¹h;ß…1zž:ž›Š†ó`°ùÍ>÷•3´¿¯fdØöØñ ±Ë‡ÆQÆv™ýrú«o·ÌGåŸ%Q‹'¦yçj\ o°`2~2ÏË•®¬_ÒìJÔv|\I_däkyºL§kîú³ÇêŸG\Ùs#ú¨ÈêÞaÕ¼A.§6_ 6+™½³Ê:?Škì8šozV|=)wºû«S¢ÜËê¸Ì­ôÒì0q}FÍä]êαñ®ÑC]—#³ã1ïú›JÌV“)¥ÛzvãÙõ NnÎÙ Etoô|ùúVjÊ×ÊÇŒ”€y‘ÑÑ'¿ž£4!3m#.™5•AÆj‹x×)ë=oá´âFÕSº]Q6 œEÿQÞYÜu=¿ÁxSåìï†0[׆<¥¹ì™­ORî^}ã^Õ´\¾·ŽŠµú9&µ˜ÎU“õÕòPÅ ^üVIê ÏQ¹/(x§X›kܵL–Ù°jú_µÉ#ÅU×uËfmÓhÀëT±¹L‘«S8q÷Ÿ}Ú28h¬Û–\E -ÓÇ«‰ä?1h:žõ%¶Ñ3{·‘´¦Öü©A¨EHìÙ¯ÍbläÆK#‰§\žI}³=•Ë䱸êtp~íÙ"‚¥òø©=¼ýÿ90ü0t›ôuý†žÉµ`¶_;&ÌZ¶&®£¶i×®TØoÝ–_°½ƒ¼~cYÊ7XhYY-­ËZ_úéi"LB#ë’‹bí³º4.œ˜éÅü4u#!n¢Èg"‚Ô™ ¶ªš¬šß—~¥|‘ã娱›Öï¦É„Áù#\³.§‚Æ‹'“~Ÿ¼]™ŸjÈb¡½Ž¶ôñžBòv½Ü}ic-Ág%ÁÇL„E"LËùsêk[ÖtõÌù v±GrÇx×iÛ·œ”˜½;!ãÆÛ|w9W×s͵[ZÃI¸¥,]'Èã26Vó~Äñµåt·z·›~œtt gÈV“¡ŒÂèØ\}«bke²·ªÐ„¼i:Âmìä)Y—%n;—³Ñ½»2ÙÑ—­ýLø#&Ô2aÕ*>þ>ŽÊöòñÆô­æ3•µºbKŽüóöêánÞǽʋft¯ ¥áÇ©ø]6=Rø•jtÓ/˜#‹OͶ_¾â:²¶¹"P2EÓËúz®÷¾ûûSù#êËkÆÝÙ6ëxÇMÅø ¥mk ¨6·®n•|‘ä?.éû.ËwÁÅ™¥“ÉxûãË#$m_ƒÏÝÿTÐí­æñ¯bUÃl»þ£ô¤ÝÂnÛ–Ca£¸aõïÈ!-¹øëX³¹ÿNÚ³ÀØá Û֪ȑ.Bå+1âãìGjµR-îV>Õ5Ë3Ó_dËk^%Éù–;,ðl;&¹¥‹Þ…\0ÌAJ¤™ 5ŒÎ'%ý6Ü‹ì…k[Iѵ›†:iŸ×´üň¯Wl™X[Ö{;+Û¼³’Õ7m»WÇï^VÚíd7.ÃÒ¹„ÒÍ­PÄ\æWßÁ]´¦ X©$ûtcú\7 ¹2?«‡ú®ñS_¡‘Ûs³øÛ3orØü}Ò÷W«_fÕw)3‹ÍWÁäó˜zøüe‹©°ù¨sõªØ¼Î̹[Uò´ÀÛhúºðnŽ7ª¶hú©¯½æ(ÖÍe0—£IÆ3I‹\ض¼dÚ”^%‡=’?åŽ U·±Þ¿Ç$y‰sÿÕP}ÄÙ -±–ÇE^Y»ÀÞKòþÉâŸ,ÝÈæ¶$ïš®^»­g3 {N ?°eu|¦Zí 3"¸mk=-j¹ u̺vѮⲚ–Q¡ÁO%±#È%M£ê›ÅÚÆ#duÙ-±`tÞB§¦E+ãîçqø¼--®Æ;bÍtÅۦ#W){ ÛîÅmV™yKÎï¤iþ>بjÿê¬×“&×jê˜|ÆÝŒÑ0tŸdÄ×Í´îYº·©k”kWœ%é ÆdîìRªý•"ÜpúZZz,õˆOS¤ŸÌKŸI2:c¾¦«ÆõÃJSÕ#ÂGMX¥ôŒº-ïV4ÖåqK°>WÚð»4~I©æ/!ïºÜº¿hoûžÛ…’¨ÃKk²äö=.9ªá*@¸ì.ÊhRlp«ý[XÊÖìÜ´Jq¯œ>¢r>QÁP‹bÎáp÷SÃ3êZ}èrT—Ș=©rƒuÏdôêÚ¥éö»±{UàÏÞ7ƒB£ ëLo³%±ÆýMè•0º.OÈ9‹)Øwh§jú¦×•§c'Œž œØYlÏšÀËÁÙÄ]ÈÁöø ¬[­…Ø)OGí¢‹ óS„ìSËQÙçÇù75 o ³ìyÛ-g ´“¨äñ˜m£#‰ 5rµp¹œÆ.†Brj9 Õg½—1 áË莜cñY>‘"æQš#!‹QÊ*{q]BReÊ+]"ƒ]ºŠ ¬²½÷«^|ÍùGLú‰½Ô7÷_Õs>#ñÎ)Á¢]Æëz÷üÎÉÅ¿múõÅÝŽM—^Ö.RÉ×È1°b¤kÙµ^_m✎íæ8¾<¿¸`6ý»1¾à`ßañ'Û^öõ´`1ù¿¶Ó6é±ã^­üåªNóT¼qÐÓº!‡´(¶¸Y'õOâyáÕ"ÊíXÍ{)¹ävx18¦¿>JZÕõÍÛ=¡ÿ]Ì^ÅC%L®c\ºÆ]ê»÷*@!µNüq­¿Õ‚¾×b˯’ñ“ jÖ.žJHÖí›Vìæ³0ëxGÀÕZ¯cfl¾Ã4Zý$×–Í7,¢¤²dŒ´‘Ðùšš‡=XÌ#ÖzYÏVzKLXôíeÒšÌ`OAôd…²#ç^sc~*7¶«_ä1öto#ùGËOwÊžlñ¯úkrÅbòxÚF»Øsš^ñ,8¬ ‡i[øúâo´©Å4x·ÆJÑÅ<ÓÓæÙå-÷Ä^]]ËwËìöSr¶µ ¾G-Ÿ­.GÇVgØqéµdõb+òâ6¹ŸÛc±—[cމ¦_pÏš—0Û¶Ôuœ@–lvcE×ü‹ãýžµé'Ão:~NI±¹u‚'¯Nþ=¨ì´®ÑÊâ/ÅfÎk^·«ìo¨ù¿èøØËyúšL-Ë”5mMwLÜ^QÆÞÏot´]0løÌŒöÃ.żd19ÿôœú@¸Ü|ðáö'È^°˜øjFkU¨†–ŽkËžœôƒV›ÔõLˆJ£m§TwŇzà“ÕŸòÎZ®eéÂUÓH9ý}©¶Ÿ¨_èF¥„Ú<™[}Ö1>ÃøŸÃùu?Ó¾OѳÞ?Æå|‡¸nŒø•šÞg—“8ùk ~‰Ó2x¬vÕW»3­í{^r­ôšûŽtÛ6¿4®½”ß`}®kšµ.+iÉÉþ„‚‚ãê5ZWµ\LuªÕ’³ä2‡"Â)LŒƒÓþ—ÔöƒC¥÷!ñ¾Å¼ã*åÿѹ©Ždá*ÜÌI…¥•Ïg5“ÂÒÕ2šóÔÖ6¬…œulµÅjö80¢ËõuàÌ&+dÌUÚ¬ìÇOÍá¨eiàp™;Y+‡-´VÔaÌ`~àR«ÂQÙ,ËÌl˜YoÑ×î…Ž2º« >_J2—ãÔ–“ŒºX­Tˆ²üÆÀgµ(¼6£­9•Ê×IÜzQéZ¦+Üww®*5?*ý\ÜY%Ús»æ©ãåâÜ_|ŽÄW‡qÇøïËÙ<¾ã™ÜuxWij_ñ­gãÜÎYêX«‚ZòØ·¶år¤·;ŸQ>JðwÕ>þçäŒÖô¯åeñv*ZÉ>]Èg1ÞNÔõ ®Éf®&®_)n“Ò¿‰‡¸ùígñšµù#:Cré`>ª¼g–Çêy ƒ+.¡‘ÚòާJä9<Šcͬ½¼fÖc1W=m’zÍ% ™Y±r}Ã,ìÆFeetú«ð<³í‰7’©×—LÇ\ÏçEºÙJöÞ¢Ž‘»†{4¸ÙíVÛ²8G)[/[·’Ï`±är4ÖjãÊè1â²”$ ×!–K«¼n4÷‰¶x¶zÚ‘•œŒc!Þ1hz _H7hÅM®ÚvŽ.îÿPKô×åœòØÈ}Ekù]ަ^½,sY«‚³m"¹’ñ5¦'¯cµ™_RÅfäy,W"6JéSþ ü¹æ]KÅYY¾žüç ç9ŠÒü©µxÛyÞÍüEÍëyÀà)å0š~&–½¤frÞVËUÈAj šÎK ¬ëíÊåne3Õ+Skµ/?Ž~¥5o%lX=v†.í {-ÝÛ£ånOd¾zÿlÖ‹aÆu¼~:Î/W"»C}¾âzQÙ6R;ÝŒy欌׈ó~b¾<[˨ø;Ïy3_ÌxÌõ›Æ.»ce³_Çž>ÌkÁ÷ ‚¦>±‰—oï.N­úof¿¼Ú±Ð–Œ'R0#¨mŠNÔ¤’6´Xa¬©§ÖjÈyh2WU„¤ôÆ£a&7«há©Gþvo»fí/+ù_¥l^_òÝ\D‰1•1tüO¯`1Y/×ÀÙ›fOèÛ,¶¦9 ´ŽòæâiêS•Y áâo ýkºø¯e,PÎÒñÚ. Çù²Ð]ׯŽ<­‘£nÖ›Ò­j¶ã›Ê”ôjTdÏy>¥ŠUñÞG‚þBÖ[J¥Åa£Z2̱dñÒBö𥽓jHã˪ᣯ†‚ÄzÄzТÙ*8ÕÈ£i‘b¶t¾†ß¸÷×ÕWŽq¸ÝÃ9¶drxÍWYÚ0¸:yÔ¥—ÏŒLÖŸŒÛÆËcúV)ßS§F¦Q+dnÛFǸ‰›îàüâ Øï«O_ض¼d–îa°þ;½>7)²ç¬[ÅW¹Tëx£™Ñh-;œÂg)çhGŒ sb „ÐËL[Ñu,9xiéÄçØ1Ô›cù¥¨ÅÏ«›©¦øZýR Âà4âDÛz죪Ýß/ë–±0é÷üé·jÚþ ¤up{vn7x‚=6–d¶"i3ØYtü¾ã[ 3WuÆ ­ilLÕ=Øí|ßX> ­N­nÙE±zÎÁ]õù5Ýöœ}Y]6-Rwñ¾Ó¿Zñ¾¿¶YÊìôèV» ¯ŒÉX«ͯc6š´cÏ i€³—mW;‰ÏÉŠ¥yí6»—£š1 fì4yyÆ:_'#RzQ™Õ'S¤«ºQCÍ•\/^¨üÉrÔGN0"Äé:\Fò-¿ZsÅ`úáß|Á©b5Ø|<Û3:ÚîñRÎb²»?g=ˆûG£­¶#SÔ÷¾Ë°ÚW³w«dkbuèâ¯,ù<ÝhÀ5Ø÷ÿ8Z¯¿eµ£Î6<¿gkÚRö“­ëëkÆú÷ÓHØprêÛÖ©¬jÆ2¼U“i«—ÇÜÈgs~Y»¼béc¦ƒ\š­. ‰¤ˆ8†y#qÙ¡i#r¬AôCñ¶áË¡¾Ÿƒòo¸tˆ,²ÌŠþð…çgâ^’Ì OS*·&¼’()—!i%Iío‡êj꺇5«tB€ìÙÆý²µ¿éóP†œ èÂi%d´È꺺ì»!\rÿgÚwôÇâFòÔ‹ëñc³2x-—Å»l~Cò}m MròäôÊØéˆö ø…ÉaMË‹bÈ„X üä¾v›Å[M,î>vÅæçÖ.»“£¥U³fåLþVútÓ5ÊXì6BzfóBÞÛ+Ï š¾Õ{út"ìi d“¬*òv™¤šWiùI¤–<_Üáã‘+÷ö%N³þr‘jf°äŠY‘‚uHÜ7Qf9s‚ á9HúÅ.=—õ[ð¹J2‹ÍjmW, N¬Ðú{y^ç*Ÿ“ SҀЗOMÜ«>l»ãŒø Ïê ºéx 8¿"éøíS ¥hv°÷%ß2®j2éÌ/íµ:UŸa´,ÎÅìÉ[kÌî±nU¶5û3‡¦¤VôùÙjyûI·¿Úþ 3^$ÎbJÌÊ…âí#€Z7Ul;ñi{õ#ÖÅX¯¸’0cÄd;/'ñ•×ä³²•XíùäÂÅj?mK/«#ð×äËE济­SS®îQÄB>i0øÏçO™ C—Ò‘WM),o hÆMžÜq˾ó ì~ýK!‰ò¾á6[éëëǘyè.^X¶ Çb££e5Z×*P¨éÓ?-…±íG$Ϙ£^:„õ/Âø-‹Uo*j¹Ì¶ÝÀàü’õô ¶ívl¦^滕ÒtÌþ^Å|œ‘G.Zºî¹M²·PM\uT–¬.²ÐöÒoY-ü f'=Tß´ía#©b±}ÄiË œ-o`˜›s•ˆLŒ¨½T¤dw cÜW™+{Œdǧq$SŠã}»ŽO/ÈièjüÓRrÏå{•ßËïí÷áu¹ÉêÇå°…Jé¯ÊÔ»±0ì½Ô„7ÂFýx =âÞú¤<*¿oμ¤t® ÷#”¬Ò€ú„ {ŒHw1”q¿Ë#1ü /Q¿ºoÁ願½GâÊìÅPBáˆêÂYFXß牆E{VŒÇÏ>µ^ ôBÆ€FDì²È„,!X°nÆ ]1*ÏZÊHÝ}k˜otä+¾3uWíö6§'HS‹Æh«knvÎs\V­X¦(B=ޱÁ®¼ÆïñÎ>FoÏXùs›kï“Eð²¹Y!w¬Ùhí³•Íöû× ‚{rC’8QÏ$ƒúŽTþ¸r>Hçü`~nx°øcÃ(îíÁçãýÇÉ?íë¨lá¹þ ¬H#ïùà>@¾~GP@õ³+¬Y‹r‘àG'Ž¤Ž¿ü‘¹t8OÊ+>6ôkœ½ ȱªv$•¦Aä€Ýù Á?—

    x÷¯_2%+däT·íü[ø$ê=ÎSª—ëÏ<“Èž}{Õ°‰#k¬f¼é|U©ù· ÌÕµ~,í}Ëã‘Je ¥çX™I+ý_ýC€ÞàöJØò&BÐ瘸ŠÂ#M)å§I©©áW×>ó‘èµ0Þzß±û¾F—ÕÆ/ê[eÀø{ŒÜ2-·g¯¾Ûƒ©¨i•4»t»«æ¡±>.ÔrR4hÕšÕënF̽úYÕú‘Dš}e}Fsp2É—q6-3¨K’¬r¤¯1ÅJ³@T›È^x‡pmõ´ÍZ ¬Ë9›e‹\ƶÀe‘%–\šÃéx“²N,eâb‚H‚}/+¡.cáßé‘YRMŠcLk¨Èot¸äsæ—9Î\fõj§¥ :‰$„¤ÓU·‚øäóõkåí£;äK ºä°ZÖÝ㟪q«æÓ]Õ°8íc;áø,~üo ÉÜÞ²rwØèí77Lf(årNKV¯jòÆŽÍê¿ÏSy+CÖâÅ_Øtìf×âäb’ "½ ÷·hxÌ®cÈŸÕìgbÝNÌóÙ³k #k]’ .HÝ•ç´}@‡Æþ?Ÿ+˜ÏË£ê'9—ÉÉ%— <™+ùZJ¢ý̃SZ»=iíÄrd´^yhN²LÏ#)×ñîcž«©j±åð¸ÔÄbrÕ°ÈrøÌ`b!Çã®Ç]f©G‡x©ÒÓìçg32Õ¯«!Èó‘œe/ˆIéÔŠ„e˜E¾Ü«^;vK›å±9HÄ”Pº¯˜ôæŠ1Û#»œœ.#F²0IÖqÜ(y9ä¨$)P?üâq"B ûÈùw¯ÆVJîddu–f€êKŒDÿÚ¬À’—ª@;Vo̯*ŸÓÒ0ÜŒ'< JèOƒÃù,1³t¶êD‘ÏÂÓâAÕqñCî7ë¿sɃ³ŸüÌ«ðZROv¤G³%^׃G:ëµób‡U¹ñŠÅþŸ¯Ôã–G±[›¿G¶{`(^‰ e˜¯â¦ÞTCm¥€ŽB)øHÁíXö’_‚= %ö%Œr$q*7Çä¨Ì ª$‡öÅ xË21¨p£1 F•áh»2/Ò2ÌÔ¨ªÁÝ~b–NßÕ 0@¼©V†[=\÷š7ŽN®Â>±»v™¦p¯™SïÝ%ÇGÄøÎ\»(”£ËþPØ¡/¿‹òø°öhßTWó]¨¨ ½é¿ß‹}ˆ£ê½ÚAí'AÀPW à#àŸßù ü[µ¸P޲*€8èHã–?²Ü|9 üžTGÒ„ Å·’@ ¤„²õ?îG'žOÈøÜcadü@nH ŸSÉ^ÍØŸ×ò?¢>¼.¦®ùó‹»¶÷Úösž=T#6&zB%õF(­¶rìö¾’òòYÙ¨*n9#“Àä‘Ïø#äz8ŽÍÈ`„·äoö#ŽW–ç±ããBš~AÑ›–)ÓžH? I¯u |p?GÑ8ýµ±:žW“¢©`xQú ?¶ý $Ÿí(03[·ŒŸçž‘¹47C²!KŽÔí¿œñ¼’ËÉè ¨1ïÏùoØ?<~?ÁÿrÁ{ Ä`r¿?Ûçû^GÏç1ijÙKõâ6p[ä·åÏ$uàsÀú‡ëÑÓNSÊ„u#†‚ž$’Ù#ŽôŠE:¬í[o_áÿrÄ-¥n°méÞ¾œ÷VUÝ@ŠÛùŽ<ŽGùãçã÷ëU±A~W‚¬O,Áçû@!º“Ç#Ÿ’xô¢(ÆÜpTRyè£þ«Å¿÷ù9'׾Ɇ?‰ì°€8ŽÅy<ÏÇÉ<Cª>gý¸pí»øÆØö7ÏÌ`ŠÒ1äÿäÅÁð?dÏÇûB ãì_¹ œ†àpTðúä~LA'ƒÏÉäz h½»Š‹ P”eSøƒÀùøãõûP¼ð[üzÊGîZd’@ÛŒõè8 PB‘ÇVýuàËøª²¦ÄGõéÁõ³ïÛ!,£oªŒcr³Y¯k÷íÇšx·¹"$°à€¼Û߀OøçŸóñëÉ,29#Ûcóÿ´sÕ~Xðy'úñò}þ›ÇVä*–ëÉã‚~8ãḠŽ?Èàg^©ª?»öI#äŽ'àsÏ?#ãÐë€ ^Ôí]ö1ÿŸl’•/o«ÛéãØóo²M}"iJ—å€?ØÅÏÊr~"9øà>OÏ­ÑúðÑöçž#Á㞪Ãö òyê'ü…¦„rãû[ðþ1È'à––åˆx%[öBŸ’Aâö&,Š?ÇR9 ?o„UTè,O&By?+ñËFcA.”/mÆ’ïaïf+€áçj6ÉYÇœýnÿ’‚¯Ì`‚dUär9þ_ÿ;çýý8An à*€Äsû?2gãçŽ ĪŒD€™Gby)ÀõÁ$?GžÏ “ú7öhÊH? «ýÃðd?,Áÿ’~y?äú­”CÉV¸ûß¿žýñ÷Õù²a;à+ôóž–ee ü'އÿ"A÷ÀùýžHøÑd…ƒ0h™9T²ªêAŽyä@qþÇ҇ؠqÜô«Ã)°8àŽ>ä’~xõ桱Y€cýª)üHãôG rXò;sÇëÓö9Û¶0þŸoB^vK¯¿^ÉùH„qùuW¯„IƒÏëý¹çZ™J±ƽGnOaÈøãž¼òÄèî#O­ïVŽ($SÐð0øÿÌ 2’?]z¯??>‚N¥" 8ŠÅâ!Aä;—nK||«Ç’xxe%Íïž³C&9à/ô­8©`7=üý+}¸«[å¸cÚ2î̼ýÛ+†”8Tjà³F‹ÏTv–Ÿ&KŽPv›Án £ë0`‚ªƒù·Ãˆ–’CÊ´"s2ztî4¢}£0ò‹‹ïóÇ=¢¨‘$N×~Â7È7[PÈR(ǶîÞš–+"0äĆnƒùbr]PrPA ˆëÌxF:’qmˉLcÙòó‹¡¢ ÈÓ‹¶IQ6­«»÷ÛÍk‡^¬”¾£§Ëš_}“Ä’…:*ûd¹KÙaöUþ 1û8ŸhŽ«Ç Œñv$K? eVüð@Q3a ðìAËÞŠ“Âú4h­óXú±q)/Dzµ„Ÿ§ jqÐ[Xÿê,ñîÕT]Nßi c,êã™Z8ÞfeQî+F Äî£Èš(êtš>÷‰ÐJ&7»3m^}«ÞÎ3†ÒÆî.Ô®çckß‚ÅUƒ/n$ ®'x*ÁBü¬Écb¤àI`ÛA€õ^CKÚiv*ÌÅÝ™¤Gùu•,Ö95Á‚Aë~5ü$^€±ŽEYl÷^§•H{BÖ‡,5eæR ÑÍÀE'ZIÊÆH£™Œ¬‹ù™Q½µü9xŒÊBËk„Xã ŒXûÂÁ£7‚ŒghÕÖÆýïc}‰ŸM»tfÍ«s±íž{ ï7¸è䲡‘œr¼e ÁÈB_±áDAàÿ¸Ê=yZ6W1Ê‹Á‡Û*…Àü ]Ï-(_µYf ñYંuªWWà¤mÊô?ÃÑÁ?æjâ>"×ý?C[ì\ÄAßìâ° PþGŸo±Fÿæ«")ædêWîf„3dGI©”Áôê²=¯%^o¸ßïÀâJ³*Ñ0YoÙ¯ôÍp@Û^vˆ¨,2÷7 å¸‘ø”¬±¯á''hÙIèeg> £ ([öPárÜ å«È=ÙW)>>š·&žG1“Ô/»Ë«ûiÁ@²9—€v êÂϹj8×Òd $bXÚ c3²ÆÑ°“¨ì(d&i”ÄNå&ÈžÐÊŠ·¨1G§¸oy,<ÞÊ›=·à%R»†ÌJ³~ül…p#{}Ø{­ÕU{"Êòþ™[•O¾`KKÄ2R‡ô¿OÉenâ¨ì¥ËŒtpXEáöÝfûᇯS®“»1àÉ,€F襉û¦ÄßÇïr W” ÒZn&’xý¢=±ÝUè"Cà±³¡Ž2ܤP<‰hñÎîµêfF©åM+TÎøþÎ31Šš@Ùvö·ŸËפˆ‚LFs¾6q“©ÂÃ_ÑkÈ™<–ã¹ùG±¿OÒ6ŒN_Ѳ8 ÒËiìTUÊk#"Ù¼¥=Ž©”ß²m&\Údµ^ÄrF®EZ­+’Ü+8*±20v=ªÕÈbó<°âdvU•,(N.¯R²´m‰=â"hS¤ƒåÜ‘$¿n ÂGX²ÃÞ®aOI©Éò“êù£>©2®ªµ(픹Dîpç5­4å£zrž•olô‹ïU\Q=+èï¦é{6£ŒÙñ ÑŽÑRí¬~¼µ+ÕÊj›í½âõÌJYy'©O+-ˆ1u!IEˆEBg–[3ÊL{Šÿ‡†µNí¿ºÜu×­Ý£æõK5uiÆÅ6Vó.Ì9|ïrý™jd&دâ¿Ó±6.ô1•,}帚xù=1jÏfuìe`THÊ¿ƒÄ¥ ŠHÄ‘Td±ûÎÞƒ“V4’EËF:ÆŠÀàžˆÞàäSüUŸ©Ê§ÿrW©_Àò/Ë>Sšéõ!xÜ{-øCGœæ¯ó×Vo§)¶W÷=¹×åo¡l§”wÿ$îsù?‰MòŸñ´ìÍ©ä§Îà±>IñÆ/@Èâ­]ŽÜxÆ¥®]Å Î%qõa\Éä ´²Ö4½›än¹›,Íøï~Âi»Gб7ðu.lº´»65Bþ¶"ävñõìW–µˆ¾Ù,{‘ËÒš°•CxŸ«+²ÂyXú…êÀ™„ÐV„ç (²²2Å|s°¼Œ-D’xCF8øuVáH1{iÙ½¿p†ûH]˜¤Ÿü}Ìg¡¶—-§-R‘ódJr%+*Dð©MÕWÜÁÀ—3­.›”nE騮œ÷qŽ9Ûµýá6 ±9Y7|nwjÌ6é7—v×Y|“nY/#mU6Ÿd×±ÉëUÁæ+ÇB-KRâÏ“Lƒf…íb u~ïGø]ø›œø(SnòþÝRä*.EwÊXjøªµ¦•‹® °Mî»2]¨$¦¡% ÅÞ’”21ˆÂö`­ËªÄ¥Ϩ‘#ÙgŸ¬²ÁpšµWìßЩV¬ íž(¥;ùuöD#ídíÁh{ˆ«ƒ÷®[å}$y.F=I¤Ü€}M¸7Ù«nÔ¾ü›æ‰cQ0ßžçÛ¿ÓÛ>…2ûŽÓklÉù‹mXM®­{V4ÛV2•ñ›¾[KÉ`+¼vÖ¤lÇÖ·¡W‚¸´Z» ¶,Å -¦Ýü_ŸÎéÚ½¬mšÝ –SY+oßúÇFۨᰵðMWk×á––+XJâýkU,Åg “XR6(x6 jTû{=›ÜSÞ'<‚áåÁƒ$ Ï$ee¼Ý-U"#ÒlõŒ3WeÕþàòÁagi!£™ƒÇ ”§DjÕšLŒö0»K“åkV$æµ’ʬ¬Êóó¶xæõ—NKŽO’›ª¯'Œg¿óÌ}`²¯¥IwsÁåÎo¹KœÕ,ÉBldû•½î<{ŠKkSS¯O-e±Õ±y4¹/^9•VäýJ4þõʺƒt³Î¸ß e³“^°¸ªÃý}¦mù=‡'°é™ZÇæ ¹Î×±Zó{­z挅LEÖàÇ Y:€ä…ö¹rXúydüãb;W±$K5Ñÿ}‡ÑñB¹ KÕ¥bà¸‘Õ ŽD¤IÙ& â2ÿjYfÆ`ÀSøGK«ùVÈ'©k1oÀÙ”ìä® Îs„EEj¢ª#CE€Õ[Ùâ‘b>•.ëólɪyHâq¾L‹3‡òåyuÉi¾ÇvH£Êm›&ÿ³.w{–z3ÉÓõœVKÖñ㜅L½ä1‡¨YŸÓîéQ7œ>³¶ã5ü|¾_Ø|­Ç¶ëU77l¡½Ó«kc×7]mÜ\µ_“¥ÃÛ­-|vä"ÂÒ©¸3GV`T Ü?h¸…ؘ•TF$ö•¾Í]Œ0À½¿rÊ[ òÙ2¬d§H[«:¡*‚yF÷#u ˆfp&’e5e_µpó“å¾\bßLdÈ©oÔF-•Ø"YúW øn¾«,c%Ž=-›ßwcw%&)6é2ί‹|6¹æ ˜ÜvݬÓÔü©¬coM°b±ùËù¦‹@’Еt Âûa¥©!š‰ÂE Ì\K•y§9¯ô™}uèõéü¨Z _M>;ðóÅ«PItýF_ c¼bÙ˜36Ï›©9>Bˆü´Œ^òD_{7{§ s<Ò¯_©é_IÛnåýÜøã9?¡‰2™°<¿q!¶˜{ÓCg^©zJYŒN]³(5á#ˆ1Ø噬>V)RL„óôŠ„õÑX3×kú=Äl³xç1OÈ,ËâLVÀt,¤8l}šÕ·K?R^)úšÕv|Þ:u ~–|ñ.s1jvqwîGl†0°»â„!‡qÉö¤DòK(.‡ä‚÷i“q8’˜É$ç®±F£ñNÑ´”{«(‰CGë$ÓJ§š•ز“÷ΓF Èò<„l޳¢VØÓŠ¿ß¶px/7Í(º˜*®%SFöýø©߀¶?‘üy´ìÛJí4|Ç”<‘s;6¶¾_ÉMZض«WS‰*`0XX,Wö˜5‹¬Ámän$b7’>•ô_'`>£0Yì›×É}@ëw0PmQãhØØücatÙõœ~{Rµ`:ÿTÀÙhöXl8+F[Õ™$âÙÖºGØÆ‰ížÜÝÉf ²°fŒ2ÿd†&iA4BŠÞ·‚„,‰+Çu Šæ3äL‚·@¤JUiȇeúÝï áVØòœœ4Ý9@žŸ__L•„`S¨Ø5»‹sÂË_^Sê%Ó"5p»BDò^º[Âá«â‚羋0o™òŽË[aþ±&ï&ñ¶cucJ†?)ÿ¼O_7•±_k²³3b—?X^ÀÒ¹‰jÙr/%h£Edé_JþcܲÙï+yÉYßù;3s;†ÇJø­K/šƒKÚüw€Ðvj·éc úí,ª®¿Zæ¡~¼Óž‰qD–c†>™µ ò©“¢ñÕÏg“¢3‚CâG³²‘2Ø )TèGÇW@{D]C/2J±¨.Œ¬Ìñ"¢ŽŠG¿$|}¼,—«~7'9Èr¡"2‰½1¨²Åjn=Af*îí7µçy¤”YBLƒÖŠô´ô‘ñ&¯CŽ(6Ùô=ƒÚ5¼Æ¥“ö*ÝŠ¤xü˾3qÒm–ÜEOÚÇ–h(Gß¶’&(Ë,>ßÂG$ú(ÂÞ­v¦Cɶ#M‹*añ€á¶='EÖ4ì~z ±‘”†Õ}G “80^âä…ì¼^{«¤o'K;s!@ñÅþTû¢’qÀ‚goþ(²‰,,`ðBEüWÛ~¯Ð(“©N¼;JW±¯"±ÿ¨’ ËVn¢1;–ºä.Í2ÞýJ¤X´Ý÷úv ¾*y¾n©˜Ó±R]#Í»ÓûUOÔþ–(ã<˜óÓ¿g¶*îÏ ¸æbÄâqX¼«nzüšÍI1ØÕFuŒ+ý¾(òæì|Å“yå„LGÒ#k»n¿·kbØpõm/©ëG­à¡½^|_Ž5VÉå§™{=©jñl4±Ù(Š›=ûue“ú=zp%Ô«J¼°¹™ÃÈÙÝÑ“¸'‚f™Hä×UT@®·luNW…ÑH‚«"R’#ƒ~ÕG§(u¶Ò+§sd«ª¯!`ì—ÞëYÝ®L˜¸‹m¹Ã^saFG>œ%@»Ôû‹Ã7<· >;/ëÝÿ5Q~nÇñ/?¯B¨ˆ22H:Ig=T"2*u+òˆG ÷<fa-?ß­"VWâd0I;4¼®+F䭸؋ÿ’ Uý’U l¢ÄZ?jF  J)*¨=ßú¥E÷^ÃöÁl¡‰T2+*–ïôQqwîoià„e«‹N×Ó›ñ‹³±õàW“Ü–SÑœq"(äqJˆ‰%‡nD~kú™ ñàä• ’[»8ç¹PñŽÄ·Ê/¼2d ,•ÿçÖ¡Y‡ÃþJöU‘cQÇ1Æd‘»£Ìý~ÑÀo½oà·GÉ*¨g Øõ Á™·ØÙ‚F8Xåì³Ø(ƒ zµÚ^Üe[¿ á3kN|Þ,®çºÎ)~ÝÝ®ëï|l…^7I œòÀöP„ÃÀD>=Ö$@v_xÕ–v`¬ªB¿ñùgVb}² yHæ§OR9ê§“ÉäOÁùƒ%Sô¤ÝYŸþqÉ#ö9?ýFž>#”<‚…dä*=@^ÍÀ >xÿ?'ÐF1À`Gä~‰ìÅ›’[ÿ!ÉóÛô®Iþwÿ>üo_6äÚ»m[›ðŸk–‚UË´2_€=²X|8(8ù<yù>½ë»CÄr#‘º§“ûá[°_Ëþß$…‰nW=êØmõq¬W;ãs5ÚêÿÏ¿‘úT‰dÿáBÈÃÛ—ë7ê È¢c+Fm(‘5uäÖé ¨©Ïܱ‘åá1êÒ8@…×Û(8ü½Ãg^P…~AOl…Ãÿñœü@¼#±³é#'k¿TkTW›î~´þ£X¼ô¡´‡®Ü® .ñNICb3ü“7+\…®äÎØß<èœóêx"xÓ)µE6B°Õ±¹­R|ìW ^ù:C“q²5QLó×H›Ú®}ä$z‡jÊ)Ó/N?.õH²Á±!·íÇÓŒùÎiõúu%)Æ:lºN£*Uµá¦ñžêÉ Û²Fæi:Âbd1ÅÀêíÙz«3!c—†¯ 7€é'oGEŠ„# c*œ1,ŒÃ‰=ÆUåÑAÃþî¡ %O ­³æÁ€½J|ÈMŸþ‚×f²bxýÊà´F¬€¥¥ÒˆÊ}»ÆžÅE“%ºÕžå1O2i;°¯%úJ¯j…Iä í[ž¼h“)÷™{uÞÏT‘zpÿê…¨~[‰n …w=òÓ•ôÎ]$þZ¥Ó)]ìZ^3Y»´„µfA,Lb.XÈ©Ø*Æ+:!Y¸„ÂB»TZ½è,°ˆ>áN"N±õ•Èá`–FöëJ¥¥6˜C ± ôÞCоN¶ L¦«_;’§g#ÁÏ,æOBN¶ïã°rñ‘·F£È©x+É^™+4ó#I×ѧÙsH¨öjã<|F[MÛ»ºv…[˜¹-Ýy7 þ:¤8çÓEÖ¦D4Þ–šÕÙDéì¿]®ž "®s eƒ›À™wËÜǶð‚ÒJÑ•91¤P‡”üdf‡ö"«L€ý“‚±ðO£0Mi¥b}¹[íÉ*…yIXLK"òÓ bôÔŽ“@%ŽË¢’qù—\“ •Úkn:4ºÎ!²1æ¶…±ˆLz²û929hA‚ƒÓLS™Ü%WŲ'F‹j^qÖw˜-ÚÑ·î0c%Š,…­o#®g`Æ?å"M”j3Èõ"3ïÇl@–¡G¶’˜¡˜(–¤Þ‘4º§¨Ÿ61dU2º)ØvúB½.©Ò‚ü¶‡Ò‘—ßÕ©¿z-jGÍ›¥@^cJaP #’Ô’sn8û…*x r2yoR'²½âVHF¥2„ŒcÉÊ~×<4üü"²³ÕUÔ<í§y òÐè›Ç÷{8ž®Á¯’Öó¶13,¯$‰y1ÆetYAQE4,Æ¿ôSÉ*°ô­7—°ñͰֱ³i5îj´N[l¨Ï„µœMÊÓOýS3œ= RW©4ÐÍxGZÍH-4ÒûõÈþËJ=}#ÄŽf¸ê¦1¦°Úïó]ÃÁ²gªq„{ØlN»]©°åªô [ª¦ÕL…‚”²tÿê½áǘÖ>¬<9XSŠç›¼7RÎN¶2Î6µ‡Xû«µ2õkZÃOUd(ÖáÉWµVæ.Ü(W#BÜQWWIa˜Õ/†ò >šP?õ1Ê~`¸ž«ñÞÌåáÎs^X^ÿ%ù¾K²ªÞXòž·&B#äÊ¢q04¬`–üÒEã€ñEý¢Äqóëx<Ÿ¬ÃeÌ‹“„ü•éÍØJŒÃ«>£ c'ð’» #$>ªþéõ£h6êc÷#xïGÉåa–Ö:žÍw…µ‘¬# %¬lWDFjýHe ·°Oµd€R2S¾0Âá0ngËþ$ÆëÛ…„­«l7sÚÍLVËb§¹éƒ»!-rµKqØ©k"á*ãï‰)X³^U½Xü?•#Ó&@¾®f"ZanÝ †Á‹ág˜›pëI>”Òš)YY*Ê«k<\ƒåÝF?øóöP•­+¨rÖÓZÃî3ïz==G?z,Ñ5Œ=={3w5`ã1crrÅk-˜µÕÅIJ1–ï¥0KfÃ9xå › +èhþàyUç5Ô¾±?)òRÖ°T­p8z®ÖJo)ë¥$íT²‰ T¡!DêÀF…¾=•áàb”ÔóÈô¨¾ZÔÂ)y.¨,±(5¤^Ç¡‘X @ ÜññRyõTòž{Õ0y<–+¾éX¬Æ#­ãòÔ2âjÛÆäö#TÇd`x}Êóle$WµjUâ’´g°öcÏš†»æv]çÇØ(üy[.óbÆ›éÐl‘K“À 5||¹êѽúdB×kô¿IlÈ^53øw-M#·ñ+ÕÇ27]ø‡5¯BõŒª«JMÝw‘œVëôâÖŸ-jœ>ý‚„þÚÒCÄHÃÄÈĬA‡åúø$zÔùwSVe?ÔI ü°§(F…z8øàD%í Òd¡ŠN‡ªË«yƒ¾á(ìú6˧mÚÆM=Ü~{YlÖ&ÑÀr–ªFý'‚AÖÅI’+“ŽØ‹©ôÚÇýHxó5±ìš~#Êž/Ím:} ³mZæ'+­drøL}mån^«É·Œ¤Éد%š´«Æ °кÿ åê2B$ÏMó:³k§&{vðq#Îs7B½/ª´[3‹õ»z«²½³»åý\ÖV a1+“¼aœ#–ZCȃò1Ÿp€ŸDÿæ~²bìbÈ(–’V¥1ceNá—•(ÇûHçñ ðGϪÝ›µËi‰[rÓn7‘lÛÇâ·ô‰#ÝìGFKV ÕÌuùËI>)®$prÏR-¢‘DÛÍúÚVÚ,®ý¥%SõelaÍ}1ªWÅ}‰£ŠA‚˜Ab»‰'U0ûßh++ú»Oáܼ"ží½q؊עÿ.vÍZÕ\—5¬Õ²T?.“Ž©4ú¬úâ»pþËe)erù,”ï¬ÿ» Þð‘#Y«Ê;I?Eü¢ø®`í/Ë(ôš$ª?¾X”IË#i©BÝ à'Y?ùÇlŠ—q¦f™õ¢ù]]Éž4ÝŸ·–\ÈköåÅT´…"½¬¡l×¥+ºÆmþÚ¥ƒ¶¬Gõô™€úœñŽÓÚ2zÇ–¼W±c4?äÜïâ3åøµ„¨íXÝÎXUƬ¡±•ƒÝª,•'hØŸ[£©B=2Ðé1þ|m ¾Ö÷kj»®Ù%§×&Lu“qùR*ꬿHß×~_ÑÚHúŽèåfFP$¸r@Œ¬’~Â’ØôI¦ß›…õäš³¨14OÝ{£D®•ÄeÈŒ¢Èd`Mh¤â_}d÷¸ˆ¯1Ž/ê£Ã»,öC ædñÚž(åö»°e5Ù±úþîTÙye ‚´ÉÂYšÄÓŠÍæŽ»ÎeE‹ñsÈôÌiïE,åYlI0q ˆŽ% +Õãø[ƒü••¬Åo7ã7>˜x/ªOm·2xOÌ~-Ø/aqY\¶R–#5®ÞÈcðø(¤¹šÉ5E…$0a¢«-œ„ȲÃNœ3¬¨e@Ã:ÇÕ/‰·|¬ø]?Ìþ&ÚóÉ_'“–†-‚»f}XÕòY×í×ÙÆÕ­í·<ˆ ‹Ó"(â|ø åÛ, hå+¾÷o¸.·†¨Û¥+.©¦±âÌçjÌ ¶`&3î/©íXû±ðÌÜ2JÜ5…~¥’d¹ zƒñaÈOr "xW^?0èÒ–g~9c%#*¼„bÂSÄbs¶+ÿs-(‹|Ñ(bé"2È.‘t¾,ñÃÁ¦ˆ*4eƒ"„—«'¸ ¬DÐG#Qq!»ÄÇŠì[ÒdQ»´Òö`Ïjg èèÜ«ðâR£¨e$%©#åk8íì’›óö­YÛ«m~EÐuûÚV¹nuó°ô$ÕuÍ‚iq¸LÆqlVFþŸ”·NÍlU¨ýËyi › c"/fŒ¿W^ƒTÀïRù×İi<—(ë»HËa¤åíc8“!GkíkôãâIhY†¼ô ofxZN¤Ã_£Ó)hu7®c>¬Õ”ã;§j¥A(Ç[¦âcNMØ1-o=€ºjšâK…„+"I2¬Ì­ïÆGyÿ x8åJ*¢š„sn!AùT$2G*uWpç’¿¸½8ìò;€ZfeþûIÊÜ‹…‡±^B>¡æ,O‘0°íºÝ«îÕ«6RƒYL~Cfd‰jʰ[—€¡•8î¢¶É á+0åÒ›Fl¡1ËExD½q¸è‚­PT+¹®GunV`³F^DAƒêÇæLê#§1­BFL6EU¾/'L $¥8‘Üc“aÈ•¾hí^ü%4ªU92/@B‚Î+ûûD$ü;ËN>}©j‰É÷•z+ç˜Ê°…«²38Ÿ¼C¡I¾9…@+^ìƒ¼Ì uÒÀÙsîÁ¢d^Èá±Ô[ìýÕ£5ù*܆ZêL†TK­Ä!—ÐK¶fGoä«Ð¤Hæ\}nÐzÎhúzn‰jÄ€:uZôC~·+YÄLRäv½±ÀM=®UA]Kuµ·ÿ†®í@¤L°«»ä/ö,zªÊãÙ ÈìÝ1§ð©zÛxÛ ‘Ì^ë8f*U¤è¦U¤U €„°´ÖuQíéevœË‰.TEŽ3„ÅcùV³*Øè#ûaüÒ‘rRj½¦²Âx•HçkÍ«s÷ŸqÄ’”©DfeS §’Ñ[#þ­@‰GoÛ1uѦ`¯^k¾—5g×k6R:`zåNA`ׇî©Þöx@’ª‰îäIY¥@Œ$B¦RüŽªªýç_â¬,CË÷!믲Û<¢bëVXÒ¡Τ¬ŠÀÜ’ 'ÿLGÅ’IùôŠ›6m»"^€D¥ãáqÔ2¸î¨ ×`¾D“FÇkå×Òæ??c#[i§mêM]pmFª@ ,ªX5Xý»ÔÝi?qêŽb:²Š1HÃò¶Ó=;¡‰óXûa}"¡R•ÕdÆÝòï[ÕÖ.ñÃ_îàuçºp\q*0 öò3¼s”GïiyŠÅdz–™õå¼Çâ<.Õ&™ò>ŸŒÚ"Z)k]¹›©O-XäaIñ©v .‚(îDñIDÌÈ`†D•ÿ\úw‰£qöðfeè…ÑO¸ÊÇög^Ö _âÅÉ*[ˆÈ%!yÅå=u)ùë¶géÇkòÇüëÕ|}ƒÑ&© á3ºÞÁ–ƒR­ˆ?ÔwlŒ´x𷉱c&Ȳ¶6kÈ’Ï¥æÙè™oS}Q’4zGÕ%éìpt4ôç$œ*….UZH‹'7E¯¼ "7‰ÑÄLÒ’…Œ^Ô’FQü’W[F(íK6%[•ù®Y<…ŠØ„÷2W`£³GU$¿<0´¶æ!"€<ì±Ënwa„7"­i‡–X=ê‡åmS–Îù#–Ö÷ W[Ni<}?ˆñ(¹Éds&W"ºý>v)Cíâßn—tÉaëU°)Öºæ.ÍxÍ–1žU«6µ­ÖšÆ—Õö6Gs?{r×çûm}q:Nþa«¶à®œ¬XXëáïÓ—!¨úïƒöí?é «cõŸ(k^EÃy¯aÁf²˜BevŒ_îùRM“!|:ä¨e6?luZ96jZ¶ZŽn¾=Û/Žy.'¶Pçµd¯áäT°Ô­…tb½GV÷TQuoø=8‚ëFå"1=5Ê÷ª.‹õ^SޝdsØ|2î[3{ŠÄãhœ•Ü­Û V (ÚÜóLR!ùíZ9Ùx•ºKøI–.«æù&„y=#Èz–ϱ’‡ ¼.Z9a›9(f‡ÿØ­;ûnþü± ŽTë˜ÉaYÆkÚ¾Š²Ø×Å{{;o{ñëçe}Ç=«RÝ*Þ©›£’ËÃ-»YÄ£Yì6µœYídàÅAб;¯IÂà|¯{x9­7ä ¾®ÕãûùÉž5Öüqä‰"Çaï×Ëa6—¤¯OÖ+¼vkf¬ãêI£bã’rþŸ[œÕÓž”¡¤°œ#$c&d¥À'up®ÙÓåôåHêj„á.˜$¢F£Wfer» Î1ã¦ÐC)Št˜ËüÑ”’3³3š¸C/%LµÁï]ˆÈ8 ?Èbh‘Ƕˆ’I(pþÉ Grå?)#d§/mxhqÏ®8øÖžá·éºvÅõÖ3>úxØ|Ë3¶ýûå7,¶ß¬Wò¶Ç¥ekZ¼k`òuâØ%¯›Çý¶/)…š8q•c¯”GóVõ9Ò<ƒã­æãþšÉy²ï‚6ê9L¶Ó—KiRŒÞ7ÇKn¦K6ÊËháö}®kÔ±Å%)1—©0øœ¥˜rú¬o§Óœ¤PØ ´\¢S¿\Lƒ­§ª%¾*ï5y9Ç­¯“ÅZ›# 9 ÓÙÆ\2•!°³\Ç\³BžZ­[‘ÄXÅ— ‘Ç伡ð—)^½ÈYŒÀbQ3Bü´‘”~ûvÌMû­#×?(=rïOÖ÷ý@ùsË•40&—¾}Cé^GÈbqšõœ­ŸQØ~<'«Ò®6Ed©gå½kzÀåðÓNfÐÅ<>äÖ°ðQ)j'úª±áÓ—ÎMæ žB×>üq‹Š;ù«z}ƒ)䬭%-\,â‹3ºUÒlWŠÓ}Ä6½¤öð“Ã9Ž@ŸŽ“ y]^¯T˜—ˆ•Kq»EÎn'á Ê1޼Aé:¥JÉ¡(k V=ý—ŽÔ¼µYÑ£êýX*²p©Ì~ÜÄ•%T†@x® Ð$8/èõjÝÛq±O6!hl7Û7.ªžÛ)…¾ Ü{0±÷Òu2ˆÅ"úMÂn¸-3t¥¸XÛïâùdè+½`&×ó5x°Øˆ¯R‹“Ëfsu1£d‡5rŒyœ‹Bœð_…ý“ Ëã¨!“l£"Å"$f^’^‚YŽcåy k¯¹uHUU`O­N«©ÈËUަ“=9!‹•UŽþsn*Ž™§ÍGOª3éÕ‰Ô_L²UUùGÜóÄø0XXæ‰ÛŽŒt<ŸfìñÃ!üÀ’œzV}qÈéXâSÚåDÚâ#Àøê‰ü• °n8ôjGâì¬Tpy•ø$pGˆßóÃ7?àãÛ†öãŒÈ[—zû€)»0㯠O$ŽÿÐçËKRr—ç—jõÉÎ6Êýý¿OAF}1AÛ¦=ú{Ó]ßÛ‚«‹×Sáq” |óÊ×ñ%z7ÉçÿPñÉ ~ú^\^HZ,v/Ü-#ý¼a¹ƒæ­Ï Ðv&5…'ä|úÛÛ‚aDü‡^nKì:žÜóÏžçÐâ3ÕŒqF?ñtN[’A·ÿä?GŽÛÒ¦­çR}³×ŒV,JÂmŸæ&›š‰FNœÝŽ0}ó›a¬a0&dTÅcðª%Hùh™„ÎŒÜpŠff”’GÏ×ÐɆóHSDŒÇí¸—ÛêØTO|r?>–BFìW‚½•zžT†!ˆ#Žœ ñÀäbÉ@'©<–ý€>9Qò~9íþ>>?^›çLŠuJè[œ™íÛ?|^,ü¨´ÔQÎÆk½<ã„úx½y`P1ص?nÊ>Ú Z/ïU=¾D}b¼rçžÄž= ý3Ù £ŠiCHÑsU«K³,ˆ sËÃüLHä á@ýúª2•hâWžz'Ž"zóÀëñøóñǯtžb‰d^¿!TòÄürŹo“ðG<üú¨ê}_2e»u&{>o¹Þ±Ã%X-é0⇠oéŽ5û †?aŠZ& +ÇϹ]zB@?£ ð±óóÇ!•¾}µ‹ÃLªƒpU׿¬,I”–©÷òøáþÒ¿ ¢ +ÀÑ’Á—§÷’êG ùççãÖL1r:Ã>ØQËu=•€ø$‚ ÇÈ^¤Yê%;írP¬cÔûá+ï°cA•^"V¥«ºÙïæ‘S ŒTÆ3Ý'}¤1Ê1 ú*yéÈýüðÏ£ðã0oQ!|v9RX^)`jÑŽRYCʬ‡äbGËuù ׃謭Êõ„ãž ä|Xüñúýqè1 –`ð¨óðÀü”òü>yýÏ'àziORXù’«;¾Ûžõþð„#ØÈV킽ß>xãÑ–«‰$3V Åˆp xOF®/ÉU.‹ñׂ@üúaí#±÷_€ü| +ÇbÜñÇÿòïEÍ~BÄ}—UøîÈä±ê¤“ÔØRxäü¯©–u$Yåö7î}j·ÃÁ¢ Wlmíý«ô³¾ËdjØô@‰köðrz0h”~<ùAñËp~~AÒZ¸ÆŽU1ä22 °Ÿ‰{=øQÇ»'/")<0àƒèc¨bB8ä Žyãž¿<†ýú<ð1' ¬ˆ@nÄä|f<žx³@T@>Ô\÷òû^Ù6sepDˆz:ž÷^Áý®ýŽÜ%GŽ C°£D÷ÊÁ«Â㺂©!N¼ªÿ(8!ŽÕ¥GVztÊÉ ÿ¦…RÄ•/<y¬”å ‹)^÷ÔÚb¾½¼þüWQ2Và”RûåÚ¬ÆãŽ5\HpEjE›¬Š>ÚC¨XþŸŽ ŸÐø` #ÖŸk‡ÚR?=ý¼|t·E99î>y'’yÿ׎5<² ðh€à„ãûØ‘ð[‘Ï<yù6ÑDÄì~A!IƒùðG¯üþýTõ%'lõ=êîÓm±w»Û‹Álî…ï·{}¸ÐÅen*Ô<÷û0åÇY!ÂUÁä0<~ø!ئ“•JµÃ&¼#á?ÇD ” B“ÁXGÇ¥V öú)ûPœDA%¸'ç¯<#ÇR‹$!ÿ‘,O€?'€3ò;ß$Ñõd$Å»’ 9o·žôxúð²éÅø~åÑ_¶¯'n*Ô+Õ—ƒ^Ø‚n¾ÙÐä•ãügí`_ƒN&*Hî+Â8^;7 §>Û1=ìHb r}X±ìQy+òeqðö“þ?ýcÁõ· ƒ„– ×±±CÉ呸eã·ø?'ÀšÕgؼv>ßå¼#ö+öúíûw;SÁD¯ R ¤‚"›ª åBqÉ7'§ïŸI™êœmz¤®' caKÉÉ"’Áä)ê?"Ý@?.¡aÐü€ycýœð+<ÿpýÿìóéµEûp5"šS³m96ï@}ŽÛ›ûײúʈ?Ò×™ fBÃS®Ò.¡Tä(:¸å¾Iªv÷C úÄyõÕí\3êš«–N¥¬1—žÝË`1äÈò·äÇÄüxõʬԖÏÒ§™ý®†ÀÓ¤(ÓÄwµHÊæ3ØHíáó\ÅÇ>º¯¥wÿEi Ê•f¡ËõöIÿìkÉèI([Ÿ„=ŠǓǫþ3ÿ¼†oÿOßÿºŽ,¼qŸáEòÒd?ñF»)ËGíYáÄÄp¤– qÉbKñúIR~?.GŽ9õ¡N º'èrxnHäþ›Ÿ†$ŸÐøÿïzG‘‡ãì¡ ÿ$W–$óÏû€>>OP:¤€õ$žÍÔòÇçäØ'üÇÏ×+އKUÔßš?ßï¥W÷!ÔÈÈò’n¿‰F쟾K7öŸðW‘Çú÷£“!öå&>¿„Ÿ?Y]9?¿ÈrõëÞ­‹ƒcosýÿ×ÛˆD3n;öÀ/œ÷¿5|„úM™"ÉýU@ýÑhýp}EW™¤ð²K±V¶_¿öû!lÇSŠáby3Ÿ\íðOÑÞý²g¶?&æRž‡¯øãêÃȾbÕõ¨|d1ždß2šå«óàhÕßnùô­«!4UÖœpÏÕØ;‡ªíë¡_KžùÊý`E,^ßÛýrýGÅ=R7X3xöeYÌ=晹-¥K ;<ªîñDdµL«IùB£4©ü£Ž9]UЕ‚WC6LVUH¸ãÑr¼”9®Gu$Ô4±]WrÙÜ=;Ó†»•Ç™æç¡Îó„)u5iTV1s“Ô9nËkmOpúÜÌâüË>çÕ&%¶ßhyÌzæ4ß!M–Ô|¼|â”<Àev½c{`££\†¾Òº´WuÖ©VH±sÈ1V¥ðG†3"úñòêç3~uÛ±[wƒüzú¾ã²Ã—ÍêÛ>WjÍí¯ žÚ  ºý<®¹Ns.­‰½f´‹4­NfÈöýt~§Tif÷Wy£^Ì]˜”}³#“Öh«#ôKŸöpò´˜åVbÄ*_•„H®ªœ"7^¯!,ÒF\7¶²pª˜HEÆ“í»DlÑøWÈÔ„ÝijÏOR3Œ¥wFP-ꥦXÂ]q^·Ä>d&CJ:d¡Ñ(Æ»ôg¨.ý%]îÎ!ï>$úÇÂýoÑóIѰ»Fë“ðOÔ– LÜ0™½–î««ë×Lu|{‡XÄljշH*ãqÕµ­aí4;…¦Ÿ#vÒ1àڡɶL’m?Ôr_U9\zj>>µ¶\úÀ_Ô°ôüËs‘EÂxò¦ÁKš¹O’IW-—£ O­…L]ùd°ô}ä-ÌNß.OR8câr²r!pøÜpÃD˜îŸ—%žb Hd• Lù¤äÆXDŠÍ$*Ĭõ¢*Û¬ßv°‘ÆmÑø|´µ¾luõ$3Ô› ^ ×~¦ýégÏ:ºD(¡’‹š‡H ’Ò-Ò½¨xÛ§øçx¯ÿÏ«-/ípmÛwÏéíR=jñÏçW1·[µ›‡’1V)šé]ØFTô<šù{ÁžKóEÝo¦/ù7éî|Ðeÿù5´êÒx“æ-YÆkÏCI×ã¶ÔÆjævLÇBÞü±ˆð‰—-ݧ6^‚Xïø°ZYGpÊIv<²…R³F]—²€µ¬¡G¼ÝbŒBTBö-ê #eåeEs0xã•¡‘Ñx“ ¿ÃiÇ÷¨ÜY¯ð¨êš}Z³Œt´£ "uLêRBí–‹ÕXJ\/ˆKO­ŽœdÏQÔ§¦,˜¨Äßòã(4ÖŽJø[Y­½ýN}:nþ úkòOÓv‹â_çõŸ;YÞt^/¥‚ýôµßÔ¥j:͸eðyºÓe9vjbcNlÞ­¢^Z) a¶H#Õü³.µûÙñÝGœ.3oœ¤t"¤ÒÆìãÔ•˜ñxðçÕ¿~ëÃÞr½ãxòßL5|vÞ7úlÊھѦø›Å¸}C7„|åÊO¨(Ó§G]µV·ö%É"µœJ(ï°›«ŸwÝÌŽ;~r±U=Û³“‘¥êU¢ácO¸^}z(u"YäVŠE#Ö¶}ÊzW”üOåAôiä<ö›K3&ÊŸHŽÇ §¿WajñKŸÖµ|,½®ì²¢ÖýE"Hr: õÝàzçÓ¾µàíKQÌØÓ`òׄµú¸½#bÌú~™®ç⤛ ˜èžZuµz0SÉɱ؂d¿nXô3ÞE_˸1¸ Ü:‰‡ ÝSÕån Fä_øûâ 72 Ò¼G©TÖOmjGÏ.ŽáÑŠ3ŸfWåF>tö«)«(sf‡Âô´áÌh’“󡳕‰ 6=T ²Ö*ígÏêOSKW¤)ÎA¼z¦QçµÞš¼Yó»¶ø?êšÞÓç,Nç¥íùßõôOGå]c\Ÿ+Ýõßç,×É«*“crskZäÕîl³$ï;Ø·ïfÃ*ú“¼»à?&Sò7ÖÎCȺ·›üåŽÉy'þûLcÑ4õ‹fÊÐÓüsä*9ëUÔ+ÔŸåj^0»k ¯eubÁZb ™A±3çZ`°á„o$o¤ˆzð¬SÕʲ<½UàT<\‘ž.ëéM¶‘Ç“ø3Kóî(bÑ‹*ý¼{ʦØ_ä¸LVñÞÒ‰ÌüN©ÖÔd»­ÐHþm˪T¾®4Ÿ—§ùPŒH‘b;§MWõD±°ÅWs<Óú2Ô|±?ƒüý…½¥ØñÓí»žçcÅ;ŽKDzøkcßàÌk†¥_"í>9²ài¶¦Ì2À¶ýªQ¼‘‰¢ƒÛq)ªÞ+Ó¹Ð|3ášA>GÀù—Ä>;ò®#Ê]Úp9-/_ÓòV4;x,ÎSZÝ+EîùŸ#æ,í”L¯$—=ÈŒûé6Ä‘wmJ§+$¯$ÓžÄûqÊÌÈqî¤fhЇhÔ}»Eü„H¯4ÒrF,ˆ®bEgu…§ ÚE2L²ÍQ¢—Í@XxÞ²µøl]= ?𦖛¦ÉŒVQdJâ"Â]X%¿kÇCe=ItÌœušb›:î•ËÔw® é¾+ú„ñ®'þ¾KØ«ùOÈô¼S™ò~ÇoÅ#Ç2áíøi)x¯iO'+Læ/ššéLÒBr®ÀÕA2)1.©âOªÿi~U}ÏÂÙ[Õ>³~—|•gz‡HÇm›–Ó_Ï8ÉìK¿àF)"ÒöŒæµ–‹VÈãD²R#]ŽYZüVáO£KœÓ°÷_¢ Úd§fÿæePò "¬àÔêde>’âi +lZ0cä5èA‰B´©0äóöžé-èRëUkÁ4Ù,yhÞb5 zcÝ’ Lw8±ø¤Ž“äéª$³VêŽØ:e%Ù¾Üpg'ô‘ç¸W^ÂáñM•Ú<“ÿ'x÷YÏk!ñm/nÑbuÌ´Þ?òNWEl†osÇÒ½ƒÖ2YéjäïeûÃV1)b©=+~Ükî4ƒ±ÎÍVÄ/º¢BU‘#/íȧ¼Ý¿•b¯ÉŽ{#“BS߬ z?hÃfe•D… áQŒ:«²ž²Jˆë2+™}#ðXE”c¯8ž×W m÷Í ¯?z´a~Yt†@ÀzœSnü|ôPÑgÜ~6of>þ­¶+TµŸå6jõ<)†ñ¾O GMÙ01fnxÎJUß•s8l¡­“‡JÊE%¬†; o+n4X't¼ÿBø-ñê3!ŸÐ/ëúžÇµ­í/~ÏøËþJnT˜iÐÑÈæ³=VXêÁš(pqì JœV®A%xNݽtÂDDVvN†IdyHþûÈÊ}éãàÿÕ¼½ø¹H¤±ú3Jdä<Œ¿š4ª’ÉöR9&)]aêæ2­Úô’BÙÜz³—øaËêGSç2é„ jÉF²ªúoõÙ;¦·=ó#(`JQ™&vbD°tÿSwµ¯2 ð÷™ aqO^zM§Çô>¯+n‹ºøeôM†òäì6þµ½O^–WoØö+YŒN7«Þki=¼ºZ¯‚³Í ‡áyC3ôí–ðö7Ä¿QZÏ“¥ðu|,¸ÓÀ˜ÿè×›VÍê9m§F¡äÏ·¯²Ù³¸ã19z“^d³œ³b, ŠyÜ}Çì²±ï3·hY¥äÊ8"˜‡™¦NÉ^¼Å_&;ՙѕ5Ž,ï?ܳž®ÍÏN꬀¤B{2!‰½´n}¬xïŽéÝ”>§é×›ù¬!䳄¾÷‹ô”ÆKÂøF·­ùGN±_)±UŸåÍ ãMÑúYK//©áhU¯%K•a‡'`æéSeZÝI€³1Ò•;D$•ýÆ c.¡ã ŒpÿŒgÝ«ÿ¹P«N}À}kŽ,U—»'i$ê0®Ÿu‚Ë•EX¤/Ã"¬ %Ô‰ÀT?’@ø5R‹íÊL¨_‚‚2àÖI&ž'g°gþrËU€õ×Ó‹¥¥§¦H‘T éÉ—½,rùðrõRlØ¡%•½ë YÉú}JL4JÀ$™ì-ÙY‚’$Ü2³­9A2_¸¥t‰ºú:»‡¾‚±3/椖Œ+òªÜvàªr¸ÉTÕ˜–ˆgÌ+±fv÷€Bð³+´FHãöÐF¹c)p¶±•Þw•Îý¥—ð)ý²ž5·´_ò’?h•RB¿ÛGÐd""ì®·-óX¶ô…äíx¾Åö¼ÙûpX› ÞÖ·Ú·ª‡D%²Î¥I–BãňAî4¡S¤ªÑ%“Üÿ¬€ÕCMb¤$й *$ Ž1¸Píhf‘ƒðÉžã¹bd¶«HÝ+Ó·kn—ï}ï+I”CkJ¼^ûmm·-,oÜÆW•* ‘Ù¸QüÎÃö€,×¢æàøÓ—\¥?M#ycf×.«3*‡ ¥½ÕèW²|rÜ…•x(^}#ØVŒeTS*2E?n&`Ö~_d°h–ÉwÞ'-"~ëo#EŸŒð¬5ëQ‚# À!‘‹E|+ƒ 6þ=¸¾cQŽ”ºA}ªaœmJÎ »âžH:ºƒl^(»G¾ÏÛ†ôñ!~ð {p^F ,"b¬dx–f¥%fŽÙî©ëIk¬¡Zm ï_U¼Ýg9Ú¥0z[³ogÍÿê¸Ä4± Vrcp¬‹Éî2žG"Bxv‰,J•x T´éÀÚZsÈÄûóÅ$n¨Àt¶ œû‹îŸÎ”JOi? }½¨UªD%AžÚ²õ„àv`$Û%ˆsÁö1NEæyL®å©!÷^E~OU` †~¥äxÈàÚTÅÐLµcÒ3m1Q})Cý=ê³ØÙ½«‰ÒK§{Ê媜mÜÎvìe0ãݸ™ 7 ù4vxnêÁL’r„‰ŽI•‚ç5£%Ÿ^–”Ê’{ÆGW2ÊC!Wø’ £ù_nSøÉ%i»æ~ ´+Ép½›§WVß!V%`½ÕÄD$,Ñ;ªÖâFWÈ!+›j« `Âdhßò@ó3v^]THYܺrk×p²æcæ N‚¨ÜD+¡¬c=Ëíã‚Ö*Ì'½†ëÞð_‚¶Ú?Õt7NK'RÖpø”‰VùÅÑJqÍZ¤’,5b’Àµ«t¬í(³B…œús?¼ó··$±ö ÃÞQÉê«Ìf0ß“@‡´ßØ®Z`}Õ#ש–)W<$jÊá•O¸9Eh%U øÇÂI9–L$jÒD…G@ßqT«¬A¹?¼Ṉˆœ Œ³òÐE+—ŽP>ïšî@zŽ˜„bDª ¬líÀêµVKŒæÝ¬W8 7 ‹ý¢èÓÅÙ†?rI¤20-ø2žf©& _-;¸- 2T›‚«4èÆA"q(à°††fn‘ÏF^Vʳä©"F ¼oø§»',¼EÀ™–i £0‡¬ß„ì¥>ÒË„ÅJV#uü™äw^Tv>â…b äG-u&ßž$š²·¶ªë—e(QÔZü»mW›=)½Ý~Ž8$"ÅY=Ec«sò’Õ¾ ìqî³Ë EeAÈ%™‹@bByé;†5£ûË7¹¨P3×ÇmÆáŒ ûâÛ¨î_Þ&²Õ%anE‘/XéÌÇÈ'Ò ”0†ç³+H\ް‡e¡XÂÍ'*U¦è¢L>õ^‰¦ -k^ÌWÈV/fXæÄKÈh_Û†V…3Çh¤‚³F vÖK ^¬e«£«¦)EŒc·jû9]þ÷ÃèËOKSNgRFQêïÓ’À«Æï“ö·ÁefD@ÃÝ Yù%‡ïãã“ð8pG?'ãÐíJV^ˆy¨ä¸ AàºÃuÿ×ëç÷ê¯åL°š±1Ì×lØQ(xÃs 9VRA¯ÙWÜ>àp?%—òÎMvÆTà1é#<ʪŠ\±b ®Á®7B&íPNèó3øo9 8ÜÖKÇ·ûvãÏòà\šºª÷6Ë{¯L FV ³Èííð@¯ü~¸ÿ’ÛÖM'!xFëñÀ‹8ý€?aˆ<Iÿåz‡_Ë9Uä¦:‰àu32òªzÛÞ^}È¡üDõˆŸÝƒB<<±›à‘Ž¢# Ø^ÀFï NZFàp¦ 9&ë +¢`9Wáü÷ü±;Ù3r–éo|÷jÜnNw•Šu4¥Ò5Ø7ïu·¸Ël ±òÃò÷T«ð¿$óù㆓ÇëxFq·V,žz°!È' rÄò~>?> ©¼µ–û¤QJ/EGIŠ™8<ù¸exöÄoÅfC–÷U¸Ù¼«™pWì±\4/Àsd/-Ø+¹ÊFLjq……»‡~Î%ôBð•8ÚYx0_‹Ûˆsü°9ÖÔŠ]×»v¬N1Ô™âO͹uìyn?Ï,yý…ãžçü¯ÇÁô3ЕÁ^Ī£ƒóðË~ ò?ÁPÍO(æ qÇc˜Ã‡n§ÿÒªß[_È✤!÷«6ÃʹÅâ1Ç¡Q)åÄíÔ8vQ0 ñ|ÿÒÂþýˆ¤µkþÏ 0Ž;õGd7Û»ãõàþ;–’¢¾›ÙüM‘Ì岞ärYŠðß<ªG#±~ÏùàD…ì":öà…ožÝXpʰ_ó؃ûàsùz“Ë—Y¨ceˆ#öU’pTªÜô&IÃWàpÒ/*gš´`RÇ(U+:±C ²v”ˆZÁþ',ñÇŒ”,¶¤(ëÉ~Îq¼ÖV+÷Ï5Û‰—\ÎN,¸Ðf%ø1ý­¬ÔÞ(L£‘#   ðÀþQìÿ,ðyÿÙôƳD²qòHrGÇ#޼Àyøÿ±ÇǨdyk/ѤZ4 )ýÔ¯cÒI9=ºÁøÅ8¼’vº˜X•ò¾löf©E@fE^f,Ú‰d‘»4r2¼Å;”©!—«e |7žÿ’8ÊõÇÛë^Í{ä®'ãyaz囯É{^Õµ}ÝŽ%× ð+ñ3õ UAqò'G#äüp>öxøø‰9c!ŽO=€eSòGÏ ¿¢8%¾çÔg˹ª»ŠTÃ̱‡bC{ º†Á!hÏÏYTû®Š¤“óžß W½RNÊD¡"ê3$Š®ý’Ü‘‡ $„Ê d~ÎHˆ}Gý9k{*¶é½žñZ%uMpâ.6Áo¶x°0C<ª\·Uå¹þ”Çåןöýrxøßìݹ(ÎyàžÁ'±Žßpx ‚xæ ¡åûÆUªc›´¬bY{ôAÉVG˜Ÿsà;¯âDÌþ‰©<«›Ijxå`¤­$‡åAW»Gï×xÿ𬫨[«Fd䬾ÎÅN˜(Ö'°oœ÷ºó߆?Ë$}kÞÑ(Æjî®ÔoÎxš–”ŸÞ`Žcå¹pþ×õÏëýÀ–eœŠÂû€£å¾G‰<Ëþ~9õ ¯•³‚V_² 4MÏ «'ÏG÷8 'Ë'þ™‡³8-óè)|¯Z˜Ù ^þÜ…$ë7Q;*ÈòB’vJí&X, ˜bBê†s¶zaKÿ4K½ëëçõ®ñ\\­l¨¸Û_Lgo3EgB¸î~’?%¸…^#õûçõÇÇ­ý©lKíû¤0Y‚¼‚ÄðI~ø_ßë‘ÇÁO+fÛ¹Ž®=™½²êÞâôä{ýÏ"zói»4GùDÌÇÛUòŽÀÖd&†`±{²+žÆTMÜ»žlAq÷—~ÊÈÑ-²øW: FEqÁûßß÷Câ¶"õRåcTãlÞ3ìµ>-92ô,°)ä7Àeø=¹ý¸ ?Y5æpPÈTÄG$óú#ÿx÷óú?ÿšY÷f)SêðÅÝbĨdáÝZ¹#‘`2Ƨˆº=žTγõö(+wå‹Ç*€9eìÝå?“°àŽdœv²á$_U 熫O5ýe—öÿ§ñü¥­Í6QË}ýþûûŠS›ÊwP¤½¸'ã€_ys“ûà‚x<…ë,ÊÌì j™HìAùá“ׅ۟<üz†äòvı3{X§æé(Qø~¬åƒÄ <¯ÃÉiIzj«ÁíåLà°L±Õ ›ˆ”‚£YLÁVdRgFRb’ä6‡´ ç¸Â«~£|4l_Ÿ¿n!Ïò·e„»Ç†²÷ñ]ý¬oîý ’T,~:‘Ç÷ß$súçžù…eR[±!˜°8e'‚IàÉeáÈ Ç r+üÞSÏ$û|ZìÈ$ýDoÙK~3{Ý-ŸÂJ’%BýnžQØLq”L{‚fë%b?•,•ʳp‰]íòŠĮõE®deá\Ø]A ÖAÛïkþß^ø‡/uS*ÿ¤ïÛ·ß}øžâ ±ñ"»ÈU¹‘ûu“ž´¸ ÿ—ýI™…è¹` w8»ÇLyjÒuTŒžŒíÏ„ðÒuüú…¿æ~ʬªßfgí%e—ˆ¢î³þþL¬ÇUn=oÈ™ëØû´ÝéµQ«Xd…á Ë^ÌýŒâE‰ø0i¡›´•À¬ë#M?†sD ¤(”[%°#tŽÝ¾›c©ñ B޼ЉýU—;ß“8ÆÕH~´¦ý'ùÆQì×)£ÙqjsÿK ¤õ’v”uûmçš“‘ “Û空 ‚MÇÒ:–2hºdŒ„¾¯Šo‚ß!G'’@ùo\¬úÜ÷¡úLóÇNÚñþA#ŠŒXžJíXªûÈ &ÒÇòá¢z¢ÍUí~ú£ã–wñÇŽÿt õb\£¶­‰%`pIå™U‰ä‘óñWÆ÷zooç9õGeÞ®¼ï|YðÅ9YÑͪ¾Ôcgmÿ½oõÝC!P?d©<…ç“Àïò=ÀIÿ$žÿn*ý ž¿¸äO<’½{OÏ ŸòÇ£\ò9S H÷ðüxcÁSǾ8 #žü1ì"I?¥^Xòñü¹<×®W ‹|}?n J­Ô+/e‘HdRz† ñØðx<ž<x>½ëa ‘ìD¾óKFFWHºÊŽV)U>ï¶KFJ«u/Á÷£oe>üRÉ[Ùkö¯öãKQCshúË…T“ëóê. Ô¬¼ô‹;‰†"’žÓÉÞ_m>VÄŽ$_hƒéÛâÏ&ävoûÆÅZ7—LòG˜õÕ§ƒV[8ff§Yc…äHŽNj•Ö;r4‘Åî’Æè¥Ø3>•^xö­i?ìÿÄêJXUx#…È`ʯàX¤²0`ÎÄ=¥ïQDm_³JIá½2?yů^ùÔü”Þò;$"ø¯“6<<—6é÷ê˜äª‘Ù“ŒtøcÔ}½Ó*¿-ëyUäy9i8/#¥ï6‹!"–±¿Ó‰Í0üg1ó õ£rôIµ2ŸQ{㊿®ý|èf*âkþ9Ùö=⇚õ? PØõm¢ ›n÷ã[^ZÖìRÚðÙ k>Ÿ ‹a©ï¬Ø|äè\ŒÙ¤äÊÞú›×¼Ï¹G¤/Ž÷ÿæòÚþMÓÛvzOÝ©cvºº&Éz’ãìØj6p›EȨEÎ)X€ˆøRÓÒ~<}¤lô6ʻ٘Ëc·ßù<Ç4Îorñ®‰ŸñV¯““®`1êÑ‹FÌŒ%Ìud„Ú·Œ£•¶­n{–'—µo iú>Ý©ïËAÓ¼s²xÃÖ­¬ÕcÝioY§°‰^2ù ùjPÁ§ù oÔ¶¦ÊÔ·ŒÙ𙉰ƤR¬2†œ>+&l'§hˆÄeÜ®J;µ±4ÞD¨È“Ý’4#1xÕ’Bòöƒt/ø‚éu0ú¶?ÈÔàÆîVä¿czyö sTÿFânmY=sZ¾/~<ŽížÒúž7Z‚ãF€Û»Ì±›ƒâï%¯•1Û~ž‹µê˜¼Vzþ sazuFá&#wùŒT0Ë,ðb“/Jj´'º‘·¼}k=ä=r}Sc‹9£RÊÉ×ñ;.µŸØ6+•<‰ŒñUlF{‰ÈM6‰Úw¶"Þž–5œ…}Š5…#±]'xOñUìÔºú%<Ʊ¥j‹KRO‡ £á,`ðPQIAž{vèY™¯[šY-å¦v±be°ª»sè‡]×uñž5ÎåáÌb©ËKF£±Þ£FO#b¼”•îç°XÌnÇ•ÍãvlLwµ×aÊ峸‹µ(áïM‘Å‹8éªÔÓø–žŽ‹¤ÂsÏXQd)ÒD¥ô–€v§p[N\œå>±ˆ‘Ž–¥ ¹ªCªû4c‡Ýõ¹¨i ~®å¢f5? âvoôÆ[BÜ·=GXX.ÖÖ(í™+•vœ½ú¸ Œ ˆ¿\bá†e—1eãX£ŽVø´~;ßuO*hÚ’µV­ê»Ö·ŠÚ0å€Åf\^^šY¬¶k’ÄO-f_v“}cn˜5+OúJÈß§µlQÜ2K佯~m¶®Ó…|VË—ÃbTÆê70öçÜ0¹<ï“‚‡ÜCl% ú˼Pã¢×Šcr5­{ ©ëšö¥®WzØ[ CK¦³mqøÔJÐ=«LÏfYKÇÝ[Ÿ‹"äªõTTÉ»yù|àGMÓ‰¦I’ê¿_}³uWõá9˜ò±éü?ª}O[Ա騴W½Õ·^Ç™Z6‘~fY¸RJ:¿gUë÷ÍøsÒaø¢ÿ &@=mÂc!Ýâ*Á!oúmIêÑÈ{ ñ?çÛ´VxB§ÑbX–v‡«¡ubRw†Â há•GOR3ìCñe%bzúÇ{ ܲ¯²Å•»°_r^¡’7Q+™‡^Æ>ꨳ‰cpÛúcWh—‹o5ç·ÌVS·íìîý?¸Hk}c룱gD„p²´,£ž¤~3Á'æ¼õ¯Éù;*ª³2™Œ„¨âQü€ÆŸ ÌAFo·`Ñ(ü =ÿ™~ ûÒvhÒ4´HÖ{Hë0pÀ,7¶kF*!¹X럗FnX ¸~$Œ«,qª«v v5E$!÷»<µ}Ç–J[”ý¼Gaßc ®C+g„¤Çí+ÅwÆÞ+lSúñ‡ Œ¢b?É,Oãî"P@ä´Àâp ´ …¾Hõà•GhûN;´aBÊQ}ØÏ·ü~аÁ)üiÔe<ŸZ´ª…Þ@މîHýÁÙYXp@y±û™zû´#`Gjf¬Q"÷`X+F É…’Œe&’²»Uš¿æ\=*wªô…¶»µçû®\Ëþà÷««ñ{ãÛÙCÀ–Ñ fnÀËvAÁá½£7Q9‘%ü¤>Ù>¶*¯üb϶L²{޼"§h’Wp9!c°©·š– ½~cwäºMfbTD…@-¤Â@y/çÈ`ö”GbF2cEF‘˜¿dFüƒ…ÔJ#p†'+쇎7e[ÓEjs+ÜX˜W8ôýv)ñÓuÚ¾ØÏÕ6&+é¶sKô<]P+G-Úi>C/'`ž)£ÿÏ•þF®x°x+Ç ÃRG~2,¼Fü™È?î+§-)½¤ ðÿi>± ZH£ ]x·Giâé‘ V7*Ò»Ÿnpµ˜úóUY¡âèx¥é'lj‹#7*1^e–ÑYhL~ÚxäVh·±…¤Å}óãÄwÛôØû_ï—;ñ´P,*ò§!…–pe*z'1Ë$‘°öcsíÇ·1è`•Ô,bÄŒª©"¯º}·ɉcòâSÙ!Vü¬•x£Ð +È^4‚]¸ŒFëÕeþE2Bm¤rOi«FË,MÅçDÐ=•/!‰CÆò °ž5@á$2•VW}¾òÆ ÊÌ$¢£‡ô•~b½¬7®ùñàÛö|çõ?Üÿ·ˆ£üI?*ÂPa ¯´Á”ª’zˆX„¿Ò‘’ø`@¥ E%¥PñqŒ]c0|ed%";E0÷$âÐr[±î2ÉP´ÌIDUŽfI?í4NR9ˆ‰½çªYa’º™$÷-Dˆ@iб^µƒ:*÷Žo¸vi"$=„² ˜IQ6F5öh±) Fë5[ {68ÿÊਗk”Íû¾÷ÀŸmi#Ã#) 4’ g(ˆ?rË;Gò’Ÿqf0^Áàv>·ZÜ0÷$˜NŽCàÈÒ­$l£ñiJHñį·qÿ'aè(¦fa0 ŠV%V“åXš#$k þÒ0–WµiRIŠz LÒ@­'ýÆfLfF>ÚFʶ@y?øÝe :J²GqÅsú Ûy­Îî¿fŸ¾N „Û§·oó÷àÉXÝY&h9c©1 JB³rê†`;~RÎL?ö›×¤† ’#;f˜œ+_‚CV!–@G BRÑÿiø óÎPéÓ ?Œ¬‚b¼‘¦X×Ûr¨O/-$c¥"&NNñIeJƵ峜©™‰Uí¸DöOx’:áŒrÃü—ZF_S¥)ÅÝ™Jî8Ãû#ª†õ·mö?ñþW D˜î<`)VYy^©Ù{pöV™Çò|wÕl'«Zð•ät`]Ë;™Á=ÉâÃ3:| ™ V€ö ëイ¯d÷Ç!pÝÔð«b& %–2à׆ĀÉ#«ÑŽ%ă1ÚRëðS¯E'ˆIëåŒp¬MøªJ(90Oî9ÔÎA£µe£pw»óô0fg°{Á¶\ÿ¯nüƒ– ‰YXš ëÌoÕœF³Ë,D2Ƥ›‘¡–rd„s¬.8•'‘¤e-#,¢DnAèoÔ¼/*·Iÿ¨@+§-À>ów ©F=Ñüã¬Êóñ+Ѭ Y^5epÖ~áƒ'·‘ÃÈß´ª¢>;"¤JlDYJ¢$bl(é^¬¿ÉOÝ XÆ#€ØÅ½Úµ;]4V÷µdg÷ýJÿÛ÷#¯+u2ZvÂÿ#Iw«Â“Ö@y—ÙìzDPChòP›ÅWH³NòId%zrD ]³õh½ÁÞF•••]¿“¿1|DÔ ]˜~®À£+«J –ìÑK^.óyIb²÷Ô&D²G §©“Å÷¡sËzÅL{ZްIeµX0’~â‘aÄX[_úYÔ¨KëÄ#|¬«¨F— uEZ jö1¿ÛW)_>*`¾ÅvË{UP⾜;joØ{6êS‹emÙ´õe®+Å4•ãŠCšE_r ™£¥dpìÃ=3<¦‹n‰X¢(ø³Ùãƒòû¤8v+Åß4IÌÜuqÂóÂÕ s\‚ôvØ"2¿wfÚÞ§³RÊ¿ÛÓAïÙx˜Æ§ÞŒ¹²½Q¾M³[!–¥%+pYúb¬f½À ˆûìVÏ1«­Rü㸊þø?l¿‰÷=båcóZ_(ÔO—&0õQVÈÛ~›Ü3O¹†RÐÔ5:W®,k¦ƒ‚ó[Ýûc?®6m›Úêóš8çé×\L×±Øú'ð²û=–ÄìܼåŒà0*DHèÃl­~Ëç˜ùŒÐÈTzX½À¬“ØU,Ë+ÇPÑ}ÄQù4ly¬8’Ox/¶;3IP–Id*¢%=‡F@¢ cdÏ& ˆŸÔk,¶L©ë-5©X„Š&DR²{Rûœ¹ùA*«r³J~+°øµÏk¿_OT¨>{{VûþŽkr¸LUäWQ¸'Û>ã¼hGW‘¤XÖNêJ»‘TØ.‘Ž_ÝFâ'3_N–kލüìê“”OnUU—Ü÷V0J±èäCË'<Åíò÷€“ÅÅUYYB¢<_pC¢YÉf’y$1-…5–á>åK qµ£jó Ù£nÕ£¯R’@ªÆy0šé!120hQÏÜKî!*M"8µ«ÏïG|ã¼¼þÐŒBŃ)u /¸Ò¬  ?OˆÄ»§çqO|X‚Ú4A£(ðȪ«‰Ö>ݸTA'gQ,ˆÂfa*IÞ;’%YaSù»Ê–|E©à6 v¾Ï’Øü‡§èœtù а^ÜrQâ«^·•¯RëÒ­¹2,ÒG‰ZCíVVWä‰ÈÓ„¥;#×óHÚÛ½U>Þxb ¥Çvƒ4;^Z¬îâ‹þ›¹‰»ü眰vTtvG#`çˆäâ¹Tž п6# œ8@ÒÌ{¯·$…Ñ“±öš$`ZErJÄ_ó’NarP‚k=/¨Â_ÚuÏ.i×´M£TMJx1Ú´9ï'¦ãCwµŸ­„ƒVÁêØ v˜¯“Õ¶3˜+%«…JöYLJ(´«ˆßU¾M‚–lõÁ޳«fö‰öwÖ÷˜ñµ$Ád¡Äe5Û”S‡`M½r3ÅŽ“´V{Oj˜èäe•³ß*‘êÕ‰)a%q˜Ýz¢Ò&ENÇž-ü.µçNKì0àpž›¤{ç‹(‚$ûÒ1TFݸnË#ÇÝ¥'”de1~1ò+UøWô£ÁMŸÉ×£©‰Ä)a?éÑ–eè< ÒpÍtKÒoûdŸQž‘äcÈX˹ j\¤‹ÊKˆÍãóšþɧl˜ ÄCnL6Á¬mXŒF[pcìUÈDíZ\VKjžcɤ±Yy³Ç®ÃpŧCËî€Ò1êÄC#Å(2*´Þêò ¹Ç»l+Bà*ƒéµu:t55´µ T$ÆEH{Ž/¿ÒÜbï…ÓÒêÖŽ”„¹„¢ú]ò- ûíÝÃÖOf^GeÊS ’L¨Ç²²æI#R 4Ü•™x˜ø G¡Šó[/X(0? d-Älx)É<‹®>T*ûrÊñ8wt¬Ø†P߉!xøgäƒÈÿÇž~?óë`lv^±ñ'DèÜ)$U¹å8 ò¤¨äúóÏĹŽó^m颇{íOƒáú ù$æ››eVÕ‚ü¹3Šâ(˪Ƈ%TVPÜÉÙ™#<ÿâäûÞãr6þÆ5ãÐâ¬Ù2/õZ¿$75tcÁù»cPx†E/Ë|N"IGFjã…¸bK<ƒðAä+>Aøã€= Þ`8jåÃä£"€@à©R~OÀå‡ÏÏž=#ñNk¨¹éâË´7î}+ýðí.ßËuF/zúW÷âoæû)L•U&=^&=Û’üà{¶Ôå°ZCùBG⌺’#D†îÊÉÈï) ’{´Œ}¹ø„ö@® ™Ø´Þâ«D9ü½²®\žxø²ž#€°ì 9*{p@=\þÛö~ÀàqòGøøÅ9º®¸»dŒos½UVï÷á‡h é”mϯ=•¬¶÷qľ(̬J˜­ÑZ7UèÒ,|/Aí·ÏÐäã­„ ÓveçÖåVQP(ÌWxÄ‘Éý¬Hü¾OoØ‘‰ùj Óâl¨g+˜ª±»DÁ:¹$!à‚0“Ú·ÿ IŸëÍâlË;rõ²?Né)í311÷ ?%çaÄ‘Mh¸ìG©Ã´ä3¥vbüþ. *õù ß”÷ãƒÏöŸXI$<`êAä‘$dÔ’À± TÿÄp9ãà€þ'Îcù‘Á_’7íE^.¾çø/Aòåv_ª½÷1^2?ëÃ✬n\­7 ÜöH_†^¼+u' bG¶@ø ü«ù±'X¼Q”H‚Œ½uB²Œ$t )ÒE<ö@½–ÐýÚ^¥¾W“; ZhÔ¨PGõoî Ïø??Ú~=’MýÆ”`T) ÀžÃò—ÊçõÊüŸSøŸ7›œw? ¯!ËÂ3HÈb)êk°cíE®õÅ\FŠ«ò»¢ Wö‘{IÊŽíù(iD‚_ãþ=gÉå•AU>ëÖ5öŠýÂ0QÕ€”¤à¼<†>“£³#³t¬³…Y@°“´¨8y{êþà? ýúqöÁ$‘IT¥yX“K öÈR ¬1†sì¹píØ–P ÁgœÆ§a./wÙØ Á]³†ûq6m±_l¸ÍÓßx½É%Tý­"†*ëÏÀëüãÞB'CÇÝ@V·2¯r±”t'Ü‘Œ‹!LòF_¬Ã”µ’²©•Iôî8PÆ£åJÇÄ‘?A¹I =ÿø™˜Šˆ “«ËeÂö…R2Äu2 # ³Wâ·•ã{¢ˆq’“j£IÙÁ,.©*ΕJíÙ¶¯vŒÕÞ'ŸgµýOô¼ÕýøP!c Ƙ[•P‹Ø'n#’C!`jxh[•ŸããÖ³pcI!?m!˜²9ŒIJ¥ßŽ ,m8(ÏǽåV0 AÅ2€#u,y!ýȉfžÎ³B¿ËÌéò fº¿ÏÚ?ׯ}ÒûœÂ ’F{lÍÐ2€aÄc %†DŠÔ@Ô…ZÚwõ%û×Ô¤£¿|Ûý_møQ$%l×pk=ÎÿZíÀ‘™]Ü<Èg÷?%åY~ZQóîÅÇ2×Qí*Ô!,>Fr:…[NÌ"‚Þá9!UOó”|øù/ÁAè§¿wºÈªYe ùãÆvWT=ZNò$÷êJŸt!ãÿ#ßý‰£$AÉõ²’ÿŽÒ¬°õPü©tŒ¤ ÛþÛHbnÕË@‹g› Ï­xV/dG¸®ÄEˆÉ"Fnü¬P·àm1UÆLU:°#`ÅöûxWP¥8'‰%Œ ùìò)žj±šE)’ "“…1;g¶m>>Ûß}øj«Ïö¿¥û{»ð0!dê¥J·t0Ò#Sî©cù Á–¨ùŸŽè8_Œ$€(1«ODÜ©+('v°HPz±U·2µ‹´ÀXÊ…Ô±,8îè¡crÒÄAABÜE¥U°ÏüDIoZ–“´}Æ#å{QûD)=ÃEöÈÇk—X±’²ÚŒÍ#«ØÅl¬QNo{/>×<™úã|=¾½©Çgеõ¸È>‘~¡›ªGãL§1ˆ˜´Ê$„«,Gù™Qùë,mùÏÂ~ºã9 øËÆrpá›ÇZaÕP¶¥‡cØ!ÏÈ^~úç×-þ¶ä#éê)Ø”ÿñ]±0hÈF´Q~)9.á¦øÿ0r@v9cÔ/±OxÅX¢ø×@*~á€bˆK’’8p ¯+ñŸýÖïò$Žnúà;×…6ýøô ÿÛjfÿ›ƒÃÒoõ>ÿn$ÊX*°n~K@à|ÿ<† ?`Ÿ÷>‚gNX¼a~@SóÁ$9ç8#•<|ÿ“þ=yœHî ¨,W‚OþÀã‚ß¾G?ãàóÇ¢ub E°'‚¥{¸rXü|~ 9 ÇÇ®M=¯8úû{ý8èT‹¦—óYŠk?ßç´±DÑÜðÄß-À.Aེü~Ï?¯^ôNT™ûpC€ ä|}Yø$þ#àpHž=êÈĬ‚ïçÿ?罬ˆ­ÝmÜ;w¦·;qÇÿ¥Éä}“ëmeEqü@>¤ÔRŽˆ28 n8Y*©Of gže$ÚɈ‹•u±*’ã©”’î>ä¤<•~n¿ì^}T數MÓ낤¬äøý@Bʼ¬²ë¥UOºÄZDñFŠb–û´0òíñ“s–™äí“gŠ·:?•|ªÑ­ˆSMÎK¶É‹Xå³:,ùK•ãþ¡,µëX±!¢þĸõŸ ÔÈò–iJC¸GLꔤ݇IeŽÙàsñœ¹®aŒu!ÚO_HQul»›ÛöŸésÞú© <ÇÛc̱ÎÑGîM)cËK$G‹â¹Q\£láIí<²\ Éf¸Sò…9cH‚Tëg“Ç®tk_ñÓv ^pàüe¹f÷,–|eâ8tí{9­e#¿™òž¥±mÚeêÛÛ‡1ôéêÙjˆæyfÕ²ÍUÚÔ Í1x‹êš+n½/þXîš=—JØ7­?/²Ï¯ØÇm[b¯¬n•¢vżyÆfçXÊ^HäËÇ ¿HÅâ×ßå5u# -bRÔzcéœK¡¦U[&é¸ÖüTò¼Æ‘)êiTH–ÜhlÍ^F’ÏvÛ˜{‚ ç÷)tFS!é"¿Ç1;X¦$LÒ…¸¨!Ë·Ú>€…ß Íî3%÷Iâ$,†pý,¨’i~wëJ×<Åžño\ËÒ¹‡ƒt™s•2ø\“ZŸJÄ×Ë夗_©4ö±´s5g°–­ÊzHÜÅN«¯>™YϯýSOÇä Þüe¸è[\ô¼?{PÔ³ùuë›—gµãû˜Í†µ«8ìt°¦Ã°ìÍ“ôl}Á“MYSÔþ#ÉÆÉkĦv„÷‹R.ìC³M]pNKškùkdSÕIW¨1q[Áe†8½Õä“Ü™* °ÜI€9G_äÌz²’£î <\ýÊŸF+&aÙT¯¸,fFVœJ~c€°ofØå©ÙS|#\áÌýxãößæöiÝ«)‚Áá2ÛÆS)^Œ:ÏŠåÎlÐi×ÎGjL}ͪ[i¹Vl•dÇ-y"""ŠlGÕ7–<ƒàïÿ¯¼}«ëûOÚo^,×öYv,œÔ?£bwŸ-xûÇRÚÅã«Á7õ›²ÓÛíªÖy*ãéÃy9ši«´M¡çyyiÏSNN¤tã”c$zØžœ ·¥ü±¯nðšñœa0ŒµŒe k¯íYqÅ«³ãöþO *{A"»0Y#äNä¹…Gý$ÄJä,žŠ4Pq7:*–w„b=D¢r§Ü+3*¬ý9w”Ç<T7ª±}RùõwÆ´ðzàñÞÊÚ—Šï]—±Yšßú«[³——~Š!ªâ34¯¸ÅA¨Þ‘²9hÂEfÄ&Š#}D}Wj_MYmr–ß…±n¾N*Ù<ŽB®cF|f.]‚ u¦¡Š±ïd2ÙzYr3Rûh©Gˆ«bƒZ6¤‰}Q{Aެ™1ŽŽ·Ê›(¿šèéFV=(9NþÎòzЖœH“g§óŽÑ~ªØOoµñjÇ.íÌ`Ÿp! róHª ”~H“ÿŽžßY{½'”ÔÇïHÄHº9ùePæ^T9Ž2Þ(e“’ƒÕQO¬¼|þjŽ[Æû^IÃìžYÒ—È2ÛÅI‰½µxrd\ö+‡¯3f¢ŠòOWúÙ’8ùþÊóª(>•ü5æ}çÉž\ܵ—ǹañž?Ðv¼eŸo`°7 ³;ågÊá.YÇ¥ÓQ¬UD[øŒ”[†OsÕ°ç¹yêFÔe=EÄDª:­º ”jÓ°g„—+ªFSbDŠnØ[TÓ¼q•Ç|ñf«FŸ}E*LaBÒ7ºÿ§Švý@D39‹ÿLAp «Ë!)Ôªt#*±¤’±ŒF§†‰–RZ4“æ %žoâq뜾>úî­“Ôõ\õÿnU z†“³y7vÄÁ‡Áaµ,g²ób°ùc­ÝÈÍ“È ÒŠí‘Åc^Яƒ!]ä,щGêWÏ{ç„<‘ãZÐk3Ýñãa¼£·yG)_úmü¬n•¯l. ,ß© ³>Fõk9‚C;dñ­8bIPÈ«.{BPu#)1Ó”a0%c7¦7·s20~§äõz£'Tã)™!-m”D±.BWêŒâhz‘)q,¬‡°r¯>Ùíø»Çù$¿ö¶xõ·EbA…7gNÒûÆ>ï‘)ê²¢2´ð€JÑdWò.}Rß:}LçôŒîWJÒ1ñC²k+ŒÈæïf`‡!ޱGdв[6bÑìAͪSQö­—"«Ÿ¶P,/píÜ<ã·éø¦<Ž/Jƒd›Í[玴‘«ä"£ ¾å£çvË9|DVæµbø¹fÇÓ²âY*%ú4Õ•çôSU%91%.‘ kÛS—~ðº:)2Õ“B‚±Ê¥”•x~‹!{ÜょuF‰;|˜!í)‘÷døûÔþT‚HÞ[«Ê?bP3«#MÝc“æPF^(G@ÿöÚ‰1gAÅ¡õÁf¾¹ã|†CÄ»Æê6]wů“ÛµëþáåjMcUÄׯßȵÊÿu;Jj¾¾§†–X[ÐÛ'ü@¼s«Ã®Ï—Ô6:¹¬LäÛ®­5¼ty"=GÉŒ³UaTŠÌ[>B¶ß«lÓÐÃá¤Y¤Æk÷3‹$°Ø†"O‰òlG熤O ÓŒ‡S‘zl7;$yaZÓP¼’0a½ÄÅ—xã¡îB«/µ""¢Fñ~ð òѱüàvþi—ø¦ü~ª¦E ëò$R(=Ôöd"IãƒÙ_í‚NôA=½V<ýSi^ÂéY æ6ÞW%ä[ÓÓÓ°ívV †[+#“»±ã#­A•왣 =™"Š’{Ã-õ¡cvÀkÙ/ h6Á¯äòÞ©±y+6¶K›Ê9þÃ’ÀÚ±C9“¶1+,—nã`’†9ž®I£žfnWWžå´YFz§\cQvÛ JªØeߥÊkê4ƒgR€VÛB¬ïã‹ÜPÇÕ:„bE $ƒñcßÚ@K,„óîQ˜ó–vÂSN ƒüC‹ã´å›©ÈüdT¼„DÂ81i¾wë‡DÂb´,“ê›$¶|•ã­‡ÈÞ&³ÑLŽ^Îrmž¨œÊ°¾_a̪ÉC'Ú8LL²\1u`Iù7ë%ûºk»2íIlaWf—‹÷LtK –¾¿¯JE$¡ø‡&×󥺪Q˜6Fª¢åØ7|.8'¯_@â.$Ùož›§>N.ªÆ5€æEyI)¡+î4l)ÑîL?øÂAøp¡V$êý.C ^¾ÐhyÄò¯¹Ô½tåážXî°³QoŠ<ŸWËZ½¿à0ùZ)°E1— –’¤—±9\}‰*_¡8ˆÉZy)Ï ˆ¯ ­FÔIîKÞVQêAkR™#\] ʬ·`‡»~QÉ72$0÷rƒNpˆ‘Ò\ãÆQ±ÝF–òùª®Ýó¡©õ-~nÞqµeÆÎÜ·=Y¹ˆ3,rýÙW£/8?¦‘“„µ"rd‡æ¸ärIÃ$ʨ"=úF"hc@쎑ò‚“¤e;Å϶k´sÈDàq½«Vå…½ôqÜ)Œv†B¾ß=öä#ÃÏZå»C~REpß–YQ,nÛQ3·"6@Ëû©JLŠ‘òë?_ºd¨éÃÄPØîf„£ËÛtóŸ+'”³4æƒÈùðäáB‘sVégiãœvü;öBÄ1‚RAÈ/4¾{€ ÏßÞˆrþ FËJä¨G–?ÇY{W“™ IÍ4h}È=Âó3HçÛ„¬a–CÀRCLêÁj'¢­ çч·+öŒ¡KžëFÅ̘VTäLŽ:É4<t½,œòž’QËŠ%åÛm›»»÷Þ¯´pê^êÿK þ¸íf½’Ò(H"Ž6EFP%DtizGØòe@óȦ°Ènu2‘]¡gY8²:™$Ấ d“ 2!ˆ©KøBzJdVäçÜ0:K#J{{û’r’¿â}ØÇµ;>îöé…™O¡…‰Éíä)ÔG·:3/´:Âü9È}¢1°ëìöKdÙP"”™í¿l8o¿ßß6qÛªÀWlßßë|W’17.†We_lŽ—” Ï,Ý‹øë!Žé’%0²4Îy³Ld÷]{á¥Ü7Y‹§E³2Ñí=bX3z/1’2ê³J]û9g+!Cí»ÅÚSÖ%nÙ&œ¥!nÇz²X-,ðDñI‚ˆG¶SÚQÿn4pÂ1ÛÛÆ34»uôò‹Ð¸ŠVê7Š2vÏê¾ü”Î;¦qß…t‰C ê½Iê†HØÈ`•‰„øö•ÏJ. wƒ˜¸T”{1¢Ë¿F‰'‘ˆá ‘K72H¿ _⼊¥>{ÖBšÝÊ£“”CÁX䈰%_žd…[µ¥iJûA}eoÚ!L•ÙƒIÉJAx€IU=%wBÙç­˜‡Ûªñ–4ôɻ۷«ÆîøìcïÛƒ$v%‡ Xì8ªÃ•ÙÆS–g”ƒî¹à÷ ñ§gw ð¯Ô*Új´e,ÄŸ´¨ãæ’DÙ„…Z2Ò*4j˱|Œz™û­([‡üŸF#·/XÔÔhç)#v…R5VæT%PĹŠ)9xϹö?Æ=¬®ò 8b®‡–1ðìzʯÿxÆÒ#’~Ò–íYB×ê}4bŽV±¾\Uçjh|Ùõâ_êù|V}ûÝù/9MSfF\I%pÄñ'·(…Y¥yó+¼aã{cø­S-Z.g}–²´]Œ*즿¶¨yMxÙâDD<ÒŒðíÿ~@‰Y¨eåC·W(ÈÑB«öCÔž±Á“'°ȲË{žè },Øèd^ÎŽë(R;ðÒuN¶ï/Í… gÀ± H¨2»£Îl3ãïÜìð;}öÏÑ{ø>¾Ccìc_dŒ'áîp¼1ázOþVBåb°Owš?éàõb{ÂŒFÿòB˜PŸ`ÆOÄP?§HfüxôHLå£?kÜHÍî´Œ£¨á–i€eiüÝ@Š$ŒX M¥r$= C`—'ýB_ôW–nÊDbË'¸¶¢t_r ‰#´-ÔUšÁ÷9³êÈÑ„µf½ #•‹>»ãs<]£ Nd"Dd9{KçØöÎvâ3GW–ÊŒJå¹ Ý„…¬TrÊJ ‰ÂÇ$@@Íèfe“ðBXH%äu^%”)ø21Û…@†¢õ–±ƒhºdÁYïÜqnì´á ‘¬TÙ Ì}¹(ÃIHÕŒ¬Gh[Ø«•&<ÞuÌnµ•§ŸZË×/—îH…5ü¢·¿;/$:"ºÅàºzõië´Œ¬àGG#F®Yx÷ƒ¨à̾gEþDøXUçÒdå莴]@3;“³¤r!÷:°‰ÏG´«Ì×;Çr©E‹ÖeÊM#34åÞb¬¬ •dcìG" 鄿0HP ŽHf'd÷Æ@¥î‹v-ßnãj½üãÛ·Ôi¿ä%d‰´vCxøx`iYž24©T³YùŒTx­ 6”Ãö”Ñ3„âáÛþâ°ù òÙ$å’=fyÖQ?n ¦I‚vIÁ‚%Që 'ÝX—‚Á‘²/ö®«ëbd5Ûô#=ÉöúóØ·Y9d`ñp¹áù¬ÿüf=£Ï«b uU®/ßÛ·ëwæ ^@»sÛýCë߃4¿’(›ª(ufO·<xãe$?€c ?ƳÒ?ʃ¬Í1DƒÛRƒf3϶ʇ ùVŒÿ'¼ Ø3ð‘ZycU÷k´†>¨ÿöÕU#âB­eT¬$E4Ê>+9L‹–‘Ý}ûÒŒÃíåIåu‘ÑäI#8*ÌgSÒQåz?ʺ¯51’¸÷¬aßß÷džʉùcÚ“r«lÖkz¼½ÛáB3í³Ýnç€áœ0Šou~EÈ$Ãñ­+{0…I¢òÆ]d… šXä@ƒñ_q‹ÅÏÀRjüƒ ¸xPO RÔ¥¤ °`¯&.ÎUOB¼’Œ±ÅÙ)C â^÷c_AI'hÞ/´• U„*ºŽ²Øü %Û—‘ß·(òÝW´Â6ä2½ÒªË Û =ò=¨¾ã÷vÏ|·ëÁXcu®…V ²Ê¿ ³sbI3ü…ÔªXž/ÆÜK •¾"cê.ó_.ùgS×õÜ6Á¹š×·ÍCÆdíc_-HåôÛÑe(R¿R?ä³VÓBžêÆ ûRÌy™A2_Â3v˜{¬D¬q©RQB±ŠåYa^=¼t¥©(`Þ„@!’"d)IR"±:÷>â†íÌ‘(ËwIºÍ`Ф¯§Ô#«Ad’üÔå,îäð|VÜ6ÆQ”w…H*û•‡ãçñVv§ ×s“7²gü™‹¹ºçò$9êa/ã¼y6‰¤º\v“bF;“©˜ÈíùlÖG&Ï ì͈qtYþÓ1ìCSÇ¢ÐÑfò*l};¬µš¶µ=jÈ6}ŽžËŠ¡q!ö¨a®Ô5&„ÎÒ­)^1#Z*EíKó,0ýÄbWá™cbªeè¢íŽ{,–œƒ4¨?éäáñÅ¢yHl’R)*ʱ‡ ;~JKË‘«‘Û îàö÷ãs# ¯®{ðí +-96S.¦åhܶµ[ÁœøÎŸÆóõA€¢»¶Çëx/Ñx{ ³Ðyµû·¶Ív;ñkx{X\-#/¯ãhÐ9 §Ë]HéâkŸ(ââ^i`àQޏ67ÇîÖ8sÄk5ÈÕZ&‘‰1”'Ï*TüLñ×$4v>™ëb£©Fd@ܹ‘$îJ…íø«HòH€fç¶J=‘£èÑì{;†&YXÔ‡Ý1Ë,²$qöY+"õ"6ˆ»· Ö%£½ÚB=[-•ÊëiĨšrå®áåÇ·’¸®:’Ôæ!©<²ÔŠÐÃŠÛØâÑšœ*òÅÙбr¿'÷ðÞ sÀ<üz[ +ÈR ~H#åàƒÁ$p ŽOû|†ÌY,\ef7ªŒ;²›p‘±þ 8(Ê~AüƒÏ£¿ê q”¸©È‘bUû¸ܑкƈe㼋òŒ2z³8×ÔÒÔeˆIÊ7ôñƒnÕßn=$g«·‡ØÏÝúùú.~=A@®¤üóÁž{ñåO<óóÏÏ>·eŒ(fèà(oŸíUç‚9'ž>yã’yù'ƒé6{¯"Í3ÀŽB­v¹eŠSÄNx3÷કü^=gúö8âÅ0$/ÞÖnÝKÝKüžú ߈,ß«4µwùr÷öqóíÞŸ®õÅ7iÈcÏ|ðrˬvvD'²sòTªÃ¯$ðO$îíבñÇ8쪭ò¬=·nXç•àt*_å‡ù|ñϤiò¸ùdIÕ$U Xµ¸8êüF²7W¯uöþ‘Ö^Œ9"¶Wÿ¢Tz˜¦ Êÿ°9˜¡ýÿu.£–á×’-4æ¡/ÁyÆþïÓþâ3Š·(·išw¿};•¶ËõUZ$oÇä'n y óúóÀäsþOŒ¨á¸ ÁG“ŸÓ7$Ž øäÇý¿Ý½n„h­Ñ_lˆÈ+ª—¿SÕÀ ‰9䨂ÃàdÆ0gûÚ *—÷°/›•CþE¸%;!cÁ(äú¯åj¶ôI÷¯§ë¿îpz¢UÎ=TZYš1°µµÜú¯¢vRÊ¡r[†ç‘ðx-þ9 ‚8ŸI·”ž„()RÀÊŒ Ä> ùƒÀ'ýÇ¢'cÆ#{u HBFÊã³qØbã‚AäxoÒ’APJ]‹Ç·õ*H «/+VY}„ç‰>XžÜ9üúƒÛц–¡/É/>߯ߥpH%uá7úŒÚo÷áF41¤ `Aøƒ8ºÁ±ø??ãŸGë,fùQÁR:–f#–^G zw#xùþïÙôßl®7©')N‹'hä³ëí~3bÜ(Œ¯$sø“Éô-}‡1Å%Ú*U\‰K1àó'<ö$ðc^Œc“饥©-¡%¾ÐpV×^Ö¶â‘¢å®òq¾pù³l㇠UþN‹ßü1 >Hä>9äÁ ÜzÉENx䟖1É*÷Çí@?®G²>?MÁ²b¤ÿéʉ×ÝaÿUYGñü¿yéúà),8d¼[E²bPrŒŽë©» w’U2FŠÁˆ=¢•K… 2ÿy#Ò|[}ÙÜ­¨÷=½ø?3L«œREïMo‡V׳ÙNßêÄž9<1òçü~¿Áçžùà~ý1¶ÈÛý/–N¤©¤d•âT*@cÇÀàÃÇNH“ÒäÛ.ddqëD¶UÚäH’–U~¤“ן†%SûP`ÕÚ²ØÇÕó-üsÍöo n#rCDÍx¿6oiƒ‘%‡åžµòšs5tGNGV¤^¤qê dñžÝ³ó„¡©Ó3ò4_€1½ßÞ²œWZܼr²´„†%op*¸$ð߬OþÂ~(Iøo£Îü/YFYX¡T)Ü+!„ðP;õ3Ä’YúÛSí>“"œp`ö¹—ƒÂG1SÇ*=³ñ+:ð}°íéü’7¹Ï¡ã)ý–C!‰ã#¤j…׺´|üœ©ÁŒ±æ¤„¬Å×ô!¿'2Â+KÑ‘‹'¡’omÉP¤ÉHÜ4è¸fÿª®«0-Ó;Û6&Ùï·¿·m¸M\|©OnÝ·ï½ç€ªö`Ò:í#CŸËÈiØŽsÃÇ!ûp8ýËZä 4pèœF¡VfÆÿÛXæ˜y똙˜ñ'¢īܲ…f‘Ý–YcN9~€Åï¤|+û_Àà `~Iî~Ý¥a ;´ÆGË´„JåÑÙ‹Héˆ `E’UCÈú«h ‡³Û5€ÎüVaü¹3—Q³_=¿Õ[äFy‹‘+IÖ>Èn¼ÊUy‡&u7T{üsè'ÈÆn¡ÌŠ Öv_ûpÿ`S:FÄ,£øÅsíæý\”¨RD¯*¡äžt«u‹rã ¡ÿÆÇø{ýÉ™ÁÈ î'¢/´}À½üW¿˜ØŸ´ýÃr×ÕDgy>âv ï÷3Š áš¼=óov}ÂÏwTÚ²™&–X£Û’c–P8boeŸ…­"ŸwÝ!l nRd‘ ±dì"Ãöq׉eW…fì§ïž*Ë×í¾‰2·‰pZ9ÕAvzÿËÀ™›•fæxùK’÷£<Ô±ñ”ʱ¯Õ‘™¢Ê§¤krQD10Ð_â´ ¥/êȉ}BbÎâ½8¿zº¼ßê»§%îã·ÓíÛÏ· KÄ ª º{®ÎW”3ÈyÅCÊYŒ{²WŸCG*8’eB̈¤31òŠU–;<¶ ¤§„,zʬq¢s»1Ú.;r ƒ‰»ÅÍ€éíÈ»èHÞIUY‘]ß¹ýµù c¶ã§ Ò6($WP”¤-6=[ÜnDª¿B°UÒýÜùÝÆüRÐa»o`×ÏŠýx&üDŒD Ï$ péíLŠZFöá%óïFß‚BãçÐj`Z> Ñ?¸ŒÇ·n%‰9ìI^¸ÆÚ÷#yÙžp蜀x#žREÆ{CùrU£Œ€ñKø˜›‰-«×ֵʫ³+#0ŒÆïÛª˜æîóiB‘ î½í¬k÷r;vƒ¥G+ê%U挽ÀLžsuyâ } Œ§o7Xöw®+_Ö¯´~þ£½˜ŒËÿ)ö‡1F„²Å‘b Ƭ¹'÷V~A<ôçÄóvñOŠÉPyñ‡Y»v Ëé˜FáƒþüþCžG ë™ßYÀŸIßP®U˯‹öVv¥šT¬½µð3*ÿ£·Ú˜¹fæÈtÏÅn_Å^,“ñŸøõÏÁe^ÚvõžÎO<GéG?<úò›Òmz´e¾Zë‚ý¶ã¿ð¯ý¶¬jƒT¤ÂÜN÷vWÔpø‘U_Çô{9 ÔürÊ8'·ÈP8ùç艨¦À•¥è£‚ªŸùnBƒÏ,€rý“óþ}(Τ•üä7@xK*ÀürÃåõ’ÏPW áÙ€§þ¸#ŸÈ~Àü¿cÿ•Çí]¸é?¯¤8~z?@ËóÊð§äp'ã“óÏûú÷¡dƒ¹!Xðî:rˆù‚Kû¿ @äÿ^õ~&fïw¸}÷½ø@{Å_6=Êïö¯÷kŒ?NLhù#ëœÎRGõÙæ‹Êe^eHîRÔý‚ü R¼ NeUXKð…‰–ªxI«§ozP­’¹­ù?1¹f6úv.ºKfÖî¯ÊjØ‹«Ó£pDÜRb¶!,ýü#NÕ/0ýs×’Y¥çêÿz¾…Ò>"LžŸ¤\SÅ ÀñÖñ³R8’(…¨e³=”Ü@"šNQãŒ*«¹#‚Ñä1ÄZ–¦5ú‡Šó³ñϯøT!?†òq%Zl[p‹E=“Û?ÏÎQç5”VCgý=,[Î6NÅb¸¨:×Ñ·Žu¢ŽÙ>Íä‹1Chñf܃?›£&0ç¼3¯í:®ƒâ±øúUáLF©¶XÄMŒ‡ã1GÈÛw·Ï$¯ªx_DÒóšnÇ‚¨ò:³·éúÓX¾Ö+&#|؆Ï6#eS5©²¨E dªÇj ‘êdöyŽ2¿ŠuŒ0…"i ' 1V’RÆ*#¼’“R@´ŒJ™ew!»!fJå“•#‘%eŒÈbǶ¡Hyô¹>OI:4!DEÅtÚú’öÚ¶ß&§1­2å«)¡·Iâïµï—éÅBÍý hò9<ö7cÝ+ºæ·]«¦]ËBº ]‹ÅYÆí_Ôqõ¨®C°«ÜÙ½1Ã-(!©ì:È^ ñçцRíÝ¿eóFá°[Ù¤Åø'ãœÝ-Œl7ox=­0N9wjXi› _[8û _·!¾gLœíë¤^¤LÝD“ÆÆ7n¡œܸüz¹g#´ÔVFû°EÖöÁà€#báÕÁä˜X ´N½Ò@ŒŽ?Ž+rZX ÑdŸ©õSðχÏQÔt°’uz[2ô¶÷j˜Üßœï6@‡]Äé©SÖ(WmªèÍñNÏѧŒ´Ôñ9ÿ%ëÐæð”uÿ#ŒÕö²yj¦/3.{Þ@3Õ’·¨d,XG—”c¦ûH8@ X_%hzï”ô잺-ó¯e³f^ùÅØûK kGÞ5Ï!ëÝgÚm³jx´’ ¿Ç ÚŠÁH¦î†ŒÅÛ†…¡/T˜I%veìbY#üù¨Åÿ韕ºÐ[¤dv=‚JÂR\»ÎQ •5ê’E:mÄ‘=ŒµDik´f"®<¯/¤1Óѧ¨Œúª†ËB­8O­&3u$Ȥ¾Î6ª{c8â¿åþôì¾ë’Ü-g÷x0ÛçŠòFÇã:™ÅƒÇ;ý…†Ô6ÜÎ×k+r)jT³f:· ‚L­h­ˆÊ±+ÌKZšv‹eÙ³ÛÞ'·éµ¼º6©˜ƒ»»ÉØÍbj䣚¹aœ­—ÈÙl{Ö {‚hÑ”ÙeWVe '¶ªÆ^ót³#°(åaçÙ~ÞÃ@=€†Êsèa Æ‘·,‡´Q¨@{:³qžƒ;uz±LJX!ëdb0)Ê1žœ´a(Í%(ç3)6‚µš×óä£8êJ,N‘Ř='¶Çß úgñœØC‚Ê&Á”¡6Ïä­Æé·—ilÞÎynºÁ¹ËjD ÐÛ9è¡{IV¡bÑ*¶ÎÚîÕªiZFN9³rMq°z&Ddõt¥e£W¯en¯/ ¦QìYUOR·“|S§ù~T±º-̇8}ã $U.6>¡¾Ç]å®kÛI!¯-9ã!qWÑ}¥’7>¤Þ¥Û†(é2°‘å2pÁ¼Å v2Öˆ{Ùâj‚!ù• hAË¿V–?nDDXJ€„Ž' hÿô¡„²5ø—ˆr¼¸04cꮨƒRË»Z“&÷JËØºú.£tÓgr& ˜"yâ¯WúPÐCäîm[G’·ÌþrÅ9³{&ç² Žw!ý7]ŸV£Zg‚•xjÕ¡†°ÑAZ8QkØówvbe]‡Å¾ÏˆñÆíÌÝH|Uµê›†£Å\5r°æt¼UÌ 3ŸÚ’;µ2X –K ± ‰5ŽÈX³LÇ"¬«)E:„Iˆ„bid‘üGýD½§ŠEÿ²Ó¸¹0Ú$B'é»*B[Û•L=Y9NËGjou"_ükÈјñ­+cH‘^&@r¼´#(šqŒŽ™F8ꈕèíooÒ<Æ»(IÕœºn•ÙhS&öÙWŠãŒúWñV/]Àë4—c\F¯sÆ–ñ‘YÌ•løžƒPØ>ëíàb¹_‹ðp]–AǤü·Ò‡òÖÞJý­ÿQµ²6äšÞÅVÞ1;w‘3žUµ­l/5IlI…­¸lYÛ£-,Œ˜|ÎW ÷- Ä-›föʤÞß”£"ð0Ä$q« X`ïÉûy$UŸ“#-r«ëG+9˜ŽcšR!Lk2¬,‚öû8îåŒ{°Nb—†¹—šÿÊJ1‹Ëéô–-7Þ×é7?¤æ5¢©©,”æ¬Í¬eÇ•â#ò_†5_'E¨Ø±—Ùu]‹CµfΡ¸iÙ:ôö !»GúfBµ[WëÞ©kÿKilW‘beè‘zb¥? ø¹èl¾HÃbà—ÇwóZŽkzÚæïšñMƒ.±í•%«%‹ÙluŸ™–+5bºê±ÞŒ×è=YIaŒL¥ÖOpòXF’3uVJ¨}•‘ù­5?o2¾=%=}om‘’SØ•îÁ¸š&VUg2 íî}Â…Y%# ¡®Ñ< Kjr<®£×=2™Û@PHv‰¶ÆW…޾´BÕÁ‘{?ZíjQÅ:›èŸÃ%í~ß‘²ðÒÖv?P­i÷¨xïŸØ?Õ6ªh‘ÇV9pÓãöp3”¦±%‹]EŽ»Éñú;µ}ø÷o¯"l;ß–²<¶m×÷–}¾&Ú<…ŠÝrx<þb–É’’‹*B/ëxÅ®©¤®tÒVÏÓÁŒáß„'1£:𮃠=B;»„ÝR9W’8øQüf²É sa}95ˆb–ÖJ7÷B¦úž± DeE„•Vaå|û‘Þ=½6Ýþ?  Â=£ùŒ³ –0h„̲Ç4ch5»=☠qkÏ"XȬª¦×rï0ìb…Á‹‚²§ò•ŽŠŽÕ‘³”q©©ÅõgŠC"±a³…®-©&•…—ŸÄG8–޶Ÿ/˜É” ‰÷ .‡j³u",ò@Ü$Qt~\IqˆÏ"(½°«'1E^‘£³¥’YcOm¬ÁØ×Zì—áíz9ˆü™çOønLDTòN§¡I°{–0ã`Ÿ'Û'vQ+¤õqù¡Jìèéff« ¼¬—af!$ÇLe©¯(@e(©V±Ë÷k‹!sHÇL”êÂ#%®ŸËÒíÝÎwÛM W]dN¹«æp¡b_±–y ¥pÎòÑY$UŸ) G‚ 'ƒq×Õˆ2y)H2•o³Š>=µïRNåÖ5“QŸác˜—³–V%ŽÚ°Tvw%_`Ö²•aËâ¶\ú¹,NO?¸ÕòT³5Þ4Ó°áâ9XRIhZ/Ž¥üSYœö½¬R¡gdÊâ5Ú9l•Lö”ñäs™–,n¹ ¡[×ò6Zø:r²MÖâ{„”.aˆ—OQ!Œ¡^®”zºvZKÿ˜òT,—ü(õ*J=2»º[³`Ã{¼?}`Xò9#‘¢`‘ÒJŽéŸŽòN®*Æç›@I ül R¶¬PÊä@åÝ¤Šœh¹à»¼ü1ÆxI,)‡¶œP÷’ü»âïÕ¡wÊÛþ¯ ÒÉ\“N}›"õ¤¿f/m"£V;·ZVˆ¨²‘ÑŽµÝ—!‹®²Nq¿ywž/Ó`ò7Í{PÒoÛÆÐ¥·Ùy2›·³½t˜J¹…Ì>P:%5«š6àa$–Ç"B6<Ô£ÒuH뇦8«:T‘þü›ÓZÕQ¢U'«î‚÷®&?µÕœÂ‡'–Di#y9¡“½Œ¥€~ªÑÈ«7@@V”[?ŒœzËA¬§ÿRÉEvujÊé#‰\’nØÇöü<¯.ä®Õo§õ7ôé>†<§WÌšÞ?—bÅé͸C•³..=«/ô¸ë¹è¡Êâ1_W! µîÈDVñ³Æ^½všF1ÔÐe_Œ·ÒgSO*ˆ@^¨ƒü½S'.מ‰*óY"™±óÞ¸ŸÄZÄLxÉå[©±LøøAëe¨nç·Us?)UU«Ò/h(kEX¶G0bc^”âWh¤¤Xyr½Mž jßÊÏø·“ê—ä>¸þ±Uð²å~¡tUvMnžÙ¯´ÔvÖL¶¿”[3ÒÊÒŠ¦¯"˜mÁ^[?ÓacpNYà îÂ^ýS};>á†ñÂù‹I›sÏ×ÅÛÂ`¤l˵á®,âc±œ|:àjfs5?:˜Œ¦W°äªþ4ñqJõn]"ïr2>nŒ’»#½7ØÏw…tµk©å¥ºHMÁÓmm±ßõ»âÍC[V(}¬–WÜ’?už:Ð*?ò0™»÷Ò$ƒ«¸á©JD1Ž®x7$Z»H å²Ñ«,|ƒ…•``LÑ2ÄŠÊ$zœ/Şǩæºù_êÁžŸ˜¼›‚ñìÛ:f-`¡ÌÒÏY³•\$U›1j(uÍ{9 ŸÒ’åS`N•`4l$–Å蜪ÏõYôÙ¥ctÜÖÕæÍ/…òN6ÎSDËÁ6s`Æm¸º«x{úÖ8¶¡¦ò¢<öþÓ$dfÆXŽ0$œùrS%Î1”31Ô€†Ê,Û³wçsjN1cË©%`ôIêûh?¥‡µ¥xu–Dd2ó¿·ÙV:PIÄ¥ŠLìÿ!š•‚‘aÈö¸ùo[¥]Xª!Êåû{š5¥‘Ð!zÎ$ÂÇ^Ê"/ÏéòønMØ>°¾˜tì™´í^oÓ°:çéYÈiy+CkŠ<ö+iè\Í×§Wk9ŠÂcnG%i³9|^;‚œKZÅ®à?©GåOí›NoKÕ÷ 6ɵà08m“9†Ç%ûQÖö¤ð†œÕJW«fà•q¹–­*ݸ)²Æiü©ÈŒyµ”“ÒKMnAÒWFlÎ?ïÂÊ:¤YKAŒL+ùK¡ ºÎÙöâb0jlÀýþ\’Ж¼BE¡,ŽÅÿ÷*®±ð$2–r¢6µõU´¹,²J1-VÆQ*­†aÜ)D…ºÙªÎVÔ¸çÔ.þVñ°ß²)ÿ[a‡’ñ’y-¥ØžÛfªiÎÒD3öi lÕåX[ÚhíK’½J%éª'ÝIiWM>DÙq:fæM?`ÚörPà°µhíxéópŠÆõ|lû¿ŒÆÝ¹ #U©ZôòH°ÙIÄhëê? é‹ÍRÉ„nP¨¦ ]ä÷lǵþ ÒD’‘št4‹N/./âÝG­MÆC8¡ä#¼´á`½C©UŒÈywOÉ Qÿ]ûÆ>àn’-Q'#•v*&Y´™Tõ'’GUjý—Ü'jêZ@=VŒÇÔÇÓö°<Ÿ{Êš½I<#c_Ëu⩳ä'ñÌ›UƒS_ƒ5/_·uÆZú¼0ÚÄG˜³¶_ ˆ•mk?Y_K;åšô4Ï7kyÛ7óÚþ§E+a·šBö˵^›®a)͘ÔqÕ,YÉ^¯b¼b9,UÃÍÛ³2‡ÖO—$Áç=Vµ×È5.îÏ­öxr:Ý ¾CÐ%z'Þ¤{d,Z>Öqn㯫+/æÙYc+öU9/|g*dý¸göøüz¡Žrd =dA§…s.G,B¼d‘Zº~øÈáûÿ$Üu°ß0HL ÂÉñW±?SŸO{’-xŸåÝG%äzÙL®¼u¨dÌE¼öEŒæ·†ØeƦ©˜ÍÐ¥Ék¸ŒîK3rxæµJÏJÔ>¡<'šÕêo¿(kù=V÷èø¢¦z%ÊÏù;#˜_££Íà ´óSå¦#ÉP«‹™]&ŽóH‹9h¼¼¨9[FþdJ²úZÊg=¥k…º0%éË£cc;{ã‹öš³!–`RDU5 E*=”{œªÇ âò¢”§¸<7>¶JڪƮfz'S!j3-yOl‚)ïÚB#UšE^e²U,EÀW>«ÿ•<Ûâßc±ù/-nøm¶zä¸Í~­È²™l¦Á©šÕ\»„§›ÏfMX9’籎jí’¼À)OÄ}Fx73wÄXìO”õ;ö¼ò¹Æð³U¹dE¿Ï«½3Õµû³PŠ¥ æ"|hÅæ¥Åæü‡úg‰µzÁ‰L®”¹¢,Qéu4ɼMÔîwÃŽ!iÆ2ŽŠˆ·Ó*hÖæ|×Iëê«ÄMʼÝÆ%¯]äŽE'²±÷:¹J—ÿ@êLƒÑc_Ve1Å{2WÜ™`V¯^F2Y©ûJdæY³ô¬ÇÿŠw†BEztÝû—Ëê; ö/ŸÍjÙ›ôâ½§Øõ[2TÎân.WMã› f)I ãêL®ÓZµ\ޱ¦õOôñå=§9§h]Õ6M— G'–½ˆC›ÇEw‹°Õ3y|FG-‹Åã6,>&ÒÏæu,–Yp³õ¸žÆ=¥ŸÑ~LHß7Ó×Dnza*B]6f·ýþ«Ó«!þGTtè˜FM~Tl´½üã~-7µªDC¹—få•Ízá^?íÊd>Ú+–Ž)_ƒSçŽ}kÿؘ•Wïó¢Ç öÍ8g°?oüeÿ¾äªøÚiiHGªŽ¡õmôÝä<®Ã¯iždÖ¶,Æ·‰Íl¹H©ÓØÒ;zþ¾d`ÏköòZxÍψ0L23j62õÌ*™ÿxÒG,ž›êÇéÊŸŒ°>g±åífí»iúæçö»š½£»Öþ‡9p§d{~â²×±”£¹]‘¬ÉV?fIA>YŠœá‚VüÝ:+¤_Ê]`¿.ÙáØkJ4òȇü’YE¤³Ü$ímaâÔ¼Z£•Y.æáBö‚ºNÖYë°êí'hˆâ×b}a ÔŒ´Žˆ¥TWô$ÆP™:Æ—UQÉÏ䪘߫o§ÞFÉøŠ.kÿó³f4[:íÜ~ÙEÝ­þ­­&Ë‘×á×-娄·Ž†}ì$iÒ‚]pÍéÆþ~ñ~"µçÆß)¿‡±ë{;Уž|dqá³Óë95—5³“™ê“бíc»ä‚Œ’{ˆªÌð—/.¢<ÝôÇ©c©••Gò–uKlýø«§V4º mˆ enÝ 2¬ìãéÅ€j 0âöiP¹`´ªÕ H*½ùT÷ÿOû‘±îÜ!ôu¤Pss.8‘ç- u+d…þ§÷ð²GFó”åc!fƒäsêXúöúJ¯Ÿ;7˜|]Yš+™Iô-¥jÄÆlX½>‚Uzçç)!Z–*ð‚HÜvôõÓ~«>Ÿ<…s CPò~;%g?KlÈaVÞnÖ’Æ+EÆã³ÛVV<ŽÕ®añ5qZö#5Ž»_+~hh-YÚ)ìÞ°²,gæòÒCñ»‡ÿ6”méÙº¿Þë†tµÈõ<µØ•Ó/JShµaŸ÷/‹PRêÊÓæýðÁ]¾Þ³`y… aÈ•¦ƒ’9÷—ùdùzÝSRb"[9³Ã·HÄp«,AŒ™UÁ—«û©ŸÝ€eǨ}SÍGë'é¯}Ÿi:_—13¦ëÙ-Ã*“áöÜLw4üWfËìºÀÌkÔgÚµúl¿Ë{Yl”‘ÎG·¥"3H¸?<øk“Å‹­ïxœÃùà °ì^+zµ²¢Ã¨ÅKýQn›=& kµëçhä^„˜|ƒö§ßGrºHêò²”H󌭸֬q+#M»³J¸+‰->b1W—¦‹zJ¿4`\}ø°O_U Î$̬E+ðzžÐ¬@±0Ü‘?ôŒxíõ³¦œÊ±û¹_m@Y€Š ÒBêåæ— Õn˜ÖERÞEd>Ñ 7G Ç*~K(pÎ 7ø5‚viÙ9 cœ”mëG(̽ZF#¡.í·`ýÈä1…yZ%ö’ʇŠZ|QÛµHmù+ÿÍÖ+?œïYü©œ<ù¾(5"‚›Žà½}ü‹[pæW0›5#ȱÁÑ,)ëf¼ðbååD&Ȥ·é ÔÇY³eŒmº¬H“D·ò/o~"ÞØ$µ¤åf ¨ô€Å•‚€ˆ¯÷$ ñì)èD‹¹ïëËZn>öA*|èðõùwG Îä:ŽªŽ±ÊÜýÑÉ¡8$Ɇ“u󵪊,웽 vmô¾ ©ù }"—“Þ÷wË{áË„=.[)лörbQ$2³vøJò0D³Çh„SÇÀÐ[ÚDoë   G·\•nÅlG"³©ŽY+ÿó&æÙ$ôß»ˆ 3¿Y˜¤N‘~^ßI‰ìÞ¬d’”°p°œ}¨2)DJ«±^ÏÀŒ±£:ʪßmdu’ò3R²=¨ãÇEGùšÇsÖ`þšÿNËŽ ¨·è€Teȹµ¿{ªÛn=u^«fÝ”?\à.¼S(Á‡P”CØŽ5U$ºÇ™ëÔá – žÌ.üõ5-,3/á\“ZnΤÞÑïíÊžbiV%ý€\¯äDp•ág#®&R$¼ú÷µÈES"¿äW˜Äq…r¯í½fæŽvg±w£µÉÀË»G˜½/ˤ]L™YôÛúo•âuäz!g¶Ø¼ýÿ~1ÿ¤øsfxPÓøC5“ ¡ã—ž2{W­ˆÇoÐùó¦¦È¼Ã›{‘¥z‚ìÐY‚¼ù¯žßÊ8§Ï+ÀoŸ}‹EÙyXD¤¼ ¿·ú óªû)ŒVQRÔoÖ¼j±ö$4•‘ý°&îcpÑ8NíÓñ™V¹ªâÄÙ¦{ÖLJ« ¬»ð®•­jꕟϽӔ‰ìö<ã<)¨etâÖ){+»y¬íÄõ¥¯/Ò?ÔlqWËÉ4ž&Ù’ºHÐÇYKBbR§¨p'x‰-[¯¸X)$ô_Å£Å*n½Ù¼_ã£Û÷úÓð¼?<‘Àä·+Ï þ_®h}bVSô§õYå,ÇÅ›9Tn¼•j „yÙ¦@Y2qƒÑ‹Èé_ˆe â?õ‰Q$ñgŽAöÕÑØPcB…<Ž  “æ>1ŽcIg)%̪pZ ¯.ø8ï|.]\¾§¦1>iq ~AoüÅÜHJ…¸1‘ÔönG ññÉûº“Ï?îyù·ëð¬YX0ç²ð>àÓsòI'çžOøÃ2óп^H=Bª‚ï°á¿ÇéH'äò9ùÕC|³U?Úx^?` nüñÇ#€8õÈÿ?Ïóûg£›ÇéÞû¯‘PÄÉÈ=ÄŠUXŸ†^òÁ È-ÏÇïŸóëÞƒvE/Ê$aUê xã© ¿$ÈbÚ>ôÄ“lgý8‡¿ì~»¿_íïÇ'ü?Iæ¿­Á`ˆÄßUù¯m +£{zƒ Jr NýÉ9jó<²‘ÿP}:}³0‹2i¥²-OBE[•2r¤M<¼ÐjÑÀDž½OÃ~oày7O!§¨Ì;¡p·ÇW½ß‹¾8<ñ¥øÎ`še¤G{Œ}W[„DÛûœ!Iõiá8ñù{7³ù 0¹ R…œ-¼ ض çòyÒí㱋X»ß&˜ëLM ÒŽXœí ê'ľSÏG¬êYìÜ´øËù\|w0÷±±åªà.% ÌXÉ­E7¬ë—dZÙ ñ±XIu´[¯ÅXÐ>…/ê]}Æ÷’õ)yoZÉâ5Oeuú²Ýð6Á付ÉṕÜvˆ·³ÑòGd³’±vÆ`Çß¹‰xp¹:8œtû¡};ÿ¡sþ#ζÙ>^Oa<ÃƒŽ 1&¼9ÁåìŜܖ,:\sXáÈ«ž\Á‰.,”Â4~´rúŸœáótc > ‘ÓêÞ!"ÜQmUãô£ZˆOåM”¨‘)8òÓW±¹–ï(åwíogÑêT}ç?å fÎWÆ#=äÝg}ÏÒÈUŠÄ{Å­ˆ`­kXIr6çÆC_S§³XŠSIö 1++C>ü±ã=ƒé»à S±‡Ñüû»ù_5Ÿòµ[a‹Çy]»é—Ízѵ‹§—Àd6ì÷í»[ÇâuÚÖªdôq‘šÒå’ ´5K_âd¼¼Hc‘œúYTZ°n.æã]³ttyŒc­%tÙ¤¤²+L«~ÀwRÜUÏ¡õá̦GG´‡ú‡ˆË%Üuw›€©ŸšÅ|Sl×X ø‰¯Ú©j½Š—:JÓ@òʱ‚ Ž·?­jôœPض‰×~ñV–)ãq—+®CäÏ6j¾ µºa.M‡%Ôv½¥!ÈÛ®Í,W£¯ƒªŒ2°ö‹1AZο˜ÅØÇfµ Õ<•zsy,î9“bÏe2)výëù_Ü«°ãièñå­ß±ïG›ÅíÃc„b£¨ÂK«Þú@Þ.éãÇÍç8WZÔ6oìÞ¥þ‚®ï«]ñ7Ô~ƒõ+JöûoúÇÞo9œ†oǸÝ8¶6æ·„mBÞFÃã,m¯F6u>1!Á’t4IåšÕÕÜnš>’‘…Íc¨ìDÁ¼ÿճēÿÃÄJ¢-¿5.õ|¦Å^óáèÝËâ0X<6ÿšñü;nì,8Š“fðòÕ½¼.*øŸ·h£gêÅFéÿ/0yôÊìV†Ô1å)[8\ÔšpÄG¹A‰ÊôûL™ÂMœÃÇ™ZÒ Öá’DOÄoè¾ÝOË›ïÒ¤WÕvMZÍÕ×#eÄôùKlò» /lKyªKµÉ„­ Ì’d"¥÷Vžæ(#¯xg˺§õ ð™l„ü3óŸúZÆN=HÇ“¿åkú ÐYÄì«Òf.ÁbÞ·’É3ä°xyõÑ`®OŸkQ]¯!ÌüGN\¼utÊÕÔŒde(‡I&L^˜Ø²T ÀÍ%Ñäõ#ªéÍBR.]#OHž¦ñ^-\W ?çk{¶'DÏg.c³yl¶NÜÔeþ‘ϲՖ}k >]—íFc3N¼ÿi\3Å,1õf[‚ÒòÔv£âíæ=?r«•«‹:l»”û:VòÕqš¹tÅÝ·˜‚¬lôq8÷¸³zË(&[*!€•‡<¹ôoɾYO§äŒ.*j{·Œ|‰‰¥œÐíg³˜,¿Œ!jk8œ¬[>-1öîÝĦ"M††vÃ^9óQ@I¾bð†ëä]5—Ô<«Ñqû§Ž6ïxL¦—Sm|¶¸-¨öi°WNBƒáö™±9 øê™PeqPýÊe=ªñÍ™ê|FPÖ”tpæ#ò"ŸD[d¯åü¹Æ÷ÛÇO‘ëÒ%¨±t«Q·Ó«8^š¼Ê»!B<(îT>4ÒáÚêÓ¿k+±a5-ËdÁã–)kbw†‘®®Í˜Â`3²/ÛMzž*h-MaGN´žÒ3…Ö|gõAâß&QñÕjÙ?ôö×ä{ǹl~«œ©c(¹¿iÕ·0c …&ÃKhäqXÌ›u‚îJŠY^#¹ µjÍÿÃú<–ã>ÁKÊU«VÿŸ 2ú+f÷:º÷’4¨4œ¶©”Ù?¯ÁNÞ;VÄÖôªøœF6*©|Ïõ™ žÿôäñEìXÛ²Wòßü»ðׄ|U»j¸\Nƒ'0ž$8fÖ|š‚þNÐËeá·„K9û˜‘ZLµþ$RÂÂí<óeyŒBRœ´cQäé¸ÕÅvUiA¸®æ“ðéF0Ž£—3Ù´)¤ÈäÍÕ÷è.£¸`7Ü[V©•L¾ Ýœµ÷Õ^:óO‡ÉYÃf}£ø’‘ä©X…ìCø3 –«›±s¥† ’ñþGß•€ÿ¿U)$iø·HB?£+t4d¦…¥à|m£iº&«Ô×´Ís®âJòÃŒ§?¿µj@«k%zÂKrí·KjÄé"_’ìCŸP=ÅêdPQ&@TF’ìyýØUÿê«ÙšD¼V«ÇÛ·¤®œ%¨£ut‹S£«@~à]·Ç2@Nt½1R=TúK¦ëzÂÚq´©0^¯2È;†FV?“8-¹×þìeI[Ž×”Àõ¡Äœ¬ŒId•d —3*"Å*; ¤¢ŠU"/·-Xÿ8l ª²+ÆÅ™ÊA$?üÚ&-ó+©+^cÍeö›Y™ÕÖBêá1I©Bñ´d¨Ñ²»×‰ŠVpo÷%™=7©\GlçåÊ[NÞß ­§{sãôx%$Ì,…(P¬H¢$$ÆŒ{EIHÕœŸx·á8êO¡š~ DbÑñܱ“«HKõ=ÿ™©›‚²mGí^!íËÏ¢]Zë´# `¡C)Gª¼Àr]䌲·Íåáª,уMÜ{¥ æ2‘•Då¦H—€1È,",¼/ñ}¸±½ˆL[ô‘Ç‹®ã½ÜK±C¾6/ë7¾GFBaeP°d!¢Yå•"œmÀ Ón!ã–?—´÷û†•ÄàõP Ô°é÷å rÄE9ü­(j®:F¾‹ ’DíÄP{SFÍÜF爙„ŠE?É\Î ?øà·å8Dz÷ C´ŠÍùK/yÇ çÛYÈ…º–üß QJG6=B4ŒN:‰Ýt­´(ít”^6Ïn|Û–VPú»/êmÁ£*‰d•_…™€oÈ”?Ä}Â:‰"n}‡?„”RÅxɱ žëIJHŽ>¤qÄl}È# Åt²=Åꄜ:ÊD8,±<ÃŽ¡R9[ðöË{²´Dòb'‰¸Œ–’·Ó¯ˉ¯­ÄDŸá˜?æÙLrgAÙw±´Ms‚20†‚ºG4LJ6ús€­½>6 <ã†WîçØÿ<ýx4’òáå?&#^F²©:1þ9þ+ª  deõŽÁÀfUìU*÷ C³ù~¤ì*HêepõmôªÑñ´¯ÊF«þk.û7ô/ˆvóo|îÿ­}1Ÿ;ÈÜvV·IL¡ÁWdìX»C{¨JÌÓf#Ò!ØzÒ5”Ë,‹Ã'*B NѧTèlG 2ª±i?G­z{òŒ£†‘ʳ/ؤ¿cžHG\lŸ”BEcëbŒÇ^Ûb·$ÊÅLJäVŠê‘•;*ufÏ·ù‚”âÔζ§¥Ãw•ªqÛbüwöÆâQ–‚練8ûxÇßð/ñBÉâªü‡Œ÷q+rѺ«vU÷ºÈ¢?æŽ×YXˆ‡¢‡~óHã!áñÖÏpœÚVè'hÿ޳*=_ïcëB4‚u•UŠ¢×ï~SÕ$I+r9%<=ôo²‹¤……í4ED’HŠc‹„VêËó~ȉí1Jî*Ä>ÖØiÕ jÇRåÍv"Ö>»¹Ä}®¯~Ùíû«oÛƒY$æ2Iöä•“á¥CðfNœ3ÂÜ@[ùF}’CÉ丒5Ì­$‹$a½Ç™¿îÍ:ò³Ê ûÈ‘ C²A˜tœ¼q<~Ú–E1Ây‘j¾â÷A$ý}¦“—–cìNVœŸ8ûiUDnª=Ä÷ û@° Ýd ¿ŠP±¿RSý¡«î$ŒÃý¶\^ÞZ¥Ûà’ìú»ncÛ{­¼gcjѳ…‰ÈÅÝBƒ jG …ÄÑ)ü)¹îß2ŸX[±º£@}¾ f(åF=ä ò"‘Ø3©ëOÍ•"P<Õ¤>Ø™‚±@bã™Ñc*ÍÒtd Â’©eKýÛŽ58м±§¹îG))±í—ª)­‡È„ƒÙ*j1öH«Ñ\Ö£C—±¸ÚZ]­ãbìßô>ݱž7êdW~TK “,Á€tW²È>KìId€{B2³D=åcèB°ÌÊ•fY™LÌ’5^åÐá¿øåxžOÈA¯» +ŠÓ‰b Bд-B:ÅÜ*{/Ù¢˜-­ÉF"Uç€#ƒýìT¿'O» M!ìCƒ*Ìz*0ôGê)fþ·^ÛE¸-Ýwí]¾”Yäà{2F%f ÒôèC³v{¦V™L]ã{£4é ã–TDv+XЕë>Ž߸bãŠÑ”£³ËúǹáäVfþUØöƒ<|›ún>ŠªmDÖÇ·[µÌŽì£c_Û/؆w‘dU䢲+'b`Y" $èH{Ò–¸ )+éZ¢Ý¶w´¯z´º¾û{½ãcëœþõþœí¬`³3¼mб‡´O)éüú Oeϼ²<”Áä#Ó“®dö)f“µÚ ’X&a¤w1ˆ˜:ûR UxJ2¬„sØúoŸ“Õ*xrÁOÈd­‰] ŽÄèD3TEJCïaíê^ñJ·½ž)VY,,„hY䉿+ÊFU£!žyâè× œ¿9ùIhèKR4Ï y2ÄÛȉXâÍ3SPŒ¶sFô1~…ö~µç„3ã-½ÄëG‚g=D걯ñ—êOûv¤²C½¥ITˆËÒÎà2zôÕë京¶î¢H%n?S=…¸ã•šßÉ\z|E·ì'*¸¸ò±KŒlâ"åZ?~Ž¢ó„ ‘³ð!g nÐ$apkÊlFc¬q. ‘rAݘq$ªÈŽN ¯øÊΤ/¬ÚZÜÏÎÓÓÕa(êA‘ÒnœÜVé*ñÆ™èè:Z“Ó$KM‰›öVKÙÆ<·ÄVˆýìJ~ÚþI)^cFQûol)ö¿ýdŠžñíœ:ÌÕÚÝñ!^Ûb³tlTº*iÐÞć–‹šñŽãÓiØb¬Ä%Çq´ƒ±ŒÉ,hÓ¸í7¿ÒJ*µ$v+Ø’.BóI'pvEŠ$"£{Ë?´„ÈÀžÂV*OÄñ™O#ÖízùKuÔÄ÷üðÛíT·úq“O3‰`ݶý0mïœpÞ@ÊDjŸµ‚DE+]£Œ3VEŠOÌE‡Ü¬¿"; ,vùŠE‰ýMøŸËžSó§…¯xÃo‡Æõ0ú'’±9ï"ä´|?1¸úÙ³N¬ÚôšþZ9"[Y¸LËD!šGX:¯Ç«¿Äf5PÆ7E$~YŠº*¸eiVÄh¢jê¢|¼ –ch„ö¯eòæó¦îº'Œ¼gâx|¯¹nºþÛºä)^Þ«xÿ‚ÔôÖ­ ¼¥ŠLÅ÷6ìäíÔ§JhÁ!øyË?; rò9‰j}p“ÒzБP³>§vƶp]ÊÏV½Z$%>™´# ÏNG.õG¿òÿÓŸšüms]ñÇ€õï+ÙÇx{^ð´~$ò-¿gK9,ÜC‹dòæw\Áá²”ôFôø²Ø­†®É¿WaÀÞLEK0ò»yWé7Èûoò>FÎë¾eÝJŠc—#=˜¾Þ¤ud~Ó¥Ê|?R:ºº|Ö¤´Í6.gK¤zX½*Éé Šýýúsæ¹ÈËKN\´EœBqÛRHYÖr[Çsz·ŠåõÙão n~Fñ†ß¥àü‡_X§áo5èÏ´xŸƒØ<ŒÏyŒ¯®ê9ú;ZÙÅ.©“‚¿Ûç3ËÍQÈ¥¸*[Žy™ýóŸ…|˹ý ý3ø®Ž½ŽÂùWWݾ™-ìøl ó˜-*]/j«{5•ކAÜ_ÆëPGVÅÞNöDñXï_àZúºðÂ Ž®í—²FǓԗY¯¥lÓyç±èó9j¡-?êòV¥’ µ«Ò$t"Æ[¥”¯<·¦ZÅáœó߈µŸÅç|–û‡¯âiàÇXƒs¯$ÖjÛ9›KŽÄcà…=«63,ƒ¦,b%îß´M+ V@Xk/ÉÎ\Ö§âã#˜Ñ‰¨zSNCÕyÁNP麵®3:üÖœt"rÉòµ^ލ²êšˆQFoqEãŽfù—è_Ê›Þý/Ž®aü¹‡ßò;‡—<ËäÍã¼{›ÞìáŸÇÚ+€×#13êxù¤Ùm-XU,ß0Í{iêCñ޼Õß~ƒsþWЮC˜ðö±æOyk1v•+U¦ÈáñSkº®Áb!%ÜfÃF*á'œI4KÝb²£qj/ý]ø®†Z¼É.OLÛw=ƒ5¶ã¶K=®C¨ä¨á®Á›–×ÊÇ5œjø‹xì̵íûðbñQå­Ê$ýj}5بg“sÏQ³k©¶þ‰¸PØäØv,E¬öµ‹Zµ@e›#˜ÇRš|éj ¹äí“`ò·Žüi–l/õ z®¶¾A’&‹)&ãý7#Éäñu'ƒ).©NÄyãµ-ºüq1w)d5|>.Ö@Qæ\¾sh[ÉN ±¥š4ú‡bô¡õEàœÄïK¿C–]ÛVÐkAOfÌ™mŸrĶoUÈb,®-ˆŽ[u6 §ú[A †Ó›p´bér—òÞd†¦œô‰F£õiÂ1Oê+Õÿ3TãŠa¯ÍS¨h|Í=XNB«œíºÅE–€<׿ÔÅmÓ]ú”ú_óFµá̺ͣ·Žõÿ5áö,§N…¬…Û|ÚKá$š,¼‚¡%Œ]¹ŒzÖͧæ€õÏþœ|ùã{^ÚgÑ|±l†×õ'ä þ ÀK§ç¶ÿAå\®>öTîPYÖc±~*Oodû:¢ V¹Æ…9=~òGÔ‡†|;±UÕü¸XÂægÅÕÌÚ«K ˜Ø«ëØ+—¿¥cöË!Œ®õµìË­ö°eòR#daV3%x+´Ä¶›õâ$ù`ñŽ‹³å6]»Yµv¦Ãöægú"Þ"Œ9CRÎß$)€’Ūv`›[XìÌnE#à Iòṇò\μ‰óu©)~•5*"ÎþO5ãû¸ÏôѰæp>CðÇŠ5*x Ö¡¡£^×îT½—Ä׊唞 62ÄÓé¼ _¼A-SÀ¸êŸÀí´g´É·›)•ÂYÙqù ²êùúš¤¹=2ºßÚuìÜj-žw]‚S-ìeIMø¦÷¡V˜F±‡Šþ¡.óvÝ´ä¼’×p•ªxïú޳ä#¯o”sø¨ëçsŽÈܣ޻†Ì[µ^èÙ¶‹Ø¨@¸ž-úÚñ†ÿ5ŒnÝ5ìn^OÔ*ÓÍÇzfr´Hw–Åcð²fr8\kìµX–[c'JÖ®]»,OkúëñZÿPéRdwªo^)Ö3ص²Znr¦«å¾®§ò& …¼vO#³ëPX’ä¸ËXúÂl½ÚM¯Êq¢ä=gyO…§ãfÍe?Ìuš„¢ÏS¦®ý8‹x\mÅÆ¿<¦Ÿá b0ÄV!è‹${;™Çn*×Ó·ÓïÔ·‡ü—ã¯*o~b“ÍZ/“µ¨¸±7öÓW9½çó¾RÂí¾BŠËÉG/µj>דӪdi+Vm`׆0ÏŽ®Èv§O+§Ó‡Ò.ŒÚ«SÚt¯©vÉ»ûuk½ÍwZ]›7f¶uzty¢ÅVµ úä¼ßKÉz½}¥vL¤±kÖíêðЂÄpC¯µ{ùlݵijÏJ•}4¹o…ii°—7&3)œŽ¶VŒ2”< ®õ`5yíYŒyxÆD‚Õˆô!½5ÖïG·Ÿ‚üÙžð߆~rÉ`²>)ó¸ç~ l^ƾ“6µ¢fòùŠÛv·˜…ÿ­\Úv1j¼0,çî ¶½§•#<´°ßIrÔñ¾=¹€×²ra¼‡õ9­ïžxÓl݆I0·@ñ÷•ªDÍì,ù a±‚Ø#ˆs\da¶UL|úê×–¼ùâ ÞÃa÷݃/g;‹ËìXÍwZÖ3[ŽlëúñXv=šÎ'ý޹„wö³[-zí¹ŽŠWFíøãê‹_ò·ÔÂÚ>î_\ÂøÓ¾ÿÍ9eš¦|uõ=®øï%ç W\ñ†Íâܶ‚ZO´jåó³eÓjÕèä¿éíRØÚD«±KY’íg‰O-¨\¿C>Tò6ãâ̎劵ãêÛnÛõåø»w­¿¦ýËrÀø¯þMe£$q6i¶}(my|}Oúz)}Á!’ný%Áýaý?g÷šÞ9Çîù¨¶;íƒPÇO‘ÓvJZÍÝÇ\­%Œ¾Ÿ‹Û¼øë{\+Èôñ‘s&Zh÷²Q6ò?ü@<%¢h»~Õ‰§¾lYÝFÇmßÑòz~oCÎX׷⎎ÙÒ¦Ã[î©àëd/ÌôZ•kÒæ? rŒg5FDng–øn¤å=^péëdéŒV3¨ÆTÓ$HŒGÊârúœô!C—zˆÄ5õAV%*F¤¶ý/pôïá¯3æ>Œ|áâo,GüËåÌÇ«d²øéŒÔªå·™e¯WqÅ< ^,~fhÎB¢dšJVì„Ö–‡æ¯-x÷Tú}¹ô×§x¢_ý<ùGÅy6n°PÈZÃí{‰®x¿Z›ÀùLQKµèï®Ê¾CÉ_N'Ð¥Íâ`)%y=X˜>µa[! B/¤K"X¿Èà¢d£p§»HÝ}D¾Uúÿñ6… ù/kÀb÷]›oñ¶7 ”‡BÊê™#!›‡?œ›ZÅf¤¹š¥bÖ;W{•¯A&_)ˆGž8+Ñ­BkWêδjr žœ5õy¹ôH—DΈ³4èéŒzL½ ¿5ZqnŸ5ñÎzZz골ÊFRÈ«h½mQÛ·W‰þŽvÜÿ”¼Û¼yOlÛuFŸÖÇ“¼óã/â±Ø±[|¶UÔwŒ®Âk6r“‰Y$ÖÔU@`ŠÌAŠðÚÔ-¿¢Ïé.÷ÓÎÝŽØHÞ²Xݶlž3ý5˜þ­çÛ¾>¦ =Öš¬ÓâçûŒT3ª¤‹A/ –Ô¿â âÉãÛáònjñÖKR·¢k‰BL.Nü{†Ï·ëTö ðzõ|…|,ücä°éŽþ±f¥»Õƒ5iëÇa+¬­­}expØ4}WNÛ³ûn{É©%œ\¥•Éׯ l”¸L³ìÙÌjëòëÙZDZµ™´ÓQ–°•,Å+Û¡Êü.`hsn›8KJJŸ3RÌIh‰{³7Âjksñ_›ËÆA8L«èƒ¦iÔõ+ßÝqY1zg–7¥Ÿ«Ÿä´o;.Ûµý?íúÆÿ<¶k:3^W˜ÚøMB\T(¸¸Òd.f³ÔQB0àñŸ2ý.ù_Êøß¦½OF®¹µôm²ø›iËØšÐk^AÉøƒÇ*,ÛÔ bluüöµÄf&‹‘fL»–êå§ÿëOÅþ+òg”´#ã÷ oâ½cNØòžB]·™ÄÏkqÉ&.†:½j‘3ô÷Ýb¥•I¦¥”úSVÇÊå/­§;{>³«ª³XLÞÏg¯[c×n뫌·±æn൶HrÖàÊb$ÜrXë5¦š•‹OFÅS”Leð7¦ü'ÂãpŸ8’€hzºc#¢qžÌpÊI(…†8¯çsìHrªIu½+8½Zdl€!å÷8¦»ŸŒ~ ¼á¯xç'‚mx~ßÓ׊wÜ-ŒœÙA>CÛrz>†¥¨I*ók9 ¬™ r¯,)H½Þ*ý<ý&ùgÄ^Nú>•ðtâñvâ}‹?²#ZžmD󯑼£ã<¥‡¸^V¡> ;ŸÖ*浨ñqÅ _“a‡'Þf‰Íˆò7×·…ô\w‘Å vÿ›Ü4-k`Ùéi·5 †·>ÙÖ/LÎ\ÃÛÈ­›¸Œ66ò˜Û+—ÃÓ‚Ô[ÆAz«‰=.Ïõãà,%æÄìwÌNb¤^?]†¼Þ;ÎMOZÈyKYƒfÑqÙ»‘•çÚ!ž<}hÕìçI™`„<¾„t>XêKœ“«3ùŒ£ Ǧ-ý!, ¾Ü?Íø‹§ÑX!6GNWÖ"V”K}ƒ‹—ˆÔ£º)%’¢/Âõ‘¿>ªüŽç‰bba@ƒëvö›©(IQø8cÇÈ ˆý\§À¡+™Wûÿ-õ×ôã„Ô±»~WgÎÖ\†É¶jÓk·p Ûp›†Æ-֦ÄË_Ǧ:Þ·² ¶¦[µ:>.­«LªIõ­ôê»]=R¶Ã±ælZÈh˜çØð^S1¬T&j´÷?³ÐÉ9ŸnÃßHuØÃ³^ÊÅc’ZÖb‰¥ë¿äÅ?¤ßJú—¯‰ô¯l'7ð<ÍãGRîŒËWm%áÿlfð¬³çç»&ÅòG¢žöµs}ž+!®lÕëµíGÇÞ¥ŸeÅC½X™Eþh••£0_•Ž8zªHHrÝ•˜/QÄ\öÌÂçrX¨n_šÐæFzRe˦úe%…üÞÝÇ5ëhjèK£R†Q$FÉ.ão‘*ªÊÍYÆ«$MòŠzq$rrÌÊðÆÊñ+qÃ4I <Í€¾ñ¾µ„!€—ÙsݹTZ@Ålwdãû›ÿŽJ~HÏÚ¯Ç$â2Í'$ñîp„™ íÕ‘{ÚéË6V~Sçc®€‰"7v—ŽQ…N‘²0o‚*Å`ƒ u挀ËÁ9TP÷Â{glö 7\$U6­¾ÿ¶ÏrYäë#·/3–W–uS©—#øXý»Ä¥æ "[-Žâ% ÍÆ@Eä ,†IW^d a±ó,ýMFâ%@ ЮހÀ*Ì¿€ @`éÁsþA#ëf9’WZåØxœ|ÈÝ¢ž@Ó*ÈÀ4kù<œ½få˜|X`®J™ÚœŒ•iþ¯¿~òË£ïÚ€ò}+|}¸ß˜ùc\„‘¸Tà'½ÇY9 Ɇb>&Oûme„{¼[Â\‡$|d¯V”põÔsùªFI59å<^'Ž=jµ\"0 Ü’?—~Ä•‘!<}¼ÀóDñ$ÈäHÕY~}önC?ev–U@Ýž"£ÜµJ2'¶à[S,G¤|*‡ÿß|nø0hCößê7†þ÷¹Äõd’KôÅçháOtÉã=¤S!¢–¿玱ò ž@=ț⸠~z3áˆV/x•}Ù$ ã «‡=[ÿ±<:¢üøp  üUIà“ëž¿TŠéôÛç%1=€è‰:]JÉvbj|½îc#×±øBå­)Šýú—ô¢ÛÂWo=ñóÚÔ;Æ«Þ1Ü|U÷÷N))P¢»—BŒsd²Æ­n£äÆŒEdã‹q%Ždøõ»G$©Zî¬,ÁFá‰p@ü‘ù?v8f檎¯èU–²B¡$I#å™fG$ÉŽÄ”Ae§4ßÉ1bö#²ÝëƒN@ÊR{q—”€ÓHîýƒ0¼*T™ 4÷£"uã×L”¤•€ÚU‡8MÕqôã ª­.»cÎÎ'׃;ª¨_§,¡»H˜ðhÔþIúhÇã$åË@û…ed*ð•„Ê…‰”HJLä¯äc—à_®ß•³íÙ‹æ>Ø]%Eb_í.  dþ.¾çsîG‘ýE?’ÉW}',±›’F'ŽI˜ìB9Pc•ãyZ UYYg‘ªZŠP}Ⱥôåm¶Ú3CºP×f²ðiß5CEbëzÉ¿}Üdq¢È\¹LÍî‘ϸ`“Ý<"Ì¿ú_sðzý!nwif3U#Vi#Xã.\ûfH@ÿ°X»DŠ{Ó¾Rä߯¡iÈJÌìñ©°~V9¤¥jã–TvçÚ੤ÁÞpè =¢°êÏœò¥êÈ–cK¬/¸Œèe‰H‰ãn²å!•à#Æ=4¦20mz¨¡¯líÛo~f›7Àhúf¼ù|¼%·»ýý]ú‰deqÉá˜{xfrÝo8ç™݃…>‹#ÙyQÞØ8áò^üpå”þ3„˜ç…ÿ´o»ÿ½ð©pÀaOn$ã¬qÌ‘H BV`BöFV0JdŠ8áÿ¦›™ÑJ’$µax^)Vp®²¤Ë4m12Ì„Ÿ“OYy!ì§³jO·qèÆ~ø¤¤óŸÒò™ý¥ê 1ƒ«½c»‡>F©à¹–Èè¾Ë N„‘ÄÜ1ä²8ìæ5ÿ·Ï?Ô¢üOåÉõ¼qº‡VŽWs¨ˆuqä¨[²…ííüuâi)X©'Ày»KHZ’)&$ž¼V,UIÌ3Ú0¬¢ÌuLÈË5È£‘qÖCEYÂóèP¬ï'7ÇÒ?¸Ê©+ìvQ!ö•}Ä p"îuô~mž’=Ê:lJ±ÛkwÆ{÷=PËbŠcöñ­ö#^2Ë$Ö(ㄇ˜UâsÂEŸÜ‘«žÐ"òÑÎz¿áòwˆF¬Q‡xTÈŒø“·Ç¿-€¿ 1fQy¿¶'ð~.ÜVÅ9&¸‹fR»q5_z)mW/tâYd•LÑÒvHdÉתä?¡»ÄVZ4uVeö£F`J#F$‘”(OÆŒHÂHšJÖìªz$‹Y]ÖœyÀˆž_jÈØGho&+ ïÿŒqã&Oâ ±iX,$É\n<Ú8[MÉøõ¼\2©HlÈå}À$v  3HçþâÈŒ‘Úu䪤o  ¢ËZH%5ç¯aW´.°N^.«!¤‚B{Äü˜ã™ž@kΡ¥Ú~Ù¯†UvHcFâ/ÇäL?"®{DH+ŽžF§˜ÝIbf7©Í–®wÉ{e°‚½)o€Îæø·mŠ ÞõÂdÀÇÕžµ‡^Ý»_v£²«/ÊÈÊŸb?‰+qÌ‹ëd™¦PÐÇ$œtq Ü(ˆÿ #ü´ªîUb=ˇݫ8(ÑÛïY ‰ÐÀQÒ7Šx¤;!Ó¸hÞ7,žZÍÖoç"'Ñ\x…aæ9âŒûÒ%™QFî¢w%}¶••ë $c'³6-B#š¾…“Y ¼W¶~óžH?µÓ}¾Û"W~4&B8Jö¹1"ÿ/=œ¬Ïûê~"”ŸúæÀõäxž5e‰b~ý@SÖEàƒÁöŽñB>a´L­Â9åI»~NÝÖ8PwyJqnxy¾VÛ¯*#î°YŒ­‡"nP ¬ô¤«%Êq_³%‰*ОådÈO^Jô^u¹zû¶ªÆÍz0b rÞŒ&VdGl©hUÕ²êü§k`(k¿§·fÀòpu•yRÁÉîçøÏ÷þ?Ê}’KC/!M‚ÿ…¦þ~Ž EP’ÌC"ò‹.UCYG=‰C5.ì1;W—™’Ÿ)Ws#ºG/@ì$=]`SÉÈ=lWä‚íŽ_ȳÉð<÷eˆc²«F“¿(?‹È“FK²ÆÝx’¼nÒYe>R6‘AØE¿ù¬*-›vËŒUlùàw´¬Ò'¹i?¾nóÜé®dU $}•Ï ‚R>ÇòX‚aÿ)²B7IXø2D wò¢ Ydfàr²IÀ3ñøáæ§+8ôXZcìÊÓplI:õâ2Èg™¢R?X¯K®yŽjÇþ‰EÉÕr‘¼íºŒÖ’X"hgcvr²Å*ËJµmW¦d [- S™Ë\¥**Q6à«Ú;§{àÒä/g%•†ö÷7ÚËáFHaD÷UÛñUb’*žQÉÓù< áPÔ°~-b·¤þ[ñtV#?INË9ùI•‚ü+´a—"Hÿ¨¯3UùR}ŽHfE’&&G*=²Ä˜ÉuƒÔ<²JÑ–A¥ø’¬ ’3FÝËv( ‹ê¡Xë$˜§0@e~Òööƒd•Ø5ˆì!ëgî‘ÿNXzYg“«1=@Ûª…ïˆÕÓñìDMÏ6$ >ÂUI+†9ô³žÀo{5ãc·Û‚K{#ŒîñôòÑÂKÙ1FU£“Üwˆ3P‘ö~!‘ý±j?Ý#­íÇó>ƒ&' ‰Yºö“íA„pÌJ¢·÷"´ ÈD2Z쟰ôfùq³ˆÝfå} ê ‚QúŸä–0óP‹—¾¿õX²úÄ —Ò V*¬’JðØ =ÒêÐ1š±× $LÅ£ÕUã7µ8Ù|c|¯üÿ6à·bŒÊkYY^(Ǹ„*J]À") Z˜pq¥}èf$`H%gˆ*ueì±Ê£Èx¸åÊòÄ?;.©sßK §¸èƒàÊ‘s!fDÈí'Whãi ßþšÔd¥â%XÕ‘"Í(1„’9dn‹×¯d•ú¤ RGQ$Œ^UŠ5å õ_Ç‹¸öÍåRûq+¿ëã5ß~Ù6Æ/!áJQ Vìùfn¬¢Pòüûˆb -•¥¬Vâ@[Ò¯XCvåW¨T~»•þ&,8Vha PÜ+S ,ä̧ÒhW¯/"ljÑýŽ¡$ %öÜ#Æä=v ±SnÉ!c"ú;bB‰ ÄË´žÙa /¸s,%øH%—‰?r¶Ë8v¥ àjÓXêÍR s÷Úø meÍç~ß×&ž7Íy"ç” qH½”°ïó"ÆÒñï'=å°#dâ"ÞµhTs!f‘¤S´±¿b¡d•œÿSžÙuâ:¤¬°‚[XÊêÆorP¢YC×ScŠCî‰BóÙŒ©Ê<%éžéV%ÒÜ\’9&CN" ðW²Ë¥“Ž)Ö~ÞÚŽó;…jX¥íyÉöðWg=°ðÁúmt.+)±¿¹Ûg…9*<ˆ'deQY”?AUÓå§^IBÍü™%âvø‡’I¢@«“MÀ²ô‘G ¼™K+øÍ(-‰Óñ±_ˆ—óCɈæ _ÞPb•ÕC&8¤c"‡þFìê$fVk ¥ëÎ~Ö¬b Iô*Å“ÚVXŠ»v #+ÑÇþ±?"¹&<|‡³™ üH².ÖïEžv§>7âJšMš¢îª¯ûYí\d)ŠVìÜHDk+e/U"Ux„øÄàýÁib»øqëÚ ËL[Ÿd•FX’VVÏv-÷´•„ ëYI=Åüe÷ÙÔ£¤}%éÞ5(DÑ$‹íÿPUå±;CnŸ·UYHÔyx ?¹ZYßÝ «! Ću ±{Ì£¤ž×#‹¤Ð‰,æ*µ•! ÕZž.·û{¯U¨v ÐmÚÌᅳώ6VT~­¬‰! Ñû¥˜ŸãOØ ¡j°±éа Müsr]zfÙGV“#5ŠV­ѬIfEZ²G3™• …Ydf{AßîK´@Dèy Ä3 ÄÈ¥„feÄ„V‰Ggâ1ÉDK—€‡²ŒŸ%^bšKM#C37Ç!]§ÌÓ•ü¢ºäBkÓ¯2 oTêF:ºsÓÔ}-U`o|Wl|pð”ôæNÕõ’Ъð9Ï|öÄÑux؄կFì·°§×îä–²"éÔOî['Ža„ È úhnÛMM¦||µñöèºWXKe$>ãHÒÛF8’HÏñ€CÙœ™ï/òбڔG+Uã{ñÞá/Ô„¼«®R£“ÕéhÞJñ_ÛØË`±›OÙæñ|un—jUÅCFådüè,ï0áIâ{ŠY™k×v°“9•’H¤„‰eHdPé쵟kñ–&&›P:†»…€Ûð[7/â2õ­ÑÄd¯àós ŠTÇdñS< –ìÏíþÒdà\W–å³írDœ HÆš’QÓb߃¾h3±Ž&œå 2,ô£‹ÄK\Þû¿Zú!Ëxþ§Žò~4óDº÷“|sµùû9‚Ûòú¹´àfÁýDäð¹m³YÍj7czy ¸[æ ÆÄ!oç®ca‹ æ™°¬ãÏ}à.}*kJX ï7‚Æjv0™nöqx¬¶zLöa]¢lÕŒ-ål$³_Ëw•kÊ?§ÒªÃ¨:.=Ktì<,™\dŸ~-O‹†<…—#vâäÔg‚Ó•¸û˸ô°Øéã‘©cÞ1²7o é:(eö«Œ¤ùÜN³ÑšÙ677±‹ÃšT,NÒß¶ã”Ç¿V*Aã`¤z¦<—#§ódÆ1ŒôÝ=Oæ5ÐÐÖZÄch_Þø¿ñ\Ìú#™tO®’Ô´¼o–»mÛŠ µÿê®í–Èyhò¶?9æÌ¯míù›+âÝjÇŽ²8ëÚÆ7P‹]³ã½¬P‚F?+…¿KK± ‹uŽ2ÉS?Ýú[Æ/Òô_LÎö*¬u`nVõ]s%ZúeÓ/˜\Ö•fÕŸZØì!¡™ÃAV¡AŒóŠÕ’ÂìúîgCa§–¢ø»´"“^ÈT£,4§šjmfô6¥Šhi ’+Ka"–êF“c‚´.BÚX©`1«v 2T”EjJ×hÚ||ŠÄs˜d’(-E3G Ñ/Wó˜‰oO£ðÿ‡ÀÔèüÝ?—7æIë‚D­ÖÐ-ÞéöâO›æåÒÊKÑ2q:C¦EWý.- ™ìñËŒ÷ü9hãü¼ÖÇn½Ë7kIÝñš·Ž±páü§âó»ëìØ*=Ûa¥cµÜ¶µÌ=k®õ_%,™Š•¸x5á¥?-ížIo3yóbÛiì.øwÊõ/K‹hØnxŸX¿‚› ÇéÑ& ¬Yk¦­ãSú¶n¨±l1k'×Cõ­ûLÛžzúÆÙ„ÍIu™!Çä๘¬Íj¤ÇpO’¯÷í«5q3Jbž¤®!HÙ–gÚõÚ' ZÎ Œ¾Z|&*838Öl†n¥ymÉŒ¢‘K(L„0Ã,•â$½3Uhds×Öoáœ^ž¤%é*àjz$ÐÅ“™Y±Olüo6BZsuW©‹ÖF£aUWY¼ßrçNÁÿ mC3.K%‹òU¬~o3¸ùë;—¿±øÛUÜU5ÿ:ù:÷”-âpxŒˆþ›ŠØôœ…û8WgEks`¤yòa²xw7Тcò˜¬V£ælοâ<–üyæöñ½UÌä§ßtX)Ô2ÿ[ˆì ¯gRšÏg€=™d‚¿XTWšÏsbÎéÐߦû>¯Æì»"öZ†*ù!¸Ñ:×­b² Zt»]æV¤ê¬W´k;±OiÆg°÷µûô¢ÉA˜lµ©·~bûéäx×,ü…•$1M^@”Dò}X|7áÄŸDbÛ*5QQ.½FlÉuöÏçyÜÖÅÀb¤0g7K¬q[üÙôŰù_ȉä­;̹?f§ñFááŒzú¥¼SÈê;µ©55C²Å!Æf¡®òùX°¬òWp[¯0×>‹éêßU:.õWQ·®xwÁ>Õåš-WafpþáJËlxŒf;´ÙËW:ö½ˆÈf²Ùj³A“­_‰¯-ŒŒÒMA§IZXe–ã§òY¯Ã‰AoGSäõ5£®52PÕdNú˜‘Ćê7KU’Þ÷^Ÿ9¯3H¶=2Ó¦Ò=ÊFR-=VcêµcÎG±ù{lÞ¶¬O”²¾8¯æ/ã¼Kæ¬MK[Ú!Ý´l6[ïé.G;–t­‚zO6)—IJ5*ÌO‹$°”¼ à-{éöÏ”[Îä2´ü“ä,Vù\ž>¢6®0ÚÍ=_¯Ö5×Ý»F ta–Ct›V¤w¹! z”jí8Œ†7–©ŸÃXÂ壤Õò§/‰jý.WI©ÇòL+ ¢'kM¦GZŒcµ½@ÝÚ0¸¬Žo9B ¾s)_‡Æ‹P›·ê»ÑXâS%¿µ²CS%f Òº½bƶG•å4õ¿è5Uz‰Øºž—ÓlE´›p²×æe‘Ôô~Z ^–;Ë ÓYÛ|—½3È} Ò±rÖ#þtm'ÄÐï¾Vò–µã‘©ë’d5ýóËQÌ6Ksï!Á°a)^µw!ŠÃddjåí,ƒ^ ¢eñïÓÆ/BóOÌ56<–C!’ð‹¼p¶¨Ó¯Db¼c”³•¥±‹p¯Ü&O--–ŽÆ;ÿ¡ØYÕ- åAõ:ì;_£’Éå2t ­‰Ç&G,¿{Y&¥û˜)-‹cÝ‚µnĉ\cÌb_p²°bàü»ã½¯JÂù ¸a®hùû¦–?,R•ûã9wWJ•Ìæ#5ÅÍQ¿«X|eZ2…p¼>O‘Ñ—Ì:c8¿3©Ô¾Š—ªÎª¨­m÷áÞc›Ô:%ÖÅþJšÊÝß|íÅ<_ |fI«ë»g™¶“Äøï#ù3˸_WÔ5|G¾ùòÑY¹þ½ÆF»%Ýs™{ÖÖoÈkÝÌ7õ)»Wz/§Ã׫ÑXoyVîJZ9ß_×ìâ|s¦j+ŽÂøt­½×©™ƒ†-«eÚr4êÑÚö¬«‘ckC&(,ÈÇÕîÖ·=gbÁSÚ09Ì-ývÌ5®-ôËRA[Q©5ÉÞ_r tÏoØyÒ6£Ð¼\)ŒžÇƒÃÃŽ»™ËcñxüÞ[ÄÝ–õt­ÎgrU±šå Ö Ÿk$×ò6a­Š!ÌK3%çýÀ>ðÉ&§Ë‚7QÔi´»Y²­wàþ7œ $Ũ•ÑN׃}œR†üQ?"}â·›ù¼¤~[Ø1TömÓêlÈàršf¯¶ë¨M¢-Ÿ'.3• Vž×¦½x±z®Ô²wp|Ëo™dN OÐî­Œ­®ÞGÚìÿIò÷…¼¶§úl‡…õ¹5Ì~)ÕTka­!³Ê§óÀCc©pÁ¼pO‡D‚5Ê⣒Ķ*T ”¥ÒKPºûô+À¶xšQ+£ÙŽoÓ´þÒCYQJUý¿QÖ±¹¾{dÃQÇÔÊbq7¬[ÊSe«•Íåj`ñtgEžI+XÈf/Ò¥^©UûK2¥ Y–FHü;á‘e«òâ=B?1®«»¥J2×ìw‡;ÎÊ¡Õ$Á_.ÚzMñtĬ»Uå8<ÙôïcÊ{ÖÉúO’s~%ò3Ç;—‡/åkéÚæõ‹Êx×~ºrY¬gô}®3a¯<’s=K‹È–:ö9X‘} àϦ-7ÀÛFKcÕ6,öKoÇ' †©’z5Û×NzL”j,ØÈgìä­ØËI7Å+e!¢=Y¿¿Å4éU³XymÍfj‹IrxÖµ&CÙY&­ X­K,ö b)­c£åµ)yG¶äúFl†-†FYs8´J6âŠôϘƖ¥h© ^Û›~Í[²Ä¬«¢žíPðÃZN=¡¼™æ}AÓðzÌRǙ٪\Åá6Œžô‹þ§š)Û7›Y±(§½DDðf—ü55¨õ=ÃZÍy«b¼vÏi~8þ³CÆzV"ÝVñç–4ÿ0ë{žn¢H÷Š]›N©Kf9'tØ1WìÊ©î×N:WGe×ryœ®¿ŒÌP½™ÂA‰¹”Çѹ™±µ3Tì-‰"þäVé5Çv.Vá½}¡´ë™ír¶ÍC-V}ry¬Ç[)=ÈqÔ ˜Ü¬¸[A­Û–¯2å«Y§^ãᶯ‹¯‹a8͇ü=E‡\™IdêÊÜ[zN— môâÉs¼Ù´¤“¤€QŠ 7{æ—Š²ÃÓ²gîoY-æ$òžOwÊn×¶ë^<Ñò¸Kv¶-Gªìt_@³Õ–qã-†hÐI®Ë2ÃŽ=`EôáðúÑàÐü£ãúûþé'ÊzŸ‚5k7¥¥ˆÈåqRxCÊT<©_)yâX¥»¸giÍTИ-Z4îIRQcÕã—/‡ŒD¿ÖpÆÑ<ðûùlLQË #ØX^Ì~üÿ$x€Žœ¡äv)ø©ûáv§ì^‹ÛœJÕ§I¢’¥è„?s9GŽ×KU劚äÔ™¬D!ûú+öÑY‘-þðèÈa§ æÉ¬»G7*?KJ ì¯;Î!½JvPäRë5Œ6Ý8ƒ¼yôÿŽæó­z[¦vÎ'Í›æÙäOéI‹Äb,éÍÞ)`—œ¢¢í՞Ħí RÒbl¶‹…z¨´¿á‹¬G­núÆCÌûuø7ãk:š6ŸˆË¦?äwúܽڬmUœ‚}ܦm™„l·CÕ½_-ËȚƅI3;&ì¨Øîç*ÍN¼¾ãB´óŠLè¦Ä¹ZÁ"¹©f9–ä!åÀ[ÉúVᛘ®«ãªÙzS]¹4të ¡’ÔENÞBz£ RÍYRxàf–ìØ‘ãU½ òŸ™§¥7MùWÑ›]$ªR0ÚxpÇÇ6uêG¬u(”ˆ$L{^Í}-MøªžWúÁïûvѸÿÍLþÆwnШ¬ßÌ1U†wq.o›”%¦ËRPªÄÛt8|gުן¾1¾yÙvŒÄžXÚ´Œ^í¨iºnñ¯bµíw-Ø©øÿj‡lÖmAo5dp3ÖÈB ·^T²Í0!¹ô[|ú$Ò÷/6]ó ݳ¸õú=ÿ!jðëÎQ¶\ŸŽÚOèvñûfN'Ø4ƹMâÂî5uÃ,æâW•¢ÎyT×¶ÍkNÍìüNÁ´ã³|F3!fò^­ˆ2RW»iâ«4ðyÞ¾¤Cöü½9 Êc¤´ÔcÉãEØ$HfÇ&F€½UÙRf‚Iİ ]Çôø&@Õä‘*ØV3ÕÚœ#©9²†›)Lž§®¥Ö·t-2Þ‹º¾áÄÓæù¸è”ÈèL,céÿ§ÕMRÒ}9ç„ÿ‡›9ˆs^XݳÕ2:‘üyQìëš­=‘p¾M¿.NþCbÛ+sšß3Ø›ðÖ6)?¦GI§#Ô?Ñ»‘­¹K°ùCkÏåwý‹é{hÌåNYÄÌÙ¥¨ ¡ª{©"ÑšK[/eù‘¬ÑÓ{3ŸWJKرý×Í[ÅÞþƒ4­»-°íXß!ìÚÆßŸòÿ”ü¨s¨j;eJ?óx,[.¯¿±C.)¨S…UõÜňÿ¬árh/»{ Nåú4ÐéùS«¶í+[lÛ>öË n–*ÏôëŸM¸|#Lȯ=}¥pÕ-l³Ì¢Ýl“ó‡ R$õn ÌbŸîÞ öT¥í­éÛ+Ž–ÑοÀ÷‚ÜT€:þ Òº®Dq#“ñôÝÀnÚÖéƒÇìúÞr¶K ~þGRÓŸKO•åþd4'ú¢È%˜Ç¤3m‘+eß¿ ©©¯¬ÆZ_露[FÍíÍeìx|,1ƒÕ‘LaÙ ‘‘Y‰‘c“û„RÃÙn~Î^càƒèe†º1H•ä ö" ¥d<Ì ç¢öµ.?# ÀƒÏ¨zÿ˜¼o‰Ùìé×wlD;-|ß5aŒûÚÒNÛ—ÒÃøæŒÆZ­ì±Ö°#†9$ÇCYZÅ—Š`ª^±lºôuò—l×­I­Ë9Œh+Û‰%£4¦âmW YWkV×´ Ž}YótÛ hË¥¯Ïð7êÜãÚø®Zz‘ Ó˜9¶.ÍSÿMþûxáËí'¸[³1?‰ågýs!NQ1SÖIÍèÉŠ/ž}VpüFÒ4N½#sØH hyù(5^¸Ò„ÇECÖ±ùð=7lîÚž'‰ÅYØ1o‘ÏÛÇTÄã£ÊU–Õçȇ0LµàžYâ§?Å‘p`ǰ_h²·>™–¼Õâ¬^ØšMÍÓKfTÚLøûvb­3b]"·’?$ò 1ÙÔòòIUÝËí…˜XY Sót‹e©§Ú;…)qÀÕ>vNüCOQ®9-(VŠx8•`”ˆËFe+2qùH ɧ–8,õÇá{åÜð£ÖÓGüÍÈ&3QÙ¸¾§¤OÙY£¶€³£}€øU>êæñWò“bãËáíåRš]lræhÚÉGŸƒæ*ÒHÃd@¢1…›©û6åkÈ¢IÕøð[ÆžðÓ¨êßò³C4‹<œ®±ŒPZUàL öÊ“óϪ+õ\Mà?0¡hÕ§ñÆÔ=ÇêïÏôÙž4šI÷O&/rNoRWŒ=^?øUÕ–Foh‡å:!ÿìkEîý9à•ãñÇÁ>¼ÏÇçi;-ûú‹ý×nÆÜw>ÿ'TïóDªÈo§¬Ò2ô<(W$7gëÕH'·<dç„ù<õùèí'l+7T`¼ƒÇþD†ÿåð@çý¾}™oÁÛ·’ŒÊT…)Ã)e<yçôHçÑvŒ,iÔ7¶ªnÜüüx’gñäž?^¸‡ïïUXó¾8éÝVû›úo<°ÌQãíÕWá$r!”ƒùpÀžýsþþ½ëkÚAÕÇÉ_×*ÏÁ#¿$>Oz¸§y'° ÛÎws…d Rý¾ÞxåWŠTEõõÉ")“ê‰%¬hìx›ÆvÔÊO —ŠPÅ:ñ M{ÊÇÔ=ãÊùtÖþ¿ÖlvU]¼·äYpð[­dQ‚χ£’'Ć_vå íf8¨‰ÉÁ üÉÇ©—@ŽX>¤~¼c‘ƒqõ¨ÚRÊ‘ÆW!ô÷á«p†oÊI=—šXê²¥ežÂØ©lËQºÏrð^%w*ÑHŽŽeXúñÉ=C! Ƶ+Äôg+V&0¸fôßÑu>Êz«¦±«*¥Õsxöñž8|ö«§Îóu\ôeŠÇË4ä›wÎÙÎ8å¶WÉkðÕ f›sÈ~YÌà¶§§-¿²ÃƒÂÏ—ñÎ߸ùKʾ?ÛðX|õº)×uºº×5ûWne#ÈdpK—Ib÷_-Xz#£ùûêw)¯h/bæoq½å,öÑàì,raÒ;ú7“5÷“Æù9’|}TþƒŸñwõš#'rª ü8Û‚$Ýh,4!¥e<©ŒÕ‰“«u>ßÛ´’³FH &=Èé{^‡ A <ŒÊLdË!^ôVI$f‘RIp–¤.RXª¨t, >¬JÎwVéé‰$ Æ‹ié%VîÚØ§9¥2žZ]Q“Ô)IC¾PÅçß;<%å¯:lÞjÁ`67sbß—¨ï>jŒSb08­\ã¢ÐóºÚãñðÉ¥%™ÞéÉɘ¹gýTÒ¢b rAÛ±äí;yóN÷¯ì¾A«ˆZÞ4Õ'Ð+bk_Ö¶}CwÔ÷m’J3Õk¹£„Ë[µŒ³JÝ|f*\Lù)D²EeGF¸ +æ-3F€¯µŽ!N¨¦IG-ˆájI!zÑTo!û”£¼¯ÒVe)ì‚;ª*42Åc“ìäsíÔèDÉzGY^:®ª×iü:nË—36p–¦¤gME·Œ­î®ÏÏœŒ§ÖhF˜Æ†Ä‘-ÄB¤YtV^9«ýOyêm†þ0î>B³¦çfñFO3»çq”¦Ù|M­l;ÎW½å°K‹Äœ^"æ9 :dæÅ¬«vßfgÈx{hÏé¿FþtÞñÙ-ã?–ײÿR›n«žþýÛ8¸å¿‘×3t09«K'v媵e…,ˆ(É<0L¢*²ÌEí£ÏK‘õxã÷eÖ)Ù¤f&Q=b=¿aÏŹÖBÕ_²VŒ©”a–UpÅÝbh ‚s CüÉÏll2†«<ÍS$VB„&—Ãõ´U—5=G£Reãó+¥=]±œ÷¤Û‹'ÍiN#izscèv ¦î·ºË|Qï¦/)ïžBÇ}DëÛî[5¶¦•zŒ_>©{3“Àg4*Y+M.b¥óŸožžýHÒ„*„Eììœúªúט<¡x¯GYòg–¶Ld&ñÕ-ž”úÅÂÛ¦cÌ8]qªaïå1ðEŒÂd5;š%ËÇ#sŽEÚh,·kÕ¯'ccüãXãê uÃõE J­y½¾ÑÆç‘¬ ­/¹QãH•@”HŽße‘–Egƒù‡ö‘`M^A]™ "ÎêcÅLQ$Y`™½IrŒ4¢s3%§§(uR²êz½5* Ç|Uöµ9½2R]Ô¥‘£$Dò….÷»Çñž[ò.Íå¬N͹ù3ÊzN[Jñ÷Ô›¯ù …{ÙMŽŽvÍeô,>VüØcË6c߇짎”- ë]$Bœñ?—>©3~UñwŠ7È:Þ{OÄùãyÍGŒ©F†?C·¯É…­ãƒ+OËd·o´Í½PM¨£µ5Id!QÑÙ%ˆ‡èÀ´jŠ{G(ŒD­ðf‡Ü=#_ÄËAäYù¸€ J:6µŠÙö ˆ¾Í´U©g/g!k!vÅiæ½`-O5jô¢÷ Ú‡8%GK+ÜBÞ«Ñøv¶œ´äó2‘HºŸš7‹S:ª[PãusÃÏÒ”5’Fàôà¨Éhvô…Õ+àãŸÛVÓæ‹V²xÛUØw #EÜ÷åÃçö­WV9àÀÒðî/9CžµŽ±kešÄi—°d\%µj‚?ˆ.îÙ"î?C8Ý›9ŸÜ°ûí]åØrøŠeµ_Çøÿê_lÓkäïÓŠ³Ë÷9 WÁì1^´qd¦µýr4,·«ï¡yÉ2ELèz²;‘Ï1ÄÓí¢Ä2ÍÚI$™‹3;HëÌ|±Ž0ÞYfö¥^¶!+Z¡zèÄóè7PCò×å”1(D“É"qÄÑörÀÆzÏ]€k°tÉÇÕˆèþ¨ú^r}2ŸQSé) %5Úîß~;H G–ŽÀ¨ ²¾’ßUÛ~á¿3ëW gjðBl]­ÈßÁæ´ÜÅô„÷+É›Hó˜®bÉR¤V{Ø™T´ÖñòãŸÜ’E+娵¯ê7!§Õ«6§³ÔܼE³l~^Ú#ËÛ»B6ÉŽñß„éÒÚó”Z5ò&fÔ‘àñ÷¬M {¹dEèß&6æXÚG*UäZŽu_€lB¾Õ‡1ü½¾Ë ¸‰Qf^} îÙé$bwUDœ0RY””xaѰ ƒJ.e”d!3¢«ê×ä~dî:‘Ògé“=ºRC­œ>—u£Ô+ vÜûïBþ£¶ÿ<ã7¿'Rñ¦û½jšî‡ôÙ¯y7_£«a±÷«ì¾Fµåì>Ÿku®Q´öÂë7­K6»]ã{$ Œ…"FoQÝß)ù°îZn÷æ'iz¦§»yƒ¬yRŽ œ›FãgâÏíþ6Ñ2Ù…ÃÍOú ­—oÞã«zµ%›)ý ]­wªìzh%TEWò¥å2AA „GeV¹I‰WGW؇ ÖÌ%1y Ñ÷P«1I›”euû†ï1Z±i=º²Á,ÀÆÐfu~=MYjǛԇ\ï§ÔǦ¡“ÔRt®÷âöàéó<¼&Dª-¦ïªªÝ›½Ž9ۆܾ£òx[žAÌnûö½kæ¿è)ãÌv'µ{LÝ-k8½Ã5qeÇËvõ˜+åoä16RxcÕrPŸ{¼mÀ…½øª->cE÷jãTvúwÚøÞkRKÀW‘æE#‰Cö¹ü’$å}õìvxƒâ$k4SHƼŽß‚†cÔ–Œ0‘<¤”e­)Gãñ'ÎUÜuOtDü¸ý¹&)ó„^8–1TQ¢µÔTmˆ…d«(ü¢F’5$ü4"y¹²ÄkWŸÚ9ûIaD‘A£;7Œ~Ïý«wÖÝÅw\Pçkq·}¸ÞKÅÕ“íÊŽ¼%ºu. DG€p}øÓù¤p–WðRÞ‰+Ë%©x„Æ `VSÚSÇÃ$ʼ¬’|©µ$`§²Èðs·¡˜K$‚Oq™ôN²ˆß•!{ ,NHä^?ÀÝÅ(w‘†+ÂÀŽ…Ê¬}Ú15`–öþÖ)Þ€FÆO´«+§ÙÏî&EÌM¬Œc‚ߎø1TU>=¥«}KHÓŽâöñÙÆ}«ƒÐãüœ»J̈K#ŽÈ°×?Ž£˜«‘ͨ»<¿”~Œ•­ ÔL9YyîfU*¡Gc“ï(u¸9¢o¶SÌ? s$Q©tup8a£Ê žÌfYáI$%eš8;Ãlƕȩ#‘¼`0á&¸–E½ZÐÈQ) Õ–Y!IË ©ÄñWÇr–ãró4~„¢I¢©«ÇŽÃwÝxŠ›ÖæÙ¼WúöíÁö‚#)‘Lm0È?à]™>KÃÏXHRª8ü)¯[$Ðf¼j¹Õ•B‚\…—’¯ì/ UP²ØQù^n-¨ê~ ¼Æ!Ò‰ûKïr¬Ì†-îÍóùÓŽQ+Þ—¼6Z8 zÉÐvÆ9 ƒ;Yuøë^ÃÆ’BZrV“ÇGê¡—¢Cù—kM©¢™¶ýóµÕq  Kx7F«;%˜0÷ú-L"D#Ü/¨ñí–•ìÀòfEá™ÇáöŸˆ-2¯ .¡Hļ)@ü~QB>“Y[–µæcÊYo€„|(UxÀPÍÒ3 ˆ†°Y?$¨ò{‘Y rÈ5»D¾÷#º¨‹±ÁY ØrÎ\€dÿãÙ XÙgêia‰‰öæÿo·‡~ïÚV±½×Ó|{øãi –NÜÿ¶Ü¤ÝYYЙÿpàdð°€q¼Àz¤Ö+$HªHÀ‘'ÙìÁ=cR~`«É’œ½½ÐzÕYÚTY‰i{¢ á’OŽª¤¡§÷Õ\ªðçí¦Ÿ£/³0‰j¥v”¢LŠ#™3Å÷èѳ–{Ö©UW¥Y#w¹$D§fTHRÂF’ÕRÛÝ*lÈ?(X|bç#|®©¥ô›7‰GÜßÊžïyiD×Ó_M©+¿«x1¾+8}¯”qâóãc×.I’VÇ Yé^1ɺñ•º±å ‰—¼öPxcùv%‚d¯, ´e"^8™XÙ~eŒ·f øº· üp=Þ}. _T{ zM©…ᓾí2&“²Õ%[°å¸TºÌ%æ(L(í7üŸ’©fö%©ÏˆS,/,M÷œºýVQa*¬Ÿ™Š7bœ‰ç_´<Œ®Ž”9­J3*2ëêdT˜ŸónoX7Ïõµfèꓞœ®Qè7V(…g~ÞËÄ]îûD·EiaÑ30 Ìþ×É=OäiÛe– ¿N]úl²Ö§YžtA7µ! E»3HßÚòRÇù$ÒäzhÉܯI…ÚWœôüTu !I þ)NLáÄø¥rdh×µTvÊÎï+,‡ ŸOh@®¼Š êQ•D¦eP;Õ ±ÃÿGóž¿0FZˆÕל¢nŸ¾üst”Õ‹ÿVÔã ™ÿ·êðE-,õÕ‚{U}ÞÄ¢ªsø¡œW¯Èz÷?šÇJ8©™ÿoø‹~Ó©[ökbóD¾GéoI/gÓWsƒ`¿ å®Â´Õh§ÃåZ5hfk £˜»h`I„ 3õ Ÿ0©œË»Çrp­$ÔH\ôèÖH&‡Ý^~î¿QÛÿŠ7LöãäM£9kÄxüÇ‘1µ5|f‘ãý›ÇÛ=#Z¿Ÿ«®è^BÓs2yRòñÖ\Å5#jõi-Øq8Ú—c¯1ÉÎ::F—Îdš— ƒIÕeÝSzóu’¸Õ¡ó5°FQ©úŠ$EŽ%㿵×ã~š|SjÛó5]­ºo^#Ùô£ˆÚ¯M'ÓæBß±NÙ©áašF[óîØÌNZÔo€ ‰’öç™Âec*D£íΦsÇ`qÁkÖ<[žÛñ³Y·,ymËNÝ6¾ccQ?y®`2T(ãgœýÌÖë´2‘ ¯© =õWäMK˜±µx+D¯°èž3Ù¼çä¼Nê1¶<½á-qZÜ™­/>|¹½ù>í82H|O´k~+ÁVÈÐL¯.&/;®d³0dßZnk»U¼¦¡ãlN¡Œ×w î3«m»þBž¶ʸ;.K´øÛ'§QšÆ#ìl•ÞÎ_ß‘e·ƒžœÍÛs¤|23æ5 J%=Q#Ó!ÍÕ[‡tnÄcÍÉdZhÛu“5(Û¹Ã×Ä_GÛ^±¬`èyêûj%éÛ&Å$—òWjåôkGò~ð¤´ýe‘v ÖXMJö!‘Ê™£€‰kéçÀO‡r f­â&Åå<ãÍ/b­FÅËPå<‡€±}6=#¡ÍÈr˜û0Ókrw½; ’oâ_Q×ÿ Ÿ.îYÊZöâ]G¸Eå̾§O@Û|­œ§_rÓaÖó÷ðY]¿gÈ}?Ü¿ãÕ·&ÅÊoã]OκæF&ÇGWvͲg,`d=ÃÍ{Vãáÿ¤ï!øçb³â“õåOkÙ{(š¦Ñ˜Öõ=ó+o›ÆãoîºöCZ»¯5+i±ÚÀC&N¯·zgÖŽý)òótÝiKJ>œÊ=BDw¡Ü2ÙVâž)™Í¿ÊÔtâÍŒQE$8½€qvoÛˆô{¼bµYÖ Ðu¯"ë»þ!€Êµ›IS¤bmy\^Ä[—QÞ–J®ß«G—£EÚ¯Ž”Dë<¡â¦o"j»/Œó{V5]+vÔ6KXù2Uò²E•«®äµí;†¯IuÇ]ȇްóÝ¿F·¬=ð7ó_[{W‰³ù_å05~¢v-w=zÍû\Í:­ýŠ`’ìÆ‡Ž<[圾WÀÞÍ +¯[Æ~>–?j,ÆÉªd§Š­½¼ÑõÇäí'LÝ3ºÇ†´|]xµ}ï-ãM§ròÞbô9 ŸrXeÛñæÆ²:µAŽÊ ZÝlNÿ±å³9ºÍ‹ÌEªÑt¼ôøi8ËæëÆPüÚy—«¿U¶]ŠPfŽ-¾pŒ®Lu§Qîzl¼}¸¸¸ïdêù§Ê^Fw¢¸MëÄ:–‹ˆ€´’]ƒ5¯ÚÜäšYf<{ØéÅLÁh7½uaš²Žðqê¡RúLßõy4 úÝ]]µ\f¥ãê;ֹɽ<ž_rգ˥Œæl’KˆÊÙ‘­f+Xyi «”6½‚»gÖÇ/”¶Ÿ`5M S]ò¾¹¥áwÌ>éžÝcÏG‚ó¡ão-à3˜ÜÇ…u- o”Îeu¸$Ò¼›ä‹_Ÿ-ý“  l6¤ÀÐ1õ1åo4j~a¿¨øÓ?äê 7Óæïå[8_øóÃûæw#žÖ²0CU³¼¥[Ÿ ð±­6+]Èc¯feu± ºnén³ÉkèÎc«8BT°•=ZŠÌ,3Š·°ðºPætõtÉtFR„¿-9Ç÷ö0-Í[é?˸Í[®ØÝ18„>¥®m3ÕËen¶C˺n‘ñ^§²cïÌ>âî¸O}Dé[æžSË:¤šæµŽÈlc5Z•á¡ZÖlæ2o­Sƒ{™9ƒI_®SÿW|ÿPb}WŠ__û–{ZÊÐÂxÏ ˜Ïâ¼=ƒ·’òŽ3-¾ÕÒ_ÍÙ¦M;êõ¼.ìïü§Çâw c¶-‹Ê57Í‚Ý0ñø¨àìÁä êõ¾¸÷=;z¶íâ»»þSÇú~ žù¿á÷\ô×v/'˨¦Õ}kGKé£DñJérÁb*U6?ë:žÕ4œ= ÅŒ¯6rÅzrøY(Ïæk—Ae×Ós¨±p—¾6_|pò;Ó(VÜ'Šê#’¿ùv§g~7o£ï YÓ÷ÝCO:¥l&׊1ë´ªÞ|Ö¶côí£xÒ-ÚX¬E5÷ì{=•ÇÓƒú™mÒÎWš9g³"½ÓNùê`®¶HÏ`c,Ö“-*âqe½,èŸM»¯ô™ãfÓSÏîÂÛ$²›&ÓÁåÜ÷`Jö¤‹îkªãr©Zy ‰àÊŽÕù®¤ú\ñOÕÍ&ùŸç1º¶O!Ä`7˜²;6J[Yr¾*ÎÃ[9Q¼gˆñÝ\M‰òC†¿ãÿ0ùW/ÈV{9l©‡»–Ô?²ýNî¾2Øó~Mß|‰›½â ~NÙ4êzΛªøw~ðöÅŒÃÔ¹/NÓ6=k!Žóî™ç J“S“?åÙ%ñÕ ¢>þ 1÷"È%•ÈF2Õ‹«©bsÒÔm¡zz¨gµ_ÓŠÿõL㦃¦iÎ&.DZ (–ývÅg„ÜÇчâŸB—PÌ`ñ˜}Ç\Gµ¼vB|ùuÁí•ó©v݇‚j-bž2|¤ 5Øž!4à²{s,¯ìsxSÆúD«‰Éf´Ÿ)xëÈW1[ör•lãu_!cv»ø:÷ç†7kK„‚Õa޽© 0Q QN·õåÝ÷]ÇÇ«}8`­y'š£/YÊùwȺ¶©“Ô²š.[È8Ìž+lÛ¾–õͯ'°Œ^"æ,jÔ¼iorf“Ãä¬Ö!Vò!l_q%­OdÕ4k×¼’«µ`±–çÞ°úæ+ròN+¯Ow_ÊÉ›ñ¾C5ƒÖt½“?Áßò3bÇÿJ²»UŒ†±•­€ƒ •>RP–ªkiü©ž "¢¡Ó¸—ƒî—%øÙËNŒ iϨJêj£ß¶/(y kwèÛÉCâº8͆¼`<3¬h{5\VzÍqOÄùhÝ6)ÓÈ={W³y ·±bpy‘¼ +êè„Ï–&\úIòöK/–ÈdŽ·j•ªz4qÑ“)4”ïfôo5ê^H‹=OÑ\ö»…ËâqË’žÖ@f-Ê.¼u'?ó¿Z[®£äŠóž Ää7n ±yjÇŒü‰¾y+UÁcóþPÝAÈWÌd±x(jç3\ýÌy®æž¯‡×ór š:§¥ðÙÂZ—1 ÕÓ„¡ë¯R£L¾÷ã%b¸r|ì%HÒiÊCBôÆQ“Iœbßž›GÑæË—Ôwºýí{]ݲzŸ(ë|v/¦G¸ëÞhÈî{ÓVØþZ³äô[uõ˜2°qnyêDÍöQƾ³‚úIÞ ¨áÚ.áòÌ~ÿ¥fòÍØodëîØ\™&ò>bͬ­œ¥!/̘Æ·ÆLñF¿1ÌéêC­‡QZ”‰¦5ŠºkÏž9á‘ú2Þ¬`.b+mx«K?±b5j>XÑÃø‚…Í |Uª8“´³^Ác5Kbô³öt»iAv‰½$`þ‡7DݨåvŒî¥™Ôêk¾_ÇÜ×Þ|“V“%¾këˆÂÙû^jñaæ–y/Y‹‹PË0𛂇KÝ^̬±Y¸@³pzðîgi£6‰@ØãÈÃÂ×Nê ÑK†P'@½¸JÇ \}·¸žß¼ñ†û8%æ5€ËZÙûƒ£å ’éÕ¸­z¤—ÕLãUo\GâåZyIXÕL^Ô³ßÎ(4½Ï]óþ+˜ÁE•±¬dö¬ÞÁä‹òô²v±yý ŒÁkôç±áîañY óc± ߬P ç,HÞ·?¤íã#ºy[?†“LÈá|‡—Û$ÇÐÊÜÊã×^›qÖð8·dФ\.Ó¦ä0Ó\ÃÈ8{7¯Eĉ mÏCK+ Œ˜»W’4šST+ÇXH%ÊUoÓ@ë ÈfùVHÇr$½YdêÌîòÎÃø‡Ì¤³„@;¼M*µRõáo½¤/†hFœ§9†§ÌÓ¿Í ŽË-’Û¿¿ .{U›3£0#2ŠdÈVCTÖÕX¢Ýø©¾Yúq—ÉY½åÛØœ½;Âþ@ñ̲çã±&NÆ×³c*QÅíÉ$JÂ’Z¦l¹R&¥;™ê7o“ 侓<¿±ù3žÎnØZ¸ûž¶+=‰È]­»ãâ|¶¶¹Eg´½ßHl–N{7lDZbæ©}![?t£¢ìŸ¬¤³À0ª¹1«»‚ÁjÎÀM1Þ‡u¡"Ç» ‰Á‰Ivü¡±ËÈÈz´¯4mö„¸ê¬+3’Úß åu¤Jn¤FŽ£#Æ¥YjŠ_zw³§ÏkéEˆÁ²ÏDeVߤ§OïµqÎdú?òtYíSRí*Õü€Ûwú³jÎá¡jV%Ìb2«#bèDe£b*4qõŒjàJ¿Q>ò_”6ýc1¦æ°ôpºýäkIbõÌUø/é>UÄoYØ‚•™2Ô6|*®]¨-ÔL=è2C'ï×È"¥ÄPüèTÄKsÝx^9gª‚ycY{,~ãó_ÇÖD„¢¼jÌ‹ïH˜²EøªJ¯òÒ0ˆ¤o”åmTŽ?jPð®Z:zšCªÃRPTœŒRÛÚîÖçuÙéêz.”@F¯¨/±º_¿ò×þ“6}GFñVú†_%¢anÓÝ1¹™z¸!\9åËcàÌ]†)oØ¡2{³ÚÏZñU„9Ÿ)ôϲOôÁŠð¬ÙŒV v¡´ÝÛ1y½|äFo'¸äs,]b½ö“iùÜÖ«± Ù„0fÍŠ÷㸣Mˆ£ŠmÇúYðØ5µg) ƒÆÚçÛEÒjX’@ÆM£!$²æw9Ø5l•ÄŠJEœz–¢ðýKé¿â n{Z—`¡¶çsKÊe§JÖ9µíÙç¡Bì´îÉÉÁ[a¦"Ê¥9DbºiÖI£anB‰{Nü…É‚DŒàt6ø/'-ýùŠ#2€N¥9y8‘ºÆ¾ÚžÇŽ{?öÄÍŸr£,‡•\—* Fð®Vœ`O¦pùjÍ“J wÂg¾å<,¹ÝiJ,Ý;„‰ž‚¬ò`}±îqÍ=oè‹ÉèjÛÌæ4ÙÔÙ¾ö…ËEw1jíI¾™óYTÙ±Õ¯ËPX’¦ñ€Ì5¬tÎ"³K=F®D(HY^>'ú-Úõ™i¯öLÝŠÆ®Œ´ò-e7­¥ùc]¯°ØI)V‚®C)ò>>öV‹­‰*®Y¢»bYêû7ú0 *ûðäû“º)Ÿ³di@ù–×t(;AX{ŒÐ*”àºT:pª¥Š*4A‹ (QìÝ1Á¤¯xv ë1ðnR zMGÿÇ-ìÂ/Ù£o®/þ%̦z¦1}*©»öÁ8¡#úKßüm–Òjärž>Ú¨k~H­ä;ìÒçëQ‹k_Çøz²Âô&£@L’ѵntŽ|cY¯,qúrf~˜ogüç›òV!£d|–þNJ6bÈI±IfïÓuOͯäPÃöÓpÛ"¾ëƒÉ,Ïfäû&n¥•ŽJ=Ë¢Æ5gþDcí¨þÑÔÆïÀIF)š«Êd·Þ›Ezº×cëw2rGä+€äÆòÆQ{HO`ÑÍ:cÉ£µ«YàžŠÉh¶Gá¼±•ë‘×½SnL`ÄÀ?ß±šåÎëJ]^’]ŠÄC¦RŒ¤•oß8ߎ~}>ý"yľL×¶\Öé‹ÏkÚóçrhôrA—–ö_qñkpb­ÒHaÇcÕÚk; Šé0TŠOÈt«"{jHQÑ€ˆÙÃj÷êÍÃãÉ?ÆâAdõà‚Êcz«ô÷RpG$®}¹ZŽÕããµGâÅžyv,ìcXå`ÏÉCí·æ$•C3£´¡rIY²%DØîÑþ"í[K•ƒ é”™fL²±º»ïÛ6}еµµ5äJh¤hzknêû{q}AoÁ^aA–on …K‘“i¥i˜É^.°Ä}€>®ŸÓ\‰?Ó·‚lÃÝð÷IÿÈ~ZÆ7±ùà³’yàŽxˆ©ŸœIùq`yá”øçq À@Ó¿Ó׊š²JÆ¢: "™œaˆ´WH—‹‡ôÂZO¦¯§æGFWð׎¤ïÂðu\iSÉ#¨àðAW<ò#ƒëÏ|p£nÚR+Ǫ>q[fö¯§…ßÈÔÄ“æÇ4‘ ù+ªmoquV±`ø#ä‚'ž92Ÿóþ>OÉô'^̤^‚¾TŸòì–ç†øÿ?>²ù…Hì’ W¯<ÿƒòx §¨Ï,äuî@ø ÊÀú'Ÿl·<~!S¯<ÞOþÏëž:›½üÿ·o·ˆ‡f,ňì` …$~G¿çÿ¹ëÞ‡A²1ãðnS–ëÇË,Ä~O<ž|ü{Ôà0ýkl}ýöí÷ã’úˆx¾©þ½”³ˆÛÎ^-›‡@z$ÿJ>rÝ”ÿÙyšÁ~Ò{mU«õåø—%Ïáâ[._ã²QPÉÊÖêÐ_xѪҼ ­‘’)bh©MÑ¥«2N ÈÔ/¦LêÓþ ÷ŸùÓàç––#Áo£ÿ§ÞˆÞÙ^ ‘Ü•Ñ ´ð{\¬IK¶ wpÉùêIÇê´w?9f¼µýRL.Ta¯ë/ðÆœ]æ‰+ZÈå|£wN©­ckLö²“ãófd0U–/^§“æeËü/”œtÍFN¤VKª]6†e[VdãÌèG[žæ"ϧ¤Ñœš¿K ÞZƒo8xêSlšøÆcóK°aF#+5(1yƒ”«ö¥¿­B½ ¾è­rk«Œ–»É>n(åŒXË˜Ä ”lYÆ%\•˜)ã¬ýÝqRô³I TêKܬ֦±‘Gwïš7N ö>¸¥Š·ˆuxPi›ŠèÿKûN§åífœ^z\VVÇ‘vmï‡ëcgXþç <®å|‘«î8{–,ˇµ:ݳZ*KË©xI±ßU›Ö9¿¯ ø£,øSµóêØ,ùNõÜnÓ~†JXÇõdÀbcŸ!®ë&ÅŠ8;™+9sÒÃG«t9ý}iD4e¥¦­Â§*fÓW½F2´÷âNSJ'TpÌ#MÄ”cª HåÙp<[Œ¦Ù­bn&7;³ëø|Œ‘×)G#“§JãEc‡ªËJÌ©'ÛY,8KâÒ–WçÖ$½FLÛS{ôåÊ&,e†7îál¤xÆ”Ó\Ä”‘½ÓBY$ZÒd™~Òð+^³´Çò¢¾Pú|ݼÁõ æfÇf4ÍSZÍhžׯì{—Žînך4ÑèT¿wÇù‰24hàò¸ˆÄ•ÚÃExÚÊ$’Ù†¼È±˜+_Õ¼¯®ù§õ3…Õ6{»î8ϧ=ŽÞ[+˜ŸrÌý3ÒÅ×ñv ?ù}&eÅÓÔ<“=;I³-“<°öbš¥ºóÖBòçõôu^®UtÙ°Œ Iz#.™I7jÉZGÁu|òzr*:ðëè‹M$éÛFmÅ©æ±ÇQèïš3ÓX–JmbKƒ¯^:C»„œËT,]€cã¤áòF,FwíBEB†ÙLî:HëCrõ|l"Ó%€V Wò5h=nË4ù+”Þ¹âNɽéÿzÁMôoœÜõíw`ÔrhØ(m:~¹ã¦|Ö)å[:ô2>EÜý¹6-ae*vÓ?æËhw¶ª›¶£®y;1”Âo/¬Q«—«µg(iöñ§rÆÃN`™ÊפÉRZö"žŒgòcé³âý§»O‡óÿ”2{÷±ý5æ´?[§oÂ;‡ØO±øþl£K9W#cìñ2OÌ0fò½{PÍN¤!ñ=w¨,úHÄŒì“&LP,qiuT­Ïà´£«_©z½_Ó‘d/¦‹Å[cÇV©e°™z+•Äe±·¨u™–Þ/!Zõ2be_¿‰äŽ#)fÜ}£ªõøKÆîÚV]¥‡·ëÙG¡\ÚxqÙŒt²E^±--ØãŠSíA_¬ŽîàÁ+)±ÂŠmôß¡ízê÷SÚ±ÐI²#l6iæu]zþ§¦mô3<£6>懧ٚí,PèÇçbÅ]Ÿ&vWàH¦¢Z_ã§ÿ/êþ'úWÏæñ˜Ü¾&׈¾¥uû:vµãܶ­ä½_3²xÿÉ0ku|…²Ar[»4YK,¸èie*R’ÝÛøÛõfëWn¯?Ìiièê~›© JaÕZ}3ªjÝœ^ ­¸Xrš3ž¤`I‘‚UJ,z—Ú¯ËiÇ`ðÛ†™›’Õl6׫f&‚9îÍ35Jx㤬Í5‰Ì3AIYY§´À°•–&“±Û懕­’Èâ·mc!ÃG,™ëµ²ô&‹ˆåf—%"X1QXÿ¬KÂÕŒ· zåž#Nžÿ€<•¨xçqÌîžOÊøV ¾7¡ôõ”ñ‰ˆ³‰¹µëô¼ŸcM×*es–1rºékbXså ¯5ËBf‘|ß[Ã~GÑ|´¾ðNÏŠkÍ»n´<}¶èjX{™¬­{Çvô\Ö¥Ýãsâ7˜`±õs ƒlJ¶S/­r™ºúÖ*_.À•,…“GL1p)›&8{<+Ééõ©:êKˆ Tk®êú–£Ò+v¸èž;wÒrP¹£·ëyÌ5'ž¾gr4žáéV¹ÈM`óVSîä8÷“³éR¾Ë¯Ø¥ÊÁ—ÇɌ̼Qâ2Iv½Š¹9¬G4u!ÇÚ`¿bhc¸±4Ìô¡’ S=W#™sk¸kšîGIÙ­y*ý¨ÿ§‡/ ?§œß†#ÂëXͺ 2÷nÔu¤Í㽢Z×ô€d£Ž³ƒéñãŸåjy¾‡„æ×6JÞúyß|™õãÙ­Af¾³”¥åÌTgKÓªeAöZ·äÏÍö ×UìCt»oíÚC/‰s ? “"$RH|ÉZKŒe’óÒÄyM+O˜Â¥s²ž‘¬XT¢ÖɵñzqÛΕ›½,&Ù¯en*÷¯W–¥vÑHгHµašRТ‚ð–üLa…–zÏô%ÂÁcuÖc; V—^åëÍ$‘W—ÒL¦ÄmDðÔº¼™m,øÈY“Žy7âlUOéníX7<Ëù ôécœÔåúnØ<{°é hM¯Ÿ)>‹“-’Æcþé-]þ·jænTûúlá‡/0j8$Øw{U[ þ7ð´:~‡µø‹-åoùÏ\ÂjÛxg7#ù¯ìu6»«eìÔÙ1”àËÓ‡Ècµ‹¹`µRø¶§ËŒ(uµÕ’w§ú©3‘¶ËÙhò1–£™* VR}XÀßcÛ&xêÔy*6M“VÊ]ŠÛXë_hÈæ¦O/Û^¡?·ø×·FÀ1Xǧ0,ÃŽG£ðûL¼£0^qÓ¨iƒ)—¯Ô%ˆóùË8[ }¦aê°x ó‘ùÓê¿QSJ…¼˜‹#µ¨0^XÎx·71˜û Í ¹'S÷ûÇ<“]Ø}ÖÊIÂÑ 4¾ä:<ª¥%©nª>O÷ àõ‘‹—Ç¡ì½tù]ys:Dé‹ov®*)Þª½Ý“Æm3Fl…Õæ#^0ù¯Ø±ò /ís#“»Ðþý¥"8ní2Žbã…ü‹èØ…€¢²ªÌ¨@öÑûFZ2@P³×€0ÎÒ,ßÄWÑ?u”õ"EûDc1Çí~ 5AòfIòjÒðôãi?*±Ù.–8J¯Ï»îsË΀nJ¯ ÇB«ËùHÈž.¢"=_6eÊ…ý»bÜRý3xá6%TÑg§ =þ»ÿ~jmípÆIA$¤¬€'¹ÃrëÇ·cÌò(2Á/ã'ŒÉW¬¬ÌqŽÝ™‚0r¬ðP ·Q%SÙ+7µxO­^f2±×°H ÞçW¢òO-ü_r¼r\Máí“c¯­#¿3ÀdS—”eP«×2:öBIa ¨zQøû‰ÙZ ‰E0KÔK¬.é,7ÏÓÏŸ<¥iBë¶l­ }÷ØàËRœ«‡™ J…ãŠOåáŸâQîH”¨°>ßâc#è±2‚U¥pÝO)q´‚^ùBZhº£†Á #éÿP‡ƒ "¼ RFoqø#4 yO!#WE…íöÏü pÀ„ö,œõxdT {.>®®ñ2û„‚8AÒæc5–’@ R2÷ÀÄÎמÙÞòµìq?+‹Ç¹{µonõcŸ Ïø eu1óywFXÁä@8Ñ&¾>=jß´ ÷R{H©ü|¹C!àAÕ{…³Ç^¼ÑàŽ SÝe謆Eà°V%”H—ü¹ê8ÃEÄŽÝe¦½ô¬ A½¾KvPÐ:…UvJ±E<؈†e·I9tK£'mÞÞÛ§î¡Ä),ÿ¶ÆO»þ—g FHYˆêˆädt-`•P£,{CÏÛØô ÂHb*Ñ«¬¼;!Y¹÷b=Ö–@N\ƒfXø"ÇÇXœY¹sÕ•øþïì“çÜPíј9˜ûˆc6QO·Äd|úœ~ä²ÿ! :´j½c+Ö3†àÇÜ/ ®Íì{Tìl åz®7³·‘ªýfö+<ño?¯Ï%t“‡r £#)ŽI³©@&ÉGýÉ¢Rc¬o|”ãÖ‰(öÔ"¬üöWGº¨oÉ<{Œ®“"e ÙX“áÃPU¢_kòå——RV4]}Àg…¤Œyy‰ƒ ÉZ@}2—³81ÆÐ*ßnq»ìáYaá¸I¥ R­’õ ï«“2ôíE»;ß–©öñ\Mðç'éïãíúãÙÿjʲïŸÄϲ ÔŒ±«Ûñ™‡ÌȧÐÂŒ1*¹dd‰‹´pt¼&ep}¤)î,}À¶#u_Å£°GÛ*HÉÌpŽ`pd•[Ð1\oµ+Çï¥"fdŠXƒ²©‹º÷Þà{ÉÍ”˜‘mR¾•ZOO¶Æ1³v;>-œ ½ãmŒeßõ¬ç'’ËÈbQÈ$pÓ/.ÅxY;w±Nݧ`%½IXQ}>âñVNÁLRÃü²¤@^ sðÊ9…›Ø®}†>âóéPI•;ðU —Ù[«¨Vd™Èâ3œ‹F%öi9I*wîáRžGÐÀ’cŠá¿ò溲ô-Ïg¯î7¶:ÞnUŠ‹Ô1hLÝvQ¾÷{”wö"o¾×YM¬?ÌÕ×§P`uiMkÀ‰™8ve®eåê»–±%ž`™Œp3ˆD|M"›…^y†v=J£±œq×1h"â?@ËÒYr3†fþ@A粆 LHcŠÕ˜Ï\ŒlŽQ,.AÜrFÑêz‰‹”xã,ÇaœsÞ@Ù{BÐuk-÷*G¡,G+ØÅlPý Øq—ˆR¢Ö7§ûŸùààu/#'´<ª‘À*a¬HÕ‡òGk­æþ2Ü‚’B:Ló„=&^\§f››k ¤Å‡KÌUVjÝI<«¡‘X€ŸßÑUš2¬Z5‘I@ó0`V ^ñî± I-t·´e/fGì­!•Èá;õG¿(‚CŽäÕ˜ÈUȽD©Ú®ß4v ¸Ùr{pWÕ7óUgcj|ßcSØ{‹s!CFŠFŒÁ”,!þØ”0•·Ï¼œúǸŠË3þnYS´…Ç@‚ü:Hƒ“%Âþæb?á?*9PX›òXøR–NìöïÉæ@Žç¤Q7ò›J )9$…çh––f9ùuB’έÕ}¸Ø„™ÙBÒ }¢ºžÞ«Œú¤÷^ÔíUÜpÓÄk¡sùª“¿¡7¦ñîÕœb?‰Tê¢sÝŠ—hùºÄGâñ‚ÍC¹+UYáœ*}9µHŒÙsº—™I"^ª: ÑðÌ ´>ïÌC°–Y‰†CíŸMW‘]ã±!>\/V—±!·nª;Ö-ÿRr•cd.MåL‰ù~ã›,‘Ç÷·Ø°8^!ê¤}Õ•'Oʘiy‹4u:wzH¹Ãq7;ßi¨[åûþß^`¯feS À?»Xñ7ñ¢°tW÷º~+$£¢‰@+†Ÿƒ…ú§ÚÞKé¿fóš8+ycbÿ^ã³û5ýfŠÔŽ®§+a³×®ÇjÔáÍ;=:sÅNIóPûÍpÇqêÜÒµ ޼hþ̆Xeª$^«™y‰Ù{ØÚµÏM]¤"-Fa?x²ž¹æ¶ÆÏS¾Ùü¦Û}Dؚн¶æS'$QdÙ'ÉON³F` U –bä¼&$Ó­Yü¢0„ˆÎçըђóê¬S¦Í£(AÔYH=,£j÷éÏm›;'õ½7èÓ ¦à,ä°þ£¦ê¶öÃ\.Õd£Rj».\Øògvi&WÛ—„𵄖<–Z úòWfETW—ô§Ÿ­{u–‡‰®Òµ%<í‚_éÍZY7[ôb£5æë¾{)=)Á2¨‹"° MÇ0•/¤ë›&ååß ºÅ åŸÌÚvåáÏW³êºæ?Æ·6ŠðÏjÔ,ÿM¿©ywò&ñ³ì8¯º‚æ>´ŒýH×aÕê½’ú ÈÉÍêô¼³[‰Þs:ÞÓåHSCÆLsÛ.»»RÞêVÕIV¾±©Ü¹N:b62’ÑŽ4­×œKÛ&›¬É®KH‹’=1‹Ó¢˜wª:O|:å/šÔdyZÏ…®Ëúq;.éƒÄ>B©¬š^6Ðü¸lÿÖqø™…j9ÜžÕ”Šírd>í ®¬—«V1´Kbü¶`Z+RFÍ̾éhÐõæ²¾)Ìxæl¥f­Þ³ŽÿMVËk¹9Û¸hãaVœ¸|±™"šHqw™ž ü¯¤2ý=ìió6Ëž¹›Âà¼m²MáÜÆÄÿéüf[pÏd|[¾Óòf;©m:dtî6lŽ~ßY1«¶SŒŽ,…©f>oþÚfkáœ%üÎåøÚ‹¶™.êq5}‹Wk³µ¶{Z¡Zí:X ¦õÙãªÖrc ’ý)l©õbóQgKE€‚P n$¬L†õÜúp¡¢–¦¾¬dú”ê’$n ÛU÷ìq7l1ý*G_Å:NSZñîK.['‘ÐñT«aãÇ닊¹~¦of²-wlMlιw•œýÔÙ,¾,Øž2(òŽ*¹_¥)QŸNoîto®ó¯Í1Rºo¦g%ÍòƒÃ8þc—ÁSšÖfDAChÙÚ0â#Ú>ˆu žÞÚ×¶ËÒÙ¼™ßqÆ:énéö>á½¢êYI‘¾ÏÛmë»gYÄÙ|–[4K#+¥mÊL–#x“ÊzŽ?Ê8ÙÆ2¶kâœ#Q«¥G¨dti(&¡Ê¿ê™q92rç®ZšŽ?/ -Н‡–Z…S›ŒúŽKA$„2QÞò”t]Ö*¸ƒ¢Æ#ÌêˆÙÕÕNÿ˜§¼±Š¥lîWè«U½”Þq¸M;µ×‡TòL‹¦ã*ævk5·Z¶S_Û1µd•bž+‰—Õ¶ÑgÜ[iÙ¥›È‰lÉ ¯c±9ìÛ.?-ƒ¹®f¶œÖŸkúNJ„õ­frzS_†”PX^ÒɆ9v޵ÄpïÐÐeýñNª}GtÔòUV?ZñGŒ¼p¦ãêföCã}Æš]+»šó=[øÉëxÒ†Wí¨T©•šþSÙû©pxÚ5á–¾›|8¾2Ú|Á¸ÛÁØÀÁ¹oWSEÕs9vRþ£¤/l†CJÖ,1Ý“d³‘ØäÅT»gìêËVQ"[€WŒòÒæÍSOS”Ò†œÕHÆ4t÷e^’Þí |xèº}G19± [0¡ÓuY«{RdY/¢œlY-’¼Þ£WFÂSñG!Z½H“®J¹ˆÇj• ‰L/þ…Èañ+M‹±y:ë(l[gÑ^/mÉf¶¼ÿ†¿Ö6õZXÜžBãPšíNþ lcà›Ù“Tµ® )? fj;WoµWPÃÔ~ö 3Uñγ‚ò†¯fׄð8-#Ä·3>,ײ•áÒñ:µíJù—H­ù q³‚¹£3fx'jʽxçÉæ…£жƒ¡bikœ×õJ8ì¶“Ç_ÍkØ ¦^½-CÇíú]¬½êÓ5Ú·eØ-æ#ge«D‹ ^&TGHçDà¹R%LÄL™S9_ßÀnÁ¡ß_]ô‘ÅØ ‹Çµ)tpóß6ÿ¤¼fWeÙvšϼk^8³=Üu”.íÙ]|E ráêÕf޵›õ›´Õ(3ûÐë¯ Õ¹®B¼ƒ¿ý!.` M äaÕ5Í[aØõËTj^Ìã(ëxšƒ^£fÎLŽ£‰ÊÁZLLÖÙ%Há-Ì3‘ú5Ø7;ûveÞñ˜o>îdõX±ºvMÇ+°a|[¬hìSm*êØý*÷ÙéÖ9u˜F·§Z«Z0wô%­ëÙ·#Ú±2UÙÖvq7²:•\¶ÑŠÙ6Ý~†)’¿œÉÏ=|¶/ô ½Z hÃxK!Ç\šÍE/Ty™Éê"\“7³R¼ŽÆh‘åOKÌjzBªÜ105é¥íUöÄá³ÿLØ­ãnÛ0¹Ÿawün6Ùž¯b<í 3CI+ÉbÁë Ù‚¤¸ø­ËL3š¢­;`ÏúStús›MÛþ¬±^-­°ÍÉdµÙò¸WolÚg¯~, ¶±çš }…ÌËz8於˾By‘CL$ÿ‡Þ¹Ógo¯ºÆ™ŠKÛF¡‘m3fî;kÉe*grÒlË,ÒÓÙugÉA(]bZˆ•(ØŽ 3JÕêºJ5¾œÒ/ í>Îîë™;V×tÎl8ícˆŠK™ÍжÃwWZ¦N#†ijIOH&µVijÚ*ߑѣoR2ާ+¡¦œáˆKù¶jðâÚEvÛ4ê:Išú“õB2.Qz}=Ež/å;d¯Ž<™ôõªbò€èIôÿ{Qòbì`·lF3“­¹çðl&Ck-µG\³k*[^µ«Ë Ã^(›²Æ[ÈßK‹²é¾1™ôlÎwrÚsú._Æá(dੱmÚöDZìTî@5J ²ã5Ìœyx\ƒK\H¦iRUAóÇÒÖ§æ}{ ­ëÙ g1œÞc5ÇáµÊWñùL†r„TFZ·%‰†g‘Â1&–­ÞÆ"hfR¼*hÿLuu,?ê&Þ¶³<óU0ÚØÿÒå[;E»ú&Ëã»úýÐt(˃Ú.ϳ^ÇõFrµ+®Â‘¡~ ¥.WBQŠ^°D(Ê ÊìwzÛ°%>ZÌŽ®¨ÈN†R“*2ê¯7rpK~Ï}0x—oñN…•ñÖ*ÆÛC·ç¼Öu˜2 ¨áµÜfGl½{-t¼_Ò¡ÍËW'o×[>]®Ùû†[,ôÄùSÁþKÒr~sÄWÄlòjÚÝ,ÖruÅÄûž -z­í» †¹ M[)iïÞÂHÒµJÖmXH¤>éoL¿&}!é>Còy56ýÓRË_Éf2L8ì¼ã³v-xøøþ›µ+âeÄA†ÅН4pŸ·’x& j÷íØ‘Ãã?§5Öt&j[>õÉ’ò.—‰ñÕ­Ÿ®kú´T5̵o\Ä48lij³ëNãYºök¬±ÎUöXW3§¯©ÿ§ÐùW&$~[]Ó/}A«¸µoŽèËN ««ó=ºúí¹g²tÓ½öÀ× øŸ)}9y{vdËéÛ-âðÛ/^»_É.\>jœ±™¤\&Æ;!Žùv«UejÍzŽrŸ¤Ÿ7j{Ƶ,=‚§§JþËŠÅC‹›O© ¸íÆL†½•1¸·ˆ·ö1M”ºKý¼°XžYS¿¢Ðýdå­O![Íq kwhã©íïè‰W«×ñ®#Æ’Õ¨Â+6c-¯àñ÷,gîˆîe27ôÔJHk¤â¯ÁáÌÿ€­Ÿ“|ÁløÜY}{)Š×ðö¬eq¸ x\ŒR]‚«$;LRAJ–â|^%žÜSy‚-ZræyŽ“[•ÐéIššž†Ú(Ô*,«91ʼn¡ùZóL1éUê1go«¶úlo¤mbíƒ/_Åx{;NËO-=Øq¦{Y‹r˱SÈ̱Á$ŸkEóòd#šB•±­“kÝãyäG9±ý2a©á¼‰•»ãÊÔüyŠÜ¤×¶§†‹¦³‰ñn6¥±—U¯Ì3VJUƳYÇ‘,~á„tO£ì­]_Mî=oȹMWxÓ|$˜låŸHòfÎMõš‹”¤+SÌëtg\Ï‚¦†%©b·©T©<ÇÐf´Ú_Å‘ySe­âØô¿*iv±&½«ÏU£åïUñ+g=n«ÜÏ߯b©ÑÉR±”I`Ç_“#Ê×xQ s–Hä4Tôú"4Å•Ó$Îjñß7'\/ñ:·êIZ2ˆo{·nC‰Ü侚üc€ÂïMOBÓ°{ŽV<†1_ Y³Y8çšxrTà¯_ïÔiç· ¾È©N¼í÷ rMÑú”ðÔÖ²U2»†#{»LÐÈÝ®ó\ÖµÙ;ÛÚ ’£ÏámO."GqnîUà²rWʾ*›Û4ÝÿZÛ†‡·éX½·]©auMolÖìk{¬´çÎbíëºÒÑ«o½8$ÇdñðCv£ƒ'ÍšPe?¢­?_±¸]¯½e×%¹ÐÔkT»c\ÔîI¯d´?*á¼Õ­f«Àô L¤cq×1/µàlÆø}›VJU”É,~µMç4µòü¾—N:ºR$–#ÔwĬªSV\ðü4àK[SQ—Rfú€j'J8íÖø±”¼×â‹Ø;ûîúF6åìÙ™ª®$åsK®Qƒ!Ê“â峟tŤ*¾6ùö‚þ|úCÃ}Hx?™ÇjØÏ&ë׳Y¬¿ô*tÁ±Å¬£X½_ØI‚$"/¼ÄÝ \ȾîR¯19”t0žÙô›’ÛëlÒf¼Ù˜k@—Z“ÈÑcô]6kz®ëWyÂŒMD¦»QnTމ†{9ZÇvõ““2ÊËô¾•5zø»[i¼?£æõ ÑÉG‚ש䥗SòUï(E¶¢Ç«ªd²7'żк½šå SÌò:ÿ§§—ÓéY 6ÊÙ¢Ì=¬Ç~Òäj=Z³^õLJ ^3¹úžÃ#Ðú’ðžZþVõS2s×3ô«d(×–Z•d×p«°Ü»’Ëp©§cÞõ Ä]©äúlev±$ñÇ&K*ß*Ûk|RR‹._J4 ½YüÅÑÕØ¼ß×c…ù|‹Lu§$Æ 7ñÿ61ÿ‰Æçž–tÜ7–Ç‘qû ÑTlî/k]!ð:ÈŠþZƒZ«ÆgÖºì1ã #V®Þܲ;VŒÖ®BoL¸m«Êmå–ùœ¡ «˜ÛG]Æãõº4Š ‚Š$Ìg'®·rµ˜:B;݆1½¼y™þÖ‚ªËWâ_->V™¨jP+£¤õ]™´ .íîpXr]Gó5ôÅZU…;öµß5—n+õ9àËÕÅo!b™°–ÎäÛÝ÷­càÈ."ܸt0†ÍZ¥“aIêb>äJÿ3 oŸKXß>xs9˜×0ýÿrÛEJ¶±γAdÓ߃G"³F¿Ó2WgÆä… ¹‚õæ£n¯¶É >¡l¿Ñö¥”¥á¯³ÜölNgÁÚæ{¥gêâuë..e²/“Mƒ)ޱHT¸h_qJܵä¡Ô0²ÇG®Þ§”£ªxª‡‰iKf­ú&!=Œ=¼¹eͤ“âêD¸Æ}W­«ñSRnž–œ 5ª%ƒÅoldÞö·‡Ò!òãêL“]R bˆcº»J²†ÚâQ±õ%àªy\–.×’0Ômb°ÛÇbÍ‘-lp¡«cŽGaJ™‡‰(YÉâñ ùKµ šKGÉ$)oIwþ§üŒÅcsmò¶?”Êdñp5Ú*3Ñ›^ŸVLÞ>Ýe·†Æá­gqä»z8`ÆÛ» 9°¢=ëèñxs ã4Ïg6l—r›îÕªXËÿB×dÙ7OìZÓÍÝ¡ˆ¹^†>œYäÈ­•¡ahߣZL|Ž;ݦèñý%l>DL†ÉåíÓ)‡ò/äJû4ظ5ʦ_PÞ²¸L•ŒE¦×pXjö¦“¶³ÁQ±yîM4^è©]ÂK˜ø™8ÀÐÓfÀ›ØŽru8³Û4ìc†4yž§ZqŒT0\¨Â `äT{‡ž,.»çíjòññ&³,¹Ì„¶ki¿Ÿ¤³E„ñvªÖ–­)¥S2Ó‹A¥µŠžZ“õjÒ7,Ôé# A!Oiz—á9Cü¨ÿÁmÔŠ µF-Ï«?Œ>ðÞ2Üp;+tÚ2x]?QÙt+MÊÕ N§¯ì÷ëdòU×+R²æ2lr–A%jkTÖ´12(e²k$¬ÌÞØ(®áPF åû|«@XÄì ‡š—¸°ûüP ÓóîåÞbPêæ`GQ’ôÅô‘ôô¢_½ÞkpvÅÌ:1œN^S`ĹK{ïŠ7öÆq|Gþa‰[þS U‹øßvå5öú§2.ÌÕJžð±P²UA̳qi¸PO«Uô£!›éwéÒY»sž6~X'`ÒjØæS ‹øËüö!@\‚=Uï,~^*òŒs7ÿËè—‚Qd}W( ½÷G0D^؉¥´{ÔöÐ0aeþ‘ZUúWúm,#gñ¤dD¿ÁÂê˜Ð¸ìŠ@+¨(^{ã„¿¢»:M>Q½¿|y^Üv¾G/ªŠ¦´/Þá’„¼ŽÕ÷âÄð”îêžC·$Ÿñð§’ø²Œ$©g ðB‘ÛŽyøØøà Iƒò€$rªà‚Ü|òÀŸöàüúß±’±=ÇUd sÀ€€9ù$ðGùõÄã¥yì/zõíÿon6,:±%›ðí×à2€ê ±ýóÏèžõïA;ެ[ŸÅC|$ðHüƒÁ$“Ç’@õïS[&£/o£¿Ÿn9ªÅ,X_P»,pOädT”«I7Òφ±²*L{ ËŒŠ7ªß…` ¹ðŸV ¡UIÝH§.ËÕø4¤þMüÙ`8»1ÁËêÖëÉÖW×Wi#Tµ²}7ÛU‡í/€ôê O¹¤1£2Ä"yàF«3B©5['õM¿â<äê¶¹‘½WdóþY²®á–е7‚ô=#kZ˜Úxn×Û>Äû,” £fDZ®º™·z3, ê¾ÌÖøo*êu1Ô–¬:›ùš’J7öú&Ûñ¹Ý M~w]‚T!¢²eÒS§¦R®-¡Î{ÕqÒÜ*ð\þÜùìÓÁ#)èm,jÏVWþë^bf„dý,‹)FcRÁW¸SÊÁ$œ¬a\··ª ’úµÝªéûg–ëj~<>5ñöpëY½S/»OƒòN~å}Påóy]b ¸ñ‡zÇe2cp:|Ó ÞÉ®ÀûÌ6jÅ2b=%·Õ¿•"Üô/&£ã\–÷äÙü+–Àd±û.Âu µæ[öq-_e´0sýKªØû9äŠyëì¸Á|Tn¢¯þ%ËŸ3}È=ém*éÈÝq™äµÞ”ùf):À»-qVc½vŽ„ÉÀÆ}À3*•Áì{3*þ/‹¼Žk7 êIô‡kÜKäŸÉ ò¿”ʉרXøæY@ê©PÿñíRepHõÎ ·×–ÿ¦áã—rñ–«”ÍìÚ?fÒèiyÜýÚó_ó9âklÓ\×`Éd†m‡ø|~FÙ†ÔõMҶ䳞>òÎá³hþNÙvíB\ÁãL¦í„híSØ5ÌFΚ¦†r®jŽ;iÅcvl&%-æÆÈÙ yÉPÈS™aYhʾ´rÿåu&Àd?.sbéÈjžøÀ]e{^ü&¯%¯§¦ºYF6Hs8)íoœww8±4Áf™™ƒ)àJÏ%~ÿˆ #)÷¹ùŽÉçß`„ô©ÙÑXHœ8c"–’2‚†ûXHZ8®DAZÑ4w"Dî9áý^yƒ2Ø·ãLëCBñ^ÿ¶Ã¦Á¼lÕìÖòŽ<ßôœYuzø¬#ë¸ùà÷2»t¸šo%¤ÇÇ(³²fOënñƘ2oS¾ÒÔÿ¢d÷y6Is2ÑܼëŸÑ©ÖÈfñxkæ’¸v¬™-J]†é“m³Œ— †…P.MV§Å¹BljuXR7V;=MVÏj»aÈs=Qê )$a+=öÚ²¦ãž›påFhZ Å¥bdŽ5à‡eVå§Œƒýƒ–½ò· Z-¹¸âV–@ö§’B)f5Éå{Ág2žµäj ™›”~¨ü½½›Òï`qû®ÉÙ|µ–·z–nÉÖ‡ZÕ7|–_×*Ū`²RbÞ_²‘oìÙµ§[‚´B ÑÚ2E¦gêWÈûÞÉà«Xª¸oiy_¬ 3Å9ì-¬‡ò^ _O~gÜrX î*J+B jÆj… Ï-K-koYÂd=Éjæ-EUO‰ò²¨Ç¯¯ªééz†R„FÛ”»àrðC^#l—&B6Æ,ŸM^H´=°ñÒÒhÄ/3 dTxUÚUxý¿ü£U ÿÄðä˜ÇñYü@Nö–i‚*¡ƒ³ŠÎμ7(Á¸üÞ±!¹çÞvÙ¼™?Ô–CMÖ5'ù Žðöµ±¶³ãŸ1øÄ0à¯ä3™*6òÙ›þUÚ4ø6#•Žê˜ –§ Þ¼U+ÊŽëô<ûåÙ7‰üiªë: ~ɾð„w÷½Ã/“Ú¿Ô>WÔ3{@Ëæ-ë8|Æ85ÀÝ¡“|FRj;b’ã2!àJïÄt£=XÏJa ü¾ %Ö•mÖFë8ïÄ)60”gœMMäÇõ4_ƒ y8»õ¤u–ÜÌ Ÿ~@@:1Øe@xF캀³`'ŸZÊ_’påÝÝ˳?¶À{¶æH‰*–Ÿ“-Õ :sÐË-wëëÈ[¼ïô|mãÈ1¾(ñ~É{Ææå•‡+²\}ét¬Þ¹¤$¸…•¤FfÉkóe"2dÿJÊV‚n²Í+ê—Èèy›YÙO†v?3o{S~ËZ×3™Ý3ºê¸]_@Õ)ÅJTÆf±T3vÕÌ¿zøK©__1ZlŠX‰ãñnIaD›È!¸oÙõcòß‹Ãõò¬qêʹXîßlPuvÏ*•¥êÑòÒqÊ9F‘ùXø»ò­ ÷_û^¹ßòª·#Xcšqí"+,Q;1‘%1Vbzº˜Ï8ïpy}øf%aUõÎûë—eÖ±¾J¥€ñÆ?#¼ø›²m{Ö9“Ë`±ø1ŽŸÇ9†dÄÙµ^Îôr‘ÁZ©‚Hñ·j]÷f³ö?ªÿ,xêÞÕÞ´í/ªøûÊòøŸaM//± »/‘µàÜ¿œ…Ýo“ÃU¢[J†3Q½Ùùœ½á˜ÂšU¢ž™y|S“”J5:Jê—ËhRYNPŒ­1ü¬9b9¸·oL§vÜA îÈé혽—‹ÿ~Ô3Ó"`DsC%w…ã÷"°²+Fð§`ÑM£y&B§ÇX¥ŠÖðøísN^#^­lf6¬ j¸ØÁŽ¥jª„Š‘¯(WøÙÕÖ~±È€óÀ}iynÍ J¿ü°×âÉyÇN¯œË¶åÓñóo·¾Úî/k-«ÔÈf¯ã¡x¯c2¸ |ØlÌI+´´dÙíâO:y/~úƒÕ5,µ_€ƒÇŸUXí¿‡k¶¨_ݼõ­ø¢=‹-ÊÕ2=rXk_ÔVŒì¿uO%z62Z¡ViKâž©B2“©8itÀµ‹W#qG%=ž$ùNbÊpˆG®®Ù]ü.òg‹ÛŽ«‡ÆG’“ †œy\Î_=•hjÏ d³y«-k/—µ$kǽrÁã"ò~faÚ¨XO³ÂÊ]ÀFvi>}§•Hç‡,¡a`J¤ÈGXcöí'“ë™~fÞ|‰«y/ËÛí¯tÈøÛSÛ|yŒ¥»x‡wвmôòµðØØ¶ kË>Ùòº¾Ç¼6ÅrfÏE³i–6‡{béV±ƒÓÊ×Ö¶Sþ[®ªêš½Œ¤»ošõœ~ }‚õ1,4Øõ̽~X¦Æ½ú°ìl{{îj‡ÄÀ§Ý#P/ˆòð–¬%KåÉ"¦qŒºdĹ˷k®|޳J2ޤ¤FJÙÓÕâÖ®ëfª÷ã L 7±FPÃÚn³³Ê@Â7öà óÄ@»' !èO'd‡ß)*ä‹Nþ˜PòºÇ‘RÈx"ádãÕ#ÊyÇÌô·M7Ç"†_bܳ¸è+m²gN¥„ÂfÝúê»~ 1™qºÆ1“\^ª¹ ¯•¼a©ø÷+šÍÃNÄØÍwW‹n‘®[Šl¤ÃJ¯+z“7_«Ÿ h\æ­–Òôí‹dÅìß°ù¬o!GNÚ|·Cá=“Æš½k6)Os_wÁyk:ù™­$–5|Ï‹öº˜ÅÈã¼Väâ,þaH~VG«#bÕƒ—Ø)Æ¿ôô©v]4tÕ{dÆ2ž/äü¼o$gà•EU½%SÚ31 ŒŒ3óæ»ñØzP$Eö¤j´L0b<ãwû<"L$Á‰zæuß®üþkQMNÔõúóHÞB––#+Ü6,Æ[â¬M¸dè`µl%¹`×Wl‰ð6,•Š˜Ü5»¦ô Ñ*øo¬ýÛ-hm§JÓañ¥o(êž4ÉV¥œÌfw[ßël~J\Þ6TÃWÂ{X›zäø÷–K[kqeiKBX ¤¾)ÉÎÂZ›Æ›ˆâר)|gø_Àó¬iç/#qÇ…·µ÷l³Ž‹Ýµ°º!c0™GB"<‚¼³¯ m'å¥ÿã98ŸZÇf(dh¥e…Y„lA„Rê;q$ÒðžÑ``·ûÉõÏ\ÇÕW—5ÍOAÌdµ¯f²ÞlÌøûã¬6šØv¼¶˜»¦Ì˜Ylo½,g6ð¸¦96µÊ«O;•Tš½,ŒZy ƹ?8ùÆM?Ê'qÎx‹„ÿ_éû‡Œ«âêI_iØqÞ®­¸b.l:òçpx쀒,jÊNñIŽ&¤5‘í´9ÝËåhÆzº‰ÖBºR-\º–ŠÞ—€òz‹=I‹L–ΪV5½”ÖLÖ{70ÛŠ%ã+FCœ“#¢Jfø/,jJ‹¦?Îê2 ç²ò¤’MbBÊ1àBe@‰ÇÊ1¦@>#ùúyVãß½GÞ Ô÷í#DÆàü‹ä[¾XÝ+ÛÉÚ·µXÇãpÒL.\–Ý,m:ôà¯x1¢O´§vÀ±&¤Ò:ÍINP*‘ðȽ¶ŒŠÈÄð H;ÁÒsìÂÒ™ÒÁía¾ÑÕ†ý;bI‹ 1=2F@Õ­Ùåìœf“ê”bÅ ~a}UHÛÛ9ñyã<ª! ÊÌÈ:ÈtŒrÉ?å:¨S,5øï’EzìJ¯¡Ícg föã¢Fc°Ín¡Ä,¿Þ’G{É8æ*ñ–ÇÇÄ‘èD#Ýn@ò2Ë'³Ð€ƒJ½¾ÝUÙR͸Cµ6!肟Öß—pIv1R½`—øäUþ˜1OrºÉ$j½r,9™”·}’ëÞ›ó}øXì;ãº÷óœþÜVfQ+ÉÑT‚f€¼Žÿ†–ÁR!ùS%ÇùŒŸB=([´OR™Tuã ñ*Êàó+€µ*1l”\9ê@/ï™ (‚¬»ÇöäûVYa’DyGDnìÌMOŠòwâyÇ2Æã³df<TðÝv1ÂýùU=LX©y¯Õ”ò+c%²UUÛ|ÕaÅíi›hØá±eˆw®Åb‡bªƒÇaàñ…sù1n†ù*!1Ī߇`½šˆnU 2Ek™M•úÆk"€Ê½Š·âÈæ¸nehÿÌǹaËÂT ÝD’(å•]J2wdà1NȤŒ4DÊXK4˸ˆ«îA˜ÊJY{öå̓+D²¿_û¡äºàÚ•‰;#Ò@Y½4 ¾ùê °¬~ÛÕ_ â°VÕþU‡ŒÝU{©I¢+Ö$f@í#û‘Ç’H*†nÏüX{(±ÿ:Ѱ€/f 3¼¬RˆÞ/p¨aÃGøŠOÌÎì=§ˆ9‘—Ý#·YÄžú÷UdˆDÅ‘@]k/!\µÙœ€¼ù6ââ”çÑQ2Ýþ†õõ¼Øa$M÷PïyN×¶sÁ¯½X£%dQñ+F̧òÈË!‘¾@ œÀ/Ûs ”ˆffôžÒó!&9^!d±i#æXâPIf†>J21!iÖÌ-¸fíÀœÉ7ïäʇÛ$v ¥ë‘'e,ÔcãØÁ}ÚWP%?AZ\¶V&Jó ¥ÈÍÜ'äX4•e~ñÞ1,ê–‹öWÚEfÏ«#—ÒÔÕ¥¢èÃK_ ëYx}8|ÍHFñ%2Yf}¶®Î;íÄl-ˆØ€dNììĬ…C¬J̬TÆ(‡¹,Éñƒþš.Z" 3Ge¢öI&‰¦C@}®Åøx—æœ@˜£€õ”—õbÿ×(§±U° [‡(¸êõaÅ×–yàˆ¯±hDÐ!±/‡ª] éÜÒò¬UÒÎ Åxk{ôe÷*k ˆžÓ±3,]HýÁÄ•¢&ÚÉÄÈ<çÐæe-hÆZ?,Ô“1¸‘ø÷¬îq§WB&›(j“ Eb9 sd{â!yd#ÛX”¿÷!NÝYCÈBc"H8’I̵07RìÔ"-•Q#@½±ÙpÅ ½ÊŽCÌÈÍDzûT¦þ'â>=6Ü8”·F2r¢aÄA{(T{°ÇÀ¸äR•ZG˪£¶e•}ÌvR2‘û=—½ wû‚v‹‡1Ïn, ÷³˜/CP–®Íðmµ½±œqŸE½He ÏP;öÛ¾MñÝ¿Z”R¸ö™]ÜFZY;û‘À_‰Ç#þ™¤W†ÍhÀž[>Ýåâ»듾Aúˆó½_9yÇZ®Ç±á±SYÅâuº×)G°ì:ÎÃSÉZæÅÜ.6ž!u½_‘Ô2{ýoËfþ^µqvìíÔÕøšc툙_¯Fn¬¤”H’Gè#2ª_“‘k…Å×¥Œ¿£sdò‰Ó-“û45¢-ÝZ¨€2•ŠšÈ#’7RU‡±éÃʬA_Y¹Ž[W˜4ˆëKH‚+¹0‰eítíç‹´µ´ô§7å%Òšl¿{Í}¸ãŸ˜<‘ç \žNñíå=êV1ÆÃÙʺ­‹Ùß©M®¯•§‡aÔ¶l•SÂêC]¥ìäFXÈÜÈâÉ.4ÁýVb†¸q~S¼Ê–Q©ìÉ{ 4·B_—,RØ®ò•f. Œ[íös’ÖÙb‘@!6»³Ó†ÅËÜ¥ ðW·=§u±("xˆ½ï2t‘*Ïu¿<&I>H¯Ú»7¤-éKHçç'“¤?뺶ܷÓ~ÃKVr™©ø|éÌ@§6;§}ò§‚ÁùOÊ›lž(|·—¼µyq;Ÿ‹2>¦øKØ*>*ó^_!›Àí>¬‚ú~/2Óa)à©›˜°ô±ùO»FÊ6ÊYß=QòFïÑö}ž,‘’ðM}[Ç Ž€êC>@Úæ×· ù‹ÀmGSJhr)a& ®Ø­ùz êõK“È“ M•É3T¯%*Ë5™cž½^ MDÔI}ªðI´,S®ÑVZæ,Œ¡˜²‚2HýLqË8R@DSMÄ1ÚN–EeŽD%l{H²ea#Ûì“fŸ%©9Áæu NQŸTYb†ƒÕ²åÍÝïCÂKšF&˜±éHÒM‹”ŠÕø÷åæß©L–­G1[zò.Û–‡ã¼O™©å5)ª]ðÇŸ|ŸŽÎkÛn‹¯â¤¥MwÄ[ìØy]jƒZÅjsÇNzöž†JÙ2æ'%õä¤O¨ ¿– ËQò‘Å †¥N¤ñN× $ß9„‚Z­¹lB¦ÃU/ ´ ë{e¸è² æFêA^ÆZôé×§[š{k)+×c#ŽŸjꌱMñްõkÐJÞ• Ö6ååŽ+3ÃÖ8fAbg‚8#d*H J+ÄŒ~Ñ{ $,ÐMFyœ¤tÓæs“FŒ´ç.gC,É~–—+·‡üK«å⤣(Ê1ê¶–›o·z8ãš|­õâ}G!­àwŸ$f3ÞÅJÆ£´g_4nmU«øÓÅÛ½ý'/›ç·ý‹rÇPÖÖÄ;Ømzòd}ëZÑúrï^NúÅÇá<†ºmÛ–±Þ>¥“kyÆ&X¢ÛüwåzØ(uv«]oA¶xF‰Ûv¢|l?wR…<]0mUOX­ÔÜ01»¼™ÌdnR³õ·n¢¿Sï¢{ÑH «»›1HÄG^Û=4BÄL·ÈÐÝ‚–]Èe³ZÊ‹BNeæ_½®ÂÃ5Q,¨;Ä$ûŠÖzY³+DO¼3‘ñ ÇNX‰×TôÝì[‘³›á¿+ÂŒ‚æRÞÅÕ4{^Wߎfì[/˜vߢõ<»Å—ÛkïøKšæ×¬Ë±A³l><¡¶¤X\ä¹<²®w2™:£l Ž\Î._¼¹\$g‡Óþõ»îCËеä¿#ù[AÎe<ŸŽò>±gOÄÞXf ž±¥ëÏb­q†ƒ7§¾ÍÉkøÙ.RÉãqõ¶á,V8Œôë[}‰_'6?;-Ò¯+d,4ò΃ï´Ó6¥vPËp+³ÈÊŸXd ·oMzÔPÕ±fý³S”‚–g´!NyûZÚCX°àx•*@Q ¾ZQzÑ¥ËÔДy–RÑŒI£wEubFöÆš)“W\W=YtÌ–€u¶='¦-X f#çÛlqÇ,‡Ÿüãý îWNò”·¯ºÓÚ?-\þ•g‹ðé>á…ÂhõÌìt\>39¨Í™ÍlGL6r{ ¾#tIëe¯p²¯‹üÃæüÎÕá]'cÚ¶\–GËèóòäÿ¦d(ɯá|¶Yo6M˜bíªyC\Êj:þ#•‘¬ìV&µ"NÖìqë¥8µ8× ÆØ»N¦¬ŒÒ,8šÂi>Ã,ŽÞÊÅÖËNd†rkœ:¾>þØv¸°5.o¹ }KýI`ص°Y×*äJ n+RK3E‹L—[Öc­ZZü5'­µZÀ%­ 𲿿W1”£޾§=V½8û—cø4`hEP"‘Š«é=%Zf—9ç½CË|«õaäPÏdÔx§Ãú½5 ¹>/}ÓóºOôÌüºÔÁ½Š{·°Rl¾ î8Vƒì«âIóUʲ°7˜¡ð†ûe¶3‹ƒêgÅYzž>u_õ{ SÈ~'•òô7ãÿTb1žÜr¶VŒ Ný[¨h5”~ÍǪmÊkƸŒ´k_—‹ñxR½ !zñ£q™%Úq‘¦TÈ<¡{ ³c^ÉcïA^4h‹ÊƳ«Ã$~û(^¬ÆÒÆjçµ@d K’åõ5e#œ”]FIHÄæ‡¥$wÜF*Ú6qlym8DyhúzF];D:E*è»êÞö¬ñ˦èqØÏ¨\ <9–•5ÿ-Qó Í·M½§y Ä ²¸[ºÖÊ6%kiþMm²ÍŒ½}fýˆ²;ÖýÜ]º”rÛ2>Xß3ÞIÕ²[Ÿšqû%]Ú¬Y S‚“þ]ø÷L‡q×kè»Æ±’xDXÍ—-V{––,<²Ï˜ŽÙ ’¤Þªé¯íùzôÜRÌ[Æ×Œ5äÙŠä;T¯,¢ÇUP !‚Õq–ÙSÉ–Õ÷C]+š9¤¯]%zõ‘­4Q»|J+ÆIH¤xÏ&hÀ’Ü}ñîD\8¬äôã¦h~4RLêQ.3£§ßbî®_^çêJrÔye“‘•-=JÅÅ`íÛ~2g|ÕõUƒÙqºåÝ—Ê5dÐsY±ga«±^‡ÍZ æLUÜ–NŽ«uvÌŽ^š¬[¶È k S˜.aiHíÜoå¯/y¿Æº–õœÛ|Õæœ6jOïþAñ-<]Xîb²{Öhܰ¯©mèÔ Zn©¨PÓv 2ôo·®ÞÜw)Î[_­‡ÆÕÏÜ’zÖÊ<©íK=zv§OjJ€ÅT²}Âà ±©t§,ŠéK—©#óýÈ»„q»eÜ6[hñÆ3eÌ`¦ŠLFC9šÔÕÃJ-"Zн˜ Êcá±^Ž79[-JŽV:Ù*´"U„Ÿ#-%NugpbNhF$bd$_¤Ö0.p]g®1^RŠb±ˆ²l¦8ÃwxºSŽIYò/ÖT™?¨*¹½ìitõûy^*ï˜2­ãT­¾ÉST5ö uÄ­ªëÙÿ¤<ÎkǤ eoXnð͘¼ƒåï á¾›>–¶Ý¯eò?Œ²ÛמõïùGc¯f[^Dµãkú7ž²Sf©ä±õþõ¢ÍE¦j›¦ah¯U&E5½ºU~ŽÇˆ›¹–¨èÏ&9¬Ü˜ËX»$• Y8®ÓHÁ¬µ2‹°±Ì—¼qœÌ[ÆZÍk3å¬asuvL5ËðMbÎeûL†. “aä®V–;1—ÆIj'6'Çæ/;:û²ƒaË1Š¿ÌôÒ,¥é}qdÄ뺬4ݨ¸¶³Yœ„冧T‚æ ˆ”ûf÷㎛Éõ=Œ×%Ûêå· Y6‹¸Š[“³t7šYÛ:v?ú…o_¼ž?±ß_bÛñk‹—oûbžîÁ)6½n1È_YQnøÚ9¬‡’1¹¯ùqœ×öv¿ãÝÂì ¹emÇC6JZ9|sÆ,M=±eÃD%~“¿Þ¤¡žiç=þú¯qܶś‚¼uRÍŪC¡-Mì÷•»'±ZILEìÈŠñG"Ê4wû9„ƒ§ðéj/Éø†¯æÊIrSÒÔèîç-å8çM$5yM;G4¦ Ñn±ãqÇvò_Ö-3Ç黆zfŸlÊbàÝ2ø¿-í©¼lÕocÞ–'‹Žå]Âþ (¶F”˜$ÙŸ NxçžX* »óþÉØÏ-긼&OÉØ 6Öµ’³¤/Šq–2˜M¿ÍG/Z:Zo”/Ža‡A8“<×\}ŠÕŽÅÄcb«˜-]y&’|…© Ð5yž[÷,IjªõVV¥i®ÓVd«?s\0#E>ƒTµ² °#–“Çž¯dpÝ`n²,v"«¢ÉÚg´RÿÕ¨>¶CáÚÒž›ÎjÉ›§‘n,iǨ«¼…m›8ª|á$‘¡¦tÆGMG=DzrǤJ=óšvæ.•ú”ÛícðW7?;P—8ؼ_™ò÷êÛÄeæi[æf•#n[íˆÖÃó…U’“ãèß4,ߣZ䘼¥|¾.k|qyz‘ÍV¶b…‡"jwéÃ=ˆ"» ¬¸™,Ø­_¼V]RødéNkVÆ=6ÈÓqéêÙ-ÝYw¬ z7þN“4VìÚ} Ø ÷ã’›nKêï­ÿ©±·6½7³E§G´m¶p^IÈçòƒŽØSǰ\©ãL•žM¿1Á6Ë‹y¿¢¾^ÕŒVaLnü5óóýnj’yUhe÷|6Khó^nÏíÇ\ò­¬¼ž[è·éšž7޵í1Sa§§ä> pþcÒîêí`a±ùÝ#WÓöˆ¤«b9ß³üØÅ©à”¬Š,$“†e˜†• ££ ™¹ûŠäö M©BËëD•ÁZÔ\-ŽyœŽžêF—T¢H«$Su+rX¸‹!FªŒñ±ô²øKXçuÄ”[µõVvr®v°¬ðN}*ùm*w1ŸÊî‡lÞ0qG>¥(íÿ×¼1´Á?™èd±Z>ÿC5²x;•šý=×1¯ÐL,²Ö°/ãpÙ½Š%­‘­m¦Ž ;Aaý¿q½@9†úÉÜw½¯]ò™TÖ^zÕ´,~³ä‹ •ñ•-‡I—RÎã2eWÅݢݚÖr›%l^:=¡å]¥.Ìÿo+IÖJË4Lï Íô?,!:¥t cIK§>Ðù‰âå-7¸8ô!8cD&DG÷c„ÏÌaÙÚ–1îë*ÿ3pÖ¥u–Œå )Øêü5ž§_ⵃÐtE£Œmõ{]â·Ù8Xs}éù:nô¡G«¨¬YÜsœ;ñË{ù/«ùç±/rdÈy^Ãny¿9`vÌL‹ãª{V7ô_µ§ûiîåí*ªë¦<~SHËi˰ƒê8mÇæÜ÷“d‡·é†«>:”ÐXÝCã3û&×·î•à˜,zI·˜Ãj”òRµ«&»öö¡.Ñ·«‘$ÒJ°ò:@Œ•á2’§ÃʵӖAþs׈ÆL*?ú%ìJ±.YI-/cñ!ü€‹€Ý›žlVüZàë}H@G©§ðéiN3yit‹Ó.¦ÉRbÉoÓ—ÎÜIsdã(GGF¥TôBïJböÎÁ‡ƒ-Q¢¢,}Ô£Q½•S'RÝ¿m!om£^&÷qÂr@ˆ°ÈÒ{‚M!.£±hÐ,#c"P× í á^îIìGËÈ@2·Wž2ÎÑ€»· $Å’éѶŒ4¬88c‘] H@Hý§HÕcç˜"«?ÿDAzî.@ô+ëk³:{ ä¸¿G=þ¿N1»˜Ø|lô·gsÂßjÃÁ¤DŒH Bbu=Ä’H¤†ã™KŽ(£üیįÒwNÁ]‡^Ï!r|?(½€ï0Vïm¸5çij@V$ æG|ª¾Ó‚ǺÄSÜRÇ·g“Ø ²Ì‚xåÔ7¬©—•dEí<’e£wH{?Ëöp¾õUk}«Ghw´²?¢ ‹¾®íøîvºE)­³|K¢¼;»ìwÿ ù8íÈtªÈáú¤} xз °‹ª§˜¤paögüÈõ²?ca÷#V!VEˆÃ©üÿÑ–25¿Îm™Rsí2[ª†B¡“Žƒ¨2{ñûdØ¿=Ú$ÿÓ[1¸Ydâ ï˹(Ń3ËÐöFs!%lT±FýQûùß ï¿wáwòu†³©¦ïŸÉ+\¹ÛÙÉm‹~ÀÕ€$†üº–*ã·øüøã‘òþÜŽxàHHù<Ž<žgŸóûô;FÄ‚YOÀ*I‹p@eààx#ާöù‡e.¾ O<†åHå?¿þWûzáñÓ¿óoíÁ`êŠÀ7ø?ˆ ×á<ùç‚x ÉçƒïY‘WüOÉãñ?ø·Ï¨²¾¸¿(¤½ôçf¯WRʧšôŸÜ¡ ey%n:¤ŠÕÿMéç/‹ütsì-¤à=zlê\Ë 1œ¥•Ü1Ô±[\;pÖ%Ø18Ú/§öߣJ—æ ? ¾³>¹^FM¿¦È{@#ˆxk,IË3v”Îö u^«[¼²ä8,R–yÉÕIO³"“ß•XÄŠƒªF¬Ë¹ÂÈšÀ™ÃD©võê~j|;—eΣ¶¤NF ÒÞwÝ ï=ñÎæ´FGT4ISC•§†œ–.wxÚÏ…¼I.ÁOoµãb}š¥:¸Úù+8ÿ¹öjSŦ “ý¬¥ñóM_ aifìU|¦‡–VWÖº¿…¨èÀ—JIéªØùG;Õí}Á-]F=2œêâÆ6¥í‚÷ Gs¶ØÏˆ¨‰ý%»ö2wȸá}aVePT’ÛìþœFyxgfšFÏøß^ÉÍ>fîzÀšRĹœ‚AJä“V–/¹—!zÏzœ¥¨ä#…ÄØ Þ…—ÂÞ&—fÆîã­lmX‹Øû¸\âR)kw¹…Æ]ÇÖÒ”w`ÄdnâéȵÖŪv…‰dâ’GÄrFK·&5XÄ@($«dØÇaZ®ÇÓl}|¼V_JƒÉ¹¿&YÓñ—-[À`p˜ÝfÍXÿÒx#®ed̶f†>2±Kk!“‘íæ–ÒY¯bØ!„0SêBÍxcÄû%Š–3ž7ÕòW/’ÎÅ%ŠKïŒÖrÍ<¦jæCÚd9A“¹NžFýkßsRëÔ¯xšÍue’«‚²·Ã—IßÚHÌk³|Df1Æ /㬯oš³Çî(çp’ötQóÏé Åï#•yg*PÞÜR²LÖ¸§:(xò¼´/ù:gW­z ­+½ïA½m¶åÖÕiugqõí˜Ö í{½¯n!ê~Õ¿ÕžWÝv—q»åš<Å[=J¬ô+êzÜ&<>µE5üdrHÖûYif»!^Yzóéš}ë fþµƒ¹n}—¶Û±5TìíxÌ;k¸ÝžE1Ï”«®ÃU³0t‡î⤠¯§W(T‘"e$+̰¯Ø+IY˜(û)¸XTÆÀd IXôèý£0"ûΞʿT™‰'¨$å¡p?ly}â:Qé¶WÒ2•¹Q2Š»·xíÂüíVVÎWA…(U+q[­¼EØxs]Ú÷Œu,|²d1™`!¤L‹ÅYiñ6iIqæ’­Zv¦Çc xiÔ°XŠè¤z\§ è˜¼¶?=GRÂãóø‹;UšŠµÖµÚ–·Œ¹Íî¶äd7.v%½÷ Æ3Å4j:«Ô‹/>áèÀPÝ‚Ècg‘ãäî÷'P~ö>´jTžAeU‘JË!p¥‚KÅÌÑþPü2ÒW3ƒqP €i@éJb×]óïÂËWVëªHáY+K›»Æ÷ç8гÞñF׳&ã±xã\Êíøð¹Û•\KnL__éòeªA,Tò³c•#†´yJö$©£Äé…ôÞÝþ›üAºb÷HŽˆ×öò9ãÎmØZ Z#g'‰Èç,Ö{•)ÍŸLM\vzjµãþ±RBÒ{ŒœúœGr¡ Iz hÞ2ÒE'füdRÉ#aøÔ™§ºO±"§>†Ð4Œ¬\ðIDd1þJT’ÁD`²üó ƒP~ZE`'ÊòìjZZrf¶ô—š¹Y‘{æï&vhóÑ•“‘Òõ)Aˆ£„ö?N+†kéSÂys£Ö};[£ìwöi5ú³ÚH3ù›úÄÚ”rgíûßx³#a§¥j¨h"U…š2û ø—úŽ¿›oêG'¨cèâukqãÒ¢bq8Ù%“N:pêËW=‹-†ô3Í¿bÍºÍ Û‘šNêY¾UEr°íÊ9w‚ ‡Ývø©XÌT{úÊ©~Ø %üøêò…N¼ §½ š ³×œ‚VîB\˜ò¼¼V†ÉЬmôÕØéǽç~ñ‹Õ›Ò5RJÙ¢«o·l]¿4Y1j¸Š­¦d®fu­]ª.¹”¼–ªeq†"žÓXK6#Êöì®lHQ;zWÿMk¾ÖÆïˆÇÉ&ÚѾÔMUi6!&®½yxÏ"ó¦†?µûÒëEh(bÌ\F7rB{ŠY”¨ö»:˜Áëó!TY9ûRWíúvŠßyxçD“•öæUç’„ŽU&BezÁ¸Šþ,% Ô, ªð±·åé zqlþ˜Ðc°û{5º“»ë’ÑÝK.pÊä…ç;ÒøoƬ´G޵!N|>c_ž¡ÅBõìàö­.wë"°Z™£Nk]x{’S®õÙf…F§âobqX}zŽ‹®Áˆ×vj[® “ÔûÕÆíÔàÉAOd¥fÓMdíëe2 S'ficíܨìÒt ý¼¡Øó²³8<¥™«¾ w>×*¥\wU $ÄÉÔuT<,’"#ÂyW„› ̱ƒè5’¦E±½ ļÎñ° :ÉýÓr #o öÿ¾/Z5YIÞ4öÓ´rÉa’>­2"ÈòXHå˜à›„˜Ý+‡J,Ìw0Le‘Ä$“Óº$Ãu?Âзaq¢Î2wŒÀ²¬¬Ä¿–ú¨¡¯¿ßeò¼—šØ/·}ß«¿KÈ?½Èú¿äQ˜¹¨±¿µÙâî¦(<2ƒ!^ ÖFêè]9R{1…³˜™G÷¬R“Ò·oåi‘ៈÕz꣧¸YX£p¯Ý9!=ÈcVfV‘•ÌaÄŽ:ädd¬’©e;*÷vvå[´ˆ:LÍiÇ3*¬bÄñ£%Ô1>3ÜþN®H² SŒ^Æ;}Æ8™²¯±¾¯cýv8ÚIÕ@y` Ìÿ¯æiФ@¤F¼˜H–>F¦ÂDRZu L;ÏR¢4†wŒ‰ ×"I‰Z,UP€;'*L¦»î ÏÂEËÛIj }Û‘J& vhᢑÈ=]–A¶ìåPµˆÐ0(Ü´-©!£ƒècÜ ¢€Í±¶ÿ_ØÿŸçÞñâ¼ñ»X…ÁŽ1/0“Ùƒò¼°`îÌ‘˜Ã…¸21jàŽ7^ñ¨i¨UROÀj• ížbOÕsÚ99n­!¯í£Hcä/†%@ìð+1VHËž5âKI[˜*ÂMȽÉÕÔ üƒ¯~¾Øì½gŸƒ'PàF Hý° 2\N·JÆ;+8+ªêï¿|Ýû9Ûr0Žßùs[V÷ãõ¼"˜Õ¹Fá•Ãvê̼¼eÉ–(¤–Oe‰þSk¨‹ŠÅÖ5!g&2­’)S8æF2ßÙÂÇþ¦æ*mù@’¥hƒâUxbhÄLÂ[ˆ¢·t°åhß7cp¨aÎ}hüý)é“b u…çª/åößÅíźSèÔÓÔ#˜·ÒʺÚß¾ ós̺f&{Í–\Rd_!Zx-5¸Ï#<0HY4hß+**‰að‰å[4g—éfa`´±¼•ÑdYYI›¯+YºñíÙ?3IÚ²‚,4¿ Žc®D&èæVOtû>é #··`Ùhå®>Ѥ>´ÈÁs´däÀ2ILý£PY#ÞË=w=¯"J•êEÄÕŒ’\´]9Ï]›¦1ŒX¨ô…öÂvÊSx¾zÇÊÔŒ4X“N¤l±ì^[úù8Õà+Ð,¦Eã3ºÜÅÑ–díó¯Å)y69WÓ—U†I2ÈV€52 ÎCÊÎcʲÆfIøÃŸÎ)¾I= †a; A‘Oâ²*–ä:Ÿ}‰(ʑΠû ò#æbS"È…Óª<‹“«4…Ub¯“Œ¬óû2ðÔœH"‘QÜsËNÊ!½4ª£Yú¿˜”£¡6Çí›=¶L*!ßn(ÑjFì—-Ó`ÖéÃF(æ9‹€}²Uœ„Eî¡‚ÒV!$¶¼{4b1[ˆ{ÒèI*ÎÉÛ§p6nÜÈÒ,ªªyaß‚ tå,‘ÚÁêxõ½Y ¾×Hâìæº‰ ¤h!¯²b˜‡›0$ïFcÑËW/< ð4œÃò^è°Iä¼¾7È›U¸?4c©øÃÅrlmRîC\¯–«/]Ãxᥡ{Ç.·ïØÜwE¥“«Šª×rqfé|¾Í:ÜÛËÆa}KTôâ ýÖÔ7sY§‡ÓÒ5™e‹ ¼om Fù¯k*“Ž˜% Y—·hJ#1T™BÌcV$ìó!xÈ=Öwj@, Ï©KÅ1óY3*L9ÆÃÂpP ب‘ÇAby¨Ÿ”$™$<7ªà/,ùC{Û1•wypwñ{wíïØêØÌœ[jÙ/“7Ýæ¿Û,A°ÉcƒÁelCu(5%¬…vµ÷5£ŠüxÏòØrDˆÃµÊÉï̼—ìάC2qÒÜíßNS²ŸUës'3ÉëJ$¢&z„_Qš¿ÝÛ¾âÍ=9hóZqR^£òÈáÀþ¹ÉĿЬÀžÅG$ç¨àðxäþÉ ?¿ñÁÔUå_¶ã±yd‹ñöÚOûêÄFñ!Ý'r(Á—‚ÃÔ·ÄòÂ!bìÿ‚¸^\pX¨R¼ð9ý’:òʨ³Ë« 0@¨*í*?bÆ7&Êûi+Dþà÷9öáHTÉ$Ä$Íìò=q9myÔ!NÓoô¸-«ï‚×÷ëëÆôd¥P¼^IÅ1ı*ÌXóÛòû½—°ȯ‰I öe$?!‡ì‰³×g×s¬­ð˜\“/Y9 ûwCÉøÆÝOßáäK6 †¨9£R:GS è[••)ƒà×!¡* ¹ÚµæÕ¶)'F“ŒNWÞ_f[ 5ä ¦ªÖ?ÇØYÜðóë&œäÏN}M|ÈųP]^ZÁ·c<]©ƒ(ô.sí½_“Ø*¤lܲ±Á “É4K4kV2d’0\¡†üÂ2ö`~%+ÆPz>¸ É‘AÃäzòW¡…”:XöpA|HÖ¬ÿ„|#K}¼u½ZI£hbì&kò Æ!‘¤’쥭[€q œtj©,„(ìå •-™äb¯yšVw‚,¤X”Æ{²ª¼OO³Ê^ÂëØÞ¤“¥Ó‰F$+Ô׌d­óöãÎ1Ó™*•¥Vm%þØËÃÏǦ¤nÀÈkÛR`åï ÿ²ý܉¨)þþu%l,ª×›ä«üz§è'T|pGÈøú­¾3·|‚.;WŸ–Š7±ít²f‡Š´©ÿÆ·fu±x†HUk+½¢y£Äסsí¯Áê~{³ªè+ºúóϯ=ñ‰ÎÌÿV”lÑދÃþ¯¿†F/.ïF¢ eÅ"›÷j›ðxâ!ò­iF¿\¢+×0"CÊŸúy‰7̇¯,À’¡tü•xa+Hp¸¾J°8ú§û„ǶŸ§<3(=¿g9ãÓ7Ê÷I×i3EÕ¤È"ÁÕ‘ºJÑ?µOIÀ²¿Ox ™„LO§ö"P0¸†öÜJkWŽHÌh²#ôóªãäIÔ»CAõ—S[SðZ EëjWïoÚ³Åð„?¨[_. Ù…Mðï±åÏž1b!¯3È jr¼´ÜóÇ%yýð—øù¨OZÅ»r-pÒO,òÅQ#HÊîÿ4v=KSCü‘ÿÕ°åG«{•­37{?#,x18@ý|sé‡ä“ίp'¸Åf¦ß‹*…âaÈw`ˆQ ÿ´åž½H=uŒ7ì¸SÿÕ;îø'¨på‰ä`QºÝ9o¹¨U ­ÔΊÂ5F°SÛ´ FT4dudó<»šÐ¥£Rˆ%Î=HâÊ7퀽øîkÿÁÕ*î5ÛÈæüÕ}øQÒÕ[Ãü²°¨;GòþáË?&ìy'õÀä||útª†`€±sÇ<ƒ×ñ±$Ž#’?ü®}6ô’µˆ@”ªŒ³'òQøŽ&` qÉèVaÉ ðJ¸åvEì­òOä rHçˆùRxøP®O?®y>©×_Ÿ®;“›Ù¿Ví½eöÏèÔtô«¼!;`Éeûçèñh4Øí{P*QX¹êìÁû§?BÿpT”"Fü‰>¦@L’„#°P0=¿Ç?°8'±çüòñhPUÿWìáŠ3XưýÂ?W¹'!¹X9äs$‚E4`{a}Kö«ÃZ!$!Ÿò^Áåc'$ʆgT1çŽG÷|7SÃóò—ÏRWO@ Ïü8_«jË“ÜíÅ|¥: QR–¹"¯Êb¶Ç׈sÊ!NG[!$ßìBH§ÜoyzÆŠ!gŸ˜dcìãçæhjîJ±íÔõ'ò<’<xùø'ô\(‰õ yP(½÷† Ý»ÂYÌFxA íÈÍf0H÷iD†ÉäKHõ:Næ^¨²—h(8RŸ¥øä±`ªª V ŽAæå(ò¼€oÓ¬g7SŽE¿ÕÛ>8œ±zÜÍà%¼ç ÁÜÝÚ·á­²Ô”k™Ž‰j3¸(è¼ñòíÙÇ,ß@%xnªB.UVRR3‘Rà ùnÈ¿”ˆK)’ü–c?rà}[M®w8 êç®6cÊÃî2Âý£’Yª<}ˆîáy¹·ç=ÿoñžƒ[p×áŽÑ©šLnZ80Óf^Zû·²âôó j’½ß~Ï•dñî´÷#A /ë–¢¾‘bÖ{•º Öt¹ncVd’)$‰r}&Æ Îõ«Œ?Ñ'ÌiB.dtŠ•j^Z ÷»ß¶&°’"—þ@ ÌŒñÈÔgœöÓ‚–£üþ6å‰ôn•ü4Û(H Yqû/îr1ÿd•¶óÌ,'šþ©6]3eß3¬ºóã`Æfµ4 ¹,&g~ñêV©äÌ] ÙU¦·±Ù¾,µLÕ£y“ ö×qV¬‚²>•~«¼óœ—n–½ &½ŸéÏSÇ‹†Égv 7 ­ã»˜œîK[«‡\Á¯–­¶e£Æçv<Ä8¼ÔŸ¯¼ùg=^=Ñø¶•Zzäd܆姳“nùݳŒï!¬ä–’GózÅ`Úñ+½}øéÿeê¯Ë—oÉøãÞ2*üž‡Ÿ| -:þpð>}h]gç”ö §º³Üv* nÍ,ðˆä¬ÌeÂz¢QÞüÃ'ÒÔ6\fòõ<‰ãO&nÚŽ#iÂkÍÈgu}uÂ×¥±®2¥KUéÅÂÛœ[ÊÔ‹úmX"tGëî0‹©ùoÏ^4ÅíË « Ÿò¿ÔYÅTÄIöZv åègÇné´¥Lœ0jɬlr°Œ65ì&KÐA&•É%}_ŠiÂpþN¯L¡ó:XúºQ‹–’¬*©É‘ty-IÆGV™8Ê:h I¢Xn¿-9ïŒvê)1*© ߣƒݙy<2±þøŸ’k3þr!“ðùˆ„Å$F‚Il\!bóÂóñ©eRÀñ²*ļ €õK5ï2ùc!ôç·y vÂߨñÞB\Ãn8ŒNC%®É¢µ9O&!| µcµúv.XÈm:ŒôK0Òþ­¿=D²±Æ³ùÌxŒ¥ÿ#àw,§’p•êx[¹^ŸŒå§ò~5õõ%¥årx,6îþúe=W-G?©ÞLW‘pØýsv”cpÜO‰FÒc¥­(Î1šôßLU[¼ÊEg¥åaÉÎr˜Î`± ?šQ¬]ÔFì\ý¸èø‹ò³³)@áø-Ö0yˆ+üI !™ùOCÏ œd $¥UZoÈÀºõYþÀhT'Ü:I WÑ®bh?Q~{Þî6–j³X¥¡f1¹…Õ–öW c-Ÿ»ÙuLÎ90ô5oeÆã«×L޳giݶm`N§=v¤²,‘±ýTy·•Ö°¸“ ²]Ìj¸ƒÈÑf4Éô/ùb×.jWS+±æp™ D5pu«ÕûÙv,VI´å˦kk놿Œ˜g~1£ÓåëÒÐ0qui}Œáÿ‡kdëÒóùúŠBïeðY^ÜuQ:¯ä¹ ˈÝ7<í—˜’jª“î¯ÅŽXB¤JÈ iù óÂ*ÆOC+IÉ-¸²$ûŽÕ‡ñÅ+Èy{Ìô~˜´1Ň«Üá/îZö_Ëd§Îë7r¯Èä0‹xl.v§ñI_3$o¯Õ–ÒBfÄÆi؉Äšú–ú¥×u ×6ëê¹êû¾Ý£á%±¤dpØ‚ëõ/í™Ë™fÕ·Ëþï•;ŠÌh¾TÉ]ÉSÆg(ã2TlbïßKµþ'£¤E”5Þ¨GP­5ˆJU3Ù÷6KxM.JzŠFzC^ûÅ.¨Ù,ï–ž:²#bLE‘½¾Q¡Œ|¿$sÈ<|EÀ6#ç­ÌëÈ^cvRñü3/â~y!É©ŽÌ±]Aí‘VrTsÁ~|ònû挎§µÚ­g^Èâr×°šö'¸ë:”Ì]<…+@Æeñ8½ŸT½ŸçÇiùH²»®§äö+Pƒ!†²³%Vùkê–\þ9ãÌ^¯ˆ½ú—Ú¤Â/‰êXމð§Ôµã­Z9]m™·½/a¿“û© ™;g5í`&6+’z¬øŽ›¤j|­V,Ø"XÆ•ÜÆ~¹Ëgø9ÇRP–¦š‘%ù¬¹`»3UŸ ^ÕÇHe‰˜•rd^½™ZEFWøe%¹+” ±Z<Äû–a軪wåJ1d‰[”`@2•ç’3G%«9igþ£×0¡ú²òí¯%mzÅì‚ëZeŒn# vºmÜžÅÔSÊž«¸ä2ø 4ê ͨi9¬Þë˜Õ®íûÖ_ ‚ľ埥„ÄÀËa“ãï8ýHa·×*Y¹–Óó[®o9­gw\áÌy|l~ò&h—„‡Æ{eÑ H£ªdbÖ¡Éxþ::žc äXmätlí+8úO‹è¬IijÔ”V ˆ‘튢×g†>­Ò¿3M@A™²2óäÏtÁÇ^•w% ù`ŽAR„’¼/ÏT”|Ü<À9×½’Œ9XÙÀíÜþqÑø¡ãªÉ(=qŽÅäU7Ï;\»wŽ|[ŸñžS9˜ÄÙúˆñ]SoY‡cÆX—ŒÝkRÙ!ÈEoÉÕ×qÅg]…òtcÇCJ"bšÌS$†Û–Y-[=O_½#Uh}©:Í+=x¢ì$žWäÍZŠ«G~«}å—Œž„u:ç8—Q ’F¤Lô§ŠÙ½¼…^6É7Y[# D§ÍßoýÙ^Hy%ñ·‘‡ #ø÷{‹Ií«e–Gè£ùŽI¯Àk {üð¾§Ï£‹ý"ý2—á½Ïxì¥OQ¿QåH^{ƒÁŸß¨È*?Ð~C*xï¡nÝY$R¡¿Ó94÷D…ÒA è-Ä$”L>Æ´rw êrú.dHßLÞڇº"X¤‡€¸ˆÔöIzÉ §´S/¹Ržøå|í ÿ’WälÿoïâŽÏ­ÒÕºüð+¢Ó€Ûlç¾Öx~]žãäŽ[çã–<¸ãäž~OÿwfnÏ ö$ö ñÏŽ9<þç׺ÿ–ê¼sÙ‚÷P¼~•ˆ<–øàüðOçÖ€ÈI!@ÿÈ8ÐÇ'å‰U_Ÿƒð®MøÒeR¤óE¥ˆUQÏ<»â$·è|òG¯zÒÔ0Ø‚zÖU á–¼ðóøÉèb–)O)Ñ7uç€ ?·<{Ôâîýsãüú¼rÓ +Ÿ¬®éQÅkéÒ¼'†0³<’qÉ{,=÷Ûô^ >L}ŸúªÔ´ï ù;Lݱ÷è¶äÇd˜uý7½mŽoyUqt•Ì7kâ1ynÃ{UM:R¤Ò$Œ¤¼ð*ßü3¾»UŒL²_úmpÉ!vW>ÀÆæ`QD2F#þ šñÏ^Xù7åXÑ'úvÇ'š-yµw õ®ä¼¿§y\`ÅRnj^&Ù=òÿõÛZFNí©õhñQìKøÛ8Üî56,\¹ÍjÔØëkî­-£ÖðWÔ´yÚëj¤žÜÐSÔò3¥×]†Aû¸|UXpölGZv±ó¹}CxËEÎ6³™Èå²;HÚðšeM{_×ol9ŒžÕŸÑ³¾JÄ`¨R¯\…‹šF·šÎ˜„±Òj8Ë7mMÀ_ÕpÎ}O¾ß€ïÞS|ü(¶ººÆg¢kZ·’æ—i¤*¢y{¡{D¡ˆ¬°p¹˜¬-±^+’ÉÄð{-ôÕæ|fããÍãæJÙ_ ?›ëo;®õgZ©‹Äêºþ#é[Î~Å6+X†w–ý|ÎwrÕ°ÓÀ¶kܦÙk×ÿ¦Á$2çëø¦”iÒù²–©ë—K(Ǩ¤l«:|€ÍÝ„å4…BH@‘iL\W„CïÄšŸYOV¼•vû¶hÍG^Éäsµð™ypZ­mžóa±òn9Y 5ãý^)ð¹¾A,vàž ‰ Beô¢ŸV¾ ãdµ6Ïn–#P§²åçÙ,àï××óí+ŽÂm¹MK.bæªê9 ¾:¶FÄCíjÁ~?›HŽ+LDƒìžWÑ¥ò<˜ÿyG\Ôkù*vÆÒ“gò–pæ²O‘"x£H7³¹ P4õÒÜT±“B•ÏHÒ&Cèɲ¸šMï'ä­xó¨ïÚoŠpëUR} ä¼¾­–Ø ËܺíñBºŽ&:³Á_Þ¤e¿sÝêÝK[â“äB5€B„3~«ctÝ öÁÂÏO$†¬€«rzdÇÌ[–RŒU}8SÎ}Xe®¦éGÄÞÞ|‡°ê‹ã·§†˜I¨RÃïë¸sC”ªÖ(bñp2Úšu[tÝkË$/þÈ4!íû6ñ¾ë9ÿg4¼®pGUÛò¹ŠW©ni“£œ§ôå«Z°–Ý©dl°…+Ì©f´`YëÖ+H½‹ò¶óäÿõU‰ ßõÍK g]µP¥•Õ* —L¿»ÚãdhE V)— …P{ø¼çÕtHËåéÑ“),W¡ÿ¤iê÷M°'µc”Ú´XG" füçN@9`ÑK£s"f#î¹ìxô Ý–W—`dwV {adï(àέâIP~±ÆуèÕ_þ<±Ê:«‚$Y[¬ƒƒrFî ÄŽÿ„R1iù®ñªè7‰Â·U€²:'°zGí*üŽ~kI£±Wæ:spdí€zêÅŒ@ôŽ 1UÙ»2¾|ñ‰°³ó]Yv횪Íwpxxñ÷;s+  V0±$hý–BÐó죲ÂJÌ €ú ®”T·mƒ2ÄÀç÷rQ“˜"ví#¸8¹8„èÊû±w~œFA'N+d‘ãSÞ!ÉçîïÌ«ÄúÒÅX˜û³²¹d‘¿—ˆË­—ºÆ —P¢[2CÄD2Ú¢$™%åD,‘¿MnöÉß½cýøÔu tòßŸÓØoc;éEHÜ”ä_l^Пl*ž\0þÆüh¿1pGƒy"nB0 ±GO»ªFxâû·RceŠê‹<û0ô'ÛvŒ©êÒ)öäêÓÌ[‚8„˺ç† e?šN$Ju>ì_ J™ ó!epbI‹Xºr¯_½U5{騵í¶Tfšßïº^Sû¶—KŒWmËÿ~üî°ö‰äì¤ÊÒ Z9GÄÊåæ^@k skùÁóðG¯90J’$d£ˆÂ¿°dVV~Ë{eHG[JÔ‡ÝCè8IÕ#塊6OÆ1ÿÌÌlÜ#€@ûryö~c¸xùôe 1F(Ä8Q+‚ù ‚¤…! ‡¢3!›µp¢³«zYfº·Á»TU¾ÕïÚ÷Ç(à´7^Ö÷ïûpU,ÆÍÞáI#f÷í®‡”_¸sÊØPÿ”wÑ{»õE9>°,Èå`#üŠöê}Öw¨+ר<“>Õ Ïõr= ìªñIÄŠä¥fŒÿîtP°è¤û‘JD§1ÁÚbòTÛ¬žç´¤¢öC££[ÝVsPe±²Ýë$j=Öö¹7º[;1•¯W-v:vØÅ[{ŠÛ}¸ô³ˆ¢á×”xÃv=À(Äû‘(^]ãWèÖk©2ÊHxE<áDNc>Û´“îU»MÔ))-?µÄ’Ȇjÿ`–‰âSü‰Ñ™º7à;؉Á+¡ø[_¶úR à…æ@Ä·àäà«Ä~HA#3‰/qÖÓœq Øâ‹–K¼~¸¯;ý8)±k›/5·±ß«Àq4ååöåŠDEÄŸ›ëÙ.8‘ˆüà‰û•KòƒŒÍa™Š´HzÆ­·*$ŒV3'-Ï Š²F· ³IBFYP¢GLäp¼7íÔ ÷R?Øw J%àÅü,IÒZñ@y=ú{ޱüÄÙ +p6H͵eöi³%š¬ï+òÝBdÀ—uÕúv¶ÍïˆöÍV_þïÖ°¼&hä(xåË{ 4”Q•^X('šÑ‚c«/0e'Œ-£×ÜAF+/,êU~{0hør¾ëd_ÌYb­ÿNÜz!!ãˆôìÅQzƒ#8þH‹žÞXyc ª½ØÁpcç_j¸‘Œoì·òyïÃIÕyŽB@í$A¡U’Ê©Š¨kIDÅ6Õ¢w_›û»¶üG>íÇûý«ÝÇ[n€<¨Êº¢±·Uß²ÅT˜€§dµ2FÀëï"3Å":8.X?“ AbÓòzûŠ?;$ |òôQâŠIQ73Xâ%¸«!/Î9ãªÈO³u“º‚9¯Ã;qÌÈácç·—ÆCìûÃûeíR5öŠ·¥ÁÒÛTÖRŽ×¿o/}ø›µ^Ù½ñ±Uí—Î1ÀFèì¢8Ûß=Ë1Ë'+ =‚YÔFíöÈé+°1ËPÉK÷*¾²ÖIxù¯üªª`0õï]#byÿ´Ì*BçùâøµÌŠ8È­áÕ RUÅc·+ F;Jsî߆:R¶m1‰ˆXfRYZHØ»ËøÉÏf U\3°FCÊÅmWâ£òHãm½÷õGoúñ+zjÑ|µ¶Q£³TçëÁpÒ<…ƒ0C÷‘+o¿3rÊ;)Œ9?“²¡(–"„|NœD£ÜP9%1*D¼´k a®ú}ØÜðÊ ¸U ç©H¬DË8•‘D_çc:{qñ$òÇÊWP,ÀZqÁϱª‡Ü("eè]Â;F_þH™DÑ'rCº…mHò¥d«‚‹ÍYغlß½{û ‰uyqy/Ú¾¾›ñ¡³ÙÕ¹4‡Ÿt4ŠCÊ ™QÉ ðÁ®¨'àEñ«Ï1 "¤±ÅX‚’v²(qêÖ?íÉ)3!oY)oÚn"‰YÞ.¯$p(P Êe´iÜåÔ˜¤uHG·+7­H„n ‚삾Ø%›»FcO„h؉ÊЬÌÌ­Ç©½}~•ã=ýï–¸ EÒäúö(Íc×`$_‰#ŒöDÕ#¬áé~r/b³,­²7¿ssîþ›œµøý/íÙ|p¯,è°¬ÎZIb2$Ž,FÊBÕJ×1‰Ñ?…!r ZP}-èšþ;bËY©}™c‰ÚʬS,œ;~aWðûy•‰’䇾IB»7¦Q«0@Œ?QÉ$˜‘Q˜ËÒi•ZØ ~÷ðL=J~(d|ÆD¤A 4'^€¢#ºLç‘“ôceHêÌ]bCF8ù–Z|¶«¾$Q(¶Ï}ß­ßyv3ÖÓŒ£#›v«ÚÒªÓè?ÛDÐÄE[1`$2$/!É£¯¿#õ‰O‰›¡j£¯,°ý|FþLÖ±ÀÃMŽV†ã–šI§iLIÅ)ªŽ UÉJac'a;4]xö™–“)’¿W R9Êθµ¶ò <¨íj ¥ÙìI‘HᙚU2*•+VDI5ÏŽ¬©p{Jܪ3 FáËç  ñu÷dOšßή=sy_™g—¾kS[¨YÆHH !&º\]>Ûñ·ZQ–†¸rÐÓb”ƒœ™Ø« ÆO¡ÄH ¨Yäp# âIÂ’ç·!#~D³Šs p°ÊÞœú”b|¬\D¡}«²r‚3ÈHÄ6&7áá@zãg?tÇŸMc…„'äî¬>$PÝz,a‰èî±þLŸö&&f6Ó¨pj‰íæë,r ‘b3ßiD<©œŽ±Cǹ•‹ˆdéë­ÌEtµ)É /r©§¶;ÿn9Úñc½^Áü{nxóœ¡AZSn̪ýÆ +“ ‹ž:·¾ Ixü=… =6ü"Íd°bšÍi,ÕŽ9%&j©f¡cÍy¦™œlÊ@‚bB*0Ë?¢µ¬Ë‘38 uÞ@ƒ²ÂU9¹B"vhb°ßÃBnøç/,‘Î*})ù7~Ø6iq™f»ý^Îï.Gi«²lË•ò&½´äè[ÄiÙl,VV\:ŒUJ³Öö졉=‡<ŠiÖ–¬!§Ñ¤k+MFúpUXï½÷í’ø·KOI”ßšÀ 3tc"¹Ø%ôã¤ÑÏV¡2É5h«Ì‘N“Éb(k¬rØŽ Ž’»¯ùVX›°¿+=ŽÕ­/.Þ˜ Vl×j7å1K]”Ûc„A!û‹6Ìë^^Ëm˜ê9%SǪsçÏÅåJ˜,F6<|:¶»àÿ¨= ±’ÎÔ©ŒÝü…„ñv'Å›,Ó¯Wµj=4ý‰–k6'²_!Vî0Iv¬¥ë>íôõ»éÖ¼y†ñ÷¹_5¿åõïä#ÇM²ÉÆiùíBŽ'Ì{¦ËrÅÛ5©Iãídð¶-Y†Yó4öÑ®‰3êÏZ7r¤´ÞˆÈ¹ ⢠8¡Îß[4a¦ÒjÔÅaÔ ‡½©‹+¤ñÛ‹—ÌkÛ¦lPÄÕVäF^éW—ß °ˆ¢2#Êfee ‡“$ü”%JVͼÿ©fªfZ4gÄË,„V¾žô1¾á^F×âyxA4 øæwÔ7ˆóž@òÔZ—ÿÁr]#XÎg¶þ  mvw—ªn8Ëøë*2[¦µl>wìì+^¿2¥NëVäÌÑ­¿¤ÿ3ÝËù"l–s\¶»þ«³k9¬Ý]—;Žl¢XÏa²˜<”ñÇa¦ÆH•qö±ù7€ÃýŲ𼕙ã9¥O_ù”ú^Ÿš3¡oª93…¼&Å’/1ŸVOš*a.‰nÇîwž•ÏmúÿCê’ÑÃÙÖòiÍI­åš¾I§z™ªôjÜ›$¯*‰ný­ÚW”–rÐN ®Ó7¥7òÍ«ØëØù`ÆÆf­,¼y“UKE¢…i£'?lòYfâ!Çï×'6_£)2w•¬ëøíO¨fïy3ãŒ],–ÓDk¹MšAµKökV¿uùµia[/5©JÛ…jNÃÔy¶}ùwkÇù¼ÛJû.߃Û(ÙÞÓ›¥c7Ç_?%FŒë&ZVeŽì+ Óc˜…/$£Õ%Aü6仯RÖFK_ggtò V]L¹ÏI éBÛ¬–Ôâß|S}_{õ@R³WŒMF˜ûˆ“ÞGUÍI û]Ï(`†#×ÄVù÷WÒ*d(¼Úî6:qHÑ™žÜ) v/ÁYe2 Œä ¸”YáŸøK)€¼½à§ÞvŸ¾¦ôuWÇO'bðøÖ±“Xõû»µÃøë#ÆÃwÿŠí¨¶>;U`ËK;MPdì“qdV©ºOÒ‘µz0œ¾7[ßqu°ðârÞ7Ø·=„ê{¶gú&KÛåÛøéÖìWEˉ1Š)Eœ•f–$ ¯YÇF\Ç1§2'))Ǥõ D’+eZ ›¬ªñyÍ=M;–±•“ªQ2¾ » ­ÇAvÆè3M²dìDé…«,÷âôÖ 3X¯Bksãñë5‰\ÚžªÚH ’ë"Ø«‹Ý"[ÌvY~ðRíIk$ë)¸UÍiXJèePP–VQÏ% U”§®6ᾑüý²Ø}²{ ë¹;´¶è¶œãÚ—g¡cõí=›+jÍ->†µ. •™ú}Íu¯æ Ïe2>ë®÷Ò‡%£—ÆÁ´Ñ“Z×öZW 3¹éYüêx!bñ˜L• XK¹Š3G8:öfö??‡÷¤h%½„¯_9ޜң•59s[§‘tÓNÊT›q:KÍ­g µ-ZßÎùd¹ž«“‹‰BàW5TØbóÄïþ¼ÓäÙv½J<ÜKœÒuœ>ã¶×DŸí±X ºä?¤ämÝU5¦ûº¸‹¶¢Jö/PŠ–£!¢g1ãß-h;&ÁatŸ²]Önaìäb©3¬K˜Å.[Ñ4«¶.⦊ÂÛ‰[˜¨¹Fãšñâ§|†‹¯ù›±†¹“Ý¥’©‘H1Š¡Ú)=Ç„tÏ£m»ZÁß™sÞn“)âEÃìX{ˆï`ðš60á¶ú±2ÛLÙZ/fY#ž'Å2¼ŒZ$+lµùÆ:q9n¸êGPÕ€±b!hî;H¬ñT4¹{šëJ,:%D­¸ÜpuûqÖÙüË,5.äæ©j8ʳݽn´Ò̵«R‚[6å°`•Ù A ºAÿr¸P³–ì¼µWÍx¿"i´òø»x™õlý:¹*j×Ú8e®ö¯3´²'µ ‚X% /¿í²§·óêŽxÀ[±þY‡+“§;ÏŽ4íŽ> ®G!Jlö¹Ïcr»å꒼†Kj\¶>žF:Ò ¬Vx©°²<O£? ÖÀà«ÇoWÄc°°é´27Áçssk›fG\Çmµ-ïØ»kš™é†zŒ™ëŒl})¢—/R2šs¥«CÕ"ú LœfLéJÀì҇Ƃ}RÔ„ù¿Aé%Š˜…úGqº¥Ïsvå 1µéa`,õà—¤RXUºõã ÕÒ¢J´,ÀÛê½kFË)íziî_TÚþ‡ ì—põìm™¹õÝf#w-o7˜¥BÆVýJ4è §’\v2¥¼…¥KÕ…¤¹P§š:·Ñö{¯·ãSl—ÉúFÃ[j†öO¤á¼9“Ðòº•ksÝ1£e6Ku3õajî¹:ÕVL”‹t~(_¢­ê»àïÚÎa1ùL$ÙG˜Î[‚ ð†ÿã%Ú±Ö’Üra²y­£kÆfòöë¿(”ZÄp?¥ÔÓÔ“$øjOR$™*ä««\ÞBÛÇgÓ”1|êÄ:zhˆ%oÚ²ŽÛÇQ´?3j¹©2{f¡ÅfaÉ_|ešímë´tHìÏŽxl˜¬.ZšX‰­Wt'¡çVÑúªÕvLöá¦c2Úý­ŸAŸ›n-'ž&Æ®M%¥i') ðä) ¥,RÈ"½ ”ít”Ä­Ê:EþL×°Ø ´2´Ùœ<]2Ù…iI““%…ÊZËe±Mišä²IFÚÅ’K#+NÄ‘¥É¥¤ì=<¶¯¥]ÎæC+›Çɤ\Éíµ´C¸Ë—/^ÜÇZúMÙÚ„ÕlÇÿd:ÇP&t’Ïâj2Bø›6¢zå iôÏS'-4§LC¦$}ÌZŽ/µQ„´âH‡5(ÆyŒh:TŠõ`¶Ð»£wŽ˜l;¥­Œã'ãÒJl­]èÞ _ß5g»¹‚G*cŠXø"A$Äò}=íùƒ! •ëY¯††ÀÛW±gÙÕ…<ì’Ì’ˆÉR'~8ªWî,~9G£}-ùG\Ûllšœ×¼««çq†ñŸÌmU¶Ÿ¾CÂÞDñÝzíl=úôæ\îÓB㸄µ¼EœÜ¥NŽ2İ–¶†›?‡çN]0ÓY(N¥94l%g¾wG„·OQ#͇Ì:§(׿(‰ÞÞ–ê»äíÇM¬ùN\½;”q .R•ºñ¤YºBæ+3$i72ÇQ• ¹íQ"—„ä ¹±y‡Åú^C1Ø·*Øë:Æm¿c·I¯ãðõ rÛ»˜ÊÏJ)ªGT ’F„öi"„Ê‘µ¸€õQö¿£ý×'µãí껄:Ž¿S ªSÂå0¹<¤9;!„Ó²:þZ,JÍrs~ Þj칉Þéh™ìKînÅŽÑôe¾îsiZ&“G1á¿Æ–uì&Gj³ÍmW|isV×· ›Ù¶f™åܾË9z‡™kñ1‘QefiKšÑeE€É]ä$HЈö¤¿¹bqПLõy¦i¬-ÿ¦?\ñÓZ×hX…c£z½Æh+[‘ÜOÚ¥µY¨Ü±ÿ¨)m$ŽJ÷ ¬“— `²žJN'aÄfa¥©t'õrU­u#Çß±gµŒ¼­^b¶ŠÕiË:#Ç^ÍÚ\,ŽW?øcjѼ·´oY™0+ŠÍS¼°ÅBÖFkqع2JÐÖŠìŒ`J©Í{´3U°‹ /¨G5ôqºfõ¶.=ò¾/}–z­¨ïÔngfÌéQ>ïä\Ü÷°bÖDÇ5Ú¸mƥĒs(Ýÿ§Š¬I¬æy³F‡$KQ’J0¤°®¦è¬í~hù|³¨Ÿˆé=$e›V®ÊØîÝ]³w-ïZ|[<:—õ8¬l6 [2Q©\ßPyZ¸–ûD¯^)Yc™‡¾ÜÏ V82É’´Ðeñö{OR¬£)JXm[QÐ֎З¥¹ÒŽ&“ò6«sLŽÄçµ_¤$K‰Æâ¨eõ_YÅøÊŸæÙôüŽÑk+²f)PŽ‹ï¹ ²VÈå­G%—‚V&;­FÀ‰Á?%}&ùGtÒ6 {\Æ~7µšÂËŠÅÕÁÙÙe¯¬f(êØL,;4w,d„µï½Šwa¹=b–œð™–{­rIaÍs´Éä%$3INÆcm®Çø~\`~,ÿ©»©³.S¤ÀùÍ×Áïz†É Éõí‹ z:¥µjÞšåªÍöW.ØJ‘T·`ï ÓO*Äð¼A".³9$W½ŽïÓÿÓ]ïÅ€Êa²»N›°ç-ɆÇgw9)øëÆö“9±G¢Zé×t=^ÖèÙÉõÌ$PcmËœ³˜Š‹X3·ªõœúMò®Ëºî{c/¢]¥±e¼dUó+äSaÜ(lšµ›Ô—I/Q¥HÓžvþ_º‘ž4­1z²žUú~¡åýóÆ»ÁÚ0ú¾¥ ygVØ1Z^ç˜Ó29ƒäùsLcfÊ㢑îjkSWÌã2tçö%‘²UëÂÉ.SæsšŸ2G+§M9ÄÐu!q©µ9SAQþÝÊ$ym9@yIBP—Í!$ü±‹_n¬þÞx›°{~µ³PÆfp{2ý\Ö*žÅBÅ\cf|MêËc•î¶ yk¸^tHâ‹´©àγ¼k[nGd×õŒÞ75”Ô¬ã1[5j¶F"ÎR£dpпncº®Ï5CÈ*ÍÝfr £;Ò†éòÇo JÁéWöVŒÆC”¥”Çøòž pø­Jñ§l=»¸ª=ê_‚¹‹,2ŠÆ–M2ðLÞ>Ëù¾¾.|V»¯yC c5û:ìvãÍë3kÚÚ†|–¹bxÙ®Üoê¸Û"CbûÈò³¬±võduù½I|¹ò±ŒtÖ,¤)5Š¢=FU¢Ã&xIiòð…Ç]Y£Ý5A¾šTæ­¯)ÄÙ…ò6…¶TÙŸ¸ánâôÝ·1¡ìµ^*6¼+WLö äe1E5Š3Y¯·ŽiBÍ'˜Ï§¥ËØÊrÃbîN• öd­B¿zµsrßÛ´eÐYºõ‹˜¡fª~âNÖ>G?!ú@Øu‘\`³ÚþõƒÄù#É;ž;FÞëÏG[ÈWß|}gI­•ÍË®´ {fÁd-¶Í ‰Ä¸ñj¬q«G}ÖÂÉ^SúØ·|DÔ®ëô/í^;Ékùy3•uè/íµuêù[ÎÙØtÑ­äqZä9I§³;fÉÉnUs â˜kó½3%É„áÓÄN™“cÔ‘7élß`ꦖ—/Õ<ÅÆKrT¦1’·L»û÷«âÔ[Ía±U2÷æÊך¾ ‹ä2±×ž§ÇcáY'Y¦HÙç!•kûŠ}¯)xù½ê™­s´ãvLºÞÁܳäññV¶25+K^»Êò„­xCf5³W”—#šª€|wÅ>9ñfÑ£\¹C+³lÕ6H³[sýßÜçÆF¥ªTlæ§±=‰&jU¥H­¥vŠ*áZ\lo1fj·™ú.Þkâò:î›ñõm{'c{T²„ar‘}7ø7Ä/˜Â:Ú5a¹keñ–ßµäiÇY©´ÒÈËb¦r¥¹mIêóºPŒ¿E…ΘK¯¤=Úî-›¼O–›Ñø‰D(ù’Z™Ò]ŽÙÀão¨ßäÙõNÍÐêÜÅWÏçbÍZ¥‚Ç%uHN.Ûšõ:§ÛÇÌñÙ†|t–#Hò.Ìò÷çŸOQHÊ‘„ a UxÞF.Ìÿ°,ÄËÃKža¬ƒK|7ôé¼h›‡ó[š”Òµ½¯”Û±SlV·mîÞËCF1ž“!aêý¶(Ñsöê¯yÖHÍaQ¹7PªÑ²¢3@p†EpÎ –SÔºª#7剺AÍžÄiåu55täëiI.—N#éÝ£éõ³Š5ᥧ":sù…¼‘IÐx•û…Ð,†xR9$D„º¬–"ÒSVö²Óu´ç ’ö÷?!Ø{qì '½Á‰d%›©°Ê~ÚiºØ¶½ê0Xx>º£XcÛ½Ýf¾ö;˜=óŒq‘Fê„¥¬˜¯gjíÆžÉUw>ã3) Héà»Ûò,I—û¯¨÷#àóÊ5‡CucB¦PñÐ+‰ˆ/X£Ñ%TWûg$Ç ‚™},’ u!IÞUF‰„ŠÓÞˆå«,½–+€¨H OË€B5Ë+ ™ªÕn³þ Ðá 4þáDfê1÷5P}ÊÌRéu„{od%m ´¦h¢¯kpÙ3–øP¶ñU¹œêÑõx©ïï†0ª«*²˜Yá‘$ ƱYOå]‡ç½ÖCÐèј†1È­Ä­9HÔö(Ñ@E†Wý±&Û·ãz£45Ǽœ†ž—±áwE=§]¾rø|¨±&6üÈ¢±5+²Æ&X› ž´ÐÊïkmc÷qå•ÙËȼñÙ”,í Ã"tE•—â¼pÈì°“âŸF’:VœC:N®@ŒâÒHMâÅÜhß·úà±ÞÔ³Ñ!ÇV6{[ÿpxÅp†00§˜ÿ™$îT˜ý’IæR¬ÍY$ä4ŒÜºƒèªØ°eBD c Á¸b2~â ÿg¦A´äìý¾X ï’P⿺ÊÒϲن2•™¸2‹É%wÓ^¾ã®[Û3:%lÄRmºÎ±gq ï ±ølÛ[­Fìò+Z†sJÊØ1<ÏHÂ-Ö…-(&uD¢â2HÒîµ±n+±þ”Âé¡Dß5X¿jn³öïÃ’D2§ F YÇ×òì½c¢{ J‡NF:bÉð£Q„HÏ<2¨pÆEø!VHæ_‡ìdãÝ•i$öísí‚}4—qÖ[w>:LÜîÃS‡w:Ó$òd¢ÔçÊÜÃÚöØíFOpM{Øk3…'©56Ù¯ª*im“€ì×µÙöÜ}>ñµ…Žú⤿ZêÄjʲ]+N Ó4ö{>6É@þƒ8Õ32׿(“Ò&â¾ ø®%—¥}#H£+ÚÜŸnÄ«îÛf,ÉîÎX»—Ž5 DœŽ .¨:Úe<²Ðÿ¼Ž >PÈÝ„A^c'°a (XÖY kuÔ´ì^5ôËÝ|¨xÃwoÞó1apðe±˜šËKù Ù<îRf¯À`ð” µ’Ígòv‘áÂá(UµlØW¯<2°#Ñ?ùkÇþVÀÝÙ|}°ÕÏã¨em빨e©k‘Öö*ZKÚÞÓ¯f+QËêùèší9$Ãf±õr"[KZéö„†ß™§Öhº‘ë` $7·å¼ÞÞ.¸N™×Tc&,€•IŠÙ`¦é Ÿ~ý›¤qÄHÏÊ*»IÈ •-;~Dº‚‰âÂÿÓ~­– ›£u í,JFTŽGãR Dã‡bnWë$Ü@4­X•Ù‘£Kvg3…’:0¼¶åx˜¯°µ’73ÇtǺû±+1 Põ-Ÿ]Þ5<ë­gÓ'¬íxx³x­t–:ym¨b”\˜£°!ž7cuJ¬ÖQcÊJÐééå«úIFÑkAj°Rä³5|,z˜ÙP…†=Œ÷sGzñ|9\(`à @¡ƒðâ$ Àp¬ß’+Jz¸?ʶyˆÏ¢þã#ûˆY»7¸¨ËÑRDªè?협eAö¨ŸnÔLŒ} ôÙaY£’ÌŽÊŽRYÀ÷ð‘‹–{ÅÀºY¯ÇÛ”è ÎLPËÉ™¨I#t™%rJBªêÝ'â8æE–€K(¨Ä”:U¦?¥mªÜ<âðůNŸũyýhûoÁ—H‰=£,ÀvU? H²€#“üÍÏÝ'YÇǯq!ó×ò’E=ØFYX—TŒ–Âñî×*±~hO¨­üÛâáɸ“¹bMÿ PÇe| fÔ’ê8ÜÑQBÕÖhkUewJâÝe™éÜ ™J+¯SÝõÚ®RÖ¯ž«™‹ ²\Ô²UYk-lö" víb•¬E6)Ç©"$fH*Id$¯0“…¬×Òœ½:’ØD˜ÜL ±«;bÎ# Cú%ÆÞ—EúR*o¾N±ÁË:«Fò…T‘9"F…‡5ÕˆeùíyæIn= ©a}³  çÝþáÑ$G`Ñxì¬Òªýß<4³„š""$ W’uRÓû}Â#hU}¶˜•š çŸ~œÜÉwçÛ¼z6h{Ü–°Ìà$œ‹(X/öDÒȽ9U×¶G²ñ±ÇÇÚÔ]Ì”ãÔõ&¥PÆûcl÷á£{±Xk*8ÎnŠíÊ£‚!gRÎÄÆ¯$¡–V^ddSߨ—t¤ñž#U>ô_È9ô(ÇÊÇ1*UZ'&@„*ðYÛ*r8G-–¬DÒ±x½ž¬ÒÊÖ ÷vœ:@Qø@ÒvX¸‰Ê´Ýn Y=·#Ñê°É$uØÏ9žHæ´;IJð/ ö–7IâYC$êÌøëÔ¯ÓuIjÆ™Š¡Õm~j¬­y·ýxR¡ñV4ì»}{9¾ 4d«NÎüýOä¥ùˆIU°?@Õ‡ ú‚²ˆVa"§TP‰Zšð¥¹^Ô9<*,Ð[ìÌž£‰<Çᥪ÷¿æ®˜kÉ—¹®{²ìtcïœÇY®ã„nÊCRµ"%ˆce‡Ò%§2=If4xÒ>gW+ÐRÎb“†™8ÑH䙭„ڴZ½êÅ*ÆÁæ–®–¡è˜§I&9¥Å¹hìßÓ¨jç®6U[ÿI¶.ÆÎ2ò…aÜÆL‰Ðô$†.À I”\Ëø5ÃÇ7EülyÔCËvžê{$¤G'XŸ•W_ìŒÅ/(1Ö ¸ÿºyÖPV9 O¹Ë"¤’‰¡_Ïþá)î$|¬„u„ÂO¶M 7^ x¤gž)˜’5JŒ~äq$r§yZHËH!y² Ö^9b^oA}Ü4X CŒçþüH·±€ýñ·žN°»¼oü‹#0wê ¯opsî‘€!O䶪,Dzè@Žêbìýâr‰üÖXãàv£,p°iY@Q SÆÇÖ?b³Í›¦H¿k)7*À¢È’ÉÜ{¡È†½©·]ØÄŒXB,ojÁÝŸ„†=¸ÂW‰ŽÑÄÈUÊ8rÍ 3’µ¥î—KP+–¥–† ¸‰¼U{÷/»_œ[Y¯Ûë¿Ì𠑺±RWeP:Æ ~#n‹³ÔHÀ™+ÂäÿQ…,ã¨Þ@«Ê·(ÊÅ–X‰VöÏSäžOR@“ä7A8)èy‚?êåPd%¤EXQ¥DfwT m;,o*'½ ýEP+»DÙå‚F.ó; ~âEŽ5†X˜—i`^bÓñiaŒ¼¤êF ¤®²c{½¼ö?Û‰’ñuÿ‹û~ÿ~(H‡Û^ê uQ$“ÚQXŠGe&ª¸ö ”´9õ…èb#Y"1—÷`Ë”Ç,ÑFx1ÂfFŒ²ðâÚºEÅfNwJ½½‰ieèz’ Ç!í"Jª«,±ÎÄ4Âû›‘ÿÔÆR(Ø´2Ãf·<½I›¼y¸OÍÛ‚#om9Œ¼*jšÉVYIxe€•ºe¥«Î7²ïjÛ·[,0Ž5_湞Qa˜º‡‘׫´…ÖIo˜åu€Ðè°û±fîI#ʲ1X‰w^üm]ÇâLœ=$“—·)džõˆÒ9cŒûb8û¢ÂË^ X‚‘,R¯0(sït•™ë?[6ÂJúB„¸Yíú‰#(OYÌŸƒJªÓ|O$jdY8z*·È”úR;½Þ—Û8£÷£ñ2æƒÙW¹¯û}Â`èZ?u0ggf=ƒ0åO»ÿƒöåœF^iÇÀ—[Ç e@+'SlÀƒPÇ”XâbL¿gйäÕ”–˜•`L ó¯»'h•ag‘…xÕ_‰=²"b©ùI bX™?ëfw±E0Θ€Ìz*+¨îY$·< vœpí'Qc#/¶ª}© ²éþšÿ¶Mñ·«5ßë¸Q·µµÆŒ9 \,2‰ÜÊ’?*Õ&’I9ôvø¹(>äR˜d§Ö0Üà$¡¿Œy,¯Ê¨oxBŽ•I¢P Ð'ñƼZü¤,}h‹îHì fYU‹¬‹+¬ÈŽñ’ìV%Š3 Œ…5¹ûwï{¯քȇ­©C,„"ÆÎ#¼…áö‰ $µ˜~UÃ0²Ýš½¶Hã–T;.7º6»JówŽÔog«;*#m×gö§ÙÙíÆŒÝȉ•yèç†eåJ,Œ£á™Ii¿ù¦VL|*Xœ®G jFÇK$L=–pDó8ö£çì Êè {rð û`‘¿i”ŸEÞ kÒ{9a"î²ð,¬ìJI:Ã’¤c¦ J4q7`k€Éæ,ÍÄÄ•½ÏÊÉUá…Ôñ yIsc޼᧞FG^ÕJzd%×DÍwÓMgÊZ8¬lïluÊqbfRÁ,ŠNŸßóc\/G½mì ¬¬©ª·±c¯Êœp9 ŠNÇÜœ‡¯/àÒ>K9•̆ZÓÜöÏuU0¤ŽÌÜ ª`3vxfííÓœµhúƒéî¾(Ùâ2$mÛÜŒ¤—¿’EÞw>ÜDŸºp#šRCE*£ÓHS»††Í¨gu¦¢÷€™/ÊgI’Om;J­_°~Þ>jh¢‘ZKdõ—G_’– iKGæ6F°­\©çèýîíXóq„¾duˆË©ôö®í¾»ã<7‹;ÌGçøu‘<s•?"&—‚•Èæ+ZûoÁpjñ³g(È!’Sÿ\‘ i:˜^9dpO oþ:³ñ,2‘%^«é GÊÛŽ¡£os§sÏv“€ÄÌŠÁ$#ÝÊ@¦UÅá©…lÕ7ä¼o$ÌB™™ã…Äl~ß™ /ý§r)IûyO¼>/ד\Ó;òãõúu}x¯G:=ËLÙç¿ëþ,¸ã”ûq’GTNñ„$¸HWøÌdóª–ZÜûRUâû—õ ã<ç¢füÁ{ÁµS9Oz«ˆÌfhÍ¡xLÕ}rÅÙÏéù(îÏ||ù °ÁbÝJ‘å\¿ÛöŠ6fœªÞ¦Ç/ííÀ±¯39éî©€°.'BgÌ1¿iäÍRÛ%2¡«¾'éÇÆX?6EçŒ%ͪ¾ôFÎU„šÊâ¬ÔÚ½õF?)<¥}›3Ž–ÍzòÔÇf6[£^x¶#„ «©Í'äÂ5Ô:½Xôt—ÙqŽãâøx|“æ|Dzæ°ÙVÝù ÆüR>?þ»°`N'w’–5SXÐÖ¬Ëü¶Ñ?’ž|_±Û7òvy|±‰ó/õ*¹ºôò÷¼jt¢Ùþ”ðÓ×ìÔ£N¾sÑÚHäîjda–rñ/ÓïŽòž>Ö|c“M–þ™¨ä·[ØœWúšÏÜŸõö7?‹Újd-ãªR¼Ð]Çì¹QRAÃäèÌõruòô®²Õ8|O«QŽ´H'¢Âé‘F#Š/»¾Çæru¦|µªês_”^m/¾ÿJa}6yç1æjÙ›YÛ>2½?\Âì¶›D›hÅetëY¬ZÌè»æ•·As™ÀXGí‘‚ÍÊöoÅv”¶$UˆúD¹õ}޳žÑqZ§Šü­°>ó¹·Iu)*e7Œ>äøçk)vq&*›C‘XBÎzo†ñš†c'³d÷_$ùeÈk¨œÿ’³Ø,öV¶ ¤þ‚“kzÖµ±ÓÛ\¦bÀµ>L¸ÄEO7ôϧÝMØõ-¢¦gÈùû¾;ŸÚÐñ›6á[-«êTÍ[UëaðšÅL2‹cëR·Z:dd‘¶}I)2±ì›±´à3åIÜVš  Hýqv+nPýaxnÔZæR¬»<ú¦×ãœw“q\Ø$‡ÚþwL»ä,u|†,Þl½<”ú®2|¦B³Ôûzù‘Îöl4’*ªï¥ø©ä5¯(aêÕ‹clسZ„b4DÙq³fu¾Ì·%|FG`×+OŸ­Y>àÿ@H쳬Œª­,_Ð_Óþ.Œ4ñMä|^1uÝWYëÕ­X¿‘ÁjÞ%­àœG»³d4;›1vÐqôjK[•Ãà®ìd2É®G“Ìf^â¾ßôØ»?“eÎSÏI‚Ð3)¥.ï¬ÔËÝŽÌéäú†> ‹ 6»=i®§'|MKøí§>)$þ¥±+ÆU55>+ôéÉ„`sÒ[Qz‘KÚñÃAäÕê–¤}7+P²0Úà1ŽdúäðÀ­sŒnýc1^LUšÚÄZ/w^Íâ2¹¼6ÇZûdN Yój½N+ì™;¶hÉ11¦ ÷2r gšZ|\-!usŸ¤_ k3©ÇwrÿOìtëÓÊÔX|_ìäõبßÂU×­âljS“ÆU‡'rJYÞ¿{o£šeÉUÏWŠ*Ë ƒŸðƉŸÀhXHrÛ¶«‹¡8Í;=¨ì±c6¼F=°Í®e1²f²X|¿ðä°r>71öÕ+=XfkX«5§XÌViËâd'×>¶1è ®Î«¾ôlâû‹| O“¸ôuôõ=V´E¨wl»â2Ë}jøG ÈV¸ûh§Vk8ÜFBŽÝ­³e1\¾^’©w.^¤1&B±­¾«YiIËjú¿Ù*à÷«xåhçu|žßƒÄë;,'”“\ÏxÛs÷ã­lCFŠÁ䱓¯kyh*Ã,¨û…ybïÒ?„ç±¶hìÐÔ»v¾NLE|–­^rËf•ó“L”zcnùl…Ë”kÚ½öeÿªK-‹î¡í3¢åŸ§¿[Îlù˵vÙ­í—ó9Ì•Y6*éF…‚þŸs,q<`Ŭ}+Y-'^³V{V¯O޳ÚóVÈ)®½?Ô+«LE¾Šžö.ÕEovñ:ù1ÆWfg¹LTÇuRü¯†¶;ê“[JôãÈkÎnJ”qóíû¡ªØ½¬ë7ów3ô°ûB{MvKwÆ¿u¬ÚEO›-ÙzÝ‹ÛmÏõ™¡Å‘Õ©C¬ìpÕ½¾ç´Ÿ 䲂¢Åãȵïmþe£’Ž|}™él“e𺼩¡ZOã­nîlR‚RõÉý0ø»% ª&ç’q˜œ(q›µ„Þ ´ÃRÎJÕ+›%Z8råÆË•µÇÅ•«…HV•lî7)RŽtJŸFþŠ)á³ëf)ó±í6¨[ÎkT±–2CÇ{Gˆî‡ÇêÚ.½¯ŠÌh[ŽW š¥V[ö¤8üµKšÖšácñxô‘t·Ë$êØ‘w÷üÜHϕ٩Ý"zÊ«HäªÇ{áã¦ýGx÷vÑ|ƒ¹âjfÒ¿‹^°ÜðM].géWÈk8mã sÕêå(eõ— ˜‚Ì™1—%¹¯Yö¬ãg_QFáõ­ãúÚvK9ã:™_ fëì8|6/9ëÁ™©6ßãì&Rõ+>úÇ%/´Þã}~×t­.4 ]c•M†ñ÷ˆ5kùÍ_¹«˜ÍžI[=&i5e±ež³%(¡Ôõ]O X0øÚÕÍA‡‘,ù«odmY•£|Ò5Š1x-c1B•½sDÕ_ëÂhiá|y¾Wò^©W ˜¦Š rm4«Ï–‘åÙ±0ŒaJ V’ÉtôêZ1›æãiX 6 ã'lð‘yBRSQÅäÇPå«Í£Á ÿSúÕ«ÓÁG´do[Çë4q:5ž¼i¯cëP¡Õoì<¥¬y‚;»ã‘ÍåîyX1®-+—©-ˤx#â„•Ì’ç¡0׌B?fuËL‡P¸‹q°J«]Ÿg4òT™S²ÿªV¶Ã”±•ر”³XVÀ妹-y&[¸]—UÙhUéfœ/C?Š‚ŽÏƒœ5|fnµV…a\Û¼ã}÷hÓ÷M—›·œÐ#Ò*kV̼xøcñŸ–ü[ç Z,¦6zÙ ²ËC|ðÞ‹{)·Vݬ-lÇ¿i'ÍK‘¯Ÿ>p:yÔcW¨—gÓµæê¼ŒK•5ŒÚjÖÖtŸý׋À~ùõŠÅ`Vm?JØ2ùüN˦뛶/#Y £ã“³mVµÕ‹bµ #YµïÔ³k˜þˆ"ölZ_bÊF«Ø¿ªýfÆ g¬ë›ÎwŠ¡²«vý_V’Ö ™Àê»¶õ.èIe/§õMsDÈP©šûªô"ݲz®µîA&Ϩ¿¥oì¹L¦fÉß(Ë›Íã¶=–Žq­C³å±7ÌâíldÖïÏ{úuÙYáw5êÄ{e±)úMñw ’Õî¿‘àÔrø¬ö#7¥a÷ù0ºÞlìz®Í¨ärÙŠ¸Ü-[9L¥]gmÍÔÆÓ¿”—L/.?#–Õ²ùÌ2XP>)ÔgJˆt‡¦–ó/Ë`´¥^Z÷b|BJ2êêêu(=8[¬6cÚû[>ßÖ.«[Zæ›—Æâ*íwÜÌ®6óiÃQÀá6 ©F$òöñâ»Xü$«žÈgâեѫVÊÁ_ˆ^ Yk›Þ5mcƒH>ß+ î&ý=xÃ˘\^t«Ÿû V¿6§J,Z–̘f«j\dëÁg Š–©Uµ,u/"lEÙï=SöÌÁàl ïyGƺÆ[;‰­å\ÑÛrÙl–R<¬ô6ëòi‘e¶,L•ðôÚ;9ŠºV)Š˜lÖþ¬’­xëVf¨.‘ñUGMÓ†œ€ô²ž§Ëzóœ9iâ¾¾I…H™¨Î*ÒFë»ô5¶3k\0sÿWþ>Õ(åò.¹¹áçÔs™ì‘èK&.kº zí\~Eí<íÙKµ®ÔL%zÿÕqnö¡³±2—§õ›§’ñ:>Æû@×®lVÔ&Üó6èTI3¾ÊåðápÅÎW3™kc2•–ý{@2#Ò”ÈK!ô…áÍÿS¯¼äoíƒ)᜹´`æÏo2fr5röÿÔ™{zlëPdiW“ºÅ}R¶1cþŸ‘[ÕÙ£i;]𾇯euüöl52¾Çäý¶†Í æW˙̖|9vŸ¶-crùÌ´öc©Y±¶q¶ëÒz¶Ÿ¬ÃOø¤¤:²Ò4ÉFúBäŠ=8sk`†ï'’鸌ء&èRú©îgŠ÷ä_«Šz¯‘ö NÇ`¶˜µw·›ÈÕÙ1÷òónÕ¯ÐKÚ> N÷Þ½êXë©#Ú³/uÇ¡A ËêeÇý@êj^UÚv nsNµáM–¦“äW9 æp{Ng]ñæãªâ(OO­,œ[vÊþ;µ„¹Z8«âò0§2 ¨Z.6Ñôßá¯)6Å”ñ®¥Ø¦­‘­{fÔõmKOØ­Í´—ò9;Û[-s<ÖQg“5-Ëbfk(Ö^I»)Ñðgji»Þ˜ÕsyìW”²ë±y9µe`Ëî;fË/QÃàó™<½\^2£äµÝÇÚ63[þ‡¥V|^„µr›ñd­d܇ÄM]K–œ “éªâ?,¯llÖöq[«Ê0Ò:&J,zßù¤Ù’Ëì¾8mj¿QšîÙ¸ÃãšÚ^áS|£–Éb¶ý~É£b¾…% ?h’þÁ“‰#«5,®¿”Æå*ýŒEï‹hŠ@Ìû·Õ6¡¨yg%£[“c§jÛ¶C{ÍC˜ÄÏŸ‹ÈEÐÛãÝcZŽúdr»ê¥uÌÏ, šÕ,eHÅÌNRc+é~Ñt<ä›f3·6Û«—\¶Ù°ç Ëæs²ghSÅXµ›µW †¡zÕ\F:Ž'r­,txÜt Ù—™˜®Ýà? ï¹ióÛOŠtû µs,lôô}O´X“3ozÆVÖÑGÅka©‘Ããoa³ö²Ï”Â_ŠÊßžÍ<…ªÓ'Ëø“¥‰iÝq[Å@‰F"ŠÊú°i\êòf¨°œ´È Ûn¢ž¯4ÏÝ]zßwoÇdíåôm¿Ç—p¹é0ûU:ÎÖŒµÒæ/)ËÓoµÍà²UäV¡~«ÍÁñ÷ÕK¿h½´ _™0fHä_pöu? ÕÌ­ÇÛÙ¸Fõéþ.ÁéùÈâ³þBÉdnZËÛÍO¶nRlçídé \÷²ÔŽ.(L,ŠºõMr­ÞšY‹ Ú2r«3˜”º—-ÌÜ×^8r@xãã”_àjì'bÖµèºß.< Lõ±lCjª7À×mŠfîL§pD¯fíµ÷~øP”p­Ò#ÈÕ@ä— Ç(€—žìŠêx%} DÈPIûrÎˉ4^ãž³Éu2ÿ~NDˆ­“’U`ѰVŒ±vh¤ÃÀ~x$övP¬·Iö,„O‘°"¬‘?tÈêìW…Ž@š…I?,&~Õc Œ£Ó«X¦èl‰JøË_^L¶µ ¯ß÷÷|q ïߢGøöDûu!e÷@D\·à’F9j²¿1WþÇ€ôûI÷á-Ú$+#9 YˆW5¤™ˆö¸ÇqŒä î£Ñ¦A#¹b u#£€IäÍ' #ÇÀï- ܯݗ}f3#°“Ün=Ç Ò!2˜z¼½Ð6ž"‘]Y25ŒkE;ÄεÛv` ߺyžw_4[ Ç¹¿ÝÜÓŸ×<u^ Ëî©™øIŠO3€V0T•Žðü§#í—á½lvuN¬î#ÙHùv*ˆÿBwvN>1²Íóð3î°åð;4¦5e•D}@iIÿµã݆Uë$ØQ$ª8Þ?t–ŒŽ Ôª×ÜÂò¤<“º)µb_-}Éh¹pÁ–ÿêÞ.7Ьmø,ºEú_s·÷öá lùÔöÖŽºÆÇÈrÊN"ävYŠrHT?õ’üc˜À+êVú âO¤§2ŸØœƒŸùkAdfŒÁ uÉdãnñxnÈAãžÄϼ×ÇÕå¶=3dž†›úßÏ…©¥¬v'k«Š ïŸ|ùß‹XI7Vgç…ù Žúß±þÇìóëÍÙÉHíÏâPHχÁ_Ÿñë,€ô,üvüQI#ç’;qÈ-û“øÙ#çÖâ>²sñ' OQØunlK7RGÀŸ“ë‡ÇM${¶›÷£Âø.ëýÇ‚[†SýÊ8ã“ÁvãŽãŸö'õëÞ†rä?{¬®!çåC•>Ù~À A<€ àÿŸz5þcÍwOòü/ ÖØ\"cnV>Î?ïçŽMÞ¬aúéú¹™DŒö¼1ôƒj6üâÍÃ…ìæ„ÌrÚû‘»¬kFñà]£È?S{>Ch׳·¼3µyËÀYÍ–l~Õ‘×jgt[Ûֹ°¥Ùp nbl6?eÈáªÝÆ›"µéfˆK¾×"Òf»ÇõÝõ6±LÈò}9ý"ÈчMßêV'²¨üòVN!’Ø(”ÀŒ¥®©2ÃGÚ®’/f òÃÝE’ äD™$zG’€ ò7Tãתø+gáÚ›QÓÖÕJµüíÙâ¯GøâsÜÄ´9íWO2ž—.+¿ü-9m•NÃ^8ä‹|3ç\,ZµO/xëËÎv·Œ¼E¥ø`Æy.Õ*ž ½¥ÞË ¶Æó0É/õ¶cc’ÆÛg7z ¶G-ªä0Ú­ÉÅljŠù ywiÅìø=[Ç^SÒó–4\æ¿çý‡#ä\œXï6m/%k×±·ô¸aÍÌø«xìL73Vsرˆž¦º³ëô ýÁC×¢½Dqb%W“Û-#‡uáBË.Ó!ovñ\ªû0ŠœzÕc…ǶKöV¬¡IöÈë!Eaò+»ž•Çhn°•ÓÕÂ4¬þv§K.ª ±”$ÛwjW¼}/ üCP(„!XZ +¹‚ÞÁ7«rjÏÒÇ–õÎKÔvý_v}ûê¿ZÇgoùeØ*aüMœ×ðx_/9Ÿ½JLW½W.ºü-ÈbîXl­‹"ÜÏ!Yúgð·ÔN½ÜåÆoû?Šñ™K4vÖ|­¦Ùì–¿©l˜ß ØÖ±÷¶<¬ÚðÝv<–¿-üú]çl`Õ¢Æ×,ê‹Æ&~ñ¨áAQÙaDY¶¯Õ‹"¼Å½†V÷¡—•˜¬,=%\‘Íȇ)ÃA2¹‘Šü'ÄïÏFWHÇt|ŠEcžv$´>£ a55&t’Kê´ÉY©Sç¿ ©ñ Ié±–žœ½QI0)cÚÏG7Ç!uO ïø½{hÅë~òV›²Uñ瑱žNÉdü…”Ìá<¡6kyŸ)¥â´Ü]M†*^Äâ¤7 ž”xqˆ¤Ï¯„R¸,;¾ú…]& ú—³õƒÎV4æà%ÿ˜tügÓᵇ­¶Ç“ÔîRmwd‡SÏÓËß:WÜfRH¤Î<ƒ¶øù)[ÙiAY‚«K ®\•V!%ìa/Ó‡øD´…,HâC×ÒœæWdí;J;¸Y´Ñ´…ÞŠ—©÷£æÌ6˜EOUÙÅŸÒêéuõ‹€ ¹é€Lax²?”B_*+c»w‹ó»à§ÎüËx_ê—!æMƒfÅä7]k{ÈZÙó8]æ¦VKÚOÇ ˆÂê÷³óW[e1E9u¨l5ê£$¶ÖV–I%ÿ£¯f´ï*îÛ]ßï^+×r&ñ©~MÓh—g¿°ùY¿±Ï½gqóÝÉdîAÛù~”ÖgdÂcÇËÒÛ9I]_…éëju|ÝHËåB ê!Ô1Ýú©Š´¹ÙéE¨BA©)zº›¢±F*¶íŽ8ûú~ú¯«åŸ]Ûömó3–ÇÑðú`÷œmˆnc𺆳­Ï[|Ôv©äÍA‡/›i?¦f¬.#>Í)[SÛI“¹GÓþ¾ª5ÿat¬Þ3aÉäìëžÕü6i¦}SÅZ~לƒÈ?Nôu¸²¸ú²ä³Y Z瑬m4í×ÈnQÿ¨õ ÕÄcñT=vQº¬}QœÆwY mÜþbXâ>âÄÌ;LÈDÓ,B#ëdQ P“Ù…P ;‰8˜40™&.©Ìo,Už33«}³Uµg7á•=S?À¹<ε¨ehÏzŠ›sxÞÈ|Jx½'ò¨rŠ¥J®÷«Æ>ç(õ¥ï+d(âlnyW!‚Âxóê"ÖƒŒ‹{Ék{‡šÙ³0J› ±O’©DÝŸO¥¹“©§Ã*cÒhU–vú8Àoþ4Ò¼Å6Ëㆶ®eö'šÈÛ¡™ß%Çèxêøèõ«yœÕö “ÈÆ]‹•Í^··­ZâÝ–šñº9’IÏoi‚;<0qÞ6+Ϲ(xÏ1•~÷ãäØ1¸nR‘ºÌ$3—ê•Ý]J€ct”•Yˆ ñGmù¢¶¯º‘ŸVèü/OCV¿;VRŒg_ÍֶÄíîñ\ùÙêÇR.2”%{1`Å¢„¹V_¿‘Èý7}OêúÎC?’‡_òžßçÉzÿ˜h뵫빽wdò~}¼…bõûóYû þ;ZÛ]£©^*ñGrÆ’¢þ>oøÍ”WÈíŸñ~÷´á6|›&ñF NÜ$Á[ÓüÕ¶®’ºšö¡’ “a©QÃÔŠ¬2=“Jo(^«6RQ/dYu~:õP‘,E#%?ÁÇ%Z5SóN ´¥ì·XFG;D’ÕG*Q›„yÈ`Ò•&2[¯ºJ°,Åln%’¬Ý•?‚råôêêG G±Õ]Tï”^Ô¶ÜâZ%éÁn7„¾œEŸÆSÇ‹µôóõa­ï›VC°ç¶¬³¯PÕ=¦â•þ¡ìbr?Q[Oîm(»SÄ2Pµ„ÑYJŠÐd$›_—¢;‡†~¥Êû>o^Óü‡Íó®—žÊc6*cömG)¡¦«âœ¹ÌOž"êI%ðdõš*¾-ÕMjþB©åh£Šµ•Ž%V…ëA¼D†ueΪÉ,±1&2°’ÔMÌRò °ÅSÖÒÅË,R<é'}¸ùAìð¥ÚZã„O¶,“·®;ƒ‘•ä@bõ©…wigäJlHd%˜9’; Ÿ†w—X •({±$XfÅÅe©½>]¹:ÄÑ• Ñߪ©=ŸõÏo{Þ â-e¥Î;P}þ—ÝàÝDFšH•¹y#Rœ¯½/æ9*Ä’l,¬Á?õŠ6 ô®¨Œ€¸H_•EeÅWªxìÝWÛŠfì¡A«ýè=7ä†4G0ÊÕÄJ}¬kªT?¹"ó$3¢É,k!¯!j†)Q U ³4‘¢†@ʈX(. Â?qIª¬Çïó# iÂý]Unïgçó°ßD¼Vp÷wñ‡OÙos)0ªÅQ«GÊ€²w‹ÛFª<¡„QÈL‹0>ÿ0= W¼Qðó $ôa! “òecæNUäþè¤æ(x…€ô€Ç$’<³NǺÙ{.å:ªŽÒ©B ‡PåBÍ“PVŒa£dQ R ÌÎ~'«±/hÃrr:Eð%jË@-£ ™ôž ¤|¿Ó½cÉm•õHÛ5ƒß7¶ãÛbfŒ¿WŽ>ê}²=µGew™J¨¬¦ªpµÜ —$†ô=(äe¬½#û‹•ãPC+#icf—á®ð³DG'Ñq!b¼Ç?´¯+:û’TŠ%Gc^L^ìjáäçÜnVGüDÇ„dŸhL9U©'r9õ%ŽÚ»íxÆOôíÖÝá ®¶ð÷»É³“…¹ G”.lÏ 9c–7%[…gZËî§ÙŽà*Ó·Å Úo“Õ¥?%ÖI}ŠHŒ%'Ž$V,,Ÿæ¾  ¿8øá£{rNŠŠ¡‰Uë#ŸiT Š/}¡€‘%yÃMtŠr®OeƒWÈÚ·j½»hñÛ_à–8]d †Å‰ðŒ«)g·î*-y\œzÍë'1£9òúÑ…É”N“fìlh¼,Á^ͺŒuôå*‰ «TU®õ—ÇOvØ+eïc ÌÃ6=òpªåP£³³Ðs_˜È2¸'²e•=RBÊáÞešÄhDdtY#ÜöÚRZN&-$äÄÀzoúÔÂpÚíé>öU±sÞû?å™–þáø’2‹eÑW¤p7Ý9Pzmn›=m¥1QÁZíoéòLÄÝš'‰#þHQas|r²”¦kq×¹çèrÚ§1ËIå#NɧMKÐNo.+¾%¶ÝMX|½xüî¹O¥ˆ²hµûw~›¼2‹ö‘ƒFìz;…,Þ$•}é ¯öªL:<‹Á€“ö¤$é˪36^—¶¿lÍ$ƒ¯)·‰Ì‘“ÔƒíŸäjà`ñhrÿªÁA&9—¢Èªns }^R*ÄbŒ“Z:üÇk­ ˆWõ<þ,¬^àWñiOÌnõr½Ï‘\±óÓØXÓ¯=^dêÐÕ"’BÝæ·Í çõo4М>¦Ø¬Ñö>Ï¿ úõ$®°J¡%þÝ„Ÿ6Ï —i£Nöe#Ü»¯í²ƒê ò÷—ŸÄ¹]K/Œ¼‹½Ïºä«á°™ )ð+Lì³™lTÀ\—1b­lT­%˜ò~Ú´]"‘ŒŽG©à]i‹sC"Ÿû"‡ñŠFc<ª{N­Ù(cÂÎíUýä™ÓÈßgñì²d3þ_ù¾$HÚ9–¥Ž·l1ªlVj†ÊZ38}Ï·ï´]0]c™ù#¢„ê4Ñ%ž£5±—Ž >_ÌBá›-¼÷À¸iÅöÍ䎒»^6*I3×¹n”’©­’†)d(¼™ _Õ&ò=}ë_›D –ìävób1‘Ôu¯‘9Yg„ÕddŽâOKX”z±ŽyõYö¿£ŒNÓjºn²ÕLÍ5ß·%F”VfukLx¬'‡üâáÆVŸÉ» ì[&S6¼ÕHòRY©b)·½ÇhØrÖz‚¸±‘ÌÃ$….S„ CŸOWâåM 6?*iªÉeŠ-ÇlÒÆõÅÓÓåH“†¬ºº¢:i´$\‘2÷)îyâC>}ðyÆásùcD“²Ûlv rŽõo[:øn¬ÆÕ‘²Öêã _á±~ÝW24ì¤oê;éï𻂽æ¯UÍã³–uü yÑïÒØ+:TÈcìJÐÎ6I£‹)3Éí*H•ÙÖF^k‘~ˆ¯mùâzM‹ŽßešÁ¤p™šµ5Ûræq9||•—^Ú0qç"–潎ÚcÈá gžÖ?·e’Ë-e>‹q™#Éî¥k^@Áùwo-›LXÃÍå]à µÛ³^´¹ e“.#ì!f»u~ä[3EÓØ*k|Eš´H†$ÊÆºFŒ1T_[Q‡)ÓæÉTP6;.]m›|Wà ä-cÛ6»`2û® ‡fÖ1vÕ³8[5ý¸¤¯b“B"ihÉ"W³rØJJ•ou²TÏyú¥ð·Œµ gîíøÜí¿ØÇÕÏëÝÔ±±¦G-–©†£J—ܪÆò¾ZõZW-ÄòŠrL+YeGëé«â¦W‰ü¥’òTYZ¹›\Ü­aÞãï6ó oÛt›žb¾b\¶ù—Õ&RV‹{PÃXËVŽ–Fq^:ò¬ñ¶Ãôaoeq¹¯'ÃS¦6r-,~¡YºÐì@Çù7wqÉXÌÙoTž‹QÇM^*”+ÀðÝH-ت´¦.¯Äe¥å£Fr%=1Œ°—ÝÆ6ÉÃtr†¢Ò”cÈXî㨪8Ú·jŠâÈy;êž#Êãp{Æoú~Zõl&J:1ÅíG#-µâõ9v 6ý³ ÎÚY@Y/£ëmÙÝÛ½c0SÉWü§…£Œ×³jÓígígEÓSÈn6µš–ªÏzÕ|Åí"ž·ýC!*ìYˆ¤¸éV3Tþqqa·z¶öøíe|·›¼5(#¥C`¹ä½oÉÙœ†½‹—'=Œ.{ºÍ,v7¹f5ìÜÌEff• Yo‰²ÿÛi…Ç7¼YFÝòQ²©«àº|”@5•«ÀQUC‚³ßg'kkò‡Œ4¬¥Lß»kºÎw!‹¹Ÿ¥ˆËä KVðûmw,ˆ#i>νée™lIu…’E(¾‘“ÍÞ•µ<Ÿ¦4žBM¤ûY5'c†¾B¶Û×Õý¬µºØf–ø«älAN o20cù§ÀXß4ÚËÝ¿›±†¿{UÂëU½ºés[ÜNå ÉíTÉâò–å‰>Ó#_wcŒAw‘Žâ4~¢m3èÌhWsY={{ÇR“~Ôpº”ª*Þn+ôp>Kb¡sE³¸î»UÍ.üòe¬VÌX¿ce–|¥|VÏiొ­T[-n~é‡-;’¼ô’Ë*¿ rÌmÔŸQBKÐ^ÙÛ‹7ž¼Q, ~éÊÒ‹9 -•ƒ#^*Ø)§§vÖ:åÅ´±Ío•Z7"ÆÞ¦²×Ë}µ¢ò³R“2þ|ñ–q¹¥d6ÜKx¼ìÎo*ùŠqSÂ\«˜Ñ0t°·âQ÷K™ÉËäblm¸Ñ¡ä*âäa6J²šß¤ý jz²Q©”Ø?ªUÅã1X(d©Gk›%‘Ö0T¶Jje2;V屬2µÍŽLœµ°µ1ØÜ]ä°0õŽKÝ®6?èŽÈø×3?’òY|¦‰W#!‘Ôñò[òJÇ›ü'æŸê»._„¹Š¥á>‰4ûêôuü£æãœXÅEBÊüœ¶œ^¨=,„§¨·~£>hZp%‡%ÔŸ:lkr)%ºa ¼+‹âÉGçÿ ÍWUºÞVÓࣼ֎MV_¿0&R¬9I°ÑÈј½Ê‚­Ü Xî¥g¯Ÿ£ÅÎMšóªµ¼±õ/ã?l=[n³’‡5‰ÖôÍ¿$°Tg­SYÞ<‹Šñ–;#% ¥Ù왪6²)y¡¤L•?¸¯ªÛ¹}.îøß'oÙ_È2x4IÌîwsXŒ%ÌNcú•òÏœ_63Õò qt|Ÿ5_½©ŠÌTÞ«Ö¡’­O “LŠå§x<§äú›ûnsáaKñÆ™g ºìCz?yŸ_ó>)A²T£­fåŒ Ø •íÓ±Pc¯™CÏv¬u\Ç>ÆaËÆ:œ"cÓÓýR· ¨¸ìÐoqÓå£(2Ô“ Æý(H„ê­—ïCþo5xy°ÿó'TA¸A úä¶o´rUìe,b+Í;û^Æ:½¼Õk8ªkyàŒæ+Ée÷¹å?cóu?'/‰·Ý]od±€Çl4eﳋ·g)þŸZ‚fSi› ÐS²Öš(¯Íf´Hâf^kþwè£ÉÏnm­lc²µ°µ66C °ÍJÝ<.å&ß…¯‹§‡ßð8ºï<êÖ/<$¹åíF¶eûH¤?5ý9Éæ­‹iÈɼG¯ë{×høÛq×åÕ Ëglàq›U •/ëûuœ½A„Ì$øô r`îÖÆÍ#ØébÁ‰‘_ˆ’èÅœ'¬“…T±e[ö{†§ÉŒkRR‹q˜JãYú]Ѝx®Y=ø[33ä<£ªÖ:®oÊÆù'QG3–±gŠ©hßÍ»JÞ2£ÕjعVÅÏÝÂçÒ‰óG‰Øêæ/ k/&Ù Iµ‘ –$™ ”¸Ìb—hÑhXËgªK€Ã×È43eóq6NÝ=V _C˜Z-Ny÷Y-A¤yƾ¾Òëy»ù;î{Fíµ°M›Þ³x¹cËdvy¢·c…ÁA‡šªåìãmOqú,Þú3Ádösš»¸É¥+…Ëfq—ð™—gƒYÝ/o4 ÃÃŒÜ1˜J²œŽBì^Ì`öi½*¹Í~—ߣ küMWá4¢’ ôãªAtÆŠKìµ’ìtùbëÌÅÆLné7ðתœÒw·‡&õâÝÚΑ^Jy¬ ò6Ë™×ôy.ˆälœø3V­druà>þ¡«„µ={¼fXk _‡ÖêWÄJUìævÌNv\n_9>#i±>Zþ%lœ–JÀSR8lb(ø%Ou­ãuÛ°çìGöË`Z§Ñ@Ä ZÎË7q»©±ås؜Ž*ŽXûÙŒv×½ZÆ)vÐLcÇí–DH,,A)×µ,SN^$YØ~ªåð»‰ò*ã|s°E4ÿÐfÐðû&Ébæ€<|®»n["lŒl¸XZzø¼F+—ا‡·–l)ÈPÈ,u~&1~N›Fo¦¤úhÚ9ïyï¸Xò*ÔçÛöÑv£‹´|â{¯çäíJƒÈºÏßG€Ÿfd±jJ¾ÞhÅ—µjÔ³FŠ“.*h2—i±KÏŽ±Úðœqd~¹<+Œ±µO=œ­{SËêXkû:,›–7]ƒGÔuù¨â& ~Õ'ÊoØSeÖ0‹ŒŽ{|Iiëw)³ýë[NûäýÂm²Ô5|“²\Ýìcß“—#Ýmêøífµœ~FM®¶¾øz±±M6}M&†9dÂM—bÎÏ} ¯%´ì{'–%>о<[Àøò¦‰ÈxÓÈßu»±á¤ÙlMtXÊøg Få[â‘¢Ëä6qõc‚OJêüU@åáVzRC2}MMÚñž!§ÈÛÕ­©˜á¬u5X-s‹\o|X¯/yß\ðìÚ í ™Y÷lŽ ¯C•[y Þeñù-Äx¹$hžÓå ©Ö)Obýd “Éþ:Õ6êZNǹá±{FZåjXÌUÙÚ9­Í‘´ô±âgE5¨G~â}¼V¬Tº¹hšŽ¬cÅY-´uÞ=÷â|ŽL™ÓÌO§¦L¤‰ îСY­‹áß•ú¦ðÝ¢qû†ÞRÜ1VÇb±ÓA2.F rcó¶âB+êÙ)©X­^0(ûÈÓÄÔúu?œüU IW7¸à°Wêá«ærT.Zï[¸ª9™jO’BjZ˦'#[1o]¤·sé’tŽ¢ºQú0Ž;~÷•eÈ]—T×tèúJÄ…hkÙlÆR¥éeÍo»–r·Î^zÌÆí:¢86:¢·¶1gècT¹k(Òï[’Ê˵ÃVÎ æÈQØ­ÖÅcïÞ§”·±šPa%­¤4ékÔ2Ø©nœLû˜HÞ­šMŠˆþŠf,€*Ch7I›Ü¾,4¾óæw™ZâΖÏ~îpXœO8Ϩçw=/EÀe®æ³Ûþ_tÄQ’ž:ÄParìyZû<¶9±“OŒð$^–`duíY»zœâ*XÇb¨ÿÇ´hÜÄœ9`¨æ8Èæ¼¤™yF k½_c+yÖO4×ÙnÿS,yÛëá lt¾ß†¤ðÕÚ1N— zÖ-cdƒöóŠÙWž\Ø„B¯!•'B¨Hã¤ü“ðàž[±,™(¿’ †3ë/.cåÍæ#Î2HÆ4Œ(¥Ê—¿Ò½øÉ¯ £äª1JE,¶ÿ”Ǹ¦øà9$Ž0 ˆÐƳ$L <¬­ÞÄ…‡äѱü,üÿòªUG"aÛ³|û¥œ» p$(ñý¼Q¯à„û-_ópÖ‘´ª ¯=Ë—Fá¸Bbop–=`´üT€ñZ`]½+ Ž7aÖ>b«2ª+Ê^$E^#÷‹/²éïÅc—”­Gì×.­úîÔZ6±;wÏž(õ»Æµž6=Ž6Dî±£öêèy åT|*7r™Xeãݰy¯)1…(ú»~p"ʪFX$Œ²Hð@­ öÃúµ»GYB¿'ĸY8ouåi”(l³™ 8qÕnž Ž1îcÕ¤çÖ‘Àý¸Ž^?–°s!•aÒ(ùpbq%jíÌ7*bãýÑ*ß¡U¸^pwÏû<85Roý¸YT f*ÁѺ*23ËÁ0÷#ûäÖ2=¨üyun\ò Îf¢-ÝϺKu›þd’ÌݾK0 â2Ë@ωȢ¨Fö„mRoeò’ÒðÕ˜“"Íóp¥nH}}±ÿàsôûó#ôÑg÷$±$RÉÝv}e÷š¹hœ÷V£- õf1ó_Ư)ØèŸ©ÆN“êvÇÓ¿ß„£¥®'õÃõc,?ox·[ž9^GóÕTòWöyçž<@^«Ôž;ƒÿȱý·ä«Û‘úýu?rçŸ\^:¿jÿ7ãfcÕÏ1I$9^?d‚ÁA?¿þ_¯zÄŸÊ[ðAáÁøn@úý‘þä~ÏëÞ‰}¯íõÿzûð,Úÿeñà|žÿ©|³ØÒAõçõ ¢@‘¦?¥ÖuöÖ@’Gä?¨ÿaâ$ù$–xI1̬³:™*!>×÷Û›š¼âÃWަ„ñ¶g™Œ³e¦ÝæÈ­=WP´×-!ìÙì_(’=yzF8&6¾ëÏÎ Q•[éƒéÝ™Äàréäo;•ŽH‡åÔ{‹$rj³…fXåJ¸oa°žJݼ«_!’9Í÷§à²¸»"œXÊtÙ-½kÛ03Ý’Ý¿¿_6#é@¤2c„¿’úõ u¿˰ 5ù™âÎh¸Í5{RQ\yÿ‰t~/\‹¥Ë‘“kÓÑ´½±ßÊáËÄAÿà ÃQ¨Œ×6ª±`pù’d¹¯ÁSUÉÍŠª¶›/iªd²ÑT_«NLe[õÒ¬m hâUÀ}Tx›;±>³4~ÝlÖìd&Ùu‰q4hìºæ¶vÜž·rÓÞžɨׂ]¯H˜\‘á²ó#‚¢"§ô?£k©‰–ÿ›÷ñxzíg2¸ #z\6Ë—×¶Æg÷ YY²».Ç ÝJµÅËd%Iòl^v§y‘6ß§?ìÑeö “2µ1{—,ùvL…\†»ý*ÆhÖêèm„Çä§³öòâ²uê©d"•²62SIŒ†>Œ¾‡Ìø£Kò`—pôÚ2Kx‘¦“uÎå~UsR5%“Ó$Ÿ–¤þlbŠ;Òƒ¬}lxï1Nòöö»Û.#U\n·­YÌ¢mf6ÆkSÖ¡¸Ö«¬›[€ßšmRzÈè³Fc–qßV¾ÎQÊç1y=‡íp8K3jŒºåš¹KI´í™/C PÊç#˜ÇíØyð_c0ÆÞ¿Ž©e¤l¤pøCÇø¯#WÈÑÚ¬ãö‰|©ãß>A¨V±„­=›¾#Ôîxþ”aZÂå$Õ¦©mß7š†¯¹ŠÊ œ$„õOé¯^‡Ì ÎÏC5ã7‘ü‰±_}«o+·æ³[æ7~ÖtÖ×0öf°5í Ìúæºd2“ÈÂHõ¹ð¨©>RÌ%á«ñ-iŒ´õŽÔ©[Jî#)}éKŽ—%2aM0‹1YU(€†'QˆÛù­ïV/ÈÞ|ñ÷‰6›:ž×v\´ZÝ­×"ØL ›3§ÓÌE‚¹žÌLgC[REF±<êKÈ À€zO›ê›Ä•¶Kzì×óñÙ‚šlvTã(g%Ôt|†ýþƒ4¶Åëò7zí+²R††_NÍLu…¹,ðWœ|…Þ|á¦g2žrÕÑ–ÓõÍëþ_a§ö3~7Ø|M±êmûnv¦Ã³ãèêÛƒ¶¼b)´Ü’P²ô&K!•¹Žgžuu“òá«ÒÊlz£‡©õ^Kßß>F–)ÑQÔ5%’Éî]5M Xg|œ?¨ýghœÈÕÈiÛî'R©¦xãg×3–0&Oc—Èù»X=KC÷oic¿Žfþ´¼!¯ã-å²·¶Ê·ñ1î–v-r|qìÚÍÌ#ÚòYj^Šz•hºÌõ%£-Û¹†Þ2Œ,$Tcpx[ÅþMÉkûÖ«åÓ³a°º·ŒôG—LÉê;N )7‡vŸÀݹœÄd®ŠyyíiìXºNêfµTB(Cݾµ]kÚ·¬Gv}3rÞ'Ý#ÎlµumGg±_¹Å3ÚÄà+l.ôqpw¥šþf0Z·RÕ“vZW$«L·ñP½7OPn¯§Õhõ2÷cAUêüÜ7þ€J3‚*äg`NœàµÅ¸âiñŸ›ô_-l†I|®r âëævx±?o§_·–¥KO”÷Z,„²c¬V¿öéiˆI’U?=Dq¨}YxçaÌkÚ‰¯ä6}£!•`Á`$ŸFŒ[&OZ­c&Öì&H$×0òÖ¹^½¶¥ ¨ËéÍâ̆|3¹m~0×<‡‚Ï’6Z›âøß/µë)·Sš=n††?­U±ûßކôßS!–…ÞÔtÅp‰äú1Ôþ÷Ucå}å°ÖÔ7%Ã>#Y7leàÛ­nUÆt©5-ƒX©.^ÂÐÊ׆\ Î"†±F9,I'«ç©Ï&Œ´]=IuV´ª²mtåòxߊàr¤µ^¸ ü‹°—¤õ"lʶÏ~$ÿ+ýAx¿Â™7Æï9\”6æÄ]ÛîÔÇQ¯~lV±˜T»´eâšÕtZŠÜÅ!…lXž¼o5xK©oLŒ¿ÖŠ©¦áW›&~Þ³_e£ÉVÃJڞɱà|CG͸ü>l×&_Çy|Vc3@õ RÇh kÆŒ¯æjþMÛ ß-ï³øÏ7c [ÆÙ,¥l£ž‹=€Èdf»ŽÂÐ]ÆQS]ϽÓf<%ê‘\³i ³BÀ‹§¤LwÓŠr42#´æòø]ƒÈÛ'’‘1·ð—*ýÆÃà\ÓeüE †1ý“ƒQÖbÈj•çÿW-ÑBœ8¸ÌQÙ«?‰Ë[RùQÓÓ=,é#Ò¢•në:v§…ÉCOJr'×¶¢utõ2ŠäbÒå›{ç†F+ëMr0øõªiÙ;÷oÆÙ–ÅU.—tuò/o”§Ëää”V¿g¨kP·Z$–LWi$EåcêûÇ;SÍÚ—¶nšW„s[,xØc}SQÜ|Çã­}Âê2æ-\Žtt9è&XéɽŽ|Œª¹HQcL7ƒ¼‰Ì`5,Õ&Öÿƒ¯ã½R<4ÛŠÎÙ‘Æx“H½ãÌv·sH‹akðd®êwM\ì•j›”®V‹)N»3Ê‚FÒ~Žõ]*þ°Ø/!l5µŒf ÅT6 >ö›¨eNé{Äþ8Ö¼i­æ.lö¾ã1¯®Á©iZ´[n^hs2kôíb­ÔšKs æ§ÅV› Q¸HêŠE¨ÒÓwÔ#eƒe]ÊQŸ^þZ&.rú‹MªöB÷8piRxO&ùsEÑõ=k5_VÝ|{µït·,ö6|yšXŒ…JÔok1Ë$òd1Y߸k’Ü”AbMQÁ0PßÁý^é×rûþ¿™ÕwH¶MWÌ>Pñ¦[×ñ_׳Ûe`ðY­“n§R)ª­:)ç(Å‘„M×!‰jí%»ì¨ðñÇÓ…?çtm’-î[½oèù?øç±aµŒu-cKÈÉ‘ãgÊb¬IsaÈS¯Z¾>¾râUk”  =qsžZR})c©î9¯$hž^Þ´ß1¹ùn¥—ÆëZ¶Á·–°z®/Öq•r×+¦C–½¥ë›FíçŠþ'9h'Y«LÑ‹c/‰|­9­ÖÔù‘z#ÒF…íœfüf¸§§‘꘷ˆT†g«=V‚Úû|Y=;hÀïš®µºêX²š†Ý„§±ë™ªýV¶C ”ƒî«d :†Tš0ÑÙvõÁÈíÜr`¥ú³ðòзž²ûu\ô­‡;‡Ø.jÖcÄíôul¥mo3>©a,½œÕˆr7ªãã- az”ëöß”LUÅ㟇—¡ãvì=à´Åž.в7pé•¡™Å{²d윟ÝG’ÉÛÙ¨I$pbíÖŽììâ ›ÒBÆ­ô“ˆûZækÊÛ¦Á¦êøœÖ#Çì˜Mg6‰GaÚ1»fb¬9ªÖZÎÄÐÞÅV£þ«^›â*<ÒNI‡­Úœìôô¾LtþeJ:§¥©Di`ËEª”ãLï;á*O€ŠYgŽæ:qïM\Z(‚Whx™I)”ú¹ð® ö^ üí.:×qT¶¤×¦:®ÅŸñ>#/±íº¦·—Êæ±­seÊ`ñÂ~ñ0YÕ3IIªxÁ#ÇYÌNõGÍû”êâ4ñþ‰[%‰Ôë`°:Bd"ÊQ©ŽÊk—-ŠJ¨/Îñûµ”[™=èˆhï)ôe¤gªGƒÉùqOc3^RÜt-]r¾BßüïnZ†sm£±Ï`ev)ñx!î”uÝs) 0Y“ešÌRÎjÖI,Œ¾!ò ǡԔäÍ•$a.ž“®¼™Zº*HÕ‘&D#cÔ¬Š$íù™oùœQÄëâß4éþaþ°Úœ{I05¼½ÊNL-¹ñ[–,f0šqM-ƒ&;3DûÆâç©8±£ y?ê @ðݸ(ïK›…g¶ÉnýLH·Ça†`aÖÕÛ6.TˆÈ¹å±4þæÆ9Qro,ªYû~Õ$õ)°>‰PtÊ6ø w,Ôn¶«×¿Mýø.Á¸%‘ C=,8íG1UâY ·Zxšòv÷®!"¬¤ú2Šªò°d‚¤ÉØ+ÇëÖ$"7"í·dê+o›O¤œMxL.3/Õ°|N.;¯5æ¹#W-N±3ARi…e›Ý‰Ú ™ª'¹sè×if²»ûÀ®îêyðBô4d¿ŠÇˆgå§"lбñéõ;Ԩ¯d=ó ]8^í^p­m¿"Yˆú3BÁQaŒ»ÄñVb$ë3ã'¶E ÖœôüX¤‘´h²Fd ¤„~ëÚ Õà’_ûOR‘Êð³cSˆÂG+þÑy.¡@¿?FyQ\I$A˜$®TÏ4`Í…–ª²w`BÃÙ‰¥ŠcÙŒLâ?h)yzþbXÿ>$”Y"BV>EÖnè¦VŽ—5BöéÅ!·Žûã4²:’ñ…íÛeσnž ÆT“ lP|H©2´!!vxÔÁ7ÔŽAÒ?œçÛ zÂ"JD‰Õy;*#†²Ybv2[–2=©Ýãª#„‘ën–Þ8=ÉYT×á}å- «¯=$hÀ–ϸÔ¾Š=¥?“Cx!÷%2FˆÒ( ýÁø)ŽQǸÂ0@nMkø+17¡Õ]Ë©Gï†ÿ±Û¿‰*¿ñöÂþ®8:žªž÷¸e^Ýz¹ÛFàá n±wHÂh@òFTÎÊNÉ d«Å)Ò8£e0G 'ÙX•œI"§/ì{ŒZÀobǨP2³ô&™P’‹E»*’c%r«ÕÌ.¼‰B[¬=¹0é’?xIYžç  “Çvœ'^:Ø•f“‰)¤· Í¿f¯;¶U»8+z6»Ç‰ši[£k³ù®Û_+rJÈÇüÞ×uöŠž„FG',GÁLd…á®:ÉÀ,ʵÁU÷˜¢2»2Ä9cÖˆ1ö¢I$®Hf&YW#”Y’9V3Ê+–ãäq 8«ªi@“¿ÞýéÅb׆»öhO¿é³¹ßŒüp$ƒî·¹E•+±_ä>ú†‚ÝÖLµdXVˆ[D 1h–@XF¬!‹Þ²J'— pÍT•˜q 0jNÓÁƒ´,Ze\qî8RÊ$ O&4Vെ>Þ2Ç q1áý⸘ìVUÅy%ûÑHÍUJÂÑûá†äUŸrÍg (v3–Që>¶±£¥©©Dº«é ®þ~-Ò‡ÌÔ„/§ªDoë¿ë·üu¦ìÈ!skGì Ë!h£ê߈ŒÊ ¨ I0ûyéÈt–/i%ò/1`®*;§«$6PÅ·B=³ób/nµñ÷mã%ÅÈn¤õ£­©aۣ؈Ø{_¶†™X9unþZ‡¥jNª†k6ã¤Ç,`ÖY,@Jr{#•‰—žIeäâÑçõ'«§§=LÔ¾‰2Þ1“úqçZ¼¤!§9ÃU›§]AÍÒ-xÏŸ~!ÃUB "$žˆì9‘X _€©Ü¤Ï\íc‹®Ld©U×Q­â™„‡þ©ƒ™XYd[R:ÀIͶŒ OĔžG~aR«ØžÊ)-ÂÉîÂ;ÝÈì«h‚mÅÍ(˜ûzrjiì–༞ú*UŠ˜•¿ ?ò’2zÁ3·€†î9õ»YþV¥¦!;òÑeIûÛ7ÆM0ùšwYßÞßû§ õ2vUW,RFÔv,T»§â¬b¨­RRÍVû›FK`ŸBʱûA@ŽF_pBOWG<<­üÒ/~¦;»— ¿Œ@J<ÖnKõTbüôë-Å ˆ u{ É  t²0\|ªþ…™á¡J;H¯Çnžã2þ,ËÔãfùŽtbT‚R²´€zr}]„ô—wخןo¯ ÓÕhçÅ^Jóä^Õ¾Ü$Jada:¿>ÇÝHÃ,UäVi *0–p“b?v˜ÿ¨“‘Foz4Д•¸d/g.ÿ’7ÃÏ%ìÉÿT~9” X¸Bª²¼1õdŠ V7´ˆŒ0¿؈¸ÂxÕ}–4÷º¨Fˆÿgò¨WHî¯òT<‡ªJ»ñ¨|–&IéûŽà¤kmï /fó•p7yC|{‚ß×~ ·BhIüe‘Ëȯ+†_åìê?‘d@‹f@¥Œ P ›Ö®¯+/1ö*õPªÂ1Èö€å»M ˆ¡f+f"~ç–ø;²ûG§b[±uXú+ÆcüP¯b¢!bV!#i;¼V´©ë(’à"¨èä“îFŒ–t+×ÞHÙ¿&tS2Ê;F'ŸVPÕösmSg¿‘ß~܃³Œ˜ßÏö¼×UBAYB:rO*ìT4n£åÔv@~ Æ_bQëFê   UTUhÜšÆ5$ÇÀü554TåàN®ÁÊ{a˜æÝYX3ÿ|*Ëïæ5æè̶¢-#·­™-‘’§=z•i@øØþB…Cë^ôή¼éñ³ÞÚ¦ÇöÈN¨Ô]ënõãÙðbß·  Ž%y}ÂÒ4uÒOnq4¬ó3‚XDÖŠË:¯G7ª*T`=gì¦+;ÉZÚ–VpL2DÁ»’F Š7ÿ•}ºnxTÉòd?äÏÎíRHq“HdiÒw-[òåŠoâ- ¨žÒÇó,sSëVQ€…$R‡•”óу€:vù |óÉõÎæy÷—ÖtÍ.¦£i* a®USÇ_’Ž®‘&]6ä«jÖÿZïž)ëÕš1ùղ̈é(ûY:··í£± FG·ØÆ,ÆA–ó$9d‘ë?gs”e­7rY̯PK#”Œ…rV’2Ä}“(Q €õà7«‚±*HdxT‡2ˆ£ÌÑûdñÓ–r?-òÊO+Ǭ¬kÙBÃU €¢Ƽ˜ÇU^T+@P?#ž3KãÿÁvzð`¬PvÍw>üYü:-5.ñYÅ}¼Øï[ù¨+Fñã¶:bªVEéZI ¨B+¨ŠDüÄ’#±ÅØÜüÑO E[öûKÜä€+ÎKñÕÌ¢0òÈ “^Ûÿ4jMHx‰Èk‰í`ÞÐÃ(b¨ìx~Ÿ€ÉðGŸÑ$|ú @CýÇ1F€•`cù)ÈéñÓþ9Sóéߌ°s¢d±ëï‹Ëù¯'߀|64Ÿ2]WkÒn“ü2oæœGäzv8–$sÖ·°$`îéhà‹†ûhãaý>F•[–uÉRàPa£f8‹•@j»©Aœ,.…ŒÁ\P’ùHOIYW¸7`ƒ€=¨œëE@Yƒÿ!ý½¿2§û›ò<“ò#@£‚a‹ÜF÷c%ûØt,^CLJ, €€¯Æd·òstÔñX¦ºwóíø‘ølbgR«-G=®ß¶ùíŠ+ŠjkÙìzT¶ßÈŒýªH£ó‰úJJÆån½…P‹P ±€ñƒëCFÔALT¬ˆú¢Ê«^U”È­_•tfe­'Y©†<™ÿ¥¢á É5ã^¬‘'`ª­Ò(¸UCühA ‡Ÿm~8$õóës†Sí†SËw(£€Ê;~×–ìGÈ?ûãÔ>3!£G™ÔµÏŽ“ìø¿<)ðØ šˆTr´UäGzñô♚wµ;Rð¥Ã ò€ÒK!W`æ"ßËe&eŸŽõfSV¨Ö3èO¶¶yéãî#¬É^nªÔ~,#œ!b«0[޹>®;Aþ<åŽ>‡¤„ ^²•òIü=~yõïl0+ìÅÑK?‚òÒƒÜÇ·ÿŸ$+üöçŸAøÊF„[³ó ×ھݽ‡‹?‡BÅÔmµ¨ïU‹Uÿ>ÜSÁJÏëTº,Ælu‘á²ÒuíÒ鈨¢r8È/S<ÒŸ~í°µ’¥¾¼ †î¯î¥6÷ÿ\$…Z3ÅbÚÇ"´OüØx¸âPI?¹[º¬e¤`xf=‡,zp¬Ã’çž¼ZHª‘óp1ä¦4tùoí :K‚Á?ßùG¦×ùjiôµ¶kkÚž'ðÂãz’ßj팹ßëÚø§Çli(Z/ å‘‹u"5‡ÏEäJœ¹ +/QëÉFÓij[F-]K¤2¤’¹jƳ:?³*Hì¥`ÑUæjÌøu¹«Zß Èõ;ÛæŸØ*BñÛ¯ãØHñÀSWš$,âŒÁJGà€wíÇ#•,YHíÛÕgÇ$YòKjÏšã7ãË߾ðÀ/権˜ý6ÁÚìýïŠr•&ê«s tåE9¢Csí«oÜHÖoäŽ0IŽ~LßÄʾzWd,Ƶ§åßÜI*È«"¹1XQÄAâ ìÑŸr´ê²Pã³s}„äU@üV ã–˜’A'¸øn çà’x>ŒÁeËÑʨý*…UNB° œðÀ'åyáHñ¶/Q `·Ö¯onÛ{á\dŸ ‚‡ÌrÿÊ~¿›-ý;qLÆ2ʯu§qJÆÄ4•%-RAâ6Œ‚€üKn’?ý[†‰%Ú²UM e °vû{RHxTi„Ÿ‡iâb–Ku[¢ðcù»èk¸`=®¼b^I Oe'©oò Ï??¿^aW‚êОup‹Éëžî㕎@G xõYñé²¹r÷‹CRCìNÞîÙż<~Ƴã1ºÛþ¯|cŠJ”­˜ÈLmà€W 2ˆÞ2ƒí·AÊÆ¼- ( ¨UÃ8ìv4îvàcíÆ‚7ˆû´¬9â>f°:Y‰×RŸq2ÇkõÈ7eV'U1Äd¢{q•öÃpª !  ð@^@?<Ef…D½YGv? ³ ~¹nßÚy |óÏ¢|vRÿòÁÿóWf7ý;œ{Žx ]inAí¶CÛ?§Š\´¯,¼ËK ÌÒ°2 lf-Y„ ŒG‰d,Бí(Ÿ[œu´XÕjd½YkÚfxIijvˆ‚’­q'ZEÁ’h‹Ãp’‘q¤…•€¯ebŽàñÈàr?Ûô@þ߃ǭc,O¹Êò¤„ê¾àRÁGÁ' ^@Iø?_«þ:¯K¡—Ÿ\©´+oÓÇ ü.zäÕv0ÐìJü`yý6óžËÈ pÏ ì=¢W´eÚbd«+ƒ,Ÿöçè§Ö:üd—ÇY/dY”éṎ4<Üɽ}ÊŽÍ $¤¬}\E‰ú»€y#ôÝIãÈ•“òTŸ‚IøçŸF«¢ª'U#±fáx!¸á¾~ù\F_˜Q¡ëú¥‡8*Íóßݦ>¦˜ÖF»Ç¾+imŸ«=é—Ù_!IÅÝìлô§àÂYGf€F"’¼‡…z :wo¹,ePF‹É?¸ç,$~e5g÷;GÙfæEŒ1›© fe=¯@Uޤúº$J—A ¡‚|>@_‚@÷ò??ûŽJ½º£!aóÇRäsÉ'ñ ÁäŸÄ~¤þ9<§,xÌÔ2còöí|CápêêùÊUf"§þ¯7û{qL¿¦e˜N/#È–C{$ûê;ÀOdëîDœ½)×#¬ªíÏ:N¿ÒVLu§ŠhÑdhèO’¬²?âáâ.jKlHÒÊÞbý’±ÝTesÔ2r£û”õåGÉyÿ x?úçà„ÑË1r_‚ «ù%WŸØç‚Ü’}CãZ‰_"#‡óµšØGzL×{â? „sódŽÇI¿ÿ¬5ñÅDþ™“v*q¹6’ä÷©,Hú÷ï j«,cûnÆ{”þ‘>ŠKŽ»i$¡f4"%.Ô¤X•¬ð#«ÆV:èã½Ef Œ²ÆrK;qp¿´’Y‚üò¡Ã?Aý €I<’?\ú?ãÓ[s+þ“Ø92©J1³o~ú¡N€Ü,Ý{F@¨x9þ@Céü[QœbéÄêœbÈ—y$Yß>×Årø|#Kæ*FMWü§×»¾ÿ¿[$$2NcêžKÞ÷ÔHA’œ« ‘û’¥€}»¡»’Œ/¡1}øÑ”]:ú¨ƒâmØ‚,<–d‰„HØ–DUF%”úk]UþŸuÌl#Z–›°.SÚu2÷$¬YºÃeù˜û 30>œ@îeú:ð;3£ôîv.T†ÿ·»lê ~ §‚ä€}gøÝ3å¨JŒÕÆ(];íõ=Ž-øJtk÷YCìRã³÷;ŽÍqo\þ] 21€‡žxr9‰çäñÇ?îOëѰ`óÔ¸ÿä‡?¡ÀøqÇÏÇ¡ƒòÀ €§…äð ŽX¨°<þáõâ ?›ê¬øý~ö~OïàzâŸOïÇT]_½Ûþ}\¾xÜ€T2¯b9ã!ÿÑÿç‚à|ú÷­äh€sÔ8òÌÃã¨*Ï©çƒÏìüǯzœ!{UbIy¯³û¹ñË«°úþózD>–~žåSÐpE"y̆Éå•–i"ƒ"$èÿ2'ªéä|×0^nÊhÆÃäÛúnÝ>3ÍØ½ƒe%>=Õ4=g5ãâœBâ=fM¯p¡§Éˆ×î¬ØûuvŒÕ¼QȦÇí}×÷›ÿ´Ÿþ ?ON»1’%_#ùÌrˆ"0$21 fÃ?xÌPôB¡ØJÖ>xáÑ€pî¼+«r°¬Jâ yy*÷÷g`—S¢GÃzo‡rï3ðÝ8³Óc©­"Pî|Ù RËê0ì‰ãÎjº<ôÆÔ>W/‰ìV–•Jü—-û>Dã‰úöËæÍÒ§ulîGË[¶ ØùCT­ä-kòfK½YÛü™‹ò?´l ãéPÇãµý3Y‚†¹©æí{ñ¾ñ±ý^"xö)!ÝüaôÙÚ™ôß,åózÞog?áyò~òìù(v-]ÙgŠÕï¨ ~N¾›eöj6Í;ÕÍÛ vf©KYj”&†Cö–õÙa/âN;GÏf,Çè„d¯$€–•CX[\ªGöüH—»Í®¸ …­ƒ’‹{³àÈu–Óü‘ájþBñŸ™#ÃíÛ%ÖÕð¯Ó⭺ͩÕn¦­’ÂT…îQ¼æXë(^“y«R‹vú?Ü Ìøê¬{iúiÙÎM½B £+¥í—üIikëxK7#šÄùœ.LVÄãæI¬ÌÔ¡[sË`+‹5ŽFYl»ÌZ?pK^3  ™B–]UuN«(7Ð,Îÿ±èìŠ'à£!`²9Ë2¬‹ç – M2†žÔ,d©yaŽº´éü<Òu êuGSOåÛ ¬µ’—wUE›wR|ß[¥2 e¥.»¶œ‰ôÇÊç®9'¾î>CÐ|å‚ÅèRyg@ҵܿ‰1v5-S?–×üa•Ö6|&2]ë?GÆ*ZÎÆñÉvÓ]Þ·c’ËÐÍS\n.:ÐÔ¯ÖÃ}*í^[Ìn¾J§å³ÊÙMEH¼7[y¡öýŃdÎÁˆÞs‹•Èy&Õˆß=ì™ûúØZ9,€¶«Ç!è¤8f?È¥Yd^„HÉ$ ¼f4DµÝ½šÄ-ÂT··<²©gíqÌs*)n;+ôæIk·T[QDÞîF&¬9±ž–©©ø‰Î=lþXPÙÓ[·Et⯲烩͚šqƒ£cæ[Ôtô½K½Ê‘né«¶øåþ¿uýkqñŸ”¼›òwÔÿ¨·g(µvƒ5½œ÷”-g4=þ‡•ž6¬kú|Ô®X¼ÖVlYËì´|ƒ²j–pym6Û/‹õÌ;ë5¬fµf‹5úúXâÄoö½\Ô’xìiTÄ̳eV Ç(Œ°H©)=ZD’5nÿm%eXÇ{HAð(KpäXϳT3©jº Gf18÷iFaRÓwŠyBr’øl¤H9‰E#Ñ0#é%k.™ ÝÇa_w‡9؉/•Ö2e8Ée–±17ÿVÜr;oʆé'•6Ï1Cäª>búi½„ñFœ~»©SÆO—Ú7¼†­YN |½ ÜŸ{f½'õÚ·‰¥jÈ&/£¼~ÅKÉ;.ktÎùRlæÁãíVÚb6œömô¸£Àù;ÊɬáuÙäþ‡ÈTÄÉ…’´•âŠÏô»ï]û=‡sÐ(ÁKÓ—u¸/—·=¹VSh¨öѤ>ë9Uçæ…HoZK}OvEtì…Z ¢V ° ÇÚ¯bŒÕ8bÁ[îÂm\·Â~V¼5ÞfZ’=MÅI Hƒêõ=5rn«â­^}ÕÑùQÒŒ"‘7=5!hB®ÚÆã~ܹðÌÚ.§¹çèíûÚþsþgy A„¥ôù‡“bsy,•Œ6Sæqˆ“c«b²Ë÷ø+ðdcZó¬4­³Ä1½?"ýXYñ½dÚöO6cïYÙü‰FÈå|y}~•ì͹¶«å‹›6¢G]ó§’r˜Ì?9ì˜ä¼,ë•©ˆjì9Ó7cW‡…§ðÆBä2:0âU’"±1‰›æâ*«Øn&¬½~í¨jñܰ‹ü­ÖHëËÛÝRd¨óˆ‚{ˆ¤Âøïbvÿ®‡«#ðyæ1æåëÌc/Ë0«õ6Ä •»ƒ<1ñOT´ E4ó4S£%T n½Ô/n9Ê}^î:ص°ùKê W±ñâæ´ëzÆÃ˜Ä­ŸÌöµÌWy!VM·b“ÆòV±zÎY9ÎàÚòu…÷%[Û|·§y31â"}CýUk8Àgþ«êh{^qÚò^OÚhë>!ú[òOg¬íœÜj`|‡¿oؼ4—d–­ô›ýt¶¥×iä7YcI,´„˜½¶eˆÑ±3"ûB½ÈÕ:úkÜÔµ¼ŽÇ®nWð•-íZŽ79„Áæ§pØžÆm‚ž>OyiôËMÂÍ-™–Á±‘cà‘%ì­Wð‰±ssê¸Ú³IC%#¨vé LÒùááÏEs¡Ž™B8•þZ~öÓ¸äL3}KböO"ì¦$Ï\þÉôŸ½Ý×g»’ÍhVr²x jm­WoÜÂÃW\Ù#L#¥%†*(‹‡DöòíÅf|å°gôGCóÔæcÇfSÀÒù‡|Ëç¶%ß4¿ í–vؼ£¥é;v@ŒÎ½¦>¦#!oˆxñZ–Wí§Æ4s€=uу? Å"ôY#wˆª 9‰BðÅ ì{Á]äi ³óc¬dXŠ`ÐõUfF‘ÙÄd¤n…ŠË!+èf°îæÉµD€µy z1øK ÿÔêƒ]XIPZ‰+:…ês°c°yâcü˜úD(º[)±¬dÝËÇ>2xŸ5îßD{Þ£o'½mK¡_qÕáËl·ìXò.áªj›YŒO‘Ø,•µ°äv]a±ÊÊÂåáóÛÜ·¤&oz¼Ø-³júDñ>o¸b¼WÃgü©‚×%ñåÍ;T¿²ëÑM¢CLSŠåÍ®>Ir8ÈÞÆ£[6R­‡»"èÒÄþüv+<Ð<âžLs{’ð9c^SP¸ ÷h>j0PÞVãбOj@¸žÛ·~"€f˜”Œuå[Ûv `iCKqŒµìq †kü:Z”C_¦´ã¦ÉÎ=¥„–ãù² àõ\Us¡GúÙô’¨$åWÇ¥pw¾9oãʾyòm]gNØ|ÁçÜv•,þqZÙì’v‰ömÇXÀa(Ûѱ›/•2K雊\«Û‰²%­“Úñ 6ÄŽg¡KÇ»®Ù㯠àìç|ó67XÇý-^¬gÚvJÙ(¶z5~¨±ElÕÛ,ö²)¯d¨k•±ÿÔ|n+ ¹JUá®Çµ"Y”ÈèÂ>êªkª(b¤™½Æ5'ø­ ö±ÒÿÓ•pÿ"Á ñ£G÷ }ÈÝÚ1²–Œ<`‚ð™ ¨*‰ªÚ/~Y=™zÎü$"O˜ž¤úX²b×KÑA£Óf_Ì—‹âèüA»4a”Zަï47"TíùLr—Ã{§˜ìjù;rúˆÖ7=i4ìw‰¼w¤S-¦yDµAìmYÝÿ^³ú_cØ_*2§Íì¶¿j@ƒíz„ëæ¼Å¾ëþLÁì¾Aú—Kƒô§åü4ùgÈÙüæ;p¯õ+{åüÙ‹SjxÌvŸ&™µì~;Ö«ÓÓµþÂÐ7éZµ?rß,`ýÌnŠŒ¥Ïsü¦9cB±,­Âß`ÌJõ’¤rxÖfTÜ¡žP£ 3£ïòö½åMG+¸íWµÌ6*­2ž>±ƒÓì,8?\È#Ã"f5 ’ÆÇfĶ2Êd.þ®¦ôÕâÝ eÒ7-~¦ÕwAñìž1ÁMwmÎdkÙÒ«=·ü—àÇü¡†Fˆ„có~Ó?úû*Ý’:¤-‡6P€á`.@Çå.±ô®õçÀ †?1[íýU»œn}ÇWtB¬¨ –NÇUb½:¿5Ô:ï%E=Z6‡!ýèIÝ$Ÿå¡Häi'þNY‡"C"Ï8B‹@ÿÖÄW¢©Vô]™+n¡\2N!÷Y’nFZjï/w­2H“[‘['Jë%â{™Š@ˆÎLDòYº~ ìDztwˆˆŽ,Aÿ¥vf<Å—½5ô¢Å½¼ïô²ÁH4Ðï{V·»¬v»8p¯&A#ÊÄþpŽî‘¥m¥ŠRº°1{Q/i‚ŸNŸ\©Gf–yå‚´­¨Rå#>ë£B²´œ»! ³H{ øJ@WÓ Ý~¥Y»'XtˆpT˜â‰Ud޼²U[ê,ò2Ó‘ÛÐf)¥Þ@ï#È !$iTƒfF*Ušg`©GøÁUz@Äœúš?7KSEPÔOQ{5{ôÅû6B.p˜ 8Û?³¿ú÷±sRÈÛ·—l&ì÷c±“v)%¨Êê¦̤ÎâAÒ¼ÍËÒ c…ãä‚Ûòíüeœn¹,ŒVÌ­,èfP†©hÍÔaÝÃIP¥‡I@•ׂI†BÌ»:–üÌ. Hú¢ÅÐÑF¼}·`eŒ¦JI?”âĬÆ&yÀ-Ü4q©ŸÅ˜;ÿ¶U9[›¢d!ÿã5/Ϭš_–ž¦”å­=CGòäÜ:koq£ô8Õ©Íž¤M(Ãæ~igr•N¬·Ý¬>ÔìåÑÖFnòr@ê‘ôííÈdëÏyœ¶çN}žIW¯f%Ù©¤ °Óí+#¥„>ÛŽ6v…ø Wòw È–ˆæ&ø²à¹>šÏÖ?ŽQ”EŠTƒƒîž}´Uvp%TññpPËöI}˜ý/êoÎâKI*¹§Ûº{¥eD‰§¬1»ÿÚ·#<³9j̆ÖÞ`þV ]°‘·Mã±U^ßùã6|Í<_ªóì÷·÷<ï‰c®ÿ- -« ±Ä…wèÄŽ¡¡2{’¨V»QE8‚HŒ}e«ØoaÑabW—WG^Y}µR¤/±Éÿ§vìh€ŽHu$÷b–Y’g134Á9Xäv0ÊUÃ:8‡Þì Aöðöƒ‰Š‘$’¨Œ–BA1DëÙ¹fý ªÑ‚쟶¨Yàîß©0dÄ$c´|ôäíõ_ûð­[ž›]²™+Ú¾—ÀuÌ-‰dà¤LËÑdF(³Ã4qóU‘ý©eˆ­¤yÿoÙN³'”H;0íÃ4žáR!<ÌŒ£¥¢Tˆ÷®=ÏŸA{°±ëM*„¬r+º¯åt~IYÆáä[¨fÂÖF±uÏh¹Y_–T  !ù00®ÆBªŸº1<€£ò—Jþ½0"ËÔDÃÛnø ê²øx-¢ŸRêö<—Ÿ{ãq G°§nŠÁc÷¹SÀ1©™+©1E˜î§&X]ƒvæ(˳,¬|˜,|pýIÒžlD>Ñ’u¥éÁ0 ®½ÙÛ¤až0 tË2q­4”Â5fî <_гÉî:ê@ˆ¡$±„³Çsø2댗‹mñÈôæö´¸/9<øv»­ëTÎ}*vÑšð{8ÑB/EŒ@Š8Œ|û|ÓC’¡-ö‘?À3E`»=fu-‡X∕…€v…=·p¬b(Õã’B™[Ýñâ<Ž…)ª=Æc'¹Ï+rE/X¦ŒË*zÛûv£ÄγÃÚFÏ_qÒ&™HÝy@î¯ ‰Ê)O´äÖIl€¤6HÅ×zöúl8/n[Œ±Øm½±nþÛŠS‰ Å“ 3¶]f= äq¢ÕBRhT´ðqÊN’)œgÚ¤á™>gblÍæT<éþ<È÷aÏ϶PQY¾Wñø qÏ,~Krxùƒîýû(RÜì9çà9äð9ýòm‚¯ÃׯÈîÝH!A$I*Cì¿ÛÇ­x#ƒîð>…$ r)<)?Ø.žàpZ@I$¹oÈüޤ)'€§÷Ïÿèóè^$cþ¥¬–vúbû™ì<=2¬`+µÂùïXÎ{ðª‰Ê 2õåTp$óò¤üÿ“Èíè­ò ÜËçŸýïqÇÏ ƒè#5ˆÏ¶dñ1ÀàäþÁ€¤r¬¼ ꎮ> ƒ/Ü8îH*“Ñʕ‚ Q‹fL&oé÷JkïÃ,XÝ4×ÕϵwíÀIeD^üò…€,€…%O<ð÷ÿÎôdäŽ~Ü ð>=6P–< ŽY”ö üüóò ò<ÄÿŽyõ«Ú@C8縀ý|úð?¡ê»“±â½UÚÎÝ‹½³x½æ­Ü¿µÿ~3Ó‰ƒˆÊ¯·Â‘ýÊy$Ž?CçàðÏÇ¢–ÈIòC¤ž£ûIù#°$|~Àãž}6‘›…ìOãÂöxçŽÀ$r¼~8åO f’9dä‚ ¼·'ä:ðy<ñûýß›MªvØÏ}ûy¯­Ö8òUíúVkŸ=±Á3ÇÃgãŸÄ°b>~¾yü¿Àp?\qóª ä(OÈ–DP>ùŽ@%O üèË;t¨†í3QÈà§Sñúå ãÏǹëÔÔóñÙJÇ?Õú€#·Á€G»:ʦՖŒwóØÍûbFƬóxïßǾß^=Ðp2þÇ÷£äv?ä?>xø$z)a™”GÝã#ª€†^¼8ùäsÉãŸFÙ¿.yQÕ=G¨ã‚ËÉü¹#¯$ß<óërËò±‚YB ~O#ò~8Ž Ÿ×Àô is²ÆsU¶Û;× žK¥ÚöïÛ·÷ãnŽyb¼)êÅ ÿ‘þür>9ãÿÑëk‚1 Z>ÅG ù?äÀ?È¿|Âüþþ=¯)%ŒÑWõí7!@<y%ˆ?¾T/?\bUž^=Æ‹¸ëبãü«rÜüqз??,À®«baÏcb²àöÏ80c²‹Í{þõÛôà5CÊðÍÔ•øõXsÛä7>„ŽE@ˆ(ÌJü–<òG%¾:ŸñÈùç‘þà^ýìªí¿”ý~¸„c“¥>¾ù³ýöo‚ Y½Á7BÝGú‘YGg<žÊàñÀqÏnAôoØUupƒ¤€¬Áà•àžÀ’ŸÉ¿|F½Õ!»Ž>G莧†#à0ýŸÙãߌááHBGN~A?¯þPüvëþßÔj¯öÙ7êÞ2H€U-×uíæó›1žþÅ«§I˜eAêÅx ÇÇ鏸*~ï’IôZXŒ­ðA<„uRä)øáI(<²‚åÉçÒšNÁ‘¹ž<yý ãƒúž$üz&Ê+H¼ü°-ÉþïßXñÀàð«Á<’@õ"ô·!º¯íî^Õ’ñî𲋖ï»çßüÿj­ÙK*²ü©^ …^9ä·Ÿö#ŸŽ8ýúiî•Ìz¾Áï2lld •¤„»eQÛ–*:Ñ1Yù˜áðÊÿ`Ÿ €²pÜ8näò·‘úãçãÓoqˆ¶±+$àD3G4Ì¿õŠ„–Ò´J ÊKO¹^?niâ‘nÑškéÞß3O ·¬ÿO·jÅ4¦î0–ÞñÆÿ^ßn*…ØŒµ-w$•©hÆŒê,v07`Q¹ŠYUà“šíX™ 4¡}-}ßG^P8 ‡Ù ^D¼G¼lÀ2(T-$„•”4‰Ôþ¸ô•q­hôRV¤‰,¨¨ñ·¶¾Û†™aw<ÕüŒ«g…´é[–ô«ô,R}#x|£»,vú¤û¢i ×Þ65“ß*YE€ÍÄÑ£Q¾#8'¥ñšêå©þD6ÿ“cÅfñŠß5áIÓÌMÃÛÍŸ\›ä+‹†œ0P\¹N;yUàð@ýÀryà’8à2¨'‘Ñ@äÏ?å_ÿ ߬…øÂžÅØßûpÀþD·þ ð?dǯsðI…=€ä€{ölÑþ!©ø•étùykÿ NÆžã…¬æ‚íÑ[êÓéúå°©äJKn+E,Sc²Ç™ D›)-Ë,W‡;†‰ò¸a1éxÄô¤ÊL—[Ê?½†ØóµöŒt˜­OˆÙ¶\‚+<8œ{{5Š»azõj×1˜ËöÞ>å˜êÉ<^>­\¬}$Q÷œ„»œ×)íYŸ§|åŒ]}*‹Ý¯Óç†ðž-lE“<Ÿq{|£‚›/KÜ0׾jLuÑš/¸‘ǾÜ0ÿK¾aÁd±G‘|µOȹ:º¥É(Ç’Àâ-Ã“ÄøëC{0Íb³ÇÎ~ÞÀ”¢ÜËOuHK§G[Ÿ$šÐ‡WDçdvé‰Ò^KeAtÐøx¦Z\¤‚ZruéÇ¥Oê}Yñ¥·rî?©¿¶½kdÅiq•rõ±’ )^†ÜV/âaÌÔ³sGVæÄ4Ênâåí‰b}4vÿªà²xj3¯²Y¿¹øÏF±½RYëa­y7a×ðúþG'uÓí#©R¾~¾j½Ou­ý¼Wu’I‘±ô‡å ×UÀÛݼæ¦êÔ5êYœlž”iQëXoàüy‡×óš/&Ö½šÛ5ƒŒ—+×ÓŒÂÓÏ\ºÒëãÍZ8µŸ¤|æ«âûšüÌÃ^ÎÞóŠüÕÎ*÷zV–Å›;—¸ìlËÙZ™qùº+ VÁ-u_RæOya¹ªé{EMƒ5ÀÑÙîCІI«ÓÄßjõñö?¨ÔàÈÛ[qG0æCEnDa÷ë;-<Ú¾„cØóÚþÑŠò>žÃ¢ëºnW¯´øñóÚÄ—5Hö óÝÚñ4w<ùhrXÍ… ­N–S.2ÍD±W-‘{ÖŽÏxc‘ø~]²ÔyÚ9™·ôÔ¶¡¥«RÔ1õ,ëø–ÅÙ’ 8ûVbŠëMrµÑõÐb–國™òhÒÕøŒµ£m8iгЇçQeí]þµêC“4‰ijNSP vÎÙ:o+…W`K/Ô÷€¢Ç¾I¼ƒ[#žÄKt×´”«Ïªå¢çæi%Xúcpùe“÷œ¼ D©N«4F»=öoʼnÖþ¡Û¨#Œú˜ð.vÕ:øß%á.G{”ÈÇn#) jc­5ã%I8‡ZÏØ5b+c#"ŪÃÚ‰®¹O¡ˆ2úfÑ…_%Ö×w ††#!€ÛtVÖëøûÈxýŸ5°Çºj¸ÄÏÉbÄRc¶<Þ†+-”³ÊU¶2y¼å¼nVaú$ÂãvÌÔº¦Ëªà¼{±aqøûÚݯŒ†Ý†ÉQñ®gÆQØÕ7ɶ1×0¶ëlM)Hé™<ÉÏÏj ôäþûüï‹$èi¬©ì¹J­ ¾®û×{ác§È2¿›#=1>¨4ËÒ¯=½¸”uo¨mC<ØlnBÌxo#혊yÜGŽíL×r¥ÍS³gPÄç.Ó«SÊlÕ`ƒÚ즚Çj7I=Äcè†ãõ S]ð¯çjüWÍ›ñ¾£þžÈe’„8=‡sß«xÇ7Èåå ÙèÛ”yìe«îr±àçY‰áâ1Àý>ïy̓ÇMزX}+)¢VÑìftºMk[ýܧŒ*OJCäüV߯[Ñ7b«OGgÕs×1rYæ;øh#`¯+_O »ý/èþÙ¬C­Ø©¸k¾QÙj\£ÅZPùó5õ•Ñ2‘éVÔ°ÛØßGÌæ¨ÝµU/Ñ9¬E|¶=‘g¿K_Ⓦá->”Óþ\˜Æ6EÓ#%/,z„ ÃGJ”%§3#(º‘êZ¶M[H`¼·ªaö]r|FÁãH÷>öixåË[mZŽÇ¦½}²&@aÊI•¹‰:Ik©„¦l_FÑì4V,nóŽÂ$^@Ú7œ|Y_ⶪ)Wdúxñ×€¿ÒùlŒÍvrˆ¥ãÊùŒ„‚µ%Ú±Y‰ðXúx+Xª™¦YêücE”>\5c IÑüÎôV¸Î+¶.ÓÑðéÆ3%8u¨Âì…moMÕ7]ÓÄ£wê[ÅÕr”lþ:=%ˆÌÙ“'ryëf+æ1óÑDÂÓÁ˜Ü•‹‚ü2<õD $OñÈx1sêoÁµ ÃIc{§lÓ£¬ÒÕ´}‰r›]ýœÑìôÃX}»sYž­â‹[+ æÑàÖYþ6wÌê›Ä¾^ÀA·é9ìŽá¨PÄøó'ÿ/pÙ£ÄCJ• o3ä,¦qµ¸©'ÉaŸh?ujô‹¹ŠJðÓ/è>~ëCò>¿–ò[9¿+Ë©æ6<Î7Cе~Õ‰ú›Ø¾¦s9= >ÉfÍ|._5°Í«k;Y&³€£U-f2Y)ù¬Ë£­ñY%£µ–¢Rœ©)T˜«ÝZ|”e$Ôœ¢t‘ê\ áíÞíoÛ‰¯òVÙ‡Üõÿx÷C«»í™g;¹å_7 ‚Öpöâí«qÃjÍËù̈8|dpÂé’±ÃYx£j_Q¾8¯Z8¶›–4=¦†–ÚtÌìlsµ‹šøL&AâSV|žZD# Z»÷Èc\Ü^Ã>Cñ¦ÿŸÛ5ï xŸÈX/î}k+¥dßmÐfßu|þ§“”YjßÓimºvF†O–ï—ÅäÓ--\vM{ëÕHOQ&Kèôe4ý«?‘læ6LÞÕâ-ß´nº¯ú¢Ú|I¯[Â(Û¨VØ1W3ø=š{öì͆§™ÁÙÕ¡z"¦FË@-=šÚŸަ£3©2#(Ž“#Rêiê¶%´n iÖaÊDDT¢®¡;©*Ƙ…Ówa߇“þ°<[£h”·.Z ÜæaÁÉÅb"h£½O`Ïǃî³1Äõ©G ¶v\~A’ô~ÓË/9ôóñÔ§åìßuìR-xÛ^ñöϜˉ㻮ßÇy †×v­œNM>åqÐê6ÆfÈþñ¥­=ÖÈòÿFûvW@_bü±£`u|ìzöCÉ¿Ó|$°ZÍíæa²tïèõªïõkøórj–q—ëm—òÓ¸™„‘Ÿ™ŸK·ü5OÉU†æ›¦'È~$ñ·ïakëqj¹8²>/‡ÊPÓÏã3sl¹ .ÁGÉOR\Mº×ÂäðõĹ©+Ü’½jtõ¾)óºµ4¡ &8Ôh—JÄ¢J eòÓ¸ñl¡Éü°ÒŸ\Ù5%z“ª=E%`ºêY§þê'Â[>n†»…ßqóçïåµ¼=,]º–+ݹÛí¶?Vzp؉RuÍYá à6>Ìjeíï KP~¥g޽»Ð¶*¸Kx©„S­;5ö<¦S¬½e«fr˜l tŽd³–š§ÚYö”ÆŒè¿N~rÞü‹‘Üölœ~8¹ãj?O áüÞéâLmµ™ð¾Íofl~à`ü¡‘»µëð Ä^Ú+îÚ¼Û¹rœl+ZS"ìB»fªQ̺™‹[Æø°ÿPÍø–ÞC.›'‰÷|¶áïk©SÉ1šö±¶ßÌHûN*jÙl¾7' Njî*U¯QcÏ|JZC\m:YD‰ÒH¥•”i)$;SK–å#©ÒëST‚ɶ1núzkÎJ§ Å•¥õ/ᬅ|5Ú»ÅSCa¸”ñ;u¨Ú’Lªà«M%»$0C.]¿§ÒºF³AøoM¬ÿÕ¿„ðøl¦k²M²./!«ã'­‚¡xK*l>@«ãÿ¼¨ÓÆ©o‚ÙôWEfwÆÙ­í[,—é£ÄÛ§Ñ6DzëÚ^µŒò¶¿¡§ix}^Y3Þ0³°È2ºîÑ6ßWhÕ«Ñò½G {%jHñùünBñ“ ÏK!FèY‚¤œ•ohš¥'Öƒ7£ë;V¦ÁcDZXÆå2Ùï/x÷ËøÜ­Ív=®¶3!¢E»Š™­íXÜËå«ähÍzöÜæ>*³ 0OcÔX`dú‹Z{F¬‡$tÿ2N/`²7éVñuã·yªo¨¯Ô›j†Ç’0qI©S»“Í=©Íh×W!_vÝ”ôÈ,;uid%¨=[sÆ!D˜9G–2à$Òßešd£L™¤^·«?éÚfKk¯¸VÊËN“E®Ò­,û ÖpùLf!ZÕã°‹^ÆN´/c"‹Ybt… Ù^Þš{ÒÞßäŠ>J½ä(ë9­³Èþ<—HËeuïÐÕu|M¨¶z{-,¥ vm£/4˜–*}¥üN[9já{ ÙøU—þwk÷6L®Ê>7Ö6ÿ#êY};Ê60þ™4ÛzÎW;ŒØë&‹©ÉäßëÎÍ·Aë¶oaÚö³,V…Ût“ÚƒŠ%Ì|]Šš0 u6Å!Ô—Ÿ§ÜÅ‘Óä«QÇIXc½£Ô…9«º^Ü?ò_WXLbn41úfɻ캾›¥lö÷^üv38¼&?ZWe’\Òd²ÕEšÝVIë¼OÚ"G©“DòåýëvÛuY´ ·P©®`ôìÖ/=šjÉŽØŸbÄE‘Éã1ÓWwHr¹¿£ä-k‘دX˜6õx›é—3â]Ù¶Ú›ö?/Œ¹­fuüþöžñ\È%›Ø[¸{µ3ì’œZã$ÆÙþº$Çe®gÚÝcŒ|sÕ2Íh%Y’fGhcì‹ÊWñþTxcþÙ@÷V3ÓíŒv×µŽê4ò50Ÿ1>”iÒé‰g¦ž¡ºo¶õåâ­Ã’éщ+˾Ì}óž7^¼)uƒ*£/$8dPªˆ÷ÄOe†ÇóÍÌ,G¯ì°˜W‘™ÈW*§Rʪîyû¾„°[¤.8(å ¾Äj¬C¡P̧·ÂŽ-#ü(A›)dDNœ‡ÞGUT£â2˜€ñõ•X²Ð*8k£&Ë3-®:MÀËÌϧCWR™F"#›S#uçüqn„C[N© òy¼¿c¾éŸnÇÇÚZ}É“! ûi,3_‰£X•ÈhÏ%?‡~Î}׎fx¸Œ5·S €©Œ—ï“jý¸ûOdJ‚¼5#—ˆ êW»3~Ëõ‚+³Ú–Çg7š¿_v¬²SûÃ"ýºJðEðÌ>.² ?‰£z«$ÈêªþRi«auE’ªSQzÂ4¿ê>1±ô†6‘¼Šy1,¥#³ÃÇ'Tf—1©óô#ø™jšªQ,,•ɵT+o7ú®Ó¼‘ä:><£¯æñùœ³ïƒ5ŒÇ³)*xß'ÆlÓæðºŽç°í:¬ù|lØywÍ{]¥!{U±bx¬AݹyJñÍzï[6³ªÕÉÏ-¹,:«,1q,A›‘ê¨Mõâ©¶,N½ˆØ1{¹z5.ÔZ¹J5 1O³QÕ&’Ì߯Ö«dòUÈ­#Œ•úR¦;VÕ÷­ ÊêÁÏBQå} ãÅd¢Áß)™ª=¼´©nZÔ*£·ýE©’¦ÇEš&5å†Ä…ƒCøY²œ´d‘-š8Â=Vù>¢—\[›„HÄÔˆ«Ì[]³V»¦x´mä}”²‘z± 8u4ã&&—‰P²©â=kŽÝ­S’+>‹ÈÛCÊÍu/µh ¯ÏëoØ‚þòަ>bNeŠË'œüD•ñ—"ò¯“9ý_ýS«×ÅägÙð­O/“£cê W%»™¶lAr{¸Ì†6j•&•qkÍúf;Pñ~ñ•­”Æë¾RZö)Û¹ý>Ÿúnœ¸ëÙ{W¶i¦È xÚº8ë3å Ó ×îfP܉+††PØh6hÜñCož—7">­AZ.T´E -¼7A›,¾,Ñò&ÙÑÇÝÖ•—˜àŒ8i1(’rŒáAzj@&2Éc‰Bú|‘´9ojýXû20V¯SáxF FÍù¼„Ž’ŸiGV«P^ÈáìgèycH»‡©”\,÷êdÍeËI¥–¤®«÷¨²â2쬒 ì³×¹S5¿Ó,¬…Ã?–üS[6rßu:øš·ö|Uœ´™jÑTƒ/¥ã«å¶ü]©†4Êkx‹ur; qómˆmÄL‡©^Ÿ‡`#¡wOåkf·L…Ýù{6Ý|Ýþ}RËÍÕ‰Ôv6÷ÅÛ™ôyh ‚Kµ¾S«Ÿ´ŽòD7b 1‰¾;§×ü™ù.ÖãÈÛ:¡âì1°,K}¼l@”«~™â`ÁkkÝ¡z¬‘yßÂRµ’|§ªJ”±åçWÈþÖ:µjÖåºÖ-ÇFj´îS¹öÆ_º³JÅ[–Q%eúˆðM|6;7—tCÍdmâ1 sP×§s'AªT§$ì ô’‹ä1ã+v؆,}‹ôJ܉œšOË¡W²ÄðbÜ}±–ÍøGS›·Õ­¾1-Ÿ mŒçëíhßÈ»7Ì‹rWRÕb1,}0;’ëwzÄ_æNÒór¸b¤¯JÉÃ1C…u.Ë-Ìr¯[£!=Èú6áš»®ë›f5™ÇCf[تs‰f­Z¥£’½üJ – v䎶E¨½ª”%’ ÞD’pž¢KêƒÇ[T9V¾sÁù:ïŠóØÌíJP]ÖïEËdêl·Q2CkLËã0ׯÒÍãìÜL´UgŠº ¸ì•z…Òä#ÒÌÐ:—¦Œ˜Ó„»®ãŸUÁŒù´zeªôct›öCwÅÍÉ;S‘ìÀÑ‡çæ´]X,h8?n…ÏK,Ü4VU’ Ðü›È»9QÍÊèÄû ÑÌnÙ”Ž;ùŠX—l''‘×Ô'¤ùFò%[÷ô=³·TÅÝL~FL5ȯ>>íŒeÚLhžÓByP¬3vKØT±FîyŽ‹ÙP®ÕE 3påØþM(*¬xû‰“—Ix’´m[µíÈí ¹%G>Ð÷#â0ξÐéïË!½Ú`–±ƒ‰ã1ú+Ë!GH 1žÕŠ··ýøhóÅܵ5(® »{|øòbøÃä=зh¬û‘|û’- ¥Ì¥3¢º‘ý£˜aí7vß·.T»±ìÆE:¹ùuY™#FGt²‡ í¼Žyyx¤$Ø|¿aÎ@?ŒžÜM g¯r8•ñ) ^gBŽG>¥šõà•™^¬GÛ}ßn/Ç¡1à~rÿôOŽF¿3Ëèjji¼–”¾[ÒËÕSU–ë¾*Î:ZZ:Ú°Ž¤y™D‘ˆÐQŒ]«‚¶¼£í^zÜݙ䈨aËc#.½™ªÆ;<`„eoƒ ‡&ë¹³õ3ÌŽë2¨‡$ 'U“´lcìæy™$ØŒ²(=Y¿¶¦¿+ ypìQJžGG€H㺂Iõï·­Ê *ã†P±©á•JƒÏ_‚”ý‚ãÁõŸø-Tr:BVåwÎ*ëkÏ{^<¯0û™×qÛd®šÛ#ÅcMçrá%Yå 29u¤FEÇ´Vù1ºÐr —'BãvöÌ‹5ˆ˜—Çí~ìdOl“öêD2„ᦒÀ(½YaR£|!ö‚„E*Ny( ©ãžH ñÇÏ#Ñy¢ªÁv^H=Pò~» ò8VcòËð~=â<¼°r:LŠ]ýŸã|5çÁëþëS³wµtÐmã ßëÅx}ëtgt f6 Ãñ¡#ÜPËl¬²Gÿq¤VHÈUúÔn›ÁþE–v Œ9øÕ‹ò´=¢êñ1bÐÁÈøaaZ @e…"8øn?¡x$2|*·ÀãáO¬¤q2í'éÑTƽaˆR óù?ežàSñܲìtqŠÝØ8ãô>ƒrª¥¾Ú9;£D¡ “È ¯$e Äð )=XÈ>!¡ÿðZ^ÙÆµ •í½ãðšÒÿóZ‘Ëÿ7ŸvÓÅíûõvýØD –pzH¡Ÿ¬üÆÝŠÉÒ.=Êãñ”2ðÈäúÕ·-Ñ[‚ÖÇb⊳ôpX@ÜD»þXe!•ª1y˜,IIŠ”«~#±ü•@,¿?±É$|n“þ@O$° iêÃÈ‘°䯮[‚½#ñÏQÏŸCñÚ*‡'¡QF‹|íŒ}»q?­‹æµ l^ÏšºûgŠø»¦ñÃ-‡bÜ€1ÁS†NHRbÿµ' מÅÀYC|o&á»HšÑçóŽT7* =¾.äñœ"‡VçÕ€y[’ˆ‚@1¯CÀ+7öƒÉý}¬‘¸äÄ Èí$’࣒ëã‚>~=GŸÑ3ø- ÷Û·Ç‹ÚC”ÔÛñs¶ü]´Ý™¤?²=¸­k»nEØ-‹aJæFÆ V1¿`ýL$²‚ ÁÁbŽÒ$ˆT0Ü7gvT–üAšHùäp¬ŠðL3×üœJW­ˆ EEuîÖSí+8­QÏ…øå‚žTcûüö>µ)Y@^¨¬œºªª±ÿ 9?‰ëÇ‘ÈzÄ4éä´Œg¸˜l+lvðVÙ''¨–sSÎ{æ“{}²ïæ·â´É¶ožá -ÆêU}¯éñ*Lòð91QËÖrÁb<¬½ùçÖÑn¹R}û`ã7ôÀBeˆº„°¬ìžÝˆÀ2‹DÈ…"aÅ–jÐ1,‘EÊ€¤0°Aóû?È+Éxô*¨’@ée]Xt~ מ  ì€YOÇ<ÉêLü/$ÿÑhŽ-ß¶É[þÞÉÄy=`SšÔ¬vÈÐeZm;ø÷x¯m·ojz›û3ºs È©co`¨!’+Hö½¶'ŸDoìÛ}Ú³Ö·%Ù)Ï-…›B­ó²û•ÛªÌñÄÈ¿÷)ÙŒL[û:ÙV³wT©{ …ÿ‡ ô‰âؽíö6Iz’ o[È ðê¯NX8^û2úÓ?³yYN¶Ê~ET23M5¾ªb‡·ÂÚ Þ´ÝkG¬þƒÿ‡ƒô“ãÞì‹Æ{ÈèäG$lÇýw´RhŸƒù¡=y=¾;pÆo¯•j¬Ôjö”{‚Ùõñ\†sU0ûåÉ}Ÿü]ÂSÛ£ ì{uRx#ñ‰ãíþîìZ•Ž]‡ z¨uà°óûÿÞN¨•@øøcÉ=ˆ‚|ƒÈ$ŽxãëØ)&.å°9ãàçÿg‘ñóÁýz䟯+ZhËUgßl{þ¹³€<1b{$Ž@¹pH ƒëÞ…ð$r !¸bü€þ+þIÿ#ürO¯zŸçù¿ùúp¨­’Çë[Ÿ·~9U¹/µÿ'˜géÅ®zLáÐÕò_“@uG.¿Ûg‰$EUe ]•Í’VX’Ä‹]XÑD²JcéÖ@cØü«7-[€ƒ!aúp=CþAµ ñ ÛÑ¡A%¤&s0)JþRÞB‰\ÑNâ@´™AöÔzCÝ~£¼Y£î{Žv,­Ê{–½ ]òløôÂe¯GUÇ£XÈÉ’½)kß³V(Õe¡­=‡±X° Ý}zÿ„jCOá𖤺bëëDe—þ#.šß¹ÙWv.6ü­ IŽj?'L1{xÇ~,Of~Ÿ‘Q*¥@S‘˜§±J2ÊßÉKþÿÞ)¶$HÏY\œK{)hÇ@%vøu:ÿ³ùv­ÔÖë0$RLÿÖ®|_w]ð§ž¼ªù–þ³‰ñVï¢jTr:¾ë±ìÚÍ–®¹Èdr¸»pì±øì´VEÚ5ªÚ8«µªI#į$¯âϨïùC7œÔ)]¯õ‹a×s>5ÛìQÅîµlj”ñÙÅŸè«nv›lœOZìrIy`·÷L±GØm‡5ÊêM¬uQb1»¤T€\vʉÙã4´5ãÊpzRÇ -ªÞ[S·Q—…ŸÉ?0¹`;©QÝÞ@J×€öŠÄI9i~JU’ˆ‘•Tuw ¬…œr¦`ÀÆ®OhîòdYÈ¢a~B¡¿è@«”¿¢íúæåSr\>Rο–«’«Ž¿P³OVÜ”%˜ÕQýÇÜâÀv‹µfW-æä²™êt|¢dfÒðÖ3»\0lø‡:î½Jæ_7Å£J•m2×ÈÉaÖ­&hŸÜ#:!©¤1]m<­=q©1íkMmÓS(N"ºr°==2³ªªÿon$êŒÆ{þ<£³4]›ãò_áB€F~z b1ïÜ(å”úXöŠò슽¤‰HýÉxF%#C7R‰ðÑ ’ŒI^ËìÇùÃÃÃ_‡nÿ™ÚZÎBô˜ì^~ÆÙŠ«¹B±½ öç°®Àì¤Ö`$ž6ŽI‚+séI<Ñâ7Ö³»jy7F›YÕrÑ6M6\{bpÙ™,W«ý*ýˆì2Gvk6kÂ`NÖDò+ÒŠH;0Iëèõµ«¥K¿Ì‚W¦“4`ÇíÛƒ -^•tæSÞ)šº1ûŸ¯“™T2ôRGRŒ9JÉB¤ðÒE`"Fj¯oEYUPøwöÁæNÃò¼X(»3 uÕ//1HWÒ,›v¶5Ÿõœ›uÇœçú­òT¡œ3Eî ›^ýƒÒöÊÖrŠ N¤ÊÅ=Cù?©O«Ä–»Ÿ£ºÜóTûDzÕýc)C%‰£ŒÔ(Eg9˜ÉÙû¨Ù [©b"Æ×Žl–b[Í-zë  y(tõêÄêéé,Wª+q\UïúJsÛNRß²+j¬>ù<ñ=‰JÌ¥™•ß’–,{öéÁ3.‘Ì¢sïVe‰ø f™\ðƒ9XÙÒFþN$EUº¨…º/AÖÒ“eKz¯›—Õ'…´-ú?föÚpìÔ7 JÙã@•´»>BÃå3þw?zyR ¸˜éâ§ŽÝù†«MZ¤§n/™üG[§ç,y/E‡¾M :U©v\l56[X޼paìI:›2½¹c®±?/J´ì÷¢F‡3ËÉ”M]5Ž7tXôÿP˜p»7ÊÕ#ÓJÁésUi†¼ùáê½Rå‰~M"{œ0•cIË¢º¹ ¿ rQÓnyÞdu,Ãç¡öù÷ZGOmûJ#0’1"8a2cÄ}Š7¦vÝäMÇI6WxÜ5í;,²K½‡-O‡‰¸”VûÙ£i6?õUejÕD?—­%ò?[/­à'Þõ_뛼duzð¥c:Yòߎ ZùY°…«ÉO/4Vq·,¸[täãÉBå\:Æ6‡¾QÐ1™Ì¦¡sxÓªm8 íŸ/…µ±c¢Ëâp8¬zåò9‹”ÌÀGS†”eíK Xa×ÊÞ²‘¬ù%ó´®ßë…wÍ®öððc§©‘Ó›}ºd–&v®ÿ¡dŠî¾Ô«rC1‘#‹¼ŒŸ•!–Wüf®ª³i~Ä£ÒA"†‘c(ŸÌÈßÞyš9#¢i!-˜ŠK‘+H쀠ê~IÓü…_.tM»RÛ£ÁÛ\neõ¬ÅLУjeï{¤’´bqÙé<¿7”ÙùÓZÿš¢Pœä&¥/Òz1ÉYgxäµtK]XYFf]Ðm~m<ïµðñÓšQ¥,Õ„^ù©¼mŸ¿Tf1j6Œ£1†Dåã~‘Ä>ýÐp×*Éý²´¦®¿ÇS§…•SÀV”Hd,Œ$teErÜGÑL¨…c0öòV\ ÚWf‰sBÖ0yMn£ehÛ“?=ÕÊãž~+(Æì¹HžÜe‹˜²ý¶J!=9ƒ¯âå¹ô/6xªæ `Øky3ÇV°zŽFž3iËÖÛ1rbµëWÏÚY;id­_ês Æ%da=ËqÙ®½ëÃÈ]M]HjéY]C(çd»vª¤½ïÅÍ==B#(K.=-U×r‡j·¾/´—‘1}È‹v†EöØ2¡ìœ/Ǹ5äÉb™XFPäÍTÕHÕ˜¼k –9N…Y¤Vi¤Xµ+,Æ8)–¥'/ð"»Í¾4Ö(ò†o?§ë;~ ¯ZÛwí3ý=”»R®c:|w‘j9m@Oîdu{f½Rx‡ihFù’«U%eIjèņŸÍÓ52Etö§bë½]5¶La«R4æÂêúV¥éê±Íçëí—‹è¤:€§ˆ€^Tv'”_o¨þ ÀµOÈŸˆí‡…ˆô•&% „·_uŠÈ±È:‡9’6 æf’•‚ØúêH74ß é¾@9ÓvíWmþ‘v|^\às5r£}½ÊYJY…IGÝ2üÚ‡—§Ø©"-ñ?Ôw‰üÑ€|Þ­´â+dhc2Y|þ±šÉãém¶+“»ˆµ“Íâ¾ãܧR’YæµÒŒxé*ر,väE2Ú}Q%«æ‡¨éôþl´I2&þAà:s# YÓhI:DËš}øœ¤àCg•<È@#–»¢¨ëòBšCˆb~/H<¨Ð ð”0/ÂIÚIFVìvi@Ƴ‹‹IlÈxHˆ°õ5ølê͹*øðj­fí4ÙkÄ®­ããíz¢ä%µÒYëEü‚.ZŤ&3B-ÍVÈiøY|‡¢ÕÉoµ¢½¥S—gÆÃgg¨ÐÉ$° Ö:ÜŽxcšZÖ“ší V*Âf–#ÃK[F±­¦ß\v¸§Ô{ݬpMG¥tæ-ÅÅVéeù‘Ä™§’z’„ÍÉ®K’F­fÕ7°r’W¥$âDÇ1{I¸ý Õ.gËï…ÄÝ6ƒÈÝH"šŒ¸úµ¼z”&Èg-YK¯,X̛䣃^xF[$a²×jV†(É¢ZÚ! ‘c9„Œ’Ÿ¥bUÛAÞ½øsCVGOË”zcÔµžŸ"xÏw?n,l=ØþT»Õ_m´èˆ=a÷ÃÉ$hÜ´m+<¶æïZCöìÒ‚ª¼+—dY9VpŒE1 Bža”˜ñÚ”h«Áõ(xõ6Úú(Þu÷‹ b½}RM69ä‚%±dJNlC$UÂËv!xk5T~ŽÁ—Ÿú§ð6ÁoÉú]ÌU-Û]ñýëXŒÎ?-= ³fšZøš—ëS²Á!’h9f×XÞ RÈÒHT6¦¦‘GÍÓ «ê,‘Xsb^Mûç -Y"iÉJJ‹‘kþÿ¥¸ây¶ˆ·DjSµN‡ "îÌñXäü b½¥ŽÛnÁ8,Ñ39eNOWEI;ü{²K*1èò>îDU¸ LGŸP˜>¢ücጦ7ºå,‹=¬í»FXù¾g¥ãÿ«g§ª­,~醟T°BÿSRÔ "EçÒäqðåÍo;ºEäÝêzÞ@a¶,õ]›øÜ&US„Ædmµn ì¼½ZÒMupÝÝ>:úQô±g$)‡7EÑÛ”ß'VU?—"2j-]ûž÷‡¿ë\JsÊц–‘Y€`¡DÉ̪`Pûƒª!¢ÀÅ<]r1•xP‘ŒVYÑ›½‰X¼O ?%` Î@üf¼I|¤JŸ²¤únIµëUpöË›½_Pš…l±Ú-Z-vL]—…±—×/<©M±–ãž3Rß¿îOjQIºÃ ôÍO;x†¶©Gy›ÉþÓ˜Ô#8ç«  Œ—˜ãN%'Ó_eسŠÑA™ºlÕš4–öÄ’¢ÀÒF#­""¯ÙÆT´y‹Äxõ_0ßP¾$Ø7}?ƺî÷®ì;>ù¦e|ª¦õ\¶3/¬á²#»[!ZY {pY*¿Ó>&±M&»)W®È%ù¦±`t£Dï/yH.>~]Ûû:Ê+GòÈ)ƼüúM[–”ÍM(h¬ëP]Hî`¯÷®¦¦¹éœ¦Ft„츴Zzývx2«Úeàïîs'`Ÿ#Ýä©Þe¹ Ò¬Rãý¹=Òîmcÿ£TR8ÄŒÖÔ?ã$|žÑG'3Í#Œ{ŽxÀ³;HÜ¡k)•QÜ þ6Hʧù*Ycö‰ã—ùïYHö«u’î–µn«ŸÅ3:¤vºáX·S#“ÌUœü,ÉÚBcê"#ÕüÈü@ùjŸB»g`óœœ.–5 ]GûxÕßþKJÂi‡y÷íI3LáÌ’{“)g˜ö0؉̳+êT‹ccQìŽ"¿,è¹½ó¦ÇªlXýsbÓ¶ú;¾þc&w÷±qIU(å°ô¯b¦¿BHl1¯$7+Mˆq¾ã²°2ôíY­Û‰£½Ë+Ëó$KÖÓ+HTõB¨Î>[ñÆ|ÎÅŒŒP?:õ`vìßÇ©p ÍøÝoÉøR¾WN0œ%Rˆ½‘£"dF©ìÖ+`?.lã„}8¼mY¼n9¼ç½UõúvÊå5ÿQÛ<Ÿ—Ê7”×kÎo»&7_Àa/ÿe®é¹iÓ"­@ïâüSgU’\>¯2߃hÊ]Æf¶ÆÌ&VCÏyJm×þhnþZÀ缡…Óbñö’×ô x=;^ÁÙÈAslØ2:û™UËïÛ­8äÇçòq^­®âêJ‡SÁâ_Vj ãwŠ8Š$~âÈ#q˜wDV—ŸúqϹì\pEƒïbTį(òcP*õüÕ„ˆy´|ƒ°â²ü­ix[,ãÕqäôDcëvsŸRÿu°\;Ìjg©‹ÔÛé3tvɱuŸØâ—kŸJ™}wzÄmøÝëWÆYÔîùo+£O¯ø³_«²Yò¢Õ– ü‘žº·.ù¨}ŒÒui…ÍE4¹ åkw«Õ’×È~0۶쾿µk;ŽYÙ©è»3’åõØöœ.S¶ÂFg!‰¢“c¥Äí8û¯.K™K ˆ‘]p9¬F_SyEÌ:•^ fBE‰dfrÙW”WpÉÙº¶‡¶­!oJ fÙ­x£þõgyøúŽgïøHÀN •ÇŽ,€çÔ—% BQŒ*3¦`תÄRÿò{ðªË«¨XŽÂW¾þ øâ¹è¿MšçŒ¼C¿øcŸÊØÁoºþgTƒ-~ ’e±X¼§ˆ±¾!£+:F•®e)ãñ‹žš+&JŪm 4EZÐÃyŸ¡lFJνšÕü‰“Ô3xo êÞ(ÈÃGU5½ÂÆ©^—úþ× oµÌEOk¥-ξ%Ëä1y PcrxÙý‹QÞ¦’yLlÉìᘫ´¨ ¨<º¯ÌÜ;…!ï Kj‡¬,’ÆÒª$n¾ï¹*¼Šfìãƒ"•æ+ ‚î -~ÑW `éeÉhONž™Zc–ŒN«­ò«k•Øx'5­Jq2ˈ·e˜;>8¦˜Ÿ£6ôµìo”Ž6îÛ>Ï•©‰Ók`R¼-ŸÑ¶hðØXc¹=lJ-ÝRÍil؊啃'_/vÅí’L¾g$™Gèý¦Û¼;¶güˆ¹™üGÇ1šÄ8ŠÖtÜdy8Æ;y¯ïΙ͒S~¼73´£ÇElS[pP†iìK%åK6QXkŸÅOv*žÍU“þêf4¹{0‡K]]}ƒÝRìC‰ €G Åˤäöç£0#ŸúU0 iü;•)ùV’$ÜÔ±(L=¨£{ðÒçuåGV*[Cú%Š?íµؾ‹çÌìúözŸ“kÔ‹XÌ[Ø1euYrÙ<=ëy/+O’­‡µN®/Så‹T¶ •ñ¯nݽ{¥j(CbjØ~žilþ0ñ׉ìì6±xŸàmkØÌµhk]·–©‘Öszü–'¡fJ]#ÍÍ5HViÚøˆlªDBÂ)ŒtaÁDè:˜ˆüAh•9>ÜfB~Þ=±öã¶JȾ‡‰$*Ìœä/%V0H¯ê^½øÈ@"b­]L\ŸMø^1œa¥qÔ*bÛw¤ÆÅÆîâu56zŒeÒÓ’›ó{[‹EÎô_wú2¥±&Qñ;Í\}ü¾ UÁW9½]3#U—VñåUÛõLxÜæz¡FŒY½?_$” ÈŠÊcr˜ºñÒõš?F6a‹/€ŸËy<Ž“6ãämïBökg;‡–u,©·ä3Û3‚ÙŠ®½k\¡^V±ù»VFÁs/5ªAz}¸JîÞÛ4³$ü/.%ï7ºžRÄ#ˆ©–#îY/k™öUV>yé +ØÕT³0´¤Ùt*WIü;”e×òÖJJYk«±‡gj¿×†9½x=d‹P£)ß9}ÛÇ~(×>‹,y gÙö<”*™›™¨GkZ«{`Çâs´5ü]­f\Õ‰TÃz;zý,M,m¸ïd²k™±š¦i%wŽCéšÌ;=í·OòEo5±I»bv f×1iRß`ñl™š:Ú[¯öøí®¦GÄšý¼Én+t¡ÆÜÌP··`Ô’ bÏ#&B’ÀTDšÏà?¥¸†IJqÕÉö=Ÿmi•ýDêÀû~ç">á¿÷ȼ’9¬Ú¼ÅlÈD!¹:\‡-þ]\‰aq±•Èv¯®Jàß0Èz¬ŒX…GÆ”q,ÍЬ¼U_ ý/a¼5¾ Æ–r†R¦VÎiš] ºý<~F {fÎUÎÍ>埗î2[_˜ú8|øé0ô24¡±{jÆåö ÎTÙ¾µ õ‹ÇhرyL%ݺ¾fÖ%¨W‡pÕö‘™·¹¥5i¨ÌÚ–)[=¨l¯e°+dð0X8-—=C!lÔ«žIUqÝœÙ\öeP?µã,Ü?©Ÿ­š€Fì@…ÑT ìX³ª°tQÚFSÈycSÌ•—˜Þ£ù3 ­9._ ÒtÆ6û¥¤°–öoãÐæuººúÞ¤­l}ÓkªÁšÿã?ìú˒ܬù&®_;±KãœçöºN‡ÌøÛÅzKêZ¦ŸÆK©õü•ü‹¿;±ãìÇ—‡;-Ì^>lv˜¸wbj#4²,}0ç’Ÿù«ÕYKq÷쪮ä$µˆPãÑ5~[– 'WžÁSíóòK±AÚ9G唂[Bò$¬ÉHeA¨I@BžÍø+ƒÈ…Ïð íZ^d+őІœé• Ó#óL×f³\æêO®eæÓÚÂö²þ¾Ü-©v îIû÷—ˆ,¯*€;ÉodÏÓˆ§PWŽŽÜJÒ—HÖVešv•ä‘}´*‰íž€«r ÅL¯íONüåc-^PDjwžvæ%Š&&(dâyYPC*žwNݾ̡²p–úF@ 0™„ÁÕ’¤ˆd(„+«ñ$„v‰K¨ŽvPœÅ}®É#F1cwY, e¾qU¾ü%ß±VEí°ößý=ò¨%ì#ùv±ü%ZRK¡Tøjî¶–B’`’Uhaƒþ˜ƒ*ƒè=ã¯!ä¯e.a`i _Äͤág¤ªCœ€1Üf¨á v·1TQR#eíÓ£É,Ÿì=^CÂüY,ñëy]äD‘ŽîwYý瀽Ø(!Ï%ÚÊÝU¢™"nT†EöÁ[}‡}¯‡dtÔJR¤ï{^o§—‰äá²`¹CcÜ&$%^¸O>êt ½–.ê[®¼4ŽT‘Óçòe<ƒþ\1rû±=OÉ’ã\¾'Bô+µiKbúcw=™crÓ€ý—sA'òöR¯¹kDòsð Â2ô=m9Š":‰eüñýävê>}yŽCYæuähê$¥wI6/!šoÙn·ã»Êjiü1œ"…e,NŸ/¹¿a|ðµX–iZ ¤ÛÝPÎL>ÉÙÛçü<ÿ¸ãÑÏex_ŽÌB†Rò?àĆœ’ 1V 8* ‘ÈàzHMÃWåÈÊãÕxbx` ±Grß(à«vç‚8'õës·ëC„9Z@|~ä r8üŽP'`ÌOø`Ä<úçËKYÏÊÔª?¢^g®vñÆÂzt6-_õF·ßwéÿžL¬ üW ±û¬ÚÄüuøùã…ãžy<ú/7ç÷AN¤Á!Yx'ƒÁÿØŸò="¬õe*$ÌÑFFh÷?Ly üþO÷oߢ¶6ýeåe*œ‚¥yà°ù%@íÈ)ÔŸ†![©aɆ†³+ù:™(þ[[”þ_|>ÿW-M*™¦¶cª+bV/ËöáÆ8<€XõåW³ðTÿó/ÏøVìÿnôä§¢ñÑÏfCÏËÿ¸¾¯Àw-kÛÍ [–ä+?¶V^T†_Ÿ‘ûà=aöÝiL²õÿêʹ šÀ{Ý[¯é‚~@Kzxèk[üLntIÆ3µyÍa¾ÕÓÃX^ÔHÃe•Ú¶|¥mo%¹.¤3p .Y¸{! œrX~‰àðRm¿\‘"ËÒ'Ý—«Žü3ŠÜ…íødáIü>²«¥:;t=è½³ûâžÏÓŸ28Ýê”k.ʆæ×\< Øvü{ˆËx ùqÀàö~|uçÙÿlÞUH‰åH^OÊ¿$ýœññþÝ@à~À<ºîØ €…?O¾z³1øý§Ï#å‡þ$ðÜ|úÒm×]™B>J ¢Eu™JûÞÀàíÈ‘x(@àß(yô§-¯qMJ¾„½«sßÞþ8®›ù‘»;•ÙÃ}ïì4påì¨(/ÉþV >fê?ŒŸ×ƒ·ûF v(ì;qÁPÌåzp¤þ(?¸ñòyàϦ—ú³Z Qr´ýÀdŒ‚íÇx™“ñSĈ£–ðGöóûôzÏWëÁÊÕ*J~@·Á•KEÁëû+tärü9#€g¡¬òuÌ:rÿo§š»àGSMÉ©;³ø@úµmîWŽX²­dæGË´Œä·ËÛ¯Wù {#†ã‘ð}nQUà™Ñeê¿™ol‚J“À’£ÿ#ñÏïã’†7}IÁö³”Àuîœ^`¬Ä•ÿÄÿwGø>¶mßSCíY­Ü{ªÃò-Ú' !㯑œ_îU=¿·çÕf†¿ÿGWéÑ"½®¶úqgÍѳùÅNškjoƫȭ3“¡êݤ… pÿ!xy?·“³ö4ïÛŽZBUˆucÏíP R¤7½ ×UV,2ÔÕüóÀëýߤì8çž?l9 =“tÕžF3XòþÒ”2ô/íûŸF=I#‘óÀÿ<@åõÙQ£©¶}®ÕÚ®«ïÄ–¦›ù펢û5WwY®Þ9O²tç‚ z·’~X]HäqÈãIÖ!öRÑXØw­*–1Udøn݉<±ü‡W? À€}'G¸ê/Y¹b½É³2Lh¡y,@øQù7ûõ¥Ó[e•^‘æg*KÄJŽ:ð~9ãƒÇqÑX°#Õ‘ÓÖê‰òu(¸K&=¿×ë\Q-]4¯™ 1AFÇв8Îx¬6úbCî3ûÖ™z2É*ËJ{²²„û¤NxR¹ˆ!åãÖŸðìvŸé;GyO¸Í³ù3åä.ª«½fÂ…~ªd^>A(¿ûG"YrDñ3'VŠGÿ‰M/ÆA ¿A÷ÈʾÄ_Íù%U-ÂÊ­ÈC„UYÕOp¸›,DV&™ FIDÊèQÈäáF¼‘3ô¯X›Qs õí> Òò!QŸ®ÖùëÙ³/ؼù¿ŠÊG7QeÕòô5Ž˜›bÖ¼Ûô…¼»ã û¾géÇ)¬F2§†¾¢õ?)ì5íC-h¬êØ=7~ׯcpõiô‚,”–öœQHÊ}ž":¶ŒQ‡~EqÙþ‹³»'ú‘«ì:öÞËõ;¾ùrm¦†2A±Wñþå£.¬uß½â¼÷jNkXØí.;)EšhàŽpt9=Ò¥œ)‘:•XÊIߘÑT§åÝšqº©ËÅÚy8~­£RÑžÁ:‡ùÈd•Œ;'@]OUµÛŠó±å»rnÕä´5¥)jFW)•Ì}0‰ÒÐF€0}8¯O˜ÔÒ"ô•‘zŽ®ª—dêvÝ î¼R¯¤?§m¯Â/¸dvºø*w²úþ¡¥S«®l»~µúzvúJì—&ÎK"ãmå%fz´«Æí[ µñÓØ³f™á\‡Ñgñ~9×õíG1ãÜNÝCÆŸRNk*¸É«Ã°Íæ×¶kÛ¹ [–éS8¸"kŒò಩[#X"À#~ ÈŒ:§¡˜ô÷¹xÿÔpXì7CŽ~vêÀ»*MøƒFä¥wÙz¨upeþÞn±ýÒF}Ì—dzi¹eÃygKOK¦}&1—©Œ—«ÿÄòÖx;®JZ¾’RéêKÐôŒJ«6 ÒYåæVèÓÉ&Ü›?R©–—ÊÙ<&9óÛløL—‘´Ê:í)²·v¬S»Š¹PM–ÊÕ†´“ØwµŽ²u{mú-ݬÒÒ-k“j³ÙÑòž ÏÙÔhdr:e îþàÝ×Ä[|’æðå±–ڛ汰ܯr­¹ðK‚ÍW¶÷ÚEé DïbVa °LЖt@¡PJ­‚€ðïüf±²{Á¸TeF@¥ qÉʲwë^c/:»F–?îÒ™"",§+ôz„ò¨têTOMêZ 4µÚ¼'¶ü]üC^OSÑn_N-‚ð4^nÿzaOé§cÇý(ëþ§ÕqÂìÍßììA˜›ÇÙ,Å-é·ÆÒí-ûV3rk9 YðÂí»RÚi½Ë¶TÂÂgÇžÚèykåý³ãÝvå›Þ\É_Ó5:†\F¥s~ÿ•uðÕq9+1wžJé£fÛ)˜§ &­g'RQÅ ö½Û×STد׎Í,fBÔN­#LÆ9ÑÕ›¤‚)‘ƒJëÔ Ê§¹b2²ËdÒv—¦âËe"’hÚ4è²Eï8‚i Hâ’AÖ.$an!Äù<‰=9|ØõhÆV:lA”or«µ½¼CS›tå–Ö¯Tå"õ…Ò4]ã,º» »×ÓÆÃº}Bk>DšŽ6ò_ƒ¼‡ŸL…&ز‰âü6Ë…ÍkÙ*63'Jïõ,nJŒ#‘!±÷L®0+ÿ’þ‡7Ýš}ž¦Ö—s ¼d7: ŒÊåsØœ6„Ù¶]g6™|~+^š¢ç§«_‘‘°Ð5!o.Ø»‘ʵ`·^n½C¤miI0ÖÂ…FQÔ*‚ R‚I:È«Çç²´²)YDR¬C“GÙ¿<@,Ñ#^ ê£fË/ϰçâ´¡Uq(«Ôå~ªÊSÕÊlÙ‘;^ïåoz††·; I¨ôæ UF;KÒdßgy×çKx0ý4M¤h:Ÿ‘¬i¸/'⦧ähl¶±$Rêuq°É-XJ¸Ì´Ý=ü|öX24øæO¸ë(„±B[®fÐ~ç;¬æð•áñ}Ìþz¶gdÄÁ£d4/+o¾P»‰Ðµ(írø‰Nûþ’ÑŽZǽ‡¥©á¢Í Ñ«ÖØô]·îíÂØ‹¢9'D‘ãâ:Ì=ÈÚHÙÁûxßñ•>%§c™¥3Ðeô­òáoòÎ_iHèÍÖa?Vï3¨û—WÞ®aµEöív¯%ðý}O™-qSMêGÓQÓk²¢nâÓðº|Ç9 (‘Ò”zYEô¶Œú‡¶EØÜÁÇ%6¿¢½ê®‹¦â´LOŒ­îØ«ž[•ö¿»ÈiÙ UÍÿ~Êm42÷íbTÿªðm޽‹VÉ#½›1¼.Vº•=×éÊ{–'pñ·ÝøÎ=w'¹ùÇÊT|µ5„~JØs~_ñÛ¡Gã¬í¦Xq:ž#gÛmœ˜­1©õý;Zœ7(Û¹c«è½²#Âàï<}м¦%—²•á™TuP€»ˆ™8•ÙeHuôí•‘g]s.ÉÁgöáiPrÆ)Uy{!bq(r‹c!Xɪ¬Ìd¹?†Û7X"DÔKé5Tb»®(qć7ÎÐnÖenFü—“ò½ËÚ¤xWÂ6¼K¾äva³G‘ð‹›êƒÚ]ÿZµM›ÕñËüWÒ_’5È7}ßçtÿ$PÑ$o.올žCËÚ ½KÇ+£ÚÂaK ·©Me©jY±,6)ÓcJúÚ²Q¾ô ¶-ýfMÒM2|nÇŒµŒî ó[×é¢éµ·:{Uù¤ÌJÐP›cÆí²RÀaf†Ë`•²0Ù»fy hûÚ6Ó 0—S€ñ——ÛEp9tnÌÁãg㣩D†»~UšPG"Á¤ì̤ µ‘ùD÷#ë ŽT,¥^9ĪRhù)º\‘ã,ñz©ä~‘eªÊ­V¬P£m«‡9žråÓT:ojðл}sK|rú§Ò’K›^Øw K/£¼bªj–&ÂYh1¾Ѱ÷uýöÁÈ[Ø,âo}ÎÏ]§Z_yN½ŠðCÐrÜóƒ?äþcJó>.Ž†š¶ƒ†úp×ïé÷tÜÞ[MËeüfvìv_+»ãµl¦CMŽ8Ìé¡“¼mÔŒYŠtrËÕ×Ó6´˜0ÀÛxä"EP9™H- ‘!wr²Ø‰Q¬ò«í,D¿£0éûl Ó&)¤Eö ‘:IGŒ«F²ë^ÉJC$=åIò|‡J¤'AõÆRܺßÏÓ±Ä5ù¿˜2ÓX­N=##;÷®ÿ¯³ð—„·“þk✶XÕw}ª=Û3C‘ÆÜ‡[¥þ¢Þrû6¾’a¥s¡VÝ;礓:Ø‚Œª“­FT(¤M³!‰Ï5™ô]ceÚ~§<Ëç ™­wjipúÇ•¼}¸iÔµ|^AäL LL», -˜êda¥j­ Ë/MŸJÙ¤yÂdLŒ;4“Fy‘½ÐÝ™–w¬§”–.¦Ì6 Ë!HYˆñÔ6V‰9Ö²² å÷X<1Cí¤ý¤Qe{BÚÄ‹ $ ß#œ!ó5ºØiÇE‘8ÁB‘ßóe¯Uw ä¼Üe&o«Sæc'¥•zLmŽçíž9õô…ôå¶x73´g¶øpìdu}+D¯?ŸØ#ËTÔ&¿a¶+ggs†&¸¦2$–l#G$SÚ²²'ZãSèoÌYãü¶[ÅL.õ¯êÛÞ™xlžF½æíßKÚ0´¼š‘Z¯sý;¯ÔÔ-QÚqôm+esyزØÁ‹«@Ã7e‘±Ä)ÁeW³àUfpJ"@¡Š?ȆUovGIzÀÓ6²=ù5ÛÉÒ/z‰—î}‰£*ìŒmD¡fgPÿÔªwX#÷ ,Ë|6Z:Z&¨ÇE2’FJ›»6möàšÜá©-O—R™¸8éé=î‚Ô­©æ7‡>‘öMohÖöÍÿ¨=\vÑ™Íåté²÷÷êuÚ/M¡b2 Ø’Zö —ælÊ‹QF>£Ef–ÌFs c?áíä*,E+»!ƒÍßñU¼æ[úöz“xö‡‹ö¹“ŽÖ5ªÓ-M…rPâ¨G†ªÏNž2W¬^ŠòG KÚ&Ò6 ¢VÀÏÔöGDe/ÄiÙ%NO·È>*[Ù„ö†Ë;‘ëOÙSÿ±ì”ŠU8ëJbÂ5,x%•¾e3†Â,Ùô¯#ðΈEÔü©Ÿœ+}!n U–v®æ¹ÛR?š°iµŒc*fW¹Øvo•Ù£}ôéÛ''Ž­å-ëþ\¯Š«•¬òc­g6ÿ3éM×$ÉMY#uX±ZµÊ¹+ð µk!< YãD#Ó»9ôÍäzê^B×±^)ß7³äœvý‚òU[7t­k'ämÖ®ÅOdÓ*~_s_U×(cõêúý…î¡ÇÁjB t•4}°e×r‘ŽÌ;{/€Fe…daÁ”õŽ“|ÂÒ±ëë?轓²sƒ¸‘<“žSŠdVuùR!uöå”$Ü[•‚8SSáÊÎ:¥Õ‰«¤(¸Æ©¬³\ŸÎÓp“lT`¶Õeµ7þ™oíÇ-¶_£-©tmv¶έ”Üu¨-«ËyJøùíè0ïºÎÉãét<^:M–€žl.w^žÕ¬Æ´–«ÞÄ@Ѿjb †UŒ+ý ù_TÕ2º^¸|;³Gä,N…&c7·ÿ¨å›ÃKÉyï ep~7yîM‘¹«ä ÎËI'¹ Ì~~µ›ÓI6>ütâìÔšf}D²I¯eOàåDq»È¤C/¸ÃˆÙºž÷0Í=nÏŒG¶N¤l’Œ`® ‰'»àˆb^9e í¢ªÆ²uY¡a%™>í ‘ø?†õÍD)MXÞˬl]mgéétÙ=]EÂAoHm[5M×geãßOÿLû—ˆ¼ŸÝmO%ˆµ©y+“šijf*ÞØüŸ>ïžghæ[ësRË Aj7`­„ *oý6ìÚwŸò>X¿6§>Öýçýª½hè ³QÑò…Ýf|*µ×Ef»|NDf¦FI,c¤ñÔ^‚ÿ&‹Ÿ*]°YRª¥”¤NÌŒX$‘óÏy¢XI”õOrä|ÕËвiÙö’X›“0Ç#Æc-0ã’ ŒÝL‘0Ü!‚?r¤¥ì*“taÈF:p5"ÇGPÕ€Ìĺ@¾¯Ì;ã7·õóo[Ó+Ôzd(UÕlçq§|âù׳})ÝÙ欕-k8l瑼ÏKsÇîXúQ› ©Ëâí§@¾˜ü¤È-A¥k`‹+Œ'Š”rR e™¨òßÒß“6 ~¯—Êiž Ösž8Ãø“YÀ`ušù 0¾E¯ãí‡'s)²m×m“.!®QÊûºÆ$Gbþ3/NQ–¿n½¸Ä}TM+b‘“mýÀQ›ÛùÉ;qíõ_z>êÒ)Èau]#dŽ#qذY½6ÁÆ[­—Ìë29¯;ã7œ¦HþâLõÍCsVñ×ï½£o!®Õ’x^6€tŽ<ŸôçMþ–é}Š5X<§ºí™ÝƒÅ:ÞK-ŠÔôÔÈhXV¸¹|ZÁobÈ ÀIŸÙqTŽÍXËÈ Å-0ï×Ó7‹,x[ª»rGÑ(ŒõÕl{í$¡ž:]L°cfgŽw“ÜXÁht­Yÿø‘鄱5 ÓÆ®¹øXщRU[+g‰ZÎ=.§-É͹ëÔM8iÆ1Ô¢”ÉÈ®.« œÛ!­ÌÇm+›&vÅw«£}ÜÕ÷®9]¯}y$¶n–o-¢à#Ú5ßW½Ö«Þ›9ˆÍëÜü%ŸµVK3^¦òeðÛV½dÉ»¯ýOiE°Èž7ú Û±35í²¶ƒIñsøw –GdÚ±û.ÆÙìŽ~öbì›=‹qãkd,d¦ƒZÖR9dÖL2G•½~I‰õ×ô>ÌOi0×ý·fê>$,½¿“°ó2ôœDZ8Ûž‡¹)aèÇú+cd÷?¡ÝáÊ%÷C/"F’/sñxÙBKnöx÷åXÛ·5Ç“ø`Åù½L<Ꞧ-5‡Åwó<êÓ¦‘Ÿb›­ÚV.Š1»Ç<@Øîi¶÷Ø5í3ÌÚ¦Çzm‹ZÊxOä Í £ÁCšÂçó)ŽÉl›vÕ©a«ãò3Ç5÷L"®c>²¼…>«Uü†Éf,xÊ¿™®¶_% =)€¡o nÙ’Y~õöKsbîÝ‚&öŽ:Õjð1*¾²ådôKæFQ /Ú]d»ÜªÏœ†°u\$J^”—æ ,(òöã¢RIºCñ`b`YY# ÒûÜ2ò–•‡Í`Ô¢âX‡l´‰ÿj>¬€4žê*óË()>è!dŸõQ$ ¨Ç¥²G©5o¨íÚ·Óü±{¦ßÛ:ÛW®œVBÆDq|ð²#/náQ“†34IÀƒä·\[õ°<úå‡ÿ ? lZÿ±:õÜ·W·FöÙÈ_ÛwLFÏ™ñ:Ö§¡²ÃteÆb¶0ÉCj¼µæpE+.ò­—úƒóæÛâYw˺õm:î7ÅÞ+¯äËZöÅ^ô»•g–íj’xóG½YÕq»FJ)žµ$tórìy™kP³N¬nÖМu%SéÓ`-fä^×µ^sôâK”ÕÆâ3óUmf\ã·Ón-Ç=ËðPH½J?Eu!ΪVV O·eãovÜÊ—âë aëFIÚ! £qË’ÜŽG-#DÀuñi“¨ðÿ:ƒê¨ãüÝäx|å/8äðx|¥ŸùKêSVÀáòU/Mâ裡ÿ(øw?mšÌóM“Þ3Z_Ž-mq0ãb³j¶(¼gˆiÿ¾°|Øճ+—C])óуŸ,­·øŸnÞzŬWÙX¯F;Ö`}ÛêÊŸ”´Ïc+§ìÐož#ÅÇC¬bíÞ×¼i”ßþ¡¼E¨Ášò.òÍ™Îë¸|†sFäy\=l›ÿ¨¡ÂÖª–¦’ø—.iCV$ú&Ⱦš®†"å.”س³Ž Ék³”:aÔÚ{­!‚ö³4g>Ý:˜³'UüI*$åLdpÒtªÍð)žÔ#Ž5„å¢>ä¼2 ŽE@œžrx ,‰íÅ!ªX[ÄýG92_T>oŸKÊm5Ͳa°:ƒ-Ž«¹›Êd²¾BÎù\·Âå)d?14¼VÇ‹ÂËýMå­˜–¬´¥¨ÓÍj?V[ÃÕÅGtëù¼ýì67·lW霎IðÕ4 ö1›ÄøÕ󘬆b­Øün;i]]ƒjJ6'Ëctì¢Ã7¶‰òÂ1ŒÁЬ£Eˆw»öîx¨rz«Óp»%yÁX³e~Ûw㬪¨Ñ#±0–V DRÂ@;õ Àº:¨ŠÑí[˜\³yú/µÝù!Av(_ž*ƒò*̯¬enžÒ'> O§Ý«kÜð~@Én[ ŠÕ/5y+ ƒ—‡·ƒ½s°Ü©®ã®D­Ë'úz ˜+™ ´YµËT)d 9Ï,³ÓOr<,P "ÆÒ1÷I“Ôp‘»k3rÖ¬«T'Û*=lÑÕ5tá8‰EÙÜ6¿o­¦1\Q©§-9ËNIqK­®Šîì4×{|ð 1Ð<Ÿ¶‘šBd)ìžCxrß„‘ò_'IЀõ¯WbήážhÂDYûüàÿkJS“ ·ð¤á™Z^ mïÀU¤“±)Ô†1”PÕ"rʪ 7=‚â¬v¬ìݹõ–’g‘_ø£W÷Å"£DÒ(åÕ‡kÝþ7DæVŸÛ¸…ë3ÝMâúͰ|{†Þo„±³>;ˆ”®+}n5ûF±»ÄÉ$žÒvI9凶I.¥?lß 9)¿Ø´AÆ?‘Ìa¢p#d,à#¹^D(§“$ÿ?ÒçP#7 „Mn¾êO'G÷û³ÆÊR>9˜U˜¼oÒ²Õå $@jIJ³·±ù,m8~ÊÑ@)¥xøhê— ~°33¬±€ÒãÓMý-Ãõ+}Üã5]ÁÚ³e ¿o>|ý<œnd®Ê…Tp¡„‘²˜üì/ÈŒ8âHûÿ„Yà£uô¡W›XÄ“N’—ov$EsÔó0D&KÁA2ıËICFy{?&8ÿŒª2Ì‘_ŽQÈ‘Y8(ãÿšà«¡>·ŒGeÔ(~Ñth„o”J ûeVg0Öyº²Òi³MËT»ÃH¬“Òà¢ÚºüµŒïþ¹+‰œØv¤û^>߯šÎÊÐ…(DÎÀ&0²:7Ãß?ÌáAürSáä&aÉ”uN$+…XK9r8*Èå»H?ò‹¹ s‡¦ã¨_[GZ.Œðp±ªÆÁ¤æ4h‹ª÷•rTÉÇq8ëÕk2·¡(Áuiú:"áG 1 ü(¬@²ñ1\yöí!(î}Wp“½Ì»v7ö=±·/MDþ¥´÷1šïTùoÏc ,}™2 à†@¤îݘû‘sÉp£¶4‰ù|úÛ§ Õ¯CÀrìDZ,Q,}Oâ§ù.D¢Ä„´$zoåö g_µ‹¥°lx}~ÎfçÚaie®ÖÇÏ–ºÏÇÚãÔ± -»þ1V†K²Ê«§+®…dPOˆ‰G …©à„oÚ9ÙÝšµ°iƒÒPD¸6FQêŽàÜ£“U];ÙÙ8‰32°i‹šìØìÖvºÇ~ ºªê¼3üdê@<7~:É'þM`ž–#þ$Püs”P"da€ªFU É_d¿¥íj¬LÆ>¤‘kY’H¥*¼¼#½£ÉþExãûÖpà n’ˆÕϤ›Ñ J]IܰR¦ÎÞÿ¯ȉC$ 䀿û·¶Ù¾vUxÂ{J ‚B  ÁÏòÙÿcÖH§%Wˆ¾}kÑ#¿qˆoÈŽñ&Xù%FP¶¡B"® yÀv<Ïò×\,\‹ÝÛÙ$‰×óhÇRòˆ¡{ :MÀëÇ ª’}5öÝ/ ‚µúâÒÉ¢²'YVUžf1§¶Q^Iâ–½5<=… tŽã—ÄyyLÓ uI"zL-wÝ?G»|j—#«³HTQBVÑW¸ ®ÜŠ˜:ÉÔ…X€?%nÄÈbòËûGý||9?àȱ ·¸¥ ±BÞëÁcº)3#5Ó씇a4ë:>¯‘ÂârV?©›7*W¶ý¥hb÷0LPq'´AœÉ=¨},Iã½I™BŒ‡b ZË*ÿx=”ûD­Ãpƒ¢·,THO)/Šò½RÓMC¦U$ˆl—ßlV2›vCC^šè †óImµvߊôdê½e0Ç$A*\"Àþ"Á$‡þ•d&U”…œõøõ»Ž"²4­ÞB1ê„üóÜËÛóqø>ܽ ^¨íéû¦ëX­ƒ#𭑝:CAˆƒÛFŽÿtÐÈlæqdqÒbQ#°@–G'Ô™Œ5iCŽô®†$bm’¬Ie àÈœE)1€ñ(v^ÞŸ[â\¶Œº'LôÄq J¼~¾<&Ÿ'¯©R ~`VÒšðîc=¸¯…‰z0•½ÈÁot‚yEEì"‚EcüD=ææAèR¬ßœŸUw=ŠÇ)bî%^¯ç‰.u’«‘í§]ã[ÆëyZµ1ßp"š‚K"Nîë]š^‘1—…f¯Ùº{€ b³í@ÎÑHþðX…½šÅÓº'x-^Kƒî<^㬤ê©"ÿuØÏ ‹÷a’ D§­Ðæ4§¢s"=,ÏM4e‰Z1·›¼µº:‘Õù2cóØe7¹ØþÂp„’ v‚©îB™9v?ÿZ»þ ~‡‚[·ë¯öð:óÈSÁà ü‰ÿs°/<’O%BóÈöW·ÇÀ?¿ƒÏ#ÿ”%X/^øfäR~G'’ã䎼ò8ÿ<î$Ú;rà’ÁþáÏûðI¸­m‡üÿN:»·“Û÷ïýøÃuùbå‡âî­ñûçÀŸØc×½jAÀìÎ> ò¿¾xãü@%‰?¿ØõïSéíþŸ·. þ·—k¼vn·ìÛÇ%¼¸ñŸø–k±¹‘Ÿÿ€¦ÂУþɛ͓ äùä+¨ÝØ7XùD}M²ô‘bÏ2@…"p€H }™û“Œ­Ç/î¶Á‹P×—¢ÿ n¸T"úÏ+¼®XN™¬‚º f•¢<¼ä¢Ç 434# ͆EøUîÎÝ¡éÏI?F@Å“¿aùH;!¶¿•>Ä|úïÊù)e_WÿÌ.ͯot,ÁÇŸø¢<еÿ J—ÏIxß;Žÿ^çÚ%÷CÏ-ÏÂo–.ݾdö„Ý„ò1÷kÍÄu‚Â~2‘¹./Ä‹Ä%AÂΫÉV"?Éê1˜ê¹÷×ä^¥‰~{HªŸ€–7=ÿ/É_“’<,êÆ¢Ä=‰ˆ²= •ÿ™J¡ë‘ÿoŽÍÂbß(Ò±“ü‚_‰€®Á½t‰Q†ö°¶›½ã¶ºíÆ7Þ«õ³¦ÕžüÑ2\%ÈáGâ¯ýË)‘¿E×€œýH|IÁSÊeºÅìÖ'¹ NÀòõöøƒ|tu~°¶%™Q9BÇÒÑ`!^>d%±rúHÒ8‰rÄ©®Ãþ“º}%Zfû¸zÿŒ*\Ìì½µWèÓÆà€bånóLâHÈôÚrz±võWo‡Ë~vJà!Y¬åèîûc¿„ú V7™•ÿ‘ÛoÛW—à~QÕ£aÁ%¡ nl{ÆGOÀS/ÂIÑÕÈâ6÷H%A,ȳ^f"ŒœFÞ’éIËX2tb‹8šQÁø ­~àFप9•Á‰ú¢séP¤ŠC"ó(¨gÞˆÍøí8E*÷H~‘Tí~òBãÐÔ“Õ•s™w¿M[þùñÁ³`{ùzJú^7öóÅŽÐYÆ­ŒŒð›Ý@ ÊLà0Žkãâ¸äBy^HžÀr¥ŠŽà[àŽÿîyãçü9>šz •Õ1¥ÇûŒXë"´ŒREaÿv )¹-*ñ!à±ôñHø9Œr t$3ÉQÇÉÿ~~~>}xÎk§ñ:ÿ”~lóŒz±¶Õg8ô¼¬“CDSòFîìô—÷wãXר“” +û*A`HáI$|xàüü[7 ÏþE¾@ä· A<üñóþI?¼Q”mH.8€ñýÜC/ O ŸðOïÖÊä•Ð1#†ê9çàüñÇÇ=‰£••ï–è«ÎF÷ÎÞxÒ£nœx3^ßÛ³ã„Eèg—ñPË:ž8ˆøà×þÿ\ñϬ:|ÈAå”þ 9bä©à ê{qÏüöõ» ìä8ê€ß®:–vÿèûçãàc~LTsÔóЂ9ã•åT—É,£àþÈãָʈ6\¢c~Æ;vªþÜPÑonï—Ûÿw~ ´a׆=]G*áWð$~_ ;'‘Éã“ò=oºV¯Ã“Ïeeõ)اu_îè ÿž‘ÏZ°$(!˜žYø Hù’8žn9ýüBÖž4Š?z ‹FwU/W`>H#¬8© ù /r6UwkýÓâE$”†Ùo1õÛ½]{p2±x,2*ë(* ü*ü~'üÉøá¿^“ ‰*Ä…ÆH$uàÜÈ ¤†çŸJ_{WS «Ìd‰ †ì¿³þWãÇ<ƒûä¤*$‰dàsø°øãäòOÉ¿Ç_Èù3MKÍ šÃ”°ÏlWŸÛ2úIJÐÅ_zö¬öûx®=í° Gnx €õ<óóÇâxîÄóÉõž¼‚©aÃ’Wüpx?—'†ýÑã÷ëvs~ߦ•äü|3r·þÿ?©øõ«+H{ÔþÊ~½Å'à§‚ÄüòÇ-w•Æ÷[]v+|ZýÞÀôÒ¯{ºÇíݪwãZëÞÜA‘¿¶N;8#ƒÀü>@€Gû?äzXe¯â@[ƒóñþxÿoðO'õ鹊ÄR¯fTŽNÿ‡>Ùá@!¿jCyùøŸG¨'ÉZóò¿°c'Žxç©'¨$xà‚9ýúÍ«sb—’œä/¾oüñ|%:ºmp=ÎÙÿÛ‚×"Ê3Âü*òIR>xÿ€z°ùÿƒÏ£´•Ex{(ä(àð>Uˆñäþþøÿà…–û‰U’Œ˜HÿÄ|ŽÀy©<ðOÏ£5m$0ʼnٗ¨ìAuø ò¯ÏÏ‹ý‚ÇŽ@ãÑü¨8þøúyû8ñ 1úFë;…Ѿ<9íÁɾ"ç…e!Øü Ç$iãõÈãü}#)vPÎÉÓ¨*ŸžY‚ŽO1 qÇ Äö?ì·â·ì`À…€ùùn¿åOÇïä0êgÑD^ꪡ:Ù~@?ÜK9IH’8€ òhÜIuwJýí¿rümÄÔ”qH×gÿÂ…?|oXà9{OÇ(à±ëÁp9ÃuìÍú?¾=(R_ãìzä1*Œ |( |üý>~ÿʯÉfn§«~Wƒøöà€$ð þý­t, I±2þ@ùaÀGìñÀ y<Ááõm…EWÒ;Óìg÷Ç }Jc¦î“íÁ‹H=™IRÝÿhêÂuüÿ ÇÏ p>âyô™\ór4‘ 8n«ø¿‘,OÇãàüòG£rd!+/e{¨?10Pê ’9ä‚üŠð}}»Q0Rߊì«Üª9SÁìY~AüOÉçû~}U Ýßè¢Ns³úðÓtÓßlý¶ïôÏn`<¿<·~û7ÿTÏÇûzG¾»€à1…J–º’X€x~G O?ÿïGÅè Æo€Ä+€¡úð9ož8<‚@<•|–Q$†TF!UïÓå»ñÁäx¤qþßi%`×½òÿ§¼vá¤Å;[_^ÛøáR¨&¼'–bª£°?Oì• ò ÿëãþW¡$@ÐÊ9 !PóØö`÷“ñÇÏÀàŸE«^‡Û‹ÜBe¡^8+ÇŽ óÁý0ä çèI®«$а²–„…N½J“Øüö(x õ<ž9’Q—VÎøöº¯§ƒ†%«í‡aÁ³÷úžü¥ T7~D*ÁXŽÀ#Tqú?î?`…Œÿâ I×òä|pÜ𿟟ÐýëÒdV9A0qÈäñòxíøƒûàþÌÿSF Ëã†+ó°+Ç#Ž>ãöÜuçžOǦc5RÝßoï¿Ó€J1 ½óÿ—ý8)b0¶ Øʕ|rÀŸ9 Ô?ùÿ‘ô VRª9<ª¿”xHø_×'Iõé&ÙíS"È/"’AUNÇ‘ØñÉ#ª¨?‘ô"†^ߨþA+ÏqÁ'’½G Wä~ÈýÈ<úѦ„A«£ µ×gíúæïŠfÆKIÚ³^~˜à&N€J:ûƒ…†€xÿ±<ò9ÿný˜ÆFg*ÌÄÎÇ’~*RJ–x'ñ#ƒÈ'ƒÀÃC­Ï_î`IsðG O “Ü€8 'à‰ZD­î¬‘³£ÎZ3–í$€IøýÀêì9ôº­FªÞÍù{}/loí‡êVš7òX£7¿ëVp¦«Ÿ—P<¯Ë‘È(?ø7nO·üÿ»~H¡ÉÀ~æÐfì@ 3=žO ÇãÇ<ŸŸJz.z¬37UทŽKP£Û¨BGUnxR“`ÿ!g —¹^…™•XB¡sò8à0üò|W¤1êܲ±šÉóžÞÜMIVjE½KýhÛÅÞ8p‘Y?0 §öŽaû<üóþÇÿŸê#óR-§ã–áƒBHdx ƒ…yʈ}Ë+Ö8Ê”=¥»YuŠp;DPóð8óÁqÙˆüÀ'ò倸›|³¯\Êáp¹Iç›cr\'‘²›Ö^[»–™s OKÉअŽ&ý;ð“s%˵S)Ö²D*y™iê‘ü7¦å¸ÆH}Cb5AôâÈéÓ'ø‚"½1”½Cœ^Jct{V8ºy¿i›…šñ…í[AØñßÓ2ZÖô#ÊÑͬU)c!‚*Ìù\mKd"!Ê´r¥ž¨œú‚ñ}ŠÃ‰Õü{‘§¥f?§ÃB¾[zúÆzjÌýÊ_kˆÍÛª¦YïÖ'@ZžRåpƒÆ¾zÍx;ê;^±“§§y/ÉÚùO“¶ZÌǯë”Ð+ŸÀÝÏT¤§ ûV¸kr8ˆ.6]²¾g÷žÜKÓ·’êͽ۫㺕°iÚ[ñðò¾bžGVÛ2x_±Áîy|õjs&NÍ& ß^{¯ H…ä÷'‘«¬Ÿ0Œ:yL¡JÄ=$±žŸËµÝ8h ¢1I’æH„¯z$ÐË*-›ÛŽ„ÿ¤õ6ZMSMdÂÎ[lkx(× bohK&)ê{¸™g’ ð0¤!˜ÍV»Ùæ²Dˆmt¸ª«·h5kè"æËÕ³ÔÅ0Ò+R+=Ý‚ ÕØ&·­}¡A-ŒÆ=ªX¤ê&¤ëÀ"°y3Á¾DÞ4¿`omì[“ôû>ŸœÙÓ`Ìk£kóU}KUÆC¾¼8ÈTا™Ù0¹LßÝZnì—x«3¤ªk·‘~–¼ë¾x«Éú µñÇwÛü}æNCÈY!å-a÷Œ®å㨰z«c[Ž‘¯ˆ«ÛÑ36oH U0„º÷%‰&·1«Ó‡$ˬŠÉ"„ºE%D­êh¥Ûá´ôàôÊ\Ée->•(¶X\öÀ`¾žµí[”©©K.*–K1_/“©…öjT7"[‘[ÏÛ\z"W“ÞÈåMÜ ŒzÎA³vÚ{¶',^<^Dž¸Çâ U¬zsc¨IDFðöþÉfkK,K" {u¥–½Ù iú€ðî_ËWñY,?úJÐðדµÜ8ƒb¿BîyÙëkŸè¹+ߨ‹få<]¬mª²Þ°cíWUjrÇ0é]ñÞúœ½“ÙrY\Í^s#„ÏÛÇçªo p¿ë,>;{Æö/b^„£Åóák.è¯5h(Õ³j0YŠÜަ\ƶ–§KÉËR2èè:bÊ5Iµ¶ÙÚ?ß³¾g»ämš•Eµ‡žÍís¦ÛÁè%«N¼öñºg»B…=†ÅÈg;øspܼ‡©núö:Ždbµó‡Ù"³µ_Ö®åñäëä/`VL|VŽ<¶e·qŒHDi-ÕØ>ble7‘IÅ„:d ¥"%GLíÚ­ªâGN¡ÅŒQ›KÒP¶ ƒºgl_¾«ª`´†Ø.á½çŸu·3vÞI®Ø¿r®:–#°^qíVÇápÔ1ø,xØSÀã(WÄWSQ·¥¸ñZý·%\>»LæÝ™«âñ5Îb{"µfÕ”Ž(ÚéšíZÖl­“bÛÞ©ZüÒai¦Ëã¿!j?M™Œ ¬}«ÙŒ§Ôkìzö‘¯ìœœºÏ‹¶%lÝoÆk5bÈÝYÔæÆÐÈdšªR±I$‹yR2É}8}CY”­?¶­B=“tØôl*ù#&ÿè-s`ßt¬Ö@Êæ¥Æ¼› lnµ„ÚëÁ±SlZ¹œ‹­PöT~-<Œë¦2§]Fåb˜¶Ó~õcÁ/*óARQ´ˆ˜BÎ¥j«jã¥Tðšþ&L…ì^# ‰»™²¹,¾CŒ£›1’ [ùiñÐCs)l2¢ËnÜ“J²´¤ !á-SJò°®¥¨-\ÓL™è¡À`#©™žÌÉ4Ëš®i}®MîIÌñäRÀ2‡$'•#t«ŸNÚÖðÿóc'k7r}ggjñ„ï^È_–Æ__­“Íl·<¤Ù$‚9£¥¶çß\×2h’š¸eëZ–Iá K¯ý8y~MãUÈnyINSkÐæÝµûíç‹m©„ÂíÕ¶ÝZ8šP “X½–Æ¥7ÇGu³ÝïU¿»ÚÖ|q”Ôf­w%v„ê,a³MÍ&QÅ™¢#–†B¼±Ë?x+Á[Ö¡[ÎSo{eÌ®ËäK˜ìN«°Á°^ÏÙÁéÑø·R×#NÄT*ÕÉŶãóy*ñP®²faö§½<6&ö–Í-miÌ„¹&1õ\¤\¦Ë¨x1XýD–žŒFq溚0ÛKyº§9h6{J´|åà!ŠÜvœg“¼wYÉ×}Îc¯Ö†¾7-yVVÎI^šä·>Î*UeE·-ö«Þ¥“V«A Ï-äïëš’ù jÜõì.$t¤¡´^¾#Ää#Ö*¿if$‘¬Ø±É&8bgh#y+ǰHâ'ÓW–eÙü/ä$Óêä(ä¨ÖÈãíÁ"ØŽz“ÆÍVÕ{„’9ð;³á' ²G=\œg¯Åг(ðxÜÆÍ˜ÍâuÆ÷O{Œµ^[û…£ êÑ«Mˆ-äõùi±×Ñ4ú¢ÊÁÃé)¼Z®Oc˯¥£ùZiÒ=]Aê£8ªGÞ¸±ÈÆU€U$D{…ëÃ*ªªÄª¼œ]‰xëaœ9àú)}"H&uIÛc)!þ%¡ Kl¨‘¢)*Ny‹ŠÎãÑUº¶}èÄ£¯¶ýØõ‚©á¦2ßíÀ]N,ÂÇ‚¾½=ʲÔ0ÅîHf‘Ð)RÏÚHÕV~ªî# ±I!ÈŠÕµÀªvF2è¬ã;ªÅWÕã3´²7Ó³UGo9¯û@ád*íÉî ‘Ä`‰ô{ñ•PÏK’÷ã&ØêÑsè"!€"Š2d—à¢Ê ±ŠåÈäöŽÈçèZî¦f Š\„ydiÕÒtI  v­p`ŽwPÑZëEUãÕŒn-¬ûÕf¶Åï²Ý+μ_}ÐÅçÿ2ðm¥µ7ÞïÂHcB…ÃôNî&nVSír œš #Aî§oEx›ÚW†yHŽUb7Q!â'@âEi~*Å3”ŠÏoí*s"´l±°èæDöØz0’ºŽð²° ðò"i•ö㎼Ȁ´r)Yù2ÀnydQÞU왡>ìॊÀ*8õYF:qfqâ•i—Ÿ¢þ„ Ž×T½½ŽÛ~(/Ô&µ¥^ú‰ÔrF×÷]«CØ|;cSÛqx¿Ûò®ÑÓÙNS Urtñ¶²ÚþBåůnåü%º9Z !Œ}ä”8‚G2ó-Z„}À&Ë©«D·DÝš[_nÑý׸D®¢Cašü.ÄÜ6g®ÝVy•–9]&ÄŽ „6m#ˆëKІŽÈG‚Qø1÷ ‹ÙbÒ€ÍÙYžUv,dÒ*VJ÷Hº™*¸ŒDÍݲÇ̃—XвOY~íÊHJ µÄÐÖ ÞœÂöÈá=ÆÛ®ùàhH5t¯úgÚʤ¶±—ñh#!ø,ª,@ü~O,Ä7ÿ"Û€ñø˜>L J×.ÍÛ¦dèYQ¼¹uùXTiz"ŽÏ >ÿÕ± *Œ¥ÈBÈ©r±/Ÿ’ÂV “àŸsžWŸL dñók¥kUîj»F•gŠIKGcÚvŒ)nÄ<Î IÂÊTãËòúrüF”ˆÏþ$ʘ³ÛïvãñÝÖœJœ_Ot®ÍaŸ[º¯=AäMo£‰Cã«v“‚ !,ÿI<þDuäŽ@ýúr]É`9ic*àvåÔ‚¿¢9QÇŸŸŸËÓ/QÏacÖ0Q5ÚºcàW„Ï 2DU9ëìK/¹(ù5ä_v?žÀ•Ù³øbcA¢BH9s<*¡QÔ¹çÜ#ðBI‚’@õ›SKQ×ÔM)Ì•¤TüÛ×bò—O¹Å¦¦™¡œ|¸ÛÔ QÜÈ»Z߇Œühzæ6pÍÜôNцgt)}€æo…xˆˆ×ù qí7#Ôœ˜æö¤häøç°åU‡ ¤sÁ<€’?ÏÏǨ;Ç–ëWÌmY´µcxãH–ÄðEÙÛ!Ù¨”ƲË÷cvi¢ÿ¨p¤p&ÙœAFFÈãú³+*}íoÏÜ=U»{¼, ©à«BžÀÄ4æë˦N¨®M8^÷¬y<_ò’‡áȳŒdÊIÔ‚z»_ŽÏ•¼qùVv\®"3+H~×—·YÔ÷Â=b-i;é-t‘B›Ù -]ã>™V\TY#%£/" ê ¸I£ÕÔÍË ½ˆôêòmœ}¼¶5ëK^hE U¦YÑ¢$YŽ9 jÌí„,ÒIÐRb²•hØ5õ¿f ‡ #ÏV(ἌÒ<ÉpŒ Òµ‡"$G3($5¶A=Oã=u4øwå‘ü­C¥Þ»W†Ý¬3ž9º©øÖ]b|ÈÛvo]׆ö±8´p¿Y›¼Å˜÷ ¤+w‡ óÔ‡ x<¯¦’Þ/ôÅñ PVÅBÕ¥aÄèyê¼ æ3'g•Š2fàÉ~ž+˜ÁGü‰‘Å…ä~kv³v2@íîþœ‚T¯Ç#ƒÀùõù%·­äc©§4Í%YV­DÒ:%¸¯µHós3 D'¿í,̉áò—ât†£R1LuF×vú÷N:¼ÄâhjÔ¡lÉrp¾ÁmWû𷩸:ÞÁäR‚9î~GsÙÏø2r;ŽHàéÉ# Ì¡fŽRCs×ûXBpIê>xe< cϦ^©–ÅÁ€ÄמýìÇ £$·«{±LIJÆêdeè0)b꼃éÃý{ñÈS+Ž>äD«-ÊÀ2È#pÝÀ=¤WŽGaÔrTO­ ºÚ1‘üÉ&ùìV¾ØÆ{÷0ԇʉ×Ë,_Ët¾Ý»ßvxÊÏdu”5Žb ‹)u’N`#Ú2²óöõØ^d•ŒŠ¾™ðÌ<ý+Wb± _0ùµG´% òT€=ãÛ·ÿ$*²¯  zx—&Y¤c²M¶/¹üª“ÈKK¯Ü¬q¹_â ÷låeEöyôËÿ†q”}-D&fi$óœ1*HÈ9^´e“°ðT‘Ô¸>?¾IçŽG$Á£Ï¡‚ã‚b ~ù ‚~H'à°ñëUîùùV“ñÊž¿ðxý±ùÿ'ž8Yx`¬¾8íà* oþà?<ð=qxê‰"÷;›xiðä÷0ñ“Û«ð ù2ÿ»‚#“ðpäƒñëÞ±Õ‚žxBT…`yCÈùãä±?ýˆ·¯zœ)(ÇÕdïµ®>§}¾‡ªòû0ÿ‰&¶Œc(ŸD 2T¢¬¥›á^0¥”³²ñ8Ì Ä]PÿÝBQ#¯*@ ëÝÓó‰öìÆ¥å>êŽ}_Á,äŠÂëêg4ú»çoÛÅwà|Z/⢂ޖ™¾l7ú¿÷oºˆ窠꠻@½…r{LN>ÿò ϯß³Ü'=••ÖCÀR$$°,>oqMô&²*2†:#€¡¢nÇÚ‰K÷%Û²¯µ).9+(>ÜVxÎü×`¨=mÔ[ðCòÅä²H„N€õU‡ŸçVüh·òÜñ뤫ù°ô ûíj2q‡`ó…ý+}ó]ð»ñîÅÿ¹ÈBÊ‘°&5Y€† Hˆ£í'na«5åìçáð¸ÙÑD‹2H8“ÚöÝÐÿ4`öäx6#±ÖÊ?Ûe¥Nyì­ÁcÑ—²?÷ch‡Á`g¨¼<£‹c…ý¢Ù‘…ªýx.KUXHîâ&‚?Ââ;, 3'4×™¸õv™ê¤¬wúÎëõ¯~Ü,Œ>SÙ¯=±‚þ¾øàZ‡Üšh“ÜïÉg"TI%²²Ëó´kÁ³_ò @˜•8˜u2iSˆœ*‚ìXPU÷K{ ß±¥/.˜ÛL>éYYT£Öd-2^2%Fe-þ<ƽc%¢f?öX’`à­’O†-¡!\…r]‘ÝX(åã~¥„q&BikŽÑƒèHÎÎÃ[åJvØØýo†Š¤šV‚Œì{Þÿìñ3êþ@Áap•éڂر¿$#íû™›–-î1¤=&” U˜°ûl®_óGde–¦Eb öІ…LdÏ4„Øa"× “Úê#ŽU”³…ep_ÝrªU\ÊU˜3'ÊŸü‚í¿>ÓÃÄ3)*GF…HèUcNCrOÅxc.z©—³µUãf¶Tê=rõ>ËjNs—[)*úÜ-]wºß7Ƹó¼Ä`DèéÄv¯}üþ½Ž,ò®¿"3 ÙO…íí<ò·Sq nÅ»ÆhHeAüvo)kÄÕr䨗¢ÇZ,¨;ž Ëòν˜Ëp­—ð5ëˆ]W Õ9V#¼iwHì~U „¨° 0KÍu×Sëpà<‹"€B badeá¹cØthØ+·RV±"ÓŒG¥þÊ—K:©ÆÛµKŽßKqÃþºo§…¯Dr8;ç}Ì÷lšG”õù-ÏSË^•âU>èÙG÷“*“íY¹IÍfäò–"ÀVÉ¢vt¤,È‚Ïuê¢SìH]G³9 üèÁĵ(,¬ì¤¼8æa4`†+'ÿLåæçß®:ð=m1)1Sb¡cFž§¡ÏYTF¥ƒrRJÜüµ¤Öƒá<¯¦ÍOÊZx²±ïý»eÌ¥ÜLmÒaÆÿßjâ}O(ëò¸ ª32¼(ÁXròK•ˆh\u™ú "C"©ׇ”5îYž¦Q]TwA =Kcþ9düUXJ&'_n"¤ZþÊ&d–9˜tÆ­!Nì„ Á™e˜ÔlDzËÔFc ÞWv1‡FQ¹Yc ç¯È“ºE/C'4È@—ÂùBëæ7ÿSgšz|¾|;UÇkݽ]﵆ívÞüÝñ>(kªÌßo“^Õ¿Ž5rCÇîÉùF¿“õ,„pbw ¯­Ê>¡¾ß)ÝÙ 0B 3#Xå…&XTÙ©ÏSfê⻡W‚=Šè„½€’/,q¬Ì¤”U ϵÁùÉùW“æSПD»ƒˆ²DGYYÜÆ»#{…¾@÷0ÒwFƒþ‰ |'”C¥ž*ýXµ7»÷È_ŽÜOÇkÜd±l\@»*¼í~øLñb_ÊX%r©Tðò¤mìÅíͯáb.ÎE1%9þ7îüryK]oþ–ÉòV0ׄò3Õ¦`W©hÿ/—öy«·g‘âvwnÎêÁ—ù;ª‡ ñTH€sjLj¿Î¥ˆ#Ñ¥N¹ÉE`xR9 ~A(ý·»Ê’HÜ@M3èÿåÄÎÍMzª¯Èý£|Ÿ×vcŠG¦5ÓEv»ïû_çüÓ×UÅl‘Œ+·¼!Qøp=¯ïeê $k#€R8ÜðäSå=vPʵr}²w⑺•"r ÉòTûAVüÚN õ_ÑyÕä…¤%š@9¢òDóN‚HÇöGá>pAäAÑ–DiW§DNXÆøÍa‚ÇÔôfƒá’B.ÂN=/ð®P̾fø©c4ìuN{]‡çyŠKOü¡Œ~õ’³uïÄõ'”5ô?0e “ªˆ#ä3ÛIÊxYÄ.>¾&Jê{z×þeàSáàɲ—É#F–ÁVu pjʤö­d{%f^²4 Í­…+u.:³#p&î¼ö ן¹N=Ë D•TÏ¡ ¯µdgü&³»…3{Ç• òÅ~åk¸”ÄÜÃ%R²“÷•Xü3–#~°ŽïR­_W.}©áŽw˜PŒŽ¥? 3‹ûxú¾÷:'”5ö$ ùR¼Æ1@C|”*fcÄÄ •n˜ÓõŸù­¨•…l Q rMh•U¿lò €Òi9‘ pK35ñÖ¢b^é(/2YÃÈìO^Y¥ ÒSùvCÕùÑvñƴêý×.¥{­‚%»G:þ$,ÐÇÍXò¢¹eèx ë—ወs'KW·‹¶éÝØÈw6ÞÜô«¥i·§; ݳ٠k‚CÊü¥‘keL| ªÄ²Gg ߛƒÝê¼,‘s"H¬¾ÑÇüÐ×X+åú’ªÄ:8Syx™á&zËíÿÕ"•Q«z:¾7Ö—OºìŠ«ÃØ!zÆÁÂ!àpÈÿp‰åŒ/õ)ygŽQø¼%šÈç‰ ‘™x*=ÅrZ7CÚ Ä) xõ%?†”ê #‘§ômö«úð#~Âô[«Á[ÇÈà ôóÂhòž´xÎMãiš>ÆI!²;“+(ʲeTIG¶î€v>Kׂ†5rj/bµ¡ C ë†:“ùu^’§Üö?Ê«ã=AB«,ƒ«†YUF ½ ƒä(ß 7òž9ÖOêÆÂ#µ†åB‡k=YÔÌ8#ó‚VweJA„þà9Ì•*Ìm–žîpøáÝ>xôwܠƸ·ê-ù0’N„ª¢ËÕ#3,\|õŠfh‡ËH,ãè:Ÿ ¶Žbû‚]ÙµÝgëáàçñ%Ø6;ƒ»ïwYἩ­{fd­—X˪¤Ÿi.daâ¦RêC|*²‚à‡b#ßÐgÊ:ïfQPD=Þíâö‚'áî%W‰C’ŸmÙ\õDž0$ô²ÔÌ8íâ½Hô*øÛUVäûÌH Ûߤƒ°#Ž"Œˆc øˆÔv¾}O™ð±}<Æ)ßÿ·Æû[{v8gOžr:;ø;fê«7îÙÂ(òn U;UÌâ5П·vàíuE¿c ß{Ï ÖY£¿‘(:F·,§h›¼1¤×f‚‡Uh•åG£´Ï?º—äJÞÂËä5ËyK{ñ§Ù=fѵý[>û Z0CuvD°ó×Zý?éaÇE9ÉÞ6xê,O©W#‡!}_ÈÊz·¸T<²CaȆEVæì„2³YK?rÅVÔµ©¼vdEÌ}xûe¡ŽÇg·]ó/ŒÕàÄAãÚ9!Uªxö>á’Û1 ‡OZÍÅ6³¹Ý~E±5{âröaqgôbO¥ý'N×2xÚIßôÝZý8ÈõpÖ±8|vß-ÂÃ{?%•¹-`VŠäm"ÖDÃLÆa†3ø¢hÓ´®" Š»˜žšÉy~Üiù\Ÿ¦¥©ù×wz]Ü5Iï\×¾°|?cµ°ÝÊé™<{œòV:þVl6-?Y‹lÚð”öH©r™Ýw[¹_%T©bˆ­pâ©Ûµ•I*Ä­¯ýUøSjÙu}OœÌSËn2ã1¸TÌéÛ6ÙÌýêúþ¥’½r¯LNűcˆ½„ÄäZ¬×’¼Ö¡žE¢c8>†¼Wš°íô¸ûZöݯEVKPÜoé[®”úŽf'™íÉîB¸ùêe1UªÓ¯ö7«WÊ»Í IÄÓžò^7Ê66 â߯›Õvèùtß“Úõ\<8-{-&FåÕYò‹ /ÚANI²W8\dÂÇ4eñ(§\tHüÈå”mÓjï¦UàïeìÉéòy!-IK¡BœLNôíVÞkf«(>]ú­ÃøŸy§ã÷Ñöm‹#&SÄÐ_ÉÐp)CŒòŽÁ˜×”SÆÑ§÷Òæñ6ñQÊ•+LkI%µ†±Š‹¬ýLxzI4zÃ3œö¼‹“ÅëxI¦Ô²KR¦dÏÿ¥uÝkbYç­&+5±m&,TQ\ “ž ÷§©Pýç¥ÇéÿSÞ¼­ùJÞchÇ絬ŽòT¨â$‚êV-/q\‰“h´«·)ªGÇïY¨Èý›c¥{³Q\•«ÂˆˆV›úZ·žôÍ='ëCŹú[ͱ3Z2é;.Ó„/”Öó2ÐÌÿ¥/ÖǚةÅv‡'´nÕ5Èãöì=˜R –l8T{ßñ'‹tÿeü-°îw0þ9¶Ë+–Êe±ØÜÞ ›ß2›Í˜©O4¿4u͇?%h'š20ñK^®U£šÂGË})øß5©6Ÿ™ÈíYŒmŒþom–ÍÛÈ­g-³e±»äæŠ'…U*e1˜ë8ôIb‘äA™+È\Kžê‡Ë–œØé2+ j´yô†ÚñïÁù|µK¬˜:µ 6Óz_Õ@ý~š^fÕö?îžQÓíÇg¢ÔÞãÙ1™áw Áìš.{Ù]ga0 Ö±vª$0X“ •³_Öp™ –q‘ÆOB[qVÿõ“ã}#^ÚlV©²l»^»ƒ¹o€Æá2upYý²†6…ñ§á· •à¡jõEÉAnOµ~ÆŠJ²{Wk,“«ø{PÃøË|ñÍ Ä·°ÛËïT·ŒõY1•²©’Ù°êÙócí-\¯Êký<^ÇfIJá`ÃãœñÃ$qÔÞðW–°Ô4š[þCc‹v$Ôƒ]ÏU»v*û…J¸š¹™ ¬îã2K‰F¡ PÙwŽ{iÌhÞ›Z\ïF‘hš“ÒzýBuÙù.^)ÇQ¹X¿Tú£9C®,LKÓ‡ÒÕSWcx¾¡ú­ñ%jK9ÌÕÜZk´3;–­‚ÌXÕßbÖïã1[¦¥©e«­›üÞ¥´å À[ÄÒ¯fÄÙ§–*2TVV„Œ¿W¾­ÍãCù¯k›KWϤ~>Í?ô£…¯²dpw¥2B)ä«ëÓ®fì_üa‹§Ò­˜rj”e#ŠúgðîqrQ`¼…–Êëµ¶=¿lÃêœöå hÙ÷ˆ³»¦sydÈóomׯãÌö+-X™røìtòÞ§/¶ù©àïl9_&Ü¡°çnäv/,î[~÷VŽVÛ¿îš w7‡™Fx#\-jvñÔ,s$s»›Êªþª†§Ä+órõµ ²Hîú« fÅÃtò‡)`¸:ºUÛé»]g½pØÛ~¬æ4pc©ñUÉ éé„Xíb¿›eߢ:y*¢Z’ê+©ŽÕòw˵ñ/øãÍ>:ò–~Þ¯¨ä³2fjàëìõ¡Ìk¹~î¯6^|Ûµbê´9,= õ[»ŠbªølœJõkÝÆ^§°¹åfÏj¾^Ú&ÅÕ¦¿{)w1==’î+#c_·S^Úªé9 ;o:¾]Á‹+.¹gl׬d Zõ ¯W'_?‡›#7h§ô_ኘ­J¶·Î׋XÄgpµsÕ²ý‚ÞÁ€Ïl³m·±¶ï<­Bh)å&•kMXO\QJpBí 0k>Ôõ|Æ›šÄK–2hGÈQkѵ±-Q•ä×_9UÐ ë«âF4HÞx¡š›„VöÈ„þ!×j¼¹¥pdÁµ%[6ýö)§†ÔÓäㄵ]L-®Ì¥c{«;ÛFQöO¨j¹ÜÆaÊå覻bþ;1±CÈÛÔëçèaÔy=_úÕþ:ØüØøkŠ·¹ÙÊ œÓ¯ù'Yò†?'Õ#ÏVþŸc÷4öZaóЮk_ oú|¶î¤Ðf°–!½Qæ±¶1®kOZ–JEam¿Oz6væ^Î{gØjj[ræzΩýWSVÿXçñs4î]h§\œõÿúD‡ŒdA¯’PÔã=MÀAŸÍéY+Yª[rkÙ½jâÛªÇHǦŸ5§á^)ÖZ’-°Gý6U$šÇZÍÈxjsŽ¢LÑ4­®”ê#KbX¦·3’±ÂKOCåŒ~c>’ÔPZ±Å]—†‡Ä«}héùYöm7uб—¡Ö;-™Å¦KŠÊmk~ %-£+‹ºS_1vƒÁ¯ËNëY(ärðÕ&g¿‰¾§t(ÚÖ0x©¯YÚ3ÚûåoXÀã/ØÒñ™ˆ¢k-ƒMŽÛ>BŽE1òW¹R|¶>®.W’ΖVŸ¤«eúMñ´ú¶S»“ÛåÇl;.·²Ù°÷àŽå9õ 乜%zž×h££J̇pˆýǬƒí£rÒ~•4 `Ó3¸œÆÛ$Ú'#ŒÀc.Ip­[æo~,”Øæ¬ÙZ1 3[“­q*HË“¯j)WÚ4B_%·I‡QÖúoå²óu`-pVÜXÇ””dg¦$JÇQçK{ýo¿ o¨úú÷š¶¯ÚÐö«Õ5Í{>γ„ɼgrøÿëÙ¬v¹ƒ\Î;W¬` ùhó³C7»#.2kVºSôb_« µ¯¶ÄK»gÁÅáòU¬ëmÜ Òç0ùüål%k¯bä±›­‰Õv7ÊÕ· HëŒCvÔV!%u羟°yÝöÿ“q›Nå§o91õfÎëÖª´iS‹ S®Å~Œ„µÂ™çŒXRy#Óy| âVLóä²x\f­ëV²9AnOŠÚ5<ü«7(“e¬ù9k!'Ì9Ì¥w€ŸÓ²ø‰©©Ó-†Ra)Uz\¥ Zàôò¦œ:¿1Œzƒ¡ 7²Ã+wïˆ<Í¢ù§£èóì+ ŠxLÖ.\ÖÆ³x ó*á¶<»;½¬e‡-^¼Ù±òÓ¥š@•ãß}UøÿvÊVÕD¶nlöö al.§‡É_Õ°U58y‡Ã)r×nÛþµFLîwÃ]IþÓ“Çâö|FHä2X¬Üµ&øÿÅÚÏgöò’K„Ô°Ú]FËHlˆÂß*k<rÂs9x‰ýñõ°¥W’"½éOÅ:&[^ÉÒÚvpb7}·mÆb²¹œlln÷•|©æ|ÒRÈÅ%,7ö¯-í >9rtv  5h)CsbIÚo=hÊN‡WWó³GK :{/vÓfð„9n¹ŸÍ®ŸåÔõΫö;×i/vówŽ4-µ½‚|ýŒ… ULþ×’Ä`-e0Z';ÔÇì;îB¬ÑÍ€Æ^µ‘}å yY*”’Ù«^šIex©ïç+ᥡG~žöɃcRÂÙÒš<þ×€òŠì64]¯‹I=k`­«l“³fíáïÁC&S;‹ÇÌ(Etÿ’¼5 m›[ÝÎîývï’p´ô£VÂæaÆCåL.'·C_½î#Nßaö @½ªÍZàByô&›à [PÍà35óÛ>Á’ÖqúŽ3[½—»¹_\ÑbØéë8õ4+¾Í˜-vÏïÛûZr$uâÒrçe©3Iåþ\g‹¦‹71"¢ÝgÔxØåˆDÔù¤ÐZ+%4`Zk{ó|4ñ_XÞÍatÍŽ{M<>ñB¶{ —Ìëôñ©³z÷ôz{¦Q.güÅÜ |E<õj·¦ËÚŽJõ©½u[ŸVš‘Ïxã_Áé^GÎ'’6ÌYØ&×Ó¯åµÌì;šãwg1rõ¨3Xº·ô¼tÂä"ÁlthÏû˜•¥f•›jý$x§Œñ†•¼õJþ,ñîÅùVJ¯g´MW#.W ÏÛ»Ùäf–Í™k@òTy¨¨5<ãû¹¥Çä³'ŸñÅ];È:~—g7 Ñé:Õ<Þñ‡Äekâ5yégò66½röbÔ‰)[ qÄcyz‡â=A/Ã(Ô¢•.IX²­Î g†‘Étɽ^ ’™ÀU_IÙ­èÂn¼I>Fó^—âÜ®#³®Ë4¹šÔZö7—uíw Ù8ð¯•Îdnå1«ZœÔ±ÔLf$föq3ýäxdĆ´Ø©ßç²?ÓèÁ¾Øšl”t±1&©Wî÷V­Ý!þ€…³}s6iìÌ•;±d_ QS[õ À³>NúzÔ¼¯±A²gó;5,Šêñê6¨â®E&>Ö"¾ÃÕñÁmÍZ9¸²ðF?¯Ô¬ÞÆ÷Å –&ãÖ1M:-JÚÍl Í——ÔTCªfiØI²8»Öw¼§ª]¨¶‰nDZæ²Mg=V¥·«lõDõf³Ï|ÍWIÑ4Æ¡)eGH[xMí7 V8M#”éÓ&êõ'®1º‹W°Çf³Vïž¼eõÜ<ÞtÜq3iX¨æÙ üBV±w%J¶?ÂU€ã¦µ<Óç/ qûXèl{íLÕæœDPÿ oCf펻ålfGZ«5ß"c2Ú ­{Ä”4¸J?#B™ÙàÆÒËÚ6$×òZ½ÊÅš¸üÍZñC2Ú¡hÞ ØüWðN•·Ë¸`è®eó–¢ÈÊùzÒäóÖlerí’öUØ'”5ŠRN•l#-g1Dä(Kôɫڻ°ÝÉïKÉåw˜#¥äë·30OcÈõ1wîepøìȈ°ñk ›ËÁŠ¥‰,bó¬HòO<éYóŒ4Ý9iËÑ´`® ú¾¸¹ÙxÖꙨjÅê];¿Ê‘¦±#,œç'nÕÿŠÁçäÁ‡‰ñck“J¬šœ\ÞÁ³ŠÏZ¶›$—ι>Ã<dz‹“)Š™Ó+&J‘Ë"$g>±ü}K‡ÉÒÇçèUÉäuQe·lœ'-ãÝ£`ÙuÜß5›ur7¦ÊRÁ_Õ2¸üõLœ8¬ŒÖ†Eq_Òïйi÷sé—ÆÖµœ¶¢°e¢Äeqx|<±G|‡H0y£ŸÂ$sÌS ‹Þßòå*óƒê>Õ¾‘µxµ ¿äÜÞsÈ:L&E5¿o ŒÆá¶,öÃý? eZKÙÉ`Èä­*Ézup²¨Z±Ï/â,Â2Ðe)€1ÛÒ·yÚ°˜¼X—K'æÜZ «Š¶FÂ5UxX½°¢ŸX~1Ÿ%†±[qÕ­cwLÞɲÞÇc+E§`ôìú’¦s%^–züòbóø°%ÆY¬­”ÄÉ-EµŽ©$Ò,Sü©©yc˜Èjõ²Õ_]ʾ?ˆØèãaÎa²O^¾J´wëã3Y¬]èòt­ãòtàÇeïÅf¨2ò¼3‰kÅQúOñµ|4X)®ì¹QDZbæ÷ä¥Yß³àåÀd5ÒWˆ¸LsFayyíIR+2•ƒ!xÿÃ8?ITàö}šü‘͘±~+ãW˜|Íl5zrÙ«B¬QÕ‹K MnX¤•Ë\ÉU•º:¬vèËž5¢k:S„Ë‘6[Ê‘ƒ¾ããŠõcʺrŽ—ÍŽ¤e ­5~ÊþO±-÷,UÉ *~d‰{ýJ[\u«ÊýÏ-÷ ÚŸQÏbÙÿ†v‡év4xÞ¼ó‹ÍÒ@­Ô1…ü”hŠ"1ö#qñdöEIôåGAØ2¢EÃ’¡AŽC€~"8X‡™ð¨O½Ë7>›?ðÊ÷—éqVví'üâóyVv Þ1ä ¡‰ûü‰¯ÊÉÂ÷þî$ ß•¬zµ.¶j1ªSß|þ¾µÉ7F™ÛŽ+¶ØÏgs‹üŸ y^OÁüÉ ¿¾ ƒÏ?¯‘òy<óëÃŽ~b¼‚>OççüqÇë– þ½{“ÉŸ†bÀ?Èõçžò_Ùÿ>·F–°BÀ@/Éý~#ý¹ÿåüþ ާBKzj÷¬øÁú¿`ãeäÉ¡y“·žD€ùìyžx÷¯3PGÉùíË(üIŽdGŽ8<^ôvÙÿ0ÿíÅ} YŽ0ú…Þ/c+Íy㓞YB?âaƒšFè[1 üti<Ùl´žÙ2HP섨<0b'É{ž²~`Øüká|ß1õ kL·bÖrm»+°ìû6k‰z­ªòàñ²Œ ïU&ïÜX’ò²CRõòÔ’ÿøMp`ÿÙ?B³¸üùÙa$…£(DŽQ£ ¸Þâ 8Tý²o“þž×ÈÍíÿå%xÒþSBÄøãgÆøþÆ”;&¯‹Ëå2•™lk6qW™¼DËS¯ÙVtL‰Ï ølueðèš$™~#Wª1™ #.Òq‹KÜîñÏç%s«¨C¡ÑÒ¢Pê6Ž(­Ë2Ñ»–¸me~¦­æ>šüIåÿàiEµyë/ãÍGÇø‡Þ“‹Ûü‡Zõ—›`–Žy±¸*X\Í©Ú7.kÓ‚lÊÌ\þ:Þ¼¡†óœŸO>e½­mÙ\玥ò†ä]3&±[%ŠÁmíKlÕó˜!$ðG¥s+_)€½]ÐY “ÔÉ+Ø(B–géËJÊi¶|_7¸kÚf;]бF¿†µJ¤>1ÌøökvµíëK–Å'µÔÏub̽·–µhSžébÚ·€&ׯì;~kÌ^JÜü±²b±Zûy_&˜\n{_Ô0ùÚ$º¶­€¢—0˜<>o'B9v©c{7ö dûªÓUŠ5„ì!ÎüÍ5ê°…¦¤X $âÂ…g.”n‹Ïn3ur¤d J¥ÆLÅbĵ},böÏÓFú°Þ³^KñÖ%¶èŒgü½™ñ–SAÇè{/;ãìU)s)[j›ÈÒC ñœmzÑã «WsvnÉV¸h¸7Ê~@ÃøÓZ³¶å±™¬¸¡- ^7‚­™ýƒaÎd+apZö* ]!9L–^õlhŽWZÔÞÚ]^ÍÐúPÂÁÇ®GÉþPÍi˜Mæ#êþ2³>©a·(å½f…ñ%*í”É.¹c)o!^‹«Ï,©;Ù•Õágöïâø6PñîÅ»nï­œvOä$±B=Þ¶Ñ‚ÍÿªõMª¬‰Wúsepyztîaàj‹VêPŠ–LÄŽdkùhóц±+–¢JZ=lZ@)ívšw^b\¼ç:!G͉êÍÝoùk=•­ŽX© N[tÀøá<}½ÒòNo3žÄì’É‹´4ôÄ•s/ŸØÕkcîàZ+Ôíb­cj+ì‘Y‹Šõ% á½µýFçô¨œïŒv,&Œ®ëÆ/Uß#³-[81lÔ6{úæ§·™ÛŒ‘—kªfãx,âwÚ¸]QϹÒx^>8ðNLÛcß2^Õ»næ¶È›&۰׫›e¢Õ9­_¹‹Æ¯„­Ž\uJÊ”¦²˜ø¢5¥šF‹›sðüˆ¾T©¸Ò½•ÇyZ×µ]¯\ÿÓE¨÷0zXÏ¿ŽÚðÖoŒæ+%Yâ––OŠÌÔ–,–-A“‡Ä%£Rœa¬Oª5_ðÈâ3À[.‘ƃE˜êò±Õ*2ž—Ë£);‹$ò€ÕÒÒ4¼AºÖn¿kZð¯úÏ]·[dòW×1ؼ9}¶ÄPŠH=M[ˆµí« ã­;'s-/íºn߯5oi¯_Ìh˜é(âàÉ« ˆìW•Ÿ)ZQ*±$œ¨rŸIÚ¥Š”8Ïq×2&˜ÑµŒå(°Ù2(g÷(÷‹2æ°ùx&ÄíøËWáþ—c^È,U6YÃØž Q‰½iÔÓçÉuiKM>^“Ë¥Y$ Óf(’íÔÕGÂ\£æF]]R¶-aÌl®ÉßýÕk}Qé2éÛŽÝ×óõ`ÐüO˜òöÅR¦G²!Ö°¹EÄ^‡ °ëÖláv §´ë5l–>T­z¹"Ž»Ie>©uÌÝøËq³CGÞhxêæÓœÌj†¥”Ý2¾/w—»>ÃqiP¥ŒÔòø|…줵mÇj|\n36TX–(ðý é˦d´|G’¼ƒ«ãv½ShÔ|ˆ5J:Ö óµä£ÍZ­W|^‹¯$¡ˆ×㛕Lض’)$3zöŸ¥} {Ç⢗eÎá®c|¯gÌômKŠÃmÈv ¶‘…ñ¦CcTÙ„˜,†2\¿]ð/•ŠÍí[g–\¼u ÉZ|\ƒqÒ¸˜Ìno`­Ÿ8ÿUàYÄYT؊ܺb‘óyRHߎÀpR¿ÖW3ðw5­~ÏáòZv‡¾æv|•Åjç’rÒ`ð3æy^lÁ”F‚j˜ð^ýU{^ú,~Ù#šúÌñÖ¹ˆØö­‡RßèxÛ.F†§äóO6©äœöjÇéá°¶ÞÔ ¯M’Ør1&©Ù-639®QÌdƒSöÓ-iIz.¤ìm=ÃiÍc³šîŸ¨®K øªyZ×vû›vµ P­C5;V¿¥erÅu–•ëÕ„¹W¾ôŒî»šÒ³»¿íèKzþ‰ãé?£G­x×9wg¡º¦Zj]¯´>`¡ap{-H±ø}zæRŒ©r,—õ ëâÄŽ•Êè¸ /M^?-^A“ŒpÉÈ,ÈÆQÕ1ÔŠïŠnм\©ã¯>êþTñÿ‘6íDÃ_9ã$Øð6åð›4ÖÙÖlì˜\l™½jÕ¬.g—ÆG_+Ž»FHdz²Z†ü=V­ënôú_Šò¾TÂaôÍ—î25ü鄯¬Ù3ެÚD{~“°øò±’7pžC[¸úºâØ=›1-¼KXa‘RÑø÷ÃØoi;F‘Gú»îö6 ûnvgVÒå»=‰—bjšÞ¡F†'70§‰šüÒVEöîÈ„Æ#m«èÛÂû¥Ïe3ìM“ñ·fñ}l†:ìU/ìºÄ8ÈàÂE´M»¬®§v1°ê÷¢¤£bY£&D-[Õšº_–žŒô¥êüºÔ‡QÓÔÌTO곇#ÅÆ ¹Hcö£Ъ¾¥ü—vâ­×ŠÎ±ƒfŽzrÜzXìe¼U×¾{ÜV]{GAsÏïåããôß‚~ ÿò=¯0xÔº2uOÅ¿ËqÇI`KHéñÏ<’Ç¥e‘tv"Áf^Kƒãö·Çè)>8ãÒt*zF½~,UFŸ¡'ŽIäŽ “ÇÁàüzñ1ê½A$T—bû{¸ýwÛMý:o˜ÓµÒ¦û¾þü ì&è¡£ ~Hå‹ùQÉ 'ëçãüžô=Jµæ®²I ±ëÈ=z¡b£ƒò>xêO#õè“„thþxõ¡*?—èõãå@çö:óèõ9ã1¯-Ýô£çñ#ô«þG<žG$ð8Ø~¾Ûw ÝJâ º@¼ûD€¨ 8ãŽãúýþÈãõè´PG-˜ƒžý«!PG!‡XŽ9?$‘ñéNy€Ê• ªý8ùpÝOã׎Hùä¨ d2þÓžÜü7?ÈŸ÷àzT÷#ådáu°Ç=‰?ÛÉãÛT}"^–2äö~vøRŽÜövîxçÈ$ŸŽ},z¬¬cÖãö¾éýøg=û‡‡õív~þNkÔ®ÑDYB€ ê9äÏøüŸŸ×¯KJܬV6éÀàŸÙƒñÀüñÁ?¿ARµÛÄ#U`TGØþð ãž~G rIê9<~Oíò>Aô2€fñO¸TëתðXqÁŸþX'÷éie…›‚Uݹü R¤ò9#·äIý©ãàÇÇcébÞäÝ‚ôk?ßÛ•QØsÜïÿ~JðGÇ¥Ó$2»*.ÿFªü{yàM(,Ë䯢ݰð¢j„ g 8!É?'÷À%xÿß#Ôoå:È4Ü“FB-!ˆÈ^Ä+rÞáÄGY ëÁ$s(‰£ü@d`cÔäò¯¥f 2«ûkíª%Pܼ®0H™{J¥GEož-åÏ.¢Ÿ:}îAYÛkóâ½oø™Á¦ï[ÑMxíï·wåY–2Iæ!7ifÛ^¬—1˜"ˆ4Aœ'+ZÀ ›Ç;K ”»H&¢+¹&9Yæ‰'÷@ñ†š~ 3õN=#ÊLG©@RQ'%¿á$¨2¼ok¤“ŸÍî²_#íŸKºòÆÙüYG»Üæ5_h»;Í ~Âü-Æà$c†ªÎÜ^Ë^¾N¢™c&Ä|ö®þÿk8óºKó#!õGû€†ûx)Ú®¸DÈ_œ^È4a9k÷~\nVŽI ¬0S÷C”ÅLý0°„5íkaÆýDù'È718ÕÓö¿øó^Åå ·ZLµü®l“eªÍˆöÐÖª¶"–$µjUºWXã Ï9:‘G–É¥†¿b6vIGy¥¶Œ(äÎYqñ–¢âva$=S-ÛêK#¬y¿3âügrÙÝRlN;mÛ د[9±à_9ˆ™rµ16041ƒZœör¹<~Bw–G¡Zhâü©ÖÕåôôôu5YF˜ôв^’4†q¨1ÅÐÓÕ”¦@%b¡*2ŽOr¨ÙN"Ì—¾¦ö)mi­c„Çç÷)-îô¼¦]Úuý·ê_éçmÇMƒ©1rZý¼7…uŸ-b1×l[šÄ²Ïg_Lj›'ðÇ[ÓÿÔ=ëžFÕ²x}£mñïõ\?ý¯›eÅWѱ²î#/Kq©snm–;ØTZTñf™ñuÇY±!"Pwfúºó­Œ¯[ §i™¹ñ»Õޤü}½s#6µ]Ë\¿†´÷ñI‰†Ö&kiO'5˜r}oùgU÷6­Ÿ_vÄVÉoÚÖLÔp÷d¹ž¹ }5k[ ¸ønÞo´·–kÙFÅRšÖT©j]e„?R|›)FzÜ̉%ÈÔ#š"å7¿)ìñ¸uã¦:Kx,½.غ=±¸à±_OÿUwö €l;VÅGšÝô¿õMŒg ÅRÍêPm¹É³võêP9]hÇ¥_§©ÃN;+6K¬4àŽ¼s°Ùϧ¿9åö­Ñ¯ê9íƒH‹ÉÚŽÿ¯ÒÍy^lgRòF?1K‹±4¦*¶#U¬ÿ`2±ÙŸ[°Y^ɘÌ$ ŸÖ“±¸Ï¹›ÄXŠ™ SUÀnUö̦kOµ6_wòëÓa±YÌ%<½Lt[O›ÏœÝ éàþâ®>´ù”޳¡MõϹRÚòzTÞÈf³¾3Íåpþc“Q‹cØð"|NßWT”èÙêøeÄÀ$‚Òæ+ÿ¬ík锎&¢ìfe>üyžj±"RŒ‘ÈSÙ§}ê¬xN®mŸ§GGéôûe ŒŸ>ù᥋ðÕN[ÉôbØàÎÐñ~Éå|[Ê·–š“Ôq¾AÜæÊOŽ£[™`3…íid§^ýi¯C°í4Uœü¿O>~»œñ%=‹ {oÆèž~úlÝðû¾V_éº6‰â¯:SÝ7¸sØ)q²¾÷™mRkØ{&zî–hÁZ EˆýÒâÛ>­üÏ_-ãü<v‡®>óå/É[Èç!ãË>dò‡öH2KC1™Ü”ºlyJ!{QcëYL:‰î¼‘Ã5y?Í{ï¼É­ãµL®;`ÄxÛ¬QÎÝ—(oBßqš­<îg(ÑÊé­àá»%ﱩ^kMb%¥"™,¯:|› Oçó tµ4É(¶Hê#XÅ«Ý/‰z죔˜ˆ±! im4ößn?Z_O»§˜›W·¢êPly ^3òΚVM¢fL>co]NÖÛ nÇ–§ipùxQY#’®RûMf¨Aù§ÂRb7]GÂf®kë9—ñ½ûWš¦k°'˜k¿š¥‘uªvÚ·$ 1E³7¶¶žÿÔV[ á¿È÷têù-·NòÞ&±„ÖïÝËkÙ}’Î݊ױyÜF¥+K8+ ±bîfkÔÇO–Æìpg5Zu,Š)$°ö+êëpm¯Ç:NÇã¼~½³y;É—|]LÆZma©gðÒVÊä³ù ÍW±â±Vµ†¶˜|]ÌM|ÈÚ’•¨KZêYõf¼yê³Ôæ54ç­L`HôŒ@Bë1͵ã…Óy¸‘Œ!§(i¬^¤^£;ÛÙß;Víq2x#Ç›6‘Šó­,ÎkÒyÎRòF¼±ló0ÞÅù*™Œd=c§]p–±V¬XÂݧ µw©X¹9)}+ÆÄú.ðÎóáõسGÂckm›NáZy;´rÐe%½“Ópù|nÉ^ÓÓ£A ­NÝš‹Hà PO#3V­^"ìÑï¾³·¯+TÐßâEÀMæËU]ÞNÅ®`«aüÍ•Çõؽ‡†ÖC1 ÍMkT¯•Âç§ÉÎøËòÕÆ‰æCúÅò_èø²|v‰ àò¾vÄá6 lÞåfxÌUý‹1ªØ³¶0Ƥ’ÜY°“ÞTÅ P.2TIZB=gOPÌ¿H [˜ý1Žøáwé×Ã>OñçšvŸ#ïúî6öOäµö* kÒÉc¾¡<Ó¸âqÖñpQ­Ú´šã¨Ï5èÜDÌ®J)Í™ç·+3Ⱦ&úŽÉy+~ÚuÊ6l`æóvÓºèUêï•5ì(ÀäðX\v:öÍŠ‹ý@O ðß|mhm¾N7a~kRÂÞÒÇ–¾¹7F“ äŽ* zJçgÂhõºäM­÷Æ5lYŠËŠùMFÎói28ÜÝ(„¯¯GjÄÑLi…y÷cúòž³œÈxö]3ÆÙ­ÿ_žÉfqûuù´©uL—Œö_%Qj¶÷g?­ü'Ü<"•‰-@Õì ¼m³y=¼gK>V>?)·ä7h1;U½vk6¨Ð`!žÅ %Ëûו²@¼Ei²{ªÔ¯zúxú’Üõí³WÉPþ~ ê¦_nÎy [Ö÷Oæäåe™Ó ’·þ¥eTj¾®/‘<á”Æ`<)6“€Ã¾ÉæÍ{#³bWoÉIÖp˜{F£¾äêÞÊÕŽa÷óQ¼¸í~º€VÚYžÃ¢ è÷ˆüµù+'䙲X-{ªi{;=<¼¹ŒÆ[1GUÔ6¬µü8áZÔ±-ÐôkÅ ‹ …j¬Ñ@ˆË·G•Ö×ÿªN‡Lz#mÒb  ]¸Íœgާ1?Ë¢«óuÕn¶­]Ö3ž0Íß¿€¹„»¦äuÚxÍ)*ä²Ñe±ù+T|{¬åÆC—­Z¤–0ÔòyÅ×mØ0†c ’–“ý ˆtct/¨íZÅù¥grX=óȇ3‚×|¸óÞ½CÉ6âÛñÔX‡·†Ålú¾fœ™Ì…é¾Ö¾/ ÐÚæV‚x$ŒGÖW‘òUuë²ø— p>ƒ y+o‡ –Îߣ×|¥cgQ§Sbhð•2øÌ6©o!–³š¹ÇÛ–ì8œ\¶lVšQì_Õ§–-áñ;-­HÆj¹º> ºÓQÙnɱÑÃù¿yÌx÷V„Ó³BÑ_ÖòxÓ°X¿nxèd¡‘0Ï+vi9^[Z‡â5âè74 2`;³ìúpÖÓdšz):^¶!d®¢®]¦6¬íÄ;ã}Iÿ¬<™¥æ×o½·jx2Ƹd<‘mñ2Á䵪™ Ƴ㖿‘²WuÕƒ]سÞ9ëõNBô˜S´ÃcÁ^dÂZµ>¦Í´ØMo!§nrùjÕhÏ™Ál¬šå«xJy v!ôƒúÈÝ2þY×4:ØJ57-ˬi0Û{§¥ë›æs}ËT|þã‡Ùðx½« ÷Ú¬teÆäïÿFlm«5²BÊç®G¦¿®ÍTÄ„´ŽíÕ½ã³D曣¢o(·«§z³kïyxCð¿‰üÉ»'޳÷"ܵïæÃ3ù& ‡’2§dÛòx-“Ë·7½²$³Jžº™w5ã­q0=Ò\Ý|4ß4~ÊwNÄx/êw´aÅýz7×õÌηý"æ?ÉÑT‚¾ªvíš]º•Œcb=´l޵FÕšà5քиÎëSÍ?«­ÖëC™³¡ëM©`öjÛ̉›½&rîGɬÜÔ‘*}˜Äbo[§fÙÉØ¯=èg•hÆ=Ž^Ìy¿™¿¢îãYÝ3šfO^¥˜ËRÙ5X±÷nس©×¿q±¡n¤Ôlc²MD×ÉÃÿpc½ÙQ–ä]Uôyn[WJrŽ·1'F&¤˜¬YE#ÔÓ•ñ·· ©«­ HÆzz0ŒŸ–`•,£}Qrè·fx¤?Ó›5¬×Rž?!­á4Ý‹AË8­ú²ÐÖtÜÙeÙ°–0'Ç5Ci6kÛË㣚k2E-ÉàÌV¾8óÿÔâñžZÂáô/*¬·«n³j÷ð¾FÌYÓâÑsR¡¯f |EJ»µÉ×DÊã,{ÒúŲÊÉñw÷ýs[Ò®ç²CȺÖKÈ>"ñžÏ’Ùr0Cä9öŸ.áä·ýUÄãª%ôìªÎ‘ã&›úŽÁŽ‘.@I‰€‘üÁõ)´xãɲi¸Mm“[ÀeüM‹Ü²m4Ø©£+lí¬QÍë¹ËÑů4:…6›2jd.×9¹jÏ«Ò2f&« §Oð±å'S˜Œg©]vÊ>"yÅþZýJáµ?-xËåhÊQØ‚o¨i\ÑyþÌ·øË{h»kbÐ_;˜AÕwlÆRç•Þj{v7·csµp8íf½Äá2:¦g¥W-,sÅ#ÂmTŠ9-ÉÂîá¿=crúÄÛ+²lÔüŸ¢f±FƒÈo.3Çþ.ÆyS%›ò^“.(£Ûíy'ÆW²šºó$Q]Èì8ÛógX®dõ‡¾gG¹–Òõ ^ÇåmSTÛt N)ö,ê[<þJÆ|mðý-§ï¶»ÛDÖ<·…ÕªQòG﯀òEo+Jj {´oÁõ nŸMþfÎɼfñù|’fó!dõÛ5ü…™£mîß°Þ‚Ÿ&e|6†F¥:¤KNŒ·²ïEb¾G´j?J?TûÇšiø¶®oZ–æ7!©éšöɺيZ9Öñ?5Ë7´}´‘AAñ™‹Ùy–{4¹8k ÙóXRº½[Ûÿž|ûŒúØôÍk9¦ÛÂëYŸ/œ~­—¯=Hòø]SÂzNýS›¹A/ÜÉÌù«vªT¹‚tËÍ ŽQŽU’ö|”ùm*ž¼´á¨Çª#ÔIé’vÄBî¼í|Tió1×”Xè’–™#«B¡bäê¾ï½_ ­ÏJú‡Ñ[È^dØ+œ^Skaßq1a¶Ü¾n¾ù¼C½Ù· êT0T)Mþ‘Ä^+¸›¬ô¨D‘ÕŠHêVY=[M£Æ;®WéG-âé‘ò^CÙ4s=ʹ ³C9Ùv]ÖrºÍ¬Û K ëô¬Ï¥T¶¢X ‹bñŸI.ú•Øü‰åŒnª|}g©dZæ¦r{ ª¹¬NŸŒÚäÈO=‡†µìeÏê&Ža>öÕzCœË%z¶£syÎ~VÒ|©ælì¼ ãÛÛ÷ƒô¿æc¡ìZÓvìîJ¥­ƒY¿<ˆkKŒÞ±_{ÓÉ£1F¢¼rþ)£>WJš‘Ô×ÕÒœ%£+²QeRjMæÈ—Ý{U³9YÃM†Žž¤%P1e\w;ù£0sOPL–v||y|7Ž/äv^<ñf7ʲG’ñ6Zèªì°íÓÑgËGµ¶±”R(äÀ‡z01ŠCÅÑó²›öÆmOÙ3>òf™¹Îù;Òbã„á±Ù,mü¥{(²,6éämÇ}ëôo±a/Ù´fÈu«X¨1K¤x“#ÇÙÁbòÛוqÙÏ.dïá²´vn·G6h×½§b$³²V©NX*Ù´kãËÖ­$ñ!!¹•>”¶îm£ý%äöõ•Ìç¼a‚ÜÚ‡7§ïz~Éîuü|Ûߌ¶íVjÙ ZvÃýdZÄé[f~lUú3Ã’½.2ʳiË•c=Ë™—âc§žUJ=#A°Õmvñ\¿tÎFòY'Fz†ŠQÅ|©œ‡Þ¯Ó_ÔæYìÕöii½ëkØoÿ­ŽT£ŠÊÑÞjÀéR,®6 âkUὓ§m2l["d¢òèŸÁÿQy ï“ï‘ws`±±bö7Èíö˜7!á½_VÕüjµR™²ÃVÙhe-Éœ­,t²y ¤Ú«D™‹³·¥¿ýWùg5¯{»^=زš¶C#ojÈ@naïl8LŸ˜s¾<Áa´ÜhöÊkTñcúþbÃg”WÆûqÏh=yOÌ[&«¾O¯à¦ñÎ+ƒÓumÓfÈùemV,­«¡¡a𺕹áaÈcò6Þyù,fj楯]é.ÛI…ZZ”£=G_›#¦Ä2-pF»žS?[âÇSšŒã•ˬûŒ#д¥¾))îÑ·„<}·øÇ)ä~îî4]—ÈšÖsHxv9ògQ×ןZ»5­$VŒWåÙõ_.ù¯oÉEöþÑãN}й7°I¿%¼dqELòSŸ}[ycá¿§åÚ1XíÛmó…üm¶ë;"%ù {;=ëøìµ¿!E jÉ=éþÌ]ž\J^Üé _âVWÝ~¯|‡œñÝ·ã?åŽëët4­g%kyÇØØînû†¡‹Ýîd¼y”ÆS×vHq”24ðu1mJs+çæªÉ{ÑI~Ÿ9ÉÂ0ÓëÕ­9üèÆQ—êéor•6ö+ åù™êÎDtÞ±ÒRB6Dº?ª.%QÁ­ïÁþsËÜò4ØŠÌûžÃå¿"m5¼–¾BËb†ÃáLöF¬º§…SVML x]z+)dA-%‰Žc¢~HY³ôûå<·õ¼¬uß\«Ž{þ&Õ[|ÊäWÆégËX<úàŽB»EVÕ=®jŒY ã•2UrKJ8Q#2zµO3lžDútß|ˆ«[QÛ5Éö¬ ë‹3ÙÜ4,ž°°T­„òI¡UÆoÌÌo\ÇCõfŽxcŽyã%ýòÞùå >_éYt]ƒ ÛfËÙÍÓYÆ g£§x“[Úc|”ô«Øµ¸ü¤÷eÇM¬)^ºiJ¯Y©£Éô̹‰ÂQޝ¥í=Dª±Rð9Óƒ ó$º+B2„,æ½s£¶ÔÉh?KžkÄä£q[Fßçà1ÚžCwÁd¼çÙ/á Ø¯êXÒòWaŠtŠžÝ‡ÍíYªwcau+è{½QHœß©RZœÆ¬õ5® ‘¨À…Ï·z¬”¼gƒÌÇO—Œa§RfE•úœù,jÒ®éq›¨:ÿ‡|óÅnìl—ñÛÆo:–Ãäܦ癰<‡VËb#«¬SÄY÷ L_ÙC{؉’ÅK-úåc÷ΟOž ßu &Ë¿=ÀÀéÖ ñæ¯cp»žmCcÈy#É™\Ò{Pý®:òãôŒÖ¡J½¹"š ÑM~Ž2%x„†ßþ°ò¨ä´_ØdŽ/ÊDêbHÏÜCÍ•çÔ æEXÿâ[§HŒ=÷úÚ¢hÊÊ9ˆy‘Ý:°_eeqîtìAËKÞMó7|9Œ|8òg5Ïéîkµ•¿¸lÍfLE;—4qÁ©Ì'ÉËÄÙL#"ñGf.Þ§àÒ†Ÿ"ÏRD!cSÕ&£™„OØ)íîñÄø”óqŒRt´Þœ;ÁšÇÖ«‰©]LEAêªò¼¸eh@Ì­ò‹edcËd£ˆ=–WEPÈÑËçÝ™™PõŒˆÈ:|¤6¥j†5z¸>‰_Ëâð¸ë ÞC…ÇcÕšöW3~®&…DiÒ¸k·ïËJ°½—†óJŒ¶š(©+«ŽD{ôãàÿQ¥ i$ !–jÂ14ñ á‘ýΞõ˜¿Weëõ·gP[ª#Òȹ]`z_¨>ÆÞ(8å‘¢û!…7{Ã~~üpÌ[¼^é/TThã‚I}¸Ÿƒ]> ü›”`=#\d’X#`ÍÏÜFÝ¥ ´mÕìþ#ò>è@mtâY‰){d3z Ö݇¯k=È®ÁµZ Þ>{ ~ážXñVžtÉÝ–µˆ¡¢Ñ yG­b$„KZeT{ÙÌÕ¯– â!žòœÌŒIÅA6$:d–L¨¶qðφnéižÀþˆêðd–>A¥«¤Ï×iA¢*ϵµ|Bh2Íg¥íXºìb¶kÛ Ô”%†‘ÓôÀû‰WÊH;Gî{G«#·têW™‹Gäèèá þ5²F®Òö‘4ã¤i)Y£±^ÐŽÄŒÕyŒ°pÛîÞïhí— {v¥®âv«šÕ7û»‹«æÞdÃæ”…û;XëÒA3À*O5ˆJûö#޼±30Õ†§Ô·Ýæ õé°¾+òÅ{¼+‹š,¦sÚ¶ÝkG£V”«MBÖknÂ<™˜]êZÄ-ßlûôä‹ÒêkéêÁê°n+Õd>ñ7öow†Ž–¥Q§*Mú[zóÅÓÚ±¾Íñ>*2ƒ!—–bí( `O Šœ©FüZr(n ·­Õøè?•XÊ©NÜ—1޳ àW&VŒ•R‘‹`ýÄ^¢æÿA¨Í¼O‘ÊG®'›ÅÒNqŽ“E¸VÛfÑå­í³˜Øö:òE ÷“Ù¯M{Ù xPÖÀ}KxÓiÞèhXØwx%Îå¶mkDݲڞCão"lzb]µµkºNÍ#v»”Âׯeo¹R„98ñ99±SÞ¡NÜ‘'ÏÐeüÈ’™“«q1±u+¢N=ûq>N§C"c¤ÓGMu_Ðßïg ÙgáÃyBñ¹æF”8!Z;<ÈŸÆýÈ7{oí‘ëË’UOä¨Bu‰£‘T?)‹³%bÊEe/V@ÞâŸI=ƒ„G'§ZôX¼ÞmqR^¥g!ÁW’Îvæ3gK×£ÆG Œ´¡’tÝO¸¡¾º‡’t­óJÅù[Ïã¥Ô28ÙäÉ_¹N¤˜L;›HÓíud³Æ§=™Ó),é¤yNÂ/ËÕŽ¬ |¿™¦H´\I$Rñ±Y;oiŽ!§>ž®—¥zE‹»IMQŽÿ§„CfÁü”óJ!¢'ª†à«Ç»sà¼/ÈàüA‡*¬É$’%ƒŽÝJve÷äs6äöšT•äIcÁy “’ÂS2tf’(Èû¯ºª¢;°?Ôkˆ„ “GòUïáªXÄR³–ÆW½š¬Ó`±³dêV¹²WX…†—]¯4Éc5@}ó=ìu…”¥r‰½‹£öòdr¸Œ,w.UÄc¤Èdi⡹—¶îµñg»,)6^Y£e©®ÓÚ§a"…Ä}™§Wó äH¢û®Ív;»ð±„ì:[{HGµÐïák¶qÁ¿b5øê¯¶ 8À¼Dÿ*Dœ') ð€¤Ü̼úÇ@¼•g Ú(âHƒ,)@ ­"Lå£W“ù-ö—@‘ZM’ÄFg¤Ù\B]§Wú…ª3Þ©B¦;¿´n\¢Ó‹tèÁZš4¯ï0/>˜×<¡¢×Û#Ò¢Ùèå7¿­U»‚Ævξë{`Äá2›°ÒPÄIwRÎ×Í^Y¤lîR Ræ-´TÚvjá5û:ö+gµªI‘[ö¬ŠÕVÕêrܧ ö«,øSJò×g‰}2˜ƒ6ŠåðBÖÑ"¦µŒ¾6 ö6’²¯$–c9õz/ñÍûf‘‘kiLꎤ:Zél C9J6á-HQ(¶U”µ¶,Ç·úx•Õ É$¬€öß²Èä“ä´ØäÅ3DÞ͵&º¡ n"HUbX# ꀡ„H «$*îÁ‚šÀ2AíðjGÍ[&@Pzfkûö´áêì:¾å¯dð™´úö?*rRŠÖÁRykØ×i›TšÞR¼‘KÇ$onVšºJ¼7§ÀA“´¿.x*AfÀz»'&TµÀÚžA_Pœ%˜Ì™‡ÒŠ˜§„ÛØúpÎ61DÞį®1úo†¸,k8E&0O´ŠsÛÙgr@2,HÊX:²® JÍ]Š‘’yM—qÄb0 ûr) ^L28Ve!q¯#5cfçiUti}Æ@«ülZEfS˪¯É.€«ÍÇ·e;G3ôûˆ3ù‰k¡X˜{‘ñ"˜@ ù'ÿØWãˆÉ#íÊ4– È ¥ ¶¥û=üäâDõ½ê’ñiYòyÜ<¼<«Å¾„ûÙà=Ùç*‰Ž€'pyEáY„Ÿs(!ýþ¼ÄÄò¿å6Ã/ç I“ÞeU ˆÇÚD°J}¹h¥YC±°vöâ>üA„1מ:*“Ê’‡Ž9oðO#ž8çF,ÍÇ-È Ø…#•å~$þGõÀTäçˆÅ’G—åÒ7ž“)Uؼ™3_CŽÑÉzbºÚ‚Tªë¥ìo¿œcŠêW|(ý_bU@{Æ®â9 WŒ²'ç#€HHÙŠZRc´d#Z·ÎÅA΃"õþ'š2© 3”F¬]ŸŽ­ÆÅU«+@ v²‘òugêS€8Uçÿ.ÁSû'÷ÿË>¶TRÊÖKެà~Cä­ñÈù<|žãÿu¿W@¯H®ßôßgýä‰dÖÔ°5‚½Üoæ»eâ¶,~@fI:çÏbX–%K‡Â1bP|¯ñû«$JAûˆí¾°²o³ˆÌ‡=íºI,dì‹!ì=¶B6R$€û°Ê¤ EWö}Yod?+÷À€B»~_ãä€x ±ã¯SÀ? qëf+†^YHIàã© ù=˜|þ¿|zCâQíËh·éLVWo¡‹Åäþ¿ÎÔ +Õ½'”úÝgߊÊÃ}ÝØxFK $—b¢¿¶áRHÚ9G+jŒÅ éf´ïfôÃä(ÓÚ†mŒ¢¨€‰f˜–Ž»Û°%•@Vuz×ešidÅêÎ<=“¹°¼Cpà@àðËÏãƒþØŸ‘ëͶ§‰¨íÈG.þÞ~ÇPHãŸ×<ü4~# Ž[—A},;á¡.߯{¬×ä¶>n£¶c!ñjúUåqÅböwžÈ{lkÕ¿4ie'ÿ"§@蜖”õÒ²©s¨ƒP€‰„C¯Yd$sY»GÒe´¾Ô½Uäï÷p(¾æÄK ³ÂuWYUO<§f<ëä|óóÿ‘¼°ÄT2¹å˜2rËÈ'ž@þ€øôG$zŸÄàßþŸFñŽ‚ÂìÿF®¸Ÿ‚”\ëjc+Ô8ÃVlîc>;ñZ=­úVèFÃÃ#þì‘BVCÈêÐõxx~1””7 ®°{±>Q7Õ‰%˜ì2¹T,…áœ}³³†?QB£‹5"IœÙpŸ;ª†àð~PÇ%‡€džOûŽ¡V'_•¡üu~‚>xöOöþÿÇ /‰FŠå´;^ *³T¼Þø®Ü’°~v¯¹ÔÖá–ï.m¼š8¼ƒ¯°„ŒšÎC;ÉÒ«,‘€Ò1góíÈÜ·)bVÛõ»/•ŒK.À{1pE‰ÙÈrzôu–ꈜ1Âëîz²JíóÕÄŠû—©RüðC8øøàqþÀØõ¯w=Æ Ë·f*J3ò­Àý||~<ÈãÔ>%`~—{_OÒ›oŸNÆÜ+ÉÒÞ¶­âêO]ï8G³·¿¯8>áØ¥êŒœÅ,¡ˆ¯Ì‘+/+7-Ú³êÊÒÃ’k¥•”ùvÜti5ëÙúPÉ#¤F{sôy. ™×«Ë éßi‚™j:šðkÎç€$rê #žCHå€.¼ð¿‰ýð@м­ÁÆbЕ —À‘D)ÉþDA¾AÿÍÐqìG7rÜÙ«­ )rú!)Tž‘v±üµŠßè[Ú½nXÓÒœÍ]VPÉÔÙ–8Æ×m§|^ ‡ÿÔ¤Ž0s™(‹Hä|ŒücI ”1fuT ‰áê+VjÔ‘Ù“‡OõËA_3’hØpežÔ€ꤤŠÀÍd¯XŠº2ZÌžâúPÁ€™|ZG!ì· BŒæ0?N"3pÇ™PözÃù./ó!ÕÚŒ]–â2¡6£Ï}ñöÏBþdª”Jiî^<› úpNÒÿUÊòæ&ŽÕµê褹)c"¦8fš>Œ űÙbhêÊäÁ»v[éþ§“5ÁºÕñ<ži|ÕÕò;&­«ßòE\ ¯jKØÜ6Á{o3‰©j’Þq€¯“‚ ´…ÑJ£«ÊsÊÕ±ýK&y ^|…Õç²X»Ì‚Q1R ‘Äfî$â¼°ÓÂÆê…õS6¿¥&Áç+j]–H2æÖòY\Ú6²QÖÌ꘯éúåÌj®F)P€ ÷g«v”ÒJé'»"CaÊæ×%ò´¾VŒ5’ZcN” "›•ŸLmª?2lç=<4é(àS²aÆ[ó|ض/¤¡‚þ¯´Aàœ†+z½jÖ2ºN¡Ÿ¤Ù6ñþGý!WFlÕ·kâ˹Z”qñBéGÇ—òx\ºÖÄ\›2FÑ¿}`²9Z[Cý?ÖËgpÞögÞÒôÛòíL¦"R;V¨ëÓ6z<¶+A6d½%œããñµ£Xâçú§Àá18$ÈÇ\Ù|…´Ñ±–ÀKi-ys‡O$Cpá2”­5{ùüƶ•¥I08Ö±¯Ñ†Î1å$ké+\ÔçÀ}žoîkk™Ì&j¥)õêS{60Zlú‚W…ç–ì Zw½íhªŽ—–£ø¹Î¥ÈrÆÇTˆ´ÄoëØt¬§†#ÿ¹ÖnT±¦««¾[SÉ‚¸R‹rúMÀP“RÂÃà¨há5Ê»:ž³£éâ„xm2°òv<^*†b>ÿ õ{ÓñÀ›ÜÜê:j—¢7alŸ&}$í•©ùiÖ|M<6r¾cIÜ· OÈç¬l[•FÙr»±ZLFChÆl2ûg3´æ Цue‰³mwÙ‹î'ñÑ.Ñ ÛËi»ï_ë»^¿žÕ"‹ûŽÙÇø—kñÅ,¾Rù³ïañ2ã÷œñƒ[1NÙ¦©Fx§X¡dõ#`þ‘3ÚÖÍÝð>XÇ¿ñÐ&:¥ì®‰K'‡û]­ê¦²b%½>2Ñ–¦DMpË¥/¿ÜÆ—7*Ë¡Šè†ñcÕjY»AŽþÜŸÄkCÕÕ#2­Ý¾¶ãÇÊg¾˜6½·^ñ‘ÙölÞ3šÕµëZž•–«6*k½â²æŸ cR¨µr]óµ¥CJk{­85%Û…›ò§Òo’ ÉÝß ñ^fý=rxó”<‘¦ë›Fb?-°Ë‡¥BÄ9¼.JÅì^㞢«ˆ×«ÌfÚmGZÍXâ9÷Ѷ)1 ¯ã|ƒo ’¡—©|å!רŒÍ 'Ô63=V´qÏ Œ_õ8¶ììø }£l t„-©lHšž_™§Ï¾Îþ¹‚šly–¾0øcø|aÌ\¯n¦Fô9„•äÉÚŠÅKœ”n°’n$'œb§)¡ÒǪ¢EŒš¨ß”~¦q\$eËõTõõj2Êij©9/”ßu^»ä¿¤{OÁé÷3þÆøëdÀå,ât¸ð8ÑòZäy;øÜÍi4ú˜¬$'`-…Êbmâ"66‘ÆX§.ÐgžFö/uúEÖ±µ*ëZß„pú×ð—ul®¹¢è ÌFÛ7ÝâukXÆa!w1Ú±«˜¯…lq–=†€¿eNR’O:ÑÖ»¨¾½i6j“Oˆþc! ˜ñT¹’Äù‘<Õ~܉•³rÕTÈ__±»‹3¼.ö6[sHmÈ¡”ßCØ1RíªAÆd ½“ÚsÔÞþ¼¶1µßjÝs{›ÝÅäpÙ:·ñ·([›ÏëÖ ·ìÄ-Ò,’Jž„§Ï$ô¼¬¥• WLhé6¨©Xh3Nxxþ_ýF±r¶K"ÕÞ‚® ÙÝ}³-Òܾ˜5 ùlŽ£Žðý}›%€±çÚf§§âòû*&+°ÐÝ¥Ùká*ö,¥;™»˜Lþ^ô9ˆjæòé^ÄXüél£íÐý$n¥íµF“TÍiv0‹@åéW³—ÉPÉÉ™ÖÈRx³”ªãëcó^úC_ ÓY©˜&fOO@œ9} sLHF0ŒZ‘Õ!£,N§s;ãŠJ–­K_TÒQêµ”eA’öëjû{+g7o¦=ÞžOÇ[m¯í˜oÓ#NÛõÍkcÖpPêòWÇFøÜoýCZ‘©UZ¸ºí~vŠªVI6vx£yÐ<ƒ‚ضG¯­SÜó:ܹ=~6žs/„¥†KÙ覣S`f¡#j?ê·Å®.2*TŠ$„66É“%ÊÕ ZWÈÛ.:äXéK=»dq9¹™Š9\ÆàrX ö)Ë,cî xž5Š&õ;ø»Çw[`ÉŰˆµìV³=ѯ2kMŽŽ?rŽSfö j‰”H¤IÏÊž<ŸÉºDú±ÊO®¥Ì¦%XcšäQØÕöbÏWPÓ‰P£8Ùït!y£J>;Çê;Mòµéú¾Û·èšõŸ¹‡MÀPÜðøLµ(îæXØ*â©fgÇ㢑b:ý‹Qã•Ô´!Œ*úid|Ûôï<[{ßÚ4kT° ¶Óo!‚­b„÷õ ‚ãc·<öqo˱i¹K5éVt7³í›Õ(Õj†ä<»¬­ÃÖ£‡Íc3•5øbÂY¹ŽÈÓ¿\[¬t-Õ½-§1Ý«<µJÀz³ÄŒ„z¤Ø_¥œ‹ê¯ˆò~ùŒÅS­½y'«aèâqÕaÆK»ïx­²‘ÎÙžÊä/ÅŠ‚¼8ÔˆKÈö;[–«¯-èhhjÊp—膙"µ¯Ik*¾Ñ~$:%©©-MMM0bi¶²sDCó5Fù»Vg©¼×ôùíJÎ˪b¡Õ±ól²W:ì(k]j%»ÏR3аû :¶ÖÖWQbÍbëYfÌ!ŠG$½Ïé¯Âóåš%ñ¯‹§m‚l.Ï>§a5ŽvT6+òí6ulF=§‡C;ˆÌåó¹–±sT®¥ºÔòÜÌÙ§ôÁ«Á¿m»e¬œy¬Û´îÛ…ÍW#€†íšù¿ c–žÁ ef°`“+,viÖJ)~Äq¬FËB £ô]®Ë©àð7÷‹yÌ­\vÁŽÝv½«_9g}‡dÅëô·mÓ{‘Q1WPÑ4Íb½ÙÞÕª`ž;ÐÍbÓÆ¨¿Ãø.YœpJË"1‰Óç¨Z¤;oʼnʭK™Ö©ê‰–‰$¼T«³«N —ÉJºå—-&¹ æ3^1¹›Ø/YÁø«^Ëgq;G¹ löuÌÐÀ›£4±ßØ%Àä$ð”ÊÙšgüý,Ûó€r3bs»¼zÃe°[~φÔr­GlØð2`©ê°ì;uk6q ¿ñÄíÚþ'eˉqM=«Tkfí‰ZR_é+[—^Ï`émùz5ó›6ù´­ˆñõ»c/y[ °Çr¢šøHêÅ%4nK¯ir‰Kéw2¾E¹¯yR6Îo/äí?Ëê¸zT8+â|Q’Úµ˜èÇxÚÒs‹OM×3tm\ÿ©¥Gk©“mT»Œ¾õ3熿 ˱“ëˆC)T½YP§ÌBÌØGðô.¾µ€FGR–Aàv÷k;¼Jøí“À[®o!âZ¸ïì6q•2z´Ú¥­7 ’×d§¦Î¿ÔuJ‘ä°Òêù:šôò,¯‚« ÕqýíEwú’%ñþvþ&üº•w)Ä&¯ƒ·.—­OÇë¯3ul%¹±c®­‰È‹Z¥-| ÷âE…zÚ®=]Kfþª´õvnÓ’ø¬2}Fø*¶å–Õà› :ΔÞ6=Ìa"¡„ÍW×riª­8dlrI¼E,¤bñ lt~18cñ]_;øRÖb m›(ã£\Þ*çnjb|UdùáÞתKbœ­Cl±z„½©ÕŠ).ĉJXžÚ˜}D9O¢lÁ¦cÈy†/KÕ$ÓüyYð5¢L:M³ý]Mó¥lq³ÍC Z´N‚E©Ç¼‘ÚOO,Ó6+-|-ÝêlÝ}^q{O J”Výß#ã±G­­Ô»¦ÆgÆØIZy®É!Y²1OÕ½du>%?  Dp˧Ôu×NÍ\|9ãErr#'WY“@VÀ©vðÿzÏòÒÜ=sq£_bÎÆùl^ÏñîÎáƒi0˘Øsu5öÏi瓚,<ænÝ;pݱ9¡K=%c|áà=¯S)›Ôð´°:]]o7©ÑÛ¼}»²aóѺêU Òô{Ù,&^¶_HÈÅBî·sG Åj‘YØ Ò€Ö²Çd×ü& =°ëvu=úÎ7MÄÇŽÚñ#j©´Åã'y ÁäêMM*ÏvØÈ,õ$’Ë%‹‘Å2ÿÁ¯‰Ü¨\Çyr¶ÉŸg¯^Ñhäjâ®ä!Çxûbòb¥ÅÔíd_b©F‡•îásj*וW”žz·åXY%.p¥å¹oWæDSzzsy¼à,J†ƒËf.®²‰Ó>©TL²ï[zhv·6[ã3埧m»aÒñ[ ½#qÏæNèÖ³Ú-M±p“ïweÄ`j ®Stê6w½yq50’[Ç]Ëeb¦IOú™²aéPrñakâµµlÕ[(QzZób)X€eqЊ­2Õ<¶ê‹¸ø`—ú|³QÄ}ºKf9«ö7é7ZÃÏæÚr—oœ÷ƒ¶Œ–EêרÙ,Ï„ü‡/‘ñw¡éIv ܯLÉÁjõcZðv–iël×Ñ«ìšÌYKøvذ¹<3e±l•²„ÈTž“^Ǽ¡¢ŽÆ)æYëV\E¤U°X9_/óeYjéhFlD"Ê;F^Â^skEɪBô=]iF+}W麶&jâÖÅÖ.ø¯åÿ¥:Øúûzº;Gšµ–Q©âZŸê;Ráà\Žw+‘«¶sñÑ£QÓ/c/}‚PªM§r.ò—„àòƱªk½c-¼m™ ÚÍ·¨caz‹¬ëtsQcÛs‹ØÆ7“­íz–Q䩺/,u¢aÖ—ô§ªkSeq6|†3–×vüUÚUéÓ©v"k5ukY Ô…Û6ã’Ä4~úµë]`ËY3Ç#¤$¨rxëéû ®ßÑ2ÚÇ”ll~:Ñó¹½çPÄW‡~•¼ÎÑ…‹_Ïß—mÇK.JdIByfÇË-ºÑ×h°Åç_–¼¿.\ã×ÐA@”n@^å혿Lj›ËÔ me t’ê:®%¤:·6stÖ>; çÜfé œ”‚Rs8#ÅÇJöãMI­Ñ‹ôßÿ†ÏH~ž¶Jƾsó7Â,M&çmÙR. HÉ=‚» ¼Y^¥ÙUH'²ôè;í‚cöA °@Jƒà¨OÊü ÃxôðfãÃJÈ<ïåÐGí¸eœö,䤒Ë/Ã8àž}føØ‡,v¹çǦ8Û{7Ûíµÿ ·ñ,Œ·¢ƒéŸ®þ:Á_Ð –äŸö¿ÙQÛž8ëûý‰ä{’ f‚ ÔrA+ÇÁ^~O~xùýð=d’бüÁ<ŽAêG ŸŽ~G Éýúó,…A‚ßü‚U~¡û~Ï쟟?ÇZ«Uå3ïþ_Ÿ¡y]zþCà|¯À<±ÿ+À<€#8>½é/"LjÍõ<·ð«Èãã÷ýÇçççÿÎõïLEA6ÏóïíÁ·²‡ƒíæßü¼r·Íóµoø“h*«<ÑYú.Úc0BˆÆ^v6¤‰º a!ˆ~Y½®«`¡tÁŸRßM[¿Ô^û‘»þ®]7TÔ¼GžÕ|:`õ}¥³›Æûf+;eûµ3ø{Óë/B-wT§ŒÙ°SÔÙ¥FÊ®*ý!4ìœëÿüDàž•«@P¯^}ÃŽ^ !ÌJqÓy­OIޤl/- HéOíÇ›ù±çIòàÎ:µl!‚ÃkìçlíÃ/Ëþ0ò7µo¦¼æ×ã<'–åñîC%”òσ³YÜ\ø£=™Ñ!×0¹ø¯æ±—5Í‚öƒ•'>)³8É*ÇŠÙï½f¯˜¬hƒ`ðšxI×¼]¯âõÌ—<ä¿êØØ§tšZ;=[5¢ÖÇ_¥&c'%ky +…šéòm{°ÅN8a+žúŸó¿ÔÎ[ƒÅ_j™œ‡¼=å)dw»[uzæÅåýj]ÃãÝ®g(kA­XÁäs9œäêÓ½•0«¼ÔîG›ä?¨.xîî·&oÇú=8ò÷4z®ŸÜÙ-÷È;fÑiëìø¯ŽÅL¦+L§ßg²YiiGnŒ¢*®,C*ƒ3”Õ½WSšé‘ 2d”cè“ÕдZ=̦ù9)ÇN´e eÒ¹ˆ¤ÏI(ƒœmfî(ƒô¡ëzõZ*º.«æpÿI}[Ìãªb,¾µçí‹Ê>Cض]Æ¢¾(«f3:¶VöñdM•§4óצžÇ¼ÓD¾9úÚâ¿ãöÝtØmé´<ÁàÌþáãíÞƒã׳”¼e¡ù^Ü6™ô/ø£ÇÚnRíû^6*rç©åöÛlŽÛ™žm~Œ]ß7ýLIáO3ëZvÁ…‚Aá­Ë>AÜd¯“·“ŒSÝåÐõ\«JŒRW±zöY`¬¨KI-¸kEÞXÜ„ùþ®´™ö gK·ãß(ã¼£›Ü2úÞ,ŸWmÃe1¾>ÏùQ%ËÁ¦*¸\†¥«fò´óåb›«;$u¦Pÿ…øwÎ:µ'—?–Å“Ó)=&ô­HÒ¥q ^pÓ}1œe}Fgˆ»¥c,›ßx¾–>6ïy^}ƒ=¥ë4ðv¼SWK§Æ\Æ4ø)ñ;¾Ç’¡…m©}hZÁd±¢‹×”U1VÖ„-uvŽ÷Ï£ï+_ÑlM¢ËŠ¡¼ìþeÄ¿“5ùòb ïâÏúw˜ôÝÈ­,5÷ÿç5–¹¶"VmWaÝp2›O•£>>Ñí>hØu©l?Ša×Äþ?­âœ·6É`·bûä$Ø¡×q4ðU`ñç³KÛ7fôÑËBwH褙½B¾dúß³¦g³¸ë¼Å-SÇžmÍgmìÏ‘ÆÎwÏyÇé/Æc)%X'IõÔ×¾¡6,ÊÚ$Y¹”Ââh,RE=·Šîb„tÝMMJÑÔ”@¢dæÂؽ=LJÜnšnš]'›gC¥u 9‘‰êËAmïÛp4ßI;,:é°<3—ß5>–C%bžë›Ö5lvÕt¡ÂUÜ7<{dð:èžÏõjY+Õct[ÆŸôÜ6RH ±:Ív5:? ÒËVZRОœX÷” ,mQ:˜»zVóÁ%ÎêD‰LÕŒ½[Ôdú¨°¨»]ÖØŠü±à]ŸgòÎí±Câ ;È–w : ÝÉ{>lb.øb¶£®\ÆÛ£š­VÙ×#ËÙÖ!Ãå©aï&RÝ}•&öº«ë|ù„¦Œ”³—T£lo-’Uã~a©ÍÂZzN˜½"ê©Qˆ^*4›eÚîùëˆúGßàÑwgÚ5ì.¥”Óôÿ©œ—ŒviqÚ¦k7ãŒÿ’3·6<6{T×¼}­iZöa­…{8\’øû\Ö«`¤»iuì|p{qIèþ"›ÌU#ÍxKÄØoi¾™ôÉ‘Út ? äèoY=s]»Æ,'”¼e˜ñŽwdÂO- ‰1»Î‘žÊȸ՛=c²CVÔwWpúÖÅã7ë=PËy ñã­fÁU°.Y¹³ï÷4<–ÍŠ»0L6__©=F“^lÉg=S¼Ê#™¿QwÉuÍW3¦e5=ƒcµæ9ðÙŠ—ƒÇ»„ž.òþí¡e$Ô²ï i.[m–ÈÏf¼hÙ[Ù|EIg†¢Èk‡-ÈjêhèisZ”ŽœŽ‘u€ë¢ŠŽÒÙÕæã MYh˜‰#¦—T_ÍúX¶¿6³»Ù³~X±ØìV3'ƒµ•À}ž×#%+Uº—ëB©ìY;.©»}_jy}#M<%€Ú²^Ì­¬Šã<‹žÔµŠSQÚÙëè™´[rÚÇÁû¥’”%м  È?[?òïÆS|Ž'wl±úV Øß[Ùp‡Ä^òÞØ²ÕhK&&Óg¼²b¬Ö€I/µ…Ã[® d§ ðþêèºÁ)ÆSŒŠbé UÒ ô­"(V^*”yÉËOW¢ 9F†:?™ß 6Sn+ˆ7ôUçk»™21ÝÈ]سÓyw/‡ÞëÜñun߆Ý0ÐÒ4üžágÆVü÷•]v¤µ5x(l^Q·®bhã ‡ ¥M`¥ Ý?ÒÅl7˜|_›Ò¼/£btŒOÿéölÞ"¦»ˆJô¼eµù’÷–1—±cö2oµPò¹f7–i"ÈÙÂØ¥Ÿ=ªR–cêÉ8¿3ä5<¥_éÚÜÎ;X×µ¿"[Úð›—p÷ñõ%³»i[CcOŽæ3µ‡Ž®µg5FE!ûÆöýX-›Ìø]CrÀhëªo›žO!3±Ã£ëÒç$Óµ,ÎÅ­G`ÏÆ…H«jìwÖ*UÄ–²T±\ÂGìbæq49o‡OGV_7˜Œ#©õ’ÈÄKRUÝoF pÚº¼Üu4úM.©BØÆVTX[BŒºƒ>áßçÐþ¼±¤hOø«š.£š§ãiú—”ük^ö!1^LØq^xÎïÛ6»}îâŸvL¾'!S-k/•«+d2ÈkÏVç¥,×Óg˜fÏè–pÑtÝsW«£YÕôýod©ˆÆyS%·íº&źy'HÜv­f •²Rf1ÿä¼u#‘¹ViìÑþ±^%úÅ£¶âÚ®ý¡lºörL—•!ÀßÄboÞÖ·%ñ†Ft¹Ž×ì\H-ÝÚkâR7¾²E<Êe©Ri½¦O<ÖŒs”©-=wtM‚ÖçoV‡S'”Ää_V]Ú¶ìc,ÚÅ&®÷ùo-·J4«\‡$RÌ"2¿…øc§æµ J¥Ò „PÀOþߥ¹â¼ì^§B2L,² ›0IßþnÏùÎ} yf\º¥-½\Oô'j•)kxO)b=·mÞaÙñ~RŸþmø¿Èõ5øòú°³©e¶F®顃 ‹úëaJMÛ|&1éâ°Xû͹éaq4lZvR,OFZÓÛ2¤p‰…‹1I$¶ hØ\wŠ£©3 ¨Oõ«áÊ.¶fžá„ÇãÉä ^Îg_’•]ëU·¶ÖÑjÙÔïJê¹Ììö«ã ©eᲈþñöáüý+ÙúÛñ\P뵪âvìŽg7ŸÙõ¼¦³Ž©‹·˜ÖrºM|»5|”Âïô»Öq”¶}~xêa®ÜŸ'È-¼tv$­gÚ»—yQŸËæoæêd×I‰Q†î°¦OÇÏnaóðx'žH<ƒÇ­êÃÀòÈŒä+7E!û9eޱƒÃrßìA?EW ,U‹§Üä8àƒÂüŽÈðz=EcHƒóÛ»Bá¹ùü7ùçÒÌé dä­ÜbÍ·ÿon1‹³exÝšº»}]»YU\IGV0ƒÓ+b®ØÆ,1{!NøQ kÖ>Å»X‚³"W¥ÃLÖckëÆ²¼Jf’8ÝÔ3O.€I]Ú°ÑRšj5&šT†½ˆ’jâ¬SÃ%˜«ÈÑÌX5ÙÞ.²$e­ ¯Ô3‰=ÅëXÊÆ…ç»ríš‹TE%›@f¨â¼&5b$IØðí*#³,§{†Z‘Wk7BT†Ì02ØüÙ´nÍ,„òG²ÝÇpU\^ÈQÐ$ÄBY[¤k HÞq⇆éÖaŽ{JEÞ÷»¶ï\"6ç®"û·ÌMËÔ¥¬#¿rvµºÆ#†¹û‡1M/hƒG`c.Šwð¹ &µ8ÚÃC%Õ ‰$‰%„I)àÄóÆé*B£°SÌ‹Ç-øuz-:™/^^½üƒ¬ÌË2ˆÚ7GW‰`" –Œ¼ŽK’Ó¿N¦=­¥~¶dG”¸Œ(hâHCHGGuEgÙËp:€= cDÿ†j2¯~›QËš3¾k>ÃLÔŒ®Lz;¦eXÀ~™ÇèœaUm,q*¢¼,Şє:?ãå“’<ŽOÈô¯òqË@…+ÔŸ•xÿ!Á?ìÀ~·´¼]¡ÂÈýÕ>C8e#ŸßLj<ÏÁ·¬É<ª¨äòÌ>@ˆP ÇÇãö~– Œ. §=²®x³ ÿš›¬Õg¹›óŠãÁ¤ëøžR@¼‚±òˆÊ’œ\€ObÄ8*§y.›\˜ãf‹*z‰_¨ˆˆ‰í%Bû¿¬Î×~d @äÊø‘ÔFB¨å;qø°üˆ Án ’y|¨õy!Êá 2?º“N±¼kÁâ@ìH’OžH‰A÷Gâ~=måæ4KœjŒàlÅb¶ß~üSÌB?‡Ôë(öj«ÇkûûÜ)%jQ"¼qÅ>Ùw•Ì>݆âÄr£YçUšÙEÙ•b± ˆ=ÐÊú+mÔ .Œ[)0(êbþf€¼ÝV1›r+sbqCÚècw”K©Bí;'då=¾U‰è!sÖV„†ÀQ®ÏIA˜/£¶J®g‹!nYb§^ÒÇ,•â%Þ€v­"üµtP,DIŽÑ^>‡Pe£ª"É„ˆ…«&«ÝØØÿ~8°Œ#©§r"GR+aÚQò+áC~&hÈ`ó71ÑPÄËC_úlö H*#f-i"d~ì ¨¬ZXƒÊ=²¬’È:N.ì‰Oî¤ÉbäcVFdYœ1g¥;cƒÀ’RB©(¼’8ôûŒoO~ÕˆÞiòuÐZt¯7f_|$’Çø'i‘D³ ^±¨Hݹoyi×s:¬Œ³bþ=–¸®È‹V«Ÿ|pySí/ôlU¢<;¡¤ºü­rúc(š³`‘ü¹ZpÛ}øÝ©8ôs=Zús&.œFÑô [fÛ†ˆ È®#X{/ÀfX‰< Ž.lED“ó¥Pc˜È·ßÚxý(k²žÇ€áÜË‘´JÙL¡ v•Dh¾ç ÝåçŠ^b¯üI þÆ#"8d@ÉÖNÑþDHŸÉååö宯xUÀÛEÍPF HµUeÆÀ„,¬¼s,q¯¯Ã£4ÜŸ^‡Sz¸^¨NÒŠ»Û.úåN9Z'ó`më-öºÍ×úo¿fòɕ̤Ä3G~Ótâ9f”¥³i/Oâ1©gf‚1×*®D»`¼îò^½ç¼ßÕ]ÊZ½ûFñǪYµŸß4\v‰JöGaÂë¨úþ"æÅ•Åäs6+É—C·=W“$ÒÉJ51²¿= ÊQ“ú¾H¡>úÌQ*ÅìE7låO<´tžv|ß’­øÎžOY×ÒZöê £Â:¾+Îw1U2”ŽlÛ›BIò±Ñ© (ÎÖ{ë(tyï9[ÇÕš{ŒÁiTrvp–wã‚öû±g*æÛ-’©€’h*aöl Ô¿§Æs cžh­%“­õ‡C.¸ü†—âÝ÷e§”ßtoã]›F!ä}ÏFÛwÔÀØ[6ŠúîQ¿Ñg·Úc­ÍFø’I€”Ãï¶R¦Ÿ/9«ïLö7kÙìc(TÄTÄæj_ûÓÞ¨²fðvØ_Ljñôo4ê¿X¸ ×QÂg7ïä3¦<_“fÝ ÈëØ­§¢oG‚,f¹œ“ŽgÒtMŠ©s]=¤¥)im¤m/Ÿª þ!F=›Æù] •ǽjJ–r·êåóT*j—pÇ#Tƒo~ š´¾Í¦²F=áDýS=="DcÏêÆ b8¾¡—OI™Y½»ç‹‰J³ËBêÙ\i¦9ŠFïp;{nÓ½_õ#¥hZ…v¹æíRð¶R ú®H“xÌyÓZСÁáñ¾J·n̯žÐW`­n†Ï%¹ïÓÀ½v©U„½›?â QÃ|ÕvÏ$e7û0l[O’µÍûK±©7޵ŒfXÃÜÔ³ºÆ>¬qÞ«Ka9:8Ì¥‹¶nÛņ§r:ã¨*×ÕÅ–òÞ£ã_l»&Óá-èiûþZÉ‚®¿©ñµéÏ[/7ÜY£‘ÿUXZ±RŠi°ÒÔš))çÑ}gêð×êgu ÖC “Ü5 3eß1õãÇkxœ·‘·Û:>“Mq6ä\½ŠíœZd p±¡#}üÄUcéáøHjBùíTÓI¨ƒH#R¬–Ð ~¼W/›8ßáôÎ«Š¤zªAœŠg¿·Óˆƒê? õ ¹Eõ¤é4¼Ã™ŸdÄoºí=b,n«‡²¾¿áŒlúÜZ…ë2E™±älß–åÍâ,Moí2y܉ðù|ˆÂÒÅ$S—–q›Î³ãjšM4ëZæN|.fçƒ+j|£‡Ø1:ŒpéÉì† $xÜ~yOßV—ÜÂÍ,)‡ÊÐÈâçš$}DIäÐï&ƒ³érd|AGκbì–©%}£AÚa’Ö«—÷1óθÛÙÌô¼†ZŒ¾ÝŒ*dêÐJgT‹4ÿ« æO§ì[7‰¶|&7"š/#gèZ§k £fü¥—|& °‰~û-G'qé‹rÔ…þÆ+•¯ÚêªähÓ9X²eÍMyŠèœ¬é#¨\p*Ö„”u}ùGò©b‘.â Þ÷Jk#Ķá>«mëTwSÈ9!Mæ,c05›ãŸ{Æ>7 jtuúEµa`Ïë7¶«“Ï‘Èe2O[Z•Øiaèã±åOz£õ…¤E’—Ç»‡—·È伄gÚN‰—L“‹»ˆ|{\–L<6q¿™ArѱnF=*ûÁX%“òWÔÎ Å~NÕüs×rù‰¶(±¯w+– × 6 [„¸z.DÖjZm#)^þH•K±YÆŠáÊXèÎÀý[E³ÙÒ±ðø‹y©³y7¯ì^"ÖžÞ.;ûÖ5~ö>[µä[-[ 6%qö¬}®I¡éåAS+(ôºÚ|œ%(KžÕŒ¢£Ò¬£&‡úœõ8kÇJZòŒgøh1B‰H)/Ò9ûÖ}ÅõôíµnÐktõ_'Kºäv,æSÉ9]:æßŠ©[;SDÀfàƒŠÚr±ä¬Y½~­{õ*ÖTZÌdñ±ÃÏ^³–6ŒýGä=W õá’×pwpÛ†ßõäÝïÆ Xùìm3Zv©G²â…‰¬Ò±Û4.TŠl„U%ÈM·öª:È[Øï7ùc#á_£Íûªc6=ÛÏ9=o±jx¥wîvk/—4uû—HJQÅ“ÇD¥òÇîÂe†Èê±püÓ~¥0›ÖCZÃTÕsµr›dº_ô*–Mxž,>Ås`Åç³/"¿U£¦guÛ|ÅÊ,eËô"ÂÐoViO–”t4eÌÍ”aP”£Z’5 m¹YÔžJض¶“©8éDZÊ1Â,&IðÞÎÅñ^²×ü÷VœÑk×þ­eÇW¡•ŸÄ¶su´;eß)® ÃùZëXž\Ç‹h`?©6¸s×2’=´Ê ìQÄ¥Vþ'õsGÅ:ÞwoØ<Ç.å»x»o³å@[É;vÆù›µ„Òêà§ÃeuŠYoïܶ¿l£Ó²¹û¥ÉãñÉZZݾ¨|«€ó&Ùã¼'‹igðZ¾õOV+[,!Êì˜K~/O ÏnOºhªá¥‚T·ìT÷žKA¸ÑÉ2'§6õƒ¦y ɘ`u­¦¤Yœ¦KWÆlÏVQF¶Û„ÔSp¿‰¸UXÔêO#œ•ý¼†NCˆŒrêþª†Ÿ,ÊZ_ŽÖ„ºþX=EI¡?3Ôà îg‡”õ€œ9}6$:äµrq¯.GܼV‹ùŸ­«–µÛè¼¥­ÞM_ƒ‹•5Œö&Äõ©æêî—7»¼P«ÞsWÆL·­ÑºquF"æ¿=k·³âÃß ùÐn¾»ºç<Ó¶a0Y¯ ù9&Vþì˜÷?¯ùk[ò-+0bÎßÕpæ}|Ö£#ZÁQÅÜ»”¡RÕ‹*ºöÝõcä=#|ú“Órzæ†/Jß53Â[G3ÏŽÙrøŸÅCÛõM®#ÊÔØá>D³Oe&+XšWiÙas$~Œá¾«¶œö¯â£[^m[^ç¹`6 r˜\¦M·‹ÂxëÉ.2†i°©F olšÖ9­Ë xꌤlD= ~©êæù©°‘;c&1`‘¦¤¬RÒ)µ¯ šµqÑÒ€ŒDOê:‡eÅ«ûøoùg_òÖ ê7È;F¥‰óøÿ~Ä}4ã÷M§ÆY×3•´]^§˜ Þqþ:“#š¢øÍ¢ŽÎ<~×債IïêûflfDØê×yyKTò¶ûôÙã8óxm¿-äŒ'’üW²lX~í\vÅg ˆßbî÷Ö½ì}[ÖñºÌé~õi/*B`´öæ¹u%xxÊKØ2ûȹj3æâаûö? cIËxë;‡¿föz–׊‚¾A~ÃlÓ1vèч¹cl;Ç}ïÖ·^ŠñFõ?äì~Ɉ±ä˜Üæ­´k{VB±Çé[6£g”ÁíX,3‰Ëeà‡¹Ã‘­›÷óÒ&’j‹M2@˜&#Õ“—,ÆS–¾¹¥Íš#ÒÖœ‰BÚ»®¬Æñ›ïêf©Ò|½.­*ˆ²Çƒîß¶ã ¦}JxçCÆk:»ùmu›Zχ²ûlQä1¶3ÚÄ™-ÓÊ8#à|gf+e5y¡Âb¼u‘4ð7ñÖ*&[!n•ئÈ݇Օü×Sé»OLͽòîþ»v³2–?Cʧĭ¹Gþ£³€­%³Œ‡y¡©±Š¶D䢷 ˆãÉK`ä¬Y°áíÿZX-c)n³h›£‹Ú·S+°Ý–½BÜñ¯Y’VÏ´ê+iÂAÅ"Ú°øœÓ÷ì«‘ÇÞÂK=YÛö»õ5¾øOÍX]»Xóµ*í1ò>¿CL«C±â ¾­/†çMZÉëÿKy#+»Õ¬v΀ÈälÞž„Ù‰ðÉŒõ8bþºñ¹JÎņñ–ëb,uÊv'ydö1•µ;ºÍm³ °\ÌÊ‚*Re1v’½U*Á² ..vOo±—|wõ-ŠòFÿ.ƒ[TÌàj]Õìlúæ[/v¢©>Ó¬åæ|N9]„Øïgc•q™*sOZ¾C—ŽèŠ/hµZZ|¬ØhÇâ©© !M,«þª.Û¿œY7Z=SyX›jÖqwahÓµöâ±]¹õ?“ÃoM~;cv6ïYÞl)©5s‘y+&à÷Æm8¼–N»¡ÿK§¹ƒ»¬Zxº73šÊ–·³ýWË×pÙ=_ËU³Yo(x³&·f·ªdjëž+]cy×÷Xsû;8‰íärGÕòME0ï~ÔÖ©%œ»˜ëSYwæ¼ý»i@Êæ|‡²buïãv· ˜»zfU±Ù-g9j™kÉt½ì}ÂÆB)ªå4ü‚ÕzÅ©Ë(ø*zoÖêÕ,©â-Û/½e¢Îd±ú¤ÒÑÇGoŒÀ`6T·>Zì•éF·q9Ê´%DnqùéqñFI¶\4NYQçµôå ÓbÆLšb62w,°3mÝp+X þJqkPDi¯IXíJ;ñ êx¬¬QðJä6Ï-ÙØSKð®[h“3.'=®®×•§^çœõŸ c¨ÑšxëS_ÇêÝñ‡Ôf­Mp(/¿cü½sÍ'Î:ûxî¾ÿ¾»…äÒò:ÞfZ>=¥‚±åœTPRy‚ËQ–Û/ˆåÎÚÒmÿJÌå1{ÕLOøc÷^>Ï}jé4ië;N.<´šVO–¯4”Kdlí[½¢d5Ýe.žÅßݱxýžÀVŸß—Û0KÃã;õCkLÛ0ºåã­—³ÇšÔpûýLuªY“£ ãwÇø÷[Ë q²Í[=Hæò”¬eIJSÖÚ咽迦¾HÓÔÏjÔµ"ß©ÀtôÕ—jçÛ¿ Ñ®°—á!ÔA:#$Kj±M_l¯s†'‹|eäÍ/èÏé§Å¸*~BÐwµÚ¼M_ÉPà3•*ï:Ö¹c;·åDƒb–{ñc %¤™!žV5%C‡e´D‰ lš_Õ–~­ª)îù¼¶#}ÀfNgž)ô¹ CrÍMâûºµ«› ¹ë`(`¡Öìn?a‹Âä6;w6{kæ2rCy®÷‚üö¾cÉì¸ì¦¡—ñöcWÃⳓaö+¢ËC€ÌLG1ŠW3Ð5’I9– Ð…’YÉRâÏ­hvì¾ÃOj\vE60éOŒ1ºì’í='}Û³^9¡cdšü._+\±™ÈØÁ›YÖrø{U¤oÌúiœœ æõ´á(°É!2bI?¥g¶-ÊëȰüE꿇„§‘:²¤í¾³´}¥?ÖN“sËÿÍm§iÀ¶]ŸÇ™|…xkí›vy±U½JåüþR][[6o…ÃÒÕ°˜ñJÂâkÌò¼Ï&â¾³µ£³c´)¼Í²lî‹gJ«°CŸ­’ÂîÛÁöìK¹að¶3ø­s_Ø-y²Ã[­#à,íxƒB•˜ö±¬É_^vÏ}My+!»à0ÚRî#‘Õ±Õ,]ÌTlæW?˜ÛçÔm`¾ÞiR–.²Ëh³3@•ßÜtî¬=ñ÷Öž+tl•Üv8±ºNC¬yvKY x± my¯6y“ÀZþÏßl§ß¼½Ý+ŽWŒk§-·/À¾ªcÊtJ/Ä9¡Œ¢ZÉŒ“/NJß5~hâØË]­G•Òb…X Ys]8¬ï{×ü_¿áüÑ㼆r×—¶½SVÊd/ãó{÷žÏ®:öÓ¤¶séga²úóçÒCöyrU*Íe£ÀQ¥ŽT†8çrÒþ¢myãê"Þ×’p=·°ù7oñÕ½/?G^¯ØðŸH?F¸ßÅrL<ôrÜRù{]ó^"¾;4ç—öóXMm`š7UÈ}_ù:ÖããêZçŒë}·‘—S¿‡Ó¶ Í:Y»˜†¥ûä(eëË%syO®/ ‘hb¢®©,WÕ‘ðßu¯7¶~æ¡K&0ºöÆòåoÞˆV|fß½êµ<ƒ”ñÕÚ+ÚZ»…«ç4\®×<¶''¸ãÒfVKqGv„yMsäióZľa3)9\j…Z;•N/Û„œµôzue¥ éé@:JJR¨UÊ\qT¿å——µj[˜K/¸ù~¯’-e¼ÿ¹_]Ý¿¦â(Ý¥¾øË áÌv#ë‹X¯¦Ã¹fñ¸©+66|¤—­lXûµ®-G”-}SyS ²mó>:Å[Ö5mÏ4r50ùÊ{6«âüõ-¦KV¥…£ÌÊ,H™<e‘2.‚|c¼eKHÞ&ú¤Äy·i8}oSØiêׯÝ&³¹d#Ó.Ú&[†Ë‹´ãëäŒÚì‚2Ú×f±íXc4éiò’œt^o˜%)ôFTnM]æ›]ýö¬ðò—1:Ÿ#Ié¨È 7"=-nöÎ<Ö³ õO‡Ïe5ÜüðÌi¸ çÉYM dÿ\䝿r[ÁÔ}W ·_¯±ávlî†dع®â3ÛGX‡·ŸÕs5R(‘YÑ<Á®fsRš)h÷®ÅsÈŸÐw+˾å(çwˆ3{røÛdBgðy‡Hi {3¬Òj±\¡‹Š‹@$•J_¨Ÿ+é˜ ïš6]—°x×õ+äßñ†3Qj{$zΡ·Å«ÐÎ`öZ¶æ±šÙ"Wûû5nU¯åZ£Ì£çÓ–§Ö.b÷ôìv7Ãùëy½§ ï©Ço9ŒÅbršïúo3´Q—/btŠ•¸qøIÄôÇ\·Qa’E™Ê‰C”ë©ó|ÆWN›Ü´NÙ§féà9 CCFf.E¬TJ Ûl‹OÏ5ß«y$Þ¶ ß`ò´74ýkÁ<;‡~’ ÛðÚÙeÝioxt¾ø½³c8cƒÄìsí+•›RýãÅg7 yx¤ï¨/ù#;çÉ7ÿ®0Päõ/ é?êÝGwÍá¶£eËy%ÊŠPS›WûKùwþ–ù˜ÃeÛ!õ¡ƒ¯{9Ó²5ìÒÁ…3ÚM5MâÆÖb=o'AXÉ,kÿNºX—ig‹"á+/ ±ÿT^I[k&CÄÔ3úwŽwm+ÅK˜Š¦ëã½ÛÈwŽÍ;Iý:„Õuí9a¬ðÍ$v]šºƒ9„3ur-ÓyYޤY!9J2ˆ¸nM-U—rø6kF&‘§ ‘.‘$Û9³9¥™oês'¶b°øL—™°8›ù¼f/Ì,»þJýA ^pÐÒŽoÃÐe³ùeÁ¥Óý^Øü~ÚÝ¬ØÆf6£z)“À:o–õ=†ŸúËaòŽg{_ßèfäòÿŸÝ!‚Ö¿ä{uœoNhe5éK‘ÒÕ„Îo_RGKÒ’é#,b•HT¬¼Þ,x3‡780ù:Šd1=Q§ªÝ›J­ª©v‡õŸywSO%lz´~SÖ¶¬M"MF½"l+ƒÙ¦ŸÌ´,y¾Oca¹KmÖ'ñõ¬«Wh«s‹„ûÚ¾“-σðßQ8¯(h?êêþYƒZ&Ågè]ØkÖñî/\]^(x±³6õÍ„ÍÒ­"DºFpÇÉ’´FÿªÖñòÊÞAó§ux¾œ¶©ic¢Ö6mhò’±Øù1’_Ì^Æk__ÕuÛ9+eÅÖµ°fivØëÅbU…¼ð,mfXÏh_R9ý»Ìqø*ßæÅíúõ,¦GÉV—aÅÛ×5lf3)’ƯôË0Ìϱ¦^ÑÄK­K¼õ%¹–÷µ)§†—- p޾¼gHL‹ŒÙ1H†@È+Œ<,§ÌKF]Z:2„¡(²QF>•P3e•½a®-ïD`¤*õ&ÂÄBûLÌfXÙˆd1²ÊfágQ-é½ÿUXü1äÖ`ÿþ>¼´Þá˜É×ÜØ¥gCð"ICóîG,Jå‚~ ráU¢i!wê\f Ñ1R’Kð@/ÔôœqÖÌCмÈ9ôßÿ‡!)â?$BijAçÏ*ÅÖDlá`#@8"2¸K“Â|q³—Ãk%Zߤ¥½¼QWÅŸ :þÄì§ó «þ»5Ç@X(*ü*ðJ !”ò~Hå@žÀ‚ãüZ—ìWcÕA%G©<Iá8^9 òT~Àô"ñÉ ¬Y!þ{ñÏ^Àü_Ђxø<‚=äu=‰äžDl9ÿ<1úçû¾ #üñϯ>Ÿöã§æ¯çݬy¯·Ó†öJuQùHÀ§åÈTÿíx? Çv#äƒÈõïE2„r8!K…ˆgn9ù „û³ý¼‚={Õñ0~gÙÿ”ð×ýý¸§öãšþyWþ!¾(°ÌA“é+~‚4(Z6éäŠr±*>y…iS‡@ç™út¾—އwÎyX¾™Üî‘…Ð.B“"Wƒ†Éå³4­DŽ2l½¥*[í§®¨ZÌié Ïhçþ ~ +'_oégÈ&_Í_¢³¬G±áФšõœ/–u3æ¶ŸkòŽ/iÛ·¾ß“JUeÚïm>Ûü% LŽ2•x±õ(`µ-×=w^šÂ.f2®!y­I¶&?r"C+É”.L|J 1«ûvK3\<Ô~@ô{º®\³²Éc…<#Eí!Iºö–R¨ !I ü¸Ç–åå>©hÁ—S5K-ÚfÛÎÙ·€këFj$S¦î¬é4ô«¾!}§ÃØMçiÌí²fsxM‚ÏŽ*dèMƒŒþ»Í[)R»Æðœ­|Œˆýõj¯Sš÷#–AØC÷>‡|oœ­—M›lݶ Îsä¬S3zÅ4›&þQò'…¼£±Zš­J±C‡bð6”¨Æ¿ÃkîŒáƒ •^ÓËK0nUÙÑDl±ôåÀyIcf<É_Ÿ¸.ZÀþ7_G=—ìhªL}̱ÈÜÛP,HU",Å„wucÿÄÖ(dV «Êrúš¬õ4¢Ïy?óJâÚ¯¥ý ÁÁ‡5­‘5Žb} (ºÉ¿|Ó añödÞ«ù Ä×—1WIÜ4X¢¬Ê(¾qšœ¥©+ ïÀõ#޳‡<,â8Úe êÖþ޼e«íú–ÙŒ{QA©lÎÛW &XŸ)–Ûµ5œ6»’¿¸ÙÄÉ´¾"¼v£É¾§B 6O/ŽÆ_»ÿQ…áÇ_Ûr 2”  pAá]¡%Œ*²~q*‡‘? A%ìpÊè¬ ó;Mܯ²ƒ#:ѧܬm!Oåqb8þÔ³ªjòœ®²3Ҍ޲L›$>ŸWeº¸æµádu$ `ºôÝú¯þÑþ‹1zñËéYÍ«?kÁTr~ ±Ð>î á_Ä:Î+¯¶ã”ŒxoJõTC?C(ø[.}» ÿD¤¸>¼ýL\ðAQ>;òŠÌ‚nRMJ²tjS‚¶³"s~—'ÊéJ4bt!ܪ‘ÙAE«öâ·_Y„¢êIçÔD{x+>K¾+Fóô³ãO!kþd×3Òì žkÚ±Û†{!R﷔׳˜ú5±ÐM«ZeíR ¨ÕJ÷)LÏ_'NIbµÛ±ONƒéçKÙ|qæ¿Y·œ\Ÿó6¶ÂÕkh¶êÚÈxïÇ^6/†œÇÕ `¤†i¢y$³c)IUCÄDîý4i° 2¿fe‰Ð¿R5@Ê{€]ƒr,þ*$˜«:´¯Ë&nÊä@…cOn,Ô±äá»ä{ÎrK6“—·7<-+%ë,m"L³G+·ãï¥EØ,ldìedµ•“1.!uì­¬.NYñ¥¸+ëÚµLe:ýÍ:×ÙÝÃPA$¯-¬ÊÛ6§b¶…¢z‰º¤%„.;W =˜qÚÔ™ðÚTÄžÙã«™¨*òrJÄîPìB‘ïööåç»1jéÊOáü’’ŽŒ7EÚ¶6χ.LpcÌóŽ£R»§k//v·¼oÇ4u¯¢ŒöçÍ'›®ÁþŠÃxr—Š|o£•­°w%ˆòå#bv(¤½ERÖ:…jÒUÏÅzlÕÖŽ+ªÆÊÓ…ï£Ý&þ°úÄ»,õ—%“Ùr» uô® ýí–Æ²wõZ<Èé‰=?™'$§/QùC¹aA[å®|ï59 gÓùcUŠÇwÕ«é›á#¯†Ãã±ULÍO­­÷’س`V¥ D¢Ý™I±4®"YmHí÷V$æÂ2§+é] «C+DËüù1Æò‘™%`:˜^_Ï‹Cƒ[”ŽÕ@fbÞµ0JapVRO^Y¤RÉ p#hä$ wìÜ¿1´aê'i¯£+ ¬ªˆˆãøe>Ù¡DR{G4lhÂG»UÙἨ±!IéšÜé0×Þþ¤~ʲ•ìúƒjØÍßžþÔXü0 2 6kw}Çûñ>GäÍe¹T©prÅT˜N;¼ryÇ,±±œÃÚྷ'ë¨K%k¬£ŸÀFв‚¡£fç²HeRzBëшƒÅ:®Ç–s Bˆ²4d,Áˆïí6dV1㊥´,T[=)ÈY8êêC4qm»¸i{ß3) «í¡ïx•È*tìV å.IÜej”¶!œw]ó{pÌt”EÆý/`^õ¶\xÛ‰ðù;\eW’ ƒ8AÙMqÜ‚AdXÔ‚äÇËÆê¬yCQÖ÷At€)1!N9ápü2<†#ªrç$³• INä{r8‰ü0[Ô–àI+2ô”#ü$'Ö‘©#–¬²’¨=¾:¡bIPËÈödˆþI^1ïÌ“ð?…r¦e"¾¦ØÅŸ¿Ž#Ïó uÖñ ÚÛ½«¾+ÆÜXOù£­] ¼Ä†Eæ$áÀ*€d´œ·¶ެ½eÄsåmo©&‹W`Ee:€:7=ÂÈÜļ€LêËúàú¯GÚO¶ªe-ƒñü œº3b>í•L¶›¬µC ,¡öŒH²;Î\örÈxu^9LSt'h¢‡¤Ëü½½4~ÊøÔ6î[’Ï˶߿aà?×ÇäOþÛ –¥Ÿ9{ña?æ®´Ooo$=° »D«îqØ0nH«IüVaVVf*yôÁÞ7\Å£V„sŽß½ ž&U+FÊY[•öä=ñ”ŽCϨåÞ2=ïÀr"ê²#LÑ~2¬,!‹I¨âPóH²@7ShÔ`8vVYrÇ圀³1ãª\ˆXGÚæR Ú|‡/§8L'ÕcÕ!ÖÆ3úöïÙ'ÎëN‹])µm|Û‚®ü׎1ÛñíK\ÊYܖ剈YÏõ!홣ˆûÂýäì‚ÅL§Û,É’Oq9cc¼ HÆ9!æR …þ¥Y·!eõ $Kª×Ä ø˜VXbtþHƒ¹jÿÜ÷ÃE‘1#ÆNŠÑŽVHG š6BÊ¡Š9I‡åíwüåžV ^ÓIZ!ìõ']g’©bðä¯w|¼f=T%×s©{aÎ|ßm¸3fe Ñ—=rÆ6 Ô° ¼ÁHeà#CÚ´hÖIè2T©dŠ5t`Of* rà’ ío—^cºßøú~!]äxŒ†G,јœ´kðPpB"±P"~?§¿ýdŒË" …ì\/¸Œ½øn@ ïu=CÇfÊH¢Õ‡âzÈÐ’Þ Âñ(¶~[ǹ‘ój8V(ÿW›,ÆÿoóÍñ]}“î)N¬ìqéÔÈïÀn®ä,RŽ´¼Ô‰}‰;ú7†£Ìc>H{µÀ`Ëÿl¨HÜû0æBáºú(íÔª:†`ärâV.êÀFÓø…Â1‡ìÿœ7Ü£kˆr4˜„+÷õš(W¼p÷vR¬Ê«ÜŸ“ÄJÄd“†nãÔ™p˜†bžÉOéW¿ÜñÁ‚uDݰîfÎýŸôÎx14ëšÊ³ôB†IÅý>£©ó5#‡Âp„H’éÊ$H±+c¹œ`§‰=0eÌÎ2•uSd%b^k¾1ŽîÖóÈhDçŽñþd—B¯kE}þ<]L®î{cnß³;l4Ò{tqû?¿¾ØÉmÚ”9 Óemä(±Ðå"BÎbiX¥ô©¸àÎG ŒÕuº¸%êú^üÇù¬7–4…w¾G ¸f«4»7b ±ahµ‰ Íõx®#V&0Ù›é—=‘úiÒ|”»¦TÈb<Ù«ù;40O°VÔ`×1¾EÙwkZι<éf)Z¯[7[D4k¶R­¹ýøqSÖ™Ø|ú«»^ þ.¿þ›ÀÚÅm8í»Y—È™}Då2»5ŠÍ6ñ‘Ùr_”rYSV¼•úõëcótQѵ܂GÝMn–´npät˜ü½1GL¤°]bʶûÖZláHIé—1¨K©õuzHž¢ØÈBŒö¶RðOƒücàÌþåfŽý¥äò‰¥aµ¼Æ†C¯¨jô·¡3e0³ly1®E%×·V:2 fV«k¸ü|q9PÆøÓé3™Æl8¬‘AôŒ67=ŒØÎãe´Jlåg8 PÝŸn±¯f/ÐÉØœà*å+ß³‡µ#Ç E$1EYÿ£\…Ü®o!Ò²–3yÿ%å³ã!{1®g6õÚgñuÝarû&; “–¾ý »4¶ñÙ\yÌŒ Õ^•¬”A©}ùŸSËê»~_3â¿%O©Û’ü6Û®ä¢ÂækÙ¿—±}Ÿ`£¬UÂl[ šOþ¢ÿMã±9é!™iTŽe†V©¦COølzaêÓ¾©™¥¹±¦‹­ƒ¿ ºzŒ¦ói)Q†!x1J$ÃG…Ü·¿‡>œü—»Ð¿¾b´}“u½Â]wßÞ†K+ŒÔ¯å³:Þf®³Ó‡)_>ѹ‹Í}Ê•êgòƒ4øk¯$b§†þü„ÄÖ««i{6MÆÐÒ°×5¬õ¹dÖ±úÞB|¥-f¾S\Î Øih^ž{sUûØ®N’ËiìXª ã‹ú'ÎããÅ´¹/ÙÍPWþ¤µv ”°·|©ªg4œ&Gúbì5µSÈX¼v¸‘¥Y¥ñæ±I2PÖÚ*ÁE_ßO~+ó„ó71yHõÜŽ½ìµlKI¶96=£@Â`°SPÇÍ×OVÖq{>3'¥}s w™¬^9l®Rõ°Ñ1õêÄÖø|ëfs¦ðCjÝ­mÞšªe‘½.jW"u81}.jŠgØâAÎéN¹?å4˜ÆÿNÛ—¬PÅV‡m¥OÇ{k †šàó8Ì\Àµ.qÅAc(¹gžZù%ƒÇ,†%Ö·¦,Gõ€Û"££èe>”ü}®ãµ¹ë.±³ÛÚjC³Ð± M6S35ü»D0÷rM&.*ò^ÊÁf{‰+‡~áô»Üvo*î·&¡>˸yÅ[Ž«yóû|5°x¿b|w¿C-¡j¾Õëvtü¼Øë?Óò5éÿP«·f7ì•á3ôO½®€­ä-",U|>+µTŽžÁìç¼™ªl{U+9ˆaÃb±Ì&ÙbÆRAsö|u±˜ ,ÇŸV<É©„£G¦Q2$‚ {D¬k<]‘Ó!×c$¤“BJ'^ãk+.±ß×’l};é>Oµ±n^>Îå<™²j‰µl—¨lÛ]Šú½ V45ÏìRÐËAÅíaÆU¨›v11Ìö~Õ$í;GúpÁíîšDzF7m›_­Ÿ‰iî2ÇjãíY|f{ºÛI(gv¯.†¥[Çé c˜Çª[‰rT'¹¼6l}jÉ3Q4FÉþ'O^ãÈijCæ¬2ÅÊM^{ªç»ÂDÑžšÔ¡(ƒ+WªÁc½WÛo<\í“@ðFVlæuÄøâÓî¾HÅí›gÍã)\ÏygªëŒf@Ák1NÛmt4ܧc(ž\LŒ…Êå免v®µà¬†>†™N·òØÝ#=%ÊÊg±ÙQ¬ìÛm ¾«'\t9y¥M—²g5á ı^ ¥œ]jðdž±ZS{è‡yÉæô½«/ä:Ù݆l.Z×–¤­¶f5L~KÈ[>ìûŽ{{À¬šß{/„¶ O‡õ,Ö?¬ë”ÈIBŒÉþ÷L>Çû¦•ñµ\öIòâò±ç08­ûpÃ}ExoÍšüûo…¿‘¯B,޶MbÆZzw-k¹ž+QÅý=­:Ç[™“¨Ëá¥QÕ²œDjë(ç½VãŽF—LCšK·vº»¬tò}K1£xûÀÞ1½zhÓµ¬žãºõ%µ½XÊästp2Y‰µ\í;JÂã°/fZPáp¢­*óJØìšZËÀ#MÃLú=ñc®m:.‘òºeµ\u—vÍÕµ_5”ÄÓʎ׶KPjUrÌŽœ–ð0ÔÈœšÐ«ÔA"WúÿCF›tÆí;'‘qwªÚû‰²¸]_nØu,.«eüóä3É>©ZïŽ3×öò 8œ+w4ì‘Ìa>ôMwj¬Õf?©ÿ¦Ÿ'ù£yÁîZ>í«`îêøZgÇÉ•Øqyomõ2‹kjÙ0Øœ·±c¶ÃäaÒû åÊ6-=Œ¶*$¹F½¯FN¬´%\„O—«éé±êXNQë5Mìì!…„tãªW2¤ã&r'Y+§lÕ­_¿œªyÄJ)Âk¸ý‹Äþõ\æ{/‰Öô}MöüÞWvËÉ™±»gὄ;*6ÏKŸÌ˳äò{öhëy¬ ÞäV ž:Òþš2Ú¤·´­7UÅ빬¾ 9–Ãgi[ÀÙMKÊd† lþ5u&§g˜ÌäErœUµrÿ½¶kHª¿‘üu¾æ¶Ÿ ù[IÿGGä_×ò.)õíË!°WѶœ?–õí;µÓþ»†ÅåsìÖôº7µ«'ñä«_¿&EªÌ±+A{ßÓ·w‰nÛÊnÞ/Ëäw­[¯îö­>ÛB®µO ä Fã‹Æè•ñX æÏ׺ðÇ5±B·zÜ˱¤GÜY8ºZ’”9Î4DŒt£˜Ô[gê¹uaP^qÁ„‰Â¹©A¹[ó1b £§1Z{x2~5ú8ÅRÃèù zDPç·éµ\^*óf±r=ó#‹Ùצ¹ÚÆS“aâeÄÍa5ø±ª±ã©G<»õ;éK¿?‘55ñŽ¿>ät¥Ø(íáðšíšøêµòºæs?c‡Ë\Åá Žþ;­‘بc]d{Va· Õ[#ôCäL†O/f¶Ù¥ëØ¥òmMŸ[À ù­…0ø»:þw—ÈkÙ‰ôü^[“³V­Ì³“lÝ|t•¬Õ¹²ÖvãRúIÙjG¥Ë¹Ÿ,:M7 »©Ÿ³€ØWÇþóŠ1»þVž½Akî[6ÓäÜNÛ±™ëÜ8ëx~×/~ܘ÷—>œõº†? „=E(=5Y£ìxÀ^8»R]-ó’—fÖ¶Îz¨ÿVoÿBý-.[9ä‰éø¾[“eîã3ÙÛ[ªÝ×âÙstÖ•ãgk?cR‡`ËcÞ8­]LDvnP`4%}ÿKx¿xà „ÊcqšV€ÑÚ¹G\Êä¶KŽé6~,D7 Ãä6<îK­iêa1iYžÃá0•hW†Ôµ)Ȭõ!ô?³AŠÕ+a²ž:ûý{Jñμ-V¿²é¶èmš¾ƒKRÛ7ªöWNØñùI¶ÐرÀÏbÎ2`,]Æ]$¬£õ'ôÙ¿y«Æú¾ƒ‚Þ5lDÕ·±·©æ«®6p·Qùº’øqób‰_\™|ÜM³\WÓ |¸œÜˆÉ©,Ž˜„N›-ïB&UíÄ»'>šn‹ÚcÄv*]×cÌê³dh‹û[uŠö·ÜöBŠåRý)s¨Ô³•ÈÍ"YÅKR¤”ßJ*åc,u¤Z–Õäì>µ¯Ïª}7d,OœÚ0Ö3ù øëô+ÑÙäÈ3G°›¼¸ùr4­V³Ÿ9èùIVåI£WF?E[e½s2—¶ý.†õ°íŽÓœÏá)ç.=ˆ¶]{OÆ®¨Ù»Xh²wð³ÙÕíAžhÊXÁå^L}k!=e}â¾›7ðgÔ¯Œ¯Mâíkcú€ÉÝ¿Š§£ÖÙmhšWÝk:ö¥+þ˜¼Äa'±ÐÃJmBd†{Y`êÊQ¿‡iÀ©K©‡R½ £Ú!. »}¸3èŒn<Þ¤ÒQŠ2bWTzœekÅg(q-áüoà?­óŒÀišzy_§q2¹¼Œ6¶¼eÚ%]ZŒîvÔØª^ô'gŒµ%§ãÚ–EŒ‘ÚõO¦ÌýõͺX¯áì&T‹o92Øô£_…GÇe)æ0–ªµ 㢯4Ùš7R8#ébá’hÉOžgòÆ?Ñ{ÀU&‹F³ã»RàòMÌPÂë™ øì­Ã 3š>&íÝÇf‹WÇWS«4Ä-Áéµ–úQò ÆápøMƒÄWÔv¤Ø*íÖbÛ(ù_Ê8ëm²ì~JÜÓKÎÑÖ¶Ñcd½„Äïe±´1Ò=¼<êïJz½=ølg7nš6ÒÇ£§Ò²T§ë”âzco83$U…]—T]äíÄõ¨hŸOMµaªi:N©.oÇx<KWÊa[!g‹ÃäoœÆ\¤ËÚ¥xC–c_º[v±™7išÇrÑúgèúÏÒFݸïÐiú~‡.ÛàýêÞsuLrâ·o"ç¶%\±íŒ´xí¹óÛÞ;ܞõº¹éï²mØüxœ{p0¿O>Ý<3¯ÜÇäv;'šLÆ |{c©äkÚÈ]Ædr •Ãã®\Žœ—bh£¥L¾DÖå¡N¢*Õ~Œ3ž1©ƒ½ãß#ÚÙsï¯ëO¹Gå<îW#†ØwgÊÐùªæOV·‚ÔãÈkšöÍäìÇ‘r×aË ÖSígRFDã ªCJqøt5'«L°:HD´zÔ.êŽ é³Õ‹Í¡éŽœºšssW4C‹rw§ÖÿŸú<Ö¶,c‡B‹iÀAªC¯ÉI-Þ]>¶·“|VŸ{•²ÒŽ-K.ªfÇÒZ÷¡³'¹vxÓ@ñŽìøñðÛÎ '±æ'òÎͯ߭˜ÇЗəÿ2mnûÆÏ'iq¹s5úðÒÁÃf/z^;­E$C¸ô®ïÐîïW/ªæ6=ÇÄÙ‡ƒgÏí½*˜ÍÉâ–|ß—®yB¶3QLž³_î¨S¯làž=˜âeŽÚM]éKØ?eúIÚä¿-:['c×sy̼žJZ›M¯DÇi_S^búƒÄÓñ¤°£^Æ{åj>>Þd¹”ÂAF¾­^|eñ¶bh”uÉšßÃDˆÀ`ÂQÆ]M`»éÈ!uƒƒ/’ÀÓüc“ªu!$Ù±½nâÆ¼µÄ•›Î}&à/g¥Î&‰,»Ô·Å”«fÎS·döÉ—{bÌA‘ÍËŠ+u«A¯VxTÛahÈÅï¨`~Ÿu홳:v;IÔ÷ÌÞ¹k;n˜ËMO*šÌÓAs%j\5Ì´Ø,i¤Y¼t*ÐÈY’½|ÝÓn“$Í[±¿Eû6Ç~.ÓqûŽ%Ëè¾*Ðt|µìŽ'cjYý³XÏßÍç÷'û|¹ %ÎÖ¸"¬nÕ‡'<èÖòbá?+ôE°e¶œÆW%³é»¿•8ü¯³³ÝÝfhst¼y_B‡cVÃ뵩[ÔlÔ†Ow8›Ì]ÄÎhC¬Û»IK‡SšŒ£/áÚsDœP‰J•Š[c…7mÃG‡*ÆKÎH·¥z¢‚œã²›ö´zw| ”ÈÜò«èÙ¬†K`ÎäoíXk—²õ¥Úm».ÇvÖ.ÞBÆ+´X•Šçe“ ÊYfD«#,ž›ûÒ_‚¶JúÍ£cñx-im¦îc5%]’FÂÛÂÁ†È\±™“)Ã׫nW£ŽÂä(cõÞ¢‰$‚ú~ñ’—˜ñºgãQ"Æ™VÐs™*+¦1 k)oýÇYÖJ>ò1+Y;CÈHnŠcäôLÍøB_â;|i9ªVù%ÑÒÁÇî·-Ü,jV5Vv臩3…ž&"<_pݤãÔü7.ú¾F™$.£CµÖÛ5ôî_×ÕudtÝZ•¶9;÷ß~Ö|s¢^Äáð5~Ö †ÉkXL\µg¹OÊÔŽ¦W ^;V$š:—*D]«$®ÐÇMÉ4h}Õ¼Qã]å|Ž©¥`5ìŒ8ɰÐÛÇ%ÙrÓ²yKY»ûY[ö­Þ¾·r–íß’k–,YÊ´Å'ž8bŽ(ß§ç†!ACËÊû¬Äû°CØÕ›Ÿä“âÏTaÎä¢ü?¶ýÒBd*U}…‰ƒXY¤ajqÖZÓ¤IUZ''Ðt´‰up%#.šJª º£nçfšá]MDc×.•¾ž¥ß—7]­àßTN&.ŸßWeU(á;ÉÀâ4€Ÿá˜ú ‡«çÓwþ ñO’âTŠ6ƒÏÞVI8VìîÙÂÅÙ9fY\\¹æF%Ïúr„l½Yä%Ðã,ÊáAb`ªò˜ù£°öšFéÿYYüWå~ÝÃ'ÔO•W©dég0®‘Äü %@áÜ–à…RÀëƒñ¢ã ­Ô§—Ò}ïs}ïºñ×øRÞ¸,®vpõÇjº¯µûUqÐòAø,T(à(K°<‚I?‚ÿÿZJC`Ààv$…AòyãåÇ'Á'Ž@çÖTŽB=If'ö€H~_—òI#÷è9õ'¨'üŽù¤òPä;ÈùõçÿÏ÷ýøê¹ß=¾×þaúpÖÉïÉfP;á¿Èä’Hç°á|üŽ >õ쀰Døˆû\öççàªþ‰ç·Èì¿ùz÷­ZhD;ì¾?ï÷ýꪃO’¼ŸøãœŸP Çþ >)ïŸÿ%ï!·äÂäï´Dj#çù˜7f’9C‚‰¢hå2ÊcûO»ÇrD¬ ÆäôRe$¥¹Cdq-È QgPyõýAO¯ï º‡n>˜|”^^ˆ‚=ëyhÿ¸3÷omÀnÌŠPú”¥1´jÝ•’ì/rKp回ðîT/ZÊXynO¯Cð!ü Ñn¶§†8}ÌöóÇâ¶sóò`>S8j¾ÿ|_ ŠÊ£‚…ÈöÃôb(bƱÍÇ^a$­N—…à˜¹~Fæ8ÕU¸a'Nû²•ìq|w•S™šÀ[\ȇNÜÂ~D¨¸n²u h¸àË׿ò~öú– ¡„ ì¡¥”8`ßõ$ª…ào;€Œ„ÔSÙ‡=jvsYû5ö½¶7öã›~žž×–¶w·?§?´‘ŠŽåÚDY䕈V?(†FN¢Òc‹…’‚£³r†±L³7 ³FU{–Q *)²) ¤ûu›ø²H§ï¹hÑ‚³~"1#HænÈGhÏsÖ¸Šœçà‘é&âs%$`¾èK¯rUxu êꣿ²K±â_qÄÐM¦ú¢íK𤳹Y?ñ‹8.Bœ‘ÈÙmöß5^ô A-ŸqU*ĊϧˆYû±ôýÅpJ“W©XÁ*«"VOÅãr§ñIz³#{ŒÑ•%“íKòµÚ[0)µBŸE?–ÉŽVïÊ1"hQÃ0!‚‚x$ž`¶.Äú8Ñ…î' ¯[û#fâE‹€ ue k/#íì±6™!“ŸM¨Œ³!ÙÅÛùpÕxþÖ/JÕk¿ÚóŒð/E#¯b¬ÅQ 1™däbß̯Ç^§ ÈƦ W©ÁB Œ7»ÕOÿÍ•ÑLnÜDŒ È=⣽røÞK²0ÝAîÏ7V_€ øUPª½™U@á‡Í–^JMÉ„{mÉôªL‘FÎæýÙ¤`8PÚC€$g´‘ÿOKó!…¾7¤É—Óµãü®Ü3’(gò¸Ýœy?~üXÖ4†»ØôUê ±CÕ•U‹³I]bàµ5ìßlßÅk´@Yù„å¤uI^Hù– ¡˜$’0 ©0S˜YÀÈ)$EÝ»1Ü‚G¬Â¡$ íð9<°`Îp{¯o„^ç´¿&¼åýÿÂEôý^¯¥bª¶ïß.áTq2´PW×6E¹oÁx¿|¥˜#,à`9DJ}È’býÖuWâ’6I$˜,÷ h'2I,—æ%»caT±ë*ñ¯¸^U i½¾`œ(¦â´¯Á$ù·_“~G¬²2ûd°$,<èà³DÜ}Ùþ(ÔÚúÌSÚŒ*’Ý?¶ISùžàuç¨"IH í¬fëê­I8PD ý—Ï¿`³9¾Eowéî»víû‚ï<3,o2H“Æà ¬‘+f çÜõj!š*¬Vâ3²ô&+Æí K÷+8_lBJ­ŽC =ؤ÷óaùæc d‘ dŸ»DªŠO¶ÅT8êy=ÕX æ5éå唈­uV„ª¼Ö‡ˆÕU‹wRüu Å•¾:¨gI/÷R°>Ý?9ÒKeL]ß妷{Õ7ïà 걲‘(*;y÷{^÷ž0kHUOÝÌ¿‘:C’{¡®Á¢[ ¼€Ì«°LjŸp¨}–9(sÐ+´}\ö@‘×uCð#>êÕ÷ ½ô2EöÊ‘Lö‘V‘/ÔÍUͽsö1ñëxÒ5¾ÞÑqÝúØnlþQ+˜×?¤l–<Ÿ{IÙ2;†ã”ÊÞÿš^F¡»Þ§±hvÁÖµ•ÄІÖ)e¡-Ñ•º+Øš*°–Sæ>"HX2²«[J»•tÙXS‡4¹*Oœåê¡¿¡UCmwý8¸çê+ÁãZÈnõü£†±¯ÒØcÔìXþŸv{M³MZl„x±R9lœ¶1umd=ªô¤þ³ˆ«b÷»öðN‡ßCMëCVAÒ"ó×Ó6OÍSy³#G/®ÓŸÊ_Jû°Òfê4ÿÐv=ŽlŒ~Ç<ÑW•Ž>¬Ö«MfJ_õ³½XìÖŒ,>›Ó‘sVsš}ŒÇkøÚ¾ýço/ê|fÙònShó`ÙòCUÛéý™¦¸;/¶å1ƒ`¯“´™­N†¯R*®â\«¯ÎÇRd9xÎ*Æîfì*³x 2­ §[£Iœçˆ&íêØoÇ–»×K+æ¯à4}[É›ãW ¨nxÜVS[ÌähΖrã1HZ¡JA¯5‰2“BÒB¸Ø)¤Â¼r„­G¥2O¨ ÈØ0¾_ÒyÚ5'Ý0̹b ­G±ZÆ{îDZÕ[ùáɽ{V®Føë`]A‡<Á©ùræ•ôÅSÒ6/$h{ž‹k7‰g¾Þ:­gZ×,áæ³&ahIw šÕ&§˜Ÿ+ÑÊZ/b«ÁË´[‡úÏ./ÊvsnÍå]9ÆÇàgmWWòÅçlÏœ²¼-U'‡Æu­ä ÕÌp}½© Žk°×XúDN¦¿9óM=-Ê$#)˦T=#«ªœâŒÛ¿‘ZP‹©ªÅë•Wq$£¸®kâÓ×ú“ð„úïúµ|£¯>µV–»5ù¡»RüÌ„s¤Ø™ê>`ËvªMkhRJõ±] ,ÐÃ$¨ãO¨ÿy@Åï±æk`(^æ“•·P\Å&gdËkÚ|³C —ªÇÑo5]`´~â9Ñ®”"XFï‚<ësÉÏ·(xB¯–ÿªëpCg'{Űë¸MglÕî\±±6&ììÓÅ·M–Å( øün6,d“¼ÓÉi"ŒwÑg˜pÆHÇn-½„Îb¼uSÈùY+æq÷ñÖ¼y¹l{2hø+O•s4óå)µûIŒ³Z‹ßŠ.ÆC˜çì^Zá[m²=}OK˜¼Û<3¡ËU:õ¶THçÔ`¥pŽíÖ/ó¯‡-¸á`ò6».KC­½¶WYäŠ =|mÈkf^ “Ö’¶HÐÉÞ¥C<Ø™®YÂæ¦†…X‘§x‚êOÂúægÉSoT§À…Í×ÅÕ†½˜r¹¼Ö»ÝÉaÇNæ/'_ïcrPÔ¯Œ/FÌê–Uš¯Üú>ò¥ÿ¯ƒml^6LÒd¿ãÍ£ýc¿ï¹ ϓϒhÓòFb”MsXZ«c%ƒÏe1 ’gì½Áм”¾À—Á}y?]ƒ'±êÒøÒ=×m¥å iÔö£mݵ<.Éx\¿^ŽÙš©.cmÛuêzÅÓ%&;™¼µ‘kG^9$Is¢ùP:dŠ+Ô!tÊšº¥·×ÁŽŸ*F²,€‰H•yRÆüÝ`¾:¢ìÑïzF§ºP{µñÛv¹ŒØéTµI§†®f¬VR KT¼Lâ)y Ò— =ûIº(/¶ÓYd3t¾x÷™\û†š€gOÎ),ðxˆÆ±Òzá}Ñ÷K#˜¯Åú…­ ÆÚ•‘¹W){OÔ0zÝÌ•.hQÉ\ÄÓ†œöhÇÁ5á‘ãw¯#¸÷o²<û¤ú”tÓYvês ­\C/¾V¼pÈ+«{N®TÇ +«šG™`°ZW*’p6É”¹yØ2ù ýLN¡¯® »áã41¬6tºæïæ‰!»{#WÝñÄÓ“Øñ8œÊˆ±Vh ãê0žyѳ{u’.e2”Ä•çÒ?‘ÕeÒêä`ë 3ä1sÍ8 ˜‚(iO… Õl°uU 1>–³ÚÆ/7’½“Ÿ`®Ï%( ¡ MJÏ̬̊[ÙxɘÉòæOˆ˜/>’¼›ö‹¢ÁA/A“ž¥Ü4O/º’JI%£•«×%f,¼Âôᘎ Œ¡óù>‡Q›©XIÑ``‘Gl÷l½«««×ò¹‚}=1„4é»:jü•µ^ç¿$QJBfVÄqâU~Ñò²+”‰‰ ˆ'¹¿vK#í¥OK8"1GÛæ&7`@S¨b ¡ftÇ…6-’d¦ÿµé>@ªc%HR…HíÙÿ.WüqĽP,„×ÅÞ$ä¡!SÑÿX§!÷O~ª UI\vDûo9…‘ˆƒÛÛãפÔWGSè•PïOoîµÇJþd(C¨ŽB÷qÞÏ­Õ¼ÏÙ¬¹|¹Y q’¼³(…%ö&PSÝF²©¦@Ž»ÈÇϲñ<,»ÞNO4ì>?JõeÂb9.ZXg–ÂK“7gGÛ2Ù¬’m[¥ŒÖÇLž¯WiØjî¸îSŸ!Æ™=\ÏØÜÄÛ±.× Š %¯Å aá¬xKÃö¶_y@›6¥¢ØÛ3ú®Užž[[ËnÛUY1Y-Öær¼ö›´žz02ÕÙyWÌ¡½\KâÕ']ÅO@Å™r‰maîÅjŠ„^Tƒiê R¤@ ¹4¨›V{÷¾¤þ¡¼‘âñtÍNÁlԬᵌÍ<¬ó"ØÍOœò5m:\mJ–3xÄût'Ï–¶«3)Š $4,›Ÿúá×õ™«ÒÉxÏv“1‡·j¿’¨kƒÍ]Ñ[¡®[ž£W»ìíSЛ)Zôpc»}¾+î"tžê$c3Zdž|“¹3æ!ÓvïD†µ{4W+BæÃ®B—ëfëE’ÆT²gÆ{Y«z1f¸Û^ÌÑs÷Œq¸ãþ“°Ùj×¶©ücŽÊÔòF¿ƒ²—¢¶áß¼‹œ¡S Si£NÙ–/ëYßé³=|¤iV¢‹+i’¼20}SœŒç©¥ÌérÔ*3JŒ$©¤êÝMºwÎ8šråäF:šZŒˆfS$i».2;ÕìíŽ~Yó ÏeáÃa´Lžñnž#¶ìârø®¶}Ó^Ô­ø—I–•Ÿ,æߊ¶}°áòô¶M#¶@Ùö»zÝM—o’³kŽÇåòxÙš%[1VK(´æ²­?hÉ”Ø5Ž€­ªPƒAÌæp»F&øŠØìÎW3O“¼÷Z¹]/œ½^k¥/ä2ÅOÊU‘}i¬x‹Áx»žÕµN9³}vº÷qwkÛ¨Õ ¦¼3ºÈÉGŠšï¹dËŒ+ŽŽ÷ºóŸpŸNGšžžœNkO©êug¼±@kYTt´«ÙB3dèϤé!(DÎßaéxcýCy¯È'ÊkØm_RÇf¨å4¼îÅw;µQ&“=ƒÛ´m~¾¿Srƒ‘¥³HòÈÒµZâzYI-¼ôì@Ñ]߯=šµ§]ñfòþFÔvÿ#êžMÔ(ZÃd›Lÿ–™G™ÈÅš¯vZ[;ämnØ(ðBD¹•…®U¹öV5œÚÁ;½Iö}›1ãŒî?Ç–mc®löLMœ~¥>^Æ6üøü†H]ã?¨[ÄcnÃRä‰,÷ñá‚û1úAËxÛéË'·@¶±þ5»ºí»6gÉ Rö.¾Ë´ev|}3› ”á¼·rÕ3”p´gÈ0‰ñ…1ð[¯ÚH»zMOÅüɺ<î‰J=0Ôc#¤é³ ïwäáôÍÕЛéU€ßUb× ›ÅWaÏü»æ\¶‘s «iz}ýÏ}Ùõ½‡gÇÑ© „©ˆÀë0S[야öS©ªÚÈV¯OJã]HÂLñK2µcÓÿâ®í8¹ç£ãÝ·e«ý;h¡‡Ïa`ÇÕÅmÛNµ²¹8ì`häí×ËÓÇ ¦F$Íd1 #ÏžŒ–'/)mŸK¹,>fònkFذX’l3aƒ%j¦ ?z{8Ûö0ÓÈhÃv´żU¹¶SÚ­l#ƒØ:µ}:äëÅ›Õ5½õ-Ú¤–q¶pé6'9^L–Bl=JS½bðËˆŽÆC!M ˆ&¥%+¢0$äÎ\Ôõß‘Íhô_å‰.ÝäÞíÝoÀÓüôrËþóí¯5mšž.=^“Çö3O‹³]-gªìØ}êΧ{ܹ^Ø­g‰RaŽ£%“ ¶#—$ë$K+g´Ï¥,þs(v5ðýÝ«'°æ$Ì-Ý‹™»[^ï ä këb<–Çþ‘×Ù±¢1%kX˜Äˆ¬\þ?Ö¼¥å38ßÅãüV~­¥Ãgh`²´§ÊÓ¹™¿ñâíÒŠÔ¶à9œ­HÙé2¬÷31,µÑ¤3!]ù°ù¼ÞŒôÉ\Σ©Ù¯=Óé‰'—`°ÑœgGIÒÈí•óîwkñ^GÖ6_Ígvñe…¯ªl^vlµÍ[5Š»½¥ø›ÊÛ/Œð²ß[™¬ä¶lͼU òOH©Oj|š£NN¹O®+ ‚Ëdt-‚ŽVýÜ«ç0g#†I°úî¿S•“aÇMîuʉëæ"‚(êc2u¬ÖÉY‡Ü¥švåúwÑ1wv—¥ÒÃyrÌê¼ÜÉRÆ//µoyL¶_k‡;vž•gÊçqÙ+û#Í$Téeɲ§ï,8õ‰|Eô³’ŸSÕ¯k^.ÈXÈã²’ix«J¯ì8¼¬!r§Mão7º”PËK,Yé,«ËSn«¨sâÆ<Ö…q“œÊ=4¥¶}1u|4 7Õ¡ªdÌnš=Ciß?ß¿<ÿY»n$î0e|M?>·€Úü‡2jû6µ^„~5×¼Á™ñeim¦c+ïǰ]Êb³J»rÖbº‹b o ‹›OÖ|¤Ðã²Þ/Ùìí5ëfs».#s zÖŠÈêôd½BÅI¾o!j »`bk}¼‚Z°³‹¢Ï`›Ç?N¸mŠÞ¿>ÇÍ·vÃjÞÕÜmmƒcÁ[É\Û£ÄE޳hZ·̽«¹á$P²‹,Ï_Ü–'*ƒcQúxÜòÑM?粸ì¬Ô£lVWjàÎ,lYÄN+Üi¦•+àjÝ0e“ú(”}©eR?ª9£Ô!Ó" U]YdqïÁ? Ë<¼Ó #¨²£¶C|¡ÝÉŽ ,ßÖná.·3ªx®g†Þ*þ•Ú3s‚Îá©ù=fµ–ÆÖÊÒÌceǰkë‹&;Y?v]D©5?N¿¬<ùÁòÕÄøò| ûkÂ~dÞhC±á"Èbêeµ?&øÆøÝŠödìØy l ~[µ>K.Å]»±¤Y½{%‰­_/&ì´¾šq¦n–ÅGÇö±8S/˜Èktg§!&¥=9jž2¤ÒÜzRì2G˜»jœRš¶Ë™ÌPþEKjÍ};o÷´é6C¢îöö=KÈ=s/fJ9œ= c_Rò?p™¬”KGOô†Ÿ°f(äe)ä5ìfFCü#‚<ÅNœî‹9t1b…D²N+9ŽAÛ&Ï /”tJ1[Z•­1îíœm¬•ìI @íy?ë[ñ­ê9mW+r•\w‘yÍã3Xâ«ñßÓ畾¤obæ¢æ9qÑÞÓüA³c¨ä–Ä™v 8ÜKP\=é­Gd±ñi[Í_È´†»¶ÝÁÇ”]gq¥f¶RLp̢Û‹ªò(‰#ɬE¥°È“ª<” ÿü;¸fçØ÷jÛ^ËÚ{r4Òyçšþ«ŸÒ¯Ù–5`’Z¿¦ì¹ý[&ß&ι”ºƒ–2'­º|Ü´åømX\µ#(ÊoQòÍ8ŒOKOQq¼â9òÄâëAÁRŒ@Yuع,éîöÅàâ,ñïÔÖWjݰڞÁâܾŸÁ‘Àb©eìlzþb7µµêðnºÔgŠ2µxäÅÏ$wÖ2+ËÚåWŽÌŒÿ/}\_ñ“<—«d5üf××5j{.Bõ\FsúV+RËî{ÅŒ¥¹'d¾êŽ>±TÆÅåDsd/Ò¡0ŸÕ¬©ãí6¬]ün«ˆ¯cø»X«Ô'£g ‹l6ÅIy÷J8€qÔ{TI?%ô—²xGÅ[Íé3›gŽõ|öfÅ?´|…ê1Mš¸«ö\d $3V´’ E-F|k©x¢Z<ÿÊHó5IEŒ±ùzKŒ‚9©yo¿FzÕYh¦›,DüĆ(²³Ò>,ÈãŠ×“úÀÊkùëï¼{ýfž9^Æ­'N®_!¥.™ŒÚlÞÊÏ,÷é×Û¬­Ù“V»TÄYŽ«4âyRì²·|ê<±§yczÀiÖ°˜/ä6ü.¹>w!o´euk>O1YÄQ“ïðU‡oÃR¿Bÿ·n ´WU$z¬“#âOxvÌ>Õ¿krÕ±&P¥)9FŒ8¬L2@d&Í*8êÐRZr7zÐC½Ûªòô¡«jø¹L^‰Äãv †W/ÇR­ÖÌfñ8ÜG#’)ÕoXÉ`ð¸¼MË ¼ä±´+Õ¾O/¥ÏÃT5yˆKK¢Y«©†)‘ÿ;g´j¸Úœ»§/—£(¬‹]€”wVT²ÚÈqDo%/Q¢¾™$z‚6‘"7+1šÃO¦§ÕVkÈ;·Š±ú&¯ý3JØü…¯é›Þ_5.V,†wB­»§±¸H-­×ûZYQYÙë›0eËZ8xC*¿<³õ;Wû¶C^Ìh÷íéšÎÇY½»y§”ÅG69|Œ¾iM~ fy Ü´ØÅð¶e&•åjÇ—ÇãâKs b9ŽŸ†¼O‰ÏbvŒg޵j»*LjËÖ¢±]Æ>6ˆÇU4äV)ԱʴEŸmž¤ ±DL`¯šÑ´ýŠÕœ–SÁeïÉýÙµ“Ç×·5ÉuIsÖõt¿ƒ¤¯†}§fžnAžÉd?¶y«tô~!òäK^ úÄVΘ˜:R•ø ãŠç©ÊuÁŽ“òÈô±Z‘%²^¤õyìQž+5ß©þ¾ùãZÒuÍk;¹ÜÒswêÚØ)l”køãtµU(\ÄÚ¤¸½š†R“ 8û‚ü(YZ¬· “²òÔ6ã§}FÝðmoŸ§•Ò<gÇî×ÿÓù+û÷–·_:àò'jÍÛk8ÌNO áÙ¥y ÆIÃå¡–JdÆz­ mƒÂøOÄØQc¼wªÑ–µìv^ VˆšÌy,\’XÅYK®í'¹žid¥$míH²7±sÏ£;§‹¼sºZ›3³éþo1oŽ×ìe²’|œ¸L6Zösû•+'±‰Íe2Ùìµþ–¨ù·GÇãð{.W%©Ö¯‹Ï®:ýx'Éí1`ïb-X[ @‹Af† P;ÕšMYì>¿)ǤsbÖ{ƒ%9€‚Ii/ƒru•¦ZVºÚ‡™úm]}tåb¨iüѺgzº*-uñ±‹ÏN| 7¦·9:tÆÂaD’E‚WœZ_¾¤±¾ÏjZÜ:½­³-žÒö?#Ù¯RÌxñSMÔvf¯ué5˜¥ŽöÃ>o/F"w«R‚³ÞÉ^¯,=B›×ÖvÝC\Ÿ1¨ø× m‹äÌŽö §`q6âñg’°:>ç&ѯc•ÅAr<¬¹Ld/Kj|ž>ÂØzíÝ=—Æú6é&"Þñ§áv|ŽÌóaíe¨¥‰ñëzA$‘U“ñhþé–9,ãÇxr^ÚØ–0Ȥ'䎯-=8ËJS‘bì&%,hquÚïŠmú«ßåÚ2µ2«‚}7‹³sä«ÑWܳU¶œÆÁOe ôÅöž†ZøÏ¶‰e©^?¸[vo[Žê˜¬lÎñ Öõ7kØ<îëV ®Û£­à¼y¥îßêX󷍯ö3ô/yXÕ)éÉ÷²YŸê·o\ÿNÕ‹9bÞÖñqù$¿[Çúµ[1ÐÇãc±6ÃжùeQÛŸúzWšKTÑûR´Ó:£0fý¿øhUL+xÇN8¸s°EAqKÄY—ÅÕÄÍ{Ü–H–\N:¶;!Z6e¿JŸmÛÀ¥j‡/ñ(´scJõIVºQŒºlkÚ›¾ µ¹D¹èJ;é÷ÚYÎû^Ø3ÃkOßr¹Ï¦ì'”¦±BÆÑ‘ñ%Ͷ՚‰ôúÙ¡‹¿mØÕ™kÄ&­ߤ­Öâ,‘ÕYH„~Ÿ¾ª¶?$Ññºæu|foa×¼]ŸÞ±™ªP=ï*Yñ¼;èÈÑÓä€ÅÀ_«O=Z´§"¤ÏŒ–Œ”,‰êÝ6û¦izþ"æ ®ãq:þI&±ubHqÒÁb&­4r@²µš0,Àª‡Û)Ù‰ a¼o¤k†­ kPÖ°tñ™xö ]j8Ø¢X¶øéqk—†øïr¾y±ŠŠÞìPXšy·/d´ù¦z25H‘…jÅTœº¢ÞÛÐøm¯®sWF1Ô:$³ŸT%ˆôÆŒ\VêUt¦<ðù„ ¿WŽB±…ë%x^3 r¬¤¼ “¬ª®ÜÖ%C_þÑ,~:ó#ÉŸê;ÊR1)™òQ—KÛ}¯Èž±p Ň úå|mÇ/†ú§¾ËQ¢…ÃßöÎû~£¯NHÁ»§ó…íyËÛon:Afn@*œùä XsÇÇàŽ”¨R®J„RXöiOÇÇþ,ìyòúú2Q9SÙÝ‹|2çò!¾xb¡$Hø¡è³ðy!HíÇ'Ÿ†`VýÏì“ò?ùÞ{Ž¿ùõÿÏ «ñý¾B€z÷ üíð>XŽAùüþ^½ë{Çóö,Ä•BëÁ`AHýqþ~?Ï×½i„D.D_ô÷íþŸnL¯o¾úvþûsêG_ÞeeYGÓ’cö +G.÷‰&EcÇií*ÊU’YQÚþñÖS+Þ I%Y½° e"e`ßı1 eb^„­Ù)ñ\FW."¿¨Xÿü¾|"$+MIXÃÆÒ=‡;¾3ÞŒ"ŽkÐBRiN²´‡æ. ‘&FŠ_‹ &RÊOJL”Ã$r]8Úö#†|‚SW6”2J•¬ºÇÿXòFÊG½ÀºNI©ø‰”ÐìPXÛ“ïÇâýˆ…ü˜-ÚžÈlýèïG8•™@B± íî+ ^5ˆ€«(Ve•©»öyW”²/}³)m£@ŠQ›™ÅT±êyb1ê,BkV‡‹ËXV$jç´ÿo#FíÀŽã °¢À‚§VálN£»K?ý‰jñ^0gCÈÜ8ùh%&8¡3IL‘!*´HòCbPí/ñÄÇ`…#×LVûUU†vÆZÍ¿@È/ΙHÜ-/7Yk°oñÆbˆØþ þ Iað$È„µ”ÈÂi`ÃÒ]ö1ÏQ£û²ÈÈê™coÍfhÅ"‚Ì—˜º(ç:™Hó•Ëb0xû¹LÆcŠÆÓ† íäïCJµ'º”£žÜódÇ7vžSÈ”Ú'@ÍÚ ð$êL„<Ÿ‚þ'ó‘ã.S:Z„ÉŽÑ|’¤%iå)$1ûiÑ[£*ƒÊ´R°ý¡ÿÄro¯OµdKغÉ(…¤y9.aìVc;©<*Ïí ¬ñÛcÛ~¹ôó}JdÍðÖ< PÝwËØFÐ7¡ïÜ®Ûç{ ™¯?`¿p{«rÚY†öd/Õ]xþ‰0Çý)•yô ÈÊÂ5I@wÝf,! _Ü5ʳv¥ác²¦;dÁ*¨ÈÑ9q2w#·5j2˜ §£A£[ÒGQ¤ñÓká½]j²K™÷zPŠíolÈRF!z0eìŽÜÈ™%E@þòF ß‹£W„¢T«SO¤qHyÎï‹®,‰(ÄÌKDöZªñ÷ÏŽÜ'FK¨á”X HÑÇnXJ@gPíÜÏ#w’¥ V™X €?hÔ«,LXö Kî7¨Þ„öú*ÿ S®­LŸuYHŠ"û“àêÓwdi²^§…™öªä{3TСŒ´|"¡}·`²§è0Ã2³k¯Áš^Õœ+貊QLâ®ÓÆéç¹Ä¯,U¶ì¬?½çÛ“„S3ÏbsÑ”IÂ+J¥Ò gyWl’¼¤Ê¦'ÊEı*7Ç­æ…—» ˆåÕ‚¨I]Y»{A$rÝŒq+°ˆ¬T¥z²ºUsãäV`¨å?"‘°CÉŽÈÝ”™&#ŠR“=@>„—·%’X¤2)hš6÷@½“ûaR¤$±± “õºˆóëLP`¥TEÿývZ²÷îñ\£&8BÜ8Û&ëã¿Õ‹ÉPʪÊe.¡yn$° „)ÔŽB‚ËÀ/Ð0¤°AIØ/W+ "PP–ü-˜˜Â¶&êŸtSœMÔ+Ç$2¿c ©)BĬ]‚eoï÷˜‡àZuà2õ’¿ ƒèeª UìÌ#xãÉ –Vl9ŽJéø›*±¡dšŸK\ýÂê,K%,KZDÛëu±ÛájVV*»ûí{ÑŒáǺ)é6:”U«_¿)6­YF³jÕ‹)÷ö^Õˆ=Ë/+ÃF)¥h©ÑšS)?·Xk*ĪAd†;@Ç÷r\u†BánG`—&Í;Gj™Ã+¥“ÅdþêLfF¦Q±·®áo¾6Ìv––NŒ†+˜«F6`,Q”’âyÏ0ȈàGÛÜIÛ…œ©íVˆ© ûM 2u2°S%w?Ç^.ôÛóéê ’5Cdƒ Ûkª¿ÚœïRORŒ²¶‹¼q[{áï·MØñC+‡.JÊU×î2¢ŸlØ~ QñYë1s8#Öèß@cÁP†• ·R{Ä8 ¢T¾^ÄŸä³×Ž1wäû}ãè”cÂ4b^²²7ÌåIÁ‹Ô¿Båë8ê™*_£R …úpÛŠIêÒ»,Ö»<(í-Z—&¯,?sǰ—+ËbÀ¿bRn‘¾î*ŽæQ ;â=L’8 µ1ï°Ûú~¼¹™$ŽDI«òñ¬®8CÎD‹r ?ÅŸÉé¯á©PÞ…ec/ÜΡˆ'áV"Á°pÅHn=Ê|¬kÈÊ•óØ>®“~Hò!á’&VY ·<ˆAⵕbaoâhÇ'å½y ‘ÕK;¬s;uU^b~Ü<1Æç†tìLµåÿ¹4’5FÚ)2@&Õ‹°ºÁêÛôóÁR¦áI[æ³ôÆLñ±24½å›•`Ê9 (a*“3˜•"+×å-‚d“%®cuÖ S¤&(ì:ÇÝ}ž¢Äa ’7é!k^Ñ äÖ4‡´ÜÜ.N¶d‚Œr˵_V%k‹2ÅU¡«VšÕ‰'•€Á=™¬¿ã‘¥+öGv"†zj-ÁeÃ/ÂÖx ˆf‚F<ÉNU–#qd‹®Ey)zyTl6xô·Wïc[7uÄ©’ºñ^6ÉÚ¶¿ìœþú²q0Œ~ ”á–NXÛå¸R{UêªnIÚ­Îc#£‡ž©VEý[º³(‘d(>Â2bÈ(-Hû¸¤SŒ€¬”†0÷H¬8˜seýŸãöšIÜ3‹n÷9“ÚF–º•W`^½š¶êCÇÛ†Õ+kSÈA4s×±@âZòÆÏ©D(¯4RT‘o†îèúJÆÎÑEB·/½î«—ù’)„Š¢Há¯ù3rG‡€TØ(Y£suÃToú…2F½@uVöÖÞ6ö+ÆÛp¾¥©µÒ÷¦±¾ÎØÇ„½¹Ø†’``K’I´yq\q‰‚«°¿vÚO Õ[ðhÑÕŒb¸21˜²ýÄ¿_ºÛ‘3/I²qu‘:J„3¬ašÈD(剘ˆãäòáR¦„Ê-ð“0ÈÄÇ ’gTî«ΊzJYdedäð&ÇJp"Œ””•iÁlKÀ¸»³¿~ÙऻÆË»¼vF뿵ñ…±=pê+0ìG$Ný‚º“^I”BfHÉ1Nëì-Nô@'vîË+˜X{b0‘#Ê’À¤‹8€7f¥Îdwï^ñ+ÔúɦýÒ5áÓ‡/$‘·€À÷.Éÿ±7KÒ·­Šì>@ŒJUæ’Ñ„ óJ9õÓ'&f %pGbcÐ×N+vƒÀã;¥v÷ò-K½Râßq ÛíÙý8=ÈÂFddŒ7*ÁâŽ1ÔõŽ7°ÊÆ²Ê ÜQ³S›ŠuÈŽ^Þµ>ñ&µ*|uùÇ@¤ñZRL5ÌŒÊñ6Àk.sƪa~âb ” O1°Œ3þ1aå$üUÿÆ*÷3ÆÒuÌŽ?ôþúÕjr[ÅV vV±±ö•ãyŒ—°aY#—•RÖa¡V>Hz*Þ’Š\V+Øw¢³Ž,þcé=EÕ}*ðúã‰æ…•£’i¨@U½ëXŽ>âr£ï‘• Ù.^©!X2Ú<Õ4@€êLˆÓp…‚˜­–Pf_ÈC#ÆðÖ‡Š=L«Ø{¯1A0Üfš9;{P2 ªÍ"(ÀÙ~¬RÂ&àHàä ã¢ó ž»‰cà3«I ŸŽ×‰à^ä‰Hô:£–£µ%uxñœy{ýN'EdÆ&OqÈéÁX£”:¼“‰B¡n%ö˜µYxë–or ³12žv%*EDeìíðd1»y,YYQ;üµ§WµÚ¡Pöôe¢ùà/ Ê$Œû¥xR ¡9÷Ú[KøÞ®$mÆ$Ffìу„QÝ¢bí"ñÕ¤eüàSÊ%R“*|Á;V+x6ªò}/ëÂTˆõ‚»8 ðmßÝü u”8FVbGñ¬}CËîB²*ªû´XÚ'åå—ºŸYFt‘¥’RÞçßÝcÊ4ŽáÚ?tu vt‰›&s×öÉ ë2K!_fU+ÄD{‚9NÜxorÁ¤«+%×Q~# }UyxØ$M R…FòY·À‘ܳ§Ï\{vª~@š¡ÒZe©ñ°µ&ýŠÇ õ墨­Á@ÏÞßÓròoî-rVµ(ˆ²Æ³]Ýý¸ÙšB2ÂGÊ-pßfi°ê×¢Dš´@HÓ<ÒLL¬VP$eU¬Ÿ\ëïæ#'ãŽÄË4n5Àb¬¡C??ÚhëÍ+‘9¥äY\Òsë?«©qÞg2«ùü,ÊÄ|¼¦NEÐíCÃVO>–ºnñT PæýÏ?^!v~µ]ìªú?øÉZ÷»Ö!§!WÜ%d…Y?"½PGHÒùzö^C_¾å†GuoX(óò}fëÞ9;A¡”˜Õ}°²EIOBº†ž IO²} Æ R4V%âd1cÏ,Éûæ BµRx–'˜ñç`ñN§¹Op¬±01 ?#¼QŽ,ÏÏÿ#ãÙƒé=±eß§8ªÏö_sÃ?1ªª%x(ÈÜ\î_™]ÈI8IGó$~?7Y¢bß’²­é‚$Xù3II ô{0‡%F7†b²¿>çP«*ž¦4öÞeb8›Œ†3ÅÒïÏ’ Ž‘”‡Ý~αÀb#€U¥ö¹z=ÈO·iÇó"JX6J˜Qíˆg¨Ïù†vQ"þ+#@ò†_î²ÜÆä(ãÒꧨ&*YÈM˜Üìþ¼6ŸUÅ)IÄrÞQ½©Í7W„´+…m‚ìžÌðŠò.Fꤑ•#ŒÈÂÄeJ©pAï,ÂlxUh…–¹v£>kúrÝ<—æÊÍŸ[©‰ÂVÔêcñÙ®//þnÈ˵±bu¬å»U®=ŒsjÅçí­*ÕšÏõn¦ÀP泪KGÈØ•aíÙÙkX "´Ä…g²Xýµ²Bbº1bã”9âR d=»ýð™ãþ×®à Úb =g—+£ÌiiéjuF>‡Òôæ${Õ™ß=½ø´×ÕÑšÁϨ,Zê§mÇ­îqÍì_Ñ¿‘ñ;¶ ÈnþÉI¨UÑ1޶êpëöÛ·‰ÕóZ}ëÇTÊRZ”3:êÒäõºrf²Rbæ¡-®+ïæ¥Z“8¯fKßkö«Š?·uí$SŽýD?váL`{óÎßý®¿ÓâQ,~°í)ðø•uŒF9QÌe#~9w<½8þV%,}$~Êq6êγ)ý[•ûmxá¿Ì˜›aŠß·êýjù¯µýn[|4p—öoâ°XL–·df°šÎrÎÉä~˜y£ªýù+s9>GwñÆÍc!šÉäëØíïÜÈKs̹Ÿ&&v¾'·dõ_;âv+ø4½‹ÃêyÌjg­_ÎɱX‚’ÝŸ¤/%ev9°n~2HCèXƒ,ÃZålGÄaªù~KáúŒ¥§/™"™=MF*Æš,é=9û¾¯1ÎG œHÅü½‡§5ù…Üò»qÌ,WЮÿ-‰ÉïZVËã4Tn«ä=¨A›Ñðö°U2Sf7=Ç.òc²AâÉÒ§…¥¯ã5PÓkXœ1¡B­¹&ÿ§ ç4Ÿ#ïùœ¦6<6¬}þµâ\$4¢©Ž9m⮯–ó&ÓŠ¦ÖnKO2šn3§³¼"Þuò¶+›ÞÁ–ç´>ÔYyüA&R“8ÿÂ^x=dž TMÓ˜¥ˆÇírI>µ;¬§ƒ*÷DX”u–$$„PÜpa•”5XÀc? 19õvŸÃym)éÎqèFï««jÈ^åç»v•O›Ö™(ʪX1¶cÕß*F¬ª<÷¡ëôYY¯ark˜ÒZæ/Róî!nMBÅ»×vO/yÏåÍOg÷'ˬgKÀÖ¹­Ä–¤±o1 µz÷qè¤4UžúGòÖ¯ÿ¼âvÚ™MÒÞ¡~oiÑíy=§ å<’4ÝûÅ~AÆã6²]ŽÁlç¹—Àb0øŒLU~ök&r/ ~žôG›»”bC0bäP9.B¬Ç’Éx0„{.§Ðñ#Eò®xáÕšSí¢°^Yà™;už0zÒî·8`èê|3–W~«R]Wl‹ZpïÞê>ƒ‚szñ#ê 5`VµÕ…XžÏ3fút·wÂ^'ñŽ‘þŒÅ[ñžÉ¤î’SÜ0™=§[Íß×!ÉK—Æd⩘ÄÞ²3y<Å‹¸ü¨·4ø©}ßêÕ¯Hñûpž/èw3‰Ù5¼¥íÓ ›¨3šŽÓ±,¹o0kÿÐ/j{3ì•°:V¯¦ù7^ÔòX®ûINÎíÏZÁ\Šc%,Ö/ ô èñ$˜Fýä%ùg·ñ¡à$jXEbr?…ȇCÏ¡Bp¿Æxfn„<‰ccà O,ÀÞ«4cùÕ}4ù_VP”Éõ@…tÍ? U×|›^ü,9­xuH“d6 ê«=¾½±[ñA|ÑôûäO4yOËËíGMÔ÷8üñù.æ­>WÉ8ùüw®kw®·Žò5³TñTäl¶0ë™z9<3¦µg¬U›#e"¥lI¾[Õp»ŽÇ€ÊkûW‘³vôÉ<}ý¶ßsý)½â÷ÜÆZ×!srܲðTÕaÀlùXóæ¹[ Ž*0ÁÆÜ†ý :š ")d½ÀGµù'iÂö<e*ÕplÁøÚá#,­í‚®±þ<{I!Os¬yi*A¸~eRD…©ýÛÒKá|´å9É™%dHvôÖ 3—½#|HóÚÐ#±½è)“½”_ß¾xæöñôC»å6ŠW5(ëU5ü>?e×ñ5³øMÚõƒˆÛ4œF£™#ÞñZk]ûÌ;ço\]q/l ’š•‹ÐšÑsÏèƒqò&¿šÆæü¥i ‹Z·­\«âÝc×5†ª¾:­¢âÞÄ3o2ç˜å,Wk;L52”-lšì“kîkóÁ_0½!eiK¡Bÿøò¨{+ƒÙŸþÊ(?m7f˜„aèu!ƒP\!ÚBäþÔ  ædÉ\uì}àüU‘žJBk—ÁÙ6£ØíÃÿ7Ò¥;îÓ~ýšÝâ¾øCÅ{'‰±2àlä5WÄæ2{ϰAŽ»äÜí…Ùrv`û 0û7‘|¸e"Ä%He9¸d–[ò-Z «G4ýPý¸$¨Œ‰ü ©î‚È1¤…Å\Ͷ’´_r©+Éü´}¸-Ô±€èŽGJƒ•HŠÎ~}`ÂcecÕ€zä@¬/Pi¢ Lf%æ\Œ2ì¿­ú::zqÒ‹"1ˆ@—ªNníÅe·õ8É9êjMœúmsX¶÷qŠ1Ûo¯ÉbT y÷Xü¨%XXì…ÂHÀ2(iMƒïT@àúÜX‘HbS!‘J–f+ѹ_ñBYAŽuDuBÛŒ5„<¨§áø€½•]KUd…Ïáî¿ËE#ÇÍvþEàD®\FAb®¡{™ƒBübåXä*DÝÖ`!+è¤i£!Ÿm½Á09ÆýøbS2="ù-¬w§÷ÜßZÉf‘eDN†”õnH>Û»v"@û[IÕ²ÃÙpòÎm<ŽÈQ"$˜äë7@›3$~ô2žPNabµg(j¯Èí•Ft'¤/ןæ÷ؘÀb&d€÷â¨ûèH÷!pÑÖø^}x¼}Àg+Â9Ž2%o€Î†0x庆xCr>Û”›‰UG¦‰·Îß÷qŠáe9¸êînY–8»+.÷öà&°•# 6 IH\ð;UW†!I«?xÀzAsèÌLüóÐ{„(w¸LÀªKÖf1‰8á–{#‘”­Ò#I+þ-ª,•ŒÆvܬn76:,6bźsQÙ«Ü®&µ>:*ҵ굱–OÚ,™Ž{¶;,ha½/öäŠHð®"ø,‚JýV¼Žx÷cÿõ|쥸÷3=8‰}±¶{–WÖ¨âTƒ¸k;S{ñ»Ggi%:ö,èò!e!z¿â|Wäûb.aœ4ª¢öd ÄdT!‘º¢¨#5û#¿Û<¨MvwKÞF­`-i‚zÚ5A¤:£0+Õ½¢ÎGâÈeä€D†N,päbHD¨šhYù,äG$‰ÊË*sÔLŠ=«ò¡öì@ÂjüÊž˜MÖ»xºªìª¾D{mÂSw„¼ÝYu·±¾ Ï߀•¥ ¤*Ï#§¾Ä“À’On4 3ÿS\Cp nÃ’w”Ogª4¬±¡?>ßâ%™ÍtT~¥‡3ÒY OüYFe“Ö«£õ•]•Ã…J Dý1R:õ] ðÀò;<®±… Á8€nKsÊÊÜq${6Oç3–¤P¼«¦¯Âî]+“o§µc†˜¯qCo«ß|SJ…ìËî¹Û,K–OÅÜÈJ«MÔñ÷‚8â·ö«¯~ј'X”¤%ÃwÈ ¤ÌñáHU'ìÔ÷ö¼vù¨ôÄLÏÒtîES—~®Hyøa!=Z£ý5¹’àv‰>þLVPäŽ \ ”^JYVhø-i„v£á;Kb‡k·}¶7 Íã<M”ìÓVxàQrG1˜Äå–V–Dd. ˆ£ª¼en JÞC?æ€WåI•¿§U‰J¼ŽdíÂ8³¢£¨±Ç fŠ×‚[pö°îÀ”d¢òÞè”?tgR\È‘7Ô/V²±)îÿö&€²fê¥Ã®àäØïÃG¯Q^'’9™ĨŠÝ9yqà[Ø{€™E°_Ujºzqe6£ ”“z)·º½¿JáàêNQŒÈDh­¨ØjŒ›ïŽMÀIâ…Sö¥qÈndá~ë Gõ0OÜò«Ô”üƒŽ‰â$人¬€0”õ#º)Xòa•j3ÿLHÝ)·ˆ­J™zŠB€±u²¨ã’e¤Uç¬àyGòÆü, )çÓkfÓ&ճɊûÚžeV˜çW‰Wù½‚JZ'®§Ù‰bk?3=fÓæùYÊ1ÓÕ꜇,Ø_cÛ/×{½Ü·3²”j&ß•«¨”X†û›æü4bG(dŽÁ{qš2œ3Hb˜ž×~ Y Hciº’·ÌIÁXã?Í` …û·ÄžØ•ÄoÄ”åS ö¤fŠÛ Ñ,$ÈöÀwìP¬žä¢Ux™á¤Ny¦_âœÈ³õixˆA¼R7`…#g2û‘·Yf@ŒžéŸlŽ„Shù&?i©‚yM™šÂ5¹ïš¼fÿ~2=^‘‘$1iTUûÙ¿¯¯ñ3BJÂ¥C±ö @f’5B²òg“©8ÞÐ!îðç*4o<,Gº'Ô×”A$4mÇÝÖ+úøbï·¸ó/;31>žiù2‚]8xÔÆAwR=®‹ èÌw£²!"ɲÿáÙîË¥ý@#¨ ŸTS†$F·ªŸ”Nx$;rÏûùTüT^ã£@ÿô“ìXtŸOjó‹±ã¯ð’WÌ8®˜böõÆÃ ·|íßn:üGÐ4|üp¸ìHã†'ž$ýÿ~——䲘ק^¤ž´öýqÁü¿¡€ìXƒóÛ©ü”¨PGÏ|¯<òyø?ûùô€†f“–( _Ñ¿|ò¼ü~Éøä^{n;7á¹yŽªœ'Ÿä"O’~I<ññÇãÉ|sþ}{ЗÀPŠOûÜÅH<¯¡È<“ð>OÉþ¡ rýyøAeá/¦Ï%ʭбe}Ó¯çŸÆÂ2]?‘Køî¼ÊsöîEP$à#Ž^52Ãð#yÂrXƒìýª•$Xê=zƒiš¼žõÑÍJcšÇL¨ÞïÛûן‰ê|È#&|¤aUˆõ^{m÷÷ã’^SÞ¼ùWê7={MŸxÃkßóÌ>8ØñrZÞ³Xu ~©³ÿËܼ8aŒ_k:¶{=ŽÂf|jø r[MZÖ'—fÈG-à _Æéžo×õÅÙéï¾r¿µiÙÏ¥ìÖ2–1s%‰Ì]ò[CÍRfqšÿY©] ‹>1¤Z8å—߯zÎ:¸daE›Ür`,OÙ ´Hago†"Uâ;,°"Ç|DÅ£FI#RKƪ{„»•°åŽ%'­©#ìÕ'))G-êøü0o1­%›=У@'y}1µqLùÙQèéÆ0!TKh7iËIö7㔟_Þ5Êíß•$ÅûZƒoú0Æéšµr,ŽS•Ú±Tr¹TU#Š|LY¬^¤1ûYîü³Ïrgž6…^Xÿá¨f2Z3hÚ`ðþ/Ï[í!·n¹Ÿ"X¼Ø¤ñ>½³xûskñö>îï6»s~8A^·ôÙöÆÇ`6uµûS°ñÍ(I=¶ ÃþøP@GI*IqïTU-Pu°ü«/)7d’9)†“ÚäÎ¥x%̪Ždxùr‹Á”7 ”ˆYC¨ôgðÏ›©«(óu$'HãóXÓlUÒÛ¿Oœ–œ4ÇB„bÇ(Ž"uR]ưßw¾üúó.å¸kŸNŸN¹%î{1´yº‡•ö irXýÌ>Í=Ú¹+S¯ÌÅkÖàJí-ZðË“ýΑ(%V¹ù?tú‡‹H ®Yò>7=§èÛnÏáÌÆjîî¹ýÄã6mhÖ1¾­Š“œÝqxüF:}­¼±r¾é9 |£Ëq7[óî¿´ÏŽƒ?‰ÆåcÄm˜UÈŽaÇíBeÃç+?bÊÒgy©YaíD²؉CO†²ÊÆF°&üѦ.¸—G‘Àà¸ù>íqÔÆD96âßÓsÔÕÌàÒˆL®Œ^¨õ§Ý»is‘Óz1•ËQlR°*6ãjÅR·Kîµ9³w0XüLÆÐžIQîUHVGð–¿åß'l:~‹¸y~£áŒŒ¾Ožl÷³{æ&k‘ã—ÃßÐèYÞ|‰ƒwE¥šËmVe«Oìs-ã齜4Va›©†vTdiº°gtŒ2H#1žÒHÒFJ»FIkL? Ñ—í‹0b‘ZHËÈ+4G³t^x äÝJÇÑ£>%©R†Ÿ½€ŠäBÒ,\•”(öOÆ;%º§ý²§ž}FUì\H`š)k¥5‘\Â! ƒÀ‰ZNÕÓñÇÉ’ M÷EIB,³åi»ˆþBH¯3HêªèÅH-í,eb§±ª@Ol™>"z±À)ñ/ò4ÜöæpB¡£aȱÀ{,üö¿ }¨äCÖþN]\®—VïQÕ/UÅ’}GÁÙßÇ9 14ˆ±‹@J±fFö¯üqF|k[lñÿ…þ®2t0{lôÿR?P[66,<'Ÿ»GaÚlMSdÄÚxn;Õ†œã ™:t¬Î´ã÷qµæUM1Çf>£ö\vý¬›ÉëúÞÍå¯B½¦ÚÝ¥Šî#ô‹Ûu i³îØêû^o\³õ‰Ø ¸¼„pµÌÄÖ Ç,8v¡Xöø3ØÇÜ TFû:ª¡öOëÛ§2ä-tÌà?Ǥzîìª{{J+ —­R²t0¢v 'Ifì•@»îC7X%Rs?g=2<Äá 8|¶ „Ž®¬ôȤ0x®øx²<ã»Ò‹-EßåôÀ ˜¾Ûøâ ø+ä=sÈ>]Ñö ‡ÉV¯“ð÷‹·ÜNwy¼¹K«ä¦ŸôÍæ¾*”êEF@®ÒËŠ­ÖY‚Û­ :ú§Þ ñ~ÛÌØÙpyŸ+bòZ¦ƒá<+ÉjîT Ö^¯›·š»žµ²ZÈãþë`Ãa°6á–DrF=%åR×`Çо8ƒ5(ìš¶&Lþüäò6íõ3ƒÓ.kßëüÞ&î'túqÏKã vgÞ1f¶š.Ü“ëÐ6nªc¤·rÕÚŒ/Qý<ôÝŸêýö{K’Íä0ùÊtòø5ÓamÒY«x«á”›@ËãñQâi%ü´xlâmI•±´d÷«Y=G)‚Ÿ¹NÉßêLWûd&6¨ªÒ¬4g5ÄœŒ4Sõ™TBé™Uèc—ptže€²Hef~]œ6J5.µËÅ-Uvg#?ð~ž™CœÕˆoWn"eµrvÜYˆuz%¡p(=9³;[Ÿ¨å/ŽTÛñç“!ò?‹ñ[nïæ=§EÃù›ÄÛ:ÏšËÙ´©.÷âýŸ´ãrÖic á¿Õόǚr#cuØòvkK",þìOoÙÛ´¿«¼}Ž“iÊxÕr[†›‹Öq’çpú×tÝg\Æ\Àeví'Œ}['¡År”8ìúŽv=ÎæcnWÛ(ËIí-’L’¤ º¼\°@C±W=¾'à5Û$?õ$†N–5Ñ€‹Û•I~$YIöäpßÊÌ;$acnI-–Œ²B¿Æ¬uhü9‹ò‹cS«¥d” nRN’Œ&ç~+Õæœ“.½°Ǫ€ÎRŸ¢4q̽ãÉF«ç_#I㽯Ê[t¯6kXZ~'ǪO¡Ïá‹ší¼Žô­îâÿ¢A< v É\Ê ¾'0µ#ÅÀðË*–_…sÞuß² ¨Í¾ù#®lÞhðÝì–_sl½³atMƒIò5½÷”Ù·-v…Z——nÅb1Ž?[¢08+`XÂ8Iá°ÝWÇ`ñX[yËxll5­lWC5bª“)”ö}¸í[$rá€Y”´1 V:ÈTzsÓîÑ),¨Pë+ ¬ŠLeW¨r²:‘T¸ bu–º«R ÕêêŸ53Õ5Œn’nÊË(Pà1é ø‡6F£ (ÏËÓbtÝc4”*¡ÝqÇWeúÖ\'šÆËžƒo©¢y¾WÿWæ³zÞc¥‰ñ–G\\Î.¾©ÉÉ–¤jÖ]ö¼E¬Ü· uât±Öñ¹}L¶ClÞ¼½™ñ§‰ò\ƒTÎl™ Û$9|Ôqy‰£ÉKÇAqV1s!ˆ†â×=Jó}Ô1×õÒ§~"iy‘„±ÿ€s=ÁëR ËjB/P¼và }´wQ»]íÑ·]VÔSV’h%ˆÊ­ìÍ Ê@ï ƒ¼{2ê½?…Ó‰Ô“‰+A&K>¬}—¾í©Í“(Ó‡C‰1  Ãç¿ØÍdú‰Ü- Gƒ';®Ï£øÇ~ØòSî;–™%œ~ØpòøÏdÙô\}P´òYZò™è1/:ÔÇÏ~ÍÈ¡ÃeÚ¦"ÅÛ1Qïùï͹½GÙüÿ’v,¯’kø?7ã«o®ÉbÎs Wʶ3ȹiP\;W8ÖlEZƒÏR tsÓ™'nÛ´]Wy¡K´c*ä)bíÏ’ÅÇ3KØû±P³–z³Ó)$q–íÐɉ1ö¤Žš31Î/Öñ8kB &¿€ÂÓÂapÔk¤0PÆcªAR…*pþ1ºT§t‹±Ñë~rÖŒœ4ùNgS™&sœ:cDEnŽ«cOw}ø‘×ÑÒÐ èõÈmº¡jB ßaoµqÿ¶}Jg¶­× †Ý<‡Öw¬¯k=Œ=«%µi“düñ¯ë»½[¹m—[­¯êÙìnƒ¼WO¯s]Åã„Yiçµ$O7©½-²ÿ”0°æ¶¯0æü‰¨nQšþ[KÙhZËèš¿°·±XŸ l4-œL8éìn>«‚Í_ÌTÊ\ÊfvKÙƒjµQ D½W€¸¨½¤fWñàRÇðTmG¿ß“Œš±rA#yL½YV5þ<”ž ‰¸¼öé1I )^¸ûGâTÕü2L:eÍêJLº•·¹,ŒêîÙ¸y^<ãÔOåE¸.ÈÝ1¾Ç½çŽïž[ú˜MÓK»ä ,9ômr¶ŽÑŸÏë\>õãe+ôjͯäëôå×2;CX‹o#%šÉ}v ¥öÑ xz~iÓ4?ªgNËì۾ۤ˷á;ÛÌë˜Íeíå4¼6Ébµ\…¨)C“¯S7w=±µok'R–Û58ÔWZV’hdäÄVÉ™ ]×±P¦¤e^yEǺQ–áëlÁY@½¦vì²ÊåYЦG÷”ñ SÕnMÏý@`Õ9*ÇÕÚ\‹£)us3œ¥ߤ™I]HƒIyðâøª|Ó«Ј‡UJú˜"ÝÄÂ{…·AŽ9S¡Ëå-»jÓ5=oʾvµâ,õ¯ä7Ý·5$¸Ý×ä Xy]÷M«•Ê`+¾+bÍ|…}Â¥*rbu|­\um{ c¶¦O¨Lþf¯“µº·÷/éÚÝmFŽGB¥âª/z]ÇÊ ·ÁšþR£c®Sº²ë¥šlFÅo‡X%—$ÖÒFTŠðvž ¤£ñgW+ÝA‡€¬^?ΪZHDÈbʆV üÐ2²”ê ™¿ïG"“ö֬׸jêN}[§È¦Œ¡óäÊRŒ‰úª5ž’=WÒ¯P޻Ϛ>`š1ŒzPö§l;öqߎ;ÐògÔF{bÜ Ææ|“ªZÜ.lôe§’—hÎïš>Wç|Ù˜fÀUñÆ­gãzœ¶¹GOlµ{š}‰î_µk+òœßsŸVš¿•<©®kÛÉ Ó-å5í†CýS°å6OSñÞ"ÆlеLm}%°es­vö_h»Lãlé~¨ÅаVv LÎòE#;õ’0ÈÍÖV<7¶ÑÈYc‘V0c=YØ—á϶KFU—€ˆÃ²ª r"Œ‚é]æa3[ìî« ‚*>.—7ª¤™uQi¶««²›«¾ñ¥út4úXÒ9F)ê,Þsï\FÞ%Äæ°~8Ó1™½‡iÙó W;°mÖ ·›»•ͧõ\ƒX’ ÔâZÔæ¹-*%t2Я#ŽÕÄ­:i5¡·²cá³O L¥á°å¢`!! ž:ÎOÇÛôQ1jÉ2qé­î‚«×ƒÕ§»ÝKw3rQ¢£7L³0ëEÚ§ÝZB¯bv¬S4lY:õöd`èÅ‚Å'ûû”W—•x¹ÈíÇ­úÑaËÊ1[†“»“@+g}ÜØãl¹£.½xcÕ‹VWK(µ€Ø)+5MîÊÙ ~>ÅYÈR»¥š•Vܪi«´ÑÈËÇXÖI]›Û ¸¯+'Ò>ñG.§KF¥X-[ŲM­ƒ\3ߘxB± °Çл~—=~|„y*QÆ/ôè™ „nHHlÉ‘þÔÈ$YæUg²…Uéó®ò'©¤Ó‚ܰڵ ¬\˜SÛg³ùj¼C• ”H>€3þÇ<}6§,Ã[RSe¸²Pöð¸Ëm?¯$—G1Õ§Ä‚iȉÔìûV2ýx„Ý¥—ª$c€ üõ C·~ä/C2r"I¦@2DL~cø—'iP-À¬^@Íî´Š¼§ ¡ÂÿôÃ1qÃS^ß>“ZÄaÀüG([¹bÐ̉ÏHPUƒ{NáÍ’h¨öÀ>‡Å#I%:UÝš'F }Ñöñ©”©{+üÅ Âä’=vä %XJ·Âæóïÿ“ŽTYGQÔcÎæÕŒþ×yáG`˜¶w1f~™,‹2Ô©f˜!OoŽ¢Â!VJhßkvÓÚ>üH¾™#8¶¶[š¼Uå÷cÂUÎIh˯$Vg’ë«[ðb'ï¡f+^ŠÄ»sÖ LöqH@õ¬Œ,¯e£÷/æ°<é ^Óx\ØŠßÓ(â)®Çoby-¥éð°â%uX£­Zid=xJÖCLæàä¬À«rüKëèÓèÂ:nh¸Ñ©ì1µ¶YG®lšüÀ†ÍÙŠßµW÷² ½õ9àŒ_úËï÷4«6‡6½[c±9–µÚ·Šž<ÀMGF›$—wébÕšjŸéya÷•azó%—rø×Îþ$ò¾_)‚Ð÷—Íá1+°d1³â3»qá¤ÈK†–ðƒ%Nºä!§š¯>+! 6–C~7.AR=@ø?¢ý;ÊìëÏ elå2:®B*7mW°ôß2k¾zÕkBòÀg±v=“sÞÛ¬Wuœ¬˜ËBµªud–{Ò<¯é;-ï-6^®—ÑþÚí˜Î=ñ¹Ýöÿå•£ŽœØLÆFzõ­Ž‰V’«€d9a«ñHua£õ$ƒ2éÉÔRö 4nù8МŸMAœ¦«éê±D¡nš{}"íwë[ÄìÅz7dÌk­ì5uL^c9»&.|þSgŸGÇÕÉ<à˜JyM–:x¼uì‹Æ2Vr4©ÑH¬xËú?š¼oäÌÆs¡îxœþOö'­^1¼ÔjÜ|m¬†ÊŠ™\P¾’Q‚À‘c³*¼V”‘ÛÔc—úOÓrx ³]Éì›Eš{æñ¢m÷eûªõ-Pµ¡ù‹Xó>D¤#í¨Ï³k5ñ¶ÚHÊãq¯Vy[Há_ÁJzs¹¬¶­—ÏÞIð·µÍsš’qúΩ{7g;g½RíØ+bP-J¡4CÜF|ü'¨ÂZk.¥®°º¨ƒU{½‡ô¶PåX(LœH„M¤úmv¦”p™ØàÔT¾žµª»ŒwIÝ+àsÉ>Lÿ_½©:ëqÛ¥Y3‹_cÇÜÁØž –´ï’ÌuŒS²V#ê¿Æ9ýŸ¯kÙx²³˜í3Ce´²âpvjæ.ÏŽµkrÔuz7«Oô't‡,²ØxÏfˆ+ý ÿYÔµX<‹å=îîרe3öu3нH`ôj¹/)m{ýœ.=!«PæðÙ:ÙŒD¹‘•’d©b²šRH ãÓûJú9ÑõÊÚÆ6]×}Íàu8ëÒ‡ •¹FhrÑS̾z¯õ­N7µ$Ïr /åqÖ\Ƚ¢VõA«ñF,-(Ä­ªäÞÍ¥{…æšïÃü¾D¬É“— Uè­ö·nÜ:cú¹ð˜*d)yËbÄpQÇÐÁg/dòÂÎ.î~…üV2µy/OŠËb1ײUmñ XJ2Ìc§ þŸ~9ó.¡å,ÞÙÕd±pjp`2 ™šŠ¸œ½£2˜ëXégŠ ‘ý¹U¶¨¤PsîÂ=ÔP¿Œ¾†¼mâ¼Þ³ŸÄ컦G5¦¥\fÎK'Ze^ÂèÙßã±RÍo8Åç¬e²9“Ñò™(aHÒ9ëÍš|_âlwŒ%½G°grxæÁêúÚâòsÁr*ÇY«452uXW‰×'‘‚_ûVŸÚ=TXX¹´hjsòԇΎ”`¯WCrÝÖ·s‡¶WŠu¿zÊUè\tÞ+êv»ÎÙ•¤³‰e$7~¢^ž¡ƒÇË4.½»ä—$Í †Èí7$Çê¸ ëܳRÜ‹EëB•ÑŒ²ÇeKÐd‰QW³¬@û‘þ ¬ìOªâ öÇFÈGt ÊE"´ƒ‡®Å}ßkÝQœ+}ê½/Æ7¥Óä¹c§J‚ëÐØŠŸÛE»ÎŽd‹…ŠgW‰’©Fåm'sönÊd#=KWR|¬´ôÍCNR”âÐRÉMÓúðüž¤tÍhêɉ8©uEpV݉ò!e6ªK«”™bE2ˆx-Ý⮤®ÐÇ`wg>«ì •ÿ%M$qõùä‰öÈ>z8,Ñä.¿bŠb~Þ¥+M>A"ÁÖV±#JòÎŽË2{¹Ž.XCËB$u÷¥Ç2!„õ ˜¤YN&X¤•äí/ê¸,Î^3À÷ÑG•;B+s<,ó)_KÈèNÖÕÕ‡Ëù bHpÀ‹Ø;Ö^gFˆ.«$Õ9ª[7úmŒ†êî"(®§¤oÊ–v ±pxT#çÙD Ž¿‘¡ù+3’žŠ1E CÐíÙyuˆÒ+ñØ)bÙHùcÑ£¶~ÖG1ˆŠ°VAy˜3YbêU§oŪÇ'ôE,ÌS†»*¬ñÇžesib ¯ Ú„JÁlMÿv½°±@¬Ã¥NíH/~_móíYÅ_õÍÔ¨zw««¾ù ù®6C2ŸÉ‰öœ¹e‚ˆùìS—vñœi¡ŒÕÏv`îû¼:ã´™{ª¦w;Èå§9F9­'`¥±Ð­qzø©®c`‹-W„›#QŒ•¸êÌ¡&4”˜+D/ÆG=¾ùâ¸TX²p¶…'ƒsÜT;;ðÔÛüíã q¥¥íûÂçnT‚Ô>ö6âb#kT-äèWŸ,BÇŒ–;vj/V=‰éÍŒiëLßÓ>¦<7ä=ƒ«ê{FJÆc:ÓCˆ£’×3XXoÙŠœÙxé-«õ’¬v¯bêZËc*‡í)Ï‘WöÕ¢,ß#}'iÞLò6c|ËîžAÆÛÌY×.K§—ªpôó:®¥WO«6>5æ4ÒÖ¿XXÈã¡e£s%w!š2ÖdXO§ý;ZÊj9й,ìöµ<Þ¿žÆ-Œ‚O÷5Í/;¤cÅÄöCÈ­‰ÏÜš:à«d­ÃvEN§-óÿ9:4ã¢L#ye Ĭ s¹Æˆþ¦6ÍÔEC*ŠáïŽ"»Z9Åù_'ã,Þ··cëb²ÞiÁd¶?év²1Aù¬V7-yôâçß&ÁBj™¢Žõü:ä±V¦ãÅXžÎ2%‘@›â¥øGs±¹j6³rMkÄbqKqØÇâFÁWG5‘…°×3â ÒI Ñ’Õ©ZŽpÈ üDÔ\tå¥)Tí*ƒk_,LïÁ—ázäHÓED.M_S#ÍŽwWnë}QxZÌ;=Š»Rh5J-”¶Ðk¹s%Le,àíuìÇÓ_3NÎ:ÌqÍ’h$§…U$tÌ?ÕŸŠó»E,7'*a¦Ãcö(w<¤mŠ×¤ÆÝÕ|‘³Ùë3Bîù5_çc½$ÅkRÚ©’šêÒĸï¢zÙmGú_<•¼Í•Æf`ÌjÉ€ÍÇW Ô£ºf·qx¸šŒV.â2y Õõ%\˜²¶&ö!@k@Œ^د£oU¥‰Äå6MûeÄb°9]vLk'RZ—èäð^JÖ-Ú¿^¥(d±~,—7Z²EE uïQɪé*Š¥/ŠÏòééiX ˜ß¦ûŠo]Ÿ­´NF2Îrÿ™ °mý-;=Ñ\|¶²¸Ýs%•Éd±”ñµ3Wîφ‚8ìÕ«‹Æ]¯{ ³*p³ZöÞpÑV{êÿéï[›)[9¼ËVn½¯ìÍr<5ü®#kÙ´ýC>Z¼Ûؤ|þý¨U½R½Hfš¾f)!g–¬ÑÍ·éîîg^ðn©ùjÕußêÛ.™Ï×Ë5ÿc׳zÖZ‚ºä¬ãíEv\¤8Ë –±q*Ï$íVVVAd¿áûâ ¦c•‹mòU:Zäš ÀàªlPAB…MKÈž,òmLJÍ&>k?Ó®mžÖZ÷y8ª¶sê¼&H43V=QÐ=u‹Œz¤gÔêýâiÇ’¯æJ}^ª«ª$ô‰œÏq½œœM³ýRøJµý‹kiÈEVJ'` pW,MJÝËf¸GZ¦kŸ×i_ar¤5ĸ{N•m™%:(øÏê#Cò¾ï˜Ñµ [— ¥6ßk)”Å>"³&Ìú¾WWÈQwšÖ/cÃ_Xä½Vgš až­ø¦e”LÕú]ñôFÝ<[/µÕ·¾í2ùþ¿êÑã©î6òòçóùÜMyª{•íì9Yf¹˜ÄZ¶õ˜Êò×X»*Œcþhi{EÏ xóÈÖ¹’Ø6»{^㋇'BîqÄÝËÔÙ.iïºè´ñÙLž6•,~AíBÕRKtØJ pbüSÐÊd#3æGM.P±jÚ/5‹)xüLØuÙ‹#Ó=7a^›êÅØlq"ì~sñ¾¸¯öŒ­ªûËò 8{¹~.<•i.âkgr¯C-—£ ·iÕt+“ª¢jo>šÛÕ?„µj¶oaÌ XwÆ›vRJ:Ý«ÒQÖ¼¿…Ü67a ˆ«µ ¸gÉÜ>óÚ¡[b¹^íé`…cM£À^Kß|¿¯ï›ún¯¦ç Ôó]Áê»–ÐfÏçôÜ%¼_wXþ›’†ž*À¯Kb³šÅÍ„‘d†L}¥JÄ›è;Ç÷ ´Ìù/Ì9»9Ǻ}ËÙm’›4Ú‹µmãEÕ5t¨˜¨ Ž…l³T¦±5V¿>Iifáxл²:ÿ“ªièÀ"ÔY½8ÃysÕøª®šxhÓ‹§-IÎÓÔÁ%°k²¸ðo߇–ùõá½WSò^Ň·°îyÖÉ-¬^ \ÊI_3šÆ`aÏŒv?*Ü,ØøñsAc%œd#’¤# «¸¿ªˆ´æØ26qW·­ËfÑðV*ã,ÚÁTÊk;íWÌ•™`l3]Ø…,XêÞ°_0ÇÆ<7=7³_Gšuí+¥Qß|¬Aš³²Ï—Îá3´àÎä¨lúí_fÂ[µ&2t/ã1ð5Ïf¿xei,Õ‘»*„¬ÇÑoÅŠh¶ÿ&âcÂlvöØiÐÎÕšÛX>h«f_~ŒÅ^žÓ-¸ëW‡Ú“1®LkÝ‘8 K⻑Ñq¤zjV[å˕۲OÀìüÂäÓÒØVÿÅœ˜6¾&OýBøã̘ÛY=+-’’„:ò+»6³wW­Ór2ÏTl¸»’swZÕK52,…l@ö!V"VlÒú¨ñF['ŒÀA‘ÙS`ÊgðøœNΗ’«—ÊÁ²ÑÌ]×v:UiLú~jž·Ÿ–¶Ô:6 Ž*µoT‘};|uôÿ¢xÛXÕ5,4ÛW ©xGà*5óyeÈ‹Ú&>KRÃ%ÛÁ —²Ö–äñÍ›ÒÊŒ*¬Jã’××>˜ôý?k×¼‚ûNùµnœX|F½™Ù3•ç±CQÖðV¿ªè"ôkÆúÞýq¶åñÔåæÎ;`ÎZ»nÔ‚hâó÷£:V¿ÍCòž­ví“6%å‡T]F5ˆ÷sB¾ígmЭÝùÏ4hÞÆ‰nÆtìXüv:ölãuûÙLºs˜×Ìëô6 ½W1âòÛ>&)2ZåY#xrÇ|ʼü²pßX¾¿Š\êìyºtÂìr]9Mbå{eÓlT©±®tÓ·r¶-iÉ’Å$sÉfÃØ—-B`}éVMÏéó[Ü6]¿g›pßu˜÷Ì>»Kv×u¬êcµ½¦ö£®I©êÛê⤷a½¬áæjQ¢ÙmHíZTäúcéDþ,ÔõmëQ»ßwNó‰Êâòë³fjØ›ÙÉðy ¥ìOØcªŠ¹[7µÜ&B[,'ƒµ5’#<ÊWQø—Ì”a –õœ¿1·F/6€õd†ÀiþˆÉÕS£¨°½[×½i3Lúžðï‘ïê}S-žËe·Y6Å↭n;X¸u\®?±ÜÛd[2Ó×ñ¸k¹*"Ù{V㦖¢µ\X4àøÒhf¬^­^ã÷*˜~Õ0Ãáä~MæQf!©ŸŠ¾ž5Oä1¹Œ^cjØsøüÇ®ÚÍlWªOc3WtØðÛ>AòU(Ò§UòÐÞÀãbÃ=xÑlRYb¸…¥÷’×2–5üše`¯ —HlÃNÌ"e™ˆäª*‚’KÔ¥K©FO`Hù\ί'«a‡ÎœeÆ Óž’º³›/ÞÏ~šQׄ´EÓŒîR–Rœ4Õ;wx‘¶|­Ès™ˆh[Í6<ÍÈûpž •¢S<~2F£šö¹̽ãxËB‡“Éþ•¯Æ“Hݸ°ê€·5"+÷%×Þ8êU‡ ¬¿t E‡¤Õòï¹pH~$”JXí‡S÷äîBÉ'ì¢&Ãúlm»…•kÃr…jb¬/h%2–š@©,eÏ ±×QŠ ¥òé2˜”,dœœ¿-Ìšü»-ÒŠJ}qe+ˆE¨þÛíźúº_+^?2oÍj#één…8p8«Ù¶|hc‘d(¬ °V DAù=P;7<Ëñw·NŠyõ³2°f.Èñ|‚Œ@œ^£ñNÅ(,7aŒáàH̯ å”ã=¤†¡¸ ¤*>,òÆZ*KF¬àŸYt@ÞÚHß—º¼R¿Só ÏXKÅMЉkº“ó%}v ç¶]¿Ìöã–¤n&n©76ûUÓæ‹8ôrÆÒx11ž‰$?÷X«³wqÉõt`óž,!TV_MOøxM$šÔJH¥¿Õ”£‚Žìžý"ŒeDS7‚ñ€ _’ .èa„Ȝʬ¾êüÃ2ûd3p½§$’§õ‘É’cöjn}3ÿáàdMWê<1Eê›Ê!PDÑ2¯½D(hOÌEÈ!¡ùhØÀG®LJ-»s–ãWÐ[uŒÚÎþÝoƒßóÒ‡åÀqœê ßiöË·Qøþøõáˆçär;ý??.@ãõÉIdEBŠü–ì„·Ç,9çä‚Ïë–äü|“è~Å”À0`\ðxüJž…çûW‘ÏÁçàtž(Ü(nà{Gÿ×åÀðyãž?Á?ïçøìZxÿ;ðÓ¼Ê~Pzȧ³XaÂñϰøêxçñÿ'×½ÊÒEŠ%voü˜þÕIþD7'’ŃÈŸƒïZ#t˜r{™ß?_¥S‘{l—|8¯òþœs×ê.º7×W‚¦Vqôçåü›ÚøÿWá7©>ønÝ\"±ŒL Ȩ́ñ^ʪŒñc«!@€„KROØNE¹{'aê1úŠ1¯×‡UW«ÉôéåV•ú;˜ M¿T¨^T+»1›c W‚§Ô›?&0ÊF¬ÌjÀv82"e öèª^úŽ@ú?g”™uÿ¨Õ­¬Nœ>w¾É]±\‹F¹˜+ɇw%ËíU·sôxSf`‡îžVTFêÅU¥ovY¥‰È¥›„ÈÒKwˆlÓD…ˆ]H—²ŽÅÉ*ÃüºIÔ• ³…_Ç’ðšüÆè,ª7¡ ƒÛR:%Jôc×ñn¡ÒCòaRŽ¿txûiì¸ýñ³Ø!0‘±/ËrSƒúRÇ—‡ááp-íë°(XVíæ·{û×í›ç2J2Y›¬T®…½»P³Æ¦ÄÏÜêRêòŽTÄ»+!,I¬Ì;ÜPb¸AÊFAR 0)ê†Ca¤iˆÏHýßÂÂHžÔD¤‰-–…¥ÇYö ¨V9˜²ëBW«2•b¤vç¿ GæDˆJ´G€¶=¥~$ƒ…äú@É•ãËÂ"‹ßìYšQ€ ìJ›p‹]{2ÄÎ$ø_GMõ›R7’¶ß8ò€wñ­ƕÜAñä½…Âcg±ÄÅ=®#.¬«Ã$pÉÁUä Ì9žEn¤@á­†åúƒåׄxã'²Ê½c•‘$9:ˆ¤r4‘ÁZÖ{×'?Ól¤u\™U9•‹D|—Isÿ²X€J ëRCÃ9åeáÒ¥cܪ\O9%RÔ!ª\n(¸š¯2/!–åÝ¿ x®÷ß¶3ƒ~5-Ú7¾bSãmë9÷x2¬²FÂ(91–=# X¹‰Ø‰ŽW'Û8ý¡«'!Ë • TJ¡ƒÈIcò$E‘AÄ'èÅCÅ$VÒ;²;Siµrx ¨»‡¡U:·ž$‘wX¹"xy¸õ©áÄ@|:²¢·rÏ ,ÄHd>ÛõCÇ¥7ú–j… ¤zðݘW›§ÄœˆÝŠ¢|…‘$«‘ÂQ—•CÖ`HfBŸM:‘µ¨ÓæÖ²ÓØ0¸$e©0µº?2VbÎÿ©¿ŽÄC»ˆG*£ÜæI=ÄNÃÜ0…çUü¡lÀ"+ Óþ$h¡RU_øÙT åÃ/<¥"ë»ç˜$‘„Ö[Ü¥b4P™ËþRbU¾Nÿ锟nÉù`€pª>…ý¿/Àô'ü¦Ä1âl¦E˜H®IŽÜîžzòDʘÿº†R‘ëñ.Qœó_ÒßmÇ&ý€æ鉎òº½›>Þ8¥YkL ûq´È;*:IÙ:³¬ƒÚKÏÜ#•’¡%j¬Î¡…Ë,±¬‘TxÃpYÒ@ÎÊ¡b¼†˜ÆT­tDKUÝÚ”Ú^¢qÿ”8‘×®Vú³rd>Ül²¸`ñËÁP±¼j8¿¿ŽÜŸ[Ê›{pGš0ìM¦ÒóýKö7ûÀ’ ÞBò¼|dŒP§ÜüAhÕ[¢ªü@™²QsP¨o“¬SYö–! LbXËJô*…š§HˆŒü§RSµŠVluÙ-NÉÒ{“ÄØÂÄŒ­ôRPöâ`ÏÁ÷ßôIr½>BÀ(¸<úÔx“Á-‘¾̈0à·Çd‚’¨O~/Ô²q;üßÄ97”«qLµ¾//Ö†«ƒøfÆ‹ïM´ôíž÷ï·|v,¬jTÆ9?‘¤0¬r œ,†EŒ?êeY¹Y€®Üz/^”.ÁáBÈòÄ©°,^^GyÄ*䤳ñÅØ:Aá”ó<ãT†þ«pusüq²§ )ùã±gŒ²9ùåO_Cc€b2·Ý‰,Ža‰€eR°ò„Ý 7=Á•ˆä'ñ.N6u¥÷éi>¡U{[]ƒ¿ øa‡Uzk¨i¼ùhöúñ4/ed^²Gí7U<˜Ø‚CW^@üö’ªýÅâÓ9*Tú9¬W©*Ê¢Eìýݺ¸ üÊà!–éUÚ ´8ÃÔî¾'¢C™3z‰©0ÅÜ«'ØAóq_ã<©ôøž‚:Ì_wáB«CSÀ=œ~,€óí•ü¡SÕ}â\¬ïÖËùeõË}ý_ù r<ÄF])ßÿíÊ⯶ýx‚Ö{м•g€­<½ý¢©ÑX£’Uˆö޼‹ö– -÷ƒßP@>Ì‘I]–E'Û@cî9~C›ÝÊÇòêî§j¥•cBgÿùQ‰æAýZð7¸«”r/ »Íßñëă°àr=a+°â0£Ó嘉'.•ð]Qo×ÖàyùA±Ý½ÊÛ=üf»ñÈY™rÅš4‹Ù¤>ôhLmÉSÚx ÷Mbí¡¬Íµ6Ddf!j#îÅ «:•pÊlFþÛ/Q,28iž«?o`¼wšnÕ§c_¤†y¯â6Í޹Œ“-^åëRµ¸ öähBfä Kð¬dAQ'̲©·<úçyVqŒWªMGÑM®.Ïܺ ³H—-Íœ›éŽW©¡Ç½ÖC¸ì×h¡¨×&1/u$‘™ePJc aýÈä(ç©Hí±æ‹Ú—ßr’n”JmT!eD7+°$“pen¼lE™XÇ G<\Yreç‚Á¤tH,‹1´E«´@öˆ$À„§ h¦åäU&è3¥úcˆÀK‰^ÄpZ@GålǬn?”Jx#Ú#“ü“½ˆÉúáGµª«ÎX>¡ïÔfßù¿µowæûq¦r¹]—,ѣĪ]f@†2Y&3!÷VU^±{ˆ×y/”ŠI($q¸WR PDBDƒÁXÞ§ö£·Æ"çæ7,0f ௥݂*§5™,=Á÷ù-HTÆÓ…—Ÿµfƒîå'¦=š9 $â ÏyËÇúߘêx3bí-Û)ã;~L×H—ú~ÇŠ£5¸ïáñ7]’)6š1Ô’èùIoQuUâI ¬µ¡§ 'Q $"2²Ô(û![çƒÑ)êHÔæXÅß°·ßÏw‰Y QÉ02+DC+pRQîJ®‰ÚIá•6*ÃÍ«rEýY ŠXd; FV’g“³’žðrœ7-ð’íX‚޲4fÈf ¯²Ã›%‡âµd*¶«¨µ?{P"œ¼¶˜ãUH³}Äœ£žUd†yQ‹?Š\~¥Ç4ùAó阞Mñ´Û‹øê¾ï¨6÷=²i×i6ÅöD×–[MŒIMΈ–«¼lñÉnµ‚”rÚÌù«EÕvŸ¼åñZf?\\‡;±ì8*4óVs´ÞøÇÓ¢÷†B 8Êèeº—jAB>ólÌc­£D™Ã¤‘ê(–å£VRÓ]¼ñda6ISž :—%‚Û”»ý8”äigè%¯]ÜNJŠé#0ƒ†bÕ ²Y*·» §ux€Ûù¡ŠVBÒ×¼e‚ftÇÝIX<¥D6¢ `[*‘ñYŽëåí_Sñ.{Ì´7MW ¯Ã±c[WµNòìõ­fékµëáîû«RóM•»pdš5™b±fwŒÕ•Dw†ú”§&Í_Nܼi½è•­£LÀAÎÙÀe’jû×1a6rØžGô pc½™ º‘þ \°íé'ÌrúSŒg¨E˜J1m$4Ø÷[~6 dtµå™ÊTôÚÛxìÓ…¿÷w²ÿw}\üWbýÞ^è±pT‘\DÂ(æVa÷KÉS'[0¬ÆnQegeıº‚ñ³DÊüŽD@Ó2»qîÆ¤Kgmz¨)ê-¥ç ä1¹ì®3Ê:%œF ‘6Ç’¥±âìÑÀ«Ú’„vU°U!³Ihヱ[6âš”Ìö#TôÞÄ}Cø—3³O­ã6¼Uœ|zÆh­ºÃ•¤Ú–Lg¶Öñøœ~]gxÎv\̉B,x?u=£öPÆIêçh?ÌÓ!‘[‡š±Ç»Ù2ˆéj·ÕmÈ¡‘l÷Íþ¯Ã7y9ÉÝ7wâY½Ãi'½ì³$}RõˆzÖ’7WǨ±(äIhʧa#>Ú{32)-Y‹[Oþ=!ÕTÂ~Kó M9¥iC?äo$ïã5kZѵ»(\\´ —?³ç2K5¨`0xÉ®ãꇞS%L®FžÓ‰\¡,_Ô'ŽçÖñ¯!ÜÉäs™vM?ÊVèk{,ö¿r:9Xc iªäqk<Ð5lî>{8ì”sGj¤æ.Þ¤µ´I–¤I Ⱥ »äÚ±~œpc§ªBþZг`'jº³%lf¸°M+Â÷¬{WOuRR‡±•åš ,à ÕV‘I™@õc#Lg<[»J2ùØÝÝמ*#)±ŽUB%Ñ–·ì]_låáC2ôVg+FpûQ9 H!~ŒìÍ%nqv?+:Jø¼ÂGþÐÅËvüÐ`L­!#“¥DvD#îLÞÜÔÊCÝ„ºÞ&»ú9úí9û9{*˜ÿ¥œã·µ;sÌÈHY”“æñ5Ö>Úæk/.I§ ø Kº°“èÄ%X{%âÿ#Ö_ÇòÃAl,¶Áf6Ïg;÷ãGá9ù2v³]î»ö{cˆ–$i{+v»1õí`8íܰ*ÑHꪢÝd—íáP-Ö3N\ £TE$’Š‘GºWÝV* †˜ÀòÑv†NæY_],3•„J°€±Ô™Bû<³ŽC )=«p{FĬÝÐñèÚx’ãH8ÍÀWäð)8?‘,~{ŽK~ùødrZ.¼V_å þvª3ŒÞÆwÜá£És6Œê+8DÓ½†~åf(œ‡´±4l$Ó‚S´n ž8øU•”׃U}ÉP0϶¾Ë*üÆñ¨(¨è²—¼Ea>E€ÎAVãÑ~%ÊPºµUxn±I½˜­°oÄ9.ahÒÝ RËr³zº§ý/ˆi*±‰ã‰ùAÑ”´²IøUäŒóÀz÷­a‚X ©¶U9_FLcå%Y*åܪpòûåc®¨²ðˆÝ&£=€—`ñ·“´¹¸ªÊdf§4~Ó?&6®{Ž·"Â’Ë 'qèqâ9Ã+ÿ[‰P˜y?i!ïÀ"A–üx“¡®X‹Ù[žÀú'ĹAkVê»;ãÈXŽ{ñ±y.`P‡‹/qJi<”vßÒÇ!="i£2$QI7oÚ,!šOoà²F“AÄòŸàfÕœIÄŒÄJöVDè`—¯¹ñ>Q·ç_ÿ…ÛžöìoŽý‡à¹š?—»µ›cnçŒ%㈈»U…<¨—\äÇÖR«`|ý¸`V‘Ìä“Ï¢ÅÛxËGøóÇùÅ @ÂAÑ»‰£¬1=$cr;…e ´À™ˆç‘Käʰy”ù=KsÁOÆ^A2?æÜ·Ï¡"ñ³3YVQîõcM‰1´¤M!î L®®’Iû’³ÏÈä¯ñ.JÕå•îw¾å{÷ú·àµÔ 7Ù(]°m·•ó⸈•í A3@ + O€Í×ûÚÁFr¶U8[i,+È’¡-ËzÍÁ,é*UU`ªæTfpL¡LldY/P•Áo기Ë,hZ]OÌ2æ qÌ#–¦ýÃ…=¸øø5ÏÈAÈ~ßЃÅ3*"Z®ýU£x–‹ðÝÜÿg/ÙcèXöçºÏØ©þ>”ø‡&HM[W/L©ÀwÛzÊLjò<ÒÖ\ .60ý3N3ŒñÂGÙ^HÂ…tíóÙ‰ü“Ü!p ²/ÔMO€MÂÑ×Ýye GÕ!î ’ä€û4¬Šq²’l‡ID¼Þ"™ÙÌĽäiЧºFËÀÌžç¹Ø?ÍÄy#«ù!Š•v1ƒ/ÓéÃ~˜ÅA¿K–’Ä[Ç»W¶-â.{*$I¢mYÏ2;ìã°b9û8ûqµvDB:‘•¢y~bXÏ=œº´uvép‰5ÐDØù¸©IDÈÒüÞ&˜‘'õÄ’_nE)%MpLÑz‘”aAïÉ&&OÐx˜’¡s‰ø±e+MËÄ!€¯¾’~¿ñ< 9S*öõˆrFMi&6Œ³Šðã7uôïR\Ÿ3!þ^íúŸËXÆl¼c+~!gN§ÜIê̽}™ €v^ªR@Ó¨Á;TM’Ò¾´P‹xÏt#”þð:wY\”P&HÁ€TípYáç1Ò#¬Êš;N ÚºÒvÈ¥¯»i‰éE,iUù<Æ.C»~W–7¬€4GÓéó¼¾´Í8Mg'%†jë°?ÛZµ9M}(|ÇNˆR·½f‘Áôsãa­V+ÙL‹Év„2ðX´}¢Yxû€±4^Ð S› 7¦ü<ƒ kê=K'Õ“º+…£½å´OÏ"IÜ’> ¡dì=;"Ÿn@ËÑä*åQ0V CÁà ¤ß3ü1áŸÿ­¯}KØÈ£ê«ÊI RØðÌ ø`[°rRý™@R®gÆÛÓ域Ñz{ÙÏÒ­ßÿ ÏÏ•ÚéÁnÇþ.=7AŒ›vóÇBøBz|Ôxàv`GáþKð·ŽWž ,~ ¢²”(GÂüþZðoóûÿ>ׂT0_ÑåOû¨U#Ï?¡þÜ|’xç'ç… ðÀô?%G±¾ïü~½yî:Ü5îEÚDP£à‘#BâŸÚ8? ýóúozÞðá—‚î‚JŽÀ’Jqóúÿçsþþ½ëDdô™j¼¿Oôâ™þgèb¿jãœ?QRúôð¸ªV_§o+ÅÁ¸]·*²D#g–`ÿ¸c®yQÐòb$}Bg£ßë¿À‘Ä}¥“é×ʲrå@_·Úð^ã,œpK­…BŸœãÛN>…Îx¯KØ3›FűTL•Ãǵ¼_œ¡ndþ™VŽõÜŒÅiDº,ÞžXo±cÖ“¬‘§¯†ÇV_—áæCR<ÔÖVPÔƒ4ìÚáÁŒàç8óùúláør e¹+fw>µu‹»¬~<úáÅxS=äœ ¿ëÞIÐõÓ3›ÁÜÒ°:æ<í{fOO§‰×q;ÑÍîÛ+øßêYÌ>·NLv#SÈa³-%š»6"£¾÷Ö¾›RªåhøŸËùŒ éüˆ˜M‚”5|~wþRW—)ä+TkÛÜ+^ž Z|®å¼|v6j\I‹9Dd¼/ÐW„õ¼.^×s{Ö+_Ãh>7ñ´ØèsdFG♢“C¹n|„sZÄÞ¦‘TŽòc…k9)‘ndË‹=½J«ôÉãuÝW2ìrQÕ(y^IŸ" »)æ\%|µv`:ÉdãîÌÑ4…)=¹ërê}hÒ‡Å6g§Ó`WD°1ÞKyË’ïu¼gœùHze9tÓ}E-1ÆÝ¶±lqÙ±€úÑðîÓ¾atœ,ùkömÓã<Å6CR¡½ë%›+&=N|øÝÎ «Ø§g~lÁã2õæÅWŽÝ«–°/“¾¢±Þ:ò†OG»­mÛ…š¸¿§ú}kVÃk ræÇçýÓiÑõ™"Ìçv#·VZ÷JPŠ×„6¬¦ç¢˜ë¯&([3•¶™ /ÏõX=¼_Á´ééüI‡ÍùÄŠ4¾[Õʤ‘,ÜɳÂjÏ”&±ŒÝ7N#¹2êŠ*6z ïmŠÇ -‹êN_L~Eóö‘O+‡±¬cóж7bÄ&s-‚ÏêÙèõýŠ¥Ì>¾ÙA±u„²V,J[—`O·l}(¦‘«,=ª}bdr[ 8÷ÍÖÏi°ùƒÇº…ݳhñnéá½µ]¿Dò6É•gñžï…Ö¶Z´ñÙ.µ]w{æ7 ö¤ËЈdn׫#ð.‹OÅû…êÏœ­ªíWóù|¥Ô»îfª_Ú3O±Þž…êõýœ‰-JUøÆ*}´§ñ#Ñúeñþo5þ°ÛóûŸ¶‰²ÚÞNÖŶå~úõºZv½¾`5½fDNR]~Ž;È›”Õ±q¹9;y,·Y«ÆBëé|BZšRÒ™ó™QQ-bYœ%GµY”:œ¡HÏMBK ,“ FXC³rÝ1\7k}YêíÅIwÅþSÂfvü•³xÓRÈC©Kœò½äIî.­n—ÚlòcµÛR­·³¸LÍñs ZÈ4÷=ÁŽVžë¥¯;Yð¦oJÜ0;&r¦»Ÿã|¶…?!œ„rg¦ò.Û–ºsë÷<]¥bqt³9-¿ zÕÛõoã"Öprv-CAùKé/DƒV·_#d2Úý S  m9 ì3l6Ähßv5lv£tÑc¡È]®×ïs.N½©)X<§ ßH$,»e«Ûžsx‡dÑöº[þSbšæßGiÒr™l†:Ö/-'Î*®r¦a×3X8Ûú4ø,Íìm¸ZïÄäƒ-3×ÂŽ¡#~³cxìðW”c4$ ú‹ˆI¢5íåüݯn·ß$ùÿœuxÖö#V²Þ9·åóyÎájì÷j`¤Ø2¾YÕ09)bÇÚ½’Ècn[Ëd25ï@¸ÓXE WýÉY³·}NØðV±V_6áéf2¸û9YóŽ3š… nö+Ëãñ›®Ï†Íä·)Fb;y½]‚÷ÛУtUÉ*¼=JþFð®È»&µº ‹hз½[‘Àá÷"”s0êùk?y“Ö²1ÍÿMwk ÒZX¬s=,Œ¶%«ÂÈI‰vo¢ßl¸¬†æ_|ÇÑÎ`ò¸Mµ ËCnöÖ2YZ{ ¬îrÞJ9e¡œLÍ uéobÄÍzÕâä@Î êÞ'©=e)bçšü¶ªB#+.û §.Uùf£Q£æ=)2}äÈE%õK)Ç›?Ö6‰„›pŠmSÈÚö# ³yOÇ8/$ÛÃê¶õ|ב¼S†|ÆG ¦6y²rÅ“ ú¥¼Ý 8û–LNM*º %­¦}hWÈàö‡1¢eN¯†fÕò_Õ4ý:<Ý(x[åÇËì÷¶­¾¾[šÝkL˜Ì-[-œìÑa)#Q•2>kßF:í¬§’“É»†Í¶a3þXóí©iÐädMs[­å$þy¨ϺÖÀ²Á`EÛ-½D·cËÙþ¼aFzG ˜Üð2b1º>"/´ÉÓ²‚ Åô¼CBS[#Ô¤µ‘ñþ:\ïjFâ!-·Ñ¡ã†ž¦"ô) 02‘®£"]PÓXm¾ÿÝñ”¢—£ÕRoÕ§±ÁU†%?­M:{rlqc¯äô“[ñö[ÇQÚŸ\Òòg#´c27òÔ÷-‹cÍÁ¨ë¢¼”¥3ýZÌm‘T«iVÂX3\Ù©ízÎe¥ŒÍãjì¸<^vvo^¶k[1F,Çf¨QÈdh&N«YŠ Õ±yl• ÍÍQÈݤ"³=fÂýxç[ÁQÂêûw‘5ÿ²Äâ02òXì¤Óbq5òq¸ûÔ2MÊDkäì­VµL[Ú•™l ¬´mÆ^=Ò|q§E)zÄeU^Ò kôihAŽÉk‚R¢—ÚGI"” ˆ§+ëí©<¬=$çÝŒŽ´ŽJZ4hÛFUY-HéuWøIýÙ ?ÏQ3…˜Èœ ЈäRvj?ÈÖÝ>T›{úKiÏnÞ ã4,œ02&QïqÍ×ÔÇëž-GgBìÑ(^ÇøØr¼Ae^\ƒÈÿ ÜŸËñнCpWàõà©ÿþÿ.$/!þ@ñë*ª÷÷˜«pT!8*ÏÇëüët$È„þ]]WƒÕ€#“ÏÉføå€ûŽ}yIbóÛß;%žøÿG¿‡×ïûÿglw½P¬A H§žŠ³>Xp;|Áá¸ùõð=ik’¼Vøà’±…*O¬êH:‚TŸ‘Çë ób¹d·bCJž+Ç<7³žÏïÒ¹-Ø‚¼¯û¨¿`÷n¼|žþïþ_¬:³zÊQkf²P8ö÷^5Búr¬F»S{nù£ÏÓµgé$±1<ðëØƒóÙHV¿ù#Ç!@<¯ì!–³' ìaØCÙ\ƒÈnCePÊÁ,#Ö÷ÇòÀQIR®KžT ÷óÉ%‡$òÏqÁº( húðTþȯ÷±ë×üŽ8-ÁàŸò}+/å_Råé2ÝãÅ×~½R­€wÙ£o®Zàš½RÅĬŸå:¨ ½—ý†ÿ?çñô]d÷*Y@'€@^?1n GP[¿ úõ+Ì£0å@åS…þ‡öð9_ž~9ýžÛÒ} *9'©B;|¬y#äGÛ·üz:RpU«žà-ý½øeŠÎ÷°»oE¿ç×Û¸ò§ýåz¿ìŽAî9€ùá’¨)ÈwLß·gÞøÛÞ„³u­f^;‚zûA¸á”)-È'Ž:ðëû"{Õ$îËr#åÃÏü)ý 8-Áü¹íûô±jy xgqÈäÜÑ$qÇ÷ñé*êÆ³¨u˜™¹ Ϲò9/Ÿ÷^?ÏûúµŸ7Ô‰IŒ]±Øßn Kaªv²¯lŽc±ÀIj&)ÛÙì¿—fRPö<_ñÉ*O<ð=`IY‡T³_É”Æ[…fý|u¯ùẎ v• th!*¬€B~ù¿ÝÇû~þØy„^ÔƒöY¯âHVê~ùsñØž ø?ƒ0jœ9©H{yý²æø¡µzGµ8íAóy;ïÂ)ž !9ŠñÊâäðyà·?ÛÈøà$qù|€qî×@zW°CƒÇx˜qÈät_žÃž9’äWдãþXÔº—òÄóÛ‚GÁöÃŽ€>ùô°°Ž„îÇþÛÈ|úô¤9ùàŸ“Ç£)t¤K‘¾W.Ý¿·³Ä3‡Ú¯õ¯÷=øA–h]€‘½³î££¯ã– ©CÀì?Éä(á@)í’áTcØ'#‘?¢O=WŽûkj‹¿CÒŽ:0$óÉä“Áçà~¿\zD”F¶-‘z™òY Ôp9äòAà·'ÕZz™p˜h»½¾à[õ¹]¼3lE¼­VÅP?LnU<WFßrx< ìOÁü‰*þïž@åˆSù>d]X¸‚PW!L€ÕÜå‰ùy9XÐÌ’(“Û_Í`=KþÈà`IxãßÂü|ž>GìG‚"ï0 mA‚±²8þ‹Ü¯ºÂVá“Ç~(¬B“Ïn@ãÕü–¢ó\¹oüHÞÿénø1Ünø£\~Fµ( ¡r ýŸ?ë|Vs,Æ"U‚ "Èå‡C+/´ÈŒ ($,X_¬>êgŽXºƒ8¶ç+RŽP‚Ì îC#¬Å„‹È‰½—Üèye`/FMhP8÷`ðÌñ³*¬’0p¼Á#:òÜ€æ!2”2¯ò cÛ@+È[ÒŽPd«23–’å~Aä±Ê¿Þ§à˜¿R¨?ô,{/çײÔCJv©Ñ*Û}Êñ[$¿On=_2mz£ºPY~[ó½l†xTتó±e}Ä‘TåmDÉ+¡“³jè„…¤e"jŒY*ÅÃÁ}ÞVŒ->ówÓ;ùs7¸g×eæBmUÇxãb¥LO˜Ð·ýW!—µWn§Ì¼d1V¡ÉŒn_ø>W%ÊvÔn=[‘‰Ø6f–r#LÄX•9»KyHæ0%·Ù(6-k±9Ïê#Ë™Ÿ˳ɘÅÿ¢u­=jŽ3Fìùw­Ö¶µ«Y<ƒ-JíF¥K•dq'¶kÝi8÷•=bÕtÝ ?Ä\ãÓ ‰wÔÄÈÝ©w¿jí\i‡Y­(é$d·—¸”›×¸q^íýù­fÂGWpñFQ1•þžr“Û¹…ܱ/[9à­Ç{W_‡Ú(ã²pç,ém4{FÁýfæ¹€ÊÿHÃQ¹zµ|¥9çÑÞfK0Û¥˜Ò »ÿ#ü×âç´5)䳞VÚ2;;a÷[#öëѯu zÖ$þ©’ö~ãúRË]=óÆéŒðWž¼ßå«–ŸÆ››óxÝssQj^+³—|NµNzîÐÃ%º¸KqÕ³yƒÖÈK-«jȧҹú–ß.f$Ѫx*ä>TÈdµØu}:ǵé“k[&³_pmŸfÚá°qø*øž¢ÏêÖv ºÎù.')Âe—V®ÏåUßiã38šyhrço¸ÃdÆ+'‹š\¤Ó60Ñ¥71Õþ‘÷vÍ]·âmÚÚ´œ­íCú–éŒÖlWÔŒ©o5ew ÿn¸6ûÕ%4ÆIîG‡×k±°Ø«Ó…*ßÕ~¸¶o)UÐdñWµ˜òv­ªnu×xÂm4)k›†‹šÙ’…lµ2ûk’ã¦ç„ltV)M åFW)ØOøŠèÚÝmZÙ’örõØ4·Þ3oQ©·Ðÿ˜;&K „ÉkÚUlK¶cpuiÉ•Ø"Æ¿¸øŠ’õV²zúªzŸ Ö–ŸV¦¢F„QœFꬫ²ÛÇÕ8hGžÓê 8[&Reбp-góQïe˜k‡.+é‡ÊñbÉ‹Ø5öØf;,Skï×­ºÛ°»,ïÛg©?¹Qa7_­ß"UñÎç´k> ¡¯å¢§æK>3Èl[N=Ø'úó¶GÂ[í¬æ*ŒÏc‹½kk!€–×IÂ4ôe>Ü›Wã-«=™Ü|¹¤ìó‰²:mÍ+?I¢#âðûÖïék’Y„˜.¶)Vüu/òc†«ÖžªO¡¡¡ðÝ]SF¬ŸHIë"Héèm¬Ð!³Y¾òzœä4å©&u eÒ…´6Ú縲÷á³åOïvü›£ù·Ä—´ñ»éúŽÕã솭äsõ·LÝ/àórC-#ŽÍã3X¼® +úýÈlÌ™|e›µ³”ýóVx`ï.ý,yóËÙ¡—ò>ŸÍl:ב±[ ÛØ£ˆÕäÛU[Äéuñ[œž¥«¤C•¶ÌÞN{BI^ÃXœ@ ¿`…QêU¤êïʱ/̲»ühlƒò¯ËOÒjÀÖ“ŸJÒG(j±Ð0‘=ÐYL©ñÝ¢vCí £º7· \YR]IõÐæy-\ujTÛœI¤l"uVýMFóŒwÏ´yÍM1zb±”IJº„ß4-VõâÞ9YŽú[òÇ’«y{FÌGãý?S‡Î>vØilo§lï[ßñöÓã\%ŒFFÆz¾6ïŽrRì',™®ù[8ZƒrÂXöò"C¤+c¬JØm³Å—1Ÿéï¥ÚÍFÞ¿¸b¬M“ðv¡›Ò6¸ãÍa6ˆr¸üÅpdñRQûlÎ;'­FÍì RȽ™Hyäi¬7F•@c#L‘‚ ½bcù×~GRlŠ*ÛŒ }Iš@Q,~•êüdȱ"ƒÚxâ^Þêq²3ÌÁAÍ…ræŸK-F¢G¨•xk‘Ùo/<ï1ÕqŒ§¬”VnÂöw£Çn9¿Žú+ò. ƘíU¶lÍ{_«¯âMüNõ† ßÓ6ÍÓ;S)Zþ3q9ÌB• ± ’µk¶ëãä©,!¬Ã‘1C}¼{¯åµ]UÖsùTÏg0î+•ÉVª*G‘µV‹%Za‚À’D¿oŒ÷$±jèÛɸiûUbx‚'%‘ƒ)˜¿p=–c”pôÚN ©É³Àà71Æ\Ly*³'#¡tkNÎ$À[¬¿Èý’Zœª·­¯'¥ËNSƒ&LcÛjÇ=Õ±½öñÅÜζ§L5€ˆ½ñŸ?å€2^´i'-+°eêU Jc™Qz ýµ5l 1¨±si¦%Ú°¡[’mF¤KÞ¼Lþ¬!dù2uXêû޵¥&kDC#F¡úÄÝ}¡‰°=£˜"3/ë ™b»B ˆÀEŽL¼ŸN]:A>Õ‚eY ­È¹ê ±—'UT*ZE‘y’ú+F¿’ptëcG], 9æ×$P(Ï|çcÏ ¤Kçiâ‡Rµb–¶¯]5½W°(ÜrÀÍ‹v) ¼?=Hç·ÏzË«ƒîvPy೫ò9Rz§ççŽO|þ,?DDeìc |ûm =?d0 ~À+øüuSÈù>†:³?Èÿ B¯è•o×rß#üò=xùjš-)§ô?[Æ}Î=D±ï¾}ó{ýMüc€"iÙ ÿË ä°•#ò<~‡qÏÉ$þ‰1`ÞÙ Oä àŽGÏÊ—Ÿð|ëc^¡$*G%1–ÿ<ü/öÜ~ˆùã×€,¬dpÇŽ{uoý;aÏ?¾OÁàŸUNdº°1ÆÅöÞ·¥ÙØïmœ4IÅ3eÕXøþÕŽ×uŽ6f†_‘^sûêGVäŸÑ$và‚(äð A;QRÄ}Aüœ¯Døÿ'“ØÁázôäðÄòBÌQô‰n>GèÊGÊóûàqÿÊøãçŸ^¶ Àà' Àä+#ç€È>GÉ?¡óûçÖrmŸS»G¾_ßèñk‰œ¨Óúaö¯<$°f ò_ãýøì ò·%ºóðAóÏ$ñò$AŽŠWç•äðÄþ]Xïÿ#üŸ$Ïʬ«ù ˆEWeü˜ñÇ,ãá¸ç†ïõèh#`C"¯N ܳýäñÔ¿ýO|ðlZ6/ÎhÛÆ÷jÉž8Q^¶ß§¾ÇßÏ·ýš~J©Ïo†° 'ެAä?_¿×#d Â( >?»ÿ.y#œsÇÉ'äè»ûyzOuz’H É Ü8à|ƒñÁ ß>‹ÌÊ]bJÑm¹ Q{„ìü•ÿ$)åOÁíÀŸUŒœu^ ï¶|n~•¿óþÜÄ{¢ª÷,…à©äsñÁ<>ø'5±Lqr…U¹î§€ÀêG,#–=IçŸß>µfq_·yrÄ!+*©R€–ÿäyçò<üò¼rG¡íÆYC#ðzu‡ìŽyýðy?ãý½þbÑϾx[}öq|C|y+o×?ëÁ«Ã•^ $3ê>Hä?úü@?#Ö¨T¹è9TåHGP£8?Hä'?“1oŽ;'!Ouà~Áùù®ÜëI€^UÛ’ ’ >J•ãçÑàþýMüþçû~Ü)eX l_ëO÷þûûªXHÔçPA=JFÜ€ËFÌ?ö1ä|ñëÒË*²C,nÌ?”Æ `ð»ž÷Áä 8áÏRì:¯` €?øøøìH#àÿŸ“ë7:Šä;uˆqÁ¯?®C¨ö8žùôr¨¸øøà°†~Ïf%@?ãŽçÓÍÁ^ÞO;‰þÕÂÇ«7‹ñáí‡?~0ÆC+GÔð½~BG‰`O<ÏÉÿZˆIP¡ƒr£ ?<«Oþ r9ùý’éjòûŒK+³(±£r#†¯ÏP~Hƒûô,‰Iòc<$°nþ<ÙáÿÁýóóǪ­óú/jííÛÛƒúþ‰þ{øïÆL†f>Ãßù7Ü>7'õÇãÑwöáP½ž¼‘ÏóÈ_ÛpJ‚HP9°?$EXýà{€ýÏ*ƒû”óºüzüöçü~ÏÉõ´Ñ†•ËóÀP:òJƒÏ!¿ËpAU?à9ã§£SJÕcØÁÚ¿Õâ=AùO1WèøÂ>ÿbï„«:*š•Öã– Ç%“^4·ÛÏßòá}µƒÉbä Iåní…ugAVdoí¤ö$±¢2ÇnB=ÊQ´V)+Í4ª“T‰#¯E$I#’ÿ° _ò~GãŽ@ÿÜ;åŽR<vQî=¨‡¶À´’3AíÆô&VìõXjg÷c™¿G®ÃÓñZ=#–JªŸ–Ül–[x^1ó½‡Õº®’Ñ÷+½ï_§š©3'ºIö¥@P£–~YJ@±©8pAŽ%2.BZã}3ÿáçÔ`þ¥U@öÓê—Éê;òI)|{û©0-Ý8!G,½ û^Úô¿R8 WºpÌ]£àH²IóÞ r“L?Oø§àO oø{©\Ô²H¡DU~P쬨’«vÇ’ÒÇë^S…<•©?²}møÒ0Сÿ‰ ǘ•àöÝ{w®2|#~gçßþ'ëÛŽ„‡ñ,\þ¸ÀoŸ’>>~ ü€O–«%‰'Y•^5k³¯Û§CϺ‘‘ÂÊyâG Ix‚B”…8SÊ–ëò€ÄñðÈHìG#’Aãüqωμ«’Î~?ÀàÿëãáŸ×÷~¯>P—²‡‹öý?ÓŽ¿ ‹áˆqÁaÀÕ+Ùˆ*Ku$pO<)ä?'×½xI €Xƒý¼õ*>y G¾Hb~GÀÿ½ël%ªª ®åÙ»ó|g”[®¯6ÇŸû×Ðã?Qìßü;¾ŸL€¼Iôõåæê’6Ó­©v—°„DäÍÒF€7eRò'ªµõK—ÊTÏù.âËjì~0úOÜ7+Pç2ø½§hÙ¶ XLýëøüª9\µ[F”8ú5,©Š=¢ÕòRÓVhí7ÔyUúíú|/#'Óß—Ö(Ç! ‹¶k'¬lOÌóBªüFÞÉìéÛ—Öpy,Þ¹¶ä±ðœþŸUpNL2E‰ÎE Lö>gà›˜\‹ÁMíUœ?\JRÆF ëü7B\ÇÃg¤H‹.jNôtÁŽá›o%æ½×Œ\þ¦ž—7 ±ê­ ¼õ;øi»²±šâ¨x’M«HñWÖð3yƒi4}GìØ»š™ Œw5<®GZÖÅ,lóÎ’âeÆët“b¡¯BõvZ4¢”§ÞÙ„ñþ}ó> )¨i›§‘fÁë[¶éólÛ|Ë{B–ø-;\Ô'ÈI¯ãcÇMœÌdsÙ[$sÛ–Öa¡{‹ ©Ùƒ%ŠÐM j­”h{r/«!És1„!fQ‘=IËRçqê#DcÕêoÊE‹Ž yÔœ´ѧÄ/MÅíTˆ­]œqÖÔï“wüN:µÿ ÞŽ,•~–¶Å½‡ÄY¥–Ÿ_ò^ b¹³a³sá1ðÒ8J9JÔéåq1Ë;ÕšF£›¶·#÷¦}Lù¹r>’áuÚõó~Â`4\•<ŸE×·ÝÊMë1V qä6柹œ’ŽZ ËWXÊâaµ—•p¯:¿[hã1K4©7ÇN¯º ,^óË h–÷ Y§š5–Ë<°mËçN;5®% írÕ(^4éE©…«ãîÉ’¼3ÂÅ$tÄJô§ôŠ=T|7™Š/;&wj[¹W¶LÐÕÙüÿO·¤Xؽ(¸éyÓŽ7î¾_óæ{ÀRdö-çdŽMûÇ[ŽñjL“s —ÒfñÇ›(k•ªâÍ%¶§'­¸Ÿ'NÄ’Á-ÚJÐ<¤tGÂy’mÞqÁ‹Ö2º¦7fÓrÚþJgžÄw¤Út\FW2µC±q÷@¶ø¸Ê{ö%–DŽ¡ŽX¢n¡z2}²¤9dn !ã+Mؘ]GiK *c`}5u? §X\ w€g³×¶\Õ©l5¹ldíKV%—…«TW§´rÇ5ÿ‰Ëty=]>b³ÖuÇ6˪úA\-Ê—óÅZœÖž¦”´ˆ\\HÕ$Za‚Œûn¸‚ †¡$?ehË|Ž™Šþ@‘í<\AÀ™ zÀ‹¬R›– ¯#”uç´a‹ø¯oƘ• ;Lbe pŒ¬Ï,G²†Wâe•Y¸æ?·‰*8v€Ùÿã 8>´yJÒ/¸ÎÞÛc'E*=Åf½Ô–e® æ˜Ø˜»iyvÉ›ÆÝóÛ~0ìwhVøßêïµcá0–ÙÑÕ(”·OÁ‘@x"O„2¨÷!ncŒ{#3Å#€:wU‰Ä`€œ£*"xd¸ ë“îÃ?yA׃%Û^Üdº4A‚82³Aâ)]¢T†öäŒÏó)_BÉ$eÕ£XÔ:,©×ùcö\²F`sÁ”³©Žû’IÚ¼ !_VôÝI·šîg±]ñMQH¯M–׎õUýÛöÁ½%I†Û–p¤È¿.Þ䟑QrÄ;pêˆL½AÈõ½ÐÃ]Vh¬3öŸûÂ4¥Ü–”ƒ«‡ó’XÕk´¡Oþ(Fì|JÌC” Ô%î°hÇý֞ѾUݹ¤oÏR=‚!e¤^QHáŒÈ p€öEi\v€~Tä–;“be%¤G¥%äéµÀà<ÝGôÆøàÎrìbñþÿ÷àÑÊ(g váUÚ8Û³¡Cí¬H‘fRCq%‘ØYáÇ¥ ZÍzYüVFàŒEVYk®ªeh&ŽD eU÷$¥HàWb=ÉcJ¥8Š7ô˜J¤M€#HÌ•Py¥”‚3g‘[«$¬YO ûŒ 1,®RÝ£ˆ;FüㄬÒ(þ1 [+üäL´ÉBQí1Œ³LËËEì¾õDze¦úQÜF‘#ãµØï‹ÃÅ™BÕÞ™;"¿”¨Gfêb‘ ([8i+r^5æGà=n7íQ™Yr±þCݪOÂ$‹‡ìÜQÀ,ߥëùú­*èݹ¼ƒ/VWn¯Ì…y"G‚"™IkËø’|Š’"íî ñ©Üå8G$|öû(~z„P}õÊ~¢7ó5 «ªWlö¯ªïÛn:Ä5L‡¶¬×=îø±‹ä=N;0K6JNŠËTåf†GàæNU¡`@±Xª%€'æž•È&õÀ͸TÇXìSŸÃ²vÈ*‘±ìXnŒ¾«`ò•xú¯¶d½ž}äbª0ü¦^eªÿËôƒ•õ¯©. Üì gf_u ʪU¦#ò°H’xnåç+–¦¦Àt†Ûö|ⱎû“âzÑ+§N—¸á³&NÝ·jûY{LÔ&’L•žœ}ÊS,f)(݈éR²žDnz²’yô$>OÓa‚5ûË]cBzÇŽ™¥ü&h§„ <ûÐ% ÕwŠv,Ž¡ky~QÈFa'Rü/½$d°ì~Ùãïè8å ŒcrÁº(¯ÂB~Ü*ÿp‚sØR°ß•¿jJóžc+ðNZˆõêQ›¸÷£z¬ìÝ÷Çø–·UôéÞJz•ªÁ^+üÇ¡ü©¥bä­)"CÈÇØ(¥’‡! ©å?fP9QÇ$ÈÈE'!0cø€´§<³Ï¹.¨¢G@À,@º<‡ñ©=¹öˬ©ß·OÌr„žÜp±7â'$ öÿL­d”:È#/SmÑ]UǹíÀ€”a oaW–£c‘h¬s &?å¡r'«XUfù¼ß¿nÖqˆê¥Ê0>ŽÅo-K80y®,¤¾DÔT˜Ÿ%(pΠ-Y¸,¨]_ž®ö@?h¤ö™‡Oƒñèl”4äéÈÚnΠ³™”+GØ;È<Ä_Ž«0x¸,=V.WÜVŠ0T‡÷cÇÚ.Ž=טŸÉeÀ«Õ”¯'щ!RV!²Ž^¾á“ÿ5p8Û¯< Ÿ¶FKcžÇ–—Á¹d¦Z€·wÞ%m@¹}»öá£ñ=_O¢lþ]ÃÍïç w³²ùCMhØ …°YJö8ÛA-Õ#{–àò^‹óèò©µLŒ‡¬I¦:r0Fü»•Op{dðßÍÂõ öõYãB’{LK€OW'ÞíÑ{Mnxëb>Q£ÜÉÃØEò¤úÜ£7ç£,̤$ÅðˆÊJ±qØŸÅ"É&Ìd ãð^^%|ÍDo>Š{Ë Žù¿ïø–ªiîa»S;S½µ{âÒÍm0‚õâÊ…˜|Ýöd …¹a5¡ÉZõƒXoÅz’V¼™§Êò’¢ŽT±¡;´¥IRðH¼™c‘HjÝG3¡î¿‡ÏªÊܲ†^SÝ*ˆ£«î"HûÏ%ƒÀ¥n°x,~,­LŒÀBX„Ä·‰e%~¢%GQÊ~"}¢þ ‘ø'."jj¹ÈJ6fŽßÚÜoÁ>'«OT`WkÍØVÅ_Ó ž-o(iÑ׉Zý ªV0ßÓ¬7<€ÌK/?Š/Ì® è Ý—©Þ_(é’Äñ®Nʼ‰"ª=ÑQ‚Œ~ “‡¨@þT=¹òQWæF.ªTÀ¥DV$H‹’2J×e‡ˆž¬‡îg>Ñ>²žÛ¤¡beW±Â•_tûŽCr eÛ‰œe²ÊÐ^@}/ð^Y—üMLÑW\/ôßg÷ï\CâZÁùbVÉwƒ#uF噺ɷR—‘5H%Ÿ%/¬âŽŠ~pK|"òÊóÜ€¡‡äÇ”tÓßþºÄ eäY(Ë7Y#cÛƒ4_÷eNÊ6W yU‡y\*•u¾T@#•LJ?pÙföÃŽ[ ö€Ÿq—×¹^ËF¼LÑ,Y#øjü+–äׂB¿)`uëê?åîÝMGÍ1xj¿¾OgñR=]1K£®Ö_×gýnÍIä}BÔÝ£ÈÏÂû –¡:üˆÕÕƒ?ÉI_¶#ævä(èAäS’?©ÈÁJƒ*ÓšDb@~ÊC”–¤tüAä[àUé"xYùùÊÓ3™¿db±JßûJ¬«ï’?èæ‘޲|¥hùEèø.Š:†(’@‚Eá\Ö'þ˜‘3€®=àÚzµŠV+ŠEÅcÅw¬…p?‰j^ÑÍ^à`·;Vkâ͸³§È©þ¾BÎX*GVVy Ãí"ðý§aî¸èJ­+yUæY2ŽþãÆñÊ*KÁI#Vî¥i 0Ë'=’Àxx%A5­á~±ºÒ„z:_ ÐÑÕÓÕ55NDJSkÆßöJKà¼ö¦¶ž¤$DE•môÖî;ø~†!Uã“€ÜöRüÈ©Äz‘¹„pY¿ƒÚ_aA¸ŠAìoQ~€f³YªQ‚üFÏ*õAñÄo0â6T–(³GïHÑqØ#™æ[LD•ù×[PþT­jQ•ÑYcõvÏïÇ>/N¤l/¨lnÖG‹Å.ü9ö)!|î\h†ÉY‘¤2‚[¤¥}òìAöÔ“\ßpd†B´˜¥ êò'‡uÿ#fÝ6¨ÚÓòúÕLÑ€‰^¦S%k\ÍÞԧ¡~!'ÚÕÄÚ[2_ÅYŠEœJ²£«GÔÌû/2ìYލ¼¶RÜQ«™ýÁùˆ˜+t’ËÃÒij‚`Jƒî ûˆ¸ IíÄéÄE@G%$VˆÆßŒJÓ‚d•™øö s$ŒWÝâ0Oª!¡ éiQ t¾Äw?Ü,»ìñi©Ó9°Brdf˪ñí“ÙïÄlÞñœÚõâÓŠº4¿%C½×ÚñË“™mZ‹Éé’MÒ:8ài&leo}ªÅÉ8xŒD5dW@Üüãݶ[– dµ>³=mçHÙÎlÄ6•ƒ‹\ÃÇ‚ÈKBõzhø*éÉÇ=+t2‘/Kq-•GY…ä.O ÈÒ#Xª$*®DÎî„ûk {óüšV=¶ƒø–CëgykGÄÀŽbü%tç‚á¡BYøç»Vòî‰#ãÕ’åyy(F@°4à®/7žæ'c)U­áZ¼ïš¯z;cˆŸLð–‰ãìÆaÓ«l˜Ë˜­Xj-ZLì÷)g)ØÊI™lž×ZýY¬e÷ ¯MrXsÛ¬³™ìU¿PÃöýaÌÑÏ$Îù`ò ¹Ýý7o yWo£¬e³Ö£ñö·“ þ›’½×Ò´FŽÑ¦Åϲ5»1Qš@øú¸÷E¿îîŒ]Š(Ff@ŠB«;7_ä™DFsilDÊÕAèçÖ„È’$JI$‘£U.¬åý°Ë`“Ç1Ç!y.LÀ/¡.WA¨ºPé‹$Žz}]$™–«/Žö<6ž¶ªM$õPÚ¿Ó]÷;ÝS÷â­ã~V[2ÂÐFˆ¼Éj¥¾¡D9‰y€F®ýŒ~Ï>ôJ¶‹3Fç´V»I'˜~Dy~EVû®Ê‹) $’•àF‘©æÌÑþ00  ŸOø}N3Œ#EÄ‹dz‚üãÝx¶¬®2’s’šz¼Ñœ¿øàNÓq´ÎT´`»¢+Ûݲ·©@Ì@é2´Éƒ`,%W±1)ŒŽS„XÙ¸E ý˜3HxT{Å¿ `? ³®Í$€7¸W‡Œ©UuhPüÜY(ãÙdç°YÔ™%V#ÝW?”€º¯å!xù!çCŤ`å×Ó±¿Vsj…q.‹qÞ÷÷á4ŸWN2U…Ù½'Œ[³Œæ©JFƒžÈƒÝCì¬ÿbb;›=Ø£ÿ‰Ý‰û9 ­˜X‚$W’Uu Èb*Š~âö£<(B¢cTcp· tV‰9eWtr#2,´’{@…’RIV$.ŸjKÍ•d"ÑþjÇàv#ã’‘Í$4µÞN!ŠcËXfjÍʰõ>Y‘“€ß¶Ù\e~µç²ìÂWÒŽÑ{KuXª»ÛïÁé$Y£-¶ª½´¿ÈÍþ\O™Ž0ýI`k˜½ýåïÌ‘·âDA:2´`ªÌ;ŽØ$)‡µDZpÂE#B]xbÈ¥9ÔÕ~zó'OìZü24‡â‘ùqèyAu  ;Ž¬Ê¿‘%£.Q—à* aW/@Líù@9b5A•ï~îÐì{•Vî#«)]˜Å×ÔýšªoïG+²Æ"V–T`½T)*"Sñ2~B.ÀjBÓ$ý̤֑sjsÅW?ˆ–ÔñV‹ïDïÙK¬QÁÀ™ÏAÔ¿p¿e¬Ì²VVPãÓb5Xú¡³óî3¨^î; ¹ÒHÏÚ…°¾ÄÉŒõïý„pÍDY9\òDDwã‚s¼xOëtœ1¸÷¹ç•ŽD‚2|üÇÁ¿×gÖP•LÍ!Õº…î2êx  öýF@ØuNXqê¨ÀŠÊ þÁ2(mVɇÝ`ü:×£)‘ÿgs¶Hå¹`e^¥W‚È Ráu£¬b¿)-‡Û¤JÊ‚}q§ð}þ¬ËzšéÝ¯ïØ§Ï¿‰ê P‹EU9;*–ÝÛyÛ‹Rvqš%¬|¤”Aü¬X´©ÝGÓ’8³Ä?àäWÖÇ®¤’½%nK#<ÌŸ%ý¢z¸5,z Ä|~ª³i.¬„~L;«¤ù1ÁŸjü‰´?çÐÅ]ä“Ýýÿ"¢´ˆêOä%Á±‡ûÙÏWˆX4ñ+~¥tëÍ£þ±±ßí¶}ø°ø–£êcÄR2QºÑæë³³lâÝõµ…L½D`‰Ù»°áœôP@N=¿pgnÊóÏ ßxÖ$ŠHÛ-TJ±N¥ج@ «"ö€%‚þjr}UYTÙù^¤:)0‘yDPyìp0ë<HäH¼RBî±ô OÊNÒ Ñ“¤Šê:ªH†h¢žNI€¡Õ™Ó…> ¡¿ÌÔÛúkóc;>ýøâ:Õ„-þ–HÚvn¼æ‹ðš=£^d^2ø÷ÿûìäÐ;³·ö¯PCsÏú^ßàx6­c¸FÎR"#c*Ÿhª…bÅÔ3'—Ç$¿E «ûiÖ8•â ^#‘‰Ÿí CË~›€WÖí"Å‚€3íiÈ!nþA R¸ie^^)È·r}GàÚumLÒ ^AÝ­»÷nüX~#¨E—ËŽǨKh<-ïµxâÛ«µ>¥Ó5ŒüÑHc =ƒþ*À•ê}Óð'³òªK¾µÿUê_Ús8¾9BbCÑY‰B8î ±ü}¦ IײóR$xÒ>‚Hp̪Œèbø‘^4ü{FxiŒgÛ€0–Ÿ@¯¶Ê#P§–rëÛ¿$7*?sw@dö-z!ï€L|z_àPé^vÑ‚{xïÅßî¯ÄæH8ѺZ³Ý>ý°-ñnÿÖ:ªuֱѻ =´i;ÛòXÃF_ñ –P?5?€+ò6;~«cª®kò…‘+€AFpÉÊ *²‚èåÿU!åi{ܪgvxˆqÇá$–Aå#‘xT»ñ©ÙóÆý¦ø^œ²#÷ã• ŽªH$BAêæ3ñ)lð²Gø&•c[Q{ÕgpºrmËÏø¤¿úpý]±š·ÊûÕQŵmŸX(­ýfŠ«û\’@O¸À!“à³|Ãÿо׀aßúÅ(Ðû¨TÊÄ•‰ÕyC×çòuOåÃ/‚ÖbOG$23—FROó÷ ÉhË|ÈGÌãóˆò4fvìäs"º‚¼$˲rAöšaT„•˜«ñez‡Á´£¾®¦àb=êï=Üžø¶~'¨aÓ€6•jíÓ~£9ÛnþüYÿõN²¤‘—¬Cr¯#© ÈïñÓ“Ð|Ÿ‘ÔIãƒëY6ý]gÏQ¼•ëuEì@@œ’è'ùÕ NýXŠÂ¼+Ž }ºÄÄ÷šDqüB>IIÇñv!¤nc—EÜÝL r‹¤ŽÆgÁob6ÆòŽ?§ÎéÜœúsàú.úÓð&F/¹_öWâz¸þT=]Õ VÇS±î~õůÞ´Å"¬X*3wêŸÈ½ã+!@x †êèOAÚܵ¹aU-Uœ¬%x‘“…•Š/?‡?Þ¤9ø ¥YÊŽ ªßp%üóz"õêz«<þŒ€ÒVÿ¸ƒ‹'ˆÏ>†^³'$‰Iƒ{+ŸÍÌ€ö~éøÈP¸^°=¤þ  Sóu"Ž2"⌘ö¡ÚóÄþ'©VÃNž–½XÄT¬Ò&v|ÓÅ›ÿWëiÀ9ª(B¿ãÙÉ+ ä8.?[÷èåm³[¹›7B[§ îÊ^JÃ’Áw±U=ÁõUc*!Yäî± U#³ªvTVpi>}¢‡ÛE=&þOEåxÑŠÆ R‹À^X$2í”$“ÖIAHÄ­0h_øˆôßÁt½]CkÄ\•ÿNFÓ»À>'7«Ó¦VKê¹¶øm¬^ËU\[ôÜupJ¦f‘#‰Ûi×÷ÏQÇdÛÿ~#.OC»jä…LÕYÕxi.¥ÔªûDô…v$l HÈ穨љ¢PŠŽÊKЕùa1âXâ`Û| {üÆ ¶/”3ÉQ£rKƬUÊ?EÔ M~[Œ­â:|ú_àš6Ž®¥ ˆGcmÛ|vîpßÄæ§¢ $$oYüÛ6ÖOÛ6Ðn:—!Æk¯¸[–îÝœÆzñ~U¿¹B³ªŽÅzrÞ‹XÛõxårsµŸ}yìü¨®Jƒªž:‡VSóîŽL]ø-üõçÓ+þ£Ã}N3÷`ÿU~P`@iqÁ¸˜Ÿú‘Èù˜r®O*xùõ‹ãUÓËÆóÖ´â¤Äûlø¼ñ«áPé—1Þôôëº\Ì]ësm¸èb((X…çáx<||x<• ¿Ï'Ñ[OA`ýxáÏ=G'†<x㟑Ã/Ç'üú1Ç(`^¤ƒùÀ¢H<üü8þÁiת7?ˆ•¹Ià÷_’Aÿçþ¹çàzà}Ä}¿\Y§ßŽ»œÕ?V¨Ø1ªß2®Ü4o†”b;¹ãŽ ¿|±çÁÿsò8õïAä§~XtR½~øü’…¸Àü‰<ŸzÛŒbȶŒYм=¯jÅwÉD·~ßlqÎÏ©aõáôâP«D¿OžjU’»iö]GÛ>Ìåå‘du‘%û%÷Ô,}Ø$‹êTrÊ9’6YL©Ø:ò£»HÝT‹²Dãšm\5xb6øõýIA Ÿ]¿O]åHÞ?§Ï2Ÿm@—gÔÕXÛ¢Œ,Œ@ìç¯&Ošuõ}C ™ò.'´í8Ypºç†vM‡þ[æ|»•ð…ÈgkîÈÚfËNÝ,fÁ´`V¤Q¾ü“¶³îÔÌ–+Î_«ðÞd復ªAŸþ¥:It×Qí)J‚ßÞ{M×ç´ôÙtŒV]7›~†n·ÇÙ㤑¯"?m…Q‚¦Hш€õ20XË£}™@ö«ÖʹöǬvw(³ˆGÝÁãØyë7sÜ!È÷¥ë÷5Ÿ¯Øñ ¸õÈM7ê`9½—€Þp~0Æî~GÐê,ùÒõûÕð4p¿BÿMžN¥­åêݳ[ ŽÞ¼“su»h¨=:9èµÜþj8gÍOuÙó„ú¦óžÉ©íÞL©³øÊkĸÿߨpõ17n6ôþMÍe±™#ŠÉ{Ý1˜µÄÑ9,5çIÌ”ŒŠN¸|WAÞPn é•ÿÍT÷ Yšã+ÈkÜ@¾ù ð«Õ‡& «Ž¡–NÍÊŸÌÆchýÉF¢N¿n¬#`ªÝ倕[±3¿emv–ZѯV"YqÜ:´ñý¤ëÌë:(ˆ´½ŽjÕâ¿&ì¿Õæz…/`ëíž:Ëîw|Ûoƹ|oÝB¹|¦•ð]Íéö5ÅÅa®Ðs«‹–\̱}’µ˜ªRÉBZå™+#é}>©ut U¿%p^C^¢\UQˆÑ£!Z#²ýÄð½¯#L8QZ7/,²r$ å„´º9ÀH!N*L¦Uf* ÐÇ ›¤¨ÿ‹Å,FtbM$²ž“#*%¦…›²Ç‘fW‘˜«/¨Úù-–µ¢dnXñ7…ü­°U§B¶wK\­Ë,å®Åa1xH¥Z5çÅÁzÍÜšÈòÄ­"ƒ×2FòPÊZ#~b'YQ’…i\Ç ‡ù~µeþ ÖÝjÓ©òÉ)‰"eR‘nû¸G?N3kèêh5zeŒ2b@e·÷ì-ÖÁæ²± ”±×g­ÞPeUk!ÙÈÞ; ÜL@[ž!!±WƒÙ<’"ê{,lè¸<‡â^U–8!•Ñ`Q0DçØyR9x€MÌsÕi¡a-•üf¿Xa«Â1²Þ¸8VYHãÚ¬ ƒ~(~#öúû©‚ž…›–øGëäÄ~>Gÿ’ç×3_âZúz³„tôÒ2”b«lc[Ö»6}sÆÍOOWJœå}1JŒR±»YÀ^.óuÅ`ÿHìQºÄp¹%¤m,Ì#á¢Iû±¬a¸Žg>ç=©Ü‘`P=šŽ~7Fþ‰~ƒº BÊP·þ(\,ƒ÷HæJ.XWWŠfe´Â{G‚ïÁçô8øp Á<Ÿü~@?®ÀØÚ”q'Ï€,ïÀê~~>Cüòxÿ<ÕüW˜Åiéf»ÌȘɊo¾Fïn-9'ª§¨^ôF×¥¯ßº[\T™5-ŒÛ•Si#)^0>ÔÀ®—èȲàø‰LX>û9½¿CI«ìQ³·ôLy£34X^SìXK5 öX Šô±¤Mb#ªQ#©cjG{ìC1à…ä?ÏG<޾„es!# Ï^Ē̽8$ۃɱéÏ‹êYzze.NÝ7°oïûoÀ>þ¤ë»Ax(ýEÏ}½ªCj[1&ñ-4¢DXZW=Gø•Ä¡@üY– 1SdèÉÖ2â`¯Œ¼dVRÌ!i]‹žßºX4àÇø¼îÆku]©ä#ˆ$lö¼ÙUK䟅ÔO?<ñþ?ù_ŒQXÞ¬¡œ£oÈx°à‚? ×õÁ¤¾5ªi¬0åìïíU¸0ølVE}Šî`ß|tï\U 5Ì»7Xñ™ñŽå¹•}¥åDMÔ¤žÚ’µÚU`ˆ>Ü«ž$5œïaã/Ë,1…£ENŸv8,"‡³G‡ŠÈû{¶¬‘·c†NÊT(§€GäòçüòïÒn1I3 U ÷ G^Ì;~_¢Oü€R~H£ãz‰'åCÓMõ.0™Ï{¢»<4¾ Q2 ˆûûû_Dky‰ b¯Gòö,FÒ©?™üÜW’NK©jÊœf6cè?ôætIÖž#"Ç• `;}Щ۲õf•þeépÊd/¸ÞÂ9îTǹÿ<Ž8 ÁçƒÈRGnOëÒD‘Ä–lÀ#*G ;qÇ<|‘ð Ž>ù^Œ>7©,PÁ‘eMxÞ÷{ßµp%ðȆ5%ï·öÞŽÎ0Gý7±I¹ÃdPJæVhʼ/$ý¨â G3Z€"Zp#•aˆ& Öv HðÙ/íN…*° Ðrç‡a*!í L»V…íFIŽÕ(@眡‡ HärGèÏÀà’y$ŸF!Y=æáW#õÈcÏ? ü|pÏÀãÿ~ž_Õª4àtÛ¾{ý¨ð1|,~@ÎFKpÞØÊ…Ý¸ÏFM7`PTar {,`¬2Æ®³È ÇËæAÛ§%ªXQ,òˆyŒ6§Ÿ}ÌPr¦bƼ‚Bf”G)=T,!n2§¶ð²ÃcÂ’²Û%R/nI¤à‚cü?ù‡ëüsþ~°Ì]ä€OÉ÷Äìÿü’#4dŸ‚nyùãTŸ×£ùzw…¾«R‹ìŽÛâ»g//†é uÏ _§Áß&rýϧN=?<džÃåY8öäO´r¬@•EuBSe­0o|ÊÖGGÅ[7Èö0™KG$†U©+Ϋ:ûfH••¥åO¶¶ºŽùX@Iw¯ËZåŠq"Ƚ¦Ck"òíÏË)ø^?\×?ûým]LlP*õ? ”aÛxùü”©ëÉççüF?×fztó¹Ôã¥âª÷ð_‡iU’—PŒ–Ñ¿ÓæÊÏYÃÙ’%y*71ЂhܰÝu¬ùEú6@ š%öþÈÇi Xˆã_î—–G•x¯gþ¦IÛÜö…°%ʱ ü/2|•2?IÁàqÈò?ùþ‚hÏíŠð9GíË||Aýòxð~ûp'ñmDNl‹¿Ÿ7¿øS?jm§MÐ-ß°ßq8ªë[~ðw‰!˜¼•¬÷ ;„ŸÝh‘f »zãB8•¶¯¯ljÇÿˆ÷V^e'ôÕ.=®£‘ ¯³ÙÓáøA:u´ÆE_›hc¡nËà nÁnçž?\‚}ÜúÐü†ù%¹ê  çž?_°I,9øà|Ǩ|Zq Óƒ#vÒóe•¶çÛØà?‡iÈím6ã5ÛÆÍ··j™#4°6ˆÁ'¿Ù:— À© 8nG³pG|¯ËÀõ«ÄÁ»©ü¤ƒÝCïÛÛä¯ï矃þ=Gâ³Uù0°õ7¶ÛQ±¿ýáÈ•N¦¢ÓCUMyÿLöÇoú.Å)XŽ÷þ!¤¨cŒr9½„TG$UàGeIJYšF•LLx|ä•ÞyqG®K Wìç’IÚb`™¦Dÿ(ëm¢U–Ò³]"’-BV•9d ÕØu =Ρ~ ûWöxV?ãžy¼•%e2– @œC…ù=›ÿ‘e<?_ MüVunŽ™šjR^ÛxÖÝøŸÃâjJ°V=­ÛÛÇö¦°Ç­çÏbpy.aü$V¤óKÚ²UWheEŒ…¬#"´ðIýÛñ…ôšæÇÉŸú=å,x’‹?ã*‚Ì dd ðêË› Ì7V  [ÑãfeªªƒÉeü¿@ŽA®¼ß zûr=Ð%T³7ì|1åO<@ÿséOŠêwÓ†Õ•{ŽØý½ñÄ~¤ÑÇj6ìvsWÛŠ­¿Ÿ(ôL’È’v´ÝœÉX1B¬éש_úy‘jŠ^œঋ¯åyø{Í,B>±-iâöÄݦ AÈì"f’Jó~7Ù"*ž­\+Ò~TÈãòBň’CñôGÀP9>TL–‚ðHhÙ¹^O, žXÇøÿ<’ß¾j|Zq‹#J Qȸ¶²}ËÅÞ_c†iɉ×(µK…~éÛnÃWfÜUÀf&<F]Qc îlþäŒNä ³2ûŽ#3cØ 1Uä¬ÒºÿK礓¡ÃäV$Kµ¼†$ºŒÉ?DikÉc›Ë;Ë#/«‚cÈP9^¿¥CÉàrß® Sûý~þ8‘¤ '°®IâT!~äËýu,I ÿ¾ªÒøÎ£w§‹.Mâ¾·‹~¾ ìÔøtj«:¬“=ný.þfX«²“]qÙWs$æ5•ê²+™«áüy•‡Uƒbò.›‰Ú“9Œ?Ö¶ÿâ?ªä±¦µ‡…)ÓÉUV¯RÜÉ I+Ç>¤>!Ë2êȺ¡Š€jGWæ(+ˆòºáNž.À˜[•Ô±¿ÍØ TFæ.«'åÇÉ~¬Þÿ¹O Ì}©ä‘ãÂJæ¸÷šhú„$Ž&–9FŒ$ˆÆ@®;‡vxË4í\ÉÃIv±î}Ìu¹õE ú½Ïì×ô n©ãh¢¿”òßµůdšjcLÞ|e¼ïô­ámK^¼W²0êÉ$ޏé ÅZ 4òÞ­ zd>¬µ¬w<{ä:ú^w-’|CWËØ,TwjÁ’еíÉ´¬~¾ö'"5É_½ÒT´xŽÕFj£ž«!ñNWüÚ#Rü¯«ò·¬­ƒÇðšñ1.öê1^^×MV]͸·k,’ô.\++´’É*u‰z;Y±‡^U¬M1ÀDrÐï#JÇWzAcY]³{n,!qÊ,°JDV ð¨´lÇÅÉ%^=T)Î |ï|Ä{›û~«õ·ƒø_5¤¹>0Öe÷^ óáëq)2åhûd€@­<œP¯û\¡2º˜í°IçC0bKÿÊ̑앭íª9R`™ù !ÑzŸ‰žO›1KÅ ‰2z°} Õä'?‰g%á¿ÇªB“úäïD×ò“žHà{|py$pür>9ƒÏ^8>¬Òø§6—)’öé,°îgõÆ~ü.§%ËÄéö2å³wßé‹ý¸‚ÅY4ìS3P·$‡jóÇÑ ÷.d"31EÓ“¼•weôgþUäÌEFO Ϊ$«;!3:3¯ffo¶”ûÄP>õúHÌŒ§™ÄŽ^ÿ¾ÀöàOÁýãüòÏÇ¡db¦0 ¯âž¤ò!ñóÀ$~‡ûüLüOš°fú£ã~ôç¾Û¯œ–xY„Ü{n=¼Û¬ŸÄù³$ã±ý>ô†/ÿ<Ÿ/.®¨«¹r¿¶{îíïpÂø†ñŒvÌR,§ØU}¾XƒNÌR³rk¬¦g–ZEEà#âá‰9š rüªE´_ÚrisP2?Yd¬ü´ÑTf"`‘‡ÚÉëΫ™‘¯/¼fþgâEþÑÕIöýÃõð?CçûÿØFŠJÌÊIø`¬€~$‘ñúùçî-ÿ¿CøŸ7ŠÔ6Êlö¶ýêïl¸S‘åâ— /´ª–³~Õ‹»0öâIÔHٺ窆S³'RT^ï#3:~„ýD³!1LÞßÏ ÏŒ§XЮre#‚Ô䇆ŒtC’Qz-MG+QZD‡²HÞ§råXªۘ׀À¿ˆJqÇ~¿ Ÿž=kyc–™ÔÁUYXpXsÇPÉùý>OÉàzÄù»ê¢ÜbÖ1ý>ØÚÛß‚ò:éÓXýZÍ8í»ŠÏ7ü­¶Š±œµNõåoŘ<¨æaÓ€ÁÚ_åî ô&ÄÖ­3;eëïf>ÔÌ$’Ef,'N’ÏLÈ~#U1~ÎÓQÉÊ è¼ø$7fàÅ“Ï<ðùäŸßÊ…`Êeà(v^U’þKþ8? Çïö£?‰óqüº‡è;ï‡cåðCAþƒ;Ü›\er›wqÞø…‡o•dþµ÷§´Mw#¢/ñ¿°ÒW?Š"‘ñvûyÈ_ò~èIœ®¤˜Ÿ¡ªÒ1e^‡ww`z¼Vù¢ˆ}šõªDÌÒÉÚN$-,AÔ€® 0ìc|«§<>x?çÐŒfc ûý pO%@ ²öOŽ÷8äüŸöõ_ñNt+æÿÑUU[;qaÈòÝôÞØ$•Uºoì·ž!ñâ+n­ß1LpŠZr€îÊU¡@¿ö¢nV¬ÜKWø’âKÄy˜»(ï$2¿ 'I8sïa,¡Úè*@„–wöâtŽY=ñsÔ7,W†~.‡ç矞[äþ‡ïÖÓ€rycû`x‚Žò8<7ÀeÿØôcñNróªmÿ,k5íúð¯!Ë&4ÁºüÛxï‹Í€ñÚáCeë€T¼Ê®Üu–?‰BˆåPJ¬g®, ‘ëÏâÛL½e»jÊÁdDR¤já „&‰À—ùÿ;%¤y¦E%˜3Pˆ èóÁüyŸß¢ì«:YxqÀ?#‚ÇõøòJŸŸî^OqañiOæç¤ñŒÓ¶×¶W¿¼–€WAc–óXÚËr_ÑðTÛPýék£ìY¬²¬±HäH"·½ÖÒû“7ý30’Ä­Ö½€•œú`Ãî$\OÔòFŠIú­òprcXã ƉzF„E V˜á#<…-ð}Iy6/™¿íÈdã#iÕÔwPZ@®þãr\2’³Ÿþj ŠÃÜ^}FŸðû1Iˆú¡1TOªï&G!G̈¸Á!OU‰ÀØù">¡¾y>¯ø´Ùhr¶åõKË.ƒ&ÛÞqŠŠâŸ…>f¶é"à5 Ã÷Ï«~¢Êðöð½þ þ]n¼"•ƒýa®(s#1NªUÕùSË<}yç•uí:F™½UÆÁ»iº–Ù[`^ÄǵౙÕÄÞ.,ÑkÕæ’[í²¹6ˆr! è_ê•>¼ü]„qÍôáäåE»ÊñnXW“¨ ò"÷UÙA£2ÈÜ„IåÏPË ä‰ÙT†2ÝD¤°Ÿu­Â¿£ôËÝõÙø$c©ÉN2?ýF¦$bî;UŸÒ°ñÍø¬ŸÄiô©üˆV˜Wf¶Ágû_Ÿ˜<#­yc S.o? Ën¶Å6cM£«Ùþ«n¦2=pðà7 Å®gëVÄÔ§ÅßÍ`§Éê-B·úRÖ>žZ×5mWV¡¦â°µåÂã¨ã±ýJ Ö­åÓÍb´Ù©¥®£#n%å®Ãíë;µÚ‰¶±z{33GúIe‰Ê¡=ÚÁ„¤kþ¤#}¹ÚÇIœzÑÏ1G‡Œ({ò2kžâ&”‚ŒIy&?ˆë³[@”µMÈE—MÙé*œ&Ç¿÷æºÚ݃ªô’X—ˆÈ¦íÎk6¶öÞÚ|yãJÖ¯\EÒ—#•¹”·•»³‡oOš ÌÍzЧÚÄ™šñCI$%s±G¼hèx7OGÑjåÎb¶‘ªÇ˜z´hXö2OCCŠª.}©”C…\l¡–¥8ôûEäu)_a½Ù:! ÉàýX BÕCp$—÷∄>°’’ÌÈÝáb 2ŸŽÑ|Qø†¦k¥à Œ·¨hi$ºt¡»Žˆ™½ŒarÿqÛˆÎv¿2J¹©>^áF.»ùá¹{MÓ3°Lž¥­^¿¨]Võ­z•«Ò§Ç O¶iñ @*ÅY×í$Ž5_NOg³sïÎd Y˜<ªdîHIav_ò9ù‚¢-”Võ¤‘¼}d`áýÐ?9º:™{±œp ¡@2ø¸cNXBÏFYTVkÛVë*È\ƒð-ÓãŒDÜX^ªÜ‹ÂÒ¶¥Òx¾ßVJåzj²©xj6âܵ绵†ñ¬LÚ¤AÏ7m4e ±—<$|"€8^²s,`•ŒŠÏéþ±Ã“#!ñ÷>òCð‘äqþÿ¿LŸ£.¯ ,ƒ°»u¿.Qœ´ÄÿÊr{øWçÜ/ϧá÷b¼Ó¯Èü8áÇþÈ•?¿Ä|òO>K™cø­a1ó%°—]é®Ùíç³Ç åTÐÒ,¦1ï›­¼{÷o>x k 1•W=[»”yøp?ç€Ý¾y$>=nÑF݇'³ rýø¹~#Ÿò= °ááOéX‘È ÀçCÀá¾XðG$üú@aËõ.xä€UH-ÀSÿ¢Äu ’9ÿG,š´1Ÿ®å~×N4¸wÎn‡ÆMó¶wÇ~†?h·¶…%ü‰ Èà|~_$ÇÏÏûñÇ£‘ØÈ@üöžxã‘ð<ÃàòsΊ’ÁQß’ ŸÈ©?îÃüÐn?|†Ÿ[„dÿϨ¯ìŸþxR?Ü•ù|‚ùª1{t¥^÷Wœ÷,öï¿ Q7&™aÜéïAãn÷Æ1R@O^PrÌX^yQÇÈ?ü¿ß¨ÏTD±4ÑÇÐÊ’'R­Èêʣ〼[†SØŸ‚Hç>×nBö<«¼…’«Çèò<‘è?ezí«¹á”|Ñ*O#’Ì£Csû(yd\i‘W±ïô3ï½vâw‰Ú×þ½—öáNKTÔ*™cèÿ‘Ù¿CŽ£¢0ýóÏÏsÉà¥cäŠ)&g’$÷B”i>}ÕëÃ(_Ä(ùSÁfA'€â±îÞé ‹Ç „Ä~øuä~‰oËãÿGÖ¯nJ¨¯{¯$+8`Ãû—䂸!¸*F!Óx\½»VqWyÚÏ5ÁnÅÏO·‚+Ûgöàëd+(&E+Àu$ðŽÀrWöÉÿ€^‰·Y™âTnU?"ÃöüBü|óÏ ÿèŽ=h•×òU¯=Œ¤ ?<ì†ù<óÿËùô*E!‘‘ÜóÔ¨G‚û÷ þçãýϦŒ#‘/lû×c?­~üêÅt¸Tïõ¢éûñ„`Ç©UCóî8áÇ<Ÿ…øù %±@ç8ä~Áø? þ ÄŽïç^òò¬Y:ŸÄ޹#ä‚>µx!åÁãž=I,„¶¯÷Âûл>ÞÏ›ß?Nœ}·ûý·WöáBò‹¬«ù„þÁ¹,I?¢8ÿ¿?€xëÈ…J«§'¢ÆI'ý›áò,`>xýDU¤OÉIEá!&SÇ%`¿ûà€xÇØ/ÿ"Ë+YAoÈ‚:ðÃöÜrÀ-꾇~§8Ù°L`~ ÿäJž[²ò÷QË‚÷òO¯<{Üzu<¨ŸŽÅ-Ï?$È$‘ǯéùòåƒÊŽJò ÷þ#Ž=]Ô¦-‘µÇôß÷Û7Š%¥íß~ûå{]ðIäPS¬¾à? Àöà1ç»ö/Žx<ž#÷ëBÒ<€¢ž_ÝŒcç’̸îGÀbŒ~—“èÉ1€[ŽXŽ@~@V'á~?À<’Wüüü“ëäÁIQð@ 0~xùàŸ“Ï?çõ胦Vý³ýø’Â6vñ¸gëúýž· Ð' Ø·Hn%y ü’§áyo†C+È¥ƒÄyåÙ>UŠpOT)üH–àþׂß”e'Þàƒ…UUvü?>I<~Á@ëËðy#“Ï?Öü¬}Ã0 Êá@<… À~ÇÉýóòA>µç£¼œ)Ècø¯=T¿ÈñÀ<ÿž=·g—5ãwôýû㈇“÷öÿwôóƒ~Qñמzþй=C ”>’Içô3Jä1}ÂJÉ’Œ{÷^ËÇ÷(P{ r 0àƒëF÷XþñØÿ! ¼rö*Ä7Uo’K~¬ —<žzó€ã¯xä‚ Àýü},£ÔK ´ÒZ'J~¹?nøƒ]¯Ûkûûaàì—+ñÉ´¡I? :’€ªH?#àðÀñé¤ï%‰"’2"²4œÁB¯f*A¯‚H òGº£»‘Øø|Èz€9ä9áyçôTÙ$"þ¨ƒfG¾ØÿmÞMÆ8ÀØ—ªÚì×}îøR[p¢*É:t*%˜7`~HáOaþ9?àóê+ò½š²êV‘§!~öŸeŽ_¶÷XÈ۪̉È{~„q2üFH‘!¤Iײª¹ óÙ˜û`‘Ïø(8äòÁýê5ò‚)Õ§$p\ª¢w‡²@½Ø3·ÇT…G=¥ dAË/êä´"sZ+'‘ª»oÈcÙÅ<Æ¥òú˜Þïþwâ»G"¥ùn¡ Æ 'ÉuèO(D%Y#—¿·‰rÕ¤.ÒÆYkbr›sv–HõýÂ/VT 'Nü‡†¿6¢—ùge€úDí Š(¢p–ð9ì켂JûJ`ùûØœ\”wŸF(LËzv`âígW…’$ЬÉ1c™ã^Ã/§0Ø|úýHÞœÃþIP*£oœÛ¾ښϛÓnpÍT¢ç R0;]á3ã‡^ÐÑ6{3ÛÚö¤½u¸†)•›Û˜G#³H½ŠFOkL[þ‹ˆ¬cû1oU{iú\ðæÙ¶f6<µ-Âöl®;9¼èø=÷iÁøçÈY¼TpÇÈïš \„îvì1ÿèÚEgb´*ØÍ—Ùs’HîÝrnÖQ#³‚Ÿ ¯-ui3×ÙT’h­‚Å}#ÈY¡‘bTeŒsÿN±žLŽè§½Šìü´¨I•ŸžŸ„cŒß†ÒÔÑÓ† J$G7…"aÆÅYu¾.ù³„ç($mÖz+³õ¼ñA|µô9‚Ý2ö¨hsc4Íf×[¿$[_’ªl—†SyÙ6쥋u±ûLzϩڳ´æjéømßf¶~ÍÈ©5œÅŠ‚Êd~žÑ±Lñ° ŒJ¬ŽD}:IÏîN¤+ÉÉ{ËÑVïzÓÚ>¯M^ö×.*8ªœÌôÚÝÚ1Áv—‰¾•ˆÏ½—õ°¬ïÜä'ôñË" ›²þ :'Çj‘ªHUýG@U!cpìŠìeæÉ’EùžÒòýxæÀö£ë]Øz3 ŒYØñ~$`Qc<‰%2F€*ðì{xæ f>'տޔ#/—œ™5‰2ï`ï–¶«1á%9ÎG\™ UíŠ †;ÝbÞ-Ö‰f¢ê˜B†üUÊG" '#p‚@XEðPFÌZ¼¤ËúpÃÖ7™ÑÉvpA=_€Ä ÿ‚Gûú`iyLE}k×éVš(¬É$V%TtYrw^e‘$ŽÃ(Ú,×&r};ŽwhÎ[Š\{kf̧ž ê~W‚Ê?Ï$zñúú35õh•KVWdªºš_jûÕ{ñè´õ£Ñ¥˜ b;Ž@í¾w¯¿~Ud (ÍÙ\ŽyéÔ‚Ê[’8äóØóÈ;FáY€e<»| äv€xãã€H$üÿé³ÅUsÈ+•)i8‘m5¹%¿¶rŽ!#ŽÝò Çúƒ Õ‰Ìã‚I–;q¬và?äò >OǬÒÑÔhèÕ 8(ñ~7ó{q¢:št$ôÛ¹…­(ÓÙ»ìWj]º'súqÕ$ýü“ÉN7ûóë- Lyo`¤ŠÇ£óÇ?<’ß¡Éÿ<ßÀ>›aÃ/elÍÅãN~æv2³,(ycñR?|«r§¯Ç¡FÀÎcÈtv¬ÅÈH>&sÉ<Ûဈäþ})£2ý3;/KÞž÷_¯|]3yÃÿÖ=¼_œyávn‹ãÒ0¨$±Œ¯þ@|1àsûxøä|’*±~ÐJ­É@¬Å€ã䪰@ ÀçäŸð}'MÀ«t9š_2<M˜ÙŒÉÈÑüýˆDœ~аà‘ñè93øRU#ÌãG·NÅ­!*’È#úö ,Ž`ž:9õž:Z„q§©K›ƒËWøVzRmœpê­ÛÙ}§“…E€Q|üªŽ$pÄÇâ>xå‰ÿᑤŸ‹üƒÊ“ÈPR?Àäür8“é3x‡pc ûì¤XNÏö²¬J¨<‚B#ЯÉן7†NCæ1Éì@KeýÎ;© 7ñüˆý #ŸÓü­WrVy$îm·Û+éÂ2Óëרq‡ëmc· òyOí$÷à,‘~#¯` )•? ÀBä¨UŒ¢|8Vør½ëò@<ü1<žçÒ0Ïáyü38ÀU\²›’$¬£’Ý‹!ê[¿'Ž¥=nÙÜ$É“¡ÙåþV“€æ6•Sà€]¢VqÏ#€~GzO—©Ú³þ™=»]ðÏËÅjGÞäo‚¨ïŸ½o‘*xOð褢1 Á>?ûØ?äqûô-u‹²¬­ÁPH?°?Cäþ#çýÏÿ/ŸIM°`Ûg[ܽ¬Fᜯ<|Á‚pÃã€8ÿ‹ÿª5ø€oëx¿p)‘™' „»r8%BŽ@±ø`9úo—¬ˆÆwà‹ì–WêÙ·|p±ž•Ig tÿQ„Ëmã4øk‡Y…g#¿¸¼JžHççñçßÏyB¬p#P9øçºqÿÈ1#‚É)È Èãüzo¨°ä”lÝ0K„PmCýå{ñÏù.Ÿ’óøHA.Ï€Vàæ¨ÝHÿªU'sex v’_ã<øøýúW—ÕvŒÇÚ)š°ºÇoü›§„ž’íl³þÝ÷0wñð¬A€ ʯÇ%[ŽJñù|v-óþÇãÑYäE=pƒËQþ@ÿÒóÉà8'ÓaölÛ7Ž£XNÂ^âÂ’KÄGYl?kóÛ׆˯ÈUFg’3GÕ ñ÷nèÒÄ#ïýÞäjî9ùàÈ<D嵊]9öþ™7j‡=¶ñ߈êé8gÍLs ¿_lð¶\J:§ÉÿÉ~A@??‰ ߬“ø*¹b’B(='ð~, ç·'üHCh×~3XÖ” ef²ˆf T…±àr>IøçÖ‡h×™ú7Ž÷™6/`Ì Ÿ’[²OU ƒÇëՆޭcJxßÓ.Õä/ÁùÚCÿ,ŒZ{ý.üûpã-n#âWƒÛãóÈþïò>ÿ,qè±GrDŠ:üÈÜ©fW?€]âǃøHɶë½A9¼b „¦xÇe.#9¢ä!#ŽÏþý6pö_ë˜Çé÷!×îP„ùû²Gïšåysò§x<òõJ>V¢â½|oC½øûq:ô_ë†û,ÍyÚñ½c…Ô»YÇ^²r^}³ðx2€ÃõØŸÐ?¿@\± ¯"K胫‚WåU‚’>Iuaò ”²ëaJCœÇ{ƒÚæ5³§^ñ~G䉓†Eùü÷É §S–Ëã¸ê’÷1u"Iž(å'žzQÑOö³)_“éM K³JxòH£¤·>vú7ÀŽ®˜8ˆÔd¢ýË÷¾Ùád:(ddQî0=)ù*œ2¯É%¹á~Oö¡_çñ$T‚ÀrpAý’9ç‘ð9$ñǦ¿ú£]ìæqbYÍ•d2 ìÜr~XþJ@QÏ$~ùÔí:â‘s¸þrßõ(¡x`•‡$+|ŸÓKGVF4çúe»ì~›¾8®™w©Ûú¿\w÷¾Ïm?2Š¡¸*_žßÜGíØ×Çâyü>=jÑ!@ŽëÂ…+À(yã·Éäòyêy† zl«^è\æ±àÆçóQÐ:#ny¨¥ï9•ô^-·\tŠh¶T±ØH^+ {Å0/¡²©„üŽÀð?^«9}|^ž¦Æð“{{^Þàn̓´ôÿýcºW¿úpîÁ¡ÀpXÜOì[ãõÀá¸<ü’}3#4kÀ!†oÇ‚ /?°Çó,Oäé¸6Ýk«öÏãÔþᕬ«0…\Ã$¤yÈBO ÀŸY> döŽsÊ=ÈÚ!:3´‘ÝùÄãóQò©ùø1ÑÕ3-9¾ÝUB}—Ïz8޾˜?ÌÓö© Þ7°¯û£‡…É€yPÝ@º’8à“ØüÀ qþÞ‚R@.¨@ê¨ Pݺv=z{”_’Xž÷é1ö=híœÆ(ÛÖÁHBÆTyÜ $ ñûôlÚÈ.›ÅÂÞÔÎÈ-©,8ŽÃ¤"rø!¿.GÇ>œÓÔÏò§îôJÆÊÛÚ÷ñf7IN.zà´˜¬wi¬gÿ÷ÀÎb=ŒNÿÝ(%½ÎªüÉ: µ¹`päfôÊáê²'%% ñ1)hkŠ#øzþ8ªä3ªÿ'}ÆÉÀƃÚR;7VáOéWþÙåPqÒø±Ó¡ÊGn‘½¶ùq+{ÆêŸéx¾Ni-C~Õ3òâ³Þ¾æN:¼¨ü~ˆ*? €A ðOLJ<ü±;].C‘ò¤:p¤v%ˆù³Èþãþy u ;ƒÛ²–üyã‘Àärx 7óÈàŸE¬ˆç° ~3ý9ý’8 ÿ¹ãýùâŸSûñÕÏô Žêy>»øñVźè³)`Ä#(çåySÁ*?@žxçÈŸz÷G›…vR®Ý{ðVP¾¹ ~èÈõï]DcS{þSÃÝþýøÅ!dásûâÿ¿úöx Qk×ëßÀ½X_¦ï+´}æò¹`D¿å•?Œ4hŸÊ]!ùRJÊ‚Gù?(êGT:#r]»b5Ø ÛÇžC+öÔUõ"a?^ŸOC—K};ù–V>ßov¼ÛF¬ ñÙrE4’¿ ªIÊrÄÊòÿ—÷Ý3~ñxíWËœE"Þì{‹[÷(ˇíÆò$¨Á¥à’ŒÞÚ§pá~YLÐ,ÃäŠ$’³7мRþ>áê^4NªXöuh¢„¬ÁÄŒB˜ÉÆ [¡?Ť:…BIöÙšGŒÏ1ô÷FTü  q)ÿ¿Á^=­A2¬ÓP]äfbdè3#¸ù1YPéoÛì¼,µXu<2á:"Üß¿Œï¶*ø]èDwìøÛ ;öá~žW7BkÐÌܧ\döáh$ x2ž9_ÜiG^h¢bÕ–BÊ2ÛFÌ hv;Í#Ò–ûtcçº!0·ÛºÎbti{­Wf7 µÝcŽ›¨á,k‚í¬rÚ½÷–£il;ÊòpñøŽ«ÁR €ßÞÄúy'W’á?Ò«³È¸Vêë4¡äë,NÊÊG À3rÁHâjüC”ޤá=Lz‹è‹iE·ivU»çëÔÓå9‰éBzz´)GSˆµ¶Å›Þ1æ¸ÓeØÜ³‹ Ýd.âG¬C3D#™@ZüˆÙT<‘ÇÁÏÜRA¯¬ £cA±²dºŸh…Õ‘ÐÁË)SìÜÁåˆ`Ñu•„³#Fl@Ð5@¨ƒh‚%îÅÉV‡lŽàØpK2p„•z(úv²©aO¤L…Iž^XÛbUGöþ€ŸTCâ\–OáÔòã¶wÿkÝ÷8µäy¤ëÐË«ßrŒWµmÄ Ë´I ±äZB ¢û•]{7,Tq\I2•ä¨î²Øš»~>ŒŸae“?y˜©#IT„hÁĽu !qÃ@ªÈ&œ£úž!ñö "ˆ.*$@8üKõêIbÇóä2“ðGÈ?ÿZZñþ¥V¤Ì¸ˆ]Ke Á[ÞhÄ"WåÏáœpþ—ø%˜|€nŸD?éÃ{¥`?OäyŸŸÔ¢NA¾×UÚÿ^ä6½…ã’7ØrÊÌ;F𣆑ËNÑ)ó8SnËý 6]³»{›å”—ì]êªwdöYÔš«íÄê©©BÑY䯝‹>§htJyæ# X°üû0sÙ¤NŽ~[çº|9#’#óÁôy|§I?£À#Uà´¬Bõ+Ãrÿ›(cÃ[†àª8’øŸ%ûs%?˃½;‰ûm‘ß‚r<Ú$µ©êªu%±X3†»«ûñ_¤Úö4^Ã|(à’´lJ¤IÖ¸X˜—ÜÅñ#Ma PRMÇf@Üço…˜óìûe‘E™CÄÀÌŠÅäá.Sh!WÕ…—MÖ#žHÎ&”­Â²–Väp8!¿.uåx<óñþ=•¬p0”ýÀ!RX7ÿKÈòW<“ÿÌ»¿Ì­í·d zhüG‘¢ù_ü½<à1ã^ÁàÏ ø>m[æÊhü¾6Æ+½`óÿ«6u?¯d€- » ©´…R>`w>Á¦e I4|Ö²ƒŸÎ~}ÛvØdQ{"yFRŠÕHn̬|×%%™¸šUüKÀc5ˆ:N²¨¿üH ŸÆÑÿÛ!B¹ïר<ôò‹ÿ£ê“cÔ5ÁdÄØšåLEÉöYT2°)矒0ä#¿$Pø‡"£ø}ï=½©÷Ƕˆò<ØÏ“Œ=INÕïâʬä8ÿÖ{`¿®ÞöÃHÐ $RI3 Ì“FGâåbŽTøa‘ßпêý£±a±d:$,¼Ô˜ÀšÌ«*#·½Ð²uë;<¤¬ <ͤêe8Ї³Ä{€4«'`AíøßÜÁãär §k%ç±§¶*Å;'…ü¸éÉ%U@<ö#à3ñG¤NXöþ\o9½œ˜ÿ͸ùûeY;4Öî1~>œBƒnÚ#ÿ]ɬ|V ÌO]•‘y/ ¨–Èáàh+ëVÛv•#®Å”è‘„PâÔÅ(µ*ÓäE±ÇÛOjþÛY‡»ÎI¨k¬®T8PŠËܪ}Åã‡%Y¬?!Ç^ÝIƒ]3WùšÁ¤÷ÔV~æc4àÝU=þΨ8Xß“OKüC‘ÿøc?ôCÛr²±½ðNKœÛç÷êZqÚëöí}øƒ¿Õ[a©.Æ’AªQ’F,X³ÖFPüÖùVì– G eÜö©YÑs÷ÿÒ3†ª¼–eŽ> ¥Ô!êÀKí¸31¬ QÿVÓ»izÔäZn²:¬œ÷rìË׳)Ä0š…OÛrO>ƒV³<Ë3âk‘ ,c'`“°W/ùKpz|rœ1R ôOˆr7žT­Ž˜v÷ýÑÚ·® Éó”ÿ>­ØS¸ýk½Þæoˆ=¶Í´ž¿×ïqÒ@ Š ,|q#ߤˆÜ2ÜUnËMt.Û¶—Œ>Å‘-ï7à¤ÊXÆÃ$u¼.=¶•W‰#•DѪ@ìÞ¬ é:»<`áis‚Tr&uÜÓ™.J<å ýýñ»iVt“aȲªª°T Hhù`ß5É ËÑ–1GŒO"”má´+þ»’•‰}Ã]•]À`b¬¾è`ÅŒ,CK‹ %Ê/Oo!à°ØzøÏé4b¦¶m:É<°•”êìH‘d Âç¬Q9ìü'¨ª 8BöŠóÉ@A~ŒÌÈ;÷>ÿ  zéh¿1¥Xh@Œ¯óD±Àµ’¶ÚýÞ1jºÚ:’„õ&¦Þ¥.‡eJÏl?w…õܶ®’öز«õUx~Ãò!ÀGž‹«KÛñi VaW«"ÉY½n7°;t¤æFVCX2rÌ‘«Õ*‚'²rÑ)h-È®Ke£š#ÏÄ̈î[ôý¢ºH œ/&n?  ‹Kò§Öà!% ¬ß,ÇÜ å)ÂÙ½å"VP ½øÛÿ Å/ ]héåÍDí[ wßê‚7Â|Îcfs)+Õ¸">=þ—YáéÕµJ ͲÞUì¬cc@#öëÞ˜uPx$Õ¤—øT"8œhÛ6Ñ 6+ÇpÑT¨ñ‘ÆX r/÷”Ô%’Y- « ×.‹*X’I½É‹¹,ýÈÕÔ¡ö§p8jÇÛ„›zW®à³$X 1‡`[àý¸<òÍÄj¯]IüââKÊ„z©ÐÑùp2mñœøöþ÷lO˜Må+ -ûe»ÛcjÙÌw¦2©6w$ÌìB¤qÓu%Ï!º8ĪñI? KCÀVÁܶ…y#«ŸÈª’sÍ$J€ˆˆcPÆÅ¤R©áMeˆL9iD…ªËϼI!†XeÝ@Aãù‹ô÷˜rÏ*©ˆïèyátAÔÈ‹'q( æUJ&àõ÷•xi”,±’Äú‘˸t´×u`U›Pd¿)ÛÏ jkÕ9d«–Ù7ÞŠvwµËáw ²@Ê» Âx±Ëw“*D­Q„+`ŽFg©#uµ(…z·M¸Ê$?tOed¥A‰YíIP̤°dW3sÑ&šÈÄ´‰ @¨ýPŽ^Xý±Ásˤ¤ò²Q¨¶S™z.Üæ‹ì¯ Ú>Ü+\ÔŽe IT€÷T Ü«!¡£ uGKL‘²@;û^ø­±}£­ªÅ‹)"Sš§Ûr÷vo Þ'C:»SÛBÁÛ†P² y; ]gYxŽ5$åOTª¯j¤²©ŒµÈƒŽ)#G:÷÷¡«4d†D“ÄH/Èô˜’!IÔ»?Hx¼ŠÊdÈW—¢´~ð=bÕùÀôr¼0}ÕBåÔ5Ú? ò¼Ê¢ÃŸ‡‰ý2/¿¶ÏÏ£¨Ë¦`ƒÓ‰VE¹º¿j>øôÿÄÌP«¹”–E€Ôª|ÿQ£…,ß¿f9 ‹$ûWJ)çÒ'ß0ÛŒ++ du UHV ñDiÓ†+Ï0–÷“éU- ú•–fò÷†` x&<%ž„ÍaGx9+Ï¡, ïv}³švŽ [¼€2ñyÆvÍ”_Š:ÎrôKjž:Ìõl5 ŠW©;©Xg•¤`ÊconV`&\t>ì=d'ŸMØ;qýÙüQ¹ sØw‰+)ƒ‡PkªŽ•fþI¹RG©›FšA«aû;ò+[¤ê˜µæ›J*íÙïœq[Æ“²:™Nvpè !ì#~ñw*DŽy¶yï}•-ñ)†MCgPªø[Ry;HDšHSª´Ò_rÀˆŽT_a "Í7Õž^é¾[’;rB÷ŽÒ‘ðûüúÜÈËÑÝ/Èýõà•îyàÿâÏ¥þ/¬§T4ëuÎ@+»°oq8gáºy­I¡HzOȘí@›ùâ°®™°/WþuTÇF#ê¤(<Ã×åB–»82È\ÛN +`öúÄhÀI\‚‘ª?¸Â9µ½æbËá‹4èáêu ú²å_„gÏ7Ǿ~”~ÿDŽ?ùÞ…‚™#—òw÷ÿ. ©áãëŽ+é{$]ÿø*ûb.¨+*”$3áU{F’ËÚÒòK>¥³ÈK6*d ܳ¤r#u É%—•<1àI˜¤è«ØÚ϶†E.{~#–á!üóÏÀã“þççDƒôB„,;| Ïü|þøñûÿëz‘øÆ³¾ž–+–xüÛ-?§ølºæk¨GÈßµÖwÇti›AKa缑ž¥y.‹Ú7rÒXBGRg&Ñ/Ú7cùŸOh £áehüwåÈuv‘(í´sfþ ZÂu´†0½T…ü~÷¶ x<É‚­$sß‚UÀìUT…( rŸß'ž8?<GïÓ?ÖQùzw‹Â÷1W½{ÖknðÈõ'ŽêZbêœl¿¥ñX#Óö‡r¯ƒµÝ–NÁ™Qn_±!ˆ/ÝC™>M9 Š 0°'_ôŽ×"üàì÷a 7eˆFcf>Ú˜Çåí÷^ï:›¥çnÜÆlÈä&$=J¯,Çñä€[¯ïö~?çμLGf' ñÙ”yêKóÏí‡ëãÉô‹kü½,ƒU+6ZÈfÇ¿×n ÈA)ÔÕ¢›Xû6!~jÏ®üV?ôfÉÓç v?–y"cü4†)W·%äVùk}¸÷ÁY`èy$ÜzNΡ£L=…Ž7VNÉ]Ü7A¹dgûrBÅøÖ’­0âFõfXÙ˜³7`B¥ˆ`8pOe#ýó½z; ᇹÁ2€ùä€O#€O<üñ׃è?×hùzUô‘‹ ±ï¯âÃ…WÍŸÕ"§œ÷ïþýø¬‡PÙxê˜I`‘˜HŒŸ u0vgRäv²¤Å!EPÞƒm/h%™q6RF÷’1BÁÖ4,òª4å-ÅF÷*ŽâR}Z»üÐ4a*œŸ€«ÇËÈø‚±#«©AÏnJ£†,ä…~GÁR~ /®cåé#MÔ¯oþìß|ã²ïÂÿÓé ÔÏÊxÞËÎç»f×ÅP¹¿ˆ–82Z«”‚añÄeXA+ ¤êìµ¥Vç¤îdYy2Y~ìG¤ËI ª¨„õXÂð9IÉ0þ÷—»9 ÕAøñRF>¤,s˜ä$’ØÎ#üH=DÎd@Å®ÜðÕIäž ó×Ô[î*Æ@2H# Y˜€à1*Hr@t&/s’]{ÔÊ zîòšŸ?COVTJaq UnÝ}þ›5Ç#˜Ò4uu 銿h÷?ïãn JL¥™Êƪd.Œª¡Ê¨íÌiØFýG$£²Ro䮲|YFŒ¤#2:‚§Û q"£,J¬Ò{‹"»… ä Gl„tuLÁ¸‚¥ ¤jíÏ뎄/þ/ÿãPü¬|t³ë{¢Âðü!IdsÀŽRê¬ÁþJÆïHÌß”3‰@‚BN’;nU?|ã6ÇŒñ]l§?æÞ¼µÙLØ aÙyÈ\H]‚ü ŽvuüLѪ #þ4_tsè8YûHžÜpXS”NÌä0uVn¤À]£¬®ÁŒlðä~ é&E<¼`"0"ðªWàž²ÿtª§¥V>ï<A;ÿ¡9A#b@p C©ù< Ä8ùÛ¬¥ä(±îÕä_h3Q§ºï:¦¡s'ZÄØø¶<Õ\m¼…j€W«,‡™Ò¢²¤ÖÐ6³ûž“3ž\ñÝL]Ï'hø¬½è0v*ѱ°Uû«Ô³¢–´™¥ƒ$l!ÃJz‹K:‰O¶ëÅž‘$–¤.é.&%We©ã`ªö8r’ˆü¹=Gæ:‘ªÆØûy£‰HþÑ 8!T€CöPø$3ï?(Ÿ,ÑòO­Õe‘mºIÉ*z´|ª¸pñPÆå#ˆ"íDrÜ?¨Š·¼'fób*ùkÇÓeǸ?¦G²Õ7bÈÐÊ¡âtª% ‰ŸªC:•®å@œ§–|]¹d#Qò6™´æå‚ÍåÅ`³ô¯_³V‚(·=Z‘°i!€I¶ÕÌÅŽÛìI†¶ŠÔ5t•zHõ~ØÙƒ ßž'ÉÖ tç_Ô‘p¿ÛÆò QD^KÆPª {»38Vù…¿´´Q3Џêí)h»‚‚hÿ!*”èuXÿ"ó¹.IQÁƨö:™[‰qàGî W‡bãÙ ® XZWá9 ?GޱH½à}¹>£Øê·2˜úïRdfZ‘»»œrz)'ˆ¿.’þ‡–û1ýÜz2“§RF ªlÉöÆZÈW|ð 3HÀžT}ÜV;3yº³‚½dn=²rä¯ð#7xÔôb "»¢ŸˆäqRHùvaeTzØ0Gì¤/…‘;€“ì¸rA¤/ I‰²­k~ÜHŒdÄñvuäöÞî$ÆVHÙÜa¸++u¡›€È‹ó‡Ü€}#lzSVÖRå¸,A^H¸H ŒÂ Ì%Ãu{’;­àŽÆNõˆ.=d‡=ÊjN:qÖ‹)Èœ²¢…®éÓ³f,âùr\Ä#)ÏI"·tyÅí›ÃUš¾q±ç“Êf#¡‚²p¼r¥¿¶ÄFN…9JŸÈIõ¹T%‰™1¹b%‰ú©V‘W@ªZ1 /0Þ&r®Y?ò4Cà „_Ðà(åÒØÅ;h“ÞNOÈÒTÕQD¥¤B$`Ä!ç ù,Œ…Þ§RöÁ7•_ZZÏ‹ÛÒå³Ù/|×}KÿÛaKuâGzºÚ“±ž ‰"iúu‘U»vŒXœ3‚be %Ti:¼…x²²kc·¦?ü>.3ê…Ô –Oªß'Ë+,`2·Å!ý·u.?G§)Á¯nÞŸ¡Êý¬lBÌÒ(iUËÈ@pcÏÂ+)åRÉ=zó]IoÛ þ²°ÆýQ–Dˆ/Õ_’Õ!HLGÛXñœ”IýÍÛç“É|záük:z4I÷ìVÝŸÑ2”ñÖøQR̶ֻÉ(¾-Âý>ùèS7;30ü{ãñ<Wû¾äËžIÿoI— } #X¨ùnðÆAþOÇ_ò¿*!Jª±%€ÿä@à€  ?— 8ÿ“m«',¼pG‚9å~D‘ÁíÇž>}p`\‚Í÷ÃüíÇaºÃœoûþÞ+<2/pó¼°Väu<òÀž|‚¿±Áäýüï@Þ l .îã‡!Qø‘ò?_íÈÿo^õÖÓé!µ;ŸQÎw¯ó¿Ù¢˜ß¿Øööýx¡Q2#}z}=¢×ƒÝ§0eÕÌ#Û5vH£!ˆ…äC*µy>ÖX–g—üI¿m¾Eñg–]ÿƒÈ`ðWÒlpÉÉ $½n ÈÜ7_‚¼’@V玣€Gþýn!íÿ”Œ¬Ÿ1–å ŽOfÿr§Ž8¸ÿ?Ü=/EJú½öîÓW{R–¸–†Ê;û'ëµn_¿R=¦±Ë”“ñ9!z¨ø? íþËÔürO¥TáxPWò·ööx Ì=@ÿ'ãö!¼)Ý_ŽðsÀoТ ÿw#Žøýz ãÙ#’V CîC† ©`@-ÈýŸŸ×üz’€·œ¾Glv¯·Ôo9ý°^p¦ü”Ü•¸ìŒ|«ª·è~f$sÇàWž9ãçÖ„v„ ’$¨ãöT0†äp²rCvEQü¢Grã—,Büñð?·€9ü€äžøý J– ©.†ãŽ ÿŸÐ‘ò{9øçýý1+8Ëþ¯·Ó€N^oêé\òvì 3QÑØ#*V¡#Ž ž úµDh‹æv*p@üò{#ÿ?Ú^x€)]ÛHç·hÈ^O_Ô‡’Ïì?ù>„ª@ü<õR¤8ü”YyãòüÿO"Uö³n×¹ÑÉØàõJÛvÇo¦w½»mÚ¸.ßÈê ©rÀ?e.Ÿ‹|õr]‡åðàèÐF[³Ř+Hì¤õBJ€ŠŠ?»à°žgå@QÁŸñ?$”C€Çð!ùóþ r~ë×–>z°nÀÐñÉ`¥åð>OŽ8ö,O#‰ùèéÞ°zχÕ-è.óÞ½šÏë|p|#‡ŒÁYYc*UÑ÷êËDZ<©àóëg "˜”'ªðËÏ¢ÊeSûä0ò@#•ô!cýèÁIR ¼~Cƒøð[±çãç‚G­[¨Qø¸àðT… žxäŽ-þ?ýŒl©XܪŦ;Våq Hûù7ÁžP¬Ñ™¤,b=‘UDGž8çWü¸¾¿®T“èʲyG ʪuî8Cððyo–-ñÇ1‚=~O^¼ ‚ˆ¡‰|vÿ??“Çûдϸ¢ À_Í_û‰ãžJ–Võb¿dñ1áÅfì3ßjþù²Êxv½€sïßôú'dkS­{ŠÇ‚T·Ã°÷3»rÒ”‘£ìËØYì¢0ÿLºÎiÉÎ6³{%xu^é0Ž/u£`OàJ$¬†DfP;Ç)ï= Ô”* dÌËÕz*Æ…Uy8HÕS…B_Ú$Cø} I÷ÔŸ](N0­ÓH×Mÿ½çØ,¼LU >ç³êúmµç¿)È]JÊï+‰™#þ3Ûà9"¼‡1V‹cþ²×h$eUAF”Š¢´sºðÒ0’Nò4¤›´’ûFÔ¨®óΔÐT• ¡Ç€…W $mÔ¨w›ÛYyêQ›ÞUÏðž["¡ ÅTzÃDI÷šWg2 ™åiž¥£aÈf ¤A/W„KóõSj÷Å»ï¾×õß‹>dÈÄØ)ìf•±6ÛÛ·á—¡SÊ•C$†HÝšZî¼þPÙtxÄÀ# ¬ýæ•]FuŠP½‘ …e`ÒñÚErî°$цDYC4±d¤(½d>¯Ü™„™‡,½áªžœ@?´-§å£ôhHꬉø‚Ìdf%û+ŽºPTqe×ÿ‡‹Ž¨€W~ûÕc¾ÕwŽéÅd•r~›Ý;äB¶âOï‰X‰Œ¤°8Y‘$êÅT–A1Y%þ›7å$*ËìtÒ)èèÑ"ÿуAÀ<ˆ7ÚÉÅÉK‰ zÁïÄlŠòº4nT˜ØõUp­íüG#Æ;4*ä§°ÄJ¦eP‘ep®*PýÃ*ßœè­Ï´[‡´¼Ç/ÂŽ%“ó±ŠZ/¿²ø8Š«ö½9ÏlÝð\ÃYðŽ#¶ò¸Y=’doú”uG1XcÊq’äÇc©Ö^š°ˆF ¯cî;Ê]bwfxy&X–:âDãæ8ýº¢¨ŽÁíd2z6èD|"{ª9çŽÊDøsʸW¶˜1ίػ*ò¼¶Ñ Œ·uEÿÌáR;¥rC ÞBQ½5ÇfÒÎö¸ÞíÉYKúgˆ­^ø£íWFø½½üð"´{ªa@¾È%Ä“VWãyu<ÅÏæ«÷Ê´­/ ÝáLjÝûÀîYGQ!–(Ö fŒ)Xn¼M^ üQ˜ÍatIHhºôE+,oÚ>{±2Kï %$ R°/Zol×""À€Ð¯…’€¼¥6iþ]‘@ ÃÿšRAж¸ì}(ö½œ¥¥^îw÷0UñÏ¿ŽæïýŽ66"â#îÜF‰ÑYƒwhÙb(Á!rjFe÷žnñ_)]Ö2‰bÔÊ2Åbh¦™¾Ù¥üH! ›³öjæNWúŒb)©J>Ú5xbfQìª!á»HÈ<|H‘œî¨ËÀ¶ßýÅø ¿aÈ`ñÙ‘$Ö÷M“jýW+r;’Á^ÇŽ¶¸"ügŸî;¥œÚa¶<ÐXŒ¢_‰ &I%ˆÇNÇÚ¬YA]@h­ª[œ:òM_†š@€’ŽÞãÈá‰%l‚zΜÃŽ3œ¬544ã+ ŠS!ü •м¶bë?>pÔŸM;Å•Úß )0otg#ô1¯¿ð~w×ñ8c;â¬ö¯[/âJÏUÔëfäËáñÞ9ÉíÛFDxãt¥VOèùݪÖ7uÖö:CúÜ~0ÀæI¾½Rа Yá*Â(Ùâ’º–ˆª0èÓ*uJP8­v+)6 Óªñ¶£)#üôXÙ¸aaÝd<¼² àÒ|+‘Êé;ØuH:½(oUaFO§ øþkcVM‹#M}wß½ßApVHk2¬Gd†yÂV†«]haˆM W‚® ®Ag u„ª‰JT<æNHÞ7wW„xÜF‹$‘¡â²NES[•µÌã¡ð,XŽC'#Ý`V¸Œvý£ñÒ –Ž)Ô¤æhã9˜ÝÕ}¦=Z2>߬d4müLÿ” Ã{üØcÐüt£‰UEâ½4X`3ØíWÆEo6Ê^;çſ팦8µEŠAÕ;¸@#S'ºqÏXä1ó2ÚY”Ih3ÔuŠCéM¼K^#Œ¬‘©xcHž/Ì̲·UŠHϼÁ XÇÿ§h弋¼aUƒ±náÚBITHD ·uünIè#XÚ¸áIô1t û¨c^ä²û¾Ûyæx°|¶à¥ˆx–OäúªYü·³îUQtþ˜ö/ƒrª¼~·õªÎÞkÇ{J…F«†U˜-ÿ(+AÕ®Øn`‚hŒÐÂIì"cϸÒt‹‡ŠCÄÈLÛ©bÌ€žHü@ qóÊò9ý‚ÍÑ®c*DpN‚BÒX2‘rÂ3½†å§à¯Q)'˜Ö4ý©åéñÁpªÝOæ½T©¢ÃãüqÀ'òãàÿ¿¯ÌÂõu/wRoÓÕ½®Î7Å>CK¢¦žš?Ñ(öãÝ! ±²”†Ipd ׆þ2¼~*X¡’A-É àÆ®zô‘YSùäòe`HãÀ…#å¿^Œ—‘˜¯D$’eà©7Qù~¾ÐSÇ?²=ر oÇçòPŸürOŸ÷üGϬ•x"‰‹íïé[ñwT¼›{×Óõ÷}èÊ»?äÀ±#¢‚J ‚Àõ-Û~Ç,´O+ë(ý[žH?'Ü‚á~ è çãƒóÇð< +0øuRü€YO ý‘þÜ|Ž¿®¬£Æ  òJ·“ؽˆ×®x#ž=+þVœ–?_{÷âÁ+)ï·û¼RÇž¡¸ <•ŸÈ‘Ã[üñú݈íëjÄ4adbBÊzóðàüòGíV2 ±<|õý@(“©É$¹ê9ã’ŸƒóÉççÖ²*¨üã”÷GÂñÛž¼ðG‘úã×Ò1¹ÚëM‹Ãâžù÷N¥Z¬7»LöÁç·ß „'VéÏfä•r¤·õ$‚Y‡#àöAÀ<“ñé*!W+îHoý݈B£@?äry†UK…,¥GY—ò /Aä+ð£“ð9>†öýµ<Aä¿2!?ùñþÿˆŸÏ#ÔŒÜrnmú}Ÿ;ÖçªNrØEµÇoó'¬­ÙäçåIRGqÀb8ef ¬HìÀý8õ—¯õÚ>¨Ü‚àÈ<1WU Èüþ!I$aúŽû“ÇÁ /ÁŸòÄñÁøà~~~P¿<‚zð;Ž;t>x=¹çŽ8íÿ’ƒÈø ñÇ¢à?,ÿ.U¹ üóÏǹ À~¿öõ+Ýj³íf1[×~QÞ;Þɔؿ¿ë‚Þ3Q¯Œ¨ŠŸ x^»…ý©çûIGþ'ö}l« ]J’Ü€¡³–±<ö#OHçŽOÏÏQžXÔ«@1þG¿ìqûàû$óÏ?ç÷ëÊÌìSÛááYBõqùÜ’> ©ç‚yø<em¾×}è|§š³}ü<ÄnŒ÷Å=ÐûcíǺFì@‘‘¨¯ëä'büþI 'Ž@'ô!P‰Ç-Ëu ü"#w±Œ7 ðI,ÄžGÁ+òd<¨? n~†cÀú$zXµÉX·µÛôÍð{yǵ?çéõí„…T<’H7*þ$GÉ#±ýp?x?$ò0õãáªFp¼qÂð¤7$Gë²±ÈÜ3Ø{'¨P;vP“û<’TsÃrÉäþýÚSÂð§‘ùv^{8ø‘X~Hãÿäúr+¶ ]ÊÅo]ü_k¾*ÆNæÉæÀp-c¾}˜ÊpÂr”@Ÿ°T”¬²¬oüåÛRþõXƒüÁr´žàeé"° ˆÆz°;ÝØ’Ŧ$ûM)–þÝU*â"íöòɰf.Rò×»[ÀAEú)DgWI 1ª[à¸û©/ñu?Ä;ÌIî°%ÄA¹+$`'uG<²ˆÔŽÌ¨O$Ÿ.ÆHÈã×ü>/à¹~•ü»Ê¯s¾LwÎ6Ûy¾oR_ˆÔ¯Ö«·|íçg§©²z<œve”M#7¸Îy&eVäYTÕÇI.'«ÕyR”’FpÉ$E¢yZO|†hG?*‹^v©ˆ-[í]¢~—¡*§£d`ŠXÈ=å`Á ©%˜$üq8Ž`Ú·0WÑ5T_û¦"ž Hš5• ¼@€ŒÕ‰þ \'«’výK·o ¦ ÿ™r«eoµŸ]‡ö¾ ©à”@ek‡ù©¢ÇFÀÇú0ísìÚeä8G@$u˜:Ñÿ"ñ:¯¸U–)D‰Ö#,nÊó#KŠ”ÿNGüdF. ¡”Œ#ª¿¸ 3ØaóËôÛ/ýÞ“èHá,`öï${ÈÎ! ²¹†DË_ûRVæI?êTdcõK-åÍø;_ÛÔà1Fj¬sŠïÛÛŠ·å¿y~óf’Ò·Vñž.‡‹|‡…ÍnmãM_Èuúæ %S³d¨RÁ䮀òijÕËÅ^Xþõè•$4Q§}6íº¿š·ÊÚ—’<“ã_ë<úz×°™nµâ-£åªcö6Z›½ÿBÚòtîÒælÍÝ.}jÝšÙD\c±£JÅ[ê”ÕÊ XZTëÓ–<'ÄJ’ŸÉÐûR8í2ö‰Ï·XÂX•Of0ì$ŒÆÄ» ëÑÛ¡†p;PpkÁ×7Sá¼¾¦£9z¥-CR]˜ÑIeôÙ½Þkl=«¢ @Óù{»­Þ*¥”ú;lñUv=+kËwÎÒÕL؇é[¨`²1Ô¯ä÷Û¤—†&HâFË--U·^HcèÞݸÙõ x³Â¾cÔ6Ï¢|¶í“ÉzÞµ¨l\¶³õÿÛð^g!ã¼-|~S)³ky{¶¤–+YÕ?3BÛ![ú…Ôw—ÜŒ‘÷B±Aù+FJ N n#þ}ÚŠ;‡þsð=j¥ýßãlîX“$¿—ä •þçu¥ZŒ%[VÝöÈp£ì@¥JLd*_ÚyÛŽ6<ûîy'Ÿí¹$‘\~tQøÓ“X¯XgðŠîÊÇ)]ÖI圱ë¢8ŒÊÝBûU?ònÃ$ "3’GUHË$Rtî@’J§Uø *Öƒcˆð²ò@åg—“ÇßHf‚A8H%öQÝHOyÃ{5žBÌIø¶Î¨Võw1§9ijF(É„£P[ÓŠÈ öîVôèê0Ô„ðPeÔ#ã·¶x—·ëùŒn{œ^O$²=ÑŽš¤Pº´fTŠYbdù™nJ³Ï#!ª’§qÔ|݇oûÉr\—RcjzòW–IØ¢Ž±c$1ÀÄ­g±,ËñÍbIDD¹<¸èÞã`’ešÍqKà'ˆËõþ,€ÃÚNdǦîÁä3˜ÄKŠ‹i¬²Vˆ´²˜ÌR› ( <‹4H±@ý]G37Ç ë‹¥Ês#ÊÅåãKR,¦1YDwh¿§w;Õ›õ9/çÈ×·V2#–E¸¼çÎqÃ9ÕOË€¿XÕ’6˜òÅ w÷Øn8ö‹rýýW¯«×(ìOµ#rÉ(3ÀJW³HÈV,ƒ8–«<¸ØÑ£a*“Ž>Íüœ{Ÿ‘eg2VbeF`K-Y?º@š9„øzÜ´É3ÞЈvRC»*°2+U¬´h#ž7 ‰SùÜzî±v(¬×·é~9–ŽoÆ{.ùñúßÕHNÒ:3ð½¤Tæ`xiüsLS„^ ÑOi ïšg‘zzf}OÔú diT¾D‰ÞiÍ·gã>¯ <‘ŽÉB \žÞœ¨ê%ãºv…‡EhÈfpÑ”o†öÒ@Z¼Ù¥—˜Ï¦‡Ð Æ*ýR”Oÿ o"I qÄ’ÊÕñeßü*o’Šz©G zá|l ='®XvpcÞ»›>8ê|)Yêßxóê3Gû?n:9 {ÌÄ÷`õ_ƒø¯.«ø“Ø€TòsÉ ŠÑ©PŠÁ¹ä*ð‰ä–`‰bIø+ú=€r  eu%ùðWñÀôù?äÿƒÇ¤ë¬ÑE(21=y ÏùøíÇ<° úà@ƒëÏD¹ö‡ù¿ެ=‘ÙÝýküÛ†-ÉI”*yuÿ%dà>YSÁÀ*G<ûÖ–H÷#à( ăÁùf<õøüŽXsÏ|þ½ë©=%ÅÛX>âûýøÉ?Ìý¿±Ç;~ªöÝcQúìúv·¶ìú汎—éçÌQ×¹³f18J/lmz·x…ܵº1јùhYå^ªÿ'>Ÿó¯ÂÄ>añB² Cvò.š¥#_–fŒfz«§ËYb"àv•z‹äÿx_ÌÓáîyWÆú~ÿg˜0V6\M\œ˜¸®{•êÍa Eaâ‰çE=]£G ²ƒê)_¢O¤4€Öÿàóâó VA«Ò(U_Ü(?”/ùr§–$ƒð=WÉ|GW“Òž”4´¦KRZ„å)’VSßlמ3ÉÙԆ¤ç¨$H½13K‘J7½ñ}¸‚O›ü&ªï'™·_£¤ÅNßüBüsštWÿ˜3„–2²»{凯7xEѼÑâ†N‰*¬žJÓ:4]ÖV#6ÒC^KŠ®€Û^>ªj;/©Ý>Œ>’«§²ô ­þ•Çwe²þ>Ñ=U‰`OÏ?çŸC§ÑÒb1ëôÿâÐÍ1²ÌºÅÙeTpø¹=Y“ÇSð¿$qó8½ DÿÌo0–Q§üÙÒ<"™Ö)ÿªÙ‡&H  [ üq!‘I"'Ö'†¥ [Èž',$XãTò¶–bK?ñ¯õnÝÚºXäuèñ¿ºS•BÿWÒ[qÛéçÅEË—uj 9þ>‹Éä‚£ã‚O"¢ÿ¤Â¦6úzñX…˜^Š“"º?âD|†.ŠÝ‡ˆÿ úGšƒ¿%£mRê뱋ñ›¬¢ö¤°ÑÖ±5õv?/Of³±Úñß½íÂJ}fxQ%ü‘âXÙË'y<³¤ûp†b±#äãf 8T—¢{’þ8Wó Ÿ¬/ K0˜ù?Å !#|Á¦E4n\‰”å„qÙ¡²ÒF«„w3$Uq¾‹>“%~’}Ò§_U# ©ãÊôEêŸ&?Ò€OFäü‰ç“è~&NOD•šº®,¿&ÏÖïq¾'ÉÔJ5õ•×˃n;‹‹ÍÑïG#úÁðã—y ÅIËÍ]=&äð!&%Ê7á$KËJš±ð= Ö† |‰âuW2DÞWÒAŽHWþ¦"ë’=Œby,{mšXRwéú&úE‘x?O^+HþA'X¤¬ãžycמÀŽA? 8ׇÑÒ ‘]>|VŽÁ8ãW ;" ú™§P¬ÓÎöƒÏSÄyˆršYîjj­co׳“ Ž£:ξ¥ßDÈ×úcßÉ`7Öˆá·Ï–EÉò®–¿ÈW²«F¹G$B¬}èHœ:qí _ë Ä%Yûâ… ÐžXÒ›¢Ã:¬ŸÔf‡zómmj‚8gS# ¿C¿HL{ÿðxñY-ÌMƱJ@U>-Ô¯øN_ƒè7úúA%‹ý§ÏŽÿ…ÑÅ]êêc'›ìíœwàº3ÝÖÕoÿÑéï¼÷ûgƒ_ü-(yxƒvñÍ€ÝÓ¢ù7Q`IüböÊ_~ÄIün¼ `àG³GÕG‹ˆ,›Ž@ü]Cy?N$õfŽeì2‚¥Ž©;ô1 …[AûÆÞ—è?èÖN¿þMÞ+w†F‘u؇‘6’4B-®ŽyêT’G¢Íô ô`J+}5ø¡ÉŽ(BzÔ$¼HÇ’B¡nÃŽ;1 Ÿ×¢sQü&‰ÿó5wC;aÃWÀtfWóõèùzxúíUŠÿwWÿ ¯3ûqî^6 ’Eònœz…^Ǥb÷ÌÈäsI’"fY£+íøSxÁ”LûŽæäž‚?'iý½¥G2„é}įÙ?…¿l!>Ð Ž=5èèÆ TCôÕâ¤h‹Êk‘'C'!Š;–,Éüùì_qãôôUùúnñ_fK6½ ªI)Ç`9îÄõpIëÇ쓘Ó?ü¦ŠÙ¶¦«‹u¦Ç8ÁXÏÒÕQùú˜îÂ>ËAYò×Þ¸/¶yóÆ›JãbzñÝ kÊ΋ÿ14Ûve–u -xQWÝ“$&Vjç«$¡¤(=2“¼e WO$øô,ÄõÖ¤‘2J[§A.gÞrO>Ò1þwŸn€½Ÿèè‘CGÿÁ§Å=º¨%5ØùèXH¤±`êªÀ0òàz ýýlŸ¦o—S1NÚú˜Äsð¾àUV@Žeýu<Ÿ[t¾-=z|¶”b]sp¢Û_cjðñ›WáÑÕŸ\µ§)!ÔôÄn¾¡^{ã1ægŒ¤h–/&xÙ•_ñTòœŽ]C(fuÌ8ª;s"Ý ÉŒ‘LB6†Fc±òWO ù'ÇdKp“nÚœ„v 0>ezrXë÷å,vGΨ¯ÿ¢hÙþ—üNZ"žÛ …&2¬ªc~ P sßÿ.WŸAIÿ/¢ ¤–I~˜üTÈììØq݈2²Ÿw÷!ãûxU]x×?ü¾‹ß¨œÍë2ÖmÝÎqH|/Jíž©›ü±G%Ûysý¯Ý’¼dý#o$xëÜpý”ﺤ0±GXØNé™Y£˜ˆ­Ù­Ä‘¹Žlz¿ó#ÆìDuüã÷(§³&û¦÷îHz¬q(!¤bt¼ç’Dÿ‡GÐÌý0ø¥º{l…5øû!@Å=þü±êÁˆ?'ƒáÿ¿¡å+$_L¾-Bªe€ÿBT‘I¤•×§º !i$`Ççòãõð'ñÍuŠòúX üÉ&C¸-+µq…é…|ÝD+§m³áÇm«já¼…ãÂIÿ˜º=P…‹{Õd‚2ü…H̹Ÿpû„–…'dil²•¬ÿ_$xÚN¬|‰ãö@ +¦ù©ÂÂÆUËŸk¿ÏwUöéKÚèñC—ÿÁãôBSôÃâ“ü¥¸8%;ÚWþ^y¥<8áO­äÿ‡—Ñ—ý2øªNê À¢)Ž>}U_·|€Iã’I?¿GøÞµËèÞÏ®u¹í‹£¶ãÄ~¦ÿ\¿ýXoú»|æŽkäÌ}¦ò@¿»vÔ¡r‘ŽïÄQf?ìž¿rìá2NÂ5x†ä/‘½Øy Rx¸aóa˜u#àZ%&¾ŸÄÞÛFIpGÿ¿¡ªÑªÅô¿â¤†Hä„x1ÙÐNm?ÉÛƒ!,þ#°‚jŸðíú÷%•>—¼N¥æyÚ_ôú)3LY¤r½ÿ¹‰%ù‚O^ >ñžc?ú}«úæãíµgm×~ø^“ÿÌÔíWãõî ;pÛ>Rñʳ¤^Gñág+Ýkïš|Î?Û¯'6ÈÏÑA¯,+×…¤§"›2tÿ™ž<~ª¾Dñãȉ•‹ÔÕGfe ™‚ÂGý/¸ÆëH 7DªJØÿ†çÐn[éwÄÇáú·ú}QÑ%d‘£Ý$£(ûo# }9%{ W9n9?ä‘þ}'ü9¾†ßª/Ó‰\Ŷ¼kêGϸ9ïùä’ÊGL|o™”Sðú4ˆ¤äo[”÷ ÆO׉ü3D‘zš–â&ù¬¡ÿgéÂ&Ë䟶ÛH|‘ã³äf‘‚ïºtŒî@í ‘3<3,HH*åòгÖgÚFt´òWÌaÇ|zâFä4{Öª[ñ(^Ïõ–üêcãe ÝÁ%ÖÿðëúpL¿L^'_mÔž01°,±…Cñ'?+Àã’?µþ¿DÕÔ,?Lž)é‰F¼œFãŽE—¨Œû#ƒññÇ©k‘Œ  °Œb¬æ-tçg¸ ­Žéþ¤³—ÌÕÍ¡Ñ[w†óœ¸¼_nó'Ç<9›Èž=T^žMÛT`V)û G˜C$K7D’²—c L”’€æ1éü‘ã´¿æ?_·d2ûR&<±=Û0P’"‹üS 'ϧzÿÃßè˜GÓG‰š5 ÿ§P*‡ x!Èå‡?ü= ?áéôFñM^'xØ£]}pœÁ&^G¶?aðp~>}Gã|ËIËh•ÿé%Ø1·Óíúñ†iWüMVÝúcþn·°cµpÐ"xô”ÿñ‰ãÁ' ½?ׄ‹!è\£|··,Â&vެ¿‡Û9³+›P(8‹Èþ=hП!øÛ‰]b‹ÈzŒ¦VAÈë/õa) ðÎKm¨êˆAôüþßEjêÓ?Šx« ¯e^¿Ë#‚SƒÁÿäIô2ÿÃÓè¤)'é—ÅAA‘]…{샨“‘î/þIÇ#õÇ—øî¼²èh9%_3SÚ¬¥ûn—Øâ Ò¿V¦«[$Mî;eúÖþwxf¯‘|yü#þbøúRýQw]N+/d ˜â»FAU×Ú êõä÷=ÅãßóÇi|ã…ã”öó«Á^XÁœ¿õuš8Ãp küg fH}'ü?þŒTvÿàßãH‹€^FbÒ®A2qù‰þãÛöyõ¼Ÿðÿú.uêßMþ+[»)×ãw ©R~_³1R{Gn@ÿúÇ5÷ùŠëÔÿ-îþÜOázWMjíq†Ø»<ÝöVþË61ê0D”âò¾•p aö†ÿªVöžf/*±ƒ.RJXœƒÄ¦míÍIdY“ÿó»T­"«ùII”£Éîoº´LcÛ@ÐŒâ·!–' RŒ¡no ¢Âý¿ø6ø´HV 5ø‡¹öÀÇ_»9&$Qn?°pÌ@Ö±ý}>š¼PDaú“€Œ˜Œ®ZOÉœ’YøäƒÇ<xÕ/Ŧòœ»Ü¾­ì»zo7›Û‹T|í^Î:pcÔ`ÚŸ§ ÇÍzz?·ÿ6´³,#ÚÿZˇA?Fstíôáâ¶XÐmµØØspÿŸbëÇ!€#‚¥~+?ÿ„åÏuŸpôÙ’íïõ8‡ cùúÛw"ïÓwšquŒ}øi·šôµB£Ì ™&o¸ò.¬¨HüÝÆk˜«ÉǸc?¿~!È™ÿÔkf„¢û;õSœàßôá˜þnÒ£Þ—Ì: ø:“äYмª¥IfÎ*ô!‹P,}£¸=äî¾kÒ‘ÿ84t2¢,e¼ªÅ ±™U”$˜$Wi¸1Ú\ÜhÈ°ËØ¼—è/èØÇé·ÅÎZ>Nûžû9+ýä° 8ð ôr¡Ÿ£ùgútñs«†?–¹$4b9 AN/r£ƒÛƒê“¿)ËN¯o1~¿_«ÄüÕkêÇ žœ•ç¨=ë.-Úø`9é,CŸ2h’G"M"ɵd ï”I\›eXä<‹øbì%åŽd>ƒ9h üIæ}B¡OVòV¦ý ÊQ¸ÍÑ…VÉ1§10s‰|÷ãÃçÍzÆÆqîIä}M9ŽR+Üi:g$l®ÐÚue8Æ_…ÙÑ—Ô¿C?HmÇÿ“·‹‡V-j¯Ýxsð?òPR:þ¸úË} }!ºÓ¿‹ÊqX¿ÓT€ëÊ(^pÄõá¸<1-Ø=Oâò»y>UÛ´«ÛÁÁ9«×ÖØv-qÑþÝ«Ì4¾{ññìG›¼s+¨0o%jL¼ÖK.uC"UPÿUž ªJ ÛΞ>ê£þuøþ(Âù3PyHiC+\*ê¼3väw«Þÿœsêd‹è{é0}:øµU{ñÓW¢8f O ) I$ñèdú úH Y>Ÿ|`Ž7 5ªa›Ú?Æ~G¯'È3sÈ9½}}ÎÑÇ|䣶׈&ïš¼Sjc%ß/øÆ~Š"2ZòNœÁbSÙE—6Tù ]þlVIl7Àô/—ü?a‰‡Ë.(Päù#Mv”/BîQ3+,ñþ½ë0€×S£ÖêQɰÒ}ý%MÝ[éçŲö.ÌÓ4H>á&OqŠv>áç·ø$|óû:¢¤´*éô÷âÈÞ3Â0Ö)1Œ8üoÄàž8ù÷Ãד—ÐŒ@œÀÈ´ÝŽø\%OÌÔ“„—AwÞ•vßbŸ~+áóˆ>å‡üÜñx’/ÈÃôƘž9ù„æDr9’ä4Mäy°­çˆ;°>]ñGºü|"é¾â†Qf̉7@­VYcIn7z¶8Û"Ä¢O¤–§ß÷%:ëV‰‹ÄAëÉdnHùä~ôÿ?¤‰‘ôùã{3:µ%.îArÍÔCÝGâ?cŽO§þ=Ì•\¾Ìæøö=÷p{p„éìêê¼ËÏ|Uß¶x¯Iæ?Ñ—Ëþ0gi lÃÉ:[öCÏP³ í0øœ© 0oƒè/ùÑá”(ëæO{E ,‡ÈÚhpŠ Xÿ®*ׄËö§#™k[O¼i¼}Y7ú*úRåX}>øÀ:žÈWX¢pœsí„ü˜’yàØäü‚¿E_IÁ §ßûl¹ÔñêŽHb¢2I!¾Hã‘ÀãñSèæ1\·/Nç^¥•Xº§½QÓˆ|/GÍÔ*²ÆxV‹úxð9ªßÿ9ü4­ùyÅfV>IÒ‚ˆêÓv7Á y÷äRc‘–˜ öõ±ó/†Sñ>dñlYÑJyKwVd{¨Í4i!SÕbš316À¬zý}(F­ý>ø«ô”j˜ð¥UWhÏ tqÀçãЫôeô§ªGôýâÀ­£ƒªPÇ´ˆ½‚~^Û–u$óòxà’=1ñþ`oðú[õÍ—a¼w6ÍWž ð­ïRv"Ô#n#X.‡µ¦ØóÅkÿœþ>añA=úŸ%iª8cÊw'3ÝÕ‡Ík|¬öˆH‚"O¬Ÿ4øP˜Êù‹ÄÁ˜~ <¥*HY2æúÛ¥‰ÇÉÊÄ1"Ê¢ÿ¥1 þÞ,åÒE,Ú®<ò¬~x&>>GÈ'ûGGøÿàWôž ²ý>ø¿ä©àj´KFŸ‹ õäŽxäü’~¡ñþkÈÐ_ZŸ¦ÁÝû9ïkü+Es©©Û 0g.æ{Ý•›â¶¯š<,yã̾(,ªò|ƒ¦LŸÇÁ{+›"7@ ¿b’²ˆÖØ‚8Gæ¿ #©o2x¦‘J+$iÎ… ËJs3´_)`F‹r±£U‘{‹ÿÀ¯é<Éôýâè¥UXÿJÐ.PÈ$ýàrãò ’G+ý¤úÈú-úR$/ÿï¸Q©ãØöxenŸø€Ž¿°?gÒ¿æ)þF`:æãÕÚÜžå‡øV“›ª^þ˜4wÙÍù;~rÎ>÷¯™üDzÊœ òF›±“•BQ³„!QÙª8ܺ̊Ÿ9øC»¹óO‡Ç‘ÞMÓcNÉ2ß.²{N$_äï÷_wÛÙÑUïfè»é?/÷çç׿øý(¹n~Ÿ¥Í#Æú±Rkú§ƒÓ0³Û’ìØw[FK3²Újõ‘æp8’FIù<.kŸÕçGVq ­ÁžèöUåÇ49=.\“ j[õHƒqv±iíÃݸàªÿžG÷Aã‘ÀGÏ BOaòöþþ}7—½%!Qz„'€Í#GÏáÔÇ÷ð@áÍ=êÓ†rvìwö~ÜBr;îSøóôñ¶8‘Î]zÂ$høèýB¸RùCÈ Œ8ùe? ‚}3±„v bHCÏœóÃÿ†#‚C?T$ÇQÜ@ÏÈ#†å¸V1ž?c2qÊž?!Çü?οvªÌå),Ìîüoõ @`@äãàHò¬4«ò­í±N+º{æ¯?rM¸æ.óv›âëû×rˆÎFA‰rŒn¼ÇùëÈ?îIø.fY…ã—`?¸ôEžìHà‘ý¤*“Áä“À£#müwè\Àcøn¢“Âð@’üüüzÜ^‘”$p ¤Š¬Åz‚ þ_¦ù|sÏÿ*GOLEƒî4ö6Îz°¸ó÷2žj-Wqßm¼gÇtY¾‰É'_qd2*÷n…~:¡QÏPO üþ†m‚¼jijÁá:³–R@þÒ¼öþ?çžIÿÔRnòªò’ëU,bÜrÇžGû7â@‘úõ¿ŒÆ!‚…Èüû‘ú^G?ããŽÏ|½ÌdfŠÆõºysŸ9áIÈïï›ÇÓë߉DìPÄàqˆÄ*ó3òª¬O<…vcúú3r2Y €ªÇò?°9ó$þÛ‚ùà“Ǩ•í@ðô•;À²¤ÈŒÜ°–"Ì’ähß’£äyçž} FˆU$R¡Oçðù-ð9n9f ñÛž?CôÆž‹Ub†ö ;&§ý¸ŒäÑn6¬xñ^>ýï‰YsjTÍÀ=J޲ƒÏÁ誈çÿCŸözßúú¼d(#uFîàÀ/naÉû¸<ÔZ2ðõ1ö‘AVà~G£ð9çôÿ°O ¿¢ß}î¯rYÏ Õ9nŒ­ÊòÏÈ‚K“ðAà‘Á¯ÊÐÊÆE'NãOƒ¶ß¦Ø§ƒ×&ƒØúöÿ?¿ì› j…Guˆ…äÛqÀ?‰çžÃ÷ú'ž|¹¤ Ť Ô#õSØ•àõä|ü|žGããÔME]òubœ†’§û ·<2žüÿ÷8ô2dƒNWJLEUçñ ÍóÀCýÁ—Ž9ê<ð,%Ý!ƒ·Ý£õ¼q>d‰[„ª6Ú³û~·Ä ùò¤ªžR]‰>ÙV^G’$üHùãƒþ‹7Ï_äàô ÍÔõ#€xXùïÇ †ÿf–žŸMtÒùì_ا¿¸&’»~—ÛíõÍñ,&E½XJ©'‘ÉàüÇVþæçãýÿGÐm‰{Éÿظb@^Ê8!x8éÀýO¨ÈæXž¤4d1þ(~8fo’_ž?äsèIr¼°ï'#–%‚¯L?.9$opy'оQØCÚ½½¿Ï¶,%»ýwßÛëúq#¶T3y~=yäJŽ÷Ç'¢øå˜ž¬YòÇ„*¥z9%Tàð'‚HLr2¤7¸_žãûVcý €ÀþÈç“ë#(T’Y€ª”fì ù,xý~¡ÁìIožòMôýl/o¥â¾–ñ:âwýœíŒãß?íÃù²‘±!åUÉy<‚>[†±ÇðÇb=nrO”uÔƒûù†ä’¼ÈÔŸË…ü¾xôÁl—2$…€`£³ÒƒÉ9<€Gøõï¼½=ÆјªB¿ÃôcÁê> ~¹‚^‡Ê¿éýÿ¾N#8ù ¼ÿ—ÃÑ®²)ëòOà·bÁ€ä³·BxíÂ…ì~9ýƒë+¯õµ'åuOÈ<•äGþø ß² Ââ8û“!bÇÛGfàUfb! G+ñò—ùøõ:$^7ßoóüñÃ2]¬0a®ûÞ<ogƒ?vR;R"âB¡á}  $ŽH#¢€ÍÈaÈìAÈ%U’°NBO¢? Ê ÜŽ^ß’/û€OÈ?ûüþÏøÜ\Eã’í#r@n`  Ÿ€ýqÿ¿“ÏÊü­½;{Ÿ¾s·Oâ¤?#Ï#üÿò›‘ÞR¯È`üsE=$…íÁàÿìƒòO" ùìVO9?¡ÑÀàŽðï€>?Ï¥è¬5‹}þ¿ï¶Y²Wk6íÙ/Ï· ¿rʼn£ìÜ@(váˆìG?9¿¶ãŸN¨ùÿ1þE±Â0BB/ƒËrI·aòø$HýqÀçѹUèÝÓ»öŠž¬¯_’#…àóÏÏøgG}\– @aÇÊìp> sÁßâ?ÜB.ÜX°,:ñØ@’OFžGùÿoߥté­”Û¶+¾=¯ý8lä/ûµâÇeßnÞû7úRI HñýÜ…<²ü¯íÿC¬ˆXÁrLŠ;7Ç=¹ý…ìƒäñÏ›imG ‰ ý©ÿÄr~AVŽè’y<ú4“êá˜7R¿™àúì„|üŸñÿïFñ§¬~cÍöÛbü{ç…ó RJŽ>?Àf^¼|r%Çþ_¶ÿÓ䞈'‚8ã‚#qùp>H<1ÿÐúKŠ~®CŽÛŸžÇö·nö·ÿ#ûýú4³¯P9Vª§³+~ÏÐ$óÉKÁÅPË;öÃã;öÿ^ ¢* ŒXÕ¸TN@¹<×ì’|†'äññëfqÇb ¸!Jy+Ïx<·ÿ(ù|qóòBK ~`Ždøÿ`yû?®ÇïŸB£«©=K€¸+ ÿ<þÇïãã‘úõ8–S¿gÙW»ºßùƒÜ=IêãŽ8äõ<>>Ù??äp}eIþÓÜ’B©eùøoöõ |ŸŸ×¬|{+và°`OýÇcþìŽx?¯ýzÇâ bý¹PyQóòTqÇûŽ?|ò·ŸS…)ͧp÷hÎÛBýóÆÅU;” ¬–,ßïúŽ>õþ;ëný•XÿÐað¼ÈŽ9ä|òAþÓÇþϬwåUÉUR?´ÜŸßòàÿåñúùùõŽñö{2’KÃsñÇyãÿÐOûúœ=åÙÏÓ¾{ZWïÆÄž9R¨­Áb[·o’~?MÉÿ¹àZòŒ¼‘Ðÿo?¡ÂüŽÀŽÄÿžÇóÏëÖ¬£ã  €Àò:òçôOù'ýˆùøô'à bT I$“óú?'öxÿëþ½Kÿ?Ïðâzw¹_•¼•ïþ¸ûñª²#º§ç¯n·Éø+Ç?<ŸññëÌ¿ Ńۨ·ëŽèÿÕ8äqǬpA Gœ¯GsñÉÿ*ÿ<Ž<ë!ˆçŽÁOÁ ù7$üü…Ü?ßã‘ñêq1wrÞüö2[Œýpd© ÏË)ãà?A‡Ï$ÿÞùùãÖ¾Ùãà7åÏÇbµä°#ŽÃÿ¶ãäzʲyFdBõnH$~\pO*Iäóÿ¯^`œ܈þ$y“þÄ?쟞}N&<·ßéþ«ßa¾ÜÀr@sÀ8 ò³Ïÿ(ÿŽ'ùÿŸûxÛ¿̱úö÷ºsßõãÀ·öôGp8䨑òTóþxçÖ8'“ðÜŽ€ü©ã‘Á_įÏ?³ÀãŽ}`~»*“É`¡>>ãಎíóÏÏÏ úÞ2/© G2­ÛŽ·ž8çžAÿ? =Go> ¾?ìoÄôçm½·ýÿn4è{ª? ÅK·\)~þþ‰ãžHzÕ!€$±ýt À#û¹çŽüIçƒè܃¨ç¯`Ì`{pzðOÿ(þ€ýür\8R’?\ü¯GŸýóþ~@ãÿ—êEÁŸ[ˆ¹Øíྠ–+,¸ºÅ×{±Û³mÒ)|Yë2¬ŒóGøº0^¦2{~=AåŠü çƒÉå¿~½îOÔq#"ðWžÊPŽèêTò§“ÉíÉR?J8Û·têHüœ“Ï ~#çãžÿçzÔ׃€€,ŽI€à·?<öøäÏÇû˜–;øþôýšíÀÇoß?£÷{Ûc„ÕiC°g=Ñ‹ÁÖ7_ÑdX>IR_<üz3!áÕ£Y*½{|ŽCOEê8? ‘ÛŸØç€¤Á‰ RüòÜ•CÇë€~ yùøçÖîˆ7#ûaòuü´·$’=»Åx¤ð]ãöý÷áz„GªÌÞ6TÇÓ|{pD·Ë8fêUÉbG`ËÉQÐ(?-þíòGë÷ÀõËÚ`e_‚¸^X~#€>I$Á?£ÏÈæ!!'ÛEîoí.Àþ‰ r9äóÿÞçЂ(×ã¨ì’ÃŽ,GããƒÇûüz–8®ß[Dý¿öïÁì9éM¿KÆÍØÏ(E‚¤$Có¾y$sþÀùçD,UnDƒñ?ƒpÝy=@R;ûìGp8>•%OÇä’¼qðöxøn_û#Ç¤Û ÊIöøŠŸÈ±$ÀpxàB*Ò•IûVþ1ÛÖø'JKlE!Þèßý÷8Ž®u[ "¼’¡ºŸ—bxä“ÀöÄrëü}{Ò…¸‘,« ÀŽŠ·±·üž,Oïû#^õÒÓ”—V†åÞgØÿÍq’AÔÙ/j/ú}>µôáý*OÜ?U=zQ‡`[ó±à’I |ryŸBG QüWïfàöä{1øºŽVVñóù|ß'ç×½{Õn¬Ê©UÄ\G6¯Ôd°äóÏ-ñþ8ãòObIõ»hX÷Xÿê31„(JñÉå>$súãçŽ8z÷¯zO™Ov½ëÞ‰91‹ywÁàö÷ấf]žï·ûñ‘¤R _îuì„ Ë?ù§è9üÿ¿­ND"9²äIE…UXžb{³±Á’yŸz÷¢ÎBÓÞ¶;8Üö8åÖMÿnÿBR13}ܤ9U¡‚p~ü‡$Žxÿ·¢rèµA}ëþcû~Ý~8ý|û¿ È“óϯz÷¦''zm?¦=˜WnSf]—îtÓÁ4øQI7]ŠðÈ|·$ƒÌ®:ÿ‚©?¾G¢×u§JÙ *Ib´ñÇb:ÑÉ%idŽTŠÌK+¼m%y:ÍÈ:*Èeoz÷§¶Q§"õóŽþûñLu5:ßS¼xBÂjÝ1NÖR{ÓC$†ÅékWŠÍÛ?y,εý¨رE OÉ.5ÔêõBÓ’X(åa Gä;7>ãr_“Û·#õÀp}ëÞ§Dcèƒ÷A\ùsÁ–¶¢«%T»'j¯ÛŒ&Yß»[wfgù’b¡x(Y@ üþ$óóÏϬ¶¥^&„ ,UØž #‘òT€ÆRHøäväòO,G{×½9™U½Q»ý8hÎTzŸÌöñÁÔÕjûËÜ“çäøæCÁp§äßp×Ôh¡Aî1H¡$?å½ÎI#x ~‡½{ÕwR€l ”maÃFRuZ¾äWûðZ¾³^I$_xŽ ó T¯ÇâËî|ññÁ ¤Èãž=eõʱÂïß³Ä]A1üp$püp©ä’@ýòIõï^ôW)ÿL·ýŽß/ëÆʦBKÜ„*à¼,ƒüŸÙ<ñðy…8 ÿ*$*­ ù*Hvì ;|òƒãý¿÷óëÞ½èmýŽ µ»»ßÀWùç;ñ〆5vyšEoÚ„)Ï'Ÿ’$ üðTýzÂ`kK#)‘À,§ñøø`I^{rý¥~ ñï^ô7OyDñ…öàuKËþWû–ñåÀSaî|¨îʪ ‚ ùw ÉçüŽ?£Èøôe°#<«?=\Ÿß…Gˆ ߣûoþ«üz÷¯z ÜO7c‰Õ*«ÿ>»ðÀÒ1™‘ðŒTòT‚ßÚo€8?îy#ü§S‚¨UåùåW°Dñð`?$IýsûçÞ½èùú§Ø"ÿuÿ‡Œ¿œ>Üyp‰žGȲYT ÏÂôê£ö8!A~]¹$ù°µHø$ƒ© «À~~9NXþÉo÷cëÞ½è™O©Â’|ö_ÐÏß©hÃ’Ìч./£þ!A ö'’?ߟŸXLW·g°à•ìO$( ý|º·ûñÉç×½{Ôì}_ôÿ~¾_דU‚bÄ©êz( ªÅBðÏëIì ??®|%eI[³uŒuT? À’üñÈãäŸ^õïUFK(‹†@àÙx‚›/Ó\F† €üóÇ$ö?XüpsÏéxúDˆŒ’xÿ Àãÿ‘råûíÿËçü{×½X—ößîpY4gs?«þ{÷àeÁÔB—y#õÀ ¡¸Žx<¿Á$Ù䤸xXÃË"§€àO×Vø$ñòOïŸ}{×½,)þlÿÛïßÔùqƉˆƒ— ÌÁAurä€?@úüÿëÖ鋯ØpX¹|sÀêTp¤I~$ñóï^ôÜ|»ü‡.6¿¸ìKó‚:«É,×?ÿ_ïÈ­M#<+0$²³ä~'ç‘þ8àƒÿËõï^ô\JGa+ÿÕîñ³.çwÏŒur0,«ÙBž p&çáGó!JñÔóñÆâœ žå€<“Éê[ûHþÒ~»ŽIù#ç×½{ÒÛŸþàû=?îð®ý£û±¾ 7`{sÇÁçŽ8êÁ¹ççòˆ?lÔb*[–å{Ã@ü‡ù'÷Ïø>½ëÞ«’’iLV1ÿ¿“Roj¯×Œ-Cr¿ê­ð9ÿ€{ð?ØqþÿíÆ¿erO%»:v$óð'àóÛàããŸ^õïF+Ö—Ž˜¿~&÷r¸~œdЋÛ_ÈžÝ`8à9üï“Ëóþüú+g[€§“ÜÜóÁ*ù7#ž¼q#žAøã×½{Õb¡jâþõÀê——õà¼xšñü¯n²^¤¹ê €Åù#“ÏÏùçüÃT¤¼«¿Ýù̆ýüoøð?ÉùõïG´O3/õ‰¿Ó‹•ê=îøÝ(À~ŽG!˜’`xR8? ÀòÝÏÁðßIN4FpÏÉ,$ð~Ÿ÷Žß×½{Ôw~¯÷àE[¿ýÌðRj1FÂU,«Òõýð~?¾ßüy?>°”ã‘Pn\±'“ûŒr8€9ƒñÏùçŸ^õïS±õ`àEV—úGïGûñ‡¥J%VoÄ€«þ9f I?<8ãŽãä}`UáC{Ù»ÜËÕÀäžxbIàóÈ÷¯zªj8]¿×þÜ?úÄ]‡iJ‘ñÁÿ‰ã±$ #†A#ƒûô`JÁ#ÿ"BêÁ$p åHMÙ\ŸŽãçÞ½èC+`ã¹}Ìç¿¿ ®2à+¶á|‚Á \Ê¿.Oe"CÁàx*|Žr ee—€ŒÁ‰1{ƒ†à¿ø€U¸ç‘Éýü|pO#Þ½é8¸ÌKöýÆÿÏ÷x+L¨ÌA=J¯…#ãñ$8òà€9¾LÃ}˜°XÂ…äqÛ‘þÄü*ðOûž~@à^õïJÄñÜÛƒ&Ç c Ãøû—÷fሹR ùýŽû(ýúÜ%Uʯ=ÇìõRAäóù>O|üëÞ½èpܳ3D§“Ã/ {qÁþßÐÿ¡ÿÏõ¡°ÐþÇ~å¸ù Ôýž·-úçŽ>9õï^õ8œIJ“ÇøpIããòÁçß?äëQ1à+òÁ»Ø^ ÿ…ù?¯ýIõï^õ8œaY¹±'…ÿ`ª~G*8å\ðXð}gÞ<þC·âIð Àò8ùŽOÏï×½{Ôâp,rÔ*õfn>Oþ¿dþÏ<óûõ•˜·,^½‰ò“ÇåñÉÿ’Gø^õïDÜúŸß…’‚ŸæxÑ,;ËôPP@ýžRÇÀøÿryÿïÁþÀ?d’A^HüsÇÉàŸöàú÷¯z_9xaM¿Ìßúq‡•–17ï… ¯?€É<ž?ôIÿåúÙ¤~–äóðàߎ#¯$‘Ïäx…O½{Ôà»Gè¿»þǼŒ9cþY”ÈyçäþÿûŸû?>´KG„N¼’)PJ€äóðcüöÿõïS¹+í(‡ÿ«ÿcƒ )H™¸å'° 1€?ÇñÉý ’Ñdˆ”à:cÈ€’cÏ'žùã^õïQÝÿðÿý1àAdŸZ}ª>86eüf’õ9ÃÿÙopenmolar-1.0.15-gd81f9e5/src/openmolar/resources/gp17/front.jpg0000644000175000017500000236135511632461264024155 0ustar neilneil00000000000000ÿØÿàJFIFHHÿÛCÿÛCÿÀE"ÿÄ ÿÄH!"#1$2A %3BQ45CRaq&D'brES¡()6c‘8‚ÁÿÄÿÄF !1AQaq"2‘¡±Áð#BÑáRñ$3bCr4S’%5D‚cs²Tƒ¢ÿÚ ?ý3õgß§¸Œ?]ºãÑnŒû(Æõ¯ Ñ<¶‡ÀjssÝép·˜Ö5ÑýKŠ/ö¾o¤ÙûÓ[Wcè<õóxíoÒôÞIh× éŸržîtÞ[¨y½þŽ=;Äeú£–QõG'÷sÒ¥v’¼ç,ä±e¡’âDÆ!3ÐEï;ýE¹I³Ž°tX%,r@ÃÚ/Bã„ 1J¡™Å»B8šÅ$Y$‚´¢“ûèÁeº‡ï?ÚM1Ú:§U©j^{‡Î]é6SÜ.¾öã¦õi|òµ³–uÏO4¾µÔÕ_MI Éb«ÕÓl[¼‹O#n66}tIéÔÕÓ‘œþrê‘¡:D’§Ð¢ÄðïÚ0ñjÅe’)! JTºŠ2”üÞ ‘o/&g¾ëN¤{~Õš›Yt'ýzÒ G©«~{UtûÜÿD4~o!„µ•l‘˸®ƒÕ›¥¬fÇò?íüU”ÂÞÔe.>8dÙOªùÝg×íW_¨wÿB¯oYÖÐâha£ê?¹„k¼Êcq²9­„’Ö¤èMDZCòK´gF‹àÉ¥‰(¯U½×ûö'¤étKVõ‡DÝêFˆè–¶ëœVZÓzÕ±X|·Tsø®ŸôÇ5×®½õLën¶ÔÃ麳ihéè_ê|æ¬{z¯ ¦ðÔ¢bG^}ÉûœÖ}÷ùÔ W´Húmí_©z¦ÐÕÒC'_¨×¤Î7C5‹gmõ]5í úCOàñZæÔºàŽ[Tcÿ–Çk=Eü\°×†¤å²E³Q,WOE=)P«ÔR§À,Μ^jæ’ ´«,i–Ò½K*P€L¨Ùž¸Åê% _Íb³½Rÿ@ÿmºë)†Óø„Éê^¾{vË\Äh­.–SLé¼/w¢ï;ƒ[—#Ó¸j? ·jy ÅF)®çL·¸Ÿqz›¥mнGþº#?ÑõÒ¸- :Oœ÷OÐì΃“LbkÐÇ`´œZN÷K-àOF,]iªGÖ?&ûuàj½Ž²Ï©µ‡´mG©zyלŽ' Ý-Éêª^é%~œË&­Åc±v-Þm?’Ô k§´ý ¹†\vGSii¨êm';ú3Rcr°E‘„ªõVl¤^W\ͨòUµ$ŸéÜ5LúÑò73nǶÚú‚lãåÓ!ÖÌÙÈXþ@äõŸ3#&s!1ÈF!”éd|@TÃÀºF°ôB îIqŒŸÄ«¯á¨šI ¯ðH?Ó-ªK‡?xsÝÑZŸ¨}5éÖ§èÎÿD”iÞ–êùò5¦€‹Ü·Clé½}%*›ºÏ—éE‹:®âpJñ.§‡%vÐÖ8ÎÝ8`)¥¦“=¤zU¯ú§?п¦8n˜u*Î:^§h ^å:üP2ø¶‹!‡‹YMc@ õDØ£K¥¤Ìä¯TÁׯ%lcP–6Çú :¡=Êûqé~­z/ ’鎚êçFt¿D´·IGºÞ«û¨ÕÝe÷Ö3N=9Ö &”ênÑØ~Ÿf4>›žÖ›Ð9<˜ÊÚ’…k™ uªIqÃWÔYOúy{·ÂêÝWîKûŒÿO¸t½nŽêN¢uZtÏ«qô;®=BÒV´¶w©zBuO)¡ú•’Ÿ9¦5¶2¶g8úÖ¾kX¬–'»©(¡Bƒ„š„¬$—XBA%A€?],GÚÇ>=Puª¥S* wQrÒ[[Ç÷çg¦ê—V,æoêYÿÑ{FÇ›Ëu’‡¸l¶v·¹>ƒÔ¿–ëuM'kAiÞ¬Û°š ÛšÛýŸv9b/äÒ«‘¬rEqîØ“èq>ã:a ¦=ÿHÈ´?OÄz…?Øøu]Ä`„ÙùìO¨«SK½yNQ­Ú¹ši4’LÁÙ€ùIþ¢îûkêǹnštk]õ;Hh­#þ—º{^a±wz¿Ô}m›Åk}Sþ¤™ìFcX¶¯×ZË=ªæÏåðþØl¹Ë¼Sij_Àb¥­¡ÇWuWâ¦öÍÔ8zI×- ¦ú¥”ê7µL¹Þ…ûâ÷î/T`4Ρê®[T`ºË«mÑЕ¬j‰£Æ¬ú>*f³£36¤Æ?ÄwøSOì–£ª –SÛw·|HWZ’••ÓÒT4–Qiß×™÷£Úc§ÚkJ×Îã4¯úô§†Ôškþçëá½Äô%ÎhD³‡ÏŧnU‹OK Ìl™­?€·SÖcqõìcÅ–©ÙiÿKó:‹¡UõÍ.‘ÿ¢f“éÅ.¨iHt?PêiOrÝÅRÕºuáËS“NeWøÚÔïãÄ̼<š:¹ÉXƒ *XÚ!S:=™Öžæý×uW£^èîõ#­½¼ûhÓ:k©ÚFu;ªÒn­èþ¡êè*õ·MÏÓo¤²5ôwV:{«ôö¨Ëbž¬øZY‹™¬L¸Û´&&³ÿé§*O쇣=g»¨z©zƒÖ^èýG¯õ³êçRúK36œ›1&CŠÖZ¿Pé},Y¹<ócô63OÕÉÔoÜä©1êÊôÚŠžšuR5¨è AtŠv'gyÜc5lõJiJ¦¥ 0+(%a$Ye q&äº~¦2ö«±Bö¦¥2´Kf¾z®•‘ìŽãÑH,ÇEè‰,Ñ Õu‘öM­:C­uoPµn‘èǹ­j®•æuv^õN»iÍÕƒŠÔZFü—-ä1÷5•ÍùOMuØÌøCübÃ’Óé»3¦½H×^éµ7µ·éî¤ÖXÒ]^ÕêÔ¼^‹Ì{±ëϵÔÊtó îC¥®‘XÔAè„Ú×QâêôûOêºøm ëTÎiÝ9w#=YrU00V6ñ*†MJdÐÌ®¡V”‚êm"§ÎÌmr8Ø+fóT ¤)_;$²L‚¡ äLà }ºÓ>æúù¥t*Ñÿé.úS¦0³iz: HûŒöÕ¦´†;He1ÓUµA0ˆ±Ø¢Ä$€ÁÁá°*P)o|2¿î“@‘^²Iv6Y 4ùŒ}Y½­s¹nœõ¥¿Ñ»57MúÁÕ:]pêv•±îƒÛÍL®ê©ÔÚ7V ååX‹ñå*êîŸhì£G\Ô©=ü ’³EjXìrº Dæú‹šê¶gý2“õ3Ô·W3:žt½­‘¿ÔÉujk‡ÔÓRn¤C‹'.¨wÔ(⮵ñw%i›b…Ç™¾~kާjëžÇ}ÃÚÈu;Üþš÷쓯é.TåzÕÕžšõ;Ñÿr^æ:OG@ê^´i 'Ô˜ôf¦ê¶ év²×z-MŸ£œ«/KÔÊè›xŒºÎiýÎgz“í¯Zû¬Ð=ê7\+a´7² ¬4Úd:‰Ô>¸ê½oY{ˆ×ï=w‰Éu??Ô cw7ŠÒWrƒbí«6tÞ“ÅÒ«â0úo¸éŒ®]I 4ªŠcJœšZSF¿1˜Ã&½P£O]-EÞV‰}@ýÀ›¯îTäýÔäô¾oÜú=kn¦ät[´ô½ü·º€âæÆâsÖ"¹ž­Xã:Ÿ…Žx­Ø¯Ô ¤ƒ14J”Þ¡Øv±Æiî h>˜tÓR¢VnNôbGKôf÷ í«Fb4Sjé1òåàÁct_T4Ý@uWñÞÔ-ZybÎVkEl…ËY6¢š»ªW@êYq~νÍõªš/Uû÷ Ôopª{ˆê¸¼v†ÕZg§¯šÐSËka¯5¶K¡]@Èë(«ã…œ[Hä¡»b,=:RUxê?sÚ^}Ãe:ùþ™½ëV¯Ì\Ìdº#ÔγI©ŽgPO‰÷Ñpž×:}Õž™[ÖÔÓ7zU¯:3®pEÐzš,½,d–qØ}­©cïåµíAmSËäÍtÒR+µ%:Ò)©>¢óhhÀ›±[0ŠzÒiéF¥üÀ¶BK»¼Þþ–ê ýÉiü·LÿÑ˨:ZÞ‘ÐZ³§š~ë{™öëy1Ý>ê.«Éês§E}AÖ|ÏÊ¥—Õ9L†Jø½NÔÆk­^¥ªôJÆŒn«8ΔazOýº§Žé6œê}@ÂhšÞãýµÉC ­±úZß§"õèdâžCN¦J4w×F­UHª6>?€/dsóo#‡îe,û„(’%Þ¹´"übàÞÈ7¯–Ê3Ü®¬#ÝP¬h6P!´XváXÖa^w;U‘gŽØv¿ñÓ;/DŸôÎX1ò>” 鿦g¿³`OñÊÐôÐKúƒªÐ̼™ÙîF(ÿPõõΰäµÞ_ªèû¯õ¾S«+Gô×_ÛÏ{‚ö±“‡=¤4Fc/ªô½_c­5àÇÉ¥u{'žÑÚ“OTÆj[Y#³ŽÈÁ’Æâ£Š-¡gÂt×¥Kè–’ÿF®­âº}ÖL]ì?VêZ÷7í§PjN¡c/TÚô5GPµ'¸Ü¯Rs°AAWB½ýV²é UÇGB¢ª¡ è"Ó9g?ÎY'² YÀ:xøívÒP–ÒAàç:oÇ›` ¥½äõ×Ci=7£´¿ú`õã ¥ôf–Àé}7‰‡Ü´;Qâ°ZN…=7ŠÄ9½ÍvJxŒe\|0ä-Ù³w%Z9¬·ad{AÞ¥õÿUóÚÇPõý":Ûªs=DÒO§z¾Äþä}°UŸ;£ôV§^¡é Eš¸rxÚ5¤ÇêšÑg"›d#†,–FÍ%“Ý@¥@Iy–UœIàݘ’;ƒÆ}ß·C#$OWÏøò%–^ Ó´ ý£,v@ž! Ã+h8|ªÕÌÝ©kq^"{š2FÆJÿMQ#OÆZšHKÇÐÖyà üj³)¡: üÁ˹j»·â¥âzÛ©p]gÈûˆÄÿ¤¿[1ÝmÔ9Àt£9ÔÞà}¢×½•éö!ÌF '{[ô°ÓAñºŠî1rÕ±qeáŽgŠJóÔ½ Ò>®u?Tuªè£ÖÝm¯5Æs¨uœÇ¹m÷°šÎÖžÁát¾õ_O¤÷g_AfÒ . ˆÎé Ö”µˆ8ÚÞvø$-{éìæÇõGävî´2NÒ,D¼¯§ƒÌ‘€¶£mª­}¥¢:sl9Ä2ðŠÔ¢´âS)‘k¢sVyʶÔ#´Âîz"Ð^(‘×WÿLåË=ei¦Ð‹ØãØÞñ1Öë‰@$i‚ Ö»¨=›Û05ŸOúYÔÞ§åzÉ«ÿÑ“¯öz“Ô:Wdµ3ÝÏA4Ý[z‹EŒLø|Šàt¯¼ –剓 ‹#‡/)!|È%x&œGM¦ëx÷'ú*õŠ^¨¾¨¯­le]½¥6•“ZȦÅ.¡‘MK&êJYU¹OX³ÿÝõrpÕË&n¶F•KPýÖWå¨â\ó…ˬ-Á_»ºÄ¼¥¢«aæùÐíÊÃÆfD™¡hcv,eˆ²ÇÄ‹QËV0gZÓ9V´Š~]©;u’(C‚Ãý3–tµU–!Ž”]Ó¾’ì¾uÊîåÎT«C˜5¾œ|ä×Xîœõ;¬8Þ¾k¯ôZëcªÕïéÝIoQ¼ûGÅi½Gª´••Mêy¤1>í±š ¨ù½3Û…tî´êŽÔ9¼M¼F3VÝY1|Á#Îæ4æHõßAêô|÷#’Ò>äz“oªýgÇØ÷íTÚÕ}F¸*Hu¦&à÷“kBêjÖ©U–½}‘Ò?ÁI äñË^voWÓÃÉ/Üó àḵ÷¼T4ZŠ "+œsã÷ È©>¼œíÁbËG¬1M/3Êl’Ë Oå+XH䳕Áu–?>‘ÿLåÜÿ8»:½ Ü%‰ Þ'w†=n±šH/J–ÛL«írÑŠ§Ôþ¸ezÉÒ):#ÕôŸ÷+Ô>šÍ‰Ã`%Àjn¸{.ÈÛC¦¢ ˜|­_cÞêÚz*VÈa:‡ ­¬În’å(ç8Í‘Œ3ÓìoMúiŽÐ8½þþçqÔ4S§ë {þä}¬êLÅΣætìºhëmaÔþù39ž¦j*˜§ñýO¿¨áÀcãˆé³…Jµ}‰ábý¹#gâc"%‘"”† ÎN#âÌ9&̰éËb;_¼^7œÆeØÉÙœKò#‘”ß•ŽaY¬½{,oGKs'07© êúj‰#]e–KP†`;¦˜»~Ž:Ýp’>Ø)EÝ¥‰¿{Üâê,¶šÔ\Çõ÷5þ‘é,uO¬ôoT)j:åý¬añI¯úsR|V‹Õvô†Þö3DÛµˆÇXš†S%‘ÒöD“ãj¹(ˆrcÕþâõµêHº›¬ÒçÝ~OZô?©õJ3éÖof0'c_hLÇMõ~Bl3ÞŽ3šÊät–©Ë㨱¹èáÅ\ŸRaþ.F•kY¢J1oM A9‘Gàó+šï–tŠA4'úJ{Át~®îž^í½‚_ÂÛÂf#”jxõ<¿½[Ù-E˜ÍÉb{™ ùÆÎj gby³y[²XÛ{T¦Ø‚GÚ4H£uyÌÑsøq…‘9f®¼Î>'y©¥Hš,£"#_Hiã@i;\#°’HËÀ¬¨’ÅaŸ½fmÒ;ò/ËYƒSH¸_P?éÊZ…b ¿ÃK‘¸0óc$_lGøÝUH©Ã(›3°Ý¾‡l|Ûé.ŽèWEmêÉú{þŒþæ’]s¢³]*ÏÓÕýföuÕ‹§þ>ò¬i®©ôóÓ=V3þä}·ê=Cÿ #Ô”u z EjÝEþ£™-kÓ­'k9ˆÄdæÃè<¾¼†'¨£^ U)ëýUa÷ƒâŠF1°–„Jajë(-åƒÍ‹ ªßói$*^/O~.ØøòÞYVigŽÄ£½ ïiQ^ÄöcP·oòS›¢\d]Ȥ þ›¡oЦ-:ӦበžÈãµà&˜bßÔ¹Kšà°ƒ0ÛP|…î›fô‡[ôký"=áÝÒžá5V?Qõƒo¬žÏ¬Ëªu˜ÁÑÃà3”2“ÿ¨L74žk GB sh\–šL°.a.߿ܳ$Sª8ˆõŸ1¥õGRÑÛݶg?£´fœÐ•mSë´7.¦ÐšB:‘b4GRG¨.%z¹¥±Õ¡Q¤°M­¬*êX¥ÌÔŽ”Ur¹UÊý‰JžE9–0 åH(x×… 3†8ÄP½° yy7Ý}8ËlöK*pI•â†4ŽB²ûfHB9åöTþ:Ó4Xè>ýM_é¼»ñDE4HÓø—a®ë•Ci¦™D»bìÄö¶ÜRA¬4–®öá…ö…œÿJ_z—½¾é½?£ônB·[ý c¬TÓš j.‡©W^c¿Ô>¯P¤½‡PÍ•›V›¢x |íëÍ<,¡Ó?nºuÔŽžVÿGOzV´×Vñú^~ Ïœ÷íÃ-¬óÕt^¢«šÓ˜VêncýHr]NÄé¼Fn…L´-9«ñøœ†Jµy¯iûGòWê:,Rr³(îd„F — ¡–°a¾Ñð{X„“`Ês6$Ü•ôíx‚<Ä™% # h¡“º6Žc´§ƒÍÛ%W+(zö`´}öV2?é̺†¥f  ,µ¯ÈØC®V餕 T›;¿2áàh?4ºS¢úѧú£¡Ò;ßmme¤,jêº{/©ýÉ{iê\ØÕx\]]Qn–šêWú›jÝ8™<µL.+—š*rM‡ÅÕùç#Ïv:º§Oô?\a5¾ Qÿ¤'¼Ë0ëþ«ÙëÞnj½gö•ŒÊâºÓ“‚,vOWtûSa?ÔN†s¦I”ÇÕ†ºTéÍÍ!‡Ôq/j]5-pÖÜõw®ý!è3 –êö¼Åhl&¤ËG§ð7²8ÌõØò9jô­dàÆU­Äçm£%:ÜÅ¥ÊpG ‘=\Ì¡fTõ"éoTú{×+W\ôVáz‘¤¯Í~óznÇÈHæ¥iëd¢ÈÓxªd°ÓU¹‘dáÈã(˳¹ÇC4.’µ è9¯„s@¬2ˆ)@"v“"<[œ[ü[4_ÀPI0 TA ’ÂNî ‡ñRôO¥Ý1Æôƒ¢ÿÒ[Þ^œ‹¡ÚûPëþŠ\öy’ÈTÖº÷wNj]eªrs¨Ô×z©sx¼…ÌnZÏQ¯êõ¡ù.ZÅA‰ÅØ¥=é_\(ôS#Õ<‡L?ÒçÞŽ’—­º»;ÔÎ¥bñ½Nö_.ÌkìÄPãõ©ÇéÜ÷úM§´•üðELîGKa4ôùÌ…J³Ý¡‰©å½Z,íúožÔú‚Í|>šÓ8|¾wRfr°|l6†¥6C5’Ë—d¯[ÇVšÖNS²Õ"ù÷{³úáeõö‡Âôú×Uu¯ÓØ^›SÒ´5Ý­w˜ÍS©¦ ÒY}l¦+Sÿ;uà¢kd)dèÇ…Ë9dk_¡§ñµmeíÓŽgþ”L Ëi–p!ÉíÌØlÇ«æÉ,¥—׈.eì338¨ý6Õ.èÄÚ~NŸÿ¤ÿ¾Bi.šeº‡†çS=¢k¥Ú—1kRfôÄøÍKþ¢™ú™ÛsWíYšL¢]ÎANR#ÌÁŽ:i¡ÒÜ×Iº)g¤ÒôÏý%½íiiz…ꮥT£ê¿´L¾LáúÉss¨8³K=þ£Y,>o¨†˜©u/+WO½/öÞ‰ƒr¼–o¤qé\t…½mÒ. i¾¢èú.c2­35‘ àòØ©”†Î6(‘ZÅhnãaÊO±›””YwôÃÞoµ>´k¸úcÒ¾¼h=kÔ zHt…iïQÌÙlt2XÌ-*ÙŠQ»B•W½—¡DÙ|:ï—¥QŒeZÏDÈ‚siÒ²4“ð½M¥È,÷ì6%¤:¦p•%4 "ó¸ù{?ГF¯Bzï‹öÕ¢ìôÛ¢éïËHè÷CTcôµ®¤û8Ôø¬Ýc‘±{'WIÕÖ_ê)ª%Ñøgɵ¼„º/MF—ÀÝ·rÏñw¸ÂsA÷ûÔ(ã—ÿá×ï}Ê€“œö# QyT÷ÕÜŠ¨¬Ö^ª¨m2‘õ]4‡ú‡û(×:ކ“Ѿâ´.{Ræ*g,cðÔàÖ nõLœÌj¬õµkzf½k5ji­9™ËÜWœMª*㤴§çªJH›Ý?·:½>éÿV«ºbNžõDMNõM'ÉZ¡©åÇб’³R˜«‹žÖ7!ÇÔ±k|Å,YÂB«W'Q&š–Tú^IˆàÉtü6fµ¡á›Úà%góNÊ’J’åIX{wbw»‚NÖ ¿¿~¢ 7úr{æ ¼(Xeý†³nQg”qßKkƒ4õèä)A5¤š¿…œÿ×Þ¾`®Ÿéã™•²>Ãa¥ß”OÞŸßJ×’¬ÑÆN)^“Oý%i­È8­cÆÿ¨×±Œ¥k6±žåºuv<.sPÙš­hµaÀ`©IœÔôÊÚ8굫K­>‘êV¼úͲÇ&žIŽ @2C,§ÓMv7ÎI ªd@eëê_{¾Óô^šÑšÇTußGb4›Èi,­„Ô¬™ÊK?gL^ÉÁN,#äpØŠ:†¥ì.9§G½Jæ{¶mV•aG¥äX‘Ÿ°gþ[8¼LìDhßC4TÊ1n´~ ˜ú»šúƒkePý;½ö-¼B_bò2‰v*xGïŠOÎé»Q¯öšâlñ"Ü|Ô[B FÿO}LÒÈ«E7±£.áb–K{஋ K"Gzà-Ol¶?½jde]}SÕ®•èÍWªz—_i¬oL. ¥­+‹9 5yumè(iÙhYÓÐdä·Ïd,Á^Õãžy.É܆XieÝ÷#ÐŒv'«™«½VÒQèVz¶™ë?5±zçN³·ç³Z®?Rá+Ð|Œ-yñ×`†:•¬áòÑÊ^¥rÕìFM+I]*†ÕÒHðìG Åûpã©VcÿM¨…8$ù6³G×µÿP`JþžžûÊJ‹0i"öTˆÌÐKßûÙ’Xeiþ‘VU’ËDVÄEIÖß§×ýA5¢€?ûÞÞúõD;mì’r´.y“ïh…ÞÌjÆŸh¯M±OAYïkÚ–†ê]*ÕÝsÒ8£O˜Äàii<Šç†b|Þ 4+â1̘Y ·o%.F„X†Á‡2m­ ¼ð0ŠÞî½²OÕŸø[®]=“¬+]8š<¬ä$Ôj¢jºn¾VjÑi¹³í'ãÅiø3’¯t­{U%bcõYé™& ÔõH4ÍÚ!7÷Ž.q#ÌjŒ©kŸœMص‹7vÙðF_õ ÖÒGÝôñ÷ØÊ![쟛oÜHcÿÖ¹–Ä–aŒ> 1M›v׆>,ã`ÿ¨f° Á¿Ó×߀N}°É²©Õ–E±Í½§VŒ)XíÊkв²Ö³2ÌœX¾ßgóëÔé‚{…éÔ:ýµ­ÞŸ&œÉÛÌá¬w~ö™Èi³Èã(c“ 5%)qwçùÄIšXÓMµ˜,IJñ}véVïU©âº‡ƒ·k¢ÌÖ «•ØÈ’ôÿ7§¦ž¶kŸéCMBÕKqY­6q¶å¯$ÕìZº¬¾œt¬‘1ÔÏõ#fxÓq/½‡‡ü~f(¦p\¦¡¾‘ @ÝœKm8ì¿ú„jõ„Ì?Ó×ßW%§5’›{+ŽFH"e(Þô–V¹(;BÔ±ƒ$5d„óõ•ÿP­ZÌÈÿéíï²%†M€5=›I#¬ó2Fµ½éÌ’¼ ë%„ä©vŠÔ×cdjÑòÞéý½à:i¡úÕœêΑÄô§©6*A¡õÞNíÜfSXÉZÈcèIFÝÚIŒ8ìŽÙÌ…*ë :w+Û5¨ÂÖV ¯=ú{>醵Ôý7ê^´Öú# pÚ¯Næ—?­?–…ÝlfJ*ø«µqS“dË‹ÆMjK8Ûß%îÆÕäaYJÉ%Ÿ>ÎÃU2À€ÄŽûDÜa†{0m”%œêpÚ]§g—‰ÁêOõ Õ±*w?Ó÷ß;³ÆBvêû8´¯" ûbX}ä‚°ÏÿÜÍ •o®:;-¶þ_õ Ôì]çÿO}Õâ Í4¸gû,vÕf–4÷Œò%ˆ,7Ç»M¹KŒB'É-E*¾ :‹Ý_·­¤5>ºÕZÒ:sJhcéÞ§Íf®K¯Œ×t¤_Ò‘Á=S{'œ™V¦ –JXœüŒB¼8×Å{¶öÙ™Ò_bzÑ /èΦõHtf¦‡2’áòOÈV±bž†²ÎøÍAð*YºØ=K#çb¸ä³TW§$ÌzVU˜gÞ?þ[3îeï;Žp†0*ʱeƒ¾ÇX¼KÇú†êž\&ÿO¿~1óþˈö‰:'ñÒ˜È?Þ©µ…Ê„;Ÿf¢– ^ðIÿPýReÿO¿}’'v¼$Œ_´ iÀr¯ûÇyX£ÞC £¿€'ì·×Óø~¥èK¬u—O°z†–OYôñtùÖúv¥‹/oJ Oˆ/§EÛÓÁV”òepÒ­Ìeèä°™8™R Ôr™ÅuHxɨˆ©TB•Ñ…1vÃ<‘ׂõªL~D’$®GB§Q:“šQà ¥Áf€yü½¢z­@}T,(0`цv¹à @ßýCõ**²ÿ§ï¾…2³¬JøÏgà3´o-&Y×Þ!*äo9mMr ¸Á,÷åZåÆÿP½Dƒÿ§ÿ¾ò¶Ú@2†q¯÷†²G,OÉgªU&¦f»ñQÏÜpŽÊ‚BÒÎ,FåQâË +F É1R,”‰"ÖhPYdž°†il)x QJnCõ¤ 2•õ†ÿPÍNŠû÷àdí¼Ýƒ…öŽfãĺûÁU[j¬³%äKÒÅÊv¨•ÔÈ'ò[}áZ+aÏ<$"@ƒ¹ÈžPÛ¶ë`FƬ€ð£Î|6.,"…„Ü"ß“ i/*†6`^8Ýù.:iK’Ùy#¤ÍÝ_ú}!›1P“pÈÁÉqÙ¾ñue’‚ÝÉ?ø¹ ½ûN! þ¡:•XröïµÕlËQ„x?iD¸¦æ’Gïx,Õ– Hí@ïY•$çW‰R¿ê¨]{‘û÷ÚÄŽÈAƒöœFÒKÚŽ/§¼†Ì§wа÷QöXÜñõ8kH¥ÚdæxJk²ÇL[… ’‚Q ;rFR;2†g#³1G`7u‘ù¯N (Ý»Áx³ž?&´‚GÌÏZmÿRéôï™_ÿ‚föû`h?ÔKR»Éÿ§¿¿>(è…“í$dh÷–Xäoyl)˼9 \Ç2NMu«®ÆK#í“Üöž÷9†×Ù•#¨‘¼ãé)ÛÀmÜŸÛº}vÛ—ÿÀ 7nDîÛÉ]–¥ÊíÅvV>AUØ|`ßm¶ØßÛp`[M‰à|IØnKììw$6í¹$ôH$)C^6^gº»J“‡Ž Än@†m·‘¾Cv8׿mùÙ¿]øÆÀqÁ·?¿Û0ßqÿ«·"vØ·ŸqãÖ¼‚6#”ïAY]C–<›êAmÇÕIUä@Ø‚Ç&%€ð<•ãÈï·LÛàn>wÿËmë(UKxfÜ.üC>Nÿ]÷Üî´Ø>—€O€ø’–Õ¤µæüs‹š;ûÔÿQ˜œ”‰z¹ÐYÂÍàâOhý ŒØTf´ ÖÊ®ÿk­õÉeÚÈÉJ«ÚŽìð%‹Ôà±k–+C-ØRäe&Ž­ÒHÔ{¬ÒWd\ìÖTPÄÏ »gÞ×úŠFxw"ê—·ù;`³;÷ý§ôb(™åy1h$Ž7¿$v§5Þ¦MuÔ}Ó,<:›¨šÛLè|›Qã«euFf®&­Ûìy5£Á¦;9ŠË¶sOA%&Ïaà¡rÊfñ1Í’ÅCbZ=Ú%¿BK– ™–#ÊuŸ£šz­\ޤëJôÕkòdc7ÔÍ‚ƒ#6ôøŒºPÊeòÕ%c ’­knÝbóãoT³…¹RWdB…Y1üÃð•êV”’K|Åœˆ¸Æ03’Ÿ`t„¨° -ÛùÁ1”iÕ\ZÔ‚)­ld1VJð¨]âŽ*qÆh‚‰Ê*Ü£þ4×w­u^vÜ)ñÔeÆœwìøÙ*-Ǽ1øÉJ×JF¬±¹\S´Kunüsí](CÆêý%—±Œ§ˆÕú;5k=‡—Qàiau.6ú‡NV³kYü% fFÓç4Ü炾Fæ Û¥Nü‘MjÔN;~”º¯Kmläš»MÅ…—QI¦ëg¡ÄÇŠ±ª¿ÜÒè™ôÕ|´·WcUÅ«éÚѲÐ[ nþ~½­-VÏÓzKv¼²„*‰K1”³ ®äEáȹ¼E:®MH0 H!R䇹& Ìc¯=:s½Eš•v\u“iê×îѱAZZ1ñ)VÄ0ì–áªbJÑQRG–-ÚÃâ®4­oÈ=Ø*AtY‚´âí*ö ô*[µ4EïAìö1RÚ2ËqÌôÙT·œÅšÄÉ—³§%‡—QSÇSË]Óq䩾v¾íÉ(ã²3áVÁËÈ·z)iaòRUJ¿ÈÃ-+6xš!Èõc¥Xš2dr½Yé†3ù=.r9®¤h¬e4ÕXhRlΕ{×su뮨ÄV±VmE§£vÎÐŽhmÇŽ7R•”`Vh‚ì ¡0ofÎm°jîÉø–€S±, Éq¹aÄžlV/!4–oâ±×æ³Dcçµn­yÚÆ>¦ôT¦±4,œWÕ¯ÅQËTÓyü#y8æTÒZ·ÈtΩÅŒZ5ðXúß2:Ó|¥ŽÌPÕ®ÖRj,='--©€ÈQFþ·4î¤Óš·oFê,°ÂXžÄPçtŽ ªð6å®ÓU¿Z¦[{!ˆ½zªÒÕš´VåR`ž<‚¦B c^ÞÅpRUâP¡å+Û~i1?‹íâßõ¢”ü@¦2¡B øÔ •¥$JMý…ျŒVªµQè+Rt¶ Äb€ Ú÷¾5V¥8®O’޵d¿b$¯o)hFJH!25ZóZ04¶šŸ9—l3QŽ»½;Jö‚˜iÐ¥Z ujqøÊõâ¯R…Hšµ”²kÁGµG’íYÇnÜso¥jlnFðªü‚°û¸¬Ê]we’$<‚ì­5ÌzîÕ¥Ž<™rÔõ„vîC$îÇŒÜ$ ³™$3žIßòa±dÖJ¨_ŠC£m?ƒMPBRáà Àqi͸# V¢R5*v$–¶“&X)­ yÇ.6Œµg§‹ÇÑj‰j­)+c©Æô£•„·a Œ£˜ò—#N'ø‘ïóI8ä=S „ ñµ,V2„¸ô³Yéã"ŽHùkée‡“/kµ"¶©ŽÒÒ$+z·ô¶Ÿ4ªÂcÏôÕ$EjÃrDHÿ`ÇÂsrûÎÇrŸ[IiÐI|=¥%°ª)Çè†Häå 7QÈ.þG g©eB€ü8IvB]â a{™³à²rUÊ5Ë(C¨¸‚7àm{Å:Ìé};¨Vœ™ü#=ð]e¡ü¾?’4v^„×kJ ê²V–2-ZV€Ç¤”1ëdä’¥eÈ-)(‹F’­ƒŽkÉ-%'È‹Ö"…§© ňá¹N%‰PƒNñXÜ•¼âdjÅu«…†+;FñÉY‹Ç0P%‘0Q6ü›Ec¦´û2ƒ…¡²¼R©HÀIÂä쑊¿µ*¾@ßÔëçòÔ*)'.5’H ¤‚Iƒ!àÇ ˆ#)Z¢5ŠRIKz€-ÁŽlÍ âµ4¤)%?öî*ÒÑ“%a†¦9ÒyçÊÚ¤ðÃÅ>e«w$¨Åñ¶ÃåRÊÉ3;ï‚ÃKj ˆÃb—)Jh'§tG ·ZjñŠu,ÓÈ”kOZ Ò´­òlýcônê>‹}?,l#˜Þ…nE,aéÉZ c$®­4†»l!§,‘ÈòÙˆ'Á¤ôØ­É…Ç·(Pý«© ´kÈS³nrß`v#vVw'N:§(‚TÞL%®]ËOf‡FN±«Qˆ £w-ê·‚$=»–qO-`py /üüèË68æ$šWl²àí5¼9¾%Œ÷W’Œ^ ¶Xô¸’Ü ½Ô')Г!&Cà×Kí^Jr[||F[æydš‰R5³5f/#Z¦K¶I¥l8’¼®âO¤ôûW“·ˆ µ` HaŽRÒÂЃf LÁB‡cÄžÏÞþ…Ý3ÄbòI’{Ô`´!ž‹DÓmaQ'xÞ.DJÉÜ–UK­·ÒcŠ•©å'?—¨Š•L§ÒBJ”í·Ô8Û^R²*SGÆRŠÁ‡ }'bûZx0ø®˜½!€ÅEv,N•Áâ©g£ÍQÆbñ•FMgVKÐCUnÌ©Éâ[a¨Í(î+X =t¡Ó˜‘.>ÚâqñK…Å.d­|^2Q `Æ,âñÓ%jtáXþu‹ñ F=®PÒzXw`q€’=þ,|^9»¡ð^‘—a¹ƒèW®±4)j-:•*שRËq¸±J Y‚Ú­Ò0 -8ž³´W,8&ÝGÕÚZD–£žËTYBrÁ1¬X>–S¼“f†oa‰UÊV¦JÌj})#Õ¹B_w“7îÇ×Tœ"dÖ2]Þ[€¢0ñÝžšfº¯ãßšD,ý©,DîÒC’pœDF7”²Lü»s“´ú‚¹X©ìëâÝ6•Ó’²óÁÐ,Ì®I® lU@Fåãm—õãc¿Ÿ¨õ§’Óyq÷ûxZ¥6ݸÄ{#ºÞ]ÚŽEY#™|£*ºG”ž¯D” SXrä¸.ÞGŽY°ç§/N¿Š–  oØ ³¾ø©ëVO±«K$)YaŒDø³|6XØÕC®>wa XTÔ¸ å ©«Ú ¿ј)DHŠYxÎ8Öhë3þìq[•æß²D'Gn›`±fY8•Y&våIÜíÇbI0­3?ÊKÙ6£´°ÜÄ ‘MªÌi]3+(ñàê,«BÛ¤‘AN®ð2ò‰Øö’Gf,@;rרN°X¬ž&Õ›Ô+Û°™‰=€ó u”¯ƒq–$ŽYâ®ð#F4[™ª oâ”Í*•E5•ÐçS@°`ݾø’²*ED ¬:Á ±3}ÿµ†r@夎BçwA“UŽFIbEüf¨=¹.ÇC%"⬵øÜœ5®h«^DšÇ6whÝyæXùS³üÄ®ìB×ÉᘻbÁ‰~Â×Á£ôßípÔ;Dv‚ŠªYU\¸S䌅Ÿš‘ýÃ~[oè_ªqøu¾[®K‹ù´p˜'ì¼VÃFWë¬e["¨ì1±\™«€cG©Ó¨³LéIQk3@i0!¤w—lŠ”«X:– ’ p[ro"ó€¯d£‚’8Q$+aVØ:­J‰Uìb»ô#eHt7&š'!¡yT}!VvÊmØpœ½—I鏸«`±|€PüDcµv2BxýíúLFñ³x@‚°'r8†Ü(_“ÁâëuކŒQã¤8õ–œq"U%«‡"m܈?—Ø*ט™›~ç¨ÒêTª¨éB)*–³ bÏ6~8eäOIUD²ŠSË’Éå¦|`K,J;Q¬!Tv£-*ªÄVF­ hJÉÅÎîÕé%jy5ÈL›G_h¨­ÉÈD#ýs·f8„£œ–šúräÍR¨t<ýZÖÒiȉ°TDN&HTn³„ïêK” æÍýľ¨Þ­ÒØ:o/j†¼!Ž X!¾’ ¡WN{«í á ˜qxÕ”î_Ó#©ÑZÒŸ† VR–$¥7,æx›C I]=H¦³ñÒ ±}‰6bIáûâ¹NŒ  <a~`A3 3[•e]ŠÍû³J1òo­FÊ»ŸYذ¥[šÎ#³Ç ‰á„†ew­Ö„„ŽEá5&zŽ~|C¶zÐ{‘ÓõïZÆS»cæÞ a’YHãŸe1<¤<°§‘²…~<¨ »ÌÛGi¢ 6 ÈUv1£¼á<’¼;‡¸Û’L²Nàm%õ:(¨ªzèTظ|SYÃ>Û5>ŸR¢½heY‰,[iç~øªtê·fEUŒ(U‰]Ò!\1ì÷/+W,¡¨;orÓ†«‘"×~rÛݦuI 2(¿ Hÿ¡©…r.F$*@‘ëZ5±ú£) °ÅYÂD~»MªöœA!G5´ Íf»#Öã*ÈLR´ÄoøÜ9THöˆ<¦@ @ ¸áÍ<5ܘdBbÈľ™i¦¢RBTÊ—v;Aàüœb¨ÔÖi•|¦âd0‹0–d0Å÷ÑŽªuk]{BÈôÆöSH·MºÝ«óú»¨øzÚW;é¾›Ô ên–þ{ýµ®c»€Õ3¹¼¶#Iå1óàu¬½,´zƒ­k·éT.¿{×ZMbô6ƒÑºÇÜ%=}“ëTz±Õ\ÃiÛÚŽ»ë "ÖÒy(:EC\ôo£˜œt}š4°×ý¹«eÑU£®›9Ï‘š³ô£­HÕÚ!Ò<.‰Ò[¨z¯Ô{}>ª3¹Ëw‡†—Lú•Õ+yI¯ÕIîÊ$‡¦öpÑHÞì‹W‚D¨œ$­ú»ÞF¡ÑwÓGjŽœi½ ¯°SÇô³YÃÔ>¢ãq:Ä6¢ÐØÎ¥èíaG]ÔkYÃjíšÆdëé;Ñ׿‚»i©d®ÚµVId ŸËd>6auªÔMUéY%’XD’llÆkM!I4Ö€ Ò­Ò劢žg±lS|°þªusHu û‡Ñ:¦Î´‡ÙM´OM"ÎueÓRû‚Çh~¥ikws1Z›'K+•ÒÖ2ØjUµ¤¥v2smI¤©5µ†ßUé¦sJ§n‰éÆ#ÚÍoÔÍ% zq^Ü:{KÔ§‘ë‰ÔZ{-Ïj›´5¬5­1O¨ØKýN©Z®¦­zåX0V'N沓Cƒ{9ï~¾†~‘e5ŽFæôoQ5±£«úÒ}¹Ò-ÓZKZÍÝw›Ê×[‘d1:ynÃk¨¶‡û{E×Éfª« ‹͵׸®£éìWu.“énÔ8Ž‘õw Òl\޳±‰ÈeåÔÑhp9jkËS—êìŸ ´ÌTâtí³’ïMnuÒFF˜¨^«ª‘¦¿C¨êbìÄZ8µ•*fÖ  •ƒ©’àÖäÈÇ/ÙGNµÆŒÐ}xËu?Du+Nu“«šï%¯zê2tßW¨Z«3£lP‚ÏOtŸK³9¬ŒÑB‹Fchß´uv[óÍzV{¦ŽôÛ¯¹+]7ÿO?ozÃÛeîŽÜöî›L{€×þà³Ú‹@dñ÷p#¬ýJê”:§x}=•Íê»Ù~¥ip4u«ÙûØì6#þâ§œ¥ù,uz—“¨ÞìuwI2ú“Mkî“&G9¦ý³j¯r·*h­Kk'µGOõf˜ÑÒõ.»óÅ7û“1›‡ yðéP©0×¹Óþ¹õ?¨sòé]ÑÍv1gOd(kŽ›õІ¢év¤Äg›:™­?r ³duf“×:gøJ—2XER Úèhê51ç “ häj¦•Wª¤”úT€E˹pà ŠÙ°ª•>kI Ô­ €âd0«˜l|ÒömÐ/u='è.£㢞íieféO\4\Øë½TèSûsÀä5ö•ê=˜±‚§—±®²y›øLFÅ;¯'û¿2n÷éá¥Èv¶ú7ì_Ü·Hµ°0zM&èþ™ÕZ+«={éí¼†õ·õ§ƒ¹¦5ÝšÕìfe¯sHë\%ÕËfð::íÌe-CŒÇX«…´“Ú»ÑNž{—ê»öé¡}Í?Då“Lõ¥ζÔÒúGY®oZWÐ9ž”]ê^&ºW›!³¬gXðú^íh ž´“eU¨Ö·-7®Ý?o^ã³ýp»FxðÝ4Èé|Ƈ‹WÑÎô¯ª45dÚÕ‹8Ø«tǪÚ:ã×ÕškUñ½bÆ?9&3Œ³”Å\ÃÙÇÀÒÅ2ÂOÈüJ4þ%pII¦’7Icþà§ß¿8¶¦o6ËPM6”ÇQs¤ê{8¬}iöÕÕ½UÓõuÄéžšØÈåýÄRÂGІΕùºìÑöÏÓ½n¾›Ê[É×­†„ë^o œûabÊØ†çññËÃbqg\ý½{miÕ¿F:CÖ?­õµÎšd± ¢5Kµ³þ«ä0xŒ z·=Ñtˬ{wô¶M&=ëÍ{¤ÚZýË?­‰ò ’åe®vkÞv Ôq=3Ïi X»Òº§3 ²Ö3H˜®²gôF4·Zµö†¢ÐRUÓºŸK`5ž—ʵ+,Ë.&]Q¨´ü"–ŽÎðõ;Ý>kΈèé:y¨õ;©tæoªšÃâL@t_P,ä´ÿOõž³ã^VËâ5N¼Áçt–B¶:zV š¾?5;Ë[% WÊtÕ·ýIGÃX  XpaÜX}XŒ5,Ær˜ŠaecS•;îlÅÛ‘¾ñýѾ Ô÷å¬úÕ©4F6 ™öaÓúËpÇHMÖ V½Äæ5¦#BKkª1±W/~Í|ïñ1v¨EÅÉÑE •×Ü¿µÍG§zƒ¦r=é\(ÕÓþÞsý<ÓýPöá¬4½WËeú­úé¸Î–õ«;OEu¦LÕZÂm{¬5y²šã-©u²Ô™øn\š<„¶:§½Í ¦õ¿¾;ÔÍ?•Ñ8ïfrå2vuKš¹Õ}¢t6›ÕZã=¥(ÁU\æ†Êk 1¤¥Ä¼¶šÕ­S„¯\=™Ý=At·¾Œ†¤ÂtöÝ­Ò~œÙÖ=Ð]`¿Žê¿^tïOêb.k¡õ‹@^Ò8[9˜à›SG¦mtž{7rt\–¡¡[!ÃÉì«O§.—ÁMR ª„nͰ¸pm¸Þ4ןMQ[@d 'I$&\»j–­úc‹î¡½~ê7úph¾ŽË£1Z“ÜQÐz“Gh3¤°:pdô†·Äæ5'ðð 4¾‘©C¯,¤ÐZ«•ëµ =Y%(¯R}Ç{÷žÓÞñú‹ÒM1“^ õ»Ü×W0Yþžär˜ñõÿÛ>¯³ÒÜßMõ4¾¡LFÏôû¨ØL¶HK–±‚ÏC§«ë];›¨–;i¥×U4çLçêf´±‰Ââq:FÆ­Ôb³5uµjtä¹b¾'=J(êeëÏ*ÅF­º‘üUµj¼ÔÓ‹‚jm/zºŽç¶ø:ßoÛ§QiëJ]MÒ½;×^ßîX®:“¦më4n¤©s=X«êùé6½Ò¶M8±T›Qdò74t7+[ÆØ´ešÉd‚é|lÂÒF\†õ’¢{¸[ÆÍ—Ìft¨Ò¤øÇQ$Qxh'}Ž#,ö¹ÕÉ=Äû“ê6oª=V膑սMÁj #ŒÒU:9›Ó}BÆÁÓ}'‚ÈjÜ¡Ô:cTjÜfO›Æ[¡b<^gK˳…«k‚ rj¯kÛ_¸,÷´½-ìOl·tŽªÃu›Ofmû¶¡˜Ð·úW'Lu=z‹ÿ(2ç£ê­¾¬gê"Q“J>œ­,¹F\‘ÔvhAØkÛÔxt4µì>hÚ}TÅëìO@³z#Qãuu\NŸÏâºùsª•´ø²SÐÉ>ŸL†Z† á³Ô•(؆¾Gh¹w§Ý\Êj~ kŽëÍ4Q´^œÀë!ŽÇê¨u~žÕzQX4"Õx,½ln.Æ:ž'P5lo‘†l®;-r³AjÅ„)är )£N²õ*¦t¨¨N£ SZ]øŒ*™¬Ú^­JhbR¤¤zJt^ €e‹÷ß*2þÌ}Íßé¹{¶0ºÇ)§ÿQ.©u» í݉¾œëIó~ã´þºÄjZÝLª1ºÿNØËéfµ‘Áºu?OÒ§KJKÊif»‘¹K!Ö~Ç}Ûfz×îæ‰ÒèÞ–ûÃ÷)×}%îÄù 14mõú¥•ë'Hº•jΜ¼”5쬺JXµÍ:J+ê<]\$§o®CÜ•u÷CŽöíwBjH0YLLW<™08«w$’2Ý9$æ+!Ö—t$‚’3XÉãªÙÕŸM$—I0VÀîNÒö’e†+V?Û¸.ŸõÉúöz{ªºcEûÛ÷g®èôNžAA™Ðh–!£zýÒI3ùèôîO[b^:xÝg™Ó·*âH¢óP¶ž£{ êŸ_µ¦¥ÖZÓ ™]9ÒopêÑ>§êΆZÍiŒ&¦éGD4·ž²ô¨=ZÖ5«—‡ÕDÌk]76RŸåóº§ O ‡ Õ%OéÆ˜÷ú³ª:—§t1]%ÄÜÓÝl×Ý‚¶ÜO1½LË_Ñ–Æœ³˜‡£3SšIsYò˜Í+Yå³6;…èlÌǸc½-÷S˜ê¾¸Ä`1:Md4æc_u§™¸tßV4îW«½1µ ,ëzq뎦tß'#7SDê|ŽŽ­Æj,>:V§SVébl­iä•\e:r„fj”-d€RçSfúfÏkŽg:æ’)`IvK'KL—£áçßaÝ ÷=Ò®·{²Ô^ä*I¨%Ô‘toKhαW› nµáúY¦òÚ®r£G@Ò°vŽS%‡×úTá±vîéœÎ.¼ËOgaÍU\\ø›˜×Õ÷ª.{iéǹ;]ÌØÅu«NôëWôãAéþ¢c5¥ÉàµÎËuIìæ.A§kWÃÛÓ™µnSVâ_ÈÖ­¦`zÓ^«alG)é%jÓ¥Jrƒ ]›õÄF±,­A$I%˜EM­‹àðÉ<Èî²l„© fyÀ§([hæ°€i©Ø¬{Òó•6ôÌu?é$ª¯^5ä$V œP´v$RQÿ r'zê÷0Å;B*pþñôEž¾t'¡”±¶ç¡î¢y^µhn¤6V½LJ4LvŒÊai-A”ÔRæ Åb`[é4®!…±^Å‹)S÷ûúÐ_¤6¨Å•÷½Ôe¸‹Z喙WA`r)¢z#™ë¥^¶ßÔŒuŒfFë;†ðø«B[׫fô®otœÂÀêy4ûÛúF’ì•@˜ Á}âF&œŽ`Ú˜J™†w݈/Ü}jñÉG´KJ£šð(ê8@Qâ ਆ¿Š`7•б*ådDgi„ÒË»\;KdDTżwäHȹYVlpî—V©8÷F5þrŽ#Tu'§k  Ó:ªóéêéŽÓù?Vœ >ØúÍ3Ò(nQÓ]'Ë_Ð`×™DêŸA4/W¡À/UýÃõ ¨xí“ÓšÍlâ´^´Äàõ&;#©qØéd·]ª´óK^Go´Ñ3 ÂOn»³/˜æV¦x]‹Ç?1Ý–´Ö箢¬kó+ŽM°DQ²qyy&Ï"µIˆ€ý½Ê­8É£‡[Œ";zÐz(Z>ë¬Ò(!˜¼jõp§!¾»âŸâjBÊÑJ˜Q äúC$ÜìNä™ÇÛ{êÕž¨ôSQé¬m3Õ΀{IëkèmOcúG§WúÖžï:y’Ètã6 …#ÁhN³t½òø–‚4Uôv{-&ÇbŒÇÃÓ}êçºÎ€t³ òhCÒÄÅj?~¾ãuV¬Ôµ6OzÅ×?y>îñ~×2ã'¢Y#Îk®ŽSÕÝGêkã‘äÓø-I'Jú‡;é÷šH ’šV¬eet.ÀÆ»X”¡vHÂß7Š´uãÚJŸ QÛ,¡DÎO ñF…db9(0š¨wæ³Ò¡PrЬFÿXÔGø2b â$ 5‹€]î󉎪°ÏE%eZ&Ú¬ÀÇ«roç2‹©÷úÒïy8þ’u'NuWNôFôwXiºØ[¶rXKÝMùšWZ¸*n²jÊ}ÕôqúïRnâdÎRæ~© e‡ ÖŒè¾¡è6Œ³§ó×2z.]=ïËÜV±Ìõ.nºgÜ$yìîµöÉÑç5íM¬©ÛÃ%¡õ=µçû[Vp#iΗÇoô'q¼¬ÌüäŽ>ü€¢ªˆÃÈîcpGÊ}å¡&õãSÀ7¸8ˆ,H––%ˆ8I†Êw®õRE’PQ»“cÐ÷-Æß= ²”+ø þ¬ÒÖîH&´€×’êŤ:š€'à î]˜>À=¶rpöË{?EtÏÀÍE©ëÁcUGg>Áûy¯“fÕ™‰eåÒ]+^®JÇBS6Ëc£ù9¼…Ô¶ÿ–²ì|YCl¥ÊJÛ®ê¢^mÉÙÓc Ÿ³ö’/ú ä_Î<¿÷ÙškÙžn!§y{û4‘œlHJ‡Ž¸1Gy×…Úѵ4pj(KF8¬j¼<Š¥kJ« 0 ]û„#ñ+~zòŸê?íèõ b•:tË HsbÌÎ×0×÷ÀªŠ5*)_ïSé2‘sØ?n-8K Å%&Y$~Õœ"¹Ý Õ'edþà #ÒãxÙÇÉäñ*·i¤M–_ÚöÁ9–±úâ& €²J=2õšIV@»‰¦šȪ²(•+$ðØ;w[–MbØ T±Œ,Æ]ŸJ’‰%™•CÄÜFÝÀÑø8«]ãÝ¢âÄ[„²½ä•Bt(‡’&.Ü>ÎÎçA:€pfå2ÇI½…Ä;†.-R±Vªš=ªÖäߥe0§ÆçnD#ÁÜ•Ø=<HeHå><<€unèýñ?ܼOÿDŸò7„A­ôÒ×€-íÒ¬²1¯+ SÛ‚Cú ¢9H€ B6vÿîÅ­tÄ.ûå“c#ÖíŦE’¸ÙÔªÛy«AFÝAwâŽ_0jðÖÁ@ü„•\@£nã¶:¤W¤)ñ¼»@'ïýÙ (d{YÝÂnc¬èâ6B`2J¥£ßì!fð‹7äFÝ[êѶ(B£9w!Éb¤râv%ú ØHÜ’|è r¸üœÄ™„UÅÕŒÅ<…ä’nÛ™$?PD’€Û™ö cËDŸEX5ž–‘J ÅrÒI5‰Y{nfÿ¥#—t™÷ŒIâ1)í%÷õ~z…uV%4ÖF” Q/¥ ¹–䱆óŠò•)zª!>¥*–ÝÉyæðvĪîÝ5ö #O’yDKlŽŒFH?e<¤U¥ç} ‘ „cÑ‚ !0×_ª·a†Æ1ôNè¬vUnÈØNãÀ/¨\^wøƒJÝ{_[6íð­~ªý‘öìæ¯"ÍmÙ¡"W1# dôH]a¥"€åàY#¾ÅÔJ«ˆ¤‘—gä>èëæU†äìbS•Ê¥(¨T`€’áÌ ¶`D‰fÄiU¤3ƒñRAÐÇPhÀæK½¶Ø”Y’!ZÁ ‘ZFg’&™@Ù‹+×AÎb@ò¨Cl–…=&8sŽÒHãäSG’Xb¿hÈë=…ú‰ÂÉzPŽˆb¹w->Òɵ¶š‘]×/ʱwxUGV™¸Hˆ°»Ûy¶ŸnS'`¤MrØŒ<”Y[•*Q ÙåwnbTÝkžK_œ‘aiËÛãÙ≨Q£Y9jú©,©F™Ó¤¹ƒZL#aÃÔ«Læ(Q,¢¢ ¶¦bþûpÑ.p-½µä$s»*¨Ü©ãçür#êXˆ*FÇÈs¨Ì­¨tšÉ°Ž[§šâVä™:ALqþ!$lêˆñÒ4M0+~@'_îÝ.¶2ÐA´sLä†Õ!gUmÄ£pB‘É–PÞ¡–¶¿ŒÍæ°_ÇÛ¯fy&î‘ ½»T.ÇÜ–=å€K ýq`¹VÇEÊ9*Uþ6¥RZS¡`‚’ÿ+C¹%ìw-{âYª”ÕH¤TAV¤Äe¡ÛÀ.#üÆÀ…%¸‘Í·$ú€õãmöñË}¼l}heZ4¡‘Ù\/ñöYÈNP…~ª~ÌÜö ä¶ò=q¢ÖÚ\9/Uw]$†ëÇ€#ÇÙY×€f?cãýjßÕšjŰǙ¬óMJxhi€EFp' 6ï.ü£QÜeâ»ú¡s ª…uÖ˜ÒYœosýñq©DÒÍGÈ!Á.aÙÛÚÏŽIž²à.²ºÄ­eERæ6ãR ²H³Ä¥¼4ÇšvŒLJD»“ùÆXñ9ÛrÀ±ßöR¾9Ÿòî;l=ºo•Ãá±+n –¬ß±;C0~ëˆhÔ­æ1d"€Â¨ìØxåzüÁoSæÕúM[ùš1$]€U‹ù—xØ…Qá‡ö–Ø©6ÄmêÜÝêÌÔRiÔe± $1p/?¦*ÊÕ¤)¡*ZREÇ÷üo.1×AF°Òÿ~/ܦQ$˜£]‰^‘Ïg¶è¬’ÀA’ÔfD‡i cBc滞;»«³¨]þʪ£sËÇù 0>€ÚÃ3ŠËj ;’Ç䢞Œ]å°rÒ;Ѽ“oU˜dwãSèÀlÇr‡û·LªæÌÓî/¶w`ü žM‡ÚF‰»®‘‚De¤¯“nbcC,… \Nà‹9Ü™$B‚К¹‚j$zÒÇPbÉï,Ï¿>:Ù¶VÃåךñøÙËÀòFGeÆï ~Icä@*ŸfÜl}@zLå0—¢<Ñ¢Ì<<%^ %*4£¶ ȧŒoR-ቕm†/iöî^Õv|~B¬j“X±Våx#‚ÛW•¥ì3ưY˜«‡Q²ÎÿŒŸª‚Þ;¦¹¼.#j,†Jµi~t})u- ˜+Ã\ÀKüA3È#y©æLVvT‡xÓ§Tdë'á¯WÄFR\±.Áœ€óÁáߺ´Îjо"JBTI ‚]Ì7Ü“ÉsO!CÈQ¸²ª²¨Øî¥\åWm·àxÜù!}c.ýBÓñ™O.îõŽrdH…Y¶å~~[-TANcÛ";-êv5v™X®r™PÓ#Êá¢rj¿nÀ@GˆÃŒœ¶Fã}Áô,Õñ÷u¦'VÍiª@)¤¶þDèÊÉf)4â13C ´Ù˜K+WÒÉЬ*©JB’M%€t$Åö{rp³U)”¢¢Bé–H À=Çàoƒû>ÀðxÐâÎ Ù¶Ûû™˜¯†@Ìvñë©äŒé|äÑ8.6ÊŠ´á‡Á‚RÅFà.v+ç^=_¥Ì®‰›Ær-q÷Ÿ‹‘T‡ÛûBqPªÄíÉÊòåõõÅÔzL^Ó9Š0eiÍ5¼S,pHÏue*Qðš2YHB›³¸ÀV$ç¥J°­LšKTC $ “ó}³ ÅÕ*R4‡­”Æ äþË3<µÒÖˆiydÆH•Îò|z*\Nßk%”*‹{p`»Á¹#)R@nmºòb¿}¼ðv¶AÈ亃¶ÇЇ§9Œ&#$y\­zödË䬪LñÒ§Í爂,)Í$0¯ÆB¥ÐžGÔõu^–AÜ9Ê©¨aÉ‚[y8mú-2±–û™šøÕ™ºU¿UA PRË ±”ìÎlÛrψeªSü: ZJ@ÒT1^CÄöà3r¬OÂ×#fÆ´ Ы<‹&´Ð’ ˆ€úÙžfî@@’¨>É$„¬ÞTò,›ž*T·!w`xï¾Å|oè™Èc,u’ŽüRbᵇ²÷7nÂÝÞ+ {« ÿ ˆc$ÅhîÃÑ,j(c üí0‘¢Øä’vÏf; 3(·ùFo²qúðfSÍR¨ªti¬è¦Ê¢A*Pe@f‚EƒØj)…f ª!/TL8fÈû8òFæ±™#Ó9“ý¡±ÌÇ”œJ„’=Éç‹ÁØò; Ý®Læ…´ÄH67­ž"3˜Ie‡q7W!Á%ÏÖ@¾«Ïà²ÝH3¦±<VвºwšÂI’Æ +@yYyvӔБG®nƒÏa±š~:™<½:×…Ù§dyO7Ža†F•‡9„ákLüM’X ½!Fª25­_$'I.ÜnD‘>͆Ré~%-*™¸gÔEÉ`ÑîIÁtK‘ÉGù¿Vm¾Çm¶û+ ÙˆöÐk2k/TqÎ5q.-’&àïníÉb¤váŤe`WÔî-]¦&íÏ㊲ðDî UqÊ@A(ŒÇÆMÊö¥#“r‘verXɵö;-^Üãiü&šÙ$‰aŠîÈÀp¯‚Vpãå³þJäBÃÕYJ5RjQRJ©*t›7oêØ{ð³)µ&¨Ÿû¨$jtÝ®KÛ~pwEâK1A°R j9HK€ürØ(ÿ£qË–æ)®})žÙ”ÆjWغÈÔd"8öc÷úy;DGuÈHÇ­…ÕzYÑPf(Ë$NB“‰û¢5?÷l»? ÑîôHõÕº£Mä4¾fµ,½9ìÏJ¼Ç—ˆI^ÅÊ“G2HŸ³b(ÜÇÛ]ïj©³Lv®*ɪ…|%ÿÜC’•ó$“mší±ïWKà¨k¦IHþ¤¹”–¿qo7|?ÓIYôÒ"ÈL£!’/¹ÚDs8LÌyAþþÉ1ØÇ¸ßiø È Â/.aÊ,ߤ?µ#c'#¸n?£ÌB ™Ác4üuïd §:l²Oáè¤ê €’à§ï±wÝæ1ÏfJUZ¤¤‡p@»l;H³€Ïu·¥Ú¿©ÑtË! ú‰KõŸK: ÝIÁçliP#ÈX“¥½Hé…Ì%ÜqáÆM ¸.¤ß¾,Ç/.?À5¨äõ^µ/³Þ¦¡KSXëIÎõ²ßQñ}SÕýIÖ],ѯIêLž'FÑéîœÂUéS»¢ñšOOhÜN7§êÂe·f:‘Íjcl»›è‘Æßn)sFAJ$nIŒ2ícqaÂLu“ò.ƒZ]ýg´]ÛÊÇ(V°¡È‘‰KˆÁ‘Züªd±›¥[sý?-X•ÕeLþ¥i Ä‚Á¹~0ôóué¥ ’X³¨‚I %Ü€ñcŠ—£½µæjæ:m¨ú•®t~¸³Ó÷êÅ(ðÚ[£:¤ú;9†ê†]kšÑÚR?álGFŒù6»fh\»ß‰2‘ËV¤ Ü­ìóOô÷¢½Oè~/^ꌦŸ×}PÀu —ÔÑÇ™ÏéM5¢ó]!±¤´$·­»O¨)éí7ÑÍ7¤=”çsT;9Öw· I-ÌT•I2 ¤eYUó7ãCöÈÒFÎjD6“,ŠáYº6””´îYN9JGb)¼ÆAä±Ã}¶†žòbÙy…+PÉeRÈr’e1ôúïÎ-üUu” š1}âm8¬Pö÷’×}G½Õ-?Õ]OÓ=a/·Ûý Ådt¾3{'‚»k¨ëÔŠšÎ5Ê«ÒË^®Èpr鋈0yLÓ=Ç6Ï®WIzÑãXu;Têmo;ªt~/E×Óý2鎚é^‹Çcªænæò‚ü:y"›Rj îEè×£—ÌÆeÓ´àÈi¬L²QÔY6 Çº–bæ6P¡;ÉÎ2D«SŸØÕå,ß”ñ€úóטÚEi¤f*Q¸¸AßuŒÔóCC|+GP,ôUí+3?à2åb¢PI$›«ÿ!ØÛp͇ºá?¬’ C`~'Åñ^ºYÑféO¶š{kÃkMHtã¡Z;¢ØN¨bêSÇê¨ÛEé Ú?®)Õ`ôég+ZÆC›þNt0÷øÅ)z“K´{£þÛ5î›×8®¤êÝQ¦u†[Nè쎎æ‚èî’镽Yo.ðUÎk^§dôÌpÏ©óvê'ÆŸüµ©59¢½^1êÕˆ¢‘ˆ!HQEÛW]”é BKMò g0Fs+ ³Û"O$ýÓZp6ž V4!e‘Bº€P*°WßÈŒýD[o[íÄ=gÎü)§[áTŠR”¹†m£x&lØ¿(jÕZé„&¢T¥zA$:C,Ń‘Îÿ1:›ìj.«érk+g[á²½}׸¾ `õf •*š›¤ÚïLtIô£{LÈyE—ƒø]3”lÞ?!Û­¬46¶ÕÚ5#SÈ.ÑmQþœz#¨ðõPu/Ö=EÔ˜ !¦úw¯Þ•ìeÎŽéžžiÜ>D×ÐØì~^¦2ÝjZ— šï!gPQÈKoY_ËžÂV´ ûYÚGE*b+䬮é|ÿá™·;‚¢¿€¤úÁ‰2NÎ9“¸92ÈX†ûH; ˆûn>ÄAUš ¥ê9jdŸ˜X’AÔÎï·8,œ­@–×év`=!€ Z§¶>5CìoPÝÔÐk-I«u&£ÎÞëÅ^¯kùmi Tõœº[¥ w§š†”lk®™Ô½JèÞêV¤£•»b“Óœrˆš+ö'Ô=!ODÇ£5¶›¶t×EôïJ26z¥ÐNõgù,V‹×ý[Ö¯œÆUã`ØëG «ŒT‡=ŒÀád!æ‹û„ñÆUŽÑ§_)¹àà©*7¤/Øî»óƒEبPT.ãËïç‹¡;v6_ ê¾Y Ùt¤ö+‹3NÒ>Ø´eêƪŽÄ§†.òAÝ¢Ã1º‰íûUuS£˜Îˆë\ƒœVR}#‰ê°ÁèÜn¯tf6ÒÛÔ=§§iÉ?Hâ5ÅxªÖ­6XçÅS…c†Xåc°ÃL{ÂtëYç³(§™éßO5N¯è_Q2=)ÅÁzîÿô7WåóÖõ†?3ÉåsxÌŽ¸Ädñú_TÚ¤WIé¥ÇÆÑãøúû±$`…u'ìè97?î?oÉÛ#È H,wØï·¥ÇR';²<|“ÄœXåÁ`!´œW`!±ã¶ü·¶¦z•PS,…”é RŠœ„Ù.îÏ$X·œSO$ªJ!TTTR"K¿kÝâ/‰›ý>rv³Ú¯7Ó_œÐQ^ê7Ouþ„ÓçGbòºs¦ÓiMIÔÍu–Ó˜ŒLÒF,éMc¯ú¹­5 iò!ƒMÁ•Ž®kckW« …éoB5ÞÖzçª}EÔ—zÕ}{K§-j*Ú;¢0šoBévk•´N™Óø©&…« ¾¡ÎäÝÔëV‘£I+¦ÿMHmÝwäÊ ¿Ýw B1;‡}Žçpß¶#ÒL0Žm'lß7F d ¿÷o¶êNÿçoUÓÎÒ¤½i¢à’¢‹ =æöü͋ɮ  UEÌ=) gI.¢] 8ãâÿO>™˜ú$YLŸ¹¤ëî'®ã®÷±÷ldëYÇëÊ7±zB–›þY4Ål$ÝÅÔöÕ^ïñg5{AKl¿“zeõí'ìw¨xý9¤úU­:§Õ= ÓK·ÔÛÓìFžÍjì…mS6·ÄiÝO®ëË&_ý§‡Ô–%vÑ-›V©Ð«9øõAoµqÖ~Q±_ʪ¶ìä$g]Éž{~”>HX³·"€Ç–“‰pIÙ’wØ‘äÀæhê öP P ‰Õêw-É<—ÂNR¦˜ªK7Ì”¨†f `;î>2`} ub¾7NtïRurÖK¢¨¶º…k§Øþ•iêy½e{{¨híW¬Œí•}%sRÛŠ=MG ÛÕxeÆØzõíNÁ ì"”/Ëhê %=u{ÝV¥÷5SªÉ¤0ßïŒf_/îòϺœ®–‹9 xò“Òþ;-é]»Ï|އ½j¤ÑM 5ßìð¯e“†üHXÁ^.y/Ž#Ç÷.áÔvò[ÿ+5ã`$ ŰØF ª‰’ ’ÈUlª¸ô†jƒrÉ.4€T¢É‡H%P îÑq„rÕTÄUPÖX êwµ¾¸øí‚ö§Õ=Õ-U­±ΘŇÕ]cÖý]f=¼h¼Æ¾ÄÉÔ-IkR[Åb:­f³jêÆ‹Ü–†—Í#!Žˆ$lUT'­JžÏú“Ö=?Íë­m¡©Ó¥çz‰CZczg§ôÏ[uÔRA©kéÍÔ>¡â`­=œPÁ Û´…‹9ŒvšÃÔÊÕt·vTû"ñr ëõ ·ÕÛb¤ŸxnÛìðv'ôÛR‹båf,à™ã+° ¿ îÀÈ'rÜTøßÒŒºPß ¸N ‚]ˆƒ¹ “½ñ/íjÿ¸Y€,”‹0Ë}æÑš#ÚQñAé.·×š» ªòݧž’¦¸Àô«£º¡ÖL¦wSLZÏuÃQᣪ™yg‚»_Ïbq‹n–²Ôm«µðnVTyÖ¯èïX²Ý@êòi;º‹AâúÍÒÌ*¤éØ©]Ö7êïN‘°ºVõ<f9pùlE­g#+Ée^¬ù“*ôm ¥½}PXl¥œ Êž'›*¶à‘'’ w'sÈÀ §;Hêwß‘ÜýU•‡ùR[em¼ì|Üÿä8Î!(Ŭ,J—H.ZoÏ rk*Öj•zt€– p\Ú_ó|¥é¶]¢z³¨:¹¨?Ú39nž`t$C£Ý:«ÓnŸµõ,ššþ³ÌS¤ÙÎj ÆZ8kaæµ[žŠ\Î'fzû]±µ?ôúÑÙÝíg¦=_«›ê¿O½«ô;Òm1£3Pä0¸mi«`ÓÚIeº“ªâÓ×ñ¶,åŸMi<]¸D°1xîçnU ¬‹ëí QD$- ·ßˆe#¾ܼ!oÛ(rmœh"!@PòàüŠù#‰~·Ø€6ó#ÒÊ)?‡ gR”]ÈpF£#µñÂU*RÅU%Q`Ìwh2C±–œ|)_ôâ—”eÀjÜæ:ÒœNú*éÊ™9ºPØž½t÷Ü'Lµ„Í+I©24ÖZ PVɸƒUéëIŠÈƒ]¤!b½†bp±ô» Ù¼¶’éG¸} ÖŒFPá±¹és”t±¬_²Ý=¢óö2QÏRÀÂàiu$g-Bö!Ï!¡hȱÄÃì²ÂФ¸;¸Ú&GSÄìX •Øò;möØÛÃR$/0—ÎèÙ—’óúž1V>IÜ(p<‚Àz‚+eA×ødj pFÄù€³ßÀÄÍ ähøëÀYÉo¬ndãæNµé6W%ŸöÿƒÒÝ<¯„ÐÝ;êju¯-w]=…Ó¹]^ôú;SB Ë•Zg³¹eÔrVŠ;‰+Á”ʶNÖ&&qâm±y!4SvÉ[½)vˆWÜE4Æ??°‚hËvù/«biÇçeÛpnîQ˜(?°HfûÉôâÂ8qTüo°  +?#»;Ü7€ ;y$yýê¥ÕUIkRhSlìá‚@ ã2ú`X UU+@ô–s$D³ËY›ŒSå¡vT[á£Y§îÞT"±Xe’+,¡™áQºXeî\‡…B€ña´pù¾RVË®`h#ÜVFÝÐ$¨ xòße$üGñ3‘ãÕµŽ*®NÛ»!ýò xª©ßÈeßbÀmȆ-¿éÞª²ª¬hÊ€6àú÷ãë±$êÓ×*8ÓEo&Mâ|þoŠÇHA,*Ôx-·øöÅ=þ;4VElUé$x¦žWzÒq†ìÛwC1ù%EóM= È—Í–;á/37f2“C$²,¯xá(ʤh8¼jŒb¹ ¬°x‹põÂrÂBÅù£mÅW›o°Ø…%ß}¼ ÷e ²Í(±\dŠ¢Ö3<{’[2HÜOݤÔÀ"<„ŒÀ9ëk&(¡‡/ØÌÜmöøaÒP T©°m)÷6½þžqS%ÇçXD¿Â_%“ºœRPTÄx¬½í»‘Åÿ[›)°íB®§Jþ<Ь‘á¯}„)!j- nC+$ìÊÓ;)¦6ãaFDº qêÚ•Y‚ %ܳö?µ Y‹ì›n£ÿ¤|“éèâ`€+ÏÃP²À؆!B³ ÖOü ÷ôÇ®Ux¢ˆ2±±û_yÄÿ„" ZÂ\9`ûÍ [­ÛVdõl–0ļˆ¹ð /“ÅIvÄ›"ž$øŠî ß았ŽLÅ‚³×’Ûî €)A!#n@;»·SPzhaÿÈšfo‰žŽ’&ªƒöÉlTgÄçù ¼nõ¡ÂHŸ¹´ 2ÊB µ”ŒK ¦AØDi8újnd´l1LLµÙc0MrGiØT’"ÀËiìøÐò °ÛVÙ}[õ\ê9ñJx$ùR„þÈ;mþU¿ñûõƒ¹’¤€àÄ‘°!¼ŽÇb7`¬Àž;îÿÇWÿÚD€ìTd4Þß{ˆ‡ðt?˜I!™“ s¸3rýñR_œÜ0Åd¸È÷ ·aûÌÕO$Æ@‰¬ÕR¢þÛBÈЉõÉæª5GŽQj²žë(fcÛ]À`&µeaÝ’Aټ˫Žj£”~ã†ÜùQËnEC2ù*IU1RÃÈz«Ú‚(Fs,$K ã!xŽñU”ÆÊ¦mÖ6*´j¢Â"›+ðZ™e>¶d³õ3KRV„§JR]*T’tÈ7±“7‘d ¤“©DH Iv¹#éˆÜ 4¢E’SÎ:Ýâ­ÜIÇ{M+F i*+qÄ;T‹Çnyíö9ëß~ë¹Ù}ßê>-ÀDÿk´7áìPù$ÌÄ÷Ïåý1ôC@~J²¬ŒR•BŽÆÆ¤`Ùd;65É5Ò6)|™Ê©û+þÿ÷ìÑñûºÏ£q ûǬª…À“‡ @*  ‡¡ý|ÆP7þë›;°c÷lkèãJ«±õ|1mBÖ‘¼Ã†‚øú9ŹĨY¿[FÅvÿ»Âû•>~Ãeª·–,Ì8È¡òOàŽ;$ÿà^Øø,bIbÛ‡bõþCHüçÒ“È)`vˆÜ°í¸$Ž<€>?ú;ƒ± ó…Dø;}?¶ –Q¸uZâGisù;aH, /ÈSà?^[·“ÿþ|xõ™ø·$.í¶ûí»±ß÷¸ÿÉ =,ñ!v'Îü¶o¹ÿ‚ÿ¢»y'`ŸJ  Ÿ2m°Ø·'ö ƒûØõü“éFå‡ß¾0œ%ƒ›ÅÉxãÛóç45vo|ê(Â3Áú‹íø+ Â{CÚÇH#VIVíÁÛ6«J‘¤qE@)«6„DÒs’4•\¼l‚hù 8¶y—lŒ¡M±½5 ¾þ«‡-ÿ®?õŽUVSÔoNÛ;oÄ{[é yWÍeÆíNœ`ØYÄ–îˆi^G{?;LÛÈÍÜ^Û’e£=Ð „Fxãóv8»ukǼµ]彡i6¾e;†2E¸ú_µ¹¨ãjþ–.Ú6››€~äh8ÅRX•TKýëìU pR)¹1ÞGTq"ˆ3I'p³Ù Š9™™ÉîdsÿZR®rà<µ8@óóáŸÇ „£÷D¤B±”¦É4ÂFnèßá<¢FÎ*=\Ž"9,JóKicàR³(½´ñ$»²ˆ¤î$–ŠàíI–G/ñ€Sh.Ü3Þ^\ÅŸ4}&K¾Ä7ïleŒjmÁ i³ÛpYë(ãQºƒRYjŽí@*ÃH‘ñfqõ+,²31™Y¥beHÞ@¯uTµÁgièoEÙ½*AÄJö6í"ˆCs’u‘âPQ¥š=ùãX«ç¢å:s¯ÝW¶ã¶²CÊHdˆÅ\DÂËÈEãZ «–­I6%Õå“™’T’—*Ù2&ׂ{Æøf.°%ÃK™—ŸyTÈò¨vFV@Udc)x”^B7¶"ú˜¹üG‡v`ÖFÁ¶È” öB·vXa,Ç1Ù+܆ä°ddt™lí”­v3ªÀ,`ÈñˆáDŒò£,¥@Çv§=ºÖ?©–E®Á}9÷û6ΤL¤VYËJë» J©†[KYäÌÎÕ'¦»S„ßPDõÀÝíþ#¶˜¼»6å¦×c ÑÇÊÎÞ1¸HBwÂv*ÊJ½ªìcƒ&÷ î$ŒËèÊ)ò9YÙT‚’}ùJ8€d–e;7q\g"úÄG¬äTÂ$,"„$¨ÁPTh~I;ÁÌ4xÏh ¨ŒÇdªýVQqnRm†Ñ>ò©p„K¹µ'8‰|Ò'`}0P*(¤.H“"ðHbbc‡òaϾ6i6‹‚b)"H±aÅ –9I¾ÞÆJ³€"Årzw‰-úÁ(À²ÿa.FÐȰ¼}ßÈ$]Ö^Ó?&‘95gòÀ 6’ü»K¿6$ýÖxÖs,ól×…„SdÇ<[R”E5Q(iª»É4R¯Žg{ñ"ŠÖ˜’ Ñ:TŶ«;$±gµÉ¢¤ó`2ò_¯&,\H lcS©ÑE:u 2Õ$8iS9úÎ#O§ÔRêSü¢ ‹A vó¿½bVgîFÑ$sð*É´q9‰Ë#À«ÁQ«ÛÆîÉGfÊÆ9FàØU—7ÊKÄ7ÚFE ‚F•7? ª¶n¸åU™Á&Ðÿ²´²¤¦<-HûiÜòÚR$bÓ*$HT1„Ü4eY½ :k§ñYjùEÉ㡘E%f„ˆå‚ÄO 2NÆZ“Ç"ÙN&´a>â]‚ø&¹fGT¦ªj¨)¨ zAþ¦’û¼öÛü DTB>"T¥»A†f“{˜p8ß$ŠVBËÀL‘'úêË%f èÊ;M±¨ÄpªÇ±ÁôŽì¡¢ ±´L¬ÎÊe@©ÜežI&UÕ¯„Q4¡ZÜWZ·ÇO…+:Úïö6•?fÀSyгM,[Ì¥e<^ÃGÚ™O)«ÐÈàJb2(p/× >75§jâ±ÐWIåCr´vlN'‰%©I<=Ù¤Bµ–h#²Ž¶&¥Ú¼¿ÄŸMCªÑª´ RSé%Én±mìpõz}Zi5 õ|°7r”Í÷ >ö¶ $Äï(^Ü…äíHƒ”rFGÒXãå̪Û£½tR-DÌå€w¹+–íqw! +,{8,%Š£;/žÝ–PÙÉÇ«<Ú!¢t‹ TñŽ8Ö3=Í‚Â9FE§ ‘1€1Ùy­ý¥¡¡roá+ÄÐÕµ2ïñæ#gäÇäsJ†Ž` °žW*DY¢JRšJ’›µÉHh˜æ 0ݧü2ªR­䩬˜£ÏåŠÇ,Šc®ñÆTYxùG<#/!¬>lqrÊNE$&6Ý+I•°²@‰hqUYÉП°ƒ%2 ì:¾1‚ˆÁb¦­Óø~¥ÀRÇciÒ«h× „Ùt’®FŒ’ÂÖÔäà˜IM•[rFÐÃi˜¨ºF”à0”eäXr^v "ñ+ŽØ³*l²s ˆ¯ ÕꔩS¦¿‚£ñRHL8$ùgaôŠ25ª)tƒ D–åÀ¦æø«N[‚šÄ«è줇G­†ìïøû–İ&R›NÊìÏ"BòNé#•c,΋Ä:NÙÆ1•‰£±‹ÞN ¶71¡ô¥lVFÒ`èwjÕ’ÜRصj4¯4Q0Iž•!„ñÝetˆ)¼v’xËéΜÂfñvfÊâ–Äõ®`±ÞÈÅ$[U¨ýÕøÖa•iù-tgÄL'­ÉPÑJ‰¢ªÂšÙ JL‡:‹8Ã]·–iTÕu%Ö’ H, 3µþ€ÈÛó»•Ts"!'ÜJ ¼¨~1;§ØS…ÂÅ5`û5¥;´\*4Šk‡ûf±,2¡?sjNO]ÍÂäÚ%|m¦ S ˜h"Uaj!!QâI®TmÏ‚Ø^.ÛÉ"(hä™eWsÌŒ5FžÄÑÖØZhÖ¯NÛãÞx;—,wÚi{S™U§{–ª²(¯°E%Ae¥¿ˆ}5>§N¢Ž”TJ‰$‰) ,–˜nÑ…S#V’]J)I`ÂGŸÞø1“·4#%f~*g4²#@Omw™GÆ™xãK»9†U_NHij)GNã2³0vv]âæªxض"ž) ”z´k tÇüp!í*ÙÈ®ßí¿y ì–™kIø,=˜#¸š‡Fiªx,­ªøX"³N‹ÜO‘•]îü¬Kì’M^ärG?xEiêÔT´¤SX*!.à±,$ËØZÜbÓÓ«j+I;ÛÄö ï÷®ˆê³œ*ÇbÎC8’¼h%*¡lqѼ§È0eJÆà¥ç#ªW’cg”<¨†.Q«I¨šf"K¬Dø‹ ãë(®¡ËÓ½%„Í`,^Éâ…»+“¿Yžy®‡jÒÖ¨ÒÂñÅ4P³H²oeÊ‘@¶§îA4)âM£ÒT“ø4yÂGG¹”u3¤IV2É-ã t‰U?|F¬È¥T«Ôê´QTÔ…• [KypZwÄÓëU@¨’–P üÍàDnyÅ`ïdÀ<…†R%„´ÍSƒwØ1q–ù µæ  ˆ~QqFîóYAtv„,N–8Í €´fÿþÎü 66ö’2 ù|=}ŒÂGQ ¢ã Ó†Äï0†Ó³J²ØìbÉ YŽÉ—jýÑ]›Ñ5´‘v/&³;•[¹(â"eÒD[ái#,Õë€!«;›#¯1iKÔêT©ŠdÓ_­:€bHcÜ„³ÃYÛ K#UjX H(PAÜ—"bÏ6vÅb¿#‹(XR#v1êóv³XM/.áþ VH(Òh¼\.ƒÝr)õ5 ’”,2JŸ–gcSC¿µ°ªd*ÓÒT¤J ï°yãûsµäˆÔŽ©"lUR K2 r–í2‚3½šöB­Â)HxøÙ;>Ñò‘b“vgTSÚ•#±ÉÉRrUB1‡Å'Ç,êÒ´–qtŽR¨¸(WîAç{"ŹŽ$qx™L¨ÁX»÷l#fycúzêݤèiÌ­ÊX˜ ¹ lzR˜My$F­j½zˆ‘ÉbE–H’vеy”×3˜Õ¡HVPbŽ«–ZÒMcR’}"u¡œ“iwyüæ¾T!KÖ˜žÿ!kù>Å{ùæXXHbÜ/ Ý7â˜Ç“¸ÅQdE kLãââ‡ô¶ÉyQ‘g¨p“‘3¤),\¹E0KìfXeŠ!^Ay[ŽqV„r㣠4½Œ·Ù¤î#1m“}„‰ö™KnÒ$¶1—#×äJYM„’4ñ%Áyäž$þF w6$12Ö ·cî#œ4Wh·c¶É`2»<Eæ½ÞhXYH¥›¶Ö$ûX66šŠ|)[evÕ‹„*ÒˆÜÈÑ™Ç 4°Io -cã¾ÓÑ€|D…Z2ö£–0¨¢ûFa;8’Zýé0;REjA=¨£-ñ-´m AÏê$t¨T@è‘¡X•Q:ÆQIà0iã¯%—áA‹~ !Ì2Óp%‹7{;°Ø=†Ø˜— îv‘>'öØËp`…LÆ2Ê#RÍ)P ìVaÅ]ÝwHoîe˧ôªþ¼¿clÎP ŠÇe‘'OŠ8nUB·â×àcÂØ;e]á¹·¥$å¢ÚFmä ËÝSÆÈ'ºËˆ~·Üƒ_·:çÇ¥"R`J–HÄj\BUV8‘çq2ã¬Ïº¦²µ†œMŽFÔ[K–ófÒ\þ˜˜ `æIÛh;†¿ßÆ­+¢÷/uø©&v³0CZYõ"÷¸±ñ·£×LžÁÉç¹ü‘$,A”²ƒ /LP uâí÷,=þ9Wycœ´’ü~ÀYÏ(ãh xe "I:¢”ƒ ÀÑ­s2‹‘ 'Ž™@¯§{|]ϲ8ª ¼©• dk Šûî–ÂÊ$å!d‰ú§ÿJ]Hrö ?­ç¶6ôæøà¹'J™<L~dwŒnú¨î¡¸à»…%EØÀí Á©*¸åCÇ`"S±%À~‹Éàɉn,‘›fß`JVŸ.Û±.Ññc»m׉gnD°fU Š· càZÈ›˜Ø>ý à+1r¤ª”r\¸ØDÄ`—$WQÿ,´öØß“°6hý[ßë„–…\ñbÀÉà²7=‡‚¥xÆÃôì€/FãÓÊÉ6ë·D)b¢5R92ù,Áùlò‡vÝHòWZ@¦2J°UU ö êêû;Û|2¶Û)Ù‡¥$+¾ÁÈ>B/ÐÀäy²ïÈ)-ãeu]½"Mî[¿yʼn -?çÆÜvÂø¡üžHU! ly7ÙXo¹Rüÿo¬3EÍw‘ %K¸ XŽ{äÀc¶Ä ®˜‡l+ÊKÜP¥Cî¤ìJ·UŽÊBëÿhòôÊ×}åvg$QO6r¬+x_²…UàIe G2¨‚Hs±,`Åaúòf>‹0O¨c°ŸžDï°Û cØ‚Ëmφ?y~݆çöYvý¸ôô0Ú2\¹;… –Ü·ˆ×ŸØ €7P± ±Ä•Ø)-"îÅÃ!ðNþ©™väžä'²©ÙT¯$nÛ²ì£s³xú OÇ!!(Ÿ»oÛyqÏÿH·!õQȸ”TáÃm´q»ð°••7Ü}Àä姇ØÅ€‹2ŽáU·ôêº #}Œ\f Çb»lYœ)M‘€ 0ãפ¢8•îöTŽGvß#åGÈͲ³oÏrH î=:ÕI – ~¸§”k÷ «ÌÆ£rѶw!yzgMãm§b?OØÂÛaý°Ð@YÃöƒíåÇ%,|)VV+ÈöÙTù#Çì°g‰\´Œ|Ä,{¡ ¥³”$›e6ä–]½tHcX»®& %J ø–$’Gp øWþïMˆË(,7pfâ7 YJ©É†Ý€*7‘v)±õ·#VÁŸéûúØfüofuD-TÙs ÃþÅ` (âT«(;Ƹ±{šðæû¨hÙ÷vn;nW¶£~,?ñã÷±áÈ«ÅáÜ,ªÎʬT21>B¨a¶ã%ð£bͱÙAÎQ´Š¬,œZ@Éä¿ìíäÉ!Õ¼lÄú}aÞÂ|íž³„ ú´qØóôÃPÏ®ñX1V ê;ƒƒêE`¥†ÊO»zq$Ž]ŠrHòØ1 úW#Êžßé#ÎçÓâ°$LÁ•üÙb¡¶^1º†äÉã~ ìËþ4d£ô[È'm‹¥câìä4{)R¯» ¾Û’¤¬|r)ò¡OØzlÖŠO¬l£mÅ€-Ê5û s°X<·ñéiWŸÑ !%\ *W’¼nT“ö B‡fRÁ‰µ}LOôÎÍ<÷Üb m\ó4~¼[dŠ?°;ÊÇì˾߽ÓnCê­þí¸âßϬï `®ÝÉìGxÁd'c²‘Ç`~DØÙFD ¼‚0ÜÙlHl6ä e. ùÝ@ ì<·¦â†Q RÒ8V2¿€]¸£ã¸ÛˆnLH$û`¢`˜ÝËD\þ÷äáÁ»xúî1”‘[˜‘‰ °*w ¬ÄmýÊ<ÏÙwÿöP²ÆåŸžÊAÙìö¨ìNß¡Äòv?¯^X QwV`X/…Æî î¾8ñ-Å|¶Ê‡ÖI ™NîG"–m£ã±!þO7?Þ»ýŒÝ.áLímúGg<,a§ÂòBå€ p”«3¡v‘ Å¿A·O}Ÿ`JJ¯bgåûR6ðNÃ}Û}›Ï‚£‘ÖJ¥tvŠ%°*à)Œ2;7$ ¹C€,Ìì­¦ˆ!Q±fã°BT¸˜Êî®IRT¹äÊ ¢1Ä(Š” Ýç¾Þ÷ÂÆâc³°IÄw7ÛuÜ9 ùûl£ÂîǤwQqÁ*J©‘‰V™‘ÈÁ M¸  QGpmÈ ÅÕ‰@“Ëeäm¿ƒ¿öù!F ŠÀq2rs·&äìC3Hû¨<ÈG@ä¬GŽøb[‰‹÷óöß2F›r ÛÀ*I`9+o¸eÿ$0âÿdzqŠ( y¿ »©ú·Ü'ˆ È·R7â HA?ö I<Øøb+ËcþBø³5v—È*A  €¤r%X°çb ± 9žޣ‡vß·Ö>ømæ@Áˆ* ì²lÅì HÁ$†BFÁƒå™%A/Å·¸;¶ëþ_'ülNÇþÁéfâ3(c21ui‚üÂò^YÉ_Ò†v]”±ßˆe*§qàwãíôÙhÃÆ‘þF}f ¶ä•æÌ ¬@”ßqÅöI8³ë×Ë ”dV¸b›`ˆNÀöQ±BϤüSɼ©WØ€ )f` ù ö<úWuå¿§žÖiýß ’lÞiƒ¶=‹!Ií™B³‰ûî;†Ù÷mØrûWìj¦ zßÏæH;ÜvA1BUYŠØ†Äĺ¬R«ñÈ—iÌhOy7µÝw,ÅVR†ÜOãó²,Ä•bOÀnjÞ¢®F{.²Hó0Ê»ðyjÚ²ÓħµŒ­=˜â#·iMQ€´âÔ èÎ+TQ º¾ÀÁïm‡Ñ„õ0è¦ÆææÑ'ÝÛo8â+‚óDcDÆ›¡«#™#˜ÚH‘fæ[Õe–xƒe„ʬ¨ÞÀÜ7Q}ÿ+BÇî÷:­Ü"FYŽ™ÇwCN¿ŽÈýÌõ<fe$“P¼²·8~2FÍ,î‹ÈQç6ä~MU¦‘¡ƒ&T]šhß pr2=‚$#¨^þ‘'-"û½Ô-f=™;r6œÇbªÎ¤Hõ"EJçëýþ}?ú€º2»zÈ»4$‹E·ŒWÑÁ×]Œ”$m$@ýž/£Ê@`§¶Tù>vrïp@n|·)?¿Jq'cÁ†Ãë¹*6ÿ¹Jv;ä’?Dïë73°ý~ËnbÃÿ ùâ6nªÄ;ùõŽ\ vU$~Éì¡”ìvÜ’v‰’wð=s˜5þxí·ïû­‡;ýw@b7>ÝŽà“±;r¿ò<$F7#fxðÇò7,ÇÉ;o·øþâ>Þ”UFÁ¶RûÛ1wðFÃrNÛ~öÿ´<øõï¿"L‹±`<í¶ûìY_øòÄîÜQacâ–„“—¾¯õ„Z‘õ  °5µîD_ÚÏIL²ÁQß³rD?=’‚|¢#Ó†níh•G~鵇P±}Zöˤt=.«êv²·Õsª4gGõOM´v¡Ô5tÖ€Èfp6ß%Õ<ö”ÄGC”‚<œ4¥Ôµ¦G‹³r¾BFX‰/Co{?ê&’3·.¦{~ž%gU«Á=ªtiMV,Ö;©<ö™E\Pt»›"ã5ƒ±¦´îC;‚Ô–ðøÛÚMG•‡Mf§©BÆ_OE¨i¾?7üMé£9 ‰œÆÉ- ‚מ¼Z²œVU(üOs¢ºý&•4(£Jœ¨pæFí=‡~[7XRê ¨BT4é À–$m¹ï»‡Å$Ñu5§Uúõ®:G©º™Ö%è÷B:¬0½1Äk n;ª9½MÖi׃­u¿Su戓!kR¦“ÿ‡gDcñÚG,zzòå3“d*ê»Wô‹Ð tW¬ýdê6­ÑºR}EÖnºâ±0uÇIUÔ½µíßDgú½C¥¾á5÷J´[òGªúǦý7‘uÖŠÓlÖ$hÜãé\´¹)ﮚ«I«J>‰u¡=êý¬VGª=.Ðzöö†s€Êj½;ƒËä1X]GU*ç°Œ®J“ÍŽÁça‚­køÀõðÕ>$uµ%<„PÀ}M0ZFéû:}ôöŽÓ¸yt–•­¡´ªá°8Ì\ZgEP(ji\}zóa´•…iz+WW%†*ìÜ™]?4IH®R‡}iQÖ°BX`‰wåÄâHÏÐHsKQ NÂÎAînò8vä_OzÁî/YklØÿÔ¾½ƒUûM÷¯u^“éžKÛ¦Öpj=î¿Dôó ¨:‰¨õÍí¢$›Oé{¹ -”›¦Ìƽ̄wð•òtÒMC9C-×n´t¯Ý梯žËjöïÒŸl¾Ò5?Yúq®qš:Ö¸éáëçT=Ö`57[sÙ= KrÿIäèö‹ÅõWK`³™NCÒŒ–¶ë$9Eÿ‡-gQ]=eíkÛ~¾—uÏC:[ªeÓ£3SO>Cé|ÕŒz«%[PÕĽªÍÍäêVÈ]5’,uÙ+'òÍݔ˴‡FúQ¡`µŽéö‚Ò´ìhìN…±Ncpõmè6oYfp:JÊS£ ÿ³qÚƒ¨ë+ŠÃËqc³z¿U4•jÒÔVđӳiúƒ`BÊ”LÒÎÄ<–goÊÏeÔÏHiIкpX8sö8ø­”÷Ÿ×ÊþÒ}ê}7­:‘—êFSÛÝ7Z5¾öýÔ.½Y×T«š”4ΛÖÔúSÒíyN´~¸š¶­Ëj^ çÏNk\ÃRÂÁ§u²^…m6´÷}é׸McÔzùë}Löɬ=¨h­gÒà(bgÕ“«™MÕνèú:%N“_ù½Né_Jõ†›“DæóŽ^G¤,ã!€Ø¹^ßÐ}ÑÞ–ôú+t4Ѻ.ÜKZ¥¦ôÎ' ½=¥0i¦ð˜)Я^»ã08cÂÖÁH’bq˜¨Ö¦”ÁЏLÆ€Îäµ&Êâ« ,•2Ú[Per¹‘¤±[[·®W2Õi¤teôüú¥9¶Y#P:ŠRÌyô’ñ°# 9ü¨ƒ– Ò@”  EÝ®—>ÝzŸî³QéŠé~§gºÝÕ¾¢R×?êe¡ú­Û¼>Û0WõWÛ‡»ê]"Ò™»W:¿{Ji:zw …¯kØí?zLærŽV¥Ô9[f¿_ë‰$šWNŒÞ;_ã³O­c#Šê=Ýw]áîÉÌÁKU\éµü‡O­eê–¬úS/“ÁK$wrÉÌfOÛG·ÍUGKPtc¦ÙLn'=¯µ^6½­/…ícµU3諸›œ b¦òC’×z²GÍꬩŽAy‰ËsÈ,ú&i]¥ô.¥tv¦´Î³UÆéüV91øÌURÄ´ñ”’§“ܳŒ…9^Ü€¢ž´tì®c/QJ­PTœ¹r—¼~Ûó¹ªY„$RAApTÌ‘´¸hÙáíÜôÕãÚ‚¨_’JƶèÓÉÞi!¬’ö£šäi$ØËÒ”¬²R²ÐúZ´ý¢9‰Ù4h³wã;ËÆ6ã4JÈÒcbf¥ñåÁ ^·a$ŠG1,…JåY­¸J‘ˆåpÊ÷– ñÓºÉðÞ¡z–²QD== ˆDNÂÂd}ÎÂÀ\$ Èì–~’#Šjx߯7r­µ5Ùý]`Êa¨1ù¡ rï7îæÒG —]ȳXä~~cÍ®¢¡ªÓ™ÒR¦¥W ß^jRÁwu`[v‹ìêH2Ø<[tn_`$‡Ô9©$ðBé"©;°(ʬ…7=­ÒK µTx«xZ+«21Ķw¯ÙÅ6ûF¨ÅTƒnƒ—§N­Òj6þZÜhc]ªÝàÍbü(§°é(·S^5,l”nÛ³ž#‰"©Y"QëRHg7±›45i%ˆsL ìÅË—7ík`qÒ¦Æp…•u%K"Žàž^ãHŽX&-æÔªDSJ]êŽÉ hŽ7q²ªä#n£bXo#lçrU»j͸6çcè1Ó¬¶g2ù ÐSYû-ÚY^P¹:ØŽ)d±] «H#Z[ s‡“ŸZèþ'|µn1¨î6Èž2s)$tLÁÐP+ʪÌèÎŠŠ®@£Pui;% ´K,CrÕåV‘E”´¬Á . Ëóf¡°;ê´lN´bDeŸ%´Ì=°¨tÝ*ËÌ ä•R> ’.ìKòÆ2É ,YŠ—äѦü㙼žJᇒ'Ðs¨Ù\.Tá_r½³BÖN;O^fxž?ãı³NõëKGÝi£Ÿ˜’¼rثܱZ.$´Õº@Ö_1YURœNw=¤^ÇÞH¶q9߀o®û/ÝüzaUYLªE*„ˆà$¸õ†i“ˆÒZQ˜®JдW¤ìÄØ‘»løìXy»2….¿ŠNºë$œö`¡W íÈ®Õö^áƒ]JžQŸÒÅVY8Êâ5T‚ÙÒý9l¦PˆHäÁX©æÿ»4 Ç5Ewù7 ;•˜¥ŽDDªe.Gôf µò›HÍBìQäêIܧ0`kÙ²Œd‰»*ÕÂ*Ì, ÄP i$a×›.t& ª—£P´“é;¹ Ì~ÅÆ¢~ ¨}+¥ÉdÀûæØ‡ô—í…¿å‚”¥I7åpå€`ÜÚ^ïxI F,›"Š|‰@ #o°ç¾Å8ªÿŽd€b}G&ÜýËÐô×/§ñx»µ²µ¬XÈ¡Dré<ŠUã†F• Ç4,´P²µ¢H¨NÆÜ.\„un’ãÍ35Â4}ÐZ;D˜ÚNÙ`#aŶ#¯ýê‹öõ~lUVf¢“J£ ÜÞyá°ÙE£àSÔ´$µ‰iÞàÿÎøë… ªô²ƒ$g½Y¶Še o IU¶Ú¬…ã’寬È뎬Œ÷yWÝyŽ%•J‘+1 ÌÅ€bþv´›òÙ‰;–ôÖù,MÍSƒ·˜-AJxcºânȯb;)†V_”°Ö+bÔ3:%j©5èÑìC°ÕšHc•«±H¶&ØÌ€Á´]á§AܯÊ4kJ ÖYUIYæÍ «RY!$‘¤ÁÔ`ßþ0ÅYz”Ålí •&äGogýy³^qY&GuãJÁ$Nç.ÓÕ[Œdïÿ|»Æ–Sûô>é*¿ð·¸«ñ7Õök3H€IJ¤q…¬ò¸€É¡°‘ÿSU«Ø–?˜“³Ì²š—MZÅd¡¯—¥9–œÐÆ’;´.ò©DVú²´K&É+!G&Ë)ÏéÎcOaðד'qin¢M$µJjõÓ$$‚X’c÷¾à`ØTŸúŒÊ7'ñ‚Y•C±$Y rÙNçb9HXþ¨W“Mf„"RÍÛ}vì4¬ˆ¬—ú°ú·–o6¬Ò¨f€AǸÒI"*3¿æò*ì24W¹ø’¨ùßÈOQ}U©tÕ¬b­L­æŸtGÆY’Q*H¦»§6MÁdU¤R$®ÌŠ)"¡«KùUZIp@gM¢-ÉßÚÊ•Ðh’š‰$ ‚ Ðx;ZøçtµÉÓV9¹‘S5}A X–0Rî;Î#I «8Fÿ"²•JÀ1$‘¼« J²²³HàÌó`¤íË_ÑCïèMÓ|þ+‚šü•JVß/`¥y\¥†jW’·q‚¢»Íiž/Žwø©»=ƒaãš®´Òs,;D÷#YÇ,TA+4p¿qURHe• 1J ¢WbävüÍ¿‰­üª…?ÒBL‚G`Á·Þâ1^VºE¤8KP'ÏÛÝDdn¦àÁîñyñ&‘âhÄ\3׆0ïÑïò>kAÁÈÓ"×èÊ{¼ƒ°ŠÑ€8íå0(s'&nk¾ßf<–/@|¶W7P±ÙhíÑøuíb¤»?_ ý»¥KÉe«n£ÂØ™6¹n)#R„²ºÏJþV\í |’Ç嬮‚¨G“îʨŽE’Ý–t;ÒkÌ5ÙšU4eÒ¢Ô´ÂO¥Ô]Ú nZ÷lG/U ©\‰H5Ä#—ÛrvvœgX’4Ögm÷ý÷Y#Ù{±-aÙÒ»Çà¬Î’$[0ØpznÈtºíÆVýÅR+ˆOîÉâ]æ$“ϾêrMÕd_Mê}Q¦íà34êeñÓÛxRV«CjFžÑŽxëG^}¢žf„s0¸ ¼ªÃÏ@ê,#LÁ_#•ÇãŒsÞ´b³`B« I¬í,ÐÂJ¼¤F&vwÏb`‘‚É¥Wð+OÃ^¯Œ›¤‡ p<ƒx ªéVi$TH™¸`ê‰>ݧˆÁ}^"Ydò7eà­lÌT‡ ôÑÍ!MšU‚Všiâ,³[¯ikWq4é l†_)ޱÔ~RÕ•y«+Ý ÂÚ­S¡Þia‡r #ÎüˆQQï:ó1ÊRª•TÔ…¤¦t,›?=°ÙªÉRi€´¨’à‡)>áÿHÁììÒražJMÝ~ÜGsê mãô@w2(©^àx®·äšGP‡¥’4rÂDjïÊ8Ä“ImOr5"K1 b…{¼òêí**fè*ª72áþiY!šB¬¦/¥w.«Ï‘êÍS¦í錭j™šsMfºC]#œA©Þ³õˆÞ²È _ÉBƼVSŒRwE~5/å­‚Ó ]µ"lX “Ç|[VºEúÑò;r›_¶÷}2B4´<¥•‹]¾yË4ö”xWª{<…Yš1ùI•Hõ>O*·€RGoÃl›–{ˆßn(oˆ}ŸÁãtì5oݧFÂ[½a«H‚9x™ÆåjÅò%Ye]¤5o’#Þɇ¶ÌÂvuv˜F¶w'3Ú‰>]y ’ö»å×€âЄ!{ª½ˆe&»L– „Ï3J¯Ç©¦šˆ*‚«Dƒùͯ…–¬„Цõ„¸%!M,#hµðê0q«òDqc,8²¯ÅË1\uRþ>;:OÆx+˜ ¯¤>9YX!_³‰]”'ÛvB´ÈÆ%î«VòËE)XPL‡[åêe5&BÎ>qcn LQÍH±»Ë©Â0,Évt“±^8ÿ¨&­m» $Ud Ý ý¡%eg²Õ•£Í3( q»/z߸âô,O®£*†ÊP —rÄar÷1–iÈ‹h&€Æ#£eA 40p†#ÆXþ„õCÿJä3­2àûûûlé§þ¢ Òyؤ5ü“Î éÍ⌗˜‚T’xlW‘³‚G6.7+°a,håÙÒ±:=׿ÀÉÚî“À–;'"ñÊ #`*qP8ž zH³3”Nž,¦møžË+nŠ );‚á˜øÊôñwù©ÙC+HåKöÛoþ’øØñæxñ#Àó¿®S&£ƒ{–œ4ÂÙ2…y[w @_´L&u>vâÈÛ1;0V?g¤Iø„ìŒÛðY¹"0R„/' n7&"Šw`‚ÁR“HÏ2®Ào¶Ò,eP’ $¨bGïŽê~ÀlÇ™uÏyÑ 2Hè§þ¨1¹vghÆÛHw ÌvJ•T;’¬ðÝÜ~G÷û–Ôy?¿ßí†Ñ"²òB7FL8q€ÅT,<ƒ/”oÚ8ÛÓªÒs‘B2©u`cà[˜º™ ñ؈,¨ˆ‡‹oL‰¥b]¼(]Šº¤jvðÈd'ü´`y¿ebÃ{€ö vvVwcõì.Ü™È1pó-…©\Ÿ®¦VpÈ’FêT(~D8þЉ#?ܯ稖—1å’ÃßéÎà9ÑÌ5üO“ÎJ;O!c¿lI ¯‚wóÜ-)$.ëöÜ<úõ‚A³ æd‘ƒ*òXÓ“„TväÜÙ×ɤ‚º&%”ñ庰#bå·%¶a )Ù?)ØŽ,£‘^ç4Ex„;B…-ËÆá·ãxý(ffÝw ê.5 Ìx7ó†$oñý°Ï9WbÝöF‘ƒS RƒÁ4ŽÈNÀ²¯;‚à}ŽÖÓºLUy’¡†ò¯pAôˆƒá¶n!Y[¶YWf;ì­Àž›tXUI §oÓ)!|l¬𬿯O¼¬y3†(è§€»àRÛö ]RFß¶„ù!”R`å§ôûÿl8QüùÿŸØÆ±i€L’lS’ feUB w{ˆÁ¹¯-¸ƒçrNKÈüUSÃbâeæ¼<žm#ñãm¤äIfiØùPÉÅU6"7!‹ ¶û’7 ¸‡&ârîé¸by²º(*¨ß’"±žDî­ÇèIÝxŸL’fÍË·†Ù8}DYNÞüµ‰€~øLHîAq&Ⴚ‡ êáÈy ”²²¸ÜDb ²øûË»„Î¨Š 7!Ý‹— 6·Þ=‰ßmÃ)Ø·-ÙyÁ¸ÌxˆË²´ˆ#~ eYWb”º¹,»¼¸*–i$m·HdßÀòbŽ>FÖáwQÁFѶ߿ðøt)Oͯ³;û°$ðpÃ%•Pê8 ?eù¡`Ä;–U°O€O‚ÞI 1Où98VÜ€”æQÙxÊwú€Jò‹é䃱DvC‡^E•œQ£1¸mÇmJªÁ¿a—ìü°sä6ì8®Ì Ρ9êÛRÄŸÚ¬[Š–óö"$ã‹û·÷×~E¶º_ÝœŽâûãåçÕü+ra âÜvت«¢Ÿÿ|•ÿº=Á!É#•¾ñ³æY!ibs°Ë"4A%v($;¸;•*‚˳(eàG1Þê5SÿÑmˆÜlI òJ£"xìI*7ÙwÙö¾À‘˜–?]Ù6˜ ·ÿœkÆea· ‚Ò!x©ýˆ#u“šž;2²y©Tv# ¨bÛ¶ÈíÁN瓆oÿ’¼ËÄúÀš5ê9*–E! $œìú²¬A1°p¥@ô±9(Žpl `c/ú&7 ùòÄ»}Hâ¶–&ú”@QÜmà“&ñ„Ûäê ¡²,…ù·›æ;rÏd$<{…W`À`,ÌÈû°FòRÇp ²0o«’ÊÌT‚8ì=-][‚æŠ|7p€Ÿ¿îGÈ$³( Û’y@>’ööcB! …܆/áT‚HB¾W}·,G[€AbâÞó÷¶2REŠe Ýϱ-¼ªßPJ $ÈB!+¾Á¯ýÿ¯MÃÜ'Œ¥ÝÚîŒáƒ -»¨„YY+¶ÿcëÍ$›ÎªÂ=ˆ^Aw 6 7÷xñúPG/¶ÃÖ^F‰Æ©° ¿Ün·»îänj8JwÜ•‡Qt¸.ÄK6Íù—Æ`FVÝÕ€1‚Æg)¹f ý׉mÉ çÊ–õšñ„<‚M²¸í€YBíÈqxŽ;’xÇvE–ØÂü(ÜñáÜdV&.]°ÈA çrÊÊUŠŸ”—I-ôí„`6ª±n$yAãÌ«¹e,Ãí¶à¬D(‚æ=Ÿìï…9œ"ÊÍ÷t%YŸrUCx@$³pRì‹OŽÔž +<›;·–(íd,¤P>¿÷ìNÀÝéñ9.#Ù· ¬H,Š7CþâŒØ }™ ©ÚBYG¥<®D‰ÉÈ=Ä$> "ò,[ûv;l|pßÓŽß¿¦—)@ ¶Ý‹ýq–å²x'ˆ™8®ÌA`•“ôg`«Á¶m›}õÂØmÝ™C³ñ)Ȳºñâ$RªAe †Üq,¤rP}l‰"™C+;{[²ÕUX²Ž K(ÃfðU\ù*XPþlØžLÃcÄ‚»ß!ØM‰“ 9`Ûf~óõƾӪRÉ¿>\’># /)7Ûd%éŠìúv”Í$‚AÌáÍ[ÝÙ€;o²/"¤»}ÖPV8ù<,¡Cî<0â‡Øÿr¿$'À?¿HKu`!$ˆÙü²&<ßÄiÄ©^?fÝÏ0U},GS8*‘³CÇmÍÌ?l%$“}¥ Hr o°;9(¡¶aö ûRþª¾£KÎe^PÀü»õÅ«sØÉB"ýª%Ý{¢¹ ­¿‘×imOu‹‚μYâ(ê¤òÜlw“m÷l99ÜqR úªyë\ò¹YZ¯¾R@¯VËN±,“ªó­Å5žã²ö ’¬v%fÂÅ*&ŒßEaV¡yÒÛË}¿, êjQ$y`἟}¾øå@¶C³8—w)È›µ‰,4OÞ”ö{QKo¶¼,M h±“UdFÙÂ<Ø7dußÁ•½Üg b B§McÌb Š$Ö+ÆH”IF̪/©õk΄Qª:ìÑPŒ9%QEÞ¼pÈRwŪNp…–å‰d‰£’Aï°Yúïì‰#yb÷}¨ã±,gêLzv‚(whâça…±1Œ d„{6ÞŸ¯‚Ù`K¶gv`>ðZòOœC¤%Uä‚)ƒw ¨lÆÇòí?H9wUä]€_+¸a¿ï`|îxƒº‚vR<(³†¦Ü˜—,€)ý ÛïÕÙ@öúBl8–äxPnŸnCf*wä…lÀí¹U>;ÅÓô£P¾|m¹ãÿäï¹ßbÀ’@ç‘ãïÛ’Iw fú~þãy<¶ ¼vfg Bäoär#Çþ>“·"wR éÉ¿Ïïòl7ý¶Ð>’ FËäí¹mømþK/Ôn|x>ñ]€‰&‘NÜ—ÿ>L,6>| pFûÿpØŸS@e1àÎÇ}ðåŒ<†?B>/h&2ûçÿQ>^zíâ(£ ‰íc¤v,Îè&ca䊽ÕckÍ6FU‚zŠm7A4Œ^YB9mŽÒ‘ÛF®xٲܤſÿ ‰ÉŠ» ”'½Ïõ f~¤t?2Hňö£ÑbG„$œh4fìÉo"aW^“NÖš«»În8,rÊÆò Æ=§Ø!°â”åHbüÙçò;¾Œ@é´„H-,ÇPïà±½îøä:£þ-i`ã@hr¢Dù'퇞HÙ –¿Ôº¯ M77‹wU€'ny¸lÑbç&¦r¹[—Œ6e¼'bU£hÔ %8ND[øXåŠv‰¤ç”påƒ3ÀÀâ–!Ä‘çS `Oȇ»º¡ÊØcÚ’`‘Äka¢ŽŒvãîW”QŸYvc̬NÌY‘Pv„ýÕ$Ê@`7DwcTZT,°3Z.¾ˆ€=ÉnKÍ;Ã;ÿœ:H—LÄ yb;þxPXÊIÌ2¼‡ŠÆÕbâ ÜšiåÈ* ã”xþEš> ºqª`Ë#/$x˜´²*¬’(JÏb2Cärj5£k¥ôžE[ìIEJг²,q´‹=¹‚w¸—n5íH{’HM[+ñœ¨^èc~1*°E‡ÝE‡eLÅšÝxʦFñìÛìÒc±$ 8pC0ðÀý$oˆ“baƒx‡ìíô‹î†E "!~½¥#ºÊ‚4 ÖFQXˆå,ÔÑTËŒsÃ"Ü»ñØ ©òx¸ÕÉT^ýÕL–êP¬ˆ°§-ωˆìª#îqæŽD’,Ÿ¨ÈqŽÍWÞ¼e  ú8h 7€Ìiák#©nUžåNà®#^Çx h B³+J±ÈÌ…æF^[™áÑ:XŽ_ÂÖ€)ij”I!MÛ‘_£s$²øbFþ„Õëh­tÍ5‚ 0rÉáçôˆ%K¥Õ­M+JÓë&ʼn?ã늨#RÛ»o6ï,Õ¾¬­*ŠàF{<ˆšÞ+hE^Qæ‹®ÓÅš–V•ÞPa–2ÄÊ¥gf<\¼³/%k!sðh¸H±S#ƒÅAÔ8ˆ(U$teµI$cs[|Â2ÿGÉã…i¬ä±$`µí¨ˆ¦šJŒ=>ª¼¤V,R4±vس¬„ü™¼¸_J·V£Oá©HYPv<1â4zmJ…`)#á¯BØÞ"7‘ä⮹Aô¦ï¨å î2µcç7qcòßÑnŠ”ì#+Âx„x»ÂŸ#œ²1…Y"±½‰-,o Å ä{ e£ua—Û£ò –Xi\ ;•¿WJ°ŽåyÖIb %§H]Q·Ëï Åøƒ!)ZòÜäŠD’ñh§JüfI Iûebxì0A ä´-0X«×îbìFe–67e3ˆÍ!jBT•3“¥.ÁüG°°zsZ™u%*!D‡63wç¿êÉFäÀ ¤VåešF¤Ù{¡v?Ê+[¬Vóocuõ¶&hž6f. a†ÖGæ;HVs &Ì…Ö®RDG±¼¸fEÜJŒDÂMã2‰xF¨Å'‘+ˆ†ôzÒ:?MÞÓ˜»—1Uå·u,KfR'evžhd„Ã#0¿f'–¿K1‹Jœ„n$rh=%¹cŠäpÊÊÓÌijq0ÞR ¼¡°ÛÈDE‚l=2ú½­H(¨J¤“é.Äwí¿ùÃRé•TŸ‰ñM¿!>جò«M!%Q%íˆÝÅtF ä‹$}ÅhÂñ¤´µ?øŒl@)éPòiKKÝòbÏ;r$Hœ,:ÈB-É%ŒzÜ{.j¯!fµ#»«c«CQdêV«Ú†µ…Š"•cXbíªÄU‘6„–!b“”ÏfB+ZT‚BÂ5L•+-°X¯ÈŠ`ÈNš‚©¡@iJ—g%‰‘Øà}Dü:…‰J´Á-Úb™œaÞl%aÊ8É_u 5gC*°ù„qÆ…~Ü)‡.íayX±dqÁ"úÈö%i{ƒu;“DŒêVÅõÞl]Ž˜0¸umˆr«±`ĉ uUYk V/ñå#•˜ yÚívHHšWI`2˜'»f¨3Î-HÎäË4+2µY#a!QYC׌eĦSë6o3O&”Ô¨•¢À¤ƒ>—öý¾4åòëÍ,¡*€Hr`8NÜÁíŒWñ†âÊÓÆK¡Çî«Éµ9ÇÍ›’Ö0JÑ01f‚{P®IÑ 4Jð“7pvæÚW”ØìÄ£-„úœ”ªbÈF>$q‰Ç/Vph¤qÃí²Ö*e–ËñX²p,Ä'7‘¾PZÇ"¶;Š¡ˆÛ†ÄÝ×y\´ |dRåê¥CreHŒ2%vXÃ<Õ˜–’ªÈã¿ ²1eGT£T,èX AY&R–°í"E¶Åêéõh”:Òu«JX“%3°ùFÃyÛÆ~J8†ˆÀQ Ÿ‰¡Y¡X•öd'ÙéוËÓ¸„fPdPäŠÛ;#*†ï“†0Å”ÎX˜œÄÙE縴,D‰ãVBÆÌ>€Ò»ì¸² ö¾Æk`LR>Ó‰ˆ—¹(¸…FM[ÆE|ܧÔ#^él ZÖ.·Å™òu¢ï5ë3¿ ’¢4–Gˆ½r‘EVÍÂ`¥_z©ÄMôÔº½ ‹BSM~²5i`ID–›_m†NV5-KK\ Ú¶{¸³NÆ9‚ɶë‘ –rÊ ÇñBÏ(H©î`ËB ‹+¯M÷›¸…"Taµ„Y`;«q¬±ÌÊΤÃÜŠ¾^Hø!C‚5äu ¶¢tÎK‹¹f’¼¶±èfš¾BïiÛ“9hdÅÌ3/än#v䀈öߪ:y£À Ø© -+ð7nlLé2/mçãÛUEš(q«/;Pˆì31cÕè ©:YZKi ±î}Úþø˜éuV”i„¨]å‹~ÿ6ÅeCÁ‘·Te)„·8• F3C ¾=RËk1a}ä­úpØvÑšN镉32•žEZXL锿3#¢×þ§ec覴ÖÞ­Éâ,WQ ošõì[¸,ªW°b‚E‘gîN,B@·~äÓ>b¹‰ “_§:4ÇñgêId/{ÿÒ^I:‰c¬Y…E<…Mÿ¦Xˆ¥[ªP¢¤¥TjR•íe„°%î>žØj=:µP¢•!‚ŠKÒ@6Úv/»b¸°hP•Ž^ÜûcÊHöH#OȶÆÇP’ÚŠ6rü˜ä—nTGÁVº¼rÅÛŽHܪ:X˜ªߘàÉ:0¦Àщ…™µÞÓø \9 u9á˜[í;ÍvŘ;Ã+Ï©jYŒuå‘cšÄÕ£’á°ªè?$è'h†°Ü"uxØ@âXœ.ò…ªÍ/£âýj˜À°¬lrA¿#U*!*È–wN’,û°'{0ŒdÌÒ^YzA'ƒý oI¹É‘Ci@²Æªª“7p¤°*|”­Þå¢ÌŠY"Ê3­Q*úhft <’™Iy<-9œÆŸ"YäŽ>Ü“¬hõˆ$Š£×h%Å ¶­³«ÅUd2Ëä¶d_%Y£ž)dÝÒYd¼Y=Ü’³a”"º’ŸÈ°£ŽÏ6®±ÊUvk\(JkX†ø•›uÀI´WЪ¡©d…Ïc·öŽ/Œcgqf¼}ÛÏ uba ’>Ú®ÖA÷Ã4iÍZ=û‡aPr刯²¸À†EbÑÆÕâŽÐWXcˆ˜áíÎ8MjT ·:úbÐzª²¬‘ÉéîKŘ¿4“y#…N_Ô„òÅ#}¯ÔË9\z²KU‘vWyö! %Öw‰™!à€Ç$­]yÁM­z™i­ÈDÃLóµÁØvú‹Í°‰<“õþþØÓš&eüŸHÞÝQ M;N𘠔Ig‘ƒOF+ zk`dd• vFÂCgš˜ä$vE_‡4‘YíŽ\ Hµ¤³,$ ÌŸÐ=PÊ©ØûǤ„'•P;«´Òð™Ì¥‡BUIi"L³ÂÒNOñ¯ƨދZ3Da2øE½“Ži¬Irä2E^G­$F†7®Š« p»V¤‡¶“o9•ŒÅde€R) €s`flÛilhËÐ^azR}Lwá‹9úû;à9SÉ$’Ûþ¼°Øí²8”€Êå ‰6$Áö‹o爟‘×(CÇI…Œy(ãá‰u³1]œ¨Ø¨VoªþÝØ*@W‰ÕLKÜT$(]‡ËÇþÞ`€T’w$~(ZìÄÌà!^ãüü/¾ GÈ3'íUˆ$>ÃbÕ%‡0É!;`vÈF(Èxº‚T· ò úl8ÀöçsÁÀ]ŠÂ¿_$r/6è!Ëbé½yá†âP¬b.9qàý¥•‹ÅÃÆ1ƒrEت8“·Rߥ$„; ‚¡ý±'pHÿÈQé²(›ˆþà…Jòá±#r¥¸!‚ñû·$%},>ƒÛëûýƒÙÖŽœ.Ü¾ÑøU]È;¶ýЬ~Ä[8~;2 ÎîˆÃÕUÛ‘V§wq$¨,?´¢ ·K A ûÿï‡ÆBáB¯”V‹‡Ÿ¨˜öØ3,‹ÄîûòßbÞ b½ÆaýÅÃ#ø”â­+JÄŽ; r`åþ=5ØŒ*¨däx}ÈÝd<žN[¨´Ö¼eÃ$€"…cÀ·"A*°*Y‡‰Ÿ°ßÖßÖM˜— Ò'Ø/mI˜8

    ÕNç`H`vô³ñäà¨Ê„ø]ÙXì8¡ùrv)¶Á•‰#²ºÄÁ 4MȬ­Û“7èn»ò$K¶þKØÈ €u;»pòŠÛvòG’+²°%aÎ¥“qû“ý¿¶13nYJ†;ew}ØXy%qÛeò£bA"2‰Tß""SêÄìWdû;qåÄY¹(KU-·Ü¨b»*)C²îA‰ÙY¼îwn@ýFã×–»«•^.@ØÈ@]˜—ðH`È$l£ÒúŒ2_OiË·Õÿ!„þ"À«+¨pÒ3ïä3“É€ò@ƒq UkQ±=•WfÝíÙuGíK,… Ž"–T(‘lƽÁN¨[t¢kÎÊmiÄ‚®Y#<Ô1vñ௓ÎÃe@|ת­¨V»æòl%€¯òR  AË!wí¡?¹LîÐ9úU°ÒµÃÚx‡£}*®Ò \HíÈ‘W䤋‘ÝàóÝÛ½à㎠lìµJ’ÊŒý‡íïÊd†0Ò1šÄvÇ+æpL™ÝB‘ß°RÔ/  >ï3ɹíp"-5ATÆ`MÔ08ªîì“¿·Ôw# ®û)Oî%•˜ÿöA xäž/»'Èó±ç™E[<¿¿ìÜ›Q-ùqõÆvÙ¹vØl›¨ýí¹m‚“¾ÿçp@ÿ>HP$n#å¹yÛÉxFò6Ø“äø;Ÿß¤ò$° âý‡ï}Ï>[)$xT߯yr~¼<)Ûf 7lÀò8ùóû'÷ä–!O0KOÓõgmðÃS» aqŸß»°ÇÅ ]=ïÿ¨—|Œõ+Ûü‘ƒ0 6ö¯ÑÈšNàÛãʲ*ík›%Mãâ„ßúçõVÖ³Ô>ä=ºô§ª5ΚÓßJu‡-ª±ý=Îd°9¬Í)§ldpÙñE¯¸Ñîb ußigc:‡Oäoýoÿ¨Ê4axõO X©2Ë4_úLèŠ;$l8IÄÜjÚc’v<Ö0 =Bè¿Iú­gO^êVÓúºÖ”\Ówò¯’‚örÑšù'Æe1y,uêð^‰ŒS^i‰MVŒÇë¶éôW_¥RE5Ô*˜€F Ò gaìØæsU)Óê+ZçJRá ”–Aˆe0‰¿¨XsXÑÒ}ëu6äµúŪý¤fýÆa´^¶\dx¼wU"éWN±úûMåuUm=R¾YÞŸýÛ£#Nåîf_D­-CVþ"LUkƼQØ;ú³ýÖöº‹ÐN‡u6îZŽ¢¹Ô.’tÇ[[Õ8¬Siì§±ªtf 6s8G䋎¿g$ù !f°iÓ³[—“ð«ÎWÛ@sqÒLÏGôØñø,v–§Ü·© ”iÌ@¼˜Œ5‡§¨+ÏrŽ5²W¾y -Mƒk³™'íÊË艦´f”Òit¦™Æàþ^;„´”h)N• qUñ‹)£Rž>Z¸ºÕVýnUv‘’ÜžK7K3R­U¥TêCL»kÏî1U|Æ]t)ÒBJJIÒY7&X‡$FþölNâ!M‡uJ±÷Tt´¥™‡s´dÿ­/‰¨Ëõ­Ê/±u,+8dVR¢X–ž^á^GxFŤâ¬Œ£+]ÅÄʧֈŠEN*®d;/2Ê_¸žk/{—‘bÙ©‘ø$Åh™€õ…ýÂD‘·vT2"$NäLK)î¬1Éû°«­qCµRv,i!™Ÿr_c»nëôÁ­Z¯°›ÀØo?£bÌôÂâ6¢T-xwï,¼UZ)WsaWb±ÈÃ’Úe%‚8º€ªqv;·Øyð|*6ýÛþ8ÿ€ž‚Ôx,n `ÈdkT°-Zc²“ i,¦Ä1«*NcÖDrò%·.´Ó9.z˜ Ñàí³¥“ø‹9ŒyóúíûõÆç2…Yš§á,‚°eYÒÅÀñi#œuYLÒ @®˜PH=ÓIwgá­ˆnfÑSÂÓ†Xë¬Q”„?Ú¶@ÊÕÆÀK„HmÏ`¯(y-E2Õ<Œopñ!·uãöOKñã$2¡äÓVR6`e‹”l}JôTðcõF:þBÄU+Áóذ‘dŸa QHYgy   ¼hÀx6;³T(§+]4õTÔ©Käˆs{0·1’Uªµ7)( S½Àa2}­<–)6*w7bUvþÒÇÀþÒ#Žå¸ø ½Bzw†“¾à’#±VD¡3È;Þ8Äþ ‡ö#rþÈõ¹þãÓ¥¶ìqØþrÊ ¬Œ )MÇ>Ù¹p ¤9W!LG\fðY5rlmÛ2šÖ"‡¿(%œ©±EdàÛ†Q³¯†)ÜòÙz-^“Ó_Η,KzƒìÁ¹wc<㡯]&OZAÒa*ˆ®!¶q8”è+¡ôŽßmڽ$ç~Òª÷ +#ˆé¼i´`ú—5ÒدÔ(.ßÜ ¿¿{x‚'ÿÈ×Iæð44Î&–G1N•¡³°ÎDVÖKWž)e-6I¾„÷"äWvñêDº—LnU³øò½¸¥'r¥f,bo1“Æ]ˆU;1Ø…ßaé«Ò½B)¨½Eàÿ¸Y¯âyl½dÐ= ¢5=ÍÍŸÇl5µ¾z¯0”±°Ñ¢F‰ Ì›ŽM(ÞàpÆ R-(ß×>þbE›M‡eøñ«®G Îʱ˜ÈTï/vKA-`ÜVÄ$2¤Uô½`«Pæ,Ñ’½ˆgŸ—zb²ÇÁRe}¶xÛ~˨ ”ƒ8*ÇÔijJ#‘ Ê»Èwm9h쬄}£…¦S !&s`EfžÕÈ>ººh/-DT*ŠhB”‚ÒYËßn^yúÕšË ÒÅ[$ÇbäÛyÇRÞJ„¢´•ñ¿VÖÌq_±a­Ê§„vRkLî‘ÄœR€)…•«H/VCDZ‰tž "&«±QÇ(¢Õ’_´ƒñ³Gb7–RÒ–ÙÁõW;23† £w·r!ßID*{B2;o7m‚Ɉe®«c‘›‘õa´Ž[ Óxzw²t ž*¤ÉNåã nTFî02;¶ÞA)‚¸Ç«å%Û…ŒÀ*ñÇ¿o´¦ eã´PÅúªËÊy×ñ\ÙÁôFë²f±à«qu£™ ö‹*íÌôi6—€óèO†³F¢f²Óݪ1æl㋲É"À{ˆ•c±å4Ž6·#+|¦ʪ|ŸB²´—™ô) åÖ72ŽÖŽGµñ¿1TåÙI-Qดܙ/ÿ°Ñ?ܤAQ¾üŸf?S±ä?¡—TìÇ&‚7ÝwËÔGQÉ’E1ZÚ7Hök©ÜÕrcÜ*EMÄ g°NËYº%žJЄkHõîÁ÷Øn“F’Äؤ¥tô>êS”Áĸì¥;“Õì,MÀ¬­ºí(b€ÆÆÀೂLÑÂGjfõVR€šN’ÁBZ&YÙ¹÷öŹŠÈøHR”“‡%î¹hÿŒ4ÔÜtît”2ãaúH#2!ûÚ=µäöNÊGŽA·î мK£ƒçn;0ßÉa¸Pc%Tý¸«<½4æ[OOá*O–Æ×š Õh†Òb\´BC20ßìIÝI.J©ß×tçô÷ìçhù‡$²YyÄ9H@ ³0äDdÊÊ¿t좪”Iª i©¾*„þëû´Ú Ñ^™¢‚‡)áÃo¼Hˆ|ô…Î:ÿR0TÉ–%•—²®-…äÊÉÝ–f<ƒÀ»AAù„ç¡ôf~Åm÷db<‹ ÀÛeÈñ> ìwôÒö`¯­³¹ ²Ò™.-K3JGyg°ºA)P¦¨Œ"×;`í­†£z+.{O„Ùs´"Ï2ö 9Oõ+̨;FNÌ Ü¨2ÄzÕ¤ TMJ %%·¼b8ã6N¶šEÔ„ÿ1lä ‘0C¿šqê­¸×P‘ hò‘È5ÞAµ+{ìÕä/´þˆ>,DøQ‘»¬›_]Öù-q¨&ê>wZ.ž©¢†«ÔZÜʹ[רéV#HFý¨cÂá°˜Œf6±­U%’¬îW=Z²×B¨J#QÓhvž[1”§E)ªU¯¥ÜA“ô Å¡ÍuÕWë§@:; :ˬ5wVulX¦ßÓÝH鯸•ô‹¥ý^êFœÕ¬1f Šè©Êá±™Í~Xµ›l,ÒÙÔ˜z×q:©ª¨Vßô)¬õH46«×šÓKkmI®°uõœÎ‰‚¼:†#]Y:«¤´„Õ£IrzWGá2x}1S?h.¡Õ9 LÚÇ$•eÌ\¬š¸€ô˓љ¸ð¹\Öc§Öµ-½sXf²:®};—Ö5MþV•\œeïâ\J¼É#®*ÄëXÁ,Á.é÷N´wJôÙÒø 0™ÍAÇà«d%³ÃduNrÖ¡ÌWÀ‹­ dù›Ù,•ZõŠãª®K#„Ǥ $0A~S-š£Y*¬—¤NÊ ê7 ¦` ³wŠs5¨.›S ½EÈKž»KÆøžd™ ;É#ù2ÈêݱßKÚïñâ-"mR$ÍAÝA·LÍcÓ·žm,Œ”±ÔüɦIç­ŠóLZw Va ´äE&ÛA$`‘ÉÅ#@¢8ĦBòfŠ8Ó‘x <¹Q€ï5[ãºBx'= ¸ëÚ8S³b´q¾RÃËóA¡š¼Ì'ŠvVBÜ[¸õöD%¤‰#eÕ&‚’˜3’ÎÁ¯?“ÁÃôõ5E –MÞÄþþýñÜÈê\£Å§› K-šêÚÇlRòQaÛ4|ã\9xþdr¥kJ°æ1§RFªœ¬jó-:i)yKŽÐ®ë<(wŠ©;3Ǥ`³¡16ÞŒg‚ž[nFÓ[ÉP¸xd+£Er©.ÃFëÅ,<öæ–"ì|¹ä`Ä—®£Mº˜É£j´„sC-~Ó´Pä’¡hÌÈÁ‡Ì•ø&ÍIF꾇dù”„¡ˆJ‰,RgLŸ?`ó«=4R‚‹¡™@À#wwÿ<âÊ{Ž»³:£2F²H“¤Oö–ø§´ËYH¦Õ”LÛÜ^%ž”À,ˆ’ÆDÓN®œ„PH¶,“V}Ú:öd~þ\¬•e(ÊdPŸü࣌g~ m3W÷c§m– >Ek…g˜üBvx¤š5åõi¢ÞÄýÀ6… BSü“&ðV‘#³Gg,}t@3±±sàô÷ˆ1€À¶ÀùµÆ,NZOöd­*9Ÿ(S‰ ch‰*¥X·h«©}ª§ã>ö—ÈØÈ¶9åËeg–lT½¬M*õ³ Áqã¹jeQrì<%GIm# *÷˜sºs,K¥–+Ö@l_ˆÄÓAé3pLEÖYûªIŠËŽíôž^§^µzݦ*T©x›æÖñ…b 6E®…fc´.x¿Tzä³?÷«úI&¡‘´€v;3Èå§.YHøtJª”SAmAµ2xïú>3‰ ˉïű¥ÆVXŸ¹6ñ¼DâeUeh«¡úöY×¹µH>ÉzñäœNl•£gs³·/Ê’·jE*êÒGdý£PJ È8ä“#b‚ö‚±ßÍUBI+³îc0¬¯l}…f~â(3K'jÅAÚgÙG›ÈFg@¬Ñ÷Kðç4s"í–„@Qìk&;Qm$ôÉP ô–%˜—Ó¼öop@xxö÷ýÿVräË, 5åNM¬ùB};“¼ÌLŸQ)3 L¬^HxÙ‘¹ÎS‘uü6  1ÀYY§XH‚lÆ[¸Z9?e¼¡¸>°Ûwo&õ¥ÿ-¸'ê²pHáÁG%‘ÂðûDR)xPî¸KÉ9hå;ו4³}™ì6{˜~%÷ƒ$µÞOvoØó |äoÊñ4ѯ4*#ª"ÖŽ8Š“+ÿš+ "ìE×#Êt lGL^ØÓlà1 ~Îî€H•Ñ^8ܺ¸;4\DUä l¾»ñ'n)#G$w]ªHék™óÆ.êt ïÏl|šC°äú?ôºv8…à·ç3lÇšxQ¼ÊB̤hÉç 2) OVQü'¤YI[xo8%ÓFhÃ;JOÚÇÃÚÄx”™ã’BÀì\·‘¹-áP‡g(ÛÄm°mÙ‰oKs9®RFOmš_þcnʼnßnwò†ÿ> Éy…(…™‘¼ra‘dîªPQûòTvá{.êK†A/'äÀ,Q²£ã·Ê­ûn;øÜzä×Î:CÛ‘ôyûcp‡ã&Î^I6Uo!œnH_¢¡pìO’LjÙoÝØÎ¼U¹ÊbÁ90Üy1-²ÿÜ6Ý@-É$‘’Š© ,‹»L«º¿-ÛbßÉ?ý±ð|úÁtfp­» N=ÀPl܎ø%¹~Ä®àéaÁ8o3ï‡ìÛ+7÷•¸oçfPv!ŽCa·ÿXô·I”«7ï”|Wˆ’PÌ_¸¼™‰©ã¶ÄâG”ôИªà› mø3"‚¬J·è“¸ðÁ?¡ëuXì/#°cÜ0 Ìngb¬7Ü·ˆ?Ü=,OÑw/ž9oÜ6Ë;¼‡%y#Ø(xHn<;ï»yC¬­ÅP²(Ò“°äàÿj©íÇÏ%*ÃmüǦ~Aî ¸.üì”j¶Å nEFüHòÀî¾ë0tDFÛŽçžî •cý¡ÏþǤÀX6€ÿu€Û`ìÌ=¥þÙŽ9U¼òæË¹`ä´jÌÞí¹â÷Äî DR²/)dbŠX ‚žªCî@áö• ìN´œA‘"cõR°eòäˆØ²(]üìGFÿ¿MÉiBˆÃpWuPüJòmÎãüîÄG?À'm‡¦wÎü<þÿã  Å»~@'÷ú6ŒØ.Bs‘wX?ýqRä€T«;8ð ‘ãÓØË*<«÷v^Øf*xø+ íÒîÄ€l¯Fîë&î¬G˜ÊìÀ?J\중¸cäÐý³‚ËÄ«û+*ž@]Øñ¸âÛ°ÿ±><úELC°Ù‡òxÄ\òpÔ}×î¼’2*ì?·í{l£~e·Ø°ä6o;=kDZ¦ñ´Š Äüy†0rÒwK‚ä(ÜþÀ.#íëy”¹xÕZ6*Ä Øo·ì@?ù>=a¥úJÊ*"±'nFäÛÆÁ¾rqPón¥I“º‹$:Ø1Ý¿[ïÈù$KVp\\;Œ¥ƒU‚«í¿ì‚ì·ömçqék'&(Êå¸óáô 9n¥¼ ‡öì|‚Oþ}8ô§ÔG»¾×ùäýpÚ#:+¬œWÙ”2•T OýÞ@ßaÉ[pG§&xÓ~Aׇ6Rw½›fÜ®ßÛõÛêH#õëÉ+žØp6<•u`w•‚– öÈ~ÀVR}7%‡&`ìÁø±eâ¬x™Þä[ùâÙvÝM‡m`öñï‰!ZI&\nqïûå±°;ÍÉ—‰ß™$ Bþ Iù>}5ÊÁÏrO~ ˜ù;IãÈØp؃á‰V‘Š™æxQAq;Ü p<òm‰UÛê °vì „Í+7Ñ•@„–ÙI¨2mºîÅIöCÔT tÁ»¹$¶ýßí†A7!‡<‹óïù±Æ°îYŒŒŠ$UaõMÙ‰@íË€ÿ-å¿¿KQ`ñe-¸ ±ýˆÚB6îHÿù#ëÄñb¬@eÓÝö߈P­Ìƒý 1Ý”þ†þy$Ü*ª. /õ#’¨ÜŸ(¥ˆ,‡ÉßrvßÓA–lߣá0Ķﵻ~Oã Â&’ȯ¹rC‚­³JÄG"rå æA#‘U@ÒÛ¹»%@bB•Ý€Så—Ë)‰<‘¿¦šiKãÚ*„¾ÄHCÛÁp$#ë¹ÛÛRÊy¹ì6;ø!‰ó°Øß¤§&~n3&g ¢!‰¶ç{0p0¨Cây© ²‘ä¹û0,¬WÂî ‡!³oçoHLÎŬ23²$€;¢ìÄGõÉ<~Ǥ \ÙÔ*³+2˜Ñ€¸°?R‘»ûÛ×¥š@vŽ(ÛŠ+>ΪòØ§Ë ¼†ðvÜ7“·¦ ‹†|9)`Èsc»íôÆœTHµZgiÐÔ[ ödLÓÇ,.%Œ1¢Ç)0Ç"•†P’ îF­€²nHTY‚»„eYBŽ;yæ`¤‚|<“}—ËÿqÙ‘-°ößöÖZpá#@Ib¤³HT´Šw'`v* 7Ù‡ëoH¨›·í¹~1 ¤„±ömåá½Åí/‡Š»ªíÜ^uã±²þÉ ±ßÀ>µ£fc'v) ­+:²‘ EsÅJ¿ê!Þ>q°’âšA3‚¥¹pÜʼ¶·ýÿëÿoJäãf˜Þ9ÛëõÝ@þí¿díÇõé±}O³³GÔcYÚÑ‘ ²îwý‚ (ݾ¡˜‚ÀñT°'ˆ¿Æo³;0xÆREâFÞFà™´1ß‘òõ¬Ö$Œ+xnâ£9ßu_rþ w Ûp²¼n=mM D Ê@í¸PTù1ÿþIþß>–Ψv`[‹8nϾ6”‰ÜŽàuÜdÜÆÃv/´`òæOíR€ÓJSsÜEœlÁŽÁ·QûË ·Üé£4¥·êX#³‡gP×r@àA<‰_ßlýçÓÆN1¯"»…äÄn®/Ô®û¤,|›`6ØŸKI–-Ýmì;Zç‘%e<Ë%Oè‚Oëo«‡¯øVfü7r¤²ª‹9Ø…‘Û“ØoÙ,U‚ÖṖ¶˜ú±<™ˆS¸a¾Ê¡¿[øÿýü&ûѹ)ý gpÁ¼>üXO?L=,DÊA.îÞ;m…°Ó´¥ÆÎì¡“À €ÛìÊãËõ·’?ðÚªjXfŸ3zÇ2d¥ËñùÞØ:Ï«qnÿÛ¶ãåÏÁ mþSsÈï¾þwýo°ñéJÒmàv’cûØó¹²IßÇþ¯l@ûÛCs!ƒàŸþ­¶ò?ñÿX'õ¸òFû—mˆ$í±oãmüxñçÿ ÔXÇp[£÷Þq[¬–nb%û¾÷ñ‹úQ}ê¨æéÕ^»ï4"·þ“zœ%pyˆ„ÁYã€VX¤Ü+Øåe¤ß¸@IÁ* o€Ê‰È°Aø ¤MƒWkI\—ÿ®¯§Ò0÷³þ£“4©Õ^€Âƒ¸c’8ŸÚ_DäŒBRÑe–Ì‹h–ŠF’Å"Læ0,²îªX²°î+$"5n?ôÕDÕIH)Xv¼ßšañÉõÝô7þH¸ <ÃÓcqõÀ¾9N®éάi$iC3é¾×%¶¾È8q$£‰KG1,lã°D®L†¬²îiÙr¶d±Î•¢+9õ°Ž«!>D‘´±¹â¨ÎÑ3‰ØFI(y³-˜Wñb¶îVäþ‘¸ØöÐ$ž99Jf–Im‡eQ Ö6Y-Í5,Ó™££¶Î¡¨¹9g,ǶbFó–"d]ëJAÚMݱ¥‰iƒË0eâ ¤’ ‚4Ü—kÉ6Ðüìþ6¶ûö|8ϹE!UW‰`À©ÿHÅ"îxAoùâ/nBÞµû‘˜°(ñªcT {cƒì^%ŽBœ,·!‚œÉFNf]ÂØ(šÆòH¬ò+ÛPLäøÙ¡„¨×Þ‰ntwÛqŽk# —w~ Ž1$ï$œš2Éúw0†’­b{yJÊ-Ì~RêÆ –‚Îb܇>b_¶"჆‘±ÃGaû»…b‘™7Ž È¼ˆU1¹å!ì«/·Yj(2Íõµv X^Y# ²ñ³Æ'#E'k¼ÌD3Ï «¬¤•—â°6ý2ÒKȤgtVfˆ£‚ªªx‚–$"Oîä‰yÕŠ?*gtýgË/Dÿ¦`)Û=Æ2Æõ—ÊăØÅ¯)«L7l7¦bi»9€ìï¹y<¶¤‘ ]àoMáæÇ°èâ\ðEAÁhexׄ§Œj¥ÀaXÏɪ+ÿQ Žåk¿Ó•ô®ØàìáHå"ªÀìú…xˆ î£ss†ÉD~z¨Xmé ÞgxË7&ŠÃ? ¯/-•åf' $dïݪ± vYl÷_q´QÚù±nÚTähÛaHUD¼‘‰A°à³­§ÙTþ‘2lYW ØïëvEO¼Ž Xã£(xî¥UrÊDãÕ»‰´æå†ø³–õž ÒlL%¿ä¼pnö€XHâûK“~Æ0C÷‰Þ[¼j›@U·€Ør¶Ó^Gp/ŸYV…™Õ•Ü–—¶’²ì²¦À—‰÷i™6Yu Fô¡ˆÕ™ûË4ªy¢³1'ó3òVMÏõ»ý¬.ÓcwRBöÿµ‘ÃUåÆÒ4¥[±,œ£–y¼|Žén1Û¾ÆhøŠAùžã`ìÍÁýó¶§%¢Þck{NÛáså A°eqÛd2)²vÇ™]‚©³R?½ÕÛ'Çd•*2·>K"ËÉùñܘ‚¦ÏùI] RÃøX|úÄ"ex2“¬`_êwû’[€5Š“J¸Ð^ßÑßKèÜkOcîߨZÌ‘ZŽs =d`\‚f®Êæ'‹ÁŽ1ø‘¶p®Çq›3šFQ)]D’’t‚‘wí¿< hËe—™©¡ e$uAb[Ïx±=ð ŒB¾êcÙØ cA LÆ!ò",+<x·ÔX‘mòÒÇÍ‚‡#™82…Ù•€²d õ„Œ¦ã!hñŽÜ©Ž ²£§zQL`Q™x4rxµ!îjÊH­ÉdlŒ_Lƒ0Þp¤… êéüSu| ¡Ç$r¤qw%™¡Ú­w¨ËaW¸oC´‚œ<;B³G}¬²Â[>§—_Ä)EOB Bá.Y ]Ïxòcªtú©4µ):ª($dØX¸ì>÷v´{îCnßT)rçˆ. ð|}P~²ñ–ä›zeÌq**³‰Òq2ÊÍÉ9Âò°ÑíK/¼ŠÉ‹›”Ígþé2  3ôQýTÒ›ìë Š Hç#‰ °î³VSÇÔ7Zè­;‡ÄÔëp²öâŠ3µŽð•Œ^:À”‘4opVg‰x¬Ö™ä·3FXËÕ¨”,¨f#w^{^&U:Vbš Š’B,9 w¿fmÇ€ñXÜ ¸}»`´fQGÙ–6âL©_º\¬Oµ˜§Ü7ìÃ¥O?ÈÒM–Bç€äÅnUAÆÄ)øc€üªÁ­)RuÓz#NäðXÌ…¨$ù6kÖši«Ûfãf ÝföçšÌcµrÂ+$è ¢R6î›i-ÆÔí7÷„þ¡‹Æ®Ü¢í+ð¤óPE‘8²¿_QWXË%jB‘SP,¦à€ÂFü€Fø±*º©¦¢JYI eìÀËl\ZçÎ+lqó*“/&$‰>í*Ì‹·*l$y9H+´€ä)"ÊHåÙÜíÄ1V!vP·}ùmÚ>#°«Çß‚A·Ÿ]¬õqÙl•:¡~5k– Väx¢‘Rij4†)»ŽS&áU¢•ž|ZD“0õÓјºy½D¸¼’É$F¥æe‰ø”x`W@]9Šì7îöäµv3L) ïUzc.kéd&ž­ €d óçóÆDÑRªŠu¾–ÛSÇ>À5å±dE!Ø×’“G4l’FR & ±îë Èê× PlO!\…À§Ö\»L]e‘¼;’ò•P,Ÿ`« [H”E( *½T@ZÚ±&Nši0U…kRº˜O#zC"M+€ï4]ÈŒ¬ZNË´0”N!úûHá0ˆ®ãb±’†±caäˆÁ*Í$u»B0â­ib UƒVžQ<¯$}Î8iuJV„% uî@ 6s°#ªôÚèA[£Òå$´˜~[mÜÌ`J­±@À^<¤ ÎŽÁ¢Ñ»ªÌÛÍe¿¢>—2ºñ+樥$XÒyDäJî>¨Yû’“MÎØ™–aèç…éö›È`ñ—ìײ-\© òX6{n³±aaÕJH¨ÖöT°_¸¿PÕ¾;Þ»_ðÛK•ßã[U‹:ÞÝV8Lm«$(›"8+7nslDWÊ¥E%+}JLà³Úó`°é陂’@p.·’cfÚq\ËÄ–`‘³?¾«$j$iPîDàw¢ØËp‘r²ˆÛï¿Ùä‘LNÇŒ2ºÌÌ`2žËØíÿíTÿNkþ9w°=;¦±yMšÃØŽÒѨöÅwŠV2¨­`$¥¶ŒïÉâI"@ZZ•k’HëÓ}, ‘ ¸!‘¤^À¸DˆU«(íƒØmec/ÐίS¡EIJ’¯•+'L#xñÅŽ‡O©XjJK%µ%"í³ýñ\•c!ç.²©Tàª{A¢µ#q13ª¼5沯,72YåFÏ¡8òìE…”Ž2×e•|‰#mظRê|ت Ǹ7]£V¾Ò˜m?Ž‚î9¬-©o%{&Äí/2ômÉ=¦(¡3L‘Eó]¸'ÆŽI+Ãä:´zs¦.RÆÞ”]2Ù«ò4V P³<@¬=¶¬’ˆÏle—m­¼êvSê”iÖõ„¨”3m0{1ÒþZ éÕMEQ:IH $¨—¹ÜÚÃlW0±D´Üo¿2fGcræp#ß‘ å#ófâ“zÁZ=ÂK4Ìì§‘“ï,%¹¢ñ‹·åTØŽ~-‡&ºÖçõ‹êÆMÒÍ(È‚8ò¶RmÆŽX0):Su· ñj³+mYWjé“èg§ôv3/©óXËÈ1ôåÈ$5#â‘É]/•Ž2ʼkÂÃÓ˜'˳$Y8vŽG…5ÓꔊŠH)øi¸‘` o–)_Nª“MK¬³‡wƒÁ³pÇ€ì›Â¡I+·K*Êâ.Ó¿g’"ÓE]¤Ø-¢M”œð ;úX »ãqÅÊÈî¡xÌc á Ü *óQCI#LºþV”z°©ÒÝ4£ˆl©‘v?6"ìÃ÷+¦a3Ý qa.{9ƒk!CNQ†Æ2+=Ë9R[a»uâ¯+G1ˆ$hYwåi%±njõ,<”å°`j]R…U„¡+ S€íf}‹ßo/¶NV’5¬¡ƒ;?{Ø×| xÆ®R¼‡.I#¿(›™“gaÆGnE¥°Á_1 Ò(#"¼bLEGvbÎêÿô³ ƒy[h«I|1+èÿ‹é¾œŸFÄ­‘yíQÌ‹:Ô.gE“—Çì;UxY‰«;ÑŠ%E×Iº_¦#üÁ2;ç$)Z3²Å"ü}»V€î]AÄX}¤ oU±—} ÉL¤é&ÓßÇÑñbz]e pC;» vÂì­Šâ±®ê¥#(²´Â`iš‘gÝfŽçµ=Â~U[ÀÅL V”úlÂxºìY<ÆÐ¶îü‰hš¶á”SܳŽRÑB¥n!,Nä­§1yì®b…©®Í;¸*Ë @ó2Xøð\’NË eŠŠá¡HM[MVXÊ6Œ$Ó5º‚2Hcú# qò©ÜD6®­%»œÄÎIa¢"5õ4–RBŠA:S "åí´b²j RF¢‰?í"®ûŸ³b¼›´¡\)–nmôF‹2«FdtäÇ*¹À Ü*Åi(åÂIQªvyÆD„ï „‘˜ nL´"}’³÷`Ȗ䞈ÚïLâôÜÖÇK2µ¹­´Ére°Æ4‡¼ì°Ã´Qùº#@®rÂ~4œ‡ëÚTx׋ V!y 9¢1ÇÊy¡pë%‚±½Œú˜ïÕEx‰“MÏÇBj'å\1Kˆg±{^ä_ê冚åA¼b€ØþÎ9’2¼›‘à‚Ñž|V@²ƒ"}’$ÿî™öîV“íHLJ¹7Ùa'éÍ[»JÀ•%ÿ~NÁVz?¬…Mòs¹’6ÙM0ï¢Æ Hä`ÛºHŒ"6‘£2ϰáX´ix·Šéî½kóSÉF Äý•„JT2ÌJËC`ñ67a¿'ÆŒlÀ@!!ÁÝ!ö¼m„C Pƒ,à,½ûŒ9 $>ÜpDѨG [b¢Fí"¬y6QºÈj æŠ#¼›„HøŽâ;˜£‘ üa=ÝbfØ×KX«ci.ŠÄHU˜*ò糑‘´L²ÿܬd$3"ò[˜í…lHcj"ÎÞ G#.Ò,¤«°u>L…e+)6ÐØ‰FT2JYM‰éƒ§fäd¿'æd÷€Eœ–|RÊ„ 9F}êÎr®öP}Áâ8¾ÀFø)ÒÒÒÚ F¤jsîµ°F1Fàò1çá@ º“çË:‚vþáËÏO”°œfØùl¾D|€;3?’¼€vâ6$ƒºúå—ÇMðÀçcw¸¶ CÌá&¼m¼©Á¹Y¤Ý‰DØ›oú‘àyßÿ#Ó…ЬīGÌ2Ž&6`ŒTû`Ø Éæ»¸¼“öªØ’¥ˆò †ßêU÷'}¶tìÃvP¿W‘T(MÉ$+o·€7Û}˱óãÔTX{þÿ,6„ùöý÷í\qíÌÁ©¹B¦_ÞÀù,ßø$úlÅ„l€݉ U˜/,Iú•ßÒ˾Ͱ`±… aä)ÙˆÿÏ*IQ䇤u>ÌÛ“ïÿ-‡Ò–°óþ¶HZ5n »ûHÞXîBþÄ€—Üîܸ>¼cC$JÀŽ*Y¸…]ÆÁ™vbúÿÇ‚6úpx Ýt'e(Û2¯Ÿ »~·f' q°RÞ[’2ñ˜Èá¸$»#2ï¿øÙˆä7åÀ¸ öú޲H-ÎíÏïŽp´¤ý÷†ýùígøÅ“¶ßݲ¡ ™NÁI À¨+÷ây•NÏ*ytƒ¸ÜnþÖmÁöƒûz@ª¤†OWpA;±WØHÀØyä$ÆS껪…UB¶Œq… /¹U~@sýÇbn$¼Œ”X~Mö~ÛD$ÿPð°ö°ÜñÛQ˜ üD€Oqàn\/ŸÙüv$î?Dìƒ,#ŒL±ñAbvdA Ê7R;3+ví–`cØ)ä9R»° ¨·f$ƒ¾ÁK?G×í®Áƽ¹—ÎÁÑW·ÛݘHûƒ¹Ùˆ*ÛŽõʉ³ÿhó„²þ'ïÞÇÆ1À7n@<@ó³ßË ü>ÿQ¾ËþAôÌ5¢i¿‘ª0 B²$–es°b"*|bJîî ±]Iaö(¨8ŽJ¤}[Á`ÄŸ!JKJÁ<ò €Êîÿ§ð7,Ávß‘9 lwËQ 8ßÛ÷ÃwÂ)KØ€/Ã1=ÎͶ RW‹râêÃpÊżþ¼†ú©FÞ}ac„nÌÈ鏸`}÷,£}¿ò õ\ù`èQù7˲óc¿ÐRo$±ó¿¶cˆÑ3¶üÆä ™Lˆ <í¸þæ;øƒ—}þ¿ž%ðÇ a$½ÃžßvýpžÕtÀä—QËq»O”«Ëaþ|Þù=¤`7HÕÉ$žJŒ…ˆTnCØø'ÖÄþöÊáU$P„øP…CçèFÁTr Á‹}¶bÀ7q£y@äáNÇpw}Ã?#³&ÁK(ò7`X$ý1.\ß%$¾’A±fãïæeñ«;˜ãí’›ùò2ìÅYÿ³‡þAÛrãÀõ‰^•cã±’)$äì……Ó—6U`óÆ8’ IôÜ„5r¡0÷6P¡Y&•%<:–$“àn7Å„¤/’WnLÜ™AgÔð%Ô‚P bw;†å}8,Ý‹á€e D$ÊKɉ}Ž0½§<Ü(òÃÁ å¹;mÄŸüüùŸ-[Ç2ɸðUHø;ð;¸ 2þˆõ«CÀîäÜ~ö$ýxFÛ‘¹bIc¶à~ý8aMË’ qðÌŠ€¼vxä åÈÛýBþÁD¹| ‘ÁÚÇݰ²µÊ“ô%H@?\Kòˆþæ,Nå|€ÄíçÖX)žßÐ2}wßÈÛ‰]ÆÛÝ·ëÎäzñ¥õRòÝÝÁ È(ÝWñùäªïÉy}NÃêwôàˆ©`7ˆ'qƒ2«×Û~.<‡#ÿÍ·¦ÂÒ m*~ÝýÛüÆ5c޲ó+G'ÉJ1,“Î?$±b¬¤·Ùüˆõ˜ž ¥pwE*䩿Xö/¿è±Ü·÷vß—ø'Ò{?s'!lj–û"’ ý’œÀóúRvÛoNLJfÝ\–eq…»eŠsp„}@¶æwـ؟QÄ ò˜p#Çîøt”*‚ ¯™HoÒžd€7ÿ»öǦ̑n¤:.ì¬Û€Jž+ÿÒ܆$þ×uOŒ¬1.é±$p àÿõ³w;ù”ÛûI>¤ñ W+̪“¾ì‰<@oï¶Þ|AðG¥…¡.í<’¿l+xÙöUîrä€ì ¾H#ôÿ$Ä8Ûô}zG‰ŒªPˆ@·ÜìGþNÞ7'ÎÃõéjB~G›–ÔWbB¶ÞA®Äö'Ϥ”'–î¾'€%90V(]Š†Ø’@1m‡“¶Z6‘°@¡–CáW‹oIJ· ávÙ¶Í·¥b@ù¼]ï¾"­ËuÝÜ;œÁäGЇéˆ%wQçp¸^ <ì91 OÔ1Ü} ÉËÆÛ7ìƒéžÇ Áy1R‡†ûöß—Øø/#·•_ÒÒ"2©ß‡˜÷n1’۰߉fR\Ü'/¨¸zXfK˜Ûh _ìûíá òîm&Dƒ•T+¿ëéTm·Ÿþ³U³ÒU9œ©ÿªé“²Ãµl\=òÜ#”Nß…îǨöøKxgü‘êÕÅ÷,8‚K#¸1U÷#‰/ûRë¿ÀßÕOÔgrŸÚçN&†X ˆªÅ‘©§ßâ1ã,˜ä¿$¥/w{Rɱ¾Š^µAf¦=ýSõì~Űª„ÓBMÈræó7îøäÅÙttTŽÚ5çR6ŠTQæ]Å”¨dN #ñº¶¶ÂÕ }A½„©}oï½$Yd)ïV¨i€Gd\%#2(ÄáHVÑ ÌäŸS•YÝ—¹$¿²ÆH¾J±ˆ*²Ú?†{’…hæ¾PU³_úZàΤˆ°Y‹ë_~M"ð’/xšÂ™·Ž,MáqåŠFñ";¼GäwbÔºù:r¤1ø6gƒÁ3ôÃtt‚ªçIm˹b üHÙîF¨Vm†Ü›a± ¶ÜNçߟÐlÛNlX‚ïfò ° 7äÀî<ò)ßvcú úWö•MÔ©RÌKq; Šïþl¤7 ùõîd‚³Ç"<6Àƒçüí¿Hý×;ÉÙ¾Ø4Ïõ§øL ±èÄ’ÅŽÀïÿâíûÛ÷þüÞ½öê¢CÄrت€|ì`v'Îàx=e¶C÷)QËsû²…<€ %ŽßýáÄâ›X—<‰Œ·“ö$†Ü“¾ß­¿ú÷ßÓ¿õÂ>HðXÇø¹ ”¿½Oõäg(:¹Ð¸#Ž$ŠZî©í¡2È{R”±rÚ¼…í@ÝÚtê˜21L—>Jú‹{–÷­zC¬º= ô&'¢'-Õ5ÖVmjpeÕ}Кv ƒŸ0RA£úQÕì¦S3šX>5Xj‘äÕŠ™ÑWc#Ð ûÑÿQîÈé'X: ìyĆÚûGèL‘‡œ<`Œ×jÃ"Ûi%)¥f5Š]®ú¤z•Ô~˜õUGÌ/L¨kºµt¶cOaõ>úÇ 6äùH²©=ZïƒiEæjÔ'š £QŠ’I=·N§U]"ˆ  Š…E:ƒ8K‡2/½‹³L75Uõ*†º^ŸÃ@cÉ "ÄüË3b­à}øUÌè¿oÚºö…ÃÓ^¨j QC¨ÓSÖÏcLhM£}Äiïkru3FgïiìX×#7ÕýÓ̦•·’ÇhÓ‹éžGVëÌ€§.ÊáLÞU}çË×+Ý!—¤¾Ò£‡¡4ÇU²™}ÆuÆ@zw­:­ú{ÒÃÍí2·¯¡Ÿ§Ù»Ù-9rÝ]?—†Þ&|­زõ%Ý@ö‰Ñî¬fzÏ’ê>2Ψ~±ôãMôk…V³‰ŸEt¿NéÍYCNat”•rÌ–31fºƒ«µV.Ôè×ÉX>¦K š:žK2LÑÝ+ŸMëÚIÍëVÔÚ…}¾ôë¡ùB˜{ ^Nm¯úƒ®nõ {ùìÌ”fÏdµõŒd˜yeÉ®‘‡Ú‡,g™!´QêúÓ©dS …¤ 7¨¹bßñˆ9 hI:K¥Z‹ÌAk1aØÎ(ÿPía©ÓK8 =í§ó뮟êN -r¾æu7HqÝý3Õ<ÇM©i½'wOô/¨í©²–#ÆŒäRÞ¥‡­‰­%š7–Ò@n“ÖŽ÷„·úÄÖúsHb_7Ò} ªô?P4n»Èê~뾡ê )•Öú‹¦š#’Òúc(õ§Àb-jÞœä¦ÅCêšÓÝDÔ•0<~ÊS}<ö{­º=&•~’{ƒ¡¦§ÀôÛSt»4uÏARcÕ½CÔËÝRY£ÇãzÝ láoÕÈÜæÁ †n–s äøQ²ËiÖ ö¯WYÒêÓj¾ ä§Õ[Ó½Ž}s£ôòè̦ê/D©êÓ=PѯwRë!ZÃê,ü÷«a²™´dÓC1ÒìÞgQâuJÍÈ u`K¸PQÔQ¤¸’Û%Ë Ã•tâÊ!%$éÕ¬¨-!‚{ÿ€íïsþë/d=»¦Œè¶¬¶?ݜԙîžÛÕ~ã:­§¯b²º+Eᵞ°£¬±X/kZ¯U Ì4ðí̦£†ü°½Œ<+•v´úϪ9M¬½¸è[zw{#×Y¬4vRZZ–ízºo)¢ý¸uw®²¶›–Ö lêš9L¿K¤Ñø›ÙJúfíêYgÉd«×4 4kíæ¾2/iË6¶½m½«iÝg§b]; Ô?÷¦†Áh©/]‚ ¼ƒJ|„eÇW\÷ƹiªÞz”¡ŽÔ³ÍkÓ5ÇPz¯çÔ±’ôKZõ \CŒ8Ú¹*Ú ë΃uS¡ÙêŽVt—¥¶ôÝÜöÒz¥èg´|ZûOi,Þ›ÊQÌd(ÉwÙžGLýïõ \á2¢æ ÚŒENŸë=wWJôÿÝV¤Ö½`kz6&Çà²Ú"ÏAtÞ?nMqë+ ªn¥j%ü\9i"04맞͵fEô#¦IëÜÝGÑžÛt¾žÂt³ ¤úEG¥nÚ“Nt—7Ñm)¬ú‡jÇTz©oZgpz Rj$ÓØŒ½?ÓןPe¬êº÷® -<oJûjêÎ#@ÉÓ=M×®šjŽŸžŸfôÁ„ö»oEë£j¼õqÙ‹ºÖ_rÂ¥¤Â¼À\S£ñóË*ü:qÉÞ\ÿþ®V€“Q("ÄSÔtÊìÉ‹½Á};IôÓRƒÂÂt‚wçþN6t?º¼¿Sô7H²ý;ÐÚ}ºÔ uV›ÔÚX댆ž¯Òþªèn›äµöKCê¼î;Eê\˜©n ”gÒÚ¨éw†þƒÕú?UÉŠž®§ÅG f{xÓ}*ë/X5ï·î‘ctFúµè>N–‹ëƹÔyìÏP4·¹L7·lµ¼]L×BômHú~2×rÚŸ—·™MM-zXè%ÓuéeÅ ö½ŠÁõ¿¦ýfÂkŒ®<èíOCk= p4¤ÁuC7¦ús¦š/¨¹-™©oMë,’Ô:“©\úk½?sLôÉ7O4–G×Ïñº¿¢=jèÚõÖ:§Z½ÅjÏpwuIÒt3VtíýeîZqö4Õ­Ò:SLôï¡øu/·Ý ×[W:çî+#Òº‘Ç®õ¯Uô]=+¥f¥ÒÍk«»ˆƒ¦'•É qråéj ~>HãŒÏttOIôÖŒÊõ5ØÓÙ¬ßPzÍÔ¯.jö”ÆÔËi‹DƒMÑ8 yI'Ìe¦ƒp(ØûðZIJضVþV"mTšžÆµ–“Ö:wWôû­½-ÇYÃôDô2ý.«{O“«Œ¥.Ÿuª=@§©±Ó÷#Óknìöº©{›¡ œÜ´mbªæôåù#¼øÊ9×O«¦šVT¥6°ILˆ°’±¾.§W¦©j4¤B”T)bÀ´Ùߌt5_½®®`µöºÐx®”t ñéJzqԜԞæ²Ú_vM] ëëKØ>ŸI?Fò0êzØt’|všÎê ZR”Ul¤XJó±‚ðôç_PêoNt/Q¡ÅeðT5îÃjʘ=MZ½<ö#¨1•r_)9­ì±ü„’qJõ¡–¬jê ¹1Ö#•ªKû'ÐZ»\õ^u¾·JúÉ«ú™Òí ÓÇ›?íëGEOCêM# —HÝÖ:ªµ'R²Zr,ýþæÆhÊÚ‚wÂð‚ 5®fÜ ‘S£:'7Ó>”tû§¹½ec^ft’ÅiYµœ]ìú–¾ ?ã°ù9h^Ô:ªÍ 5ñÐР™+:‹1*ÏVZ(kÔš*õ5äòùÓUG0H¦¤tÁ†´ƒ¿ÁbsfkdÕOþX!*>©æ ?,ѱx¹mX+l 4ŒÊLœãš^ùŒrUà±×šòÀÁ¥ˆð§5B%ñÅíNŒk¥1Jd䬒4|˜vÌ}ÍÃBáÖWö<ÄÌã~ò ½T§ûSÝâáBÀñ¬a…ª•2Â#° J‚G\=.É#ÖžRl.‡ÔŠšrœ ¦2¼ñ‹X‚Ku«Iåݳò¥Œ<áòÙ¯—mâ—†ì+ërº ruËYŸf¼³_†x³¥ÔJs ÔBAE‰˜€-ÚÿW–3÷ly Rw ¤9ÝŠ„$É>¡v<Ï&VAzLíÕ‹„säpÀ­x™`zµ ñ+Z¡ |d3'V¼¡OË/2“#qLþ*^ëBª+f/>ƨ‰ýÎsqÞ¼Q•6wcJ«äC[!†¨Ö²’åpÿœòÅ’–d’‡†(~Dy f ;òòÉ8Võ+é›ÆÚ¦·äN)޾#1Š5‰”³L;žYg?"¼ÜˆaTªúêYâ›?–xV½„kö)aå4räEñÄ¢XBO6&²,wc?Îü‡™¤×s§VêQÕZ¹zðšy6iìÌx¬­NG!7(žNØÿ&³F—! A[»o]-jøz€_È’äë3€Tê§ñ©Q ‹¨@,ïv³ßx;ZÒPy ãq¶î¨£fÜ´›2†$‚Ê•w‚T º«&úfW b »AK½{ ŽØ¹,…DŠ‘‹d+SaJ÷ß?ˆqÉs8†âaùej_”BÖPò\.²Ê@XU˜¼¬@_`X}Ôìž>Þ©“¡jEÈðQZÝyfìÖŽUº­<3 ‚œw–¼2ÚŠcŽ1,\Ç9“ʬf)B‡¬AbÛÑ7`Î\0w3^š¨-”’éfÕ2³9o¦ÏÁ7KKûoáI Ž„fîû0ŠnŽKxÙGãˆã$Ȩd˜ ˆ]ø©ðÃ~,@ä7*ywò Øw§rبtþ 9lzÏ>”Å-ªõdIîZ‘MRIÕë½³°¨’ï-€ (29õÛì( ÿ9ÄÊß™›–F¯…¯7jÉe6€íÕ“h§U<¢“ŠÈyñÚº¹ešµ ùÔA`GÌÎ=÷fÄ©æ)ü'X„†{@ñ¶ý·Ä G’5þ¥îKÍL‰+òavä-nªb ,²,®]„øé †rïnyÏ£QdýyäA(O݇òÄl6ýqâùSãÅsÒ™ umm¨&’ýhhÎÖLWЯQžKmÙ†m2ÅLÅÖµ¬îwžÛ´obðËá„…cÜ’IcŽ!z·qå­žhS”§òÃ6&Œ,†(Èè‘©‘4粪5Dø4ŸÒLév¹n$íŒÙ*è̤ˆ½Ø’‘r,%ý£¾¬ÈŸ©Åƒåc_îoVr Ž ËÀ€ãJÉfs,Q²4Ÿʘ|/IKãkçÈù‹ÄÆ ¸°¡»¨GêMÁïð6>‡=J¿NΈ¥‘¯;KrœË PØ’ÍKuî5sæïf;BD)äRÖ’^Ú2¼×”Ƕ#?”¨Ó ÑÃ';4Dâh# b»˜]3×_´ñ ‘¡†ò7ôê¢S“¢•¬³`C>äÜ8àr]5su¤·ÃHr ÏéÜpÎFü¶; ;}‰ˆæd#‘bOè&êUöUrC¨#n@øh˜Ùuæª2:îÍ=¹m°” ÊNUC˜Ùƒ$WšxfŽz ½šÑ;Î{ªï[#Š.óÈR•D$•k Ýæ"Ü”ÈBÁÁÚBªÂ­’«·Ôï-È#ŽÅ¬§aä4¡­,±]g+\ÌëhØ0ò8"¥šñÄño,Ô²ÉY¡š:à áî¡2"6…™Z \¿­,#gH™/±ÚÓ80‚p ’m(ù Éc°þçÿåA…ÝXCü5d Éò‘››ÄTQ¾’+  Ó®öµy$®f޹K\)ó”Wa”Ç*¼BËÈ–¢d0HÜPC":Jߎ7vËøãêF½R³VÞ.„pY¯4±dˆDâ;,5e2q·˜c¤‹ä@ÍnBM)DDfØ,šTœÍ5h,Å¿Ú]­´Ák¿vÍT¦ª*õ$± {x;ìØ#â~¸Œ^Ò&…Sõ™®¬‹ÚP§äÇýÊä“òK“1%¸‚CzèŽ{wþö, l1·x‚ m¶Ì@}‹'× ’£ü^-¤ÈTgº’K"Ù‚š‘Ù d5ä•Úº :ð…ÇmHd`7šý1³Z¨åXÒ&µwr›¤*Åȕؿ!^L‡šóz¡T×ñ¦š‰+p ’ìï#¸¸7yЊ”þ h} ä—mÝ»{ùÀ«§jÃRê†i :Idm4°–î>RÔ’+BÁ4Šè$°ŠdŽb<œS,Yоdcãí¹*¬±‡mÙ{$ŠËn6î;…y2î=:w=Hu¦šy+À²#¼v š•S“°"(²“Jr;V3ÎY›•{f4¥Žù%ã•Æ±(o㻆 ª]fEæÐýÝ¥2åá!¤Q¹FÚ3¡å$|:` ´&,Cnc²jBi|éµ\C†#†ß®¬¢µ\/>a æ ±IˆÈbÄg1Ên—<*Êi<ÅiÜ&gp˜`p*BâÀªCì[¾å¼K/8¥¼¨_t uQ=iYÔÃÕ+µ^¾,Afœ®Ï`ÉoŒÕž)#‘ű'w³ sЍžÔNóU‘%¬ üÌ͹i¦YÄœÑß’ÂIŽ2+Í<5ƲsÓL*¾ù˜ƒ¦£þ•é ’¤Æ˜!Žðä»Eßsê0£¨+Ò™ :RÛord³ãó,Å;›ªvdŠjjà(ûJ†¬a'vfûMŠgµ°¾ÓðÜzÇ%߸^bLª$ežeh—·Ü;å²õådY‚ˆ/Ò_ƒN!zâÊÆFAŒmÄ÷%˜¬kŸX„vïEZY ó°l„ÓGdGéà…TúÝÝã0ÎŽ‚f™M8ÙS•rË<ÐA0ƒKÊÃ*®êLd€ Ò ²I»ü³K‡Ú;¾0;°$8bý£ÛÅÛ ¤d,b4M•a𶈌lv§^β¼$³5('ZµÉ«eQ{q[‡¹;m!–Y@‰Çýä3QH@»9b˜R;´¢”«Zòl¬æic`ÝÑÎXerñÉɤ2ØÙì:LŠ¿9#”O›eYéGÛ‹•f‘8J#ñ¢<`'äâZ~­… )UŠ"`Êó‘|ÅEHìX-^î|œ3 “Ùù¶÷ÎÑß  n"bw ’©#"Ƴ*4ñ¨âFK¨ãÐ è·Î­e>Í#:21Uš'’IÔ2‰u-¼pñHoÉTìíQ™í'#ÎJÉ)U2Feg õc1¼æ¶]^ÄPOm£1”_Šó¾$!ÄN³…Iœ ødˆ Þ0 Ã%Ì‘Á":÷eÃòícfÚêË2ý} gv€ ϰ˜ïÒtêôÈp\–‘x{–iVUкĤˆÁRR8ŒÛCÂÃÄÏ^6™¶ŠR"¸—ÊÃq¡£(,ãŽ\„…V0ò´Ö4hÖM£!ʵž Tüÿ¹«§%ÚÞ=åK&ípgŠ´’?æg^}ÕÇrW‚Ú’BÏŸ¬jWž%>œÚ(äÍ$=¾Ïmæ@e†(QËWïÆŠN:+,½b”³R ãp+ÕrY&L«°û{ñcksbî6;_Î4£™âO¹3ìäBd“Œ‹³DÈÒ^òeª’4™Ð{ñ2±ô¾.ÈYfu10ì”–BèOÆíÍgúq*ÂBÃ4ÀR§ŸpK9„ú͂뼱!í÷yeñá$¦BüUí6EÕíQ›úzQ5RÒ„d.¹Y£iV¯{~%©Ëà䫨±Š„”R<ë6ðIº‹¤,éX5á Ã ‰¹âà ªt±€îÐ}îOìa®DF"üQ¤ à0±K0âì®;â3`muÎN+ Á(ZŽ7±}.2·Ûmÿø••˜"2LCÆõÉ1T˜îà‰¤ªgBKIµ~WØ‚$ea¼æ‘å±+˜È–ɱ*„¹bxÂ-Œ—olåpbbïFdkÓ'DÓ«(,›\cE‘ŒMÌ)AÅöžÝY]ìÄKG:ƒàꤰIP2|Kñù[:XOâ °Ò`\¹Ib ¥¶ÿnØ#ó »pv,ì[’?• ÌÇeй í¨?`¼H^OGö^cr@`wF 6?¯ÉÁ‚†ßve ÃÎÃM$Ñ>î%âÈÎè»~/ ºùvy}}>ì6J’9E$ ¹Oì9§ÿïñ·ïûã§ Ã݇ïûc2y‡é™7Þ? |4|AuóÈ…sÈ…Sï$:Œ€Ž(›±Ùþ¬$?¥gûrË3#ä$¢@’cÆFXøñäHáqU>ÿa!‘‹Ãä%vP‹7q˜…ðþÝöu.»‚ßRÁcD8³»ˆgµÙø7óÁÃêIi—Ö?ÏÔca˜îJ“Äl¤„*ÿ㸻¶;¿Áv•ýzn5`¬ñÊ»CrbÀÁæ«Èmä2¸fa³Ž$IY˜efE°Øl£‘]˜ò]Ç7a±¿~IãD@úpÙ~çuÝWb7øðXñ·âÀH`ï;w·=ðµ¸úŒ)w ¸ØlK-ɘ1Ûpªÿj¨"@@bX,@X$…«ròUÕm——Ço6þv Ûð(Þ2ÅöÜ·3Ý/#FÀŸ×°ßÉU <'ê™QàÅp …#`ŸÜ›1SÁwè®Tݱ$1$;¹°K y÷Ùß RFãóýßnƒ…Žáf'³±UÌ‹¾è¤2ª¨æwn •f €®wÈÊ7…ÎÊAPXî ©=yœÿ&Çm€âí¨ASõ'b2_2NĬG2ñF$° ò$B‚± ¶Ü†Ýˆ;ÇìbTuÝ‹†ö·ðŸwH?xk·ÐŸ)ÛˆGG—‰oª–N v.§áb ÀçõÉÓ}£p¥›ôFä»ó^já~Ê)Ø]Ï Â”+lW¶Ü÷oí<YâÌAdð¤ûñßmØ.ñ?€wVØ»)nA¹ Ø¡d(|J®ì…ƒF !ñb¡‹"¯ØyVq¿†B©ËįpØ'xÕ‡—bÜwB}QvI#g%˜ˆ—ï|;§‘õ[°ã²ñ'b§f.Äïú 9Þ Ý8Ÿ©Ø.å#ëᇂT(e~cÁ;)åãb<ìÌ€× •À?gT/Ü’»ö$…*6ý+¶ÇöFÞ Ü¢Æä‚Ëúcä7Sº–W^Cíº„a¹2vôìlÓûúajÏûá`•êÄ/”‘õ 7V°_>–ÒKêK€ä9ü@áÚÁ±‚Û‚)Å1Ø1$Ò@,´nUC~÷m·Â÷·š±RÄuPÀþÇ›JìÛ€AÜq½{›r "V%w6*Øqm)¶äùvÆþ}aÚØ÷[uX¿ÊÆw`6ß·-Ì©ÛcÉ—~@*•†,wf»¿8ye ŠHtØöàÌX…?mÀPFà3>¼Ç˜ª„R +È‚6#켂ÀnãÈÉØø%”ìJƒ!ÜnI,Š<°mÉØG– »JâYO±P¬ŸmÁ`X¯eB–ìÐ =, FÄYùËþ¸o»¨ úàîWìo±ÛRNÜO ƒŠÈ ÏÄÊ›íİQɶòèHƒÿvëöþíöôÜK»™ eq¿i߉ؒ>Ï*– Y@r«õ ¤y3û¢¯öȉP¼HØ’HàŽª<îXxû ý,'ñ÷fú¸úá2 •O×fE ãŠ%G"Àl¡yr;#ƒ0ÛŽá%ÇÔŸ¨Ý÷fä.ü@ãLJ“¶ÊXo¶ñ¶ÀŸH‘¡AȺ0EÉðÞê¥NÆFfmø¯†e*§bvà»òG, ¿ë“™uNÿÜ[qä‡Ô?Ü=Ûµ½·†olaË3?ÙO‚’ce<¾»@$ñß~&MŽßV#×” Š–åË`Tò+Ȇ݀bÈGè û(<ŸXG‘€ßmÐãû,ƒñ±Rrò( vÜHï ’4R‚NN±If*#ÛÝ„JvudWb<ÀwV#©<Û±þØÎ쎡Oƒ"©%€#õ»2“!-äF¡Wb U?4 ÖX'c›`FRkA ‰ßíòçå7'‘ž8¯•2Ï`œZD) vµÂCÍ·'f °(óö.ÁžE ?|v]ÎÄ€@Zµ3®{0òI9c~öï&ÜÀÃbÈšÍÂÒ(u4Hz+-¡)ú+ µNúIiSpZÆÞøÕ4” …Nà8·Ð¾äŽE£ÆÊ‰%P…¡âòB‹wYÐÖŽP"x@ŽK´dŒTÁ4•®Ç,³ž×¡ï°E÷Ï¿iU–'÷¬ ïYW Il´‹9îKÊmÙlZP&H£ß‰$ 9n®ìÄÇÜ% ±²>jòÌóFXâ£pòYHd‚h¥X‡¡Ç°9VMgïÐ÷Ú/xúÖ9|ÚàcÅÑ áoÿ È†¿öîê ™uØFWµB’$ZÓs¿¡ÑÙJ®Ä1B$“}@ôÜ÷ž>ŽŽCìx’§pñ°HØó` ðÄ…ßeýx²Û‰b6-¾ÛçÉ*w'Îàí¸#ÆÞWý^,îäòHì˱$2ì6$‚9)⊠9«f„–W÷“þ£¾é]kè@Σ$žÏ}¼´–KÆæu`á+YÌc°Ö’’r¤’ÊÍÛ@›Ç—b¼†9+ž´i1gˆ\@—µ“‡ú™ŸuõèÿÙôÙÜC3‡ûóÌvä:«œíG‘¥€û„àÛ’$O¶T.¶’VI„©*”VY#ÒÀ¯>ädá(×.Lÿ;ñU¾œC2³&ó‡Ú2çxdw"0$*°=±2˜é©‘ÈÊ]˜.¼ƒ~G• •C* xât°ªV0Hd«˜1ÆÈÏx‚ÊY”x±XȈ¤ûƨ”ÝqnlßM |ù;ãff–œÄäe,®WÑ ¤é &$ 5ͼ†cЉ¹‡oo-ÏŒlÒ´d …wI(ÚàˆŒ²1šnÅv´¨™³Æ2ñÕ'K^u;´²*pD¨$ ,H^F’8áXÑÌdÉTQ$¸ã«aõÝ’¨ÈŠÌŽí ¶™%–9Š*Kg¶JMhŠýG5`)dÆ}#ÿ”dŽ6(ËEJ!a"ÒŽ îÝŠýÂÏŠŠgã­«ŒÄÌÌ“ ¤¿ÐZý­?gq¶ÎK1öbCÙ£µ§lsŒ†^_~ šCË™IšHÝW¼„^9¹ê5w)%¨„¤‚î0 "`1yƒÌ ;H 9$FÍ,$–iƈªî±ª„ ± !QëÅ…C\…iêÕ²=üqd ´d­m"©éP‡a¸*’BÈõ» 4~,ï¢"MøG:xɵCšLÃ×G¶ªÝÐÀ´lw$g–7iXÚ¬Vg13-™Ö#v©Š­&[0s}Z{¼²ð1ò‘£#˜,ñ«78V'uÕ"æF9x²Ó^U²LJðøž’C8` 䈼†<ÄËœ&B‡ž@Ò.ý§è†ŒòfXÁüœÐD…œ»¨CÉq4æHØv—9X¼A¶Í:4dHOè©EBÊœT)«Ø³"@+˜ò¯{œ•±©ñY‘ÙCuÕ’5;¬b4ŠË±B½£n6& Hhà/æü±ŽýY~øð¨NÚóŽL©ä‘Óg #¹ÙÑâ’«ÒÝ–ˆHóÒwjyJ¹]–ü]ÔI«!%¥œ°í»ñµ¾˜b—æÛÈ=æ×÷Û ‘¿U†DâüÔW•ù²>TZ@¡ïGdwÜ­b@ÚBòî±™ZQ$…åhø°ç'«ËdCÿ»«»Ñ–—ç£ò2 ÛvP(PÊÃ`IYEÁ Ø©U'UXä,¤¥|ƒñkðD,2(zŠsäÊαÅFû¬‘DЫrPˆšX«1]¢­'ßt‰íM#RZ€F« ùbD»‘-‡HxÒÄvvíg2×¹18@¯*bPU‚¤A –oÈÎ#¬4nÿ'jhÒME µK‰ † Ûx]Xcß™ FB™{l?¾feh¢‡þÙŒj˜;Ç·oÁê”Ê$d*“L$’XÂr ®™+³#»í—hUZWXíâ7ŒÈ}4þ†Áæpxì…Êù±adæZÛÆ‘²I´eUÇ"ˆ‡vDKQñk•ÞP}`ÌçA)UT•)€JC¼“'kû˜¶4QË/0 ”’–$•»XX̆°mŸ–gu’7ĵäàÝéM…ˆ4‹ ’†Å8–µì“©ÊTÖ„ãUrç+*Ë€$qË+HSnkĈ&¹V´±Ëð¬ÓrQVür"Ù“ÓM2ÜO €^*ÍéÇrá{èâ`àò k¹ò#‰ž¬3G]ä„¢ÒøÇ×74ñ‚ÁÇ(·²F¨£‡n9À,û/Ư4¡Öñ·Æ!º¨S Tú½ šô%L„ëW¤ Àf{—ÀƵôêÈøz”åE‡«xbä^æ NüãR‰³EE Åûpªò+ ¤o&ßGËNM[ n^šrC¿† Ü•ù£@¡c•„¯4kªvÉ/fÝ!Ò÷؉¤†â*XÄ馚föî†æ’ùº ‡U);³H&÷cñd“!`NÐzŠkM†À`ͬb[IÍj¼–èš'q8пic–»¹Š™šUŽéíÒÉ<±YŒ¤éõL²Öša+ Q ]®A,,Ñ,=™}:º¥)Id¹%Ôm¦ÐÅÜlÛ¾«Q˜÷8 VV‘]ØXo·àC,ƒº»™+ˆdµ•N9‚\¸ðMÜ(¥¤@cedxež‚ #`ï^kP¯ÒÉJS†>toG%¶R§Í5 ðm?Š¿hXi/ЯaÌ6残ͼë˜ÐHc Äיɚ(ÈŽ9#Œv×­'KôÃä‚äÂ2ÌCÊ E8«v–/¡Úa  I,ã’R\æWYË&¡J%*o”L\ø™¬ï#§VR ¦ÎXƒ¤Óø¬q+¼`BPÆ‘„‘Kb(Ö7° efyÔQX“šG,½ü”zö{xéг Œ®wpK œ¨$„&99ª‰¤Sâì@­zM´õžGúú!i­/Ž¿«²˜;_)«ÔæK*†­¦Zö)B9x×±RG¯bôqˆ²U'Ž#QVr…CÒý7Ãb/Éçˆ6¤ú(bk  €©»·öî¾­¯Õ¨ÐRP ¦RR à±ãÛõ…ŸZ QAI \,Þ֨ŏÅZdxÔ–p̬B5™Àh™ Ä5‰§UÜD M©ë#Á ÌÑBPfFn1ùŠSÅEa ¬d(¬äÃFÉ`âIFÜ’XãèÉÔ=…ÓØdÉÕÚd–8ä`ð,2,¦ËLñ¢šñÍ*¬²]^lp^xõŠ~<úXnžiûøÌ]Û5¥¹J¥© Y¿ ™*'8ZÛCñää®Ð"„³(6fg•–oV©–]V(V’¢R &ãbÎZG8Èæ>)¦T5I$8.C86Úøòú±™bDíÈÆ-í|5Yê3nídR™öï¬[d–Çõ—âs(²pÊä´§~e^c$pªºIG€ÙHãá© ŸÆÅx²Udl”âô»M£ Û(gaâo›Ä´ªû÷Õû%ÒaõÄ ;ˆIˆ$ŸP,&•Ã䵎W *Y†…ò˜ üG·VìKJ3)FG£Qì³W¯·É ¢Ãs©jªúIÏå*•¥!EÀâÌI,EÉïÝ++^šÐ’RëPHµâΖ>Ïl¤fæw*vY$IŒDŒB¬e•ÿê)ãZÜŒ'ÏÁ½y£ŒÄWÓœw‰Ä*¤ÃæHˆS'dñ&$ŒBۊѤ‚¶bMÆì»Fl½3¦È8u”ÊMŽ[<ƒú©8|r[(T`RûÕZíɽAõî•ÅéÜ<qëm¤–ÜUå[H÷›ã˜$Ù!XÄ")Y”rŠIž,“Zr{ÝÔ…>¥–¬´ !Z‰dúX LÞ-ö›âkÈfi¥KÔ.¢YÁyaßÈ‹àpȬ¶7rc~O,†0!y_å }‹0×±1q‘ Zý‹n·1¯ü/Ó¼•Xd‰Š>سÂ]>°F8@’~p# ¤»ñÜOTËPR§J´†@ƒé7}ÜÛû3'§æŠR C)) •bþÝñ_ÄÁP#Ý:˜¦—ê%WоK¼Ò3+ÔȰ3ßpØ6„WnÔj$}‘R¹Ú4‹ÍqYTDæH»P,Œ”Ì´­^¬¢Å}/0"Ķ9ñõ5ÒÚzžk=™ÃÜ{+RŠäf†H§vµN¾5æMo+Õœ­·â±ÏÞ§f§äKè—ÿ ôïpæVR¤IÉtHª# ÅdDË2º2ÇdL[Œ$–’i°^£– ­*ºA`Ä(.ÆÐÛLâ4òYЍp¤Á!€!¬[Þ1_û‘ªxŽ4eKÍ€Y¥P–ä“›Ç4_#Ïò<VrjDø¾Úíé´FßcÜe[öâ‘•e4bˆ¦µ U‘©VæiY©Èå‹dy( ký+Ó¨M‹7Vkw Ù[3;ÆÑÇž ç¶µ$¬Ã;]ª’§oì&Ôºg§íãñV^Lˆù”q×,D£cfœv­B°É´PX» ÈK_`ñ\5u•]ʦš*ú’•êÒÉÒÎü™Ø„2y…,Òy%õ(Îר>ìà¸WX+HÛ¬„™gh‘YDÜnãË‚>6F~Wì1lRCh<®aÂwW^(dѦˆÕd D2p•ñЯü©ÀÉX•‚§¯øm§Cêrm+o#µ‰!,DŃÌñËIÝÞEã&ü¢4 ÌIè½5Îe³4ìü¨â§ I +´BE± ë$ALI"ÃÂI'¹o¯ã‰ÞŸPËÔME„+M0çÒÒK¼¼yÄ—’ÌÓRT5,° ›àFàð"Ø…i%yƒúË+ïö‰’5‚Õ‰e¯‰;ŠÐÇ“²8ÙËıZÁÆ–-€¸ï!…œÆ8ƤbˆLQÅ0$µò4à+[PùË¿Èz<™iön'/å¤FÒ1t+°¤]™¨0’J)®ô¤ycªR’¿¨.ºÒ˜9Kb¬– Ù–Ý{ fH¤Fƒ¬1E,ÑX”´ÓÑ…‡Ë˜óc<È®ŸRËVZP€­J>—H`Ír6ý¢DÕ’ÌSARˆoüTCˆàÄ˳}ð9ŽQ ›‡‹oÅ9üß•L¦8åKƒ‚”Æ[,¢f¡y¿‹¤â Ù½e˜0欠¶ÉÚ–œq2é–XZ˜.ЕɉFoãm©ÊÍ"FÝ–6Öé¶Jõ,‹Tšjô®LÆH7ïË}ɸI Ï%YËÈ(Ь|Ûf“~^˜`˜Fœ“)1ÂЛŠÚ#WàßÀh‘š6i½šì•ìw«¤j–©•IV ¨dÃf5wìZC‡ðÜѺSQ`8»ùæñ».²N…ä’F+2¿nGN/+É1 ‚>–lH~-¨I°¶6_HŒJªñ…a#2!DX„Îä9©U{ˆc®ê꥟g’-¥™i 7KR^ÍÔ·bÒV«Üøf§à™ÊZ0+K;ÂêÅV±ŒâìÙ7‚+ô·P#Ë’!IIrd†Wcj3½C²Ýn&ÓGÚ’y”1—ózšú *^½D0¸!*r ¸v,=ñ}>½DêN‚›W <€ßiÀ&RT¯Þ% ä™Lh¨y'y,ÏØïŽÉkÉ‹¶ÒâêÅÙU’TÀ·m^0xI ˆÄÙ˜©’ i•UÁç6"žÚñÉH@WÞ}¬´Ý=3[j>BÃß·j2exlOÝ©^ŠXà <ËK0h¤-¼R¹ˆ´3°_¬q¬$¹‘媂m¢%š:òW†IÉXnHá²V¤‚:O¹ÓJº3ø‰$ ¸Îå˜nqšµ5Q¨P`€cضÑþCažùŽAÍÂÈï,»£GbĦ(Â3ü‘Y¦ÑbžÓ )^ ÑP Ï•þçbæà±öÑ#AĬʱ’Z‘Zg™ûœ|O)žË‡%*}#wCåž8Øœ2Å#¢–hš"\ÆÐHª³ÕqÙÒ¶U/Ä;îéä»íßNç¸ñr%‡y b’:Ê<ÞÞÎb>7(òïrœ {‹pÁˆ bÜb°&E„†í}˜[Ž'µ–'e-¾ýí‹Í,5À­4ÈHŸ€K2ž=7;@ZØZïË—â›utd4˜¤¬¬CÖÉ#+²‰&ÅD©g 칸Ú8ÔDuæøÙÌ’MÚ7…Ì|Œªé&ÂDñÈÈ*$A¡ËFÖ\%pw’1 –¹;C‰ØÇ¸²ÄÙ’¤Ó]•— ·Dø—C@Eê’ 9nÜoÝù ýœ’^`MìÍ»~}­‡§"KE’Wib>ñI ʳEÉ"¨I–Å…_ÆÙ”PjûÔˆ ›‘ʰY"HÓŒÅÏÚ ,Ëña.¥'H&²ã7•r2ß’ZYA<ˆÃmÝ2q #+¤|ž0ùîD»´l‹áñiÌcÖù‰Dª°;ÆV2wWvò›”|ÖWt‰~lî­üým“Z ¦tCÌÎHöp<¹ûaµ`ÄA›óßòõ At•d*»D#™¸0æÝ¶¬m»QFR¾š²Êk,ªíèÿҪ͟’2Œ6ÉY’5ívÞBÂ0ÒLG7î1 ½–P×£üª€x5ø(’Tu¡X¶ûÉÚcYDJÓnéŒuv…¢ËMűz°}-‰N›>ãìuyyer¿go,#r“r‡”P‡æŠ+Ï—%õÓ$ãvØ•ü†å™¶ ÊÃö<»oãÒ]APÈ Fwb^a²ª¢y©*~®wØ€䈂w!@†`Λ7½ðØ`BìŽåXÖ0üöØeP›l>òIÝ`C/" (vEgIæã¹·þ@ À Ÿ˜ýžJU{J&8› b~­+nynCÈÜ(PH ¹mÇ%;>$#1<²$;n7úÿDì|xñ¿§™À8 ½îÛžþø’Z]¬à»{\~˜ÓH;©ºÎÎ6uÜ)AÍ¿·oú¼AB v2+.ß­‰ÙP€J³lÛx ÇšíľÛx õßr<=$RåÈQ±aÎ ¼––*R#ÁT*ß~^UX4aXöb@P6,Az}<†Üíä¨W“Ü”`ª@pñ²R)W`Xý–Æé`•@$ ð¤©Ùxýà7!¶Ü ûzbI¹8xsé$4mÜþDlOljBHUÈy™#b jܶ¥•dâ °UaÈìÜš2¬£ÒÊ–ìâPcUfsÇšîŠÂQ±;!öÏwS²úØ?ö‚ e-²«¶c¸€FîAûy)oî¨ö…rંX;b<;óØ3oà}v.ßÚV’N’âî Ž{[‹íQ_t#Š"@OŽ(xÙ¸ ¸ñË}›Ê€Fþ°‘¶Á‚±¯ ÊðƒÉœ€¬„ì¬xÈY½l;rNvVî…ˆÿéÃn'rÛé¸CìÁ‰bÄÔýv—#Èãë%X’ì¤nC*ÿh' ¹Ü:ìàþãë ¿TrF Û¨MößeB¡ ¹<¼þˆ'um‚Ä‚¯”€Ðî8ûùÂ;-ÊÅ™C¢¯bGÔmÏy ð ¸$%¶Ø1>=4bThÏ& éÀ–·ì€ñàycÉùqU<‚ÙwSéõP@;l@Ø‘±U ¤?Mç‚øðžšÙ”*ºxR ¶æGÜïàçö ‡;¨ ŽCÀ+  —:KEï?­ÇŒi´eš9‚ìy¯¹É*AHUû‚rB©`O%O'`vâÜ·;õØçl·'P7å¶ÿÜ<’¾ y伆ÅãÈ6ãqãoý¶áHv,Á~àˆP€w]—üìu$ŸPvmÎìOß}—ü†çû‚@Q¸€O€* ‡ ö‘ú=°dêXH{8p<ÌX·;œ`¼)Wä°äw>6ÿ!X;®ÌÃu#Ö.DÛu¢è)*AÔšË@WÔTt¾Mr¶k­uf2L6r;C'ÁÈY¹Ž–D‡#jkW,Jn*¸ìº}:¹Ž•Jn§*Ü'P-ô—vçÞv¢)u‹¨Æ€Á·`ÁØÈc<°||§Íû…÷P3½Àkþ¡uƒ¢9-]Ò·kÝMK¥žÙz%Õ~¡jS¢úÓÑ},Ô:çCj} ÔÌv‡»¨:=©pú¿TéM>7W9E)ãñ™›LÑÔÀû¡÷1Ô­-ÑŒÕqÕ,%½[ÐØú…“Ûú í÷¨ÚŸ/%¾ªk}'‡Îë­9׌}Ú}8ÎÞÓšú‹Lé«+S­Ž©ÒÏX±µ¤?X'КjN¢bº²µ,&·Ãh|ÏOhå£Èd«Ð]¨õœÕ 60‘Yå稴~Í2£fñ3Ö¸ÿ"<^VÄNoeýŽbiùúÍ N!õ]zÒôß®GéöFZº»Zgº‰¨1Y Ž›ÌÔ–þ. W©ów+ã-ÆckZZx£‚}7¨ “N¹ZTC‚µS¨i·¹aê°´á îL‡U¤„±dÊ!À܉&íÛǹn¤t. I©ðk¾¤â¯ûX»Ö—A¨´>ƒÐz¿9Ô¾–ß¹×½5ÎaºyÆâc×ÝB‹?ƒÔØ]ŒK1‡ÑY[:}!›!v ƒû{÷9£5¾'ÛF¬×zW)Ö]Y—öÐñÔúZ HÚÅè~¤ëŽƒû’êç^ú™CKÔÃÔÓz–üÞܲX~鬵KØ™ Ö;+.!ƒÂäð™+£™öÿÓ}M„éŸÕÑk]W¡šóÔ>ŸåuV¾ÕZ‹UC¬4÷Í|.KTj|…ésÕ%†üôž†¤ší,õG¦«ûX{{é^½›¨7uN'fßRÆ…—=”£©³X¬®+-Òé3© µ6‰ÊãìÇw@jM+&¦Í5>™52¸Ë—Œ%4ä*]};¨¸ÓSJÄ$¬—IùÓrÆH Ø‚3Y0 ]R¤B‚½ З$<¹÷£këG¹?lQõAÜëOü`˦ŠéTôTõWKzK§uv©zÑc¤Ú«Ij\&ƒÒšg§™ÜL©žöÔõtŽ75‡½j}7zí©±É~C§^ºÍÖÝ1×Þ§t§¥“W»[íít¾!°º|¬Z«3×þôë/{MÙ×V°8ýA­ëhíGŸµÓ¾šêG[Jk~¡E…ÇdÖJ÷‘'í3£¸'Ô ©S¨]S‡ªxŠús¨:¯­FÕÝUê6RÄWðúbMk«²Y CK§òÁ•Óø}ÊÕ(å!‹;Qc¼ l'´.“SÁkÌ.rïUº‘êiC¨ºƒÕN±ëŽ¡uj!ÓÜÅ}IÓa¥z£©²sêM+?Nõejš³Cåp÷+ ?ªj&B¹8¢°–+'ÔʲˆP&¡z`•ÚÅäîD™C3’ÖIr€ò€KDŽæ7Š{Gê¶«×Yn¢hÍ[ÕEÔœ¶’‹Eæª×ê¯Fp=÷¦WU&b•º}@ÐúJé“êL¿¦í ­ºyC!‹ÌÁSPaò9[úƒNM*ˆqžá:ÏKÜ>¦»êFGCè][Ö|gOô^„Ô=%Ð:ÛFºé¶g? “é·¹î›aóýL¥Ö<ÌFY4ôÝ_Ôz7Bdu·òzB: £ÛΓt3Ht‹#ŸÔØŒÏR5¶¹Õttî/Ru;¬IÕRê-ý?¥,ä§ÒZQµŽ¯·=KE鬞wPe4Þ‹†u¡¦óÚQæÌ*sV»ˆ}¡ôr[ÔÍoª2éüWQ+õkÑ™ú­¬æè©xËÿËÒÖxî>B]K)C/ÿ<‚(1ËB<ÐþWR;ǹêKÉõå¨Ó j©.¥ ª  Ä°$.Í~# ŒÖM5k( hPK=0C‚’Éf /ÙÚOxvO®ÝL¡íÛ¥=G—-:‹Rû¾Àt{QZ›Nb)PŸ@Ý÷ã™öí’¥&(ÑZØ\Œ:¯ vñ±G‘Óz–Ô”­|©f–Z¹í×ÝïVµî¨èf:­™ÖYîªuæ¯I5oHsÞÝkhn™âtöG+«áÈd°½{ÂôïOCüí,v™‚Î>µ®¬TØ{TmiéòrµÜEÜÅ{JéN_Ñ×Uíu2ÝL.ºÉu7Jô§'Õmk”èF—ê– µ™Ê亃¦º=‘È6ŒÇj»™ÜÞ Õ¼ŠRÜj¼îk7hÇ•¾Ó‰¦ 5ÒÝ=н2ÀUÏb´OµÖ7©ZJÚ¯8rxÍ[ŠÔ¹MIHçžÁËOZLæ_*·kÚ™ë,ìbŠ5 R1YÈu5±øÂ™J@ ·Ô±¤ê!€Êå§Nk&’*\+H •AK˜àí›]8÷û×§D4 ®¤&ŒÂõ‹\û©èv§ÙÚ*T1=Qö㯽äÕè¬j8;õ…êf‚Ó…0z†j³=¸¿œÇj|U ÆeòPÙ ï#¬ýæYèŒ:ïA?M²¹Î£tgHéÈæÂÓÖw:ÅÑì_Nõf§µWŒí¨äÓZÂ=KÖMZžR •0§Úînõvªëˆëz,Oìû –tHúkgJåméΆõR°ôůjLìú‹Kua”×g ™ãi²×©MœËä!¦lÚ“{0«$¬ªÌáöýÒè´—Oô?ðš—kŒ?St†xe­I­â×ø½A—Õ7umÝyÎ<öo1¬.êMcºÉä.J½@ÀêýQÊ¥„Ê[FC#Õ’üBTRÊ}EÕ ¦Íéy0ñ øufúj” há‹L¤’7³¸øù•ký@ú·ƒö]‹×¹-K m{˜Ã.v…-!Ÿ:K“µ¤õ¤šÀé9P­}:7Ô ©2°Æé¡> KØÒÖ£xÖÀhßp}[Õ]pꆑ³Ô-q‡ÅéqÙ>‘átÞ’öÕ‚ÖšF]1ŽÓ]0Ï$ú‹«0ïÆåò’kÌ9IdÈ*A‡¯E­˜ç’ çgÙW· ˜ëTdÑ9(—#ÐÍ1íÛ#~¦©ÎÓÉXé¾ÎÑÎéè[$¶E¿÷W<^'&³GŽÖ•Äct–fô˜Z5«&Ô>Ò´V;\ê^¡iŽª{žÐWu޾“©ú«JhOr]QÒ]5Ïjס§±¹«ÙžŸa³Uôäô3Xý-ÆjŒkÕz—*Õ/^g°^#'Õµ¤ÔZUM%!…BŸHHb {°ωœÏO^Šlµ;!*õ( pmÌŒ[ñJX PP¬QÕ@íîµþÌìÑû’%¯Ê;Ç.2É•É c4@DÒXp /•"I#WvrîZ6]Ñ‹ìdTühÀ¼ECoê³üŽNÜ”, JïŒ3íÙ±Œ„ÕåÚÈŶA”Ù¬fˆÈTIbÖåêu¤Xd-œpÂ#'É$²¤[™àÔ6ÿF<×Õ½V’… nIõ‡x6 yØ${bŽš¤üe˜JJ.NÎ I‹;)ÆxˆÈ r@ë°eòÊpoä… îyGf!z½£Õ[¡ûlÅ¥ûR¬jÆ+†t+pGø°•à¥mP±¸¡UØŽ¹Š Ëò¹¸µêGgE_ S7&.î˜guØúÓ¾«Ôë—ÅA]ÍäK]ÊÑ@¡kSi[¸’˜LKº¬Ò;¬Ö˜Aj-%¡è&R…Dþ%ÒXÑ2àév!À ÝÈðW1U UH T¶ãiýñƒKÆ«¶È›©“SûŽÒ?(ü2ø«‰ 6ßÐï©lƒL˜+X­,ÆÍ&X¡·OëÂâÀÒO3HòU‚ -j%i`ºa‚R±¼ÀG&…'1HiPþbA$OÊáÎä±±ˆ‡ÌÔOÁ¨ÄAiÀÒ÷ß{6&ú,Ò˜QŸ]Ø#‰O&_.Óhæsá¥xÂ@ÎyD>#Ô‘˜q,x’§ïÀ§]Îܶ3ÑØï± ü@t~V8t¶)¯S®ËŽ«C$µ+Hª!Y#E­$‹%g1°+Qxb*ûdi™¤ã’ßÇí°#k•9:‡Éd>7,ۀܕPIË^‚ÿµHø@*Ü7s{öÅô*Òø4Ž´‚†v¸þ°{ï8èãõPíU‚¬2wºŠ3”2X‰Œ¢Õb;É%ã\°¼H:¶Ê7"/츒À$¡Øñ±Pn|nÓ7]FÌÌò",‘dYæ’ZqE¼–é ¢Iãaë4]µ¢•ùÍ:«ü¶i`}Fn«Íìpòþíg£'º€÷‹m»¸ü{o'¤zZõhôÞ$·W»#±“«+óøñ‰KÉÌ >ü”¸ ÍÔyoêáMiÈÓ¨UXk8 í"ý£êJ³k:“Ü Àò óï>$€‰V,£Øߘ-º€Ž_­™‹¨ÿ#‰ðCš@ÉQsÝŠȹ6™ ¥KÜ­ ¥j´‘òu•‘ÖÄi-NeqÑ!/|úƒt n‹uÊ(c“²„ß`;?²|Θ¨YÙÚD‰ y… 4ƼR*Þ¢ÎÕÕØ QBJµ¶•ˆ:OWœÙ+<µ2)fF’Ád¹P`ÄLCþ¥ð³ò줒*‚àƒ™fgçq &ÖT‘8•ï¡Øþ£6ò¿Ø£Šì6¨ 3êšÂ4ô7b¿ ñä–X‘cZÓn$+Éâuä%Hÿ*D^h@™Ñ\¢®¬öè¨2˜ìCô» d2=Á¹Œöß”a—bM·Ø*b½ˆeá–Ž@µåªå†`Žò‡c_óQ*#+LV B£±åR¤æ)zKkvÃá¯xçpN,­U•S©?%Ü=»Ü=Æ%ÚJ5}9ƒª¨—2–ìmÜzÐ÷yˆmeIû¦®ÐHêÆ2ñ•aÞD œ‰(T—Œ°,x€£ôËÃn[’ô}GôÍš‹§pk=¼|&<.%Ê-ˆà„BnÄÊlE+YåD9Y¥W'¾—)1]®Sfæè«ò` ÇÃH޽ÐAQ÷à›ÓbÀ ›ÕUUe²L©É)ÞÀÒD‚~Âqu:”ÊêöÃåÄnm»G`ÇOb„ëmUµx ÉHî÷Œ¯r$Ž?‘É^EWg GÛÇ8ž«Ë »£IŒ?©RY{¼ ›†ì6 Eà‚YŽÎ6'`Ê=4T‚g¨¤™ÑãßûÌÕ‘¾n³W券‹0ÿˆV°« ¡G†{5b–)E± OÛŽÚ¯'zÐß)L*¥f´¨e(§A ©`?ø‚Ï"I³÷"pÔÖŸÅUÔ ¡¥ CNý»¾ÏÎ:Û"0⪠oºªÀmÏ nÛlvU·`Î7béÌP>¥Ô*ÐB¥£ Q$jîÙHšVŽ´¬ö#æU»2ðIÝ"5•a2dKT¥QµªÅ¨äÖ¢âcfúË·xó-ä£ïÆVعØzs:G¨µ(žDXMÅÞÌlŒS!ôG²À g†í‹ŠQS$LIˤ§/™Tá)d€[æ wc2Ìò8lJ½Dül¹ Kkà†sØvŽø5ºFþJ¢¶á13sØ’ž@#s°Ø«.ç“°{««‹Äd!l‚Wí—`Z ­LA»*O´®Cv÷å'"T{µÀuRfmÕÑî@­´|^Fܾã³Ì $òTI • z­=y(âbŠHœ½Ù¥E€¤óF¼l¥# c(ÈCï(T•’"XPÈ$ŒÅ5 w.æ9b[ž!°Ùµ‚¿PvÃ;ÛósôÁ/‡øÌzöÂEümT ê)Ä¡XKçˆ]š5u »•q»xÝ¡ çõ†]Ú0ãgV.ÄFÀvTÛo°BúçbmUêÚ©ÈcêHc6c`yAóäÒs}˜.ÞKîÎå}tªhÑ“n<Š•k€mÈðûRÎÛn#Æå¼z©cùÊ:TdÄm³I¿x|^•¥T’BÒ”°¼éK ƒ»y;Æý1Š÷¡”E…ÐH›’}“þÔ± æeÝ£Üc6P„Ò¨>²îm" íùÍð#êØU©ƒY%VWµ’m؃1GIœK]K4ÈÌ7”Ìr$°E"°r#ÉÁUyÑ‘‘äî<‹'mÎbä,ÙtХС…5kQ¯£?V¬C5\‰£w†ÆI“·³HÑÔEÊ3KÛš¢.ÿ.Np;›— Å #HK˜•^PŠ«щ’2ª'Ç$¼p¢˜°Öš]ãvôk¦2¡ÒÎU³^?7ö–ÀŒø‰_¨ @$Ü=ܱ`Ñ1†‚ÇÁbH0«D‘3¢Ç$;S­ r ñ¿LT D¹0 y—t IV0qVo¿"ÆtSÜRˆ‚¿7ŠŒDÜê@?nHcœÉß­bh˜I!SµWy‹Æ ¡$Þ1tŽ6-—K˜ÖŽÝOˆ•å+ÛvpÀ)eIJÊá^?´0€‡Ž$qNh¶–mì)>‰êH¼\‚d€¸‚D†aØ60¼’×>wsk÷ÙŸle+Ç#Qÿhn>ÎH—Üá'¸²â)Ehä¯#ñk $f6“òοÕS n_ dáÖc«Òõq§¤Ù“‘°e*VWáøøÇ4Š;2ª¯˜ÞʱlêÃÕ~3/q,’§ a-"% c±Ã‹ºÂ¼7Ø  ‘&Æ*˜ÐHÄ}'®ëiœxƾ>Å’mÙ°Ò$‰0ÄèNÉ]‘š)„¡Vjªdí‡ùNª…öÔhÕ¯—Bu+P-b  ¸°mƒ‰ïy ´iW ¨J0S8,Ló1bÁîTö䮿nJæMوٗÈmÔÐú…#õõØNìÜ‚ýŹqÛ`wXrÿHH’H\urAiù‘˜o* q}”2‹…BF«ñ F‡-Êì{|5”’¡ÆêÍ^F7ÂX‘Fëy%ü«ƒbóÆ ö`OxÂÍÇ×>zfsj[r6á‰ýŸ|þ#”HŠ È ²‰Ûs·ciÁ—¼Tº²©TRÛ«øÈ;†@~¥†À–bYNÍÇa¶IRÁʼG&æî¡€EÆá‘Àª૱ŒìC£«Py#º*ÆÒ£q"J¼øFLë1 ~KnR…«È ’î…KÕÊÊíÿ#¸ƒ˜$±–4·„ÂÍò#—t–¹% ¯$7dÚO¨ÿ Î; /}Á`íÚÄm~îØ—ñ «j5DÙÁò[¿`ð\K¤b» 36Å£$l§É<\°eÛÈVUV?÷óæ*c]Ç%K‚ä–'ve݇§‹Êbý2³**@s܉ð„ýlßçÐxu^¨ ¿ÃJà´Ã¸÷ DÝ–6ã`‘— ÆbM; cu^µbë,†3€¼ªÒ¤KQ–ŽL°$<¾B±úÀ‡òÂD«Å7õá™·qEnEàpij½­h´‘‡þ!–PPîq°ÙýÞ|1³És¸vRÌ­Á/2$pyo±Ýë ËcÏp…²¢°G@¼.¡Q <ËÄZ±ìØ4Èx2ì„`ž"8÷'}øTÁaº¶Þ7ǦÐJK1=·]‡(â |yly  «±.Åö Bƒ’õv‘U0¶Kx,¿6ªÿâ.ï`§Ù6‘dUíHwƒŸtmë«Õ¿(1 ÈUþL@–¯Ž] %¢ŽÄÒ$D‘ËÅåE„ЇMÎßÏ€ïfcýÉç sÙ5JjD ³ÿŸî$ •‰GŸ¯ê=£c±ä¼[wi ü‡-È<%¼!(±ÈwŒ(}ÆÛ†L`ríÁŠüùôƒ«õ™äã…¶Q ¦xù'l‘|D7±VW+~5<*§ –& ^¯Ûqs»nÀ¡µ <¹}Ô‡yv®«ù/)ü$m·¥ü78ùE†ÑË]îÿ ŒLgò€­$ŽÆ_O—lU„›+¸,Îc¸»n9qO¦Ëà/"Ä ö ¥-"?(Ԃɸ]vòGm™ˆ_—aÈî?Áð=Vâ@¸{$™kµ¸#æ^e0C1&UåùXˆb+%YÚ9Á´êäDLà d§2kPEºò¬éñÒZË–­"ʽä”(1öÿ!dôÜæ¢~‘ÎÑy-ïþ0Ç=•%…PÒm»µìÛ>æÅ¹ybHòNè7`T©ò ²Â©ßqéÐåÝJñ8ýNû# Áˆ,ÍFÃÐfªÖ@Ba­ñY“¼õätež ä’&I‘[ˆ€ ÌION­W$+`çr¸$]ƒŒÅePb;,±TÛ[n’Áοg=;4¯ý’ln@íϹ7Ã~;* ÔIìî9¿œ¹ó‚줕 Û§ï¸;€¡ |¿×rv;úBËĆv_$!ØFyî\TÜ[ûX€wý²=#ê½`#EÂJU•ƒ¼w "ج#þ.$nBVþÚ„pŸmÁõƒÕJ‘KÛ8‰¤oîf–ÌHDwV”°…¼Dã‹¢/q—Œ±¬ T:^kÔ> †w!ö‡%÷~øeu ° I¨– a,6iql;ñƒØøÜnìX©Ø1s!€¤ ߈܅Sõó·Ý·Ûfgvâ8 ]‡ýŒ«°Øønd_å›}½ÇW 1€pö#åÜOÇn³ýÊ–£"!ÎÂŵ…Å&,’¬ˆÑzf>¬ÖUgþu2*•y/ÇÙäæŒ`,RB³(ç7ã*[Ϩ Î(ÿÚ#`I÷pA|9êP\U °0{?cÛcØàÜHÙƒlB°bÃcõ$Ý”‚ì€9–m½ î9Å·1¢$ï¶ã`Û¨Ý|x$;ú ÿÅꬳñÄY=¦©šÔ*å8™Jˆ‰‰Ö^QΜ\Ö ì]Òß«P÷"ÃÎH£]‰öÚ2gR,ß…‡Ð°o“ÓV%vU_³€Í"ѸÓ»bjÏåÿº ”ckÿ| dqo+¿‚¹ÜmÌAñàþÿ{ˆ,ÈÊÄÿb)m¿Àúó$Iäv·R '‰ây‡§êÍRûŒ5¿#rYãd”¹ÚNé±{޵[u¡ÿ8UƒË L²*›=©%»(EX‚HïÙ‰g‰mÀ-^u¬©!0éyÂßÊ6 ¿6-¿‚؈ÎåOþðe‰±‡à¹{ËöXËmIJùP»þ¼(V;ŸþÎÇrNûî±ôBU 6à’Ì¿½ö'f <ŠxþÊìv 5VêÈËðöy(Veyâæx©/ˆ#±î"'òE´¥Çè6Ý_£Í•pö»hè˜Á˜ó=¾ÇÅâ“sÂÀ 5„5”w}/áyÙ?“Ës'½Øm6Â9ì£æ’@CÛûÞÍ/ƒKq]“‘vo-ÈÏ÷ðb—g³6ñ¨©(Yu$† È!䥸¶ßþNä•m¿í'oðHýÿâåf—eÃLaÊäHÁ@ü[¯gu•œ”³*½I Ä©>–Ý`® ÿÉ-â áäËH 4`¹‹öx„Y×þƒ9zC¦goðHvoSq"vi'k<ÓÔ2d7ÄÈypóq7÷ 'Wì@PvÛ¹úò’ù`ü° B–3#.²ý9ÛÉ;0#exqظRͲþÀäD ÕÊåø\ï+¨(†x3 Q4Ë:shO÷,…b²`f,õb«âgXâYä›PÆ8œÆf#°IŽ‡Æ²åƒñ$©´… ÎƉCû÷o¸tz†T‡M` {6Þyïv0¸$}ÀÏëÀÙI>òOé7ýy8l7n#þ÷ðUŽJ‰/ÛmˆÜ]·ô=\¬Ó|-Æ“» (³?9³ÄèbÝ¥h·zÛ?nÄ~CÆÀKÿ‹ÐH͉”³$®…ïÀ±ˆ£íð•ä0Š´ŒæþÄ%°•JýÐæç¾°‚ÅÆçŸÈð^ñܤQ%œ·-c ìû8,âø.¬‘ýä^NâÛù>IÜ·ÜmåÿÁ,»}U-DUóy`V¿·b7 \Öc]g,ÑšAbWÏ—–àøAà°*K€NÍç‹ý‹ù*È]¾Çëÿ×¹òãú;þ¼‰ôà@-àøÜãÈ;qñÈ ÷ þÈßo\þSI¹‚ýÿnÆÛàá#f.@,Fÿñ¾ʤ®üHâU‰? ?É1Üþ†ãaûýþÛrÛ/e¹h÷;mÿÓÀòØÊc1Ô5 O›·Y²ζ_oCZpÈö¨«1£ô½åia>NŠtŸªýv‡Tôò>¡:è¬F?•Ò¸éõ–¤ÐRi[¦ušYŒV·©ª4†¡Åe4œ‘­ë9˜ͱsÌ2‡çön9ò/„[íö1J{g±ö|~ÛX Qcq+î,›ÆS¹ò#H–²bPÊðø¨Ïý(Rµ¿êÔŸTÞOyšw1éÖ’éI:·ÕÜÇPº[©ºÑ 7Š¥†Èi]¢õö#¦øuD†jÓb³˜½m«ŠŽ£³JH§%L1«³ï?Kæ±<¿ÓΔõ[©ÉÔ\Usað¸Ì^Ÿ¿¥mô{©’t“¨ºsVcuªsc2ΣÕÊa~y`µg g9Vi(Ï]§“¤×B”ß(´éfbäpÜá Žnâ’ƒ¹º\ –þâÐØºG.xàÒ‰%”öÌ@ý8’K¬JÛ*LÃä­’È@‡¦ÂMÝRÜ91±Ò‰yÃÀ¤FÒK%𫼡ŽüDÎ¥MEÕžë×OßÂà±ýê¶®Ö3hˆºÔ )}8Ú£¦:2Ìö+C‘Êеy?Þ:¡¢§jÏûSD¦O'{ VëÄLñƒ­®}æhÍvõŒ7OzŸÔm!£ú_¤ú»ÔýY¢pI$7éæ´£Ïi¬µíqãÖúŽïðØ\Þc)¦tÎ*ÞKOŽ5 =ÚÐ3ž§” #ã$HIp§–á¹Ç™±‘̨¦lî4íwk?|\TcvSÜäQI C1ñÚùäëi7Xm6ßËB;ÆH¬4N ~á(JƒŠ«vÛp ŸÿE¿öîß\T  ù.Û2¯4³Fë$M¦9Ðò‰ãy{e\KY°»èHâz#‹±ô”i e8§=”ý¸vìê«À¬\´g½!ãÖäL°]$ $ˆ €I±pÌoŒÊK:Hf,A [‰’ï=›D*;¢)ùK+HXÅ/v4[ëò$K²¾BÇzÞÂí)ËÓ†9f âV”¨.Uäݪb;LÐàö'¦ÊI6Ðúl¨EB¨w‹˜ø­ºÈ4rDÜÒ î8Q䨯æ@&2û' ÛŒwa”Wâ›Hʰ%Ž,Œ´öîS´ ‰gô寓tÃÁxo,[mŒ3HåÁâH³OœùÆÊþäQÄÆBĬV"”Âë'ýnʰq‡ÚÃNZ¿ ଣûƒ#ÊÈSŒjßW,ªx¨F„|ŠèJb¦\‡t™¶BžÒ¼Jîû±û°sòÛ˜Úb£ú‚XAb·/ˆ~BéJ‘lGãÙrâL~:D»}üóÉ´¦x² /¤ä¿³89çµ½žD0rå~%Àhßí8XB‘—¸]J¯ƒÅ ‰ÆHÞ0I-'ƒaWs–P&ˆ¨ßÒc€lÌ‘ÝxnÌW¸¶QÃ$m!15Ãj@‹†«syzTjU€æÐ£e½Á;¯ÝŠ6àJJü ¿\£ÒÕ V.…˜•‘ÑÙ‘ Egª~̬À¼øøÿ%•cyD{zˆÔ¸†Ïn ËKÁž½È‘"«ªDª¡X+ÖÚ$‘ŠˆK)t€ÈÜà®ßÔÕ¼TÙ"›º¬BîCo¥%¬ à HxÃ…)þcÅïf¿v5 ÜÛ›±ìºÈ¯)M€Ú’¹ftâ6­m¿%õÞ BëÀîx¿Ð3l¼¶ 7pÏ·kÈ]Ô’£eÄ?䜴goL4’"ä¢4y•Ÿvä²UeAÄý·[À0Y¨òVcé©ÀÈC.åTcË›I¼jà&Æ6v†0vËÆ,1¨-ðô«PÐDt»ÙÊ Íšöm°úˆiSn·pÙÿ!–$…Þ92ÒÇw 4´ü¥&)¶ AÞ»0Žý«ƒ’²†wÌx}YUr¾@ˆÞÛGå?ûžX7YØÍ¸õ­‘@²ìï°=¹C"‘¡WŽÇ…Œ+$‰ ×Ú: ¾'É!½eíÀ¡¤î¤‰5ghB‘“Ã@–(yn~&ÄvÉcÙ;zZˆIv‡"7f›‹NQÙD÷1Íå›-·Œ8´‚8ÑÛÌk#/8äܰ„Kæ9œw»¤Ð!+È!£—™C+¥KÂDP•Û¸ª ã@« •ÿ„XC>î›ï¬n HOyÝI‘Tì¹2ó–I]6ˆØŠ¸,ƒñå¨TÀZÒ2“ÆÊ¬¥X•ˆF>­Éd]ë¬LCn îÔ^R$¿A•⾑) ¹xþq.ü††l0Q ^Y ?/·÷w»Æ6Îê œeXÆå–F%Ðxî!Umø´{ü‡#|¢ùª¨þ}+Žò+Fo,Q¯É„ª*ºÎÓÃULJ&ªÔî×Èò°c´’xÁPÜ^'y6˜£F@›¶Ìve‰\[îˆ Aä1(%„lªP‡VY–Xæ…wcâé)ù6.N>1w8×ðÃ+HfôÙœw½ü±ã©DÊ—#~Gùo¦:”Q¢£ªJŠŠ¨,J+üMü3þXª™9p•Á±ŽP øä²¶î«´¼åVî@ÒÚ0²$µÕ‚sW»YvXcd¾[u#×5æŠ&ï´ê;’»ŽL³ËÝí‚ ·˜å¶‰âY›j¯XŽÒ› @Ȳˆ‚I$àT/.Û–B³¸xd212ñfP´y¤cZÞÐÙÑM"HGô¹·gžó-„*‹(0Ì}? ûDã üÕd$<’7#W“ee#îA)i&i'˜rpð5V9“bØK\Õ™¹L29‘8¡X˜*°ÞDZLÇtü7‹2údÊ ”yäWu…Ýbeí¸K2@R6ï§™vL=”‰bV…Éõç™PEù$^àU"(â{±ù˜‡mÙêx’ÞâÒ§ÒÐ’¢ð,Á=ÄLáõ/ûÙ˜7ä0¨Óeg2˜Ø°îË^&¯Éò"‘ÁåFÇfÉSb­‚¦ øìÄm2ιÈò,Ø!îÍ –„1Ž;'åLJ¿óE¹©Òc:ŽJ’9'~M$bÇyc’0Ro0Kj(9šöø¯YšŒ»Ü=1# GV ‘XZE€Ã¹øÉ`%5'vf£Ü5¬#Ål­VAê ¦ ”¤°Ù ¼˜÷ÿ€ÁJ üý¾¿\o+…q—ð/x4•÷R7ï7ÐË*ýMÆo¡5cU}:†hÈQa‘¯Á¢i «¡@±¤ŒD&ÌSÉlcsKìa” ç‰Ø²§r8KÉ;HÄ<Ú {“Èy!þ长xƒ•ؼ–#^dIÈDœÀ‘BIÈ’€}Ý%‹Œ×#]çÏDLÐÊG¤i´iKéa¼Žà ‡'|>£.«%ÈÁÈ"ZÓ>î3J@ã %y$qDò±°ŠI-7'·)Q-{dŠŠ`;úTKaÈHM¸ÜÊ¢"±s`ÞLFH9#ù±¤¿[ÊÔÊ2=sÍÀxòž9d䜙¥W˜ÌÃëÈê°™Õ7ø¶‹|U€µgå:øxHaU,U + YZIy«J–B ¸ÞÜvv‰@­!ݦRûÒdOf{1í…ñ ÎIp/ïçéµÎ7¶°®V'‘ÛbGjß3ç“2‰Üï#ÎÁ–;gÅÈÙ±|LІõ«%l„ªIȺ2¬nI§‡‡qñã)+r…´ëù–£î·`0$U“Œò2Jó0ÚdxÌ[É2Ùíì‰$aƒØ‚?ÇVå÷_O ŒÝUJ†nç#.Žv´‰hö)30+T…UÐÅ©ˆ@u$* xÜx :Œ‚ÛÁ¹p'é6ÆÄ4è¥ÞI˜ü†+ešID¯°¶óöÏm$x•׌vã ,ÒÝ™¶b½u­&ò)˜Ü(1’YLdć¹¿#çxWmòª,•p­E~O!‚gzñˆ€•%”ebµÀR¼‘KDnÐÒ>ÞrO‹r!wU•"˜guQÙ{Í! ΰ±]uøfdzJPN ÌH‹KLÚàûበ•9rKþç÷ÌcUë}Óüe|Ö·ÕzwEa%¼˜ª™=C𥧱ÒdßrÝ|m|ù Šl‡ÃÆä¦®éÈcëÑ»Žhûq4‹¿¦õ.Õ¸ªZ‹Fê &¦Óy§³Z-K;„³r´6kV½Š³né­#ÇwÝkÔ®£‰Ò%WE­Þèiã%½ío/¨4 u¦4ºQ˜ÕøÄЫÔã1w}§û±ÒÕs4´´² çTêm+¶–*KV»fñÙ"ã P Y«1¯gªwºe :›Ñõ§®ÚOPiH° ¨ºA„'JtKGiüý¼ÎCé]Gªt~¬½QMI‘ÀϧtÅU×ùj¯’Ⱦ6;(g˜ê2õV“DÕ¤†„ƒ¨zDؤ‡!ŸqÞHPÊS­I'XBËJ & ôòíõ78úý_!e®—)›?I^”’V’ú«a©¤æI@á-–„P1/rœvRüÖä•fÞi9¦Òìî0NÆDìÆ;*ü'ÍĦ9ÈxÈ?ªÇîrjÚWª˜«|—«¹ÿn¸œël°¯†Þ/ £½×c´÷SmÖÄG¤¤Îb5îšèvSýϤ®ÕÅ_ÔÑæ1ÔõAÓÖ®×›bðûkÊ{€>ߺýf¦jMqž¡w_\ö±Ö­«2uòñGÒ-;ÓØ¬–¢ÖØM#×:,õÒ}G‡RßÄb̉#Ó´eš–dí5¤šõX媥EÈ`Áˆ`u†'ݰõr “]RÁº€rD³žÌH½æÌç±:w;ž½OˆÇTkùL¦[%SBÛrl“0¬ŽÝÉÝ`Æ3v%æÛzàê~£ôûDâ1š“Yk=)£´ÞbjÕñy­UŸÇéì6J\òPשw)bªZùt«YÉ Èo[ެ­d+ÌËñó/£z‡Õ®žë͉׾쵞7ÑÍ1–ën;]½zy/¹LoP±Ör:?Oµý"•)Y»§~PÕ7£_'ƒÈihjdȬ†-s}ìôŸQu/ìÃJèyéIþØ÷e›ÈXÕZ·§Zk¬šwNéÌW³/vúj®§ÖKSÇCLe¡É_Éa´åLݵ¥R® Ô”cÇVŽütk™~>­DÕ]<º“£@¦¢TJ’"ßÓ!ìoÆåi ÓBª‡Y:Ë ìLÏ÷‹“¦µV”Ö8tÎhÍI„ÕøIl\§kMæqZŠŒ·è³×½MíâlÛ¤¹Zf6‡)@È‹Q¼±‹ƒÜPq³´ŠcU¾ê­²ÅÚÿ‰9ëÌÀË?Ò?ÛúøxÚ[­=ÉuÓL^È[éΔÍû§‹1Ö°ô«¨º¤µn“·í¿¡ô—/¢4¿O4†µ¯Ó ¹™5‡×°é|NN†S©Ú"Ö£Ô9j×õНëÿS}Êé_o]MÖZ÷­þåº}ÔþûiÒš‡¢:aб¦ôî¼Õ6ëê{}FÔýeÅç´…ü¢j\2UÒ´Ù3Qi³WHÜËj|5+6,m^ŸâåÐZjT„Ðw¹Åæ…´Ö¦Q°J}2C‚ó%ƒvû±ÌbspÏ>'#C!J­Û˜«ÓcnWž Ù\-éñÙ\|Ö ’T¯ÄeaµJÕ)YdÒ9:òÒ¸‚M‘vã’•4µ¥­z8šÍYM;+0ŠhlïT°°É#Ó0J¥nÑr™²¥ûq®ñ]dÕ=`Ѻ’Äÿï^¨èÅÁu£ÝÍÍÓÍ _-¢²]ZϼXŸ¢ú[G¾Af´–ºÖ9 ?Š}7…Ò:ÿ!§1zûNëÜž ÍjK6d›+JQÑÍÔ~¹Ÿ§õz›îS‹±î³ßoPº‡­¨)œ–wFÞ”Ö}ÄC©-ée©žê5l¥¬ßÉ…Œ:7™Ëcb¹ŽRjÔdue©Iÿ¤©ê….@ I!„Opñ„¾˜SY¤Eý!ƒ‘=ÅöÇÖ nÔ¨²OjÔXÚаy-Ý·^¼P²#žIí¼tÌË7šHêIIdæÆÚ(õ«JÍ þJÒ³BÒQšj6án:—i»Åb¤öC¼ÑX†ÃvØáryÚLMÔŒB€|êþ¡ëgQ:_î+¶ëÎLuÛ‡Xµ’`¬å56k)§:»Òþ®h¬ým[}>Ãâp9LgMãÖÜÏN´nOP×Ëij’,ù8.<e¶XÕº«›Ì×Ö^÷%Ó.˜O˜÷ ¦ú»¤¸úÉ©º—ÕeÉi)ú]§µvjŽŒÈŒÖ-ˆ·{'¦tÍŒf>·SµQ“/à„,ßʼn[ŒµD ¸* êpXÌ¢æÇl/á­Nk¡D -¹%Ãò6c±ú¹É9"• ˳¤c7±î4roÆ0xb\r~K¿®MìöVåì–o ‹£¹*õ̶J•*t²ÙkT(C‹ÈÙšx¢¯s+c/‰…¨ÎñÛÌɔƾ! [eùW‹›Ý­ÌΠêRºƒ×;ªºiœöoò:O¡¿Ž­ÑlÕ IÒŠ¹N¾T¿¤%Á]¹«D™“/ó’PÔu¬C•î×Xãž3gZô3\{†Ááz-¨çþkÕër÷Eî)“—;§4õù5F)º-í—LÐÉãhM6 ;¦tC§ý`ÓÊ$ÒýFè%« W-VI,©ÔÕ2ÕG¥ÞÍ {›ŽNE:½uÑ$LClöqƒúú¥ºƒÆÑ*+ yŒ‚&hŸ´@…¬ˆ@7†Å&Y'&Ø>¼e_ ü«º•R|””lUy)T¸Á§Y¦ÉÙmÇÉ,Yz•¯5OI[®š¿Ü/·ÜäzK¥xF…èž:KXÞ¢uïJuW;¡=Ïá²Ø+šk.u^Ãätä«G6_¥±½P¯zäYø¡‚?Š×ýs—CëÜ­­{ŒŸÜ¢ÓÎÏ×Þ–MþG¥½¥6²¹Q³ý;¥_I­Í!¬pº*9%ŽÂ_ÖãQÖ–ì±Ów%£cÔÀþž¦ÄÁS$»Û–3¾$2.ÏYÔb bC؇'Ù†>Ä1ì¡BŽ»öx9XØ4Ðì/dãl › NêÆ0ï• …„E*†K»>Ãׄ„FTRHŽ.Ò* –fEDxØCjAܯbW ƒ´êGÈ?nn¿uºüý*×v÷¥°šgYû‹ÅÓÖZ?9&œÖz—@áìtc1Ñ›y}sªú{üÅê-dðæçÓ¼¦ªÀÂôÖ¤5âùãs¦]^ëf¥³¡rAêo]qžáoèN„êN“t; §¨'LºÇ¦õ?µŽ”êî£jî i›¸8ñönÉ׌§Y4–³ÎØÕx9t7IiJt°·2Ô þM ?†©!Ã’-w‰v œ£,Ñù8IÜ<ŽÂ ÊHu”‚I]ö1¦Ýœ=¾2HÌ®­ÙZÃ5Oã)¤…r€GmÁ–ÆjÔ?¿„T•iN’éG÷í¸ÇgŒ¹œ´ô1uÑæ)òdÚQqÖ®Qb““ønɘ ¾ X‰æƒ  HØ¢dGzx©ª|¨Ó‹®û*>ÜâYGÚ†ïY‰qo[1*uH NHt –kdœÆS~Ë4’±·Þ^V¦U¹ìÙôx•æS’ï±PÜ€JøñËüä“ào·¡¹ìý\­e!HHj›“Ü\¶Ñ2™*Uèë:v$½ÜŽ|>ç£1§3x‚ÞF¬)Ž Gæ¶~DòG%ÞÔuAS´‹u¢ Í-sm-ÁÛ¯¡µ=˜žà¨®¶ã ±-¨{ÊÒ(NRÈ$Ö¤‹Š´ç”vk²¢ñ”ôAêŠáh…ó1c/­;¥N ˜yUR@¼ÚÄU$E<‡ÔÛO²‡;/ŒUnI^5Q]h«¸&òƒÈ8©òª•ÔªŒ½:Ì‚ª‹PQg`–fh>biéôÆat‰:P”‘.Ké¿×Ä—ÀM:{©Ö0¢Náú Æ÷qb>Ër¢hˆnêÊNd‡uõ š«bÄ2F½ÚÏv$F&ugÜ…"H‰ó‚޹„v1ü¢‘·ÿ>‡f›€å‹oȯþFÞ9xUk#ËÙìœ3doöÑeñÚ–E<¤""(Ì” ‘mZµîSvWÖ®Ÿœ«šUOˆ„!.HÅܳ71¼œUÉ¢€N‚ ê :šLåŠøÇ;h‡w÷Ž&0eVá¹sÝF@?¥uÈ&ÓÔ¶ ª-Á^ì4,°¥¨œZ…,• $¯Ç¸RÁ‰Á©b@Ér=I—`¤Eò¸»XƈÞ^×r)Z:æXûÅû`œw•`•¾Æga5i÷Ž "#kI†—ž+eQCİâQ~$L6fò[aÅÇÙY‰ó¶ÛK?œ©–E%QÒ¡PIe3iùlðãå2¨Ì)H«©: Zàƒ±xo§Ou/¡L–!,p´„v°åQ34ª÷¡°Fg‰¸6;“ÍÏ=l}~äÔœü©\Ĉ¡eìžà ÆdwüsGí€DµÊ¾çÕ£;ÆàýCƒ²Ÿ<ƒ7€¤n\)Ù·;Øÿçp·L¥Q›ÔL¤0ZÞÊ\…l“U—aÙo-í܈Š@ÇÖ:]JºéW¨RT’ `·¨³§ûbê½:’jÑ@+)RŽ©Ú\m¼‡w~к°ÊÄSŽ5£tø\…ä§s‰2MP!îo¹»ZVŠÁ; ¸™m9–Ó†¼÷`¯}æŽ5ŽÄO#´.9)hÈq-Y˜• Ž pA­!u!]x©Ü•vY@$ðÀÅv!·mÉô)ê˜F‡¼S”“ÞU ¥Š²GXýsËxXªÏ‘¿(Tz|§S­[0ŠkÒ§Õ¤%$Ë—ÜÝÌñ³1¥JŠê$¨©6vg'}ŒYø¿gv—vâc”MªÅD±Éqn š‰ù¬‚,@Bo …Ég ‘b ’uVÅ·v„ˆä–޳eÂ:BÊ>=Šc³ k³¢Áä&ª·^ä tÏñ…x`bÎýâÜÔDâ´à=bfR­± ô ƒs9À+ð†š3*˜–7îÚ.¢vUû3I\iÈ^E%2Ýo…EU©©tà)á®/CL60å¨|ZÔнII&aš$6ÜxõHê¹’¤… dÌaËDì"ÌóÆ'ü2ˆ§«UBBB‰* 47>óåë.'Nå3¢sBšÎµŠ£¥‡í/ .¥Š ?h¥1yPdS F†ì·OµS0 D€y¹•lÂJÉî31—1"Å^V^Ë×âŸîf](Û•šG‘µ]QË,ˆñƳž°Ùø “°$Uö"¯"Si•Y¢,CÆ¡·S̤gpŒä¤’ >»2ŸíÛ˜êYŠu„„2@(;8Á3ÃÒ4:}*´Ò¢TäY¦Xx·ÜíŠÃ‘Ó™ Ušu/VHg»4h¤¿ ‰‰¸né ‘–G(ÆÊÈG"-·KþêyU¨q=â‹a¦¯!-Ø#äJ¬ež •š †·n!c‡ÈPÞ¦]@ šŸJp3´ÍB¥ˆáåýT,Î!á^UDó~9šÉ³º’^>Cyryä$p] ¸žcƒ1ãÚíý€%€zFµ:TV‚j¥ENäf¼ãhÓéô–ºÁEiøj L†;±`ñ¾óy8­4>¢§NK—hÇx Y'EœóFBˆÃÆ`ÐH¡£˜f·nví£#vž@$>"G˜ÑÀäMÜž¨Þ 1mr>R½Z]Byàs$I*ÇÎß‚Ìu¦£Ü°²à¬C·º»ygˆº È£ÕU…HHT‰„ED@FRÕ”©*A,Uñ¼XÈÎäÀˆ5äsU3aF¦P` 3É3öñleÎå“•Z‚N¤•c‚!¡þÜáE£•"XšXù q¸g<] ¿t€[º†!’ZLº¡ŽÁPÞþÀeVÕþü›f{Î×èÎZ-ÝÆ:žàGÚ2„phdÕ#i7a¹Ÿ—ÄÁÂ…fQ)$ªhÒÏ€y AÆ<—R ¡Æ«Bïôþ!u‡¿]ÕOz½AܘÔ;·ñôù<¬¾$”ï÷“·ùØ“èw_²ÌCüBx$>¼Fü¹ÆÎŽTd“šG ÊYfß¹ÇÑôq¸ðH çÊ~À;«ïý­°Ûÿî<O¥r—à ü€OþGîAú Än>FÄÈúG(Ù‰FO"w¿‚À·~¾7Ø‘än=dqÛêçbB…?ö…$n¤ÿ’wßa¿¿ û>ÏxÞßgÁÀ9K ±ð$#Ï' ßÃaü_ þÈÝFľÛnw?£·¬!$n¥Ðl›‘Çë¹øå¶ãüAðwô’A%Aû1•·6ÛîNÛ°ÿäþ·>¼[‹}yÀ$£(Ë~å{oãß“úôÌXz§žxݎ׾$©Ã¤AæCqûöÇÆœñOyê=Ž4Y:ïÑ …cÿ£_në©iJ5YV¬QƒY¹ø-¢ús¬=Ô½bê—N2¹-u‘Ñý(éÖ×—Ö®‚ÈUÅõ/9ÔkŽ“FÞ–öCRhíS¥kèZþO¾a¨úõkSµ‚‚´*ÖÓ;!½âÿ¨Üe¥â:éÑã<ÐFökíÖe­m,‘À’³Ú"™·k„r¦=&{'3ý؃nÒ2«M Œ#ºŽìДEˆ} ¾±$x'üm¹×mÓ(#1Òè¡nP¥S¨LCC;ng¾9œýUÑÏ-táiJ QLt¤Á{–bÐ÷ÇÌ]í¯ÝçEu/Ns}1·íoZVé§Gµ¿·½;O©z׬úVÊôæ¿T“Ytûš7£úµ,çôNhéþæ«I lvJ|Î+Ëò¾Y&€öáî;Ûî¢Ãj~åºÕ<Îg§Ù¼_Tò}iÔýTév;'ÔmW׎ªõÛXj­!Œé¿Mº‘3hüލêºõ1ù»43¸§-j³Ü‚e_FåMâ(ÂZNê´5viI5w…ŠØ’'@>u ÙÊòL¤++²ù3·m¥`LNŒdQ!ˆá?e yûp¼ˆhËHÇQyÚRÇZzNT·©i).–Yô–¸wæ õ ï!ÀÕéùƒ3 ÁšÝÄcæu?ôôÆê¨tëTõ“-[¨{Lôª:SA¥u_W:MœËõ›©}eÐÝH³¨pðôãSi)¬hÜ^˜ÓÙm35¨Çò¡1Z†Þ›­’žÓcá™Ïd½_þŠÒ‹G{jêí’iïqZ ?Pú©×Θbéh~¡uÿ'ÔŠË€Ìô›D^Êfó[¦ ѳ%«£Š}Eª¨en¶OQܹ6~ßÖWH8nóE´ŠÇpŽÀα¶êgÜã#µÂY uX•aÑÉ ²¢DòrÙÄ"|´ž3Ê6µ¨\™Ž/‚•,ã –Ï\ôl¡ mN•j r%äÉ„;-/„:ŽdD¦@MœL1¹!û^>`õ?Úß[u®Kcìt«Û^nZ])Àh)OÕž¾è<϶Í_„Ç><^éÿY´îžÆuO©4ŽçoV¶WÙÇfðZœK^ΟÉÑš\¤¨ê·´Þ¿ë ~; Z÷Mú‰¯iô»GiM3îË1¯ºÑn·ôŸ¨Z{J kVÞ“¥xÉfë ,ä®ôŽ'V]ÍØÈI˜Ää´õòöîYú†àJB €Ž,À4¨ x÷áÄ$êwDZI"§µ“1å^"^BB€¥ß™’2±È®èÉÙ†¿šÊ9]90CT%K«£e”\ª£–¹áNïîYÿ!„:…t€¦É!.\€/nÖ2û¶515îTÇã*äoÚÎÞ¡OÌÔÕkÕµ›»V²$¹9«@ÿµ›²£[‚µf“Q$›e‹Æ›lª†NÊÇ"\È‘˜ŒŸ”! ÝŽ±m’fX­1þœv|úÚŽ>âI•Œ|^YánR,¢7ZÏT£1â7’zEŒ_æ‰HŠ_*0˜âÎÎÓ@ñJe}C%§ ¼‹±1dvhŒcá‘ÞÛÑT$!)¦–) “,‰¾àqŒ¢¥ ‹Ì 31öœ6 ¡Ú5Úa,‘ËiY’>áaPë4½§üôTö¦ªVé&À'ÒH*¡lä+#E7t !Ì[“¤£“Ö´äË“Q%Iˆ1‘éE£Š4اúónôQ˜äv18WÄt……¢87èß*Ö])I#¦X¨ ¸yœXÇ,PeÏ ÉñB8E ¸ŸK³ìæC i ;¾JX€ìß+ôü¯Œ•YqB£eBˆIO%Œ€2£?ü®OÉ'×êØ!U?(TÝ,3GÈ·ŽQ›/$H ­Æ_ù” ·Y¡½ŒÙ"rÊe–FG’EBˆáåv’"ñ2lîò¦ÿ»eÐ4w$ À…¤1ˆÁI‘=õTx£ã dG‘[4]kä”ÂNÃöÑOžb }¤ðyíˆ!…™ö`\Ç›xa–R%‘‘Ie–4<¥C#9@Jìñ›)ØUž·™ØÙ•"£!UxD^d䤲1OýÃx£i¸¤ä a&fªéñœäúö‚”hÖ2è‹ H»~Q }¤X˜ï½ËKZ]­K Ï¥+}–9„Ò9æcšT–8И¾RDì¹åJÎ<²Õ qÃ)ÚòyÜ’oŒKHW–Ú÷ƒç ( É“‚*©YKFcÙ£rîZ%úÆÃ4³TVÿ’É$wö¦p®)äˆK:îl;’ñm ;·i&f`ßËBwªªÀ㪂ãæÂ#dV ´Ê¨åç#¬¶z /)oDÍO*")\2ÅÇ}Ы ÁY$8#ìX†ˆ²¬R}M†(Ø™¾µÐÂ='ö"CnÎ.ܸï„@»%à ƒáÄ“{]á*Ád]ƒ{j˜È"+T@ól«b5YF9¥Þ ê^®P™ŒHT7Ü$jd KÂ2®û?)ˆ2CY¦@;ŨmFµ•¤‹#{„|Z9™ìâEt°R 2½hÑ^^qäøøYeÉ”\¿8UJ¶ñÉ–!!߸Yæf~ 9i™V»ÈcP©uÁ¯ržÐA¼Ð ôÉ ¹þ¯³Gù‹÷ÀÔC }‹ôç¶<ÊŒÛÈ>ßÞÅ×ûƒËtü%‚Sãº$cæ€$úHSÉŠÈ‹L¤8Ÿt“a!YÙTγU µ”Œ=5"á$FÀ]”"T=8‚#Èô”¬r¸ Se–C1íÝ0Äv>/„ŽˆÊ%åÉâ@q•ÊF®• nä^F&,-…ñ¨ÑÈ¥Ù´ÆÄ€ ù\¹{·Ûèš^úmõÝŸíç ™öEB’'*¬Š ÊÓêî~:•¥ö©| ×6ÊMÉ °c²ÝÅ.©1E¶dw£©/K’…6«Øa5Ír[×@F uedfŒ1ç#)“yxüd;“*îÍD7<œv½ÞgJ,ÆŒ¸X`Ž(ã‹ä± á…XÆ'±G§\òŽÕ92®.'qbžì‘+$•ÿnP‹€(íÉ:BçÂäd<¡”šq/ ¶ÝDHÀMÑq>˳ÇÛ;=I$žxa3Žv(›-ri\äã+H‰=x)‘ü«¹gr7øóÌî£y.Uå± yd ´^¨ÞÖc@%„¹_÷ßÎ%¦À–+g`O³@$ø­Œ¡"H÷–) ´LUæ®Ð8Ì?oŽŒ·Ä%rìÈÕZ‰—2f’GV,ÎÉ)Yx)šGU–ÄÒ"vîX^0åcøÕGÏ@FÜJ÷ÓjV 7‚RÁyw³i‚¥ Ùn䟕+ßÒˆ÷Y+¬R±!¾ê$ånÀ{+Ê È$‡LX“ã£Ê 8Š @åø7#ì,’‡ÜA.\ö½¯,Ó²8UßãÅa7,å§åÞIIå@F:ƒQ‚ùôÔEʰp@)6ï³",eä•L…UfÙl_Ù“zSF øÓFíÒ”+F K÷ ?U ¹£WŽUŽVñn]íeɪ˜Sr6,}²¦b½ÂQ ‘¼Í4Q6Ë’9!žxá$™&AE¨ŠË>F Bt°$Zê‡ÞD¾„œ6T@ .Ý¢üsŽs"ˆëFkJ¥A‚~p§ecCÉÄ•#Y3˃ώ ³:_.ì1͹˜‰´²ËW‘¦T@(¥&”DXn† Õ÷¯X›jŒ:K±U‘ž÷_¬Ñ™Z)Hí¥u*X'jÖf)nÙÞ¥žÔ%P(…P‰ÎùߌEÉ·$e–EýH±¸áL¿¬W`1$—& &ÿX#kKm‰‡Â%à‚EÅÆÓØÀÇ1ÐÌñ*sXÇÃP#CQI¦ŠÒ€WÉ’LUiÜË1S_.ý¤„•K]‘¥ˆ‡©ßþ Ç{³ÇÛP† +JÌY]ا!•€ä²VTÝÙÀô£å&V*Cl݃³’ŽÒŒ©ÚtyK ‚iBD-Æ[…{L¦´HMiyJ)° +v€*dG’^1Ç&>즆~QGqã ›¹Nž79‚N·™hÜ$jìÒ 4Vf+#ªåŒBï 1•ɼÄeôÊ*U¬ÀòM·†?[o`Pû0!¯6$ýÄ `/Õžºé>åú?§³‚Kyþ¶u3ÒM!„Çæ0xþ^O•Ë^ÔV[Qå1*Ú_˜Hbž¥Y§ÔöõFgMiê®Ož¡ZLb½Éô;ŽÕùì\úi”ÅèJ ˜×ŒV¯ÄŠ:[jf¬2Úžxì¤1óØG¯jgÚ+ªLÉ1<µú÷Ò;]mÓšOIE«2:3KUk¾{1…½bB˜]ií·ÜAg»¦n¤B¤ºýkƒPÇÊ|Zš‹ƒ·^›ÇqkÇb¬¯´^¡k9t»õ>çEqptû¡ú¡š;Môî¶¡É`sXÍ3ÔÖ—³¹ªú“Kà›LAÕzŠ;uB’¦bZOËôïD¬(Ë9g[Pmi¥õž#åCýW§õ.: …Ùlv+Oš§j£dîÍrúV­<âK÷ ®öñޱ $M·ª£ª½©aªMª0øšÒ{#×~Ðß#_6g'‡³¯qÜ6gPAŠšldabŒ½˜Ñ–28æÏÉZ¶G#2G ÉÍÓ©®šuzÓÐ!NÕƒ¸ {´¼i'*ªeREGר’Rˆ€_Ä0Áη¸žŠj-?¨5ž/¬Ý=Éé ô©jmKSVÓ“¦†MÀ©zÙœ¶:¥öáÆJ\–À"1>¡§Ýg·×ÔgOÇÕM7j¶²éßUú§‰Ô5sŸHÉ£º1s[¨¶òY¸å4 þ2v2™|tε¨b4æ¡Ô€•ÂØ–:eWØÇV1Èú— ©ô.“×ðcz£ÊÑê·W5œú›§½&ÖjÍCŠÅõS¨z+{¢Y @Э1˜é·Fs¹í+¯6’ê[iœAìK©ñh>¦h§Õ]91õ7¡~ýºagÔýRÍ-ò4×N¥Ò†ÞWUiýAŸÕ™+¬t#i̾??~­œ¶°uuÌýl”¿ðÖ*Nk©§FM)#I#L—áÛô;Æ4 ·O’¬Ê– ´˜2@,A?cµ¯>›÷KÐ EÄé1מ›eu6W5oKà0˜­gJlÝìù‚{6ðØÚË˹+ –u¯çÔôÁµ ”òÃ]K/²þ¢ë¼æºÕî™j}oѺÕíë,«ëÌ­JšrŽ% øé:—€ÆjnŠÕxÝ;”¶ u ©ðúZç*’|a$°´K©þÕµ½Ö=[Ô0ê­?‹«Ô^¸{dê|‘òØìæ+Mô¥zC§yç)ÆÌðg¿™ÁeòZ_(Ñ_Çé¡—øujÜ=p¹þºû/ÒíiÒ‹ZIŠÒNªô·Eg²HêÞ±µbÏS55̽ûvt6SJã4ßL±V0Ù /•Ðú6~£ÅšÔ1é*d0ö%+].·QYBW‘¦­J•1Ò$‚`yoõH¥’JT¡š]2Yî§ÒTà w±Ü¼Þé=ÞôºGÖ1ÿ‹W¿ÑM;6œÔRå*^×Pi¾µ¿ˆÌÉFYlc¨­ZØœ]ûWÊvµ^®Ñ¸ÚŠ*ê:!ì<ïhÇ$RM$Ž€¡ŠÄm*¬‘ìÌ”$Á‘nÓOF1ñkG'òí3²šƒ©ý¾ë{àrkÒÙ]°eýÖôë®M…½–Íao®ŠÓþÖ:Åí—3€#‹ÓÙ\{jn3ª¯œÑPI\é¬î'úösöhÝÂÛ­¸rM£öá)"ˆ0!«„G)"UrÅݦ¯?(òoñø¯­ù˜¨•ŒÕ$ ‚%†’”’AbU>=¥ñf])@¡UK Ë$—w³<4[gnqµ&Fûã’²YV± ¶¥öI5Œ3¼—†äT¹/É/ô#r¨ƒ%?õ1…Å:`¡*y ¸‰Øì÷v'!Rœ2È‚_c \Ënû›áÖ²kº•, DéÒ1’2—'ðÃ$¿kθ³~J±˜3‰¬Hì¢oÀM$’#DgTžHÿ<]ÛŒ¶V-ÞjQoŠ/N^Ê  ²ü’#ÊHgY¢µžDâ–X¾?xydNñÄ Ð`f½%‘Š–2!7ßu"hÝ£Ú/½xvP+£%èò a—ì†IBzC†»CÃ~!Œ¶$j7w2ääµÞ}°ýlµà¶kÇjßjÄ5ÒÊ-‹&9»EÒ.ôò˜ÅÈã…‘hß‘6ÉD²Ñ㯾JÂGV'žÓ%sÚŠóüj£¸ ?3²U (Bcå<í³A¸ ´(¹†&=¥p7ÝVv³'>L‘¼bEþLÆ®<„›° Fd†)~»©feBé:Ï9 D7I$ã­Èœì[8°ÛÓ”!Δ$Ì!ìß‹Ÿ>1 ™”£¿Ìy|}¤ÞqÇÊ`ðÙ}e¦z…“£5Ís¢èj ZSTÚÈdcÊb+jÄÅÁª†ä*kf`ÃcêçÕ{6!zUì`ÖÓ4’¸29*¨ kWAc—%š;ê Ú8Sæð;|`8Û©ý\²IJ8„1óåÄñMͱI¼aÒËGÄHTŽ¢;8ÐF_Êèái_è¬ï'weWŽ57øY!¦³QMŠÚ[Œ$y« 4覒¤”$¼’'å‡ÓÎÖ[RÔ@‹˜”˜úr6¶6'$ʢ݋r·bE— Œd“í‰[Âgò†""›%»œ•–ÌØX§†)lÉZĪlU°ö#«bxyìµ»‚8äî‰D5Ý øËb;WÜ@È oB¢’Ý×åÜü¿$ˆ;Œ,õS“݉SHšº½•v h!!aPe!{±ºLKq°%ZñÅ'Õ™d®²^UiudY)$x€• #L”»7ØÂõl¢8.\Žä8çòÚ—)bïm-[µej¤®‚Ü“8¯êTHÉh㌟­þØUe\r(>[I¸q%$YT¢3É(RÉ5Ù,K,eÍ Ì¤e«[oÍ;~°±F”™¢FãÈí10•ç…ûGqê‰-«+9–Ú¤‹}ã(§/!Y+ÈJH,×T3ÃRf`.Ä’›M?níP 2O§H`4‹0 ž@m¼_ 9Ô@ù®H6ÄÏ®–¾ú–Tݾä€Á9*Ñ©*øŽv7v8æp¢»¤´||eâ~[ ƒÌXÓ¸›¶Ä$‚~Äìçê~  ýUœFÆœ½.J’¥‹²A= >d]é“tŠIÙc…U$·Ž í,ã¨ÔÔÛNå¹g2I¨ºU^Oâ‹äÃVDd IŠ´6H‹@³Ü“jËw"O@3ý?1^¹R4é!)CÀÙƒ ßwvÁ|žr 5—$€îå¬Aûe¶uVW‹Œ1ðS.r0L@Eþ?"d<›êJˆÝ䌟5>Lñ)°9ÁØOà°àî mçrÀœr u2ý„Û³d;Y?¸Uã;ªrÚŽ•jY©ì-„h¢z³÷"ŽZÑ»´ÓΑ‰M€²î º~ÜQX»+B@“¥[_g(ÕŠ´?GZ?_z3,›BÁY7ŒFõŠvm¨"K…–Å8„$tÊêËR¥é BÖ¥IfS{“ÇÐßFw.35¨”© ßSº\1rXX~x°†F;ýÏÀ(%;iýÌA¨²›ôAý¹˜°¯˜Ì£UþC!̘IP³[~I41î쬌¢jp³InG¨…Ù ¤u#?¿Õ’I%O+ÉÈÆK@ªlˆ Iš²,Œ’Æ ;G8àÐ+òfšã¨ˆ»›²ñ”E–@^;rBÏ 3ÆÛY¤²ÿÆÌ©]àõ«§djåŠÕQ™@C)ˇöÜF(ÏfifL—I$¸,ÇCÅâÖ»“†û‘"¸Xì‰$Œ’üVvîDŒªc™GeÝPrk+ƽºÛ,açÕ²Ãɾ }À¸Ì`F@ü©AÁâY„¯ˆÄ…œ!1¹Y½UcGîÉÝwh$íʶ«vXx ÆT´1í5h†Ø™ÊCÊ'©Ôlø­Q65!­…š¶'r±F‰®ZÐ3É 1”¯ È.´Õ$WúŽR®dS’’ÇHK„ly>íÁlC#˜§—RÍWõÄNמ,q`„©cžìy9`НĖðXî#À ²³‚ tÊnyíLÒ#r4ãCn8ävlƒí$2ºþ‰`¶ K ýr¡êV£ò­¾Öpà˜Ù>&M{ “*G+ÖVð°’TnMÝÆGýUèˤD:«/>.¤j$uâ˜à­"D±ÅV^|»a™K½¥,£ijÆyc%ehŸeõÔ:Šö¥Ÿ"iò¨–;mE§«§»12L ‘D’åDO>6~PF²Dò7 ùN™¥\TV€ à 9;û`Žg=Atô$¨h6-$ñHö›ŒZW±±pÊ»«'™!ÎññQýÃwcgúmŠÓÑYEH߯ ´€›ÿ9gP¡–~$ÑvK:Û`–Š6ªæ%Eë·Ju TŒ&2A…U†Ð…\Ôe‰*¤"·'|daÿåóæ×#pÈKé9‘ôí¿ï¿“ž6-D 8»›È«yÁ+òbDâ~6Vc蜅ظoȲƒ&àly:o³G†;ø”úƒêÌÏXÌѬºi)d+Ò NÖ~FÛA#¾#—éyj´iÔX.´¸e0ðÜÁ-y‹ÍE¿¤¯PÍÕÓÖ~d­ªE 3Ä!®—“»ÿÌ,±,¤›Y•í[\ ðà Q(N–ê0¨åh’3­“ÞPŠPH+@mB  JàVx6KbV‰6¢‰›ªø#ùT™ðì*ų¸ªá¤RUMÎ.F^~mŒnTcFV7æGÜÿGê8Ý͈,À0QàÿvãeÞÊý_5Ie…%êÒJÖ%”ö‚¼8ŒB‡LË®¥pBš’ô$;FÄ'}ïlU{=ÎáéYÉ^ «N¼*è—f+ö²±,*iãV’hû{‚ágZ37ñè‚yðCSùXãvx„ð´[Ú‚;Ž’ÌXAÂhgŽ[u"±ûòäiöDs ’ž™jNn H€æ¬ekuåiœ;´pwj¬!á1¼?Y ipÊ’ÿ‹r‡.à˜㨉0µâie }šBÀfŒjÕ¦i±ª ô”ÕöBÇ‚¡P ;™‰#qÿnà“þ}[™êùŠ IG®Š§K J¨^Ïúb¼¿MËÔ5\¨è¨R× ,v#¶ÑŠ«˜ÐÙ¬5²YðCJ²D,7Š$Eí¬ÂeYÈieœIVÕc5Õoù{öñÓJž¶qÝ<Îå+Gzœå©gp‰bxGî9˘ Î’ƒZLXÛ v'’¢Xå#z4uÒö™KòhóB³”‰¤‘aªYÞ`ZxZöµn¾ÝM6ÒøBÈDbš˜LqE wÅñÑW¹ñLEZ½‰ìÙ…’{q¥—•R+ë¤åEpQ¨Õøf 0ƒ~wÝÏ’ã§eÕ™4ˆV€€§IôÇo\ÏKµ)AÆ…î•È7ª¹"aÛÖÎ<_rÈC¸ykÌí}'±œ— UÖå`½ÈEÊh¨!EíZG‘nÙ¯W›TH͈ ¢²ÒÉÅbXÖ_VÝ€òTX¯p¡#rû*£(#qÌ7ëÉRÛAÌ&窆=ÂvUŒq'Þ½;L覒±íKðëw^Óù)-›QE,·WÍVEb¥$štõ€îá¢Î ýš¿LËÓ4R_̨”’NĤ7ëi—vÄ tÃTùcjñã2¤1d¡XQ‚‘)6À‚Ï÷@û‹°L L`¥Û ËÌh\ά·²8ôZ©%xd"Zöeš;r-Z¥­v…ú­ý1ƒ“©4ÓFΖ¸Ä9TžHàÿw• ]ƒìA‹£xò Ç½LU]ËÆdÞí^~s:ˆ¶VXd-ÄW}Ö$˜"È~?0a•몕éÒtiQbÁ‹A"L¿÷ƒ8n—•E5,jHy´höŸLßú?Ïä)Õ¿R•Y¡·Ù†w¿^C"Hcˆv²ýÙ%…TIm—¬ë^ü˜ù㗤閪bÅqµÕ`TQ§v‰¾¬PÜe‘âýÓÝŒ5—ðÊ—¿¸ž´’²i¼ ‘ÖI¬uŠ62pw–ƒ"J„)²# ²r&C³Ѓ¶û‚QËb7 KrþÒYÁ_PÞ«­Östê) ϯH$H@lD7‹CÃÓéYuSME:’YW³ÛwǨõt~^Î^Ö¼5!N;,bkÂdPcšHŒ°Y.!µ#B—‘’ ŠLVlb×¢'tí˜j’¬ \nS#J7+8æÏb˜U–j®Í гQ1ªßª–r2H¾§Ú}Ku8J¤û¾ª²DÀ71¶ÂÄœƒ˜cBMÓ®Æ"­þ`wäû7ž!ÀðßÚì…›ÎäíêüÏXÌÐU4¤ SB‰k1" A/áƒó¿N¡U ÔádAg „í³‰»›6*N[Efp5×#’¡Jé:¤r¦J)œÌäA Fß)ä );-èâùÖ£&èkDÛúÞ­Ó¼ýÊÙ¡‹­<6`­ÆŠ6Ž9ZÜtlÍeŽ”E5b™®´–¡`-ð]™OäâóÄòæ’U†Åâø;€’бɼԄaW—·ªöß‚E»±ÕŒÅ$µËY.¼Æ”òñ…¯š©K0·HøH"ÁÊ’$>ÃaÚØzÝ6Š*S $Š‹Àwne¸3vÄLtÃQâ®)4i FhÐqˆSkHéÆåb¶ ·, &&ÔÒ/ àæ4~WQ%¿†”R¸­ŽzÓ¼ßw4­^Ô¿…™Ûîþž&Ž•—øiP+I±ƒ¨m¼ù'Ž–Êdì½uU±jº-‡2õáU…$13Áf[)#Äg<>jE=ˆ¥Þ´A+žc°zgª_ÁÃÂCEÛ×1QÇGÇuaÈšê‚`dô¬í’Ž{Ò/ñÑÍúx¥µN¦â²ìгIËã83½²ò:q™§ °—ãŒuý3؃S…;0ý"¤³(ÿîŠZ6pª (òß`¡··7Õó4j% Ð] SX%¦DÛ`Ó¾)ËôºQ©Z’Bˆp{–0;~sŠ—Ò|2G>VŸÅŠi$xÞk°Zi$ž.sóz¶æ–UÊ3l× ŒÑ.ì;ÔóׂÄ8f”ÉSÄ^þ)gáŽÓ¨0©(û˜Õ”ʼn¼¹mJ]Y*1اǽ˄ñŒ³ø‚3ÝgÇCƒ2ªäJ;T%xîò»F)AÅã9nÄѨX—Y~ºLœy;1#œâVüŠC7‰ÔêÙ‘—¡XiÔ² IOƒM¿{bIé´UZ¥%(èBRCK“½¸åâx ô×W+þ%Veº)H9:ñ–{ii]]˶A¢þB”©ü}JO°Öcãct–[+jåLm¬X¤‹k Š5£…D§”3´”Œ«0a>& .ðËÆì³n­úF”Ž ÆE {{0ݾ§sÀ³ Žì9x`@îB}1u¡m%4p«NÍhìÁ$†•kÈwjóXoäæŒªKp„Ý©u\Êè×YÑ©*Hhb@$ŽãÄýpËé”)Õ¤I ö!˜\yiŸ´ôçV‰ L»w#——òØU™dì¼æošc6cVÓ˜]¬Qæ1Õ¾T1Èü¬¾•Ëà ‚|¶=(|‰EXU-Åe§š¾æ8á‚ öæ’2¤K·6;‹[?)›¶Zܨ Ljt +ëç`æHÙ‡Øì£sɹTì®ë¡…a…åUÝiÄä!†qf°‡ŸÆ•c"lEpmå{QÍU•±’+C+Õ³5³¤­*€d7¤»m/ÓhÒ¢¥¤Èb,©—Óæ Ó½Qb.ìD"Hâ”L¹J)ϖ̲7ñ?ž+ñ±oÃF”ÐŽ^5Õ,ªíÜœ“b¸žê‡xç„e¤¦XÉò+ mXÜ6+ÙV¬önŒnhR$0³nѤM±†2»Æ©²ÊÃê|.Ë!ßOªöRXîçÇ7%Y˜;/%?G‹€ ÷]ÈÝ zÞd, V@%ä\ù'’7ÏøN_áëõ|‰7Ë @çm¸p1GíŽæ@ûÌ¡¥y"–9ØÎÊVIšÌ-4lv”DÙHQhß­ÃEê³–¡s³@®‚(ÃwB‚Êð_y+¥‰~´Ñâù¦p©—£vÛrâm+E$o„˜Ú3 u^)!;·v° {Á¹e¡Š-/+àyVNÐÕ¹ÜïÛIÝZbÁæÏÊ?"eúÙ›ƒ¾¥ˆ "”úªu ¦‚cÒ•˱ pÝÜ69å¥!jQüM›‚Û¼á˜Û˜äÒwC#ì¦A^Ð òlËÚŽ(%Ú;óöþ&–¶Ð.2)¡™€ñ,ˆÑ»1`ÒÆÛWšfÙ¶q ׯ0i{œ¹I‹ ‹è&²ÇÍâ»ÜTšÞÎgÛ’ÐÝBÖÝ9n£{˜:7Vfô3DeõÝ-OÚϺ.¢VÓõ×_ik¨-j¤rtîÇ‚°Ô)ámb²yZn„”_¯ÝCé6¯êoF/j>ã5ꮉѺC1›Áj3Ô&Òº·£ZW«š=A¦ý±t[ÝÕrt×'ªMÚÔ˜Ž’é‰0˜ˆ©MÔÜö"刬ä±Uêt²Õ:€èC¡.BR¯”9LóﶺYµ©¥HP%LZ^íóXÚfÇÐþÛ;!ŽI»„Ç"ñ5Ì*qEh䂵=ÔŠIÔâã€IM÷¼Ë,Mlx³+«DÊ‘ª¬¯eŽBVª't­ŒÒª¶=äîXknô²äÓ’¿1ßß»ÆÚ£­,t®ú?St—§sé®×Èꋚ›þ.õ ܧþžq-SÓÏ댶lø©s%¦ôŽŠÕz눶2X^˜jt‘hü¡Ð~åfÍt§¯Oê'Jú…ÓZÝÿ{åu,Þ”ê.ö·ÒºO¤Ø±ZÔú·Xú{Ñ_†Þ5kJÞlîÂEÕº{;ÄäîahSÔvÕ«•¬¢„HuH#Ò¼íô´ :²é$)A%.…$‡fpïçX¡âI™8“)/+ÈCNÒ·(ÀThÚÇ5ð®ÓäÃoYo;Œ¸V1ÞeNã÷'JÖcS$‰V]OQ^ÔK­$Kó¿«^ä:è4G_@én—ëýwÑ 'Xz{¨4ÿUTXÓzo%¬ñúbÝ\‘Ít"Æ"¶²ÆãîGÓÖj`5&’µ$òbóY uÚëjB÷¸ AÔ _P=°ôLêì¿N“¬šÓZéígÔ}=&3ªaÂôÛ£º÷[XÑZ?=«ô^Cš³Wê5JÆ[\XÐRfªh콓Fât¦ræ?¦æŽ¥Iae)*M0†JP,Ë– ÜŒ1Ȩ)­)Ö^X%Âyîضå¤gEfva2a)’T'ï ¦†IDD¤SJ‰ŽJá©N’d£îÃqŽÙVryö«¥vb(<劣M°ŠF"¶Ïl‘Y½RŒP5¾€êumX>¤àýÉuVkBºgÔ{8Þ›çúI£ô_Mº?¬µ~”궧馀ÔÔµ~zÌý\Òš—§Ø:½+Ó7ëèOŽÉk=AžÔióºä|¾üu59©õ†Ÿè=+x­Ó]!ÔÍQ[­ …¿ÕÚ“=¥_¦g=Éá5 ütº~ͳªòÙ3‡Ô8éc – Q˜õJ W©5´SIoIc q}åø‹}%0F¢Å¡ÀïÈŽ>É4ŠJldGGpç”ÜÌ­'f)«²…ÈÖßá`ã–,†9f‘¥žn²w8)w,¹"†°ªÒ¶ÁÇq¬ç«‹†, ˆ•ér]UÉu¾Ÿ·lC4EŽ©&¥ë˜ËË']s˜ý›£úCÚ~¯ÆYÄê_ý?ÍšÊÒÕ#ݦ–Ábñö´^3¥òZw5kQãµi— Ò>þ󚷌ך_§Z—VRêóôS! z`1šË'Bàµ_B4oPº“’ÉfzÑ.µuQSÃg5Ïc-„鯍ìYÉ ØÖÓØX+Ag­dýÖB®é €6k“vmì_ømrÀ¥"` ÚAvæØú{$ûeO²¸:¤eŒêk0f”ÅÄŠÃr^uqD½ë$²¬ž¼Äö·¾àf”M f¯,îëÈ<‰v(&›¼{ò »I¦^Pa¥„úùa–÷ŸÕÌ–cuúu«zS¥rÝÎêÜÎÎ%­Õ¬¶Æuÿ@tÂàzÙÐ{š{!‡ÔPÚ¯KPèì(Õ8 ôÙÛ”4þ§ÀcëÜ/ÏïS3Œ£Õø7VN”êô÷"ý7ÊPë}u›Êt#Ô<þ ®®Ó™NQÂèxz™§ºU¬,Aª+u Z6ž¬¸]-Á>nKðã_ø¶MJô•MÞÈa3³’1áõ‘¤¥Ë܇qfíçÈ´Ey}\%]¸py~Î[ –!÷š‚“J¬@^€HçKP<ºðÄLdá,¿iSŒ’4ޱ‰»Ñ³"I îjxœQˆ¤‘£zô§¨ºŸYfõ†—Öú#Lè\Æ‘Çtï) Ò]@Êu–Áëí-SSUC‘ËtÓ¥—q¶ñ­ÿ °Ù€gˆÚÈeVZ«õÞv½ÓÝ9ÿtÿÂŒ&—^¨ivUº%¨­uPå³TµŸ¶íÖÍ{r×Stpéwðºw—Ó×ºŠ…¼³×Ôñ¹Jú?N]ƒþëÎd4…Õ:žYÓQÔBõ2t² àƒ!œ šÂø‚2UUPÓdút‚¢_æ´y~6£"Ê…¡¬ÄW„DÈØ‘cÞEhq+Ï–iYSvʦÁû» ˜ìÈbŒ'=¥æŽLÐW’RÃÅØ§"L|iXî"<‡QÅ ´•}g’›=«aÓ¸x5&jkX[²åóm†L•ù§Ó¦Ø<’ä%e£Ãè-G:¬™ÖÓ˜V玆ceá'&FÝŒ/Þi$Ûhí2pk‰˜•¸„œp¸UŽÚu é¡aÓ¬1 "â]§µ»Ôºe (I}¡‹±ñi}Ƕ607$ÅævN"Jä$ÄÑVR“H"+bÅ1"ÕŽ¢®l»ä¢bˆ`ìD±*ùCÜiÚF Né°¦BóÜŒÝómœˆµXÄl 2Qabìhª"CK>uVJüKD‚}× ”·RÑy2ÊhI;Œl„HWyX©‘ÉR‡ú¶`ŒÈ‚-ó¶=š2ï.#š–ċÂ$KŽüµŸ7%ØlÚwïÇüã+þViB/ḧo·e¤ƒ½ô)]c”‘V6Xÿ†œ‰2®ñº¯¥«2 ’i¤Uw³/' F”Ki¥tDxRk «’`¦ÂYíÙÂmMæå]“d«î±ŽÈ‰¾Ýáâä3É<\¤ÝÔ5¹ü‰beíúg¸cEìËŒ˜yŠöC0’7h„«neDŒ+MÙ§qÙãÅ¡±‚–)l*JY Z$€EÚ<öñæp‚Z\—ØŸûý1±"ÅÍØ–.²ï:ñ;åC$LªÑC4ݱËàV…`³ùr¹œ²úʉ]bwfEr“wÁÃÙ3%†•SÌ¥\‘“¹8VûF¥vÈXÕùEÇeWˆVA·-‘.pTI~ë ‘‚É6’£ñ-¬Œ¬ìËæW—¸Z4•͈ãå1;ñI&ŽW¼bXéÇ^Ao ÝÕ”‚Ûcƒ`Nç`ØÓô²NàDÜñÃáJ§¶Gã#‰œÆÐ¬j¿’Ås,݈ˆøÐ´FlEÆ“ù $F«3ndmä©;³K'Ô g„bç$@'寀~¤ÓXCê „µÃGü=ÕhÌI4#•ªL,²oÚ—úŠö8´š†6íGŠÒ/£ÂT¯¹]™fY×Ä$¬É㚨*DÁLÊÌWé³xô9ÔÓ—ª)šAJ©Ì¸Û7ùÁ,·NüM?ˆ¤Hk˃·êï¸oš¨d”X—wdvE°ü™K,+’8ç’h6jp4Oj˜‘rÇæÖ‰=0³Œ¿5('Œ­„uU·‰f^2InQC’‘^JҖƈ•xª›z›paqý˜êB¿É$OµtŠ%¬jäl²Lb‹ä5w”†–½[fcò¡ü1Ù/?ÃÔ°¸¾åDï ä-5(c9®åhë¯j rI-ÔoÂ3Åv0=TS£N²©>µ””ƒ`.ÏÈ1ûy£¦“Z¥1Ri„©ØØ³ˆîL‘!†*›ÈH1‘]£í4,LeÑÈ“´ÕöYI äø¸¤ùU¥c“¢˜ý+r᜞ØS,ÈÅ·’vDa4³L£´ò´!ZÝ”Uµ^>æ.i$oVÖ8*q*Õ T18hþÉ=­þDbÒQpdHf« ½%Wme-èq.@!ËØ†åŸ¨Q5ꦘ!%V&?w| Á/ºÈ#1ïÁá`Ñ ‰Ü¸*¹3EL7±N'–ñ—kBq öY‹xgÒ– È­2XXœG—ðË:¡­4¿ÇÏX5uU¾ŠÆÕ T'XøÒ®ý±0Z±nѵ€‘•C1ÜNW•IW,AÕið­Tw£u6Ž(ã^­Šf$+,Zº‚Y"ˆíÞˆ©2”z¨ÌÔÅO/“-ÙÿAãu~ðP*…IK2¢¤¿°Ú00hÈÉ;ð2*´µžª¹÷‡ÚjhMœÄDÏRhcV’&úN'ŠBcudªŽeiÐÁò+BTÈ3 ã玶'µMk^,Qê=3K^5•e•Ó´!€FÖcIb.[UBÀÈVYm‡*¡;E‰+šÅãñôB…­ ±­X(ø‡»Qñ’±Sp^³lÑmƒI}L"¦™?tî KIßËs|*}1UQ)¨Ã,IÉ¿äl[-]#Ø©FU6Œ·I¶y²®Ö!©#’æEã79̓HÖÝÅÝ 3Jæk ˺ª~Ñ3ƒV{‹_dŽ`ŸÆ4[Ĭ÷Ö6õgµJ0`²²KVŠ´UnJ%•¾*#Xàfþ¦¬fxZÄ¥C‘žÌíRž3HV®/nHØ)Èlb–Ü”ÅÈö&©ŽIÝ›\ˆñ’“²ï–[òY´æÂˆ¦ié#æb'ðï37Ï›Ê~¥%Z!P!ßòýö+i#H@XÕÁŽ41$2$%ZG1¬VD¯Via1S2§òkq&­””Sp„ÿ§ÿ÷'¾©¹H­7½Žª#W™ÒU¬j¤¸³Ææ$Žä´CQ‰C¡´Í#H]@.ZYy+¥ŽóËmg.ˆ‘3X…LRd¢…¥ˆ5z]aí˜?úBëž÷ÓÝŽhÃ{ßê¼J5Y¡ìG!­$©P²í ÍùùpÛú×ÿýÔC•(m!’CÛž÷ûº7Ï\ƒ! ûjO݉Ó0xÇÑC»ËÄÄ}¼!$€Æ3¹âÃbÛ§qT•%Aúpï¸,ˆ|›o¶Û’„’Ä(ôʤ#ÀKA;ýw쥾 n[‘å·ŠƒoONg'öª?Jаv ÅŽûì[uð°î6þÁ¾Í~a½ç &ǰÝ÷3C;n<°òà;Hî¢Éf$ǀğ±>;î¼I–…ÙBÏs`ng*ìå—óàúÁPÒ«°xìáèXw'eŸ±Ø–òw+3<}Öÿ©, M$GÜÇGë·ñò@„tŒÊj%dÓ ,([çØ"®«—4Š@”Á0 KwoÙ°Cé:§-U‘†FHÿ¸IÇ‚'iTøñ¤@•‚¤|æ¦9ÇiùôN$ñ YT£‹ðQȨR ŽÛUòâûŠ¿‡Õ¹Ü 6©JÔtê› #(¬–œê¥YÁ§‘Tp‚6îdÆò a“eõÑ=DÕÊ ÑÎP¥)Ò1.ÝïÁcI"~ÝçT€L²bçŠ[²3/3^½JHõ(Ζ‡á˜‹ÙŸœB‡Q£F:D(­!˜nM¾»F$yæ‹þ+b#Þ%_•‰/`òIL˜^QÄ™fàj*ìjünßÈ i\z7ª©€0ÙŠÌìäì¿wØ1Ù÷UV ‘T­j\¬ù˜s’Î[%[³süUŒŽ–°DZÑ1fîÐVïE9ks?möõ IÕ H‰j¼Šœ¢ãð(³Fçî¤q‡²Ó×R 2ƒNíváYšçêy®™˜ªŒ°AA4è„-Ô@ÔòDHhò œáPêªêP_ó*8‹C1ã·›“sº.šK4V" RÊÌY•‘B˜Ôs2ýž°CoË@U¹}2®SJÕÚ5<®dd¢H¦FiÃ<)ÜÏ3»“°)1Ø£6ä5ýqŸÊÓž»0ÉVÒÆeX*SŠÈÁ Ef‡º½Ò‹=É©¯‘tVtfñzÃ3ˆ¢´q¶Ö P<³ªMM,’Êü¥ç,ë$ÉìX1iËÿE^=—ÔÓs?†4F¨Y/t³Ä<ý0ǨPVa5QHNŸ–]·osxÜ6,æÑ–Ü¡,Цà°;ðP“ÅU[“)Ù“ìª6›GW ±¡Zø3i ¹åÌIð•YåhŽç)I"(S"»qVfÝb+I´V6"hz“«0žÝAÉ|¸¡YAì‚%&ÈügäÀ\Ø¥(Ø?°¹m¨3­ã/ÍUžÕ—ãV„9‚XlHZ!à¿=S 5r¶qkÜY®‡IÍÓª…¨%’¤•©g»ßôçÕêyuÒZS¯R’­¢@Þ@m°^麠ÒxòФ,·~XåØü—䱪‘ñâh¬›Õ#²Xð Ó‡-•ƒåϲ’T’à1r¾vBO"«åv'ÕdÅë]AŠ¥v! vDG¥\Ll´Ç”œ’Ëž™W2¿”­Ž@ï§S5O†Ö(2ìðC% ÄlÉXàf"V»"‘ZÊ ³~6¯ÒsU+TZ~)Zƒ©àÎûµÝÖð©uèÓO©Ò€ ;™¼8vˆ'ññ›«6xI[pŽMfR‚ÂiÊËô*¨ÏtWEVß++y2lnîó ¶êSûA?MŠþ5ãäò|þÎþªyÔ™tϸ"—¹”n1³¥Hà…»PEYâž›Æâ>VñÊl}’Ù2â¼ì‚UÿõAÙ{µ£!Ü‘ð!rß÷pæÄ¦ÿo¯Ç»Ö¨ivfºfj·Á %P•CæH·mörílU–ê)üR ¶]U(†25Kƒwn8"õ9£:NÚ}›4‹’Â4†äRÞ­ÝX,­3¸Â¿Ë7Û×WA'+†~J¥¢•œÇ$“#&–F’i¥U‘çv%¬ª)…x»oé Ì~Qtjø¥dꀒÀy$Ãa ýš5€YJ‘§å¢AÚ4ñ¾,°ßrÅ$r`…[Ï!ņÎÛÿôeb6ñ¶Þ‚xuTêžS—I¦‹¸Y¤†.Ýu•ë´C²Šò¼¨,X^k ¹N-â0Hü?ø“©¸ñ’Õ5, hÉ¡Ôw ¯âÌ#=¯„~Ò¡"=µd<(5&Z ÍœåI¡[ÓÇ?uR8¥®òKFq1,òÃgFñÖ¿V­P5è““åºnbŠk¥EV™BY[ºYËDï>7¯Ÿ£TÐPÔ誕fùIçólqi|oȪÏÕŸ}ÛÉ—f~؆*Gé¶å¼©D3'&pÍn¢€;…ŒéõXÈa`?%Dá5¸Ù …»¬Ž£…ê^¦IÕWâº:«5 ÒJ «8ªÉ-F7XÌ~aÈ*»ó3ºÇ;™¥%݉+K$r¸ZÑ!Uªë³,±«<"9ŠŒ…® 5& õˆUYn™™¥YPH%•%>“¸/&O×Uê9uS¨”•:Ò°KÎÐ×áðyÒJÃM`ÀUF>¾ü HÐqR¥b“vŠ0â9G¿ïǛȗ™ ±âK‚Dcm¼ò+²ƒ¾þP¸ØîAÕlÇõ ?J¤4àdìW®*Wi1©+G"ñ™%}¢ ö£ŒÐq¹T.C¹³D6Sõ<ŽV4¥²€û˜ ØúˆÅ‰RHBü±ÞÙa}þ(„ÍöôÕzNn¥U­Ñ¤©ÁÔÌ y}ÿ,N—PË&šu)A!%¤ÀÝÚÿglHp·RóÝOË5ç–32Ç[œ :6x)gÇBE«©¹›•›¶få¶åy;‰Ý¶äÁyÄòÏ“ûb–¦ÈÔÍZÍA,I~Üe'" UevŒ¹HP*K"ñ¯fµ³4×ÛáÌÈ“©z’{µwÿ¨€ÓB¤BWë,‡b+ʘՌñÝèKfo§f+*ž€ŸE4$ÈáÞ|’⬾z0´¨(jZ”.ÏwìŒMú®ìÚj%%Pÿ'kR¤ˆÑŽâË`¦®À£[¶?ay¹˜€2Ý$ éœ"sV?ÇWºí g!˜‚›³’&0G9xëïXG°?«rú‚œ8ìˆ^ÏÈY5éF&neLj’y*8CH1þN¹"B²ž·hõPЫZsZHjG p«Ä²1©VˆÂ–yð쳕2’©H§S‹•RÏ %KéÙƒ”§DëME,úƒ2‚@£_îÌ3Ôš]OQJ©„€Xg·“c²KÅ|ýy@ò<‹¸ä]8ìnFûso zèRŸïÌáŠ*Ê­IâT’͈œ½Ø”½yDk$ŸQ —#iÕ¥"Z C'®Bõ7TîQ¤¢ÅTòc‚+)bË#Aï~1Y·µ^E2ÙiapDo©røÜü½FãfïÈ{¢É‘$sOδM,=µ{]²Ñ%D2ãâ6Á>£—éÙ„"²KÔ@ õGÌ  ÐZó‰VÏe×RŠ’TÈXR%ˆ`C^\ƒôÞ«`³^L»“¶á‰ªÈs¿!²„~[%K"n­£ŒV-ö»›Ì²42¤Fª¬ƒt„uå$èŒ-È€v98pbßñ7Pi9ÑC¼†%ŽšÊ6°@ˆ, *¼®‘žæ"!7<¤\Öf‰â´Pj즤¯^¶MaXà"hL ñæî„2:ÚN¶m·’ÙìÃrÕYC¹l¯M¯Nµ:Š’§,©fÃqêx´9•~¡—©MHN¤¤‡t˜tòqcðQªàñX'ü¯´P’%j‘ —tuŸ K6îÀFYG®²(ÿ2H%ØýÉ#Ÿ€lI!œ„BS°W:ÝIÔéÁVºÑ– õb©’P—¹Ì"׊IR'YD(ªaøŠ­x»Çvf\yí—êf¥‹sý'xµd2#ÂÊòÆî‡³$°Ë}àêÉYÔãBKpÔ¾•šø…D%еPàßÇèN&ž£–JISèo”‘ ¿h¾;;QþæÔ¼T?8$^j6+¶GÌK`1D7?ZNÃ~¤¼wî1Ø6Ê7âeIÙ—}ÈÝHQ¿‚ ÃqõªÆTå0×­dkEW¿ohlG"?Ä–)I•;P´±¼\Üÿ@ãœùÙ.‡ØÈª:‡p(©‹ ¦u®[ä¼®ÎñE%©Cbb‚¦%˜C4O$‹3]™éÙŠÕBÐß PÀbü;Ëq8«-žËÒI *•ÆK¼äó-7¨}Û™m‚Ûˆ'fØܛǖ¯ðõ/Q$b(Æ1£« fK»GFW°Ü«ÎG¥bÖfv£5•n¦j2€ö±²•`®ý©áv #4£6 qIQß±„EI²6)Š¿…æGdP$jÙÃGvì퉞§—J$ú@b“’ãp ]Ú=ðÉAÛ´Ä;ðe#ºÂ5Öí÷”ÈI^_ÆÅ/9mÆ^<äŠÈ®¤¯‘2M$e¶N0l®Í4vyr’Ò,Ç8_ãÔÆÜ†Ô¼Bî幯Òòº06K3 "S­%–`o½Ùò[%ʈK ÒH_ºB™GuâÏ»)•PöÙ²Å%ˆ0­"“V/ÍìlGcEþRB\ $ˆ.aß›{8}ñÎ(ºÖ ì¢X]ã´ó#sÜôÞÒ.at†–÷m©z-†Ãɨ.kC¬šÓJ鵩ô¾%𗳚U3y¬FK¸L^¼–¦b‹-KO+nX ÉCâè>’û4êÇLôö#£x~jŽ˜hU¨-a®t?Séë¸|.¬Ê·c]‰u7Nr‚µìÖ¬Ôº™ Œé¬éò£ª*ddVŠ^äp¹ AíÏÜ. Œ9ìÖw =aÄ`±U+wndó^œêZ8\n"s ÷ã—+”–*xÛ1Ê–íå嫉´ UÒ©{„Ó~áóGênk¥Y^¬Ð¹Óïiz 9Ñý=§5WMtÏ7Öœ‡Q³Mq{HVÊbt¶¯Õ˜.Ÿ@÷¨é}A-ŠzrÂâóñ]êäfm0 ¬²+Ó)’VînY¡‰å¹òé×I-]tTêC1fŽàïi{bÈÑö“íÊ®˜“JÃÒ+›m™éÅ};ñáéh]E©+j¦ÓÜoáá°´5-yWR)tÎR\qÁ -!(èŸôÿ¦¸»ZJS£R–RÎ_Sg(är£7œÔyõ—ÍQª²ÉïçõMÌÅÈÆ?5©µ3å%¢ÐÁ‹ùk@‘Aò/]1úTé„Ô^çõ/Eµ¯RzO€Æê¬…Ïv”uoN®>˜êNg©¹¼¾®ÌõCUûÌÔÝ?Õš¯Ò­®4Æ„Ô=<ÓóZ†¥©îôë#Ôw¯ÓÚGÜdô«ë,æsÝN3«Òôwþâõ6+Tõ¢ ´CGûþÇâ‚Ý¥‘ÕZ³ sSc}¾gªd´þ­Ö:‹UeóÚ.Þzõíy¯²ôu>zLC9M*td ô‘€@`ˆ’|ãAÉ-I!y°¤…:t©ÝA¦ï»þg|}\Ó>Ùú¢bÔ4´çNpô*ê\]=?–KSÞÌŠúZ…ïåqš3/ÜÓšŽL-C¦Úhbô´—æôqÑÎ|Mz‘Ó Õý96“ê. ¾¬ÄO›Æg"lör4uÊÝÂjm?š¬ô®aµfÊ1Âê,]ê—1Q¯^äR¨ß3ÏM}Àôߨ•²ý?ê»-iSJû¶ÄhM7ê[úÍÔ=s Zï—Tÿ¹1šë=ŸÅë-3‰ÔL'R5ml¶kFJ߯iܶ Uôöº›Ú'I:îaõ6¦Õ>Òq}v”Éî,莦ç=Ø{o‡­–ôvW¬ÚÛ7SOél'Lr½p««tG·1[ –4>žvÍÔÄé|"ýÈÏR¦>àWëºR 9{¸¶Ìï|@å–µ~-.€–ÿÒMöäv'éÕÿn=:OÓgÒXÌ-(sÙ½q€8]Q¨4¶¹µ©r¢HõF¯ÆëÌngÔl–_+sãjMHº’Þ£ÌVÊ×Åë<…œ]Š"Io½¯‡¿§jôçOcðY­;ÒY,- B†2ÞŸÒM.'Ôê´ub§Šš{-ñ÷lM”ç¹4Ó5Ñ=2ÖØOt='mY›÷=›Ñ½'럹}ӌުêŸZõ­Iô¾ºéODµ¾‡¨:Šþo)?Q´~S?{ª¸GÖM“+§ï¥t]œ©m qõ>°EÙR4”2´J„$O:I(Ý”í„í L ä¶ (Û’øy„­JÊ¢‘BÂC‡t°. \†ìdØÉ\ª‰@øêXR5 fQ)‡ÎÉ&%ª§R=¤tߪÝZÓLÎجhÓëê<./¨tõÝW­zdžèN‘Ék[‹Kfð™ÜfR.Ÿt ò51v JÑÚ‡3»tžý|¬ö÷¶þˆÞÂWÀÕÐTôÕ h;újm~þ…Éé ‡MôÅ} oè,Þ‰¹‚·¢2Z[JU‹Nâ2:FÖ" XC.vùH\ßĨ^% å ŽÑÆñ,„Jæpë,IÜi[„±öiQ㎛ê©!£™–4mÕ£s$’\IÎH“2°å6-%Hë0þIYÌ…ŸGàr¡DüzŸúA.b!’þg}Æ+Vj¹ NµúD‚ 3žÜñÎàý°ô6å}+Jn›`bÅè}˜ÐXjUÎR•ô~TRÖ™|N+p®3#®1Õ5Œ¶s±d3[!Ôh¦·rÓ·¶>…Á¨u†uú{›!¬±ÝTÄåiݱ“|..²Ü|¯ZÿÚZN{ÒéÝ’ê®^y³]·¡q¸õqVæ,æ3Í%€%™yt!žC$®ÒDñJи. ½®!î§)_þ]Y„üXy£?‰Kq• ‹“|Î¥ø„OãaMPÒÕË4Ê S*I?Òô€Akðo#—Ü DÖªXŠ‹%ÿÜD“´0G6sÅéì3-‘ÎcqÐÔËeëaéänBÏ-‹˜í=‹„ŠGt”Ê)ã`†²Ë-ŒíhÔ—üú âý¬t+oVÚ£ÓÚ«²ÓýAÓ9 äó6ô¶/ Õ¶Vêm¥ò7®éNŸIÔ‰£3êûú;¦£Íܵ}umœ…ë¶ŒÖ ¹¨2 ›iÁžÃ óy8ýhCî%¸»ÍJ`R›|vã.NëÌ0–#,¼Ù^VˆRˆ•³ÞDŽy±°LW&r³·r!ÆÕeòÄð  Å@ sÁï°Ä~%PTEU ï°<ý[Ά‚´QÀ†u HáXŠ…œ¼ÕZÌ4¦±Ë·0”äVÖÐJ§!¾¥Ý]»Ÿ‘•¹vî«É¢z±ïØŽ?½Š(Í^À¸Žò¾–Š•RüP/#¼Ó1T* Ú‘ÔÍ<‘økàˆrUƒSƒóÿ§9l²ÈF†í…Vû@‘³90ÅÜØÓG n-Û $ÚT– fff¶Âbvvíß©%D’¢ c¸?BÏÞ1Ž!_ŒM *É":+I",ãL›krFyUÆ¢©”–8ä®Í7›”ˆ®þ4|H+/„h‘D ®c/h(Èü‹ñn¹e¯™àO41‘+H\,^œÏ(šÍ—c²ª±ãgåcõšRÉxÓ¶ˆW™‰ž>N^O.»ðúž2ìÒÒFᓌ Óì@b§)K‡` C°‡ç‡?˜0 Bœ†´·¶ßž0̱—^J¨Ñö'ï#ªö¤d6X 3Hµ¶#æÊ›\†WîÒ‰«3‘ XûeËGIžV"98ÍJ·n°µsÖêD$ÇšÜrP¤—û›nˆÔ!YYZUap$iQv¡±ÊîªnÕòR‘UPœk)f ù ¿l¢öÊ *±Y–#.Ë^1´Õî†ùÒ.:eQ I  çÁoÓðÏ%ÃËb6úãLÆÑ33pä–v•8çe2LË-‰“hVñelÄ;Va”-iPðøÑöÂ×Q ’ ª©£–(¢gÜÇy8ÉLHQ°vxœ’-Ý~¯/ÊÛîìÆfræä~i Ž&Pò<â¬~Øä'ÀK¢²‡ûsBŽÏ2Ó9çÀ/'YŒ±Y+sVÔuBÇgƒDÜX”³ÝƒK7cïw–Â^!˜‰àøöˆ‘‰çK&§Nbm±9A2’Õ»¶1ÂhÑ#XãöG¾Ö«[c&(- žq¡—d–@íÅ¥|Gƒ Ķ (U“o/ãUËFf*iü«ßµ&A굫ªUH¬Hz뙦³[®!¯"V¼Ì‘×Y$Ib>©é½‡%Ë7$ mÛ>GCkš¡}¢u1-¨Ø÷å×RÊ×^aU)RRÓ¥!À‡Ü»v~î[rŠË„T¨«S$7‚ÅÆ9}Tÿ…£*‡C_.®Œ“*2¸­‹G;i;Eãå‹AË"äNðj…ÁˆÒ#ãhl#ŽHc(µ£TjñÎxãsÈË(#‹r ’)Öú·¨èS«‹&³Ãz;R‰ëVU \„6!eŠÜ‹jJá‘§…‘ë-I~uY§·Z$Y3¨º~:5&7$ÕêÁ½È pÓA k ‹;Ù‰&L´¦)·±Þ[tõRòõד¢ƒEeak% A„±“‘úí‹)æ¨ ÍUü@¤¤lK‹òäoËœäIˆe©ï!RÀ’ãd$'êw,L‡r@Üø5_&/ÖÏemÕ&‡-j"vdU{¶š»çF©4Èc‹®ñŠ×bÜ^E°ˆ#:Äí=ûXóœµ *?ÎûªÍ Ž9=¸Y”KÛÜn ÉX‚{ÙU£šÍÛ(“BT=kw$–@ð!îª+²-Ê1HÖ¤±ÛÊĦ¢õôªª¿’’•i y%±‹»?/Œ¹ú´ê„ K eHÙÂ;ðÌÞ·’5åºð;„§jÕ#YY%E­V¹x¤—ìÙ%å% ,Ô¸ˆˆ"Ñáã°q…ŸÅcvʨZ°°ne{ŠûYU‰ J+0U®)yG“!{ "/!Ý++!äÖì%ž8ÎÀ‡JsTÙ£Öà(uZ… L-™+U§NC )ÁÄ5£€Ï^I-¬±Ó‘Ð׬òþvÅdz—/Õh.ª(¢"­¸H L ¹.þÏ…ÓªÓ¦TjÔ ô†$€ÿ)%ÙšÛÍñ?jó,‰"E&ë9`¢'–áÛE´„nÃu!x‚OÙT#Òè'‡1¨aÛ´Ú¼ªx†Ê9ü*c1¼eID•Õ¬•- àÈWi´}NÓLÀ˜ó#fY=QƒÉ$MµçE’±^6c`V=Á™Ñ[ÐóFgñš{+˜·6;WaT‹âÖ '1pÙ‘å‹ä B‚È$×òÂ’øOX²ù|ÈËfPª+ RQ¤— )&ìıŸ×e|ʼnEB²TX—vq'v üös±†Eî.Î9l«Å‚LG4æ$ta²b6t,ÁANª×âÁ2†‘ÙEHŠ]‹ÃU]I)Œ[äÖP{ê?0ª8JOS4ÆÒñ‡*ìyñHé×ÞvPLqW2dTb"ÍvH+Gjjr~ƒë½KÔ)Œ4eøRLζ`޼L–£¯ÙºÍ,¢5•ȱϤ*#5å2ÈeóÍS+¢´¥'æP;¤öâåÿ1Šó™Š+ B*!F/pT nÀñþ`Õ²ùJ•¡¨‹N({R˜VÅËqå™L49iwžNÙíÑ/ñ¢ØR•DÁѤð³[ΰ…Þ³')™¯ƒP`ü»80/;o-ØÐ¬Þ]T4|TR6ðÎ-åŽ9+?ŽÈ®î‰%š€É,©8@°:†q!iª܉Ž8– @ºTœ¯ox¤f™_›Ëi‘²rpÊJìX2…^[(!‰ôÐúŸ§k\¯“Kbk\dŒW¯²;W„³Õ”=ÅŽˆ'æ+B L–šÂ™å <=LÒò8ÙrRîTrø„\–6ã ]äår+$¨Rðò.Îek¯0µ"…B“¥Ž’_Ò7dýæq^W1—§JšUYµŒA!Ÿƒ1±_-z³K¤ÔÂKG,]ƒÆ;6…¨™^³ÊjÆ–öw%ŒVA1œÆ z*é‰ X÷XÉ€“ö‹‘Xl«¼r!`ü»€íU¨ñY|Öå%²ÐÓîGa,׈7:JñKZ9ä¡UV/]¦ˆVÙlYàoSµêv™î³m2Žf”Qò%C\s*˜Hdßqi@\y¹·©æ2ù…PÊ¡4W¨!E`$¸$¼ñ Ïx3Ž_3—Ml•Q )@… àˆc>íhăT÷Ž 0c2ò5'djÒB’F¥G&çi dR9,’2³Å•¡Q9ˆzª°¯âŠ^ÊÄF‚5’ˬ«1aXd™æâ(;~|ÆS³QŽÇŒÞ½Àd±wiBÖÌöë2Eòh£S2¸VˆÍÆÙuŒÞ9]YiÈÜJòFa!5Ï#*…<ÉÉT…[Dž*BÊ êÍ—ŒƒzßÒ‘V:‚¥2’T!Qn&1õ´ª®š‘PÇI°‚{;@¼³wÓü‰%2B½Ù]ÜvâÝ¢Š1,’ÇãÄʦÔ*Íü,ß“²#ïêþŸE/ï—¶ÈÀûêëK2…)"NmDÖ!›pï$ѸÚf‘¤rw.ÿàO ±F áÕ£ ¢YC¢–ƒƒ’°¥•ÿ,ñ±ñ«äÇËR¾¡¾ÀŸúÿ{*ÝõXýòõ¿f˜4ªåò(ÜáßyLÄ•o#6çê¼G¬]|‚2ÍmJpyd˜?½çc££êÌÝ:s¿Î$}xÜņ>‡/0ëä¹³T"°'Îûr$Ñ ¹’éAA!— Ä/=Ø3)n&$ì 1ÜñPClziHân»·Ä2ç÷’¤ìT@‚ÞìúÏÔ Ý™Ø1ÛˆØÇû‰ð€§ŠlHâ[ö9ü‡,C0˜ríýŋ팰ۙ'ÿ`åÀo ¹n;¿6ÿ<úOy#œ ?EœÇÁ¶ÜNÇÀ?S°¢Ç¬98ÛeV»†Pþï°,w;äùØ>”b‰ˆ^ Ä2óÛÇnIßö| ¶ÛÀô°àÈ„°íö ßï=(’I=Íÿ©DGpSÝßL¤Tî¡“þ=›hë•"£^Dkò–9Ëc#ÕFÛËã+X+,VíV‚T‘Y j‚PDf¤~{)±íUR%ÇIù§b¾ªÿJ_Ÿ¹_õ&n+x=5T&ë)_`žÌÝÙ›`óºÆÿš":1,W¡=Ù&ÒiwÏaÕ»j­‘®¬Vr•¦ ¦)›Â@-óäÀ¤]NqÒRl~Ë‹¤m¦ýÏ+K狈Ԁǃ§ëb?c]ô—‘™†" E‚%Õ?¬Q–ägk £÷áwfCËoZÍ#§iâ26âÇGõj,ðKÎOÇ%HÌu˜G¹$¢¹@ÎW¸{`ìC Õ+ĨâêJøgRXÏ·Që…©€{2@äM €Ëíô Ž€o,A£w]ùÚ9ªÿÔ¨A¨—‹¶ Ï×ßje¨|"E$H:CO?~#‚p1éî›Âgpk'@Y+rÔJ”„¤ˆ ŒŒ{ÏvàÀµYÔ|}ƒ¯©èÐÚsòŽF23€ïÃnÚœ‰xÙ‘^E>MÙƒ3øÝ)4äÑ¡þg6ä±ýð‹oP/„E>ݵí9å¢Að¬êŠG¹n@ Nçp÷ÑÿÃqø>¬Íæ+ŒÍPš‹¶Ä"Äìyiäˆå¨QU J]4(ér¢ðãaÀ¶+ÆWˆƒ¨8Ü0G:i±ñšŒÒ9™-U2ÊWÙi•”±20j꼮 *GÓí+LjĦۢ¿å™yqnäd€ÊÆÀÎÛ'•R7AsjíÕœ3…"Ÿ[yPÍCuPs_¡^ê”ÅÆdÚFqèà~€ŽÜ„ظ‚î?`·àoû£êÌÞf¸§•ÓUSAJês¾öÜo†ËРª™‘ðÐtÕiH´Çxµa^®Ò˜ ~#‘©N('«K¦Yd¬Ï Vf’ÜÍÀ9šûË÷hÀ“‹Ž~‡Òø,¾ž¯zõöy¹ÈlM¿Ò…¯ÅÔ¨VP8™‘T´dFÄì}Mu©íi\óø``9Á n©}ˆƒfâf@À?•zçtåûV–äò6®†ç·• ÷í!¸Ÿ*>Çû½!˜¬2&§ÄYWÇ()@†Hƒ"/hÕ툿€)£N‰C Ìû´—€?¦³$6d=˜dõÒÑF˜Ã>4×ëçe ʼ•‰*û¼_üƒ¼GûôÇ1\d‚¾*Êb5j.=)qyíc¼ºhP9Å$ÒF‘LCA.—{³oãœsÏN´£ Žá°KöÕСÜq=ÐWqà H,¬x’ß§±vµ®[*´˜ÄŠÒÅ_äÎÆƒãÈ¢;\„ªa–c:ÄÄü ÿ,LEøÄgõQ·¯-ÈÉ ‡&òOƒú 6;yÛÐs[þ(f2¤vT‚ÑÄV2•´…Gë·5]?3mdYÛàE»äó֌ƪ«tÑÔ—RŽ’ \‰g ò0ùŠTR¼¸JURàÄ‘0Ï„‹o‰XéÖ–VæqÒÌee-%ãíHxÒʨk*Ä œ 3ê#­´~ „ù˜è^­ƒn” ín̲¹2…«¤¥ kjf ±´ah·mŽÆ¤B ÆÄrâ»íßÉUÛÿ¬6aè}ÔÂ_LÈ í…»S›- *J ïCæIâØmÙˆwXc<€õ ¦fºó4’ª« ¨?¨Ú.m"\ÄâYŠEM.îÀn¯éßþ9X ¦²Í €ò‹ Ï®Ïü;Ò.Å +'c'%þBÓ©øeí÷’£lÑ A'Ý6ñë·¥€]=ƒBîÆ×³Ç6ÿX¼³¨1ÈNÁ¹çÈÜúï~Ú@‰³)“©òXrHòTƒö ìÆÛŸUÕÍWMeŒ¶ !‚ˆvi¶ã~aì¡— (Ó&šuhKä6nÍìÛâ½á4ö.þ°Ëb-ƒ=‚a^bê?(#­îJ8Êfž,wçÌyX§š«)øa½áΓ UéZu`ÛÈ] Œ4EGsõQ8ÃUÚ´[CÃõÓÛŽ£æ‰‚óYT©lîû–‡Ð½M¿¦àï$À™ˆ $¾Þw†%¿|€ØÈîð<·øõv{1]5UaèÓ'JˆÛëîòn#dèQR*ꦓ¦ªÀQL€Íµ›ío¥0˜4w1UÊX–ÏÁ±Ü½n@ Ë*&îé]K×&#¿\žÝØú`´—Èâq¹+u§šÕ˜"žYE›p,ÒMY+Lº·là$’8÷ƒ¿rÄ XØ;Õ5öô*½Õ!e…o°%Y·Ø,eÎè²ñy·‹—©n•i¼ì E"O&d^0EåÑ ,ì±1î@€BßdôŽb°ÉSX¨ £Y@©É$ïÀ¶"Œ½š¨ ÉBY,žäo}ûßé®”eTø÷¾¢äoò&2GqO{vžU+™I:²½ 4ÆœÆåõFR…˜ÙñÕØ«K•TÖ´±ÅÊÉ‘díÖrL ìM[ Så„‹±Ø¯ù‚JñØìÿ›çbX#ÐCC(]êfnIáùwIRCr&㈘²î½¸¶œi·§ËfkšY…ª%(\’AÔ½†ÁûâUòô\¨’5UÒ¸7¶ÿó2æé®“.õ-«*–ŠÛÈU¦æË.êepŽû{ýŽÄ1õê•Ãéü}Iq±'¿zNm=«vK4U•‚E^Fxæg`dxNÑË,»“ʺƒ·ƒÇrAn@ý€ÃpÁŸ€RvøðÂŽ®I¶ºCrÃ3¦$ ñiUò;éþèÄ1ú’=G%™®¼Íºª)Ä’„7϶j…ШE$‹H%ËGy~ðøÞÆôóM\ÅPžZÖÄ–hS–W‹%n=¬ÍSµˆ™%eÙÌBO õ6÷‰ÈõÐÿ†zPRµ¸×’ì£!pGÚñE aŽ»lÕ‘Ь\Ä3êS…& ÜÝÅPfˆþ¹½HK‡à –qm>êÝPÍȰ®Ê ·ƒ°?²ÄlGìí¿çÕ3Yˆ *­Šï¨»šIÐ,Ȱ»ѱ]´žÅç³yš—ÃË^œ3ˆÖ½»1ïlA î},HJmò ¬³lð‡N^ˆËÓ=*­x…1mÜÈÚ~]¯,¬­)ä“+d ‘ÍÔk§,_Tj]×õ .]ÒB$vPewÂÇË‹íµoú ³A”"¯ùb`¶íà&ÜIý)mþª÷çÖŒîfº*€Š«HÑLé)øÿ’÷8«)—¤iºi'YÜ·´3nÆÎدÚ÷Jb4Þ?&1-we³:;KvŇu‰VH‹O31®ñ #tï+B°ÕóM(ôÓKÚ¥RI¢´Íb ³n¤q³D$e—VH{Œd†"Jל b ÄŸZ]Xfþ? ²“nØ  9 !X¬D™¸îrŽïlKÅ•þ/±fQJ iNç6Xb¹m÷$CýŽûo¾çiUÌ×NS.±UAk]MEË–?FÙ‰fxœ22ôU™ª>HHFÏþfò#øe¥›’¯7s¼²;d®re° ˹i|4¤ûî ­·p•R= tv˜Çg²ŒvC¹$u;M\C$èÑɇ@Y¶HÞHãIy ëðž`Ó³V)6vâAeä£s±?s¸`»ïçpO¶ì7Ü=ºjd9ý@YeD(!¤SÅÍÙƒ"÷w_Ô»ÿóyIí2M—ÌVUÊ•Uz’”_wÝÞÐÂ…£ ¾^ÇËM §öìûr78“ÉÓ]2ÄÆP ¤ßŽR÷2$ Û+2¸‘%¨ûšöw¡Œ‘»c¡Î½Òø-S&6&/p܉Öi&‘@¥ñæŒÃn1W6¬Èâ‚ÇVÕˆ­/VÊ› @,6ûxðæB‡q¿‚ l nçür÷xõˆ°¡†úl©>Qx©_ñS`9ÿ||ˆ ¡÷ òÕ;Cd³Y…æi ÕZ’Iqª¤0/¾ïôŒK5BŠh4Ò’’†P`%hI‹¸­poìÔéΚ’,ˆ2/,Ь¼¥šl%Ù{’ÝÇgb|Wÿ 4Ô‡ÌY&‘…xû‡'guX¥wØ.æ2œ³(àUn2«îIP%¨Ò .íV±ØU²žO‘°Ý@?¯íßö}ný pî ÌؤîÀ¯àò vâ=P¬ædT)–Ú´‡6I!ŸÀ¸àÆ'ø\¸¦ÿ %З‰vn ™­H¦™šyÄ2p¢FnAUÕK"Ø(Æ8ù>{«6*S&9PÆT„,Ü€DÜÀ©]át_»ó®8ÌHÄÇF‹,®"¿‰]}.Ã~IA_Ñí‰i­7VHø¤¶ä$ް+Zjïò\‰Ðƒ©–U„e!øX"BŠ¥ %—È‘™¸‹ÀrýÅúíè2©%V! sÜ€å›rþc¢À P9Rƒ30íÄ~L÷e*™šÄÈÿ@©$ŽE{³w‘R¬A²Ù° A=bŠ‹P2€w%OÐئê¦3mÍÐÆS~k- ;7Yv%‚–ˆðDà‘@ªˆb‰Õx˜I®€LxG[pøË2|ÛDÀî={›? ²8w <*±CPŒÊÀ|éPñü”·S¿­@j™ð,ðÆÝï¼šÂšÉæÅÄÝì×7‡ûlEòF°-üi•e^é±/"!âpÈèP3;–7ʼnáÔL®ÒDlÈèÊ#u~f3 ¤‰ªÒ|nìÙ¨¨ï[˜­ô)Ï@%wVî™vR‘F€¿qƒvÆOm̈Óƒr—bV[§˜òÔ^ê±¢ì9$«?…KŽà´ûH!Þ5‚;î{‘º6$/Œjqê $X8®né3¿ÒÖ‚$9b‡,ç†ïí†XKœDÍ*£*‘ï>8*ÄÆÓˆÆÓ·Š ‰×Óm%‚Æ!ŒCJäG\»Ç0ɹhëË aI™„¹ KѾƣ‘ëbuPÍ Cvn| £”å¹#… É"£*y:¼è›Š²”â„ögÞaé-!NjŒÍ¡Ã:@¹XùÈrµW™UEŸ3Çw· þŽ@¾òcQ F&åºðufŒ3;+ ò±ûOVîÎßÕ àÛzhKaÕäB’†$";‰_‚l…¸Ã4« Í(øÒS/Ô~&áË$ ±Ý™ƒ~žã,À™&Ì}ÚÎûcyŒœQI¤ÌÁGá¹+L #RªÜ¬ÔI ‚±Ü„éP¡ôRH « mßµ,dHU…™d]ÖĤ†ËGâ ®=sÒI%iJ,$Q}¤~Ú÷LB³Éc~E(È7–îÆ®Ge@B{ä7å¬qn¬ÛÌ«·2qq}„¥7¿uA]ý%`±@g ãÆ¡îÀ8ñ¶âŽg…žØƒƒr] ìñ ªñy Äï º®Æ:è%©’S/l3mÌgn⪠"1¸øïJÜÈšV?™I´–¹ÆxBÊ=jE"±í1ˆ¤q³•eb2ÐKae„}œ»V+©ä•VìE¿§¿ä@ÒJGmÓ”æE‹ƒª¾ÜM¾o8ãQà"0 €Íê¶ŸÖŸM·ÌÛý0Å ¼‚ÃaØ›~—üöÇ3°mÔ³lû«s27&x™?è“ÅHšŽüB¾…¥B „ÉÈp /Ñaeg.¯Ï Ÿûfˆ(y×1_jК¿žbOǶËÅBl—HŒQÈÄ Û”±Öï‘ÊAŸä?iÿ¦c³«:¨$¡ˆ‘ÍËB!xIe¨8«Dí¼Ð¡í଑fk6Þ¤PìÀ<°6–/Ü—vÛA`Ïsa½¸ãÂYN"ET ÆFe.|¢ý€ÞEÿî"äÅU¿ÐÀL©úÖH‘Îe2—X¸9ÚÁfB$Šûä¬EÆÕk,¯AEvbù–UÇ^,¼ü¹w.î,D»¾Oþ´|Iõ•‘›‘‰ÊÊ©í©À«Û13~7™Ð®Ó~("T¶;¬»ÇH. ƒÛx¿a~o‰aÈ0Ïߘ÷8Û’5ffq¸î¼gxÌŒ¬&`ð"–~ʈڪ~‡ŽIH˜—ô¨~Â0ûœ¾BJAA±>CÜ™ÁÙoH¼-(5Jò;úny%P¢DW‰!º£/seضòG°y¿¨9A/ôOèæÝ¦sº±2w£*¾GØÉ<;È@3ÔFíÕYƒì8úZ}0SØ|îÒãm†%f$?Ì;p/bKãk–üQ6M•IÍ"í‹ÆNæ{Â7­Õ±·U~[5IHûƒýŠÁ§F ¸@¼ûn]ª¨B€_s±öš‚„cëŸÝ™2•“s1n2+Kå8nÒ2ªÌfŒžëølÕx»*hþ–Çv6hÙGaBXì÷oް)/5-ñ%Š¢oÒ]wôÚPØÃ ·Ùî@wí„I‘ÙÛÝÁWôÇG¸î»"ÈTI ñs›¸«àöÆÑÉ# ¬*ÍJ ÌǺ£Ö#wáÅ•Á˜‘[‰,Ž"¶î!#‚W¼T_–1щVnZÛ‘£‘ZH„"U!HvE“ò€±í$UòKD¶;STÚþÞC,Ì¿YÌÊaâV…Ô1nPÎ…ci«ÕvŽò“f3é&šR »†$¸³{5¼³ÃŒ2X±<~¡ãvïo-Ž29 äÃ"Ũ ÕAîÅ6Çá¯#^p'-ÚmŠÌ²;ÃðrìUŒbGkvžVn#¹8M Åf±oˆxÀõË6'W‘¹hÖ8–U—½Í]¬ ©Ãc¦?Ö€k°R¬Ã?)"G±†‰PªG*”XÙ *ˆÅ„1†åвVY?@U”,n læZ[wÃSL¿‘ÞÒìxØã¢e/˺…¡TâÉ'0?%u¨WE_Ãw½"ùîÇÁr’ÊUÿ"»1F)Ý*¡û¥ä #ÿºÃ7å I¸FÛºYÔž-+¨&(—ÿŒDDò¨'a™ ȨÈ/#¼¥Â¤eÈyì’ovo˜§Ž DªÄëE¤e`Õ×|o&(ÉVnD‡EŒ‡%_ÍVP 0é0Y–Y{s!Š,“ì©Z#Ú7–E&XëÁ}^áYúŽ™{0ƒA>`ïökaßf’ÀAÙ¿?øÆüÅx0å(}¥UÒ9‹sV‘ùÅõ2HòqwDz£äÔ.AˆÙöÌf÷°Î0÷Û×´wi–F=¼Ò"+H<±@B¯ÑWeŒñ_Rc 0VŒ¢‡'‰p…eZC1ÙÒbQòE˜gAF55‹QŸôÿ‰Ä¾õ‹£¡—ß§¸fûq1ßTãQæ%™#ÄĈ‰à»¹¾¾Ÿþ˜3²–«3B}£‡î0o¢«2LÓC“vø‚¾ßB_l} –ßṙÉb[É>Fçc°b ö$ìvƒÈ‚¼ÿ'`X¯P 1ø$‘¸%·ÿ9Bλ†ó²(Ûb6MŽÛíýÜ¿ËA$J*@ÜîûËîÁB†Û}‚mã˜Ûb[ÞÇ×?ƒL÷g,6a·?ã*þ±ÝTb–?½¼ölNÁGþ6;úÖ~ùÛgfrÝX óþv@<Ûù¡ãÓ¿müø<ˆaË–Ãoòÿ®x?ÿrÞ“¼q» 8/… «¾Û[Ÿ°'rÅ·ÿ`Ï¥‡ÚÖûo¶>EôµÔ{ÿRR¤Bò{Àé§yùr.ØG³cUeðŽ.è™`PRIl RÙÞmŸž:ÙœdÖV®Æd›¶Ž©ÛpòÈÐÓ·­ù Y~õ ÛÕWé|ÒrŸê=Н{¼éêW$¨Œ ÿOÿf+:ˆ¸©Ü¹‘f'“\„G3Õ³êÊãã{Và€Õ.l!r$i_Z¨#89㸤Î>=aõÈ>Û]—K@=2šImIY%Än$Zó¶9ŒúÏîAAC½À–߯-ÄÃJ‚Ëk€„Ý~HµÚ7Ý %ŽßnÔÑÔ•Ö9 <#=ÓÝÖO¬Œñyßa2ù•¶Ÿÿ»tÉFwÅš(Ô5€y5„çàP²*³#~˜©óÑÓÙŒÅe¹ŒÆÏb!9€KÎt%÷K ´‚Ûò-Ç_‘ŠjÊV'×Cý“«¦P e˜²,f.ŒYÐnID„)¶½Qärb/_!”]Uæ’•êIàÅï$qˆÑÎæI(r¡§KéTÜÃÆ×—àÊ2¹|UŽ£cr•²4š„61fÅè>Ñ,qV*ÆiOÅ)(Žª{ Él›z..«ÓR2•ÌÑ<]âüs¨c4IÜâ£È,ýXlS}ÈõWeÁäbÊÇ…š¤©‘™£Ú¡ Ìfµ’¼l‚“ËÚEuîå£öãaÈÉN‰ÕqE²aî† P"/i–Jˆd‡±.Ï$ƒ*Ão{LZîí°¶¾O&´PB³iIM4¡2=IrB»»˜´CΖo0…Õ"!k Uý*7íÙ·ÁkYj,-í7’‚–R•›SG]a‚–%wâ˜EñÌ(ò*¹àê–Û4´{ OMWŽæJ…K b̆“´Qdœ,NQiþsxmö$ˆíimAB)-_ÅÍ*é¥WŽ6—œ„F N‰Þ%m»ڊß)cÓ”œnPd* Ôq¶.×-:…b‘ÒZÍÁ»ŠAòp’DÄÔš/²±ŸÇ¥ø ¯áM?Å$Sø¡Zý2@& —ïÆæó0š¿‚hõH‰åže‹€/‹ ÚŸO+žy¬_šÇ>SýÄ•Õ^dbqÎÁ‚¯%9ŸB©òT‡R¡É|Ú²c‰ª¾aëîø¸c^Ô±ïØšFBI YÐ"E÷W¢Fj£*0Ãä• ¬O¿Õ;„ÀywS )AnTîR²±V '®8ÀdâÉ +ãæ7ÚN"«§nHÖµïÏpU¢ØÅHS´Í½G-’棉Ӿ§¤ ¡©.t’§mþÆ0Õ³¹…ü'Ë”5D™ÔÄ$óoœZÕZlìbÍcÉ∜8ðÛ1ñÿˆ`û,Þ¢šã?‚½¦2µkdñóNÉXˆVr 2tƒÉÎ?ȉ]É’Y“òW…ʆ©`àÑz¡A#OdL}¾q†D<¤“·*K²»ÈÛ‘jªr’ü;͉ÖôΤ¥]íYÄZ¯£¸ê`•:ñ:Lw†F±ÝJõgüIj¿ÄŸØÔ˜Réù4TB‘›Jˆ) j@pà´©ÜØ0Å•sÙ…SR– ),K*ÐæÍ½à^Ø5è\ö =Ž‚ÎJµ{Kq'ãV`Ë#LQ¢WqöÐ{  È¥Ôúyý1D³ˆdSòQ‡jgaöe‘$H‰;3‚§ÏU¶¦œÎä*%ª¸Ë6«7hC5He’7PìLPLr8 c¾Ò/̉Á†Â­·­££uHf†¾à¿i©·.>ͺ'Õ+ÈÀ-„UZõ Ÿ>´²º:[!“]E­Y´¡EDènò™ï äþ¯K;˜§I)r 4–T¸‹“ôöyt*KÔËWͪkr6w€‘ŽìGLþ„‚À2µ{"Ì2 Õ=ÿÜZuœÅ%;6•Y½”°ü¶ç˜ßªË+$¶¬b…ßžwj,bŦ‘”NæXÉùó®ý٢˗;ÈcxØ/HhíMȆÀå™ âmØ"ï wÛŒAbZ³¸5ª®õ­+ɱõ<ÆK*¿†WšJi¡)‡)S<êrCnNئ†rº Âh•QEM¨Kî%䌺‰™Ä^Ó’Á_#JÌ«w‹,Ö,Èϼ»UŠ6TÚ±™ÌRõãš`Ò)õÔÒ:ƒ œÄG.V„RÅB±’Æ,Е¶i#†‰,M’­åö¼†žÌbáù¹,UšUcF±n9kÖlËÛZû•^7ÃËÛîÅ` ëñ¡ÉŽké}Ir»[ nzîÄJãf~l€*ŽQÈc(a±^'øuÝ…Š¯$á“ÒüTå“Oñi ø¥A`¤¥D€èbD†›ôÃŒÝq˜5j) )!_+‰kˆäx-{2Ú‡HS–LJ^iÉg üÓbñ®ßWdyîUIc²“èA‡ÉÒ«Ô<¥ÙlÕL|‘ßh-¡-Hž»Î'Þ IâÖK“2@õKƒM£uGŸíü«UÑ‘+XîÅ$¡³%ÙfÊA½gí·õ¯/).@ãÒ¼Ömóâ´êpkÉïý¼XF±;õÞ@# ~%Î}ôôù|Ž^škf’°´iY#JIO©ß›HÞ0õs•–i“AŠ… R ÂïÆ-ÔX.AF^‘ÑÄXN$ª$E?nJÌ7%NÀ?ùu#7‹µ§JÑ¿JÄÆÕY”A0 !$š9À"ªÆûh‚# ;ú¦Ô2DËþÞ¾…Ì„÷hΪÆCÊMчx+824 ­„›i"U«¶ü¬†;…fÈâ²4ª÷£ŒKb´LÏ#2¬aT‹<£vå?X\žMpËdrh¬…'6•)%ô†u y“õmÀ¶¦zºR¬¹JJ@Q: 'S]Ÿ{§Kg1à0µdÉR¯$tà…â":í‘À²I×$”•†•ü@æwR6îÿ=ƒ, ËÑäÀȬ³€ÅAòw߇Ôÿg¶þ #qXééíAv­{•0¹u¬Æ%¯4p<±KŽâ½yJó~àqÚœªØÉD>uˆ*zÛ“Lj$SNæAS¨ºÆé)åkÀ¸ý5 û¬œ‡P©ÓòªªµÒA$.ܸ½ì’oªyÜÈBR2å’‹Ê@ CÁñ³âk§r4#êbÜ– Š´âd†Ð(ðÈ󼘩ŠIÈÃ,D’VÌS…å_Ñhê í'òÔ¤›šØÜvë°ŽiDk°´•â 7naÁm¢në¼6hv6F™ÔA6]7œ, R³šs¼©ÛbUð4á6 ÈÍMªx‘äp.Ìä2õ”’¬ÊPSM)”ƒ¤@SXìÿ£b¬¾vµ0°š¨¥(±`¢ðÆìóçßž§d¨ÜÀÅ [t¬Ên¨Hƒ4óq`b„‚CEýñ1 ,$ª€H"M¦³8¸ôþ$ÊSY— ÉوȲˆÉ•%òæ9HÌû(´Êò fn"½dpÙœTijÞ.æ>&™íFõãÍyÙ™VUÅs„³ò=‰cvôäzkPZŽ „É´RˆŠ¼xç`ñHv…T*,p¤2¢°ŒIÃdfŽP¢*ÉeŽUÎe:SP¿K)Èp&[µÜö%Ñœ¬+)•(Kn óͱh"ÔVt)•¢HŽ?%>¢vü$îFŶÛöx?‡AÝ£SWææ³bë¼y^2íÆ´ª—„²fî‚7y™ÿèÈ×&2P…Óz™‹2iܨçYâ¤a¸<$gXÇqÌ»ÿWõäúª_V}¹uè]¹nZ5ñ–ìY†7’xkAß–ƒhËAÛ»ß㇚D^½æù ŠÊŽB‚Y)Ì……SõR ¤…´òÕs•×R‰U+t¦KªwsnYñl?œÃ„ eh;1ÓÆ iãîÀ¤X´í"¯“À—'p} z›‘ÆÜÆb’ÊÖeK–Šg")¯ÂI`ŸsA†èZpRtÞ(OtèjúcQòìŒI KØáÛE,ÉÜ'ä,m*¢ðWŽÓRóo@¬t óäYÆd1ÑDrûXåµø±Ü¤õQ—xbŒFQÖ!ù%§º®7Å—fQËd2ôê!iÌ¥jŸH%ÚÌCÄø{‰WÏW]2YHIHu" eˆçÞOœYì>cdè#G‹Ç) 8Œ*­x«ª¬NÜÔ¬œ@FÞN$¼¼A-ë¬s!eÊÑ% À³ÚŒø 5ʸÜB<™6 o²óµ[‹MêM%4o¼°Ë'°'2@$2¬ˆ®]¬Ö!'|g*ñŽî.ç ¦õ‰´˜ª²ª³ƻʉ]ä‰wnÛªšÄ‘O™jðÃÎ “›LGªÏMË©JQͤz½;´3Èxq¦&Ž¡˜Òøh d’à–;7;5¹œ4 ª55~y-W‚6„,SH¥ëàÆ>ÄGÌÎa@ZÐÚËmÄ‚]LÆ’'EÉ/ iÏ AÝ€!_’‚ºñWgEQ§JíéJtmÛ”l uRÄŽ#iK#²b¼2LB›~\Žì‘·A´ærDî¾!ŠîU_Ô5æd*ð*–×}Ùè)á•Êòy÷F·1Ó¨-cVe):%.ÉK˜üs˜åó•©ÓWò5:Œ±ù‰0\öm°OêúWq¸¨à»RÃ-‹°Žux¼Q¤Ná[º¤¸â€;¡DªŸ¢&3+Ž–2)25Æ*ÉX½D’D1+pªƒ$œHFüI>=V+xkøàB…¬zµ–&ÅšÂ!-†@î,ˆ¢ÜÏ /˸ª–£5U$Võ²09’‘=|%ó¡XK hä²ÈŒ’Ê«a58Ôñª@L¡(ä¬P¥Gñ %%E*dúµ‰’.{4;â)Î×ê,P$© i˜irÀ›xÍ¥/Šú2d¨°"VŽhŽÑNÀ@Ûò$[—hmÉ· ±UÜúsv³š‚K6 †9‘6c03µ©ŠòÒqˆ*‰”ˆ¢Œ-vc"G‰‚Í#G+áoöÕgsJTBù)8VœÌ±¤‘EiÑxΛÏ­¡Ç¨ÇϺê×ÇÚ½,é^«2E5hêw&‰Pﱉn+*Iô(ê¾B­ªØ…¯bµ‰!—.&J²Éõ1ò2;)1ÇDêÏ3n`kò’UŒuHß .{MË㺲 ÙV+KeÑRY9D·:ߪÏMž!´lR±â,㦡®*ǘžûÕÜKx’M;2ίr9Ðî49r ƬÙnŸE¤æˆr ù åþÍiWÎÕZ…P)”ÈÕ™üCÉŨ§—ŵ@dhžTë7#b"D}´vpFÇuB@i?¸/Ÿ ‘ÅÇçÔ!Šo•ßv,Œ­ÜQäHÀíüd €¦­IÉ´aŽ.—Š+Šv„27ì÷R0~;Èvk,¦J²l´7C¿¦ŸËÅÅdÁß6Ië˜[6æHãîHX Ec›ë¯òòäL¥Ð+qœHV§fMÜ›nüøqž­§I˪H{zH6òY¶÷ÄnÊ •ÂvÈH“úˆà‹³)bÄH´Œ„¾B;|‰Ú«®ÈX#äåÛvÝaþçtŒ³¬Iå$™£œ µX ÞÒòëÖHYÀff;¢£¬ÂÒ–ìòî-‘´rKnÚäD9Å…QÐnÜ‚ü™Xã2¢(ØÞ(Ö(äyTsü•#©kÙÞcYˆõÕR’’”‡P¸7»Ï|[k%÷$ ©ŸìMö`]Ôþ³ôã¢Ø¥Ìõ+P¶žÂÍŽËe%ËœvC%£ŽÀשc'{!n¤Š•â§“ãžÑˆêX!»dZr2ÈtnµÀu ™Ý%z{˜—·=»>>î-¦³YÙ;0Ãz:ò+ǰZΑ´4[x¹½EýÀi­M­z×]¥ª‹š‹Xô[«šCMc¥±^Ùö¡éþ Ãc#±byµxdÉäéãrv¦e«Šk åoUWÜ@:ÙÔ]oÖ½E£3S*þÑt‚è¦qõîCKÕº½CËäõ­jzn å dyܦ€h1pg3ÃYmÖŽ,Ö¢±zYœÎg/UEÅze))BC——–g;‡±¹ÕF• ˆjøu¤¨’SÃ騛Þ9ÇÐ’‘C±øâ²¬ŽfäÿDKfY”óаr(X-M¡åë@êŒTÚ–m·¨Ë« ŸOÊ«&]qVg±Q2rÑŒñ0KbˆRÉ«$U¸É¶®È= ÷-Яܽƒ§ÔQ¢õŸTz Óú‡Lb×1Óí/Ó­ÔôÏjíÑêžàsRê›ùoœÐ]>Ô§RèaòUkYê \6¤‡K4YžN—öÙî]6+Utß[ÓÔÙþ¾€{ª›f4î#ïéz¡WKXÕØ svðÆÍÐ\ÝŠ¸<Æ/Rå,˜¬†® ± ‘Ëoñ*ê#NR *bIÔ` hb@›âÿÁPMóIfbRbçR¢ÌgæÃh‰æWãYaiyDÏÁÓ~&Èœ;e¿vÜóÈ8ønú@¬³EŽG`ë!]X2.ð¡ŒcjçˆXFÍ„•ËÛ&¾aæý³õG®òùÞ˜áõv÷{¥uvŸÉ^ꦤÈc±ým?w¬ëdžËj¬†0ièìIV[zzå%øÖPä¨$ÖƒZÛ7¹Éô>—ÓzÇ1ÔÌÕúçÚnêþ2jRôΦn|/ºÎ„꾸êlV¬ÄõÇY纃4])ÒdÊ®«ÀTÐpëÝ1Ô0oRlœ`´ÝÇ©f’ºiüÝNjÓ=C›†vîLº’¥'2 bT¢t’@ÅË6ýŽ>É_Ïa1™l)™§K=ª¡ÔW4Ö&{yÊZhâåÕq•†òOKù¬L¹¹bnìdêKI>$Ê}o#;rË$®2Æ’K4‘¡›Œ1‚{) –Z[|y*«ÍiÄÀóŸEô#¨:oÜ–•Õ·4^jî€Òu÷ cDÝÿz[ÏE¥´wTúWÐ{ZcPPþGQY·_O}¦:¯Œ²·"»SvíG¶ k#½vexî¿òÞ!ñ£;íwÝFZ¥];ˆÕºó¦©s¤(ÐÝ4›Ehèut:__i.¡uuÇP2:†ß\:€éJõ¼®”êæg3«´Þ¸Àj‹ÂâÌBºé\Á¬žÚ:Üù¬º-õf—é|šïß^wWàt–+Tu6ÖS?Õ~¦a2 ËXÐõ—¥™ê5õ‡©ªpÔu=m\ØÎ–g³ŸÌj½? }C¡ÄæOUÍCð‹ô‘¯ÒxgLr\Þç~*Hÿ¨IÔIDˆÿä\`_}±õëi[‹*JTƒe{…‹–% Hɺ*ù – ÊšABì}&HÈ2 "˜£¬†@±™ ºÛx– ³Vض6Ó¥ÙÛ³+òóík«—´?X©õÿQµoQs)öÓÓ=1­¥ê.kNæ/ÔÓ]4Ã×êôTqº'ZZÒœõ½U ¸uFKòîÝ‘e·…Ô³³Îî¥é‡Y©{¤LæžÓÚÆ¯M4ï¸N™Ç¤h`(jÜÆ>¯EŸ@i/o]ÞêV_ªiK#Q³y-S¢oôZ¿Muf¦“RÇQõN£‡r,Ö´õJág(¤…bäCGƒ°ñˆ –]dÔ‹¼°yØ»nÆKy1ôcJê-®t®–ך/7‹Õ:+ZiìN´Ñú³inâ5>–Õ8ªY¬^¢ÃÚDCoœÄ^¡‘[B4[µ&¯kr“nô…¤²+¤‘•xª¼…›ëm¶IåFÚ›ér-â¶Cz{CÑZ»¦¾Ò}©ôç^Pl^¹é×¶Žè a‹±=Y¬c5v‹én—Ó™ú3\F’µ‰ñÙ\uèc³­%¢š¬²NYY¬FÜx*¯¬ÉÜF’„7)ã-ÝŽ)s< M¶r,Õ‘²• µT§MuBÊBŠ EØÞÎòYÛê$¦¢Ò¤¤ò#v³Ã·ùlˆQÖn<ŸÃš4Ø#Iì?†@еÖV4ì²cÑd†U`è*J¬¢6RX´‘»q º1VÒÆîaæ gCïô‹@N@iúZÀ4s7™Æ»!Ù@F9}á°Žhäpäo¤"ºÕe^á< DŒEÚ‰Apè«’n©¶ÝØàùˆÛÙ¯wxç&Ÿè†ìí [gŽHå‹cÎb7î =üj>Ñ®ÙG‡•ù2äëÀ2É,NCìÌ¥^e®ÅÊæëñ¯U~DH ‡}LcHÚc‰8IÔâXokn7¿ÛÝXØÅ¼Ø°P­º‚L£;õP¨íÀ£½[rvõ…B(ã4|ûd+!r.ÓJŽbªwÿÐØXønòbv#XU¢‚8`#ˆ¡vtØîj³ì°)íÞ~½%ÀHU21”î9(m¶Ü›´ÂÌ>l€wª²ã”Äì}80 ¨&çÆÕðÚN î ;×Þ, þ­"+ÇÜFFã*žnû¦ê¡"I¾Á¡]¡‚GüXç/N~MÃw¢^I²´|V0ÁY>̲ÆÛ¸‰Ûþ¼,M®[MúÇbV($7•×cyí$‘!‚2ÁÙ¼S¸ÂÜq¦AÊΧu¢Ù“î±¶ÅDÌQ£u&Ú&’Óñ ÀÑÈ…!Á4Ê ~Þ– çQ 2Hv3'mÌáê{C³‘m"~¬1¯³ÊÜLL›g$F+˜LEÐlIšÈcT’’‰WúèÔzZÃ…¢;ª2$À¢óc_iw#ú«`ï-ï5­‘Û#Òž²öQ‰BÇ+ÇÉ 1lƺ´‚9"ª§ÇL‹rÉ5¹††TU,ì%Xåduî1inm»æ(‡·lºÙÇqn\°!¿°à?q0GlD–õ°›îì ýw8QA¾Ä(ß}Ÿ‰D`¤Øàä3*¸æhùo·¦¸qbK¹Ò«JÓ JDm±“¾’â…f"'­ÆHÆÏIò ãÅÛé…HîÑ_¶$‘åU·íϱ‚ë+HhÞb²È¨Ü’vî$ݨÚvMÌ ÷!Dv ò“yqSOÛrkA!ùÏ7›Cıq»{ý=ƒì¼T›’òˆí7týXÀã^´5£?aÜú Gé¾…^4Ò3&H ¡À_êĬñÛpáY×ËDü¾Ê©$(ÇPÜVÆ4iÝè3.3lvÚFجlJ)23‰¸•-’ËÈU;Ålï]’6 u¹„IvØ^yk5£}öká‰`K4ï~,vÆ%åÝUxÕ¤WÝɲºi¢ J–½oŽVhɲô¤1»žLË¡<Ø!â +‚íí ¦˜þ€Œïé+ÝFpȪ{Q(‰b`!#´( ›¼UåyÅZÄ›4'ä/:Á:Ư*Xð_iP3…<žew’PªGæØípìÐÈô6çÔTÁ·¥]˜AÛv2À Ka*òBXŽÀ¸¡ˆ8C.‹±NJ@&?pÜ]¢^zj X‘Ú»;ìSÓ"´œƒ*å²±&@w}ŽáÒ»„w2ñ“"„eÛÓ¡I!øðáB¬ÎÄS'5+ÉâWz[&Mãɺ„HÙQÄä+²ÄÆî¥‘Y"nÒ8ÖVdšÁBÔ% BÑËZ”3 $q6üÆj‹ÑfxÛÛƒÜl6iÕ†Åêµ9,IjäLñnòU €Ä7íN£†)¼L²lG£鎞IV)oÙ,ŒV»444l²×X‹,…f™î…!¬çþAûB3õV+RJkš )Q%ÃX1/a¸;ø)•¦ƒEj4…e¥ƒ%Þ Ÿ¨b‡Æ–G@`êâïå©ä¬X–f) õc„Ï&wÜ•x‹•P¡câîy O‰cŠRa(ê†,ÒïÄwÒ´ŒI±Þñ”+V¹'ÑÛŽš•ªøËgH-G8·WA ‹Så1sØÍXÈ Šm”ÊžFçcê[$6#P;q´^lDãè"ò;QQT>ÅŠî<²¶Û²ìNälAØzðrÇpvp[ìÀ…U$¶Ä¹'p ‹O‘·¬¹,vUaÍIB•ßpyߟÑÁ-ã@…€íãÜ‘Èî .û“Çü·ßo\þ£ßo¯Ûö0æäÈ£}ø[“çrû †ÿùO€vý7't"ýG#!½ÎÛ0þãûäß­ü>²Kl\Fì ï¸<‰c°]‚¶îòwÿìqÿÓ…!]‘Ö2ž?îóä¿÷ÿh#ÿ;»<ñÆ>@ô¨ýÌ©K0*&÷Ós»¢8½€{/ßòöß°Wݬ;L0’3\’6\˜Slt´[g±%^A½úÊ£xÖd2Z>,dsQU$Ìl,À#]ýU>ã¿Ô{q2±÷‘Ó£^EŽ»`ÞÌÂDHª’Ï3,é^9ȯo³f;\b§K{A¥#ã¨14!äRouãh–ÀÂiyIñþ–-#5š¶f”] ëºÿ²ý•ý‹òâ.o"qËæËçÕ¨Yh‰L!žO¸{Ü\UB¼Ê—o#e.Är àKýÈQË·å¤ò¤W×UH«¦³\ÂJ>BÔœ¯$ññC#O³ Ï! Ù$ ÄzŽ\X¨ yÚ2 Aä[¸çvØß"¿Ûƒª»Qé¬ËÉ(H–‹óÏ%H•Œ‘jȶcfb©P«¦u¯!íÊÁyzGùôÉŸæ$A#ú‡oÏ¿H±ü¥$Rßÿˆx³¿í±éQc¦§2nGòö¹8JûpÞ“ûlHE’hH«0ˆ>é6ä²ãpB¨>¿ÜXÌ7Ê‹ý¼Amü‘ô.¥‡}/,4ì…šNm‘´\:º´d¬@£G#SïøÅBi–vðl¨aºîX„•K'ùG€¡Ûp Uد“ö-fpÿÔU˜*, #›gó6|U– ü=3fA›Íá‹ÀÙ§,¢¯üZÆýKö5÷)]]„T~ÂsWš"['&ZN6ª ^DìÛ–ÝC!A#ÁŸ¨v,yyØA æŬ|`¢…·„ÆýÐâoãÿ²?&صYk·Ä‰7†äo:@¶älìàìI–ç÷õÙ ä v$•ymnsþÞT¹ôè3rä´ Ï:¶kËELÈgܽíËÙ±×§–”Ìlï)T‰#š8Ü0½X©Yfä±ÄáÌ ´’GëW§hKSHݶÔ_U^bT,OÜxb#sÎÝý·æ›‘ëo^]'™pŽÄA]ŠRÊ’l×bü1ȈŠÌë°hbk“K1Ò鲯ûV¿P ›¬¡ Ê­Êo,¶ɶOé­¨E›û‚»útÿû9Js™Á¿¤i1ú aÈWãRCE77’ fcóyÄð1Q± X·"»*€¿ncrànÉõaãô„¨nvÛªè›>'0€H«¶8(i{Œ¦»§µ,\–r$I¶ì!&2B òÙûÜnª Ùy9*7RlòEâïHZ)÷8»±ëèÀWL`DŽВ'ˆ×ãÜGÛËË8˜Rrö–"‚Ó]¸ýK“Ž™‘Š“µÊŒ«"M1;L½Â*ÄTX qæŽWÚ¥q6B>äôáSÖÑ|WK`Èú ¥î­1+* ¬<„Ú~JÆk%;sÏÜ™ YôÄŸÀ#cñÖ/Øo¾Œí„ñª,ßËrû@&<ø½±&ç·ìª±ðAK~£¸|òSåNÁ?ew`=° !êfjEiY£‚ðxÐ@±óeDz­à@5œ €ÕŽ£äceµd4°SBV^\H`áJ³»o»¨}¶ò ÿpxoè3ƒoÿ ¹‚È­Æ,€œR’«Ê£H*ìZ*ñ {©n[l²=Åž:á`°©d¥9§r~Þó$q`ýñ,ÈõeØøÉ€&J[±7`Óí&QÏ–RİUˆÜ7*8ž¹m·ÔþÀë©Ü[LJ®"'åÒÝdV0ÞV@ü@š"ÛxxÔ`$/Å”Œ÷ò Àà’ìÿÜ2ïý¤HÇoÛoå‡M#ý¶ßv]íÕe+*ÆC¼SýÒ³± ñ±¸OÄPæUÚ¬›þ&Œ¿¨oiÿ–'™KЫÓÁ wÇåhÄ‹KòM=ˆîsgL}vs;CÜmã—pÃøØ„¬LÇñ³ >»ÛÝYŽÀmÄ“¶Î6óÈ„â˜GI¶ÚkÛhÏüº°úVhÂøâw„F$vD§²Ê¥x‰2 %÷ Õ  ¾Äp*ÎA>£g’Q‰K‰°ŠjõØJõ¤C/+[‘B¤5æoãUÈòõR båú*¬O"ÞIðòxƒö ˆP¶–%ú‹š`ÈàŠÈE™,ðÍ^+$Ì¥–y Q‘J*jýÀ·ªDÎiØñ}Ô…%€,Ae,ŒHy€ŸÙŒ•姨7ħ±øHq³5£ˆýŠ2€i¨ÉŸŠ·ocv†om®Ã>©´CY6gø¦'P7WV±#,T£qÈLÄ–µj‘îòRí2iÌAÅcÖ5˜À‘­Tà°ï¼’Àb Å$¼§x;rXT•ßÔ;ªÜÛôÑÚëäa-Žá~ 7޼ Ôª¾V[2¤xÀ?‘ž ¦c¦;ƒ‹:âi‰‹Èò¿w²¥ÖÄÜUeœº3X™W·<ÂY"(޼ÙdŒ… Åþ2Ë’iI}‹}ÂHÿ¬ªZÈMÑ!Øóíï %à|#äÃaýÀmÜ$l ßvbÛôÄ@í %mw¨J™ZNÎAY¤¢”¥J¿ã’ªŽÎ>Fâ¦íb䂾Cq ’¯£Œciñ £‡ÕU¸ƒËô¨GA#“ U›qà L ­s‹ …|›GÀÛ²“œµšÕti"2…òVIu‘ŸXZ&e”'àæßz@Τ°íh?h—¬Â®VcãHbðÞãÀ†Žç%åàùp?NáAÜ‘çŽû/ïÊß…, ¿¡/WC Œm—æØîªÁÍ7jô$°€M ¼¼V®¥ô›Á1í®À·ÉwrÁ”†‚îͱVŒ©6ÃêI‰>UXqô%êÑ‹æä[vø w„f¨VdÝÐ2qÜ…KO4[%=[Ô2stƒŸ›–!…¶àAýÄó)/P0. ¾¤µîÁi‰<1+…Ä+9ÿáXýÖTX] ¥Á8ã «ÜôŠðŒ¡OUA°C·ýBÌHs¿&m‰Ø±ä>ãbPÏÃþ @S‹Çh¬j~;”3ñuFÜy87¼·bÄô%e>7Ü)P’ߢ¤îĸõaäýE ?ÍSæXy\x'ÞÖ (c w2”¸sßpùÀ_§]Á©µ*©O1sÊ2L¿?nå©ÞÍ’ŸU³­wM£+$»hÛ}öl6!öCºOý¾OØ©mà€é»/û›S•!•Aâ7UÊ÷›hêžGfÆC6Ò³r#ѳíÛ Ë‰S·%wÛÉØŸþ°›ÎêHgò[Öœù"¨tSfvm2þIãÜíNSI¤lNµ8#¹coÏÃ`GÕÇFÆbü•p‚ž@ ‹¸Ü¾É ½’«±©bÜIx¦Û +ü}"¤»…¯û±*$ yY7ç/÷ð¸úõ`ËðÁ 3›vÒ=äEa)¯ÂK ±wq½xåV©·u¬/$ÌZÇ1ßšPª¤p Ë ‚>KÅ{j§pÆDNj°Œ¢…%ë?àò×ùª9÷fÙ÷ƒÎ#H›¯Y ·-cnYß¶7ÕþÛÉùÇÄ2*!,U¹o¿†>Fê &å€]öôé¯Ôz‰8”•+Æ#E„W‘j-ùÄM p`¦Òr1,ÄZïsŽN1(ÜÝ& í±ã÷ÝH=ÕSÃm™I$³7 ŸL8ŒÎ¤XÙ?ó$æzï*Ü™duŽr“ß±¿ÖLļ#¸€€+¹YcÿO›ò£{¡s ÀkÏ!ž¸þ~ZÔ¨ìÉÙœöåö¢ÄcÏa¿ÁðA°S¿6bI °Ù|zõyVJ8Vhݸ˕ãjæX™$¯IBÍ*9˜×`‰ÜÆÖeÊ*¹FhýŒ-õ;¶ÿ¥ß‘ߎû…âÇÉbÄñÉOèÛú õ|oWP1“1ºHý½”EŒ쮥kAÌijd€ù,KQ!F†Ý¦ÉúšW`Kȶ™km;,ØþB‹OÂ7Ô’XŸÌ;ÂÍ%‘iÑi”üJÀ’*m*¯i6P6âCÙ[rúØ U¶åÈ»³ƒÅ”HT[îÄv#LQvø˜¨ø•‡mÐ}b@v2*k3ï/÷è|l£ˆž\Ä€9T*ß¡¹gmþª/ˆù…Pw䯒›/óܸ†3æN.Ià X°oÖðqGo1ù+fGž"óEñ¤Ür¬Ñ«H±({¸Øä0½˜¦fm—V9‚4|d@J— ’J“ÀDÝøäŒoáš\úyI]½nÚy’A±d¯ jñC)ŠD±§Ù3Mg;¾2¼¼¤†>åÔÖ®ÒE‡pq‘eGî(SþªS`£ñŠ6ØÜÇ…}ìc¹qÜz 4ìÃM÷€Åá½MÛÕyÇQ¾"€%Š‹™€òð%ݯ#Wg-³!;ÆêÈÊn ã µUˆP î{JÆ |L´2rÍ.ÇÓRH%"Xe‰%IuAr9 1Ë$ðÓ’AÆ{;Iv½ @µYTlHef~e¥Hˆíþ!0ú&Û‘ò#ÉŒî,š‚;3,‘¼y3‰Ÿ™bñÈlÁ!,‰¹,6-qG—`õlÖ?#ùHdõs " ¨=ÿa͇vĨz\7,÷k{>5K²™ rC$¼LRT ÄœÁ€(Žyek8øÇoù´–dhÕEÕ•ä¶çÁƒBË+H³Ä7nHgù –ÎÈÚ‚©ìÖH¥€óyÙûj¢8¹±Ia„ÄÒ+B㉑¢ªÒ€´¡žü7‚Å| 6BI?m™·•fîÉÆ1"ÈM§+j¬R†ùå$ †°Æ1%Ši˜ ÒÀ™’ÐÖ, ðZvÂðH.¨}-wÙá»ßÈ[ŽË²»¨#]ÇÓe€ów GÿaÍ$‚€2EØqô§í¢0‰‘ÈIdb]£€F޲Z–IHÇ “Gÿ1t bRDØØþ$œ½(Q€þÆUFŒ£« ‚À#Ry¼´#Ú\ì[Z‘•w–«$ޱ«Iò‰ãÈÌ­0‘³¿÷ìýL´oÚ¼±9]²¡Iò—Ÿ)A¼{EÝæYZF!#aÅæ.W!íËúåÇ)y™‚´–_“Yî+F^/”Îû»,nÌdÊ +5¹;W1h°VÊwHEGµÛŽ5–6ÞÊDÌ8IIÖ^=ÞµBÆ+–˜É¸ôå7v¼ÚóÜÌ> àÉx›ȘóqÔB$ä¯È³´œÒJò*vî´v«÷OÈ«ÎõEo•e‘2UyÆXH¢òðò˜»7w—5–gf^Øg*JKcµ°iUK77ÉFaÈ ¢´ˆÎÍÎdºÚ™‚G,­’z‘‰ÐÅA‚ÏÆlYhªÉ²dM$ÂÉ#:;£Å xø©=ͧ¬$/ CKt/‡³½Ò ÊHŽ’|8–„ùܳ{b1,îÂvÛ¿½û uxž!ÁF)ÛM„‚*¨¤ ¤„÷;M ´Î¢ËØ&­­àmÊË#³¡, i‹†|8wvd, ![ekN8†Z¡–wåÍ‘¥»G”ñxÞIŠ»@êé$²)Yl2-ÈU+XðªUä®Òr½ÑfXÒº¡ã¸,Á«U¯+)Š@ñ+K†2•tC-\ËK9TÂd˜|¡ .ö“b@.ŸrZÅcyç}†7Û“qA¸VyQKFX`Ë`A ð†?Ë©k8ܯ¥!pPä‚„7wmÚ¼rG)í×f‹T³)ø´ÊMNßvuUõ¬ŠÂp¨"v@d™ch9‘¢•‰ I¹,“ù”,¯]Å^;¹–Yë)¢?#€i"S#©ðñÉU3¿d3K‰G+v%\¤r|˜‚Æ ˜±htƒô´ùÂT¢ÍÄ1Ú;Í™±Ðî¯lA“”IñÑ%••–ÁpÖk+IÝxqjÜÖU]_ÓÉ Ú5`Ń1)²nNßšF¯ÚìXÇõ¤‘‘ÿU ¢P}rV[üvï}`—t8–Wr9+-ÝÀšÃC²K{qO-¦>·nz¤#·ãA,d¯£©^ÜA#~”ò‘„QɳV‹“ÉF_7%Xü†)r’XkA ÎHý_|% I˜»¾×âìØÛïG©GEgáÁ•å.ñU‚$“Fê•%w圭ʣ’0˰ǶñîX;ªKÅ“”€*yºÄ«?\1Ëñì«HÀzåO;CŠÜä÷žc$¡’gHËÜçñ¥,PPÆÎôË xÈ—¸z^éU ÉL’DŽ•™€1P"ˆÊ°ªˆb-!Ë@VÕ£ß,Y0^A¹‰܆>Þí‡m`*[~gr/õÿèI$¡—ŒjÊ I¤+ߘSì"fÉ=êÅP–;—Œ)ç pU‘œ'P;r¹a,é?fY€§%UHn¹o\ùæì4dÈðFë!šÂÛŠãU$‰fD¸«—(¥V„»ÕXÓ“ÒT¼Éh¨%!¨]î"¬Šj'’4nÜÖñHѼr§ó ëŸ&±ß˜ȇ6gÚwévcË´Úûã¤$ø↠A€(VWÞT®òÙžeù&ÁjÎ C‘yY€`ÞG.¾P/䬰½uc”b†ÕeФ%òHí"põª¬6RÒŽe™Â¶ò vš9x¥™cÙ¥¶±ˆo@LtãŠÀ’FÕ3$RDÊ9JÈ»Ê XO2JÃ_»ÄÇ‘sZGR´»ÏsA—7wqôÄÂJ ––Œ¹cçô¼ º-1ž@ȑȇu‘?¨2H‘B41 xîÙØø×e•ù+”¯0}†æÈ*:D%"9F6 †mÒÄ„<ÓcŠÞE$œZF`9©S‘ycy”¬„G|É™ãþ ‘"i%  nò [›ŽQBÉñ.ñìðVí7òK÷Ÿò¡˜\Ë1– ‚×$}-l-@su2Äv‹qk¶;fà vx§fP‹ÁAݤ2ï^Ëì·¢"+YEH¦Æ§i6e²`Íò”–"Ã9xBw‘Z#"F?¥,ß +²mî‡F.n%HT« ÜJ°C,v¥XãdE¯’*A5ÊwO£å ~’e^7­<àÈ]œFÕ¦‘F+,ø;‘ü©´íU(ƒ.ÆÐ!€HyxÛß ‡b<þ±ÐŽË¡†Êµu𻤰ùvQCó$‡h掛:)@/ÇdÿH¹$K‡QµD›pžnöQUéo+I ˜]Âõ‚Z°$Âê–ÄöfTª£ô’ÛÊ+WigÊD¢˜F–Ie`ºó¿vY,Å#ɺ…á½¹{ííFÑw•]ë¬<z%’I1"ƈ$Ž”rw$4[kXÌ€7¯ËvË^žUE?áëc§Z€ C™cµÝ½ñ¢’«°øAq}˜›ç´³[ÛšëQe)ÜÆY·Bz—cŽ+&æT0¨AŠÜdʰY•9G;qkS‰*U‹–ñu'º#þE/#‚в™#UòŠ9{&HSþ¾;u¯Z í§rÀàl.©¯Ø—š­%›2Ú»CµÙX”ÚI»-U\§›w&x`ÈÆßòÈÖ`ÀsQä³]Ûq„Š>Ú;3oH!måŒÝ³@W†^G*¢ f¤Œ²EÓÒ£ê(fpÀj!Í™‰ÿ8j‹¬T>9¨Oô…’:^b7gžF6ö °}š8Ô£Í#ÿÖW1þVRUYIn¾ö3JVÑÄŠÑ_ôýþòcq:ï÷݉[Чeõ™h»QòªüA1ÅÁ]ûŒ„òõ!Ql§/»M`ÊK}Dœ#ù»º´Q´¨Fe`ä ñ“Êà§ër¥ï"î[ÿ¾î´±u”箘¤J¢Iùð]•d‰"ÿÓŽ3É}ëå—–ó´¶‹0{X’G¹Á~Ž@9€ÅŠ)»ÿò°ßƒÚí œ”ïÉ•œ ×vý-Èb`wÈÿëËÃÃŽà®ãˆÙñ ÄÄ Ø®àÙ#lj'è‚®û‡fv?½˜¦À•*­öý©s»)'qÅŠí»€UÆÁ@_ØW$,C8#ÁR[Ÿýÿ|6,.ãÆÎÎ;X„nÁY@ßÏ.;¶ëÁ”$m±`ÇÀÝ~=!ÙUÏ—;±Æaõ‹q¾ûîxòIm“ìG-¶ Èðã¿ÙCyÿ·ì[ûü¶õˆ¶Ù¢mÙ¿JÁr }ìÇüì7ó¾þ–"!„ÛræAG™ÇÉ.ÊÍîýIÄ‘±“Þ^‚$q,¨jGì?ÙÀxf…DóòV¥+³„‚z|£‚Ò½™ÆY—v «·Í­b ‡ŠNv!QÚ–I¢0DmÇÖµßÇŽZàÔ³'ËØŠ½ÑÆY½Àÿ©LÁ[ÿZ:x*µÂÁ_Ù?´ºJ%1q€í\fJÝBóÅ™“´_µ1´à9gd#„4ÙEšã/ëký»¨;ꉂËÄìݲëI|ME£"Yã1ƒ|ÙÿŒ(å%’ˬe//Óµ)Kµê%N¶&Am.÷.Ök>ÑNc:„¥ŠÈ`\;3‡ 03xÆä¯!_RÙÔO’ó¼ÑK]ˆÙ+˜V6©Á[¾«C#ãê…–ÌPŘ–Ë$ŽYkõc(äqÄP*Î]#ù–/ì1Ãe׳¸;È–Ñ kéÂm¡´UnIu©ÅBÜ–'½‹‘ÜŽ8ÈäEˆÝ‚³HO Mê–Zò¨ÆÊ¬ÝÓ¹®A„Ë#¬$ÇJÀs<øº¯v cwó$%ÚVÚÍy ßOJ®_"²Ÿ‰ðÆ”$%Ö YWœûâ4³¤•|2 êÕ`}W7%È/c¹ž×võ4бN¥XªÊe‚[15‰a´{68”ŽÄJò"|X;ñY§­äÛøùš)6ñHÈc1µ±éNµ£ ð¬·fjÏ1¬Et¦¼&ñòÅX4QÐŽhU\Ã.âò”£ÜÅÜ«¢oÍn¤OdìºÉ3Ã4ÌÜc°$ìÙÔU˜S¬,|Ý­…Ë\Ž9`ÃdÙ$x„¦6oÊ~)zsÃ4‘­iaø†3¶ìhÓ+Ýë0[àäM4§M?„ä¡ÖT9 Iì䵆%ñób¡S«âiÊGË bL“Ÿ¿W2ˆU_ ^)J¢¹Üä²²†rª  žO&XÏn/β¯Ú?Qš²ÝEcQGR Ÿ!1/F Ìi8–:ËÅlˆ¡[3¬PªÔÉNœ#_ù;qš¼f"ásƒ~Þ,yDæF—’XÙFà…V‡½lwV(‹•YO*Sc"éËVHžHlW–'ó‰$’‰{I$‰j(È)n1ÙšZˆÿU30•²§”©era*‚ ZBTЉIÒæ8.àCÄEy¬ÉÑñ5zT J’ÃSÎx}È`ž:­’ú¯ñ4ÕÞ¸a/È—ÌÒf…¢&8eAٌլ‚-ˆãØúájuoQcŸ6:µXMd;I-©â§Þ&AE5Ûi¯^I#`bôc·0W”X\‰Y‘c?`9'AÊf’HšI ‘q)rb›Œð` ë »À€\3H ;ND“F9.Å…=ÜG…±Å2O, ½>Ÿ•B‚ÓI–’ •35ç׆ÂVzº“¥U Áœ¸†àí%ðOÄõ6î:… Qâ’XêV¯u¦ži™„AU˜-v{/:þ:4M•„=¶±S€‚Nƒõbò¯8ð•eBÊÊÃ"¡%NAXwÊöÕ%_ÕÈÕ¡©05$ŽfÈÎ,^FâG<8œ¤ÐI:Ëü=åIciNL•é³:K4gä,_Ö-íá]qoÃÓ’`󈥆5ÜhûÌÃeÊú·r¬ ’DF9œ©ýLŠ.ž©^S§êÔÔõê£K‡\Ÿi/fÅ‰ÌæÀ I¨€K nÁÃqãœu©ë XýCw?ñ’Y­%ÈX<ÆZ7’7‹¹RœBlxoü³õ–*Ö^!/=]º Û YU$æbl†Ý¨"Dð÷’ Q§…É’vBÐÅKçìÌ¢ö£nK/R,}¹®"Žu!‚iíÆ‚K´KòøqGOäf@÷ É…"©è°ù¸Èã…Ê’éSŠ. ˆ°²©Ù´kg„¦Rñ; ïY•r¹”)au1Ò!$LMÈ/=±yŒÚʈÔIa¨9,ä››sï‰v¡×V5>:F¢TŒX[3*ØN6K)ø¨Èð‡uDÔ ‰Ød8]j±„õ1ýN¿ÇQ©& þ8«?’ઢ {‚šÃ–~ѯš¡"dL±ØQݼeêÂ9îãîÖ…šÀ•¬ã­UGæ¤Ê¼¤…WeV»±–[q…½]LNQã““•blÙC±ÅÛx—¶Õ-"ÆY–_âíR‘&¼Ö2б±er&šRè(JŽ’À©ÃB‡ä@C3šME$:^ˆ#îÎßbL\¹Õ°•ÏÞMÖÍ«íb"™¡ì<êйíËU¶µ2°²#‚±î– TOˆÌ]ÌfLš Kf=„Í"[’Wxc•lÚ¯AD‘´T–§jHVkõÊIÄ8lìržxl³ ¢ÅJñ_QY¢äÕ¢w“´Á~E7íÄ5£H£Y"Räðxø2î“$ñö‚u”EñÜÄÃuÇ•DÂX#7q+ΞW(BÑL%Z’À^¦‹Á$Zà92o†^k1© ¨TN¤’€$€ 3M½8.Ž­\VØàk9å r++÷ŒëÊ&‡z!¤k#Šã#Ú´Ùg÷#Å©$kTëiu5jñM¯JÆ[)¨§Z 1«@WµfbRij‰+Ë*Áf&ÇÁ#Åj0¸³‘^ݸ!J‘©y=^¨ÍZ¥8F)jÕë“ü†ÎÍa8D©C³!d^â\¥˜g« Š_ÄŽ\a?'ž#êó©ÎXö˜HÙ^Ò<3ÈÑWxÑñÝîݲ:2’Å»ÊhÍG­©ašwU̓ÈäïŠFëäФbÌQ=3Èe–UªÎý¹’Ýþ4i ì—OÆ"¬’F$ ŽLf.îË:žp(´²8ˆ-†jϵËp7o- D¸´KŒJÒ~¸$}´ŒÆœ<Š~Q)“’²ý¨Ó0o,K¯¨§#–J„ ˆ@#QٙƢÄ€ûÄŽvº”•Hf$´À‰’VsêÕ±,‡ý»1U(xŒ›ÊïFîl&ãñ52 ¾^&…y&!ªµŒúž*ÃømN[F6K°Û6žÄPöÞ8^—`܆ÚZдóÑÚ·^ãÉh!Qö±< E2 æ ÆŒË+‰&Œ+1KWFßÄØhjcá?—1ñ¢"Fð"Ü׋È'øÖ+râ„pIla•£’7hó²9ŠIÓSéùjd-(%i1ëP @I"\†;>ÐXEyÊëH ¨é7åŠHÙ™À™—80EÕ‰ãb|Xh+ÃÊS›Q_Š*ÆÍ+Œ@d˜p‚~È™­Žôc‹iJ—«’óÚL F°ƒ–MŠ‘LÐË,’×-¶^§wþSU“ æucA×ßé!ÝXö™šiw$i¤íÆó*}e½*ǸGfŠ €ÝMÁþvá[ŠDÛ C3­$Œ’åa2b+LîÓ9H5ø½”T:fVÿ »¸õ¨íyHÛò—ñ à|À» $CÜÛésÛ—dó‘Õ÷ð®D’†³#;LÁR7œÙ›’+,š’ ¶ªR>™œH€ò Ý®+«ÌÊøü$pìÁ2“ $Ú¶RW”ÆÓ±Fý£Ïhq®²;'fp#³x@¯†²*ab 0@²YG´R'`"mšT4âúnÜ–I±fD\œ;ßicuâL'Є |¡)€ìÍû¶ÛŒ`*J‰&ä—.îx`¼ƒÜ`GÔw‘ÑúŸÛÞSjŸV:åo¥š†L‚d>e,^ݽÄõtÍ€h.Ã5 ¯ªzE€¥6G#R!FÎsV„K‘ÅÇõ§^«èíxt –õ©·19¨õÝÞœ`´ŽJ-„ÕºŒiìUŒ¶+Pk 1ŸÔ¹¹ˆ9‹Ú?§X s’ÁiÐ5Uš1T•C5.‹Áêü¯N³YSe¯ôè/Ô$õ­ÅM/Kz—Ò¹MÛ)±d"ÿeõKT©–HkÒ½9ÇÖY#Éã£ekƒiíY¬-ëHµN»Ò7óš{Ki]kк–L&7^iÍ+¨ÛRiz96½Ž±¨4ëÒÊíý™ÑºÓ/ŠA¥õf{'¦Ðc=dÌ Ùø¦‰½D¿ôÓa¨9‰63ô8ÓIy@¨Ê­DF­FÿĶñŠ‚ßê/¦:sЭ-Õþ¹éŦs—ºý-̆…ÌôãLéOâºAÕÝMÓ¨¨hÔëoWtn ê7Q5™ÅÕΦ‡é¬ï]ë¨içàÀiŒ|±bðó5×¼ý3Ó<æwNå4OQ5ÞC_¯ºÎôšLtÿLÒÒý9öÏŽéöO¨z›PØêOY°0f#ÒøÎ£aåÁ^ÄÇ_#‘' .…¡“‚´Wöo{èuü>¨ÃÒÉëÝ?ˆ×<êGKz‡7†¬úÃAõ [j uª4å‹ö´ÎO'¥1ÉžÕ¹ÈòG§¹ Yñ—kc³î¬uZÔ«Îs^Ð:G¨ò™ü¾bά³”Ô]4÷#ÒÌõÅÉÁM2tøÎ›âº¯jÆ7Ž­ZÔµºY¦,iøñÉM>D×ó•j"\¦c«;”˜PÀkÉ 1x8Ôª™ ¡—b bC‹qxì}¤ëÎ#­73xúº+^ôû5ƒÂi S3¨µ4•[ÍÔLšh¨½Õk.¾á%ÔZ2z:?Ikq¨×¢½vÏiVä³ô´æ¯ÕÞ\V8ã²c7’УÔÂ)&ž•ÕQQQ  †3n¡ÌñjŸ$Tµ)ÒHU†¢ÍÀ¹Øà¹Óÿz]'×ú†¶–Ž+ØL¼ÝhÀt6Üö5¯Dµî ¯už†ÉkìZê mÑ®¯uWFáæ›‚Îbó1˜«¨æËcŸsNÑŽîþJ){ßçOjQÈg1)뮤ӚsNé-Y©õNèSOi _ŸÌi½=—µNÏRñz†ì’åð¶—£´Þ#3¯kÑtÌÚÒ²iØîåi3Õÿfµõ§J:±Óœf ³¬'ë.žh½e“êFo cѺ[Bf«ÿ/«úgŒè÷K±4Ö¾‹HÓƒI®G£hI4šª¶B ÞOYM¯ V=°t¯µ¬«ãkæ1´u¶”鎆ÈTÇY0¬8’cäÆéF­Æ¶NJsÍ>b`&µ«¬I%ž4™äÞ¤²£¡jJ BgA»;Ica.äÛ*éá–¥ˆH,È=­Ä>z³ß&…ÐðÒÂêΞu Õ95¦¾Ñ7:+žÕ~ÞpZ·”éÎ™éÆµÕVokü¯]iô*Ü?Âus¥ÅCNuƒ9ª²9Ý„ÅhLçÇë3¦±‰÷íÒ½Y¾gCèþ¬õ¥1]Ïgº×§q}>¯ÓÜ›ëöŽÓ:ã§¹k˜í_Ô]-®ò]ìv­ÁRÔZoIhLõì%ë•ò9J‰IÛ*ä=kík@ëu™ê\Íc¤º‡šÕZ¿PÏ«tÓhü•êõõæ‡è~‡Õzf†_é i¡æÄd)ûvéVg•½§­ftžk ’‡›Åd²Yd~·µþ—bôŸPôf7ýÒØ.£á:K‹ÏØ¿ŸÉê ¢S讘ÑKDÍWPêhó:¢KQÐ8&Ëæ³ù,Ö©ÊæN[7ã¥mc‰Çñ’¦&˜ @–`ðò~ƒíˆª§N‚u¹!ðbÁäìX8æô¯ÜƒêŸnºÃÜP´.gEÖÐzÉs1‚Ææ4¶§½’Ó½%ÍjeŒæ¹‡ÔŒÒeéू´Y»x¶2kg Ž«Q¿og[û¦ÐÚUãt=­1ÔE©3Zo£ÙüJ`ñwme¢ëvO®x¾œb±°ÚÔÈëØŸ5íÿ\cïXÈšZ{BI6)®õ.7J®¤Ïi©^›è~Ó0Öýo糚^Ýê,™<>bz)z­¦µÌ†´Áã²Xn"ìt#—'–·œµ»™lò\¥š•éc¡§ Ó~Õt†Vaº…•ÖÝI×ZÛ :m þ­·£`5ñý'Ãu¢pé‹Ñú7Lákc×Ö½s>^®:•)uõ›qj<”òjYõG;¡ÄÀ¦K5E’¸,›¶+ML™5\ (” )1s°:ÚÎ6Ä5ï{LG§³£Ht¿«º£©ZoLuQëžœSÄhËÙΑ§Gr¹Mª2½O»O©K¥ïá©õúNjýÖJÔ™i£±•ÑXëºx&¡õÌé¿=ª—£8 [·OVkü/·|°Ôx\N‡Ò}oëî€Ðz«OtÚ¦ŠÎuDu¿P ¶k¨š‰½¦º}­tm¨5ªµÄV¢Î[ÃÍdzޟŜÕúŸKjþ¥èMI¯ÿâæ?^eôvsK¥ía¦zϬ²CÔš?$ºƒIf±TñxÍ]”½“Òí=W©ôÈ”áïê{”€ªu´²Î‘ôÿ1¦oé,–­Äã4Ìý1ÏßÀW‡EÖ¥¨õGôßOô6ƒÔš“UÁ¡«醇£ÓZ?^é!™—$y!6žÎç)är¨u°§#cê -ùÆ„/¦­s bZä±b~WÚqÜѾèð½OöÉ®=Êé]-®´VŠÇtëQõ#F争§ôü÷µ.Ó(uÌ:·§4÷Pîg‡»§b³™ÔÚ"MigNå¨i\Ói†—êTu[ß,FWZauŸJ5|VñºŸ¦z3¦8ü]þ•Ò»ÕÛšÓ§•õýËÕSSuc¤ze‰ÁbšÎrXú•¯4Å|:¼¦Ö É\†5¼|Âô'Eé¿n=¬bçÔ§§‡o´îÜž…`ú¾€n™ï\˜¹õL:|¬·m>¨UÈF3ãi&ªÃKìÛ¥Ú§%[;6¤×˜| ¾ŠÏa-QNœfki¬Þ—ÐðÂ\¦7®ºs«0z˜ë]Òãµe]{§õv#2ÎòiLF“´±Î—WOTš¨£ðÞ¦ÃQf‚ϵãôªL‘ø‰ª ‰ zGx»†76gÄ7'þ£ ƒ©Ãé^®ëm3KBc:¯õ.“ÒújÍ—i›Ý\ÖÝÔöu„y m‰ÉfrÚª8ÔúwXá:QG¨ÙÌ®:šu£¸}y£ÍCRÊô‡­˜.­P×ÌšoWôÛPô“U&”ê^–êÔ¸ ;Ìf$‡©©'ûŠ Ô}@éöªÒ™ZöÛeÇØ:^½œxצ&Ší5hõ@‡ø€Ôõ’¤±t—h1j*ä•Q.&དྷòÑ. `9ô:-×1­º©:»«ìâMM ë>Ræ´¾/5€¡©(to+•Çäµ-!ªä·ª´FGSUÅ=™ºu­­.§Òw'’Zùä˜×­Aã ÒHã§ýК÷ uÐu›¬})êv´é…«:Þæ?1ÓΙå³úG_i-7ÑÌÞ?¦ÙÜnWWê.£k‹ÑjÁŸ¦4Æ¡£[3&Ñé>†é-5Ó¾¢tåïåõ"õ[#Ô÷Qu†laÿÜú»Su=2ê]Iz¶žÂ`4¶>Ä2dd›„Óø<—ц1ôñTñшë¦ÞÚõÒzqÝfêgM5Ö‹èþ–è~g5ÓÌŽ†Õ¸Y£:Q­?Ó\¾{Ö>”kL =SÒÑÓ¹ª3Ú7JèüÆC3Îã*ÜÌ`±ØûÆÔUFŠAWÄÐê),ë 0ðñIÚ] É|JŠ,PTBRFÚdÅœ‘6–Ç{š6•–¥˜ÐzæÒéš=ÿŒZã§M¦º‡Ñî˜å=Âi—éÍÌv¼­œÅên¦h¼®w¨x]?×½7éþ£c¿[7©°š[§ùl&¢µ¿¾>‰5¬Ì™©1?Ç⺓”Ó]Y—§³=ê%~‘ã¬fúˆš+¤µN©TÃcéÙ½^ήéî•Åê¶‚[:/'Ÿ*Ñzè/b54֥ꮞÿ|jí+ÐÝŸj¸ ÓM!¨´þFÞªÓþÙ:UÑì& ¿T­ê~œÞÔ¸œÈÖ=.Çäæ±ÓΠc-ë7B„úÃ5+d/iئX¿`ÝÇTÎa(I©+h|¦×zvžÅRéæ˜Âa0}G¯rŽj5n’éÖ ªz´vÍ57U:ƒ¯èâ2¬¶ècêdà­~(¢§[!Ša‰I+HÕé%!‰ØÃ‡mÉÅ€t°K©N0ìH˜xwÄÒsVVhÌ6¦éYúS’ÌÝê ŒîƒêM«jN¡ÛÆè®fº¤¹}.½!Ö½@Äe³vñø©ñi¬2k=UËBý=³¤´î¿›Rß;Kû³Ák}OƒÐج4F¶«î#¦êFˆêz[!™Ò8î¤tãXõ –§šéŽº×Úk²ÓÁc*ÔÆÙÕ÷õ-+“å0Ú×KâïSÚ=­qìûIõn®Uz¿ÖN¼õ7—Åõ#sS浇ҹG©ý3Õ]0ÎS«…éÞÐú' N·Ïç«c°ºK:jÛóZöæ¶ÁÔ¥‡«­Óïg6鯬ÇkL^­ê[!ŒÖ=;×U¨Ý£ÒM1§cÏô—Mêݧ'}-Ó–h-7©kMjû8­[KÄãµ ŒFRaèÁ¨®ê\¾rOÖu„Ä@)b‹›NÅÁi†RºqIPQ+H0 MË¿.÷m>¤ûªÈôËÝ‘èÆ_I¤ý-Ô½8¯¨u?R)|“'Oµg]éÍ£åÕÁ&Lu=˜ÕZÈäâ¢ëÓëyÕ9[õtî?%*ñéûåѸm#O]é}K‘Ïã«uƒVuKÓ¬>73ŽéGz{î¬=¥ÕMuW1¨°ùœ†%[¤š“9Ò½>¥®:‘¨SIk­W§4HÄi+Ö :ên€tëYë]a­µ†¥muÑ«Þß5>ŽÊµ:71ÓÜÞª/T·Š8ÓjÖjå¼-ju­ñÓbä³G'Ql¼SGWÇúht&¾›Àb«j¾¨¼ø} –é® Õ¹«=4ÖZë]hìŸVú©ÖÆ_YëN—jLÆÔõõ×Z:Ñõw¥© :¥óñÑÕÙöKêl­]5I QQJ#TÃ,``\ììöÅt×ÓÍ$Šš’´é>b@R‰2@#¹!ÁÚ߻ޓbµÕ/’ƒTãô¼zŸ#¡Yïã°QtÊ×Tp¸»y,¯NªZþXëÛº§_’Ç®ptö g)‹Èi„ÕõG¦Àkê¦ñZÞxõ€×_¦St?Lõ;F^Õ8¼&™ÔÝE½Ôî¹ôw¢ýÿgÜÊë:º7£z±êî&MΡçô&{GÛ¹ŒËu4tçIZù‘.{!èÅýs›Ö–,j“_Së-]¯ózdcºsJ¾CXëJëjŒµÍwŠéí»Y‚ݬ®C)gDdú¿sFÖÈXŽÊaKˆ¡£²=0'Ä޹׿qy;º£¸Ž‚éܼ¿H´÷Lp·§Z®Ž™ž†+¤44ö¿‚ý™iíªªX}wê~³˜ÀêÜ~ ÎZ‹7TzÒ›Ò€Ê ÈÒ剀@,C~c¦z\¥“¤$êœé.02ÄXol0¾àiå5ÿH4¾cGë= W¬Ús«qa0ýDÑ7t†®ÓJèv¦ÂãõF“ÔU[%s“MQÔm“Ñ—´„y >B纅£z‘¬´æ°Ò×É–•\8`áË+Jñ‰R7g24eÔ:JOóÃè²Á'ØÒîžûDÓ]7Ö]³6„èuN±ê½;&˜Æ]ÈõG®Ú¹b)£ôFÑ3IèÌ^/24–/Eãðø{ëì¾'PàhI¥*åµ Ê¸žLc$`¬Ubvšrüj%bM›@–¦Û¾6"»/¢9f…5þ$úõ4´› æ !öÙ²f­#/òéõ)™ÈåÀ/·‹N6åÁa ‚%2"²Õ"YÒhk›t§n`±`݆B[IWŠ*ñh˜Ä"TŒ²+Šöãºð±RÄ  /òE¥’ÌT•¹jY+ÞduŒìÒÇŒŒñ’ÕØ¾,e#µh¤|Æ:Y^<½]î3Åf¾éèÃ#@B/Ç‚dil¼©*H]… Ì© _*ñ0žùj!13®÷ä8.,žþïÈá¶Æ`´†Pp]Ûqó½ˆNÒàct†”4gºìda_ªÏ0ÈÆ l*"B©Ïäyʨ “‘ýY¨ÐÊ’ífbé Åaß¼”æ$-KÁMË6L\ðGHqõÍT”2 vÚ)"1µbТ7ÞH"&×m$<Åa=)¸Ý”|²î‘+‡EdpÖQ¥GÞeäw4ˆJëï‘’%äa`øÅ†ÔrHI1pЀîÛêŒ-@ˉ$û›³ÿll¬Aƒ‘áÜ»•ÕÙ!²ŸÈíÄÆÃi+FR#í4K(;ŸÜcvæÒñm–b³”Y ”XŒ~Uš'ddêHXÔ…UÕ¶Ñæ,`9RëÆM„Œ "´1¯Ø¬[nWróBDyggEÅU‰í½©XºF#ŽFùÊÑ (‘>KÆ‹>"@eÇ„¹_-塸`X3l× pÁA@s"Ângc¹ü±´ˆ ñ€ <#tCÎøDÐÏa–Ø;ü 1 Ÿrg‰#pChlQvY$îI ª4eö“¿ ÞO‹#ïò çßy-DþÞµ™š+RÀå j‘àY“‡”¡«¹c$Xõâ3ˆÊ^+i¶vâ•Úq#1ÆJ¼\Ër"9 ®;ßÿÒ@*Ö_èR.@1©rCI,Ì%ù˜€Lƒ¾¤ƒßýÍØ‡-.ý¶—ß ñ•$H˜@AŒÌòö‹ó‡· UkK«$n>j;=…–ê°wŒ£"˜BFs¼†2®AS¥#kÈÁ^;³ŸžnHÕ¦T(“;!hûjwU^Ñ0˜‰IÀ’±Ý¬¬ï%±Zx“(‹Š*ƒÈüãõ ªÉa"m™äR!6~ÎóÛ ô®Wשµåv››°Ì<¿>pµ&fZF žÆoŽæEü¾2Bß×Â$VùLr+°z!)^ö³Ž‚F«Gå¢I7Ôž5n¬³¦®ãÚZ5îcîÅd¡6DrÍn%!âF²¢~h–7átÏ;Š¢( ŽV¯xÛ€eñÏ,ªµ"žyr”*׎e1ž0Äöª… )KV*È;—ÇàofúwzÌ9L•¶µb¬w¢HÚ+Ï EëÇ}Öü@SçsË`A>@Üó¥m”1äÇÀ x(N 'mÛŒ'Àò?´*6)by( *¬ Óßßõùѹe=zÿQ;4“ÞÍNÓEV¼fY*{Eö½2ÆJ)½yÅy$3[YbZü«ùu#Ø‹­:ÑÒþ›æ±zsZêêx,ÆcsRâpÕðZ»=jΛÇÜJó©_Ná3— ÁWÉÈ•eÉØfŠóˆ¾fÞ‰Êö:Ýþ¢ÁeY’¿½öFŽeš@¡}®ûhyahÒX¢²IZ°rá2&ZMþDG½NéV5¯½.”uEj}YÓ'§ý²õE级´÷Mµ5¨5>S©ØŒÝ=z—Q1Z‹ã'‡¯>M24°al´+y(œ|vë2k©K¥e×A:”Y ^äv'Ë´ïlrÙ”Ò©Ô*§0¢Š`“ê d6Ï"éÇêpÓ8ý›Èõ r cr™Í ™ÆfõösW`0ñâåÔyÜ.šéþTfåÃiÅËâÓWeÎ=3¤ZŒ™øÌÄõ °ÎOÜCðØ-/ªîu3Mdtþ»Ç_Ô!¤çÊõj\&[™œÞ' èj¬µ¼…ê’æuc—°ËÕ1“‹TôIr~Ózõ«s£½BêïJõoBz¤t¦³Ð0i[Ô ­4çY}Äõk«¸}C§µ£Ñ¿Äéþ³ê®¾aµNž›Me~ Læ’—Næñ8Ü+bÖ‚é_Q4„¸­]7LzùÑ­[¬5g¹î¥éì§·éúm¯r]%Óp릳ê}nõ'§îýN›d¤ÃiŒöŸà‹ŽÔ˜\nµÿpà°ÇЧ[!j¥õ â%tA.Å)Ji’Ac¨lfcÎ/NS, •&¡ * »AÒd~ƒ7îs x§eÉõKN-meG ”Ñ·¨×Îæ°Úž¦qm¾M3ÁâòLíÙžÅ\v*íÜ®—ž¼Ð\£ 0„£Qûè.’’¥]IÔÝ9…–þžÀë;QdjæÖ¾šÒ¶Åè0:£¨ÅŠ–M´æ¤¹Œº*d:ƒwIÓÌØ£s!´êéT+ô쎚û ‡/Òê5?N}Âé­]ÔÌ/Ni1GIiÕÔš®WÕM‚¶šw ˜³ˆ»C;•Ãi .c¡ÔY\Œµk9Ž0²ÛϪº[ª=çÓ½íϨo^»êœ>³ÐM‚ÆhìÖ‡Öø‹^ÚzQÑHº_¯ó¹ÍM„±¤±XmUÓmE_3e°9œ~@êZ™ty\ÝÌ–5ô~36% `ÄÓQPt» Ü4KµíŠ¿—S¤¨N¤±:˜X¢íÄ6,¶³ë÷G:q“|>»ê^ ˜­Œ©©²U;—óséü%ð‚†©Öw´ý,®3Dà²P¿aç{ؼUǯ“§%Œt3MW3F®?-[dQb,3Ù¥°fFlŒ4'šXŒ[¡=jÈæ«fUPV@¦P=1êfI.ÆðÄã3ThÐM3IJ[—$R\¶˜8ëÂ\U"2Hx’)Û¸¯hÅ<±ŒÖf’82LÅq,ßÇÍÉXH'Zo÷NóhYhø÷ ‰äjê°™ZG\qw™&-b6åHFnR/'í©„Jdqr$‚613´*ÁÝjÞ‡•Çaqwõ-ÐSŒØbÍ3+–½¾Ë¢t Æ¥%ãÏ»6,óH¤€K?&ýo¾ÿàÀ#p£šQ5ê€ïñ»~öŸ³ÎŠI¡Hî€C]ÏõGÐ[³6ÞCÕ;eIâÒHÍÎË)iR•Œj~MŽÜqD+üXaVÛÄY.hâUUv%ÎþPý˱%FÛ~þ¿ýdÿo ¾5Y:©“‘V^,ÓÆW´ª ­m*.åP·Ÿ´ªëbCy ‹3 ôg'ˆfÉØ• ÑØÇìóÿ·ßÿ7ç4ÿئ\†gå¦û3e÷ ª«]ƒå¹>çÞ§;¶–”,…I·TȬ;í"—’P[›"¬óB¦Z ŠT€õÛÑ뾘ê˜Ü òí—‘9.û³ª/"üŒ©ÁU2 ÙBŽ/RÝF˜”7Žy 2×2:HfSWw`Ÿ¼©Úi‰­))Nf húíhÆoöÆ •+ÿ/®PÕD-˜™Žj…?é‡û|{ŒX“銿èQ3ñ”͈ßèAíË¥Žn£Z˜nþ¡<<»bH\±1$ öPÄ$ ‡øˆâ|qØ÷ªæ­fÿqfI~L×¹fÆ!"´qsŠ4)s·»UBU†Ëü+ ÊÓ¿ÿŸ;©ñãü‚6ýl»mþ6#USU•SæÙ‡".Êñâx‚¹Wàv"I`P–ež^ªÅZ«,ð‚uôCÿP¡ó,ÿä9ãf;QÔ“ 3nÞ,óÇ‚ª‰)vhÚd]âû²ò-w¼G:>ÿ=±´´Ù+é%ø‰Z¢È«hÑÉ ,Èß`¡¶”Kîj’­¨Aq®ÍžØäƒGÈDÀr$+þë*r»‘¸Üm±|ú©¶Q”É™FåòVHìw-aÄQ<ñ샼$žæOcBnÚ€þ­¨X·ý‘È¢– nHØl»þ€ÿé×Ñ ªkšÆFuv[0¯1cóª àš´û1Øc=¦ª»²LQž §™‹G†|pYZVº"•ñj ºC’KßcDÉ':£h€ Â[I o¿³yÆ ºw„ …F1‘«ˆd…äi!ãRDVžG‹O´‚„Âx˜H;#v”VUÚL¨ö*TÎ`2žrTC%™fþ¦ •ØYQ)`‘‰Hãí¢É÷5•¡i+QäìIbS#\¥ëR-ø‰ôØ*ˆXžG˜;»3"…à†+$‚ïÈq‹!2˽UâÞ}tfHMüÿo‹†ïìIÀ&0|ý‡ùŒ-X»‰ +Í!•gVu†[ߤg¨µìxäc*Í #· öà^u]ä…ëò"ºÂeÙÞ ¾«AßÌœ`UºVE0¼JÈ0Iø•Z6I£Œ…s(AbQ{‰øª¡¶æÝ‡ø³ì¯#2¹y™Ê…vveÞGf;Ç$ˆ»|É{b&®KãTÙŒzZX11pÖ»°µ¡ßûÜ^-$qý†2YÕˆŽV/¨Ë,sFk¡UUˆ©ñfn …Õ4¥©#–NíyƒzH°ª„L¢  RuŒURX‡)HÇ•Ä^|œŸÕP ØaJœD}Î0qHëò.Îcí!!æwTׯ#˜¬Ò “,µ¶fÕWr­+°$FÔ SÅxΡ4ŠBRòîhîi;醒 ÂeÇk™ñw±ÂÌ9÷ïû½°à~2@{±@6’`c‰Š¢÷ÉIíCIPI”Mdx.¨¹šy‡'0’ªÊ´‘Å/'aÃ,±‰00Óµ>ÖlJ3- „<#4\ºî†7€våS"» bˆ R.doD³NgäšA\È¡Á¢2?uäYfc,ÒE9ß¶«<¶Ø6ÓMÛªW „#xdˆÁ2IÄEOØTrêˆûKNÅËf¼M#æ—…Ú’ç3É*H.ï+ïå$™¤ÑämÌÏF(‡‹Ôñfk™)ã—åFY•)TRìÑF‹»ÊŒÑ/dQHÓ¹WÑA)iÇȰA‚ÛGç× ±ZXaž´±Û‚ÄqÙ¯j3±OíÛ†ÝiÓzOnE’bi*aƒ µþJ7©¥A!!'Qà 8 ÛêÂNåZw³±€A–àpÆÃ @v¸e&#Ê ±DíÔŽ%%U¥*¦9 /D9n˜öð2ý¼”ÌÆY”:D﹕»‚©¶w“ þŠ37­,¶W‹ÇÏ”Îdñ,esYÊeîUÆa¢“!n¥ÐÏ{#bŒ5†Jýºxô¨fK™üŠG–xàg2qøš¯{)‘­‰‚)àŠKy ´±U#µ+ˆ«-¬ùkÒùNH†¬³XŠš¡'åi€(-"J‚H`‘`^Î÷{â!* hJ®Ö$•GoËé¾75*DÑÆÇºb’9•ÕŸ™vÉF2ÈèQÖC@ï°]ÒDàÆÒ Ú0²»*ð›"é߈v«±œ1,öö$‚x‹ñºHŠU¥dRPeX¾^ÿN"ãÚS™£Vj[¯~¬W±w*Þ§q;°Ü£-k”mA5šÒT-^Jå›v†»Ë5ˆxd•Nþ¦—¤Øo— áÁ“ͱ %¡Dx.c&ÜÜ£º¯âCU„§o¹¼aÀ‡€bW”Žˆ©™,€™B*¿ ¯Ê^/ȸe+·l%s:ÆZºDIl€ÆÚdLjüIY•e¦ÿ¨ññ#šÆÒqâL±3L¥Psa$Gó/ýLÌ?Š©ISÓÜä…x Á áe•‚‚‘p’5 ò¬J¢£9j±ÒåRär܈lî2[€GÆ.Íß¶$„—±vpá„3$‚7}÷u¸»›ŽÓªHëp ò݇¬BýÝ|üËæEµÃ(“t nî †Žeš3³ˆÎζY–7³nƒ'a¬Õ™ñœ^ʉ#Ö‚ÂKv)k=r²~J¶ÃW,œ[„°»ök‰Fœó¼¶w€ªÀ|m2!wŽGiL¤©äœ0^s)BùDãò*©0cÁ\¼G½²Ô˜ §¹%ˤ÷fø‰Bœ¸0%Ãqóåç ”@œ£à‘Ä¿Ž)"؆&„räѤŠŒEÌ‘L%L¸ŠªÇÉÂÒ*qoƦ7‘ã}d`AÝy2+'ƒvTâ¸ó´¸Ò®õ«.FŠ_­‹9Ld9›ÕrWéb&ÈS9;Ôè½DËä+P’a‘»NŸÎÇ.^åX,ˆ¿v5æ±—-‹Ší\tÙlm\•ë?Ž=òT`½rÝjítÔ©JÕ„žÝÚô£šì5Ò9E:QÉ%þ0£È¯ñ'XpHmLĵÁ‚F×`} "í i/c6¾6Q8•­ÙÈ&!»2ͦ2ÕyHfQ—³O‰9êÊ÷ä)e³¬!€ rr7Ø 'ÉPv $HÞ¸J †D,T­îêT‚%Ý•ž4íò(ê\úDÓ‰ JÙ©%Aü|ŽÇ ÔNÈ¥âg$Ë¥%Fí\,Ä"w)`¨^Nã3lúœ·¥®ä°b@gr`IáÞTê ¸îG›–Þ0çl²q,£âò+2D#2‚ŠÑ±–Hk¬á$†¤Mòâ²½Çå]œØnò©S,Ž–X—Ž›”i·A¡ZU•Ò\™­Û‚‡ÖÞ=;…Ô+½3•&5ä$&‘G)APñXN üÒÁòQƒN0Ž¡ÆˆÎ`êZÆâmeðÔòÙf¹üN!ó8ø2™—žZáq¶,ÇvòbEºr«Wš=5ójÖÏI˪òEJJJTµörS Ï;ZÁ°úÁ³Ú%½‡øÇH¨TPû‚›îZN%ÆÊ˜¨"Ì{2BªZ"Ç·>“•Y®]¿˜Èãñ”qõaÅ쌙5(AV¬SE-±4ÑP–¿nÝ©»ëÛdV€—*H¹`YÝÄÝø•4GÒ¯”°¹vb<ï,Çé¼ÐGKˆÓf˜ˆ?‰'iJŠà–‚çnfþ±.¹°ÃàÌäTª‰Ã)ŸºèñÊdq³ÙcÝ7²cìBBÒ©’±k*¬êT3K´›‰Øº¦Á]’Ãîdrˆ€[ ñÆ© ³;¼nßhQ´òí›´@GÕ!Ž@¬GòcæÛc #Ôµ† @´ê CÀw// ˆ$©t†úÛf·›³c'ãæ9"Q¼a”™£IÁZòoaUÛqÍ(K.ÍšÞluäUHäd‰±û+Žàa<À0 DÜ*“ qJó—Û Åª°’0„)™Û—0¡ß~âì²)Ü\$€ÌÅ)}×bˆÍc9ŽI«[!Fôù*µ²U.ZÄ_—«Vz7naòV)Ñ­É%IåluöÆ[§v<}”‚l¶.ÝL›/ £’H:_ÔD‚ÁÇmš_ƒ¿Ú@($úL1vì8,û=¼c“°@¢)Tr ±FóÊ ¬ÅQÄ®²9¸¤®²4R,b!Øžã@xžj(KA’µð­[–+P§fõûcèU­ÏzÍúôjÖ‚!À½œÇ‚!_· ‰:’íH€Ž[ÖôТ™…‡eÚ£ŠÊðæ;•QÌ,–y™éÜ¥?õríÒ˜R \€ììešÎïgf–{b .é•éäÈá˜ÌøwL±W)GÊ»ì&H•"7WägsÝ+Úe[2ËÊ´éÙfã×ñ”æc‘—bŠñ òï%;-2òÖN IüŒÜÛjœ¶)³ ƒ\Æ(ê5¢ù±l®9³òâ;ïJLËáÁ¿>5çêZË%TÆ]š&Ž”¦Ìn£}ø™´Y_Œˆ`ßfb°G$),üE-ÙZU2A‘`­ZKˆ2ß0qhÜ}¬[ RR}@‚ÀÈ6,ă´Ý›ÛrªV]ƒ<§˜3Ç ˜ ¸>íÊÜLÊ<ãK ªý®¾YcæÊCÞ!£Q æŽÊWybØ­[.­XFLG-›Ö¬¡VEàèÜÏÖS kÂMå)0Ý¢­d» ÕaF…MJòÃe¦x-ѹñ­ØÇÚ0M ëK!E”d1RÅÒ5k´œ Ééù^+jÄY–ùpô.Ú€&C˜‡þþÉ”GÊ­Œ?øNøë´ÑªÌÅaeXÈ£G&Ò œ3ΕW"Vµè-£ Ž^±ÜPB‡XÈwßuˆÈgRL¬"ŒbU ÊÝ8Äu‘]nV÷ß@÷C;G*ï ² 0i„ÒØwPiG¶Ýȧª> ÖJqSÃm!S¨5å †¤Ž.>%HVVåMZNì0L€ì˜Ô· <€Ç‘ï<À›DáÈSIÿ㱋 Ïä×/ºŽí˜ÙÕŸ¹÷˜vwY—a(%#¸ÊÉ,)ÎX‚Ø`¥¢¨*FÜcíFã…ù<0Ô˜³Ççø; ²¿ví·2­ˆ­´BÅ+‘Ô±k–­ÊöM<­c¹ uȪ³ˆnQŽH[1Ž˜üš‹4Á]T¸‰À«6å{Ô!UÒD“ŠãìòD¬!G æ#:ê`¡ƒ( Þ¢H?[Çœ3,?¦FÒ~í|t{¨ @DZ ˆæD€ ÙÂÊ€Ƈçíò©.ÍÄ4­ â(`ÈÂEe]j>‘ –Lt®¦r‹™Ø(Õ­Æüc†F ›Åù¨Hä aÁÝ#ò^o¶1·¦£€ûò¨˜lI3¨Y9³Fa›FοÔc¹´înGá0 äqêkñÄøØ!Dv‡)‚;wó¦h¥÷x&‡qH„k<±¹iœ4ÐWŠUÚFp.ÅuÚ ~#<’,»ˆ®O|´E0¤ü£@Ï”QÖ•"û=(`ÿSÁ¤ûa­2¬Š‘¤,Þ_»ÆEG$÷Oã–Ä1>ÂØ¥Êk*|´Ü7ñäH^? cí¿t,Š w>‘ÈÊyˆwóQŒÕ¤ñiÄD‚” Þ¨‚YŒ¤]ÈnH¾YƒAÜŽáÝìà÷Æä2ÀS‘DLS8+ý¨fk »I]ä(rlöÝ—24^J¡bB¸@‘cÇš’Lrǯh@[“Tfº™·•ZÒ’ÀÄŒªRMÔwfd™˜íÛCÙä/ˆ»q¿.-EˆÛÓð$ÛJª›4¢)QLœ¾¡S·û(íôañAá.B-ÆD)ãÔTD8" v{X͹n&ï \|nãèÿl=Úˆ©ÞÏ#¸Ù“f!ˆ-+~¿äp’I†eiyŒHÂ&Y¤EÞ-Ø—hò¬±:LÂ]ÍDC…PÉ~>.§ÖÞ&¿{-‚ÂÇ5fž8š;=iƒÌ¢Ê~«°ÛpO¥ˆ $‘¤‚&_ó÷ÇÇn‹ƒ[­ÿê%–2[Þ鲜%'¶¶½­ûk˜#£±)±,ñÇåžÜƒá1>¬ô'“”D»‡ž6€`¿p#s$döñn;êÇoUk¢©Ùë¯úˆ]@÷·$Ž“nÜ’ûQöÍeÚ%#›C,6#–bÀö c¼%ΧÊYŠö¤Pí6R†Eå ~23:îjC¹[Ãëp®ûÛ¤ü2‚I Ń˕ú{ݱËu¯ÆÔav'‹$Ä@’ÑluHÉáR³–Þ2¼È2ØnÛ»Ù§k¼m†ÍB¯-p­–̪ä€ßÚÊ;AÈÅB@—õ$±Æbr;ujso0'Ö;®ÅdN "·†WdàZd Üsåcäöv2bí«U«¼.Û ~Gä±"2«+‚ÊíÍÕ«¦î¤‚ ã÷ÙÏüÅ›voÒ”—ÝîHŽý‡܉ÙšL˜ÚHï8qÄD"ñ^á^\vq®ÌZPê,pɾÖÿv'ã%~1r!´~uá.¶»/•UfWE¹ÞE%ÒF-B Wj‹Šü­sž]öB©fY ÂBá¸!»ÄmÝ#ê—üG,a©¨î0>¼$Ä$gAxã °ÀªT1-±F€ØkXJ&‘#Ù­x‰Y–›®Ý¼b|&R …lµyfA)h¥xÊ4Ì`<áÜ Ð¨5á@$¨§võ•çÞ6Š9ˆ*ܤyUÒÜãY!r?/w“ÅòvᓭΔC¹Ä†£•Üãî;»q^ÐU݉îEÚßp‹Á™¨JÑ^Uo^¢¤&¢ TÅ V 0f34ým‰!KB’¤ºVP 0Þì^ÃŒñráP?‡ª öËqšÖÆ@ÛÉ\¹Êžqí¸6%,„ë›êÌÞ*|cãêÕ[2£w#±/55mÃ=}‹þ8ÚSç<¿†œæ(d :¦ã‘Qe ) ϸíºÄ#]–wÉbn\mùîÅ.ÒÒ^'—§ Ž[‰ùºqÙŠÌeXBLYãOÇ4¡;…©î!·X¥âMˆFØ“Ór‰ZM:eÁæ0ÌÅöñÈöÆÅgóU ¬\ _füø{“0@³ÅÕÇÁ¥`WÔ’mÄÍ<®ZW0Z8‰ú˜T÷Pí'®ä]W¶Îðu#¼B†±;KñÖ´@¯ãkqÍ´ÆQµV¤# dè/ŒÝà‘JY.T0+wÀɸ+ Í·²€Õ`Ö»2.ÂF<ÃnˆB0s÷0‘¶.ÒÇfv1R—Ó2«Z”ªz”¯Q:áÈù™â÷æüa öi)Jý)Ç‘´ÁÜŽ18‹Uö54º˜ÑYíØXÙ+¬-v‘ëC È$b®ÐÈ‹;cìÖR_c¶Õj…˜­[ß’á鲤²3)»)‘¡Vƒ¯e,clåäø„{Ìÿ³¿7!ìï#Ekøù0Y• »*플Ï#"8²KÃíGŒ+‚fc(ô—Óòµt•S}( £ H ñ{»‡¾"Œæb›”+HQu ÉÜnŇ휅©õìúƒ(d0sh¦gNx”™ÊÇ4%”K ‹”SÒbgݤQbM¶±L±†ÇÑÆE‰†ÌuV(‹½¹^iUb=ðÓòµÃ!ùE‡ôrWs\¬¾…Ë#8TBNÛ$¨¡×¹Âa•BÆhkÝpd‚ÏsjEoK _rȬ|‡{(6! u & Øâ­/zsÁǧþ–øF™AßZ}Fåƒ3˜6ìøsžÌ¦§ÄJ˜ÎDÃm37{rØ/ÿÅ«#ñVID|ÝÖÌÑÀ$vÞ»…p]`‘@ŒLÍ8öãÜúæ¯>Rõ쉠{ò™{fGh `ʲ«Ì~ñűï-ŸÿAXíJ¼û‡~bØyìU™ƒófeiØ•™¶ W¶w·Ä™·ÂÞAë(drœB‰\4Ab^kŒ˜‘,œNÔ«¶ñÙ®î—ØØv• ž_,²ªI %‚§P ”’wö$Æ#[5^¸ ¨§bö8f`Ý­{Û*¨¯Ü}¾¤£õ!%P ;òA!ØØ€%áÆÒp °D‹’x•‘äF^Nê‘‘ØGòQ~µd UjæJÎÆÄë³Ç幯êÈ­ÜBQU]¶¶Hyx‚é@äRFz]—‰IVîlUû°8…fgšçeðg¤›½G+’HÛÖ«M¬ðÁ¡î63îZ3,Ì ÖµÉ¦Hf“‚Æ#©'‰ÆÐWLzWGù2¢»!ãZP²’*ö• Q$¼¬ Hñ0‰Ytß«r…n8”dÈÊÖŸžÑÉðßýfMö>Îdÿd*ò±'þzi¤dw+ºK#7’Xà‘Ô¨6Ì×tz+Î"Þ°²¢Hã¶è{±Ñ$ݤ-æU®ê|S,xø¯cÀãÓ2kQVƒ¨—>¦.HkÚe¡¿-£¨f‚”¨²`z@ bÑíßèÓlf­‹¨mê¤Ò¾A%×yY-öX¿5ùHÔE]<´I *BÐui‘ŸÂ‰<*.ïÉÊ)°® aäVöâàÕff°ádÄñ—2¦Ë, ³NÌüL¢`§hEƒRX`$ÆÛ*¨¯+7¦ås²*ŽÚì‹  …£BË-bB—Ù&6=Öe 1S_NÊÕ:–’¢”„É;6Àˆ€OžòÔ³™š`„Ÿ˜•XC“Ì=¹‰í‚«ÖϪ1±QlzÖìZ6y'±ñ%ƒû“Œ®$RPî{‘Ø *¢Ç¹õÛÇu91´kcß,±Ò¯^”̱<‘ÕEŽáš1¼QZ2¢Í2Æ à—š÷”FrÜa4<¬†11Œ«m&Ü{näól2þ êé™ |ŠóD€J7 jbA±ÆÄwZÍÐäÆ>I];*i¢ž‘ à¹"óãê<¤ç³?ULà9  ÀˇÁ°upl®0ÌòcwÏ(Ue;lQB†¿/\ ðw,‹¶'°°ö«e"yGÒY]œ³02É,-´õd˜ö¨¿*ö7ä é7-¿3ÆêwòŠ‘™dÊHe êRy63T°œ*)…·õ‰C$’¼ÁÔ‚]Vyy²$ÕC¼¡cä¢6ùQ(¸çœDz ºÁHL ÔH¸#µåÀxÅUs5«²j±`üŸhŸºÁ,€$`má6™!h§waªbo0Ft]¯-Æy9-A ³¹Rç€nLAà¢njÛOºyI%Û͈†õàPg¯Éüúȱ8S*©ˆÝGG<»eC7ÿ:AñüÓõÈÑ-Fï %£)X›“'÷CÎ3ѬOÿ¶Œo»Æù§ã±.ñÝm½l Ü$8‚ šÇs%á›Î(Ü}ƒ›Ëïáø–aÃvT•]dùîóMÎî“#ŠWR٘ĵ¤à©¿¬Hcá'#ÌFcí:±g)ϵ,;í+nLŸÇÅb»&FFîHê$»7hûŸÉØïˆËƒ`ða¹m®öa‡ §áârB´¼ÒT}eZÒþX󼟖">qǶ[½"ñy“vc’EdåÜv‹qzxü˜Á–— ñ‡½¯¸þÍ$¤ ÞNá;xt›û‘(ü7p–=é"÷v>šBåLM mBp‚NoÊ¢ˆÉ2ƆbÒS‰·zVˆ|‘¤])‚n$K;É &"-¾£ Lù›xþæå`p!$³uÛ“ÆÐö¸»ä$mÁ-1æ”p¦?.·n%N×—‘gŽ hí¿v‡þÌ4ÊË0mý3ÉO%u Š&“ºÄ²;w&ÀAVî©[rµI—•ì±>°1Ä ´lˆå äÆGûvÄ$ðšV¦.RÒNyQ (±/ Éò'öG“g÷¸Û‡çKÁ`Uù‰9¯9“Œ6¬ÒÌ©+¿+ mbI_æSU­çÓ¯º;‡ÊÎŽ;‰8×€" ,GZíý3CùË4àI‰Ã†&Ý™™#ŸêJÅ,VŽÃ¸!$U½¿l׆L4jÓ0>²†5wFQT+£¬QFìBFbßœpsÁ[s5iÉk-Ù>¢A€ä±ä9fìÑÌ·Û ›’$ý… ç , þ2èȼ¸+ܘâš;$1XäÝ£‚Ál–ïŒ «äµÛÙ1àñDñF; ¼Jè?éØÔ†CÛÃXî%’ÊQBžxÑ»e~›4¬Äl¥¡R,Ç(#pÙQÚ¬Ž–±àÊIVÑPå‰`à (@¢)<¬‡‚E)SÌ™JÀ]´ÂUp&;06,{ 7aÅ­ÂË1 Á-&>Ÿ{Œ)‘±ÄÜã"@âŽPí"/ÜÄß«’ìÊûMAD~C'$ä…Ÿ’1ÈðSÀG üRZŠ/fý¼ôBMd›‰ÃÓº’T®ä}JËvd#"Ëoaú†üª±ÖÑ€IÖÀWXLrCn¼‚¸+¬lçëÁI‘kK)äÕ•…š÷ȳ)ZnÇÒ1,å€Éû{í6l0R…Ønß·Ç"Ú$3*€ínÃÈÒ9¢R’¹û!+#Ã}~Ü%(6'Ò+€%‚ÝÀ9@bˆ¨’9ЖðŽ–â¸Ùȳ1(ÓÖöY +3ʼnt,’+’¯+ǰù ¥ôІªîã÷mÛÓ5ã;»˜I%càX• Éþå™K­tpdÌÅd§ýhH:³‰,;šñþqJŠƒ9bà~ÀaöÀ¬¸œ–c^{D¹Oc)SLû£ËêŒý¨ë†m?±ìÿÝæ–³š¿"î*Ô±žÔø,&Zúw›?E1 ¢ÜŠ)·½Êº“SÉÖ]›Ëu¶¾'%Ðý%ÿ´ŸN-’ê¶æ'ÖX|ö?õ5^»¡N¿r 9©gÇ`£Ñbò¢ÜÙ34 ôüÈY£1¸nKù£ø¡1™5I,h#•Œu­y‡,/G‹(JcWìÈÊ–‰DуbìÒ¤HµYÈÓÛå Ô±õŽ®Gã&¨ƒUAD‰$iiÙ[Ë¿kë§›”‡@^„”Ž\—sÉv››|Éé~c«)­4µ S©úÅY)õâ }þ˜có‰z%Œö×[§új9³¶)½8tÀÓb›36•Õã!.¦‡®‘ÓÓÏŠLD$:é¥:—ŸêU³8 iÖM+…éç¶¾‘ê^šá4¯Éém1ŸêÚõc¯ùa[=€ÅÃ'û­¤ÓúW¥¸|ž˜¼ì˜l>e¤tìe$oWlÊí^V )#Lq)ÞDpÍ~]“jÇõŸK•Ì`zc¦ý®Ï´ÿÍé*Õ©ÿ¶qѾHᶪÅd$Õ:‹PÍ)ŸZÉ.ØÉº‰£ý‡ôPtÁµ®[Wt¦Ý×ý%zÅü¦¼ÕøŽŒå4F«ë×Da9ˆkÙ±©un—Ò}Ié.Œ Èk4·ñ¸ß‘5ÔlÍ}f6(bl ‰Ö!3%b|pV´H˿໸Ld„F夿ݤ2É!*X–œJþ£B’®â@œ‘#³0µ,ß!€R¥Ó°s &¥5 )É)ùªæCl¶óeFŸòRPR¬Å˜éf³òûããn™±ïŠ]Ô\Vó:ÎmcÑý=Ñ«˜Â¤6t×Zµ§¹N¹ô{©}A¡€U²$Ó×ô%ì¿Hô®NH ¼(5Ey$’J«?®v N¶ë ]mÑvµ§PµåŒŽšÍÃNÝ;:绡/Uê¥y±êÞ”kÜ}3§:K x0Qô·+{KXÃÉS']d·;Åö”¬Á„fYcí[ƒ*†ùð=‘aaób86¦ÕÜO{,ä¥lXd„,ÓËZ²Ö"Ĭ=ÓÁμ’¼Çk7Aj³(B=Pz:•¥_‹ª}N\™„†ÙÂ@7™±1ÔÒ—l²›kIó~Ńb¿ô ©ég=ÄèMY©ú™–Òø_rWp=8ÕZçYäu¶4Ît7 ™«ÖqZöâ'‹Ô<ïR¤­¨ØÈ`šK40»M„Œ”ý ©Ú3Ú?E´®_WûÐÝLѾ×:UW£ÚMæ5”qgúÙOQ=}£µ…8±ÒTÍåôÞuné|~‘Ô¶ié¼OKkc®Á¿/6õ÷Pâ ÍÁÕQ;QÇ#–û³bv(±#Â\nMÉdòÿË»ÎV3ÎæxÉ•™¤S8¤í,(ÛˆýgBLó9«…‡«Ó5&’Q]iø@€¢äHS5Ù¢aÖ)Ï”ŠŠ4’EFSZc†íàÞ â…{ÅÔzÅa½¾Á¤²£Aᳺ¾t÷©°×õ .œZ½&ÕY¬^7!ªºq­w§tþ°TÓØÍéš“²ÚŸ€½ éì¶FXë^–Öžé#>ßéëmcÖËšZÎ+§øÿsÚ·NiœÞ -¦ôëõ›ZTöñ¨ôf.ñµ¨¡Ô=FÂÕÒ´ýØäiO.b}>ŽêFf½Cª³˜úa«Xž´¼ã6`³É” Òƒ4r$M"pte툃pR~$•‰3ZU•%™v+É£1£20±1@lÈÅÚ)‹¶³+Oi˜‰òŽ'£`¬ƒÓÕé‹«Sâ~* N”†rÅÏzYô¥?‚¢ TÙ¿¦Â^=ñð³VZëÿNÓOè-®º£¤´+Mu›)6¥ÎjN®ä³½Ç¦¿É×ÅhkY­!|¾n :8c³zkH_ Ó}GâËGry‚ZÍ-WÜFFn¨ksÕø:‚÷ íKCŸVô¯Líhy‚öÁ§:Ë.o¥u ¼bÖµ“êgUsµe–õ¸ºy¨ôÓÄn½l=¹Ò¥¹n 6³2âFÏ5Ôn°öÒB;Kä,-øq2}˜õ«ÎEHÏrXa–2Îï,}¥,sŠ0$–&W!g¹”NÐPD§Õtº=DêÿªªÐÄ336í¶$¾¢I9t92aÏcwc6ñò7Û$—Qû˜öµÔ=Qª:ã¬úŠÞϺü¾à«u:¦u4ïJú婲þß2Z»Bi¬uìuM?¡¢­¨ªç0µtÞ˜·‘ÓØÌn™ 4íÛ0‰ÝuuWGóú‹ÞMœ|ƒ­¸ZYor‘ê<®¢ÃjKZÆœÐ9N‚êzO.ÏüihhÊZŽÙþ ä˜+ — ¶ ¨ ²è}}†’Å™¹Dön*öQP¢ÓPQ2†ß턚‡ªõ%ÓXµËêÝ¢›JtÓ¬qts:²kó«:•ÖîÃÜçNt¦?Xiý!BJ}d¿Eúí¢ZZg_YÀi­kW©w²PåͽG—±Wèç¹ÍGï·¬>ªêoQ:Q¡5†«ÔøÞ¥ê—MŸÃjŠ£¥p™ ´[;¦heµ&”Æœ¶g©žÁÑ·˜¡:ÿ:ˆ.JÂà¬÷#îˆìØI&#ž8dx’TVh¶´‹ ‹·¦‘-V@*@^Ü>.Þ[Mæ28Ä›;¤§ÊZÒùe{?7OZÌÖ«K3k,SÄ«6BµJµò†xæ9XàIh,;»´SÒë&d'3Qf±N’TABRR`»Yßvrç?Mk¤¥ÑB~’ŸQ†$4Ëÿil|>ëgY½ØãúQŠËhýYÖLwQ´@µvµÐ’e¬jœ].¬g ×Yûš7'–ÐÚS3õ#ZSÑú{ ŒÕ8£dqºZMKÊÉŠ·{5ŽQ,u¦ýgêľÞ-u/Xݽž÷¯¬ñãY[ÔšßR<÷N}²j^œdtôz—U¬I‹¹®òz/KÑ» M]sNâ°¹8b’«A_ìüwo¡•V͸Öçy£±1&ÐÝ n=Àm߉¨%塸å‚úÉ·+ŽÓ[~Ê‘*·ÉŸ‚‚æ@ñ’ĤOdòy¶ù5/M%EÚ³îÔžP¬©Yº¤÷$‡ HwnÞüœYüMðègb7 1úKÆî>Bô·3×}W¢ÏVúÇ>‚Õ}{èÆ›ÍëM7©5ö{Sa0ºƒJ›]@Åẫ¯pØýIG=´ù—2°ÐŽŸNrR˧0w§†‰c¥ý9Íõcª&Æuò÷XuN ZûT÷ÅÑK­ÔZª¾Z`1èt6IáuŒ"ŠÒ\¾ é-¼­ÏårF¦oVÉ£1ZˆÏ)ÆÂ²}†ší©I–Kf‰ªýÉågŽû«¼ Å’ ÀµœzïyËýøôËÍ!YTÙ²!‘ã2¡šYüx¹ÂF%m4q¢)Ôµê²Õʽ¨é:IÌ­dHY$!™æãg8‰êA•¢ŠH /¼<÷6ÿ2=®õ'ªÙrzãJk|ïUuå=N}Âê;¹\•lþ Atö¶›êž'ý‰¢5Mõ^1¥º·¦õ-­1Š—¦3¢õå+™ÔwkV±‹Å´£dê÷TîuÓ«´4ŸTú³¨ú—¢½öbºo z+^®o'ÒYú ~Ý:¥®øÑ¦%ƒŠ–L“jKÙŠúƒG§ãÀÕ¶e+ëì×,ÙJÕ{RЛŠM;Á\˜öH+Æîb¾( ˆ­A»›Óº?IèÙu„šOGN¾¿ÕWuÞ¶Çȯû£Y_X¢Éê|ºÍjhZÝ¥Š%·fk´F¦œ7%+¦ÕøI¢ŒÂØT+RA@ÒË7†pHaˆ§=L¬­tA:@fII1°%Áfø× z•îÿ1¦‹[×}@ÄuSéî?Uñt'ÕÚú—Húê}ÖûqÒù<^’«ª°xý9ÓìF“éî³ë^ ôfõ‘Õ¸#w1¨2`Ó%ò$Ûy®£éN²çú[Ôn§ußBûVÅõ#7ÔýwÒö5\½ZÈYÒÖ=µ[éµ{úûÈj篪õ¦gªÙ|îJ­«­5†Î'9z…LlÛëÌ—-Ì#Kír®#Qß³œ«C3»c—®[–Z µc0AjÔ}Ä­rÄj¨S±’(ãpXŠÄéÓêËÀVh6ø†zÈ:NeeEy¥’ÈV§$0»YƒÄöÅÿÄ)§N\)E. M÷¸‹À2yù5íÛÔ—ëgU´}cÖ=ƒÔžûº‹®u†#3ü»KkDÁÐ~ˆë½¦Æc1VÍ,˜Êjªöô¾©‹J]z˧´ÄúEæNDXª=MêUú©Ð^¾`®jž½Ý©¯z'Óž¢&ŸÉåõ¾w\áõΜ÷ òºú,lX %‚ÁtÎ|n‰ÉÅ™¹Ò] ¶¨v´ý+ø[9A޵¯Ðkزñ-vyZ(âJ±ñšNØY}{p³4dI(Tê¶ÊIH®àïå2nð¨¿zWA‰’壚èåeŽg”HÚGU—Ãã'f­Pˆ[s5ô|Á@JsdQ?1w°…ò&X’φGS¦’IË ¾€÷f¼ùwl|¿Ô=xÚóZéΣõ7¬ýèu]EîOPh.¢tó¨bÕÚã©Zc!Ñ$Á峨}?‘Ëä°·4NcXk8p¹:pº¿/‹ž¾ És­-/S™fýÓê=&½iêæªêFŽên˜×~Ì4Þ{¡¸LzáúYUú½Ñïg?ú—§’ÓTêØ“Râ1:ó«½LÉAmmY­Ó M¢rCdSmJËõ×’npd- ^3¶ó™ƒŒac‘\óû<ØÞL¶ö6ÆÒ- ¥=³’4Q;±Èò…†)ÛuÁ$Æ k´E<ئC#±2§Ò+%IÕ›¨[O¦Ri`D;ì"^ÌÐ_R¦  2È®¦€öûˆgq³'Öy‘êÒ2â®{*Œ"ùJª @§ãMÓ¹y÷>µ‹”!£}—u!œ‚­Ëî³îxBä¿Ç¸§k?Ñ€ˆü½a¿5~ œR#ñmå?¹QH&ù¥,lÓqõ²UQUQ/±‘¥ÙY”(uwþŸ.ʹµ·äŒJ½ð­èÒ P;¼†ÿ{ÀÀ²§=¯¥âoõ™¾¨Ù3¶Èñ¸díuïFƒøÖ9X´°nS*-µä® |#rUeHíÏ“3¸<˜IJ|M+¯’ý#Pv>šâ Daä˜@)7ãY XÙ€=ùÔI%0ç¤,^=8T*»3ž ¬ì@'N[13"¿‰%öŒ†îî9Ê¢9öÜñ^KKþšÔÕKýTC D}v·8EJù[ƒáÀx¼{ÆÏ~®ž<Î%6˜d¨…Üñ“º;Q˜ùi"@Mn?Ó4[‹E¤N®Ò¹ IzƒÇ-:Õa«aVgŠNêXsHdxö’zw!–G‰’jæ’˜œ=’}Ì®…DŠ¥–F $Ì*F„M+ îÑG±ÚÆá7_Oÿ/—ŒÆ‚þO´#ïÑ…ÞR²Ygh͈ՑÅࢠëïN%3+0Á˜ËT©Qi)(Z¤ áŒ@f<€Y½ñº–eé*šé•%Ré ‚ -»I$v8vO¡2øë¯»ZµŽ©YX/u\‡U®ó2nö€-ÊG+Üp,dö‚¦#2cqâï´g»ýÆçc¶H°ÒªÖ¸îûßÉØ¤Ö§ž7:5™ÚVY˜Ä.Û´Ô ó42)’Éí=3¸ïñrT†•¸~À?9ýšeqaÀ1KÒ’×K)–] zÔªŠÖ¦S៓?V8Žbºjü-(RB¥‰x~Î ŸËtîŽNÑ(ç¶è«k’vË)OlJ•g¡¹­N5’êï1;Ç?Óù£_waw27úƒû¾2o)#õÉ HÁÇb$îw$oêEÆ0²HÚNÔ*DlCrpZ ¬Þ{s±' ,2«Œ“p^£?éúÊØ_wLDjÇýB}á+–oÿ 2qföܨۊì€Àã· ½I^WÓµHØö,äA-í‚D ãOÙÕw2oõÛATËÉ#}˜n6mávý‘àlJî7C·ï,Nÿb|ÿ;Ÿüúox‹±+•OÛ;€wäEø•ßolGïÓ¿P$ú„Ø^+Ëqä«‘þ;ø#Èòø ±A³I!@ÃëÁWÉfÜoãË ‡þ¥…ñ9OìÁ¶}côìÙZŸýXoÓ–l~J‡¹½w£’ƒ˜žµê^É=¾ÞÄ]¯jbD7)IÑ”F)Ó±^Ä–REµ·ÌÏiº¿Üî˜Ð]9÷e–Èu‚Šéomý^×=vÕ]|ë6‰×(ê¦b ?“+ÓŽhªÙ.¯hü>?TÃ_'š¹c.`R†Jµ±s‡NïÖÎÀoõ«ýE¡µVµˆ2õ$¡j ª­ÚÖqñûUöÛŠ†¥ÚÒ»¦BµÊÃÏ Ñü|´VÎk´lwÇh½OOË£jé]+[G؆Ѵ±xt‘ÃËÍeÆ DtÓ¸éKº4ëZÉ–æÜº,¦Ay¬žV¢+ªE%”„’ Z” I Œ÷ؘͦlÂUA5 E$©Àd¡’8’Ãí/·Ål'ú—ûÉäqú#ÓŽŸåuÖ«êo³ý£2Zë­ºKM#÷M¦ºånKYý#šÅ\Ô”èé|·Kñéü”4'Èêš¹”ŸO00Õ/ÜÏi:ÏÜv¢÷1ýp×½>Õ5t ΓAŽÓ\½L"æ¦éîšÊÈ4pÏb±YúÚ_!=éd–Þz)²rgæ¹ÄG‰’ųÁô#¡zP‹:S¡ÓSØÅj*í€é.ƒÂOOQàâ¹[›Ž,>ž¯f¦wFôg‰“=mejZŽ•™‘¥•´.‡¯«ršþ-¤ªëüî6¾#1¯bÓxÚ×;Š£ $œ¾±«\îR…(•Q ·›=4…q5£à¤ìËäs´Ö…UÎ)e*'I%ˆ(cœƒ»“{\ç©Ê© E<ªiêH®]ÇÀh`Í%÷ÇÊœTõ&ÞAsZgÜίë/K:ÏÖ~¿tÇ]Çg3 £Ò¸W龦›IôK Ð<kúÛJKÒÝE‰§Õ}]Íj$Á´%Å™oÁ@ýÙd}ÆëOu½iéDò~æòú—í›HåúW†èSºW ´®ê~¨¿ÔjwYuKþ$Ñ’¶gC[ÎaðI˜ZaÈg1Ô/¤‘Jæ8›ëÎ;¥=(Åë›ýQÃt·¦x.§åbø™n¦âú}¥1CËÖµYè5{ÚÞ®"¾¨»Nýøøã¹”œÏ]ž–}d£"Ä$õôö›¯ž·ª«`´íMYwWÕpbhÑÔWq˜Û–-WÇ^Ô¨®vÎ7víÙ^«¶ ÀZ³5¬x¢·9’'¥fEHUrUþ!RJ¡,XI‡f u H¨•ŠôЙ@ ‚L r/ŸÝQïS­ºSÜžŒÌu/©ZŽçI:UœÑžÐºáKô–ltßQkÍC€¯†ëOYôÿS!¤kjîžuj{xM#ˆ»’çOB˜ë²Õ”É)£Œêž•³þ­lžé}Îf›ØÝlž•è|×Rô~V„ؽcí=¬/f:“;Ç6¥Îá5=™szVÝ{câ[§ŒÊËVî>„ÑXûO:{–» “@hè4Mû—.]Бi+³ÈÝþjõ¹ôšc×>RöQŽfëÍC½›È³æïK&MšB©t†x5„O ´K×êTqÄ8æÓZy“¨©[&ž¬ÚÞfÆ¡ÕÑ&Y4õ\†§L°§ŒžM6!Lu©=#4 +0VÚ”åK@ ï6v‹ŒX®§H¹E¡ô€D€C¹ÒÁËÏbF>à:×nªû€×[#Õ¶ÜÀèïo~Ìõ|U4W¹î‚û{lN{ª}Âç5¦¢Ï'W°“¿_P݆L¤Õ4„þÝ“»jÍ~î  ©¡×/xç:;'ú—-K©'éIÕz« }×Xyhåó}ëši<6S¥tÓ!B„‘&˜×ûØÀcõVr$Äkme±pÑ• oµ7¶ßnZâz–µÇ·~€êùéÒ­Š£oWô_§ZŽz”1”*áèci¾gLÜž–?Š£G SUë×ÁU¥QãG£0Á6µÓ™ßÇj 6C¦]=Èbµ~VžkUb¯hM%sª3˜È#­ÎêjvqRãs™Ì-8bŠžg'»?¡ÃÉ ‘¢ŠÇGÎ1Oâ˜jp ¥’Ì%É ‘=¹·ø†YD—!:HIbH$¤´Z n>_C õÞwÞÆ€é“{¨÷ACDjÿk½Èe0xþ hè–¶Åkî•a— FOøg:SÐcõ–f ŽœZ±AÊäèç`5‚Li÷w«õ†c܇´¿o1õ_Yt#¥]a­ÕÌö³×?Ê`4æ¥ÕšŸESÓm§:CŠÔùì^f¦›·—¯—¿©tÆËc?V”R!çÜOWØi]/j†¤ƒMiøu7—Äf¡Ââ†{¦ä“$Zo“…ø0V‹Ÿ§ÖÔx~þ6šf«I5:R׎kþšôß«zvm)Õ.žhަiG~ñÓÚ÷Ma5fŸG'mo¦;PSÉ¥I#t(ÙH ‡%cð!•©Iëp鵑—©I5}U*!`•(ºF¤—p rY¤Ýœã0ÎÓUjj]!¥(Óò¥õP†·>A™ù^º¥£ºåík§=뎸÷µF¯[}ÑèIƒ½s§ý.›XÜÒ] Ëfñ: ;Õ=S6/@k›ý±yÄָ܆¾VÊ>Î:|ˆ†«#÷§ÕÔèWWtž´ÖÚ¯@õ“«¿ê5ª½¼èËøsƒ×º—Û§J4ů:­{LUÒu²XÍuL4+Tc1á4Öu6­ÄOk"¸;2Úƒî6¦2Ó±hÚšw§zNRéÈɶƒ«ˆÐús _CIǾ+9þÏÆc±u ÓSf±RKG/O ´¤ÊÑܱ$­ÉYÜgKºgŠÔTµv§Z«19­[©°Úª†”Ó0ê\n¡×8ú8q¨±™êØÈò•õµÄÑÇcõnª¯j½íy†ÇÑÀ^³hcá„d=+:³a:‰'YJRB[KËÀ#{ó‹ÿˆe= å\†–JJˆ ±†bn=› »N¸õËAû Óõu[Ó¨y-}׋û‹Ó=Îè Õ=c¯:C‹Çc-æ.?PñV°ºJÖfÊ>©Ÿ­HbjäÄ~ ÅõOS}ÂÖö5ÖŽ½ÇîÜNšêCýàPö÷†ÐùûÚ¬4ö—×]]è6…“OõŸÿ´ã…ÔÚà ƒÖ¹|ÖÖš_'œÏc³‚IW#f«U¥÷ò“tº¾¨·®ãéÞ„ƒ\[Ô–µ•ÍgSGà`Õ7µ–W_sWZÎü%ÊÜÔùžÍôçAæ°ZÓ3GUk<.KKaîaµn¥ÂÞÆd(jM‹š„esXœ† uµêï˜ÅÜÅbïa®(ÇÔh˜tŒáuTÍkô³¤‹]ÁîÓ³œ?ñ*mt¤k .·r ‰ = ß=áu­þØïû é¦‘÷!Ö<Ín“û&Ñ=BÓç[d´¾_WUÖ£Ý~¡Ää5}»ôt–2”¹ln–tu)ÿ‡ø8í'ŠÇé顳™ŠL…¡Æ¼ÿP¯tú{#˜Âä#‹Oõ¯¡~È:³o¬z ã ÝÝDÇêÜtúÜV>zïc-£2]<¾5†:•«Öd†JÏ)a O¾:‹¦<ÖW³9]W tV«¿¨ðtt¶¡¹¨ô®ŸÔY þ§’“SQÓya‘§häñó2ɨ¡ÓV ø©¯ÈuвHëµÿ4Rê1®¿Øú8ë4àÑßï§°ãSØÒ©†¶š›S5Cr枎/ékÕµ<ô¥­ÿ'Ьlž™]+6M<áB_Ò‚IdÌ‹ÎÍÆ=G,¤¤T ²T£í¸-qfÇÌ΂k|¯M½Øô«£V}ËõçÜ­Ý Ïë,>{©‰Ò}IÓ® æðZ{­r½NÐ9íølæ‡4ñ5íâ¬h¼Ž#+…µŒÕXÇäfÊE ÿýBýèëußJé>•ëéôÔ>ܺyG®ýcÀU¤™¸ú¾º¿Ráhâú9fŠÔ±b‰Æô²¶¥ê|Z˜Û n+§â¸lG¾ÏÓÝ í¿ ]-ËEÓ^…ô‡§ºšÍ‹7[=¢ús¦4Þn+ ³°a¿ÅCwRÅk—«=ãÇaç¹v{Õäƒ!kœú¾”Ò˜¼–»¿[KààÉu:œu:~u8¬ë¼e,Ci¯ãµ½‘\ÝÔXÌ~Œ$¸ì›Û«_4•ð5Ó<ÈÚC9øcGã T5õ:ˆÒ’–`›¸ð1_â²ßˆøß”ŠzIL¬ ´¶Â ߉}N÷¡Ö^ŸuÿÜ_U(k;YŸgI¡zM¦› {!ЭEÕý‘Îôˬx©êÖsK&ª8­'­çy²cBlÊÕJ´dcÃé®¶ë—]2´ªê{½NöùSM¦—¶>»äõ{ý8‡O£ëoø«>»×zªŽgMÙçD'¿Äâg2K^3–ÇUŠ)–¹ûO€è§Hôæ Pé=;ÒÝ ŠÒº¯MÖÒ:£NPÒ¸ÕÁgô¥,}¼n?Jg1"Ê`àÅÞ»N†»ñc-Oñ‰8Åê)Ÿö¥í{WÏ¥ïj¿oÔ—´† ¥´£ç´ŸÍçôÖŸ±-½?‡ÅE‘©-hpø{-'ðÍ=y"®â\L+ds“øV|((æurˆe(‡.8Ûa;’Ò2ÊI:@PÀ ` d»ÚglRiî/­z¿ý'°âäÊdºYÖÝcÑ>Ÿê›ºŸ R­•3¹ûØ(.êœ%<ÕK”ñ´³ôlË“¥Rõ+Á»[µ²­Â°õ·­¾áý°ãúÑ ô׺SÖ³©Óç¬^àkfu{hŒ†½öÙÔ ¤«ßÑú†¢Ò؈±óéýe’ËXÃb0º› Ód3•±É%¤¯Nz·~çj}¢u޹ÓýY¤tÞ¥Ð9©“ޝ3Œž)rU®Ùj“ÂæÖ*ÖØ]9ŽŸœ¨Q¢»h¤„)Z‹•$`àÇ%ƒð1M æYƒGX5­ IbHxh >ü|Þé΂÷'­:IÔ½Q©:õï'¥99Ò˜z§¥3™îªûF×µ¥œ&ˆê.zl. ÒøõVkM`ê^OÍ©`Ö”ðÖqO6›Çb­›'7Vµf½î+¬º3Ù³lÍïwúÚ§Wýìi=Õì÷Pz’ž§E´N›Ã]Ïë*z_ƒÓÏ—Æu7^¶Œd­ft±4ÙÖ"zû_Ó¯kÛzUs;{¦ é–€Éêœú_SXÒzN–>΢Óy(eŠ\]Ãí–£¯bSV…Éš<ÅYL­ƒnÏ´gKúcÓÛÚ33¡tNÒYh?øg r¸ã>Šé¸²n ¦2+)|”9ÓYޝö¦µò"ÚOYÓÒ³ºcJÂT µ(jv.sÚk‡Å£?—ÖT(S*´¤c{‡ÚÑ}±ñY{ãêoRús :¡Ók©ô,Z»ý6}ÜõW5ƒ¤˜bøn¾tkFVÆO©ažÞ:á{ZgZãsù,š5©>›µŒLž.|“šÉjúáÕ^²^öIíúçJz©¥ðlê€öõÌÞÍënžèí­tþsJXÏõJt¿/¬­C¢0kÕÒQWуSö(Üh56*XÂãë¥È‡Û_·øãÔ«GtD+ª¨qj=±O^ Ì]]Z‰ÕX'¤·»1G¯[F]Mޤ*Ë5¸Æwœ_*ÏÉ‚ã=”{@Ãaõ.í£¤Xü&­š›4ÂX¥”þÅ»xÛ2‹N”rØ‹y,…Úºƒ üfQô–tõªóÊÌ-FC¨%5B«…|T¥ •((1g& ¾¸LÖMF™M%†¢~T¹Is¤’Mœ4l½Šõ—Rjm?îDk]EÖ½G®:7®#‘ôG¸¥ôÏVt=¦ïçpS;ª4ÛšG¨ô¬¾6Iªj UG%W)–­¦ÒÔù Îf8Ì4rš‹Qf-åõ&§É­G–¶"Ö ÎelÃUÞ©â„ö„Ÿ´ÿm8Þ¨Xë^?¡}8‡ªvò¶õUf0Æ9Nª˜"ZÖ•ñ2ÛŸJáµ{؉NG©4í]gK'ÆröÒY9ê¨ÐGÆz‰A :ˆ –!B@S[ƒkŠ“™ +W_Ã! RT”°§v~^þ1ócÚæ½÷9Ôïrº¿!œê»ÝCÓÍ)î[©Úi–†¤‡Û®3Ki¬†_ˆÒú.øêZÕ[ U¨ÉMmKòa޹¿;$’1û¬º£¬b÷­Ÿö»¥úý¨=°è>ûfÓs­ª4m,ú»«Z§WëöÍŒl¶5¥t±º#§QÅ›ÿƬù‹ù̦>‹QÅFýëù¤tŒÐ1f+i-7ˆÓêî_Ug«â ³ y]Mž²r¼½Ø&³qÞæBìïjî6)PÁ4ŸÈFvØAº¿íã¢~àªàju·¥ºs¨‘ék×®i»Ù{Yl^k>BºÕËGˆÔúW3§sÉS/OŠg±Ï™:[UP„Q¿‡·r]tüÂ2☬USâkY*Ru@Ó¨€6çh¯0Vh„SM- d‚RF—Q ŽÜF(·_p½HÕèº ¡³Þã4g\ô>wØî¶ÖYMcÓs¥Òž¦kíî##Óõê'!Œ£vž¬©„Ç>UÃO#Ÿ¡©«êkx|bUŠ£Ÿ½ÙŽ‹ûµÒZgNõ"¾§]~”eºÙÓ¹AÕœüÐêjýêÖj¼}4Ñvðú‡'ŠL¦'!š°mܯ4¨V_E5—³?iÝHÿnqÐ.žf“GiŒ~ŠÒqÔ}C¦©éÍ#JÕÛ¸=ÅèÍA§ªR¢·²Y+X¸¦¯¹f³q³¶d²+Ëêc§}µtItç©](Ó]/Óþ—õŽk׺§££µ©r˜N¢É§>åS>k5’Êd?£­Vˆ¸2Q>V¯[•â†"±9Lù¤šIª”´ÔשD¨= ¼ù}ÛšÙ/ˆj*‘V¤hÒÒ$:€‰ÿ†œ|Z÷SîwÝm-uî_Kô+­šž¶[ïÛMú/F¤:z\-#Ôl}R×ô>miK×,cº‡«0L‘žÀ¹=8£®ßËÓ¯ ¨XïíÓÞþ®÷Wï¯Båús«sXŸiº“¡ÝHÇéîœZŠœqdú 4§¶íyªu©‘±-z¼úS7×M1Ühlä4ÉnÁñ'äúUKÛ'·ÜVC˜Çô›OVÎá5—LºC&mjûy ZߢÚ^mÒFVMKjyóJ[›ŠÂÚ’zy ¦Ëf+d§S#ôt7·n†ôÂΈ»ÓΔé?M#ê<=.oS])WóxÝKÕ øÈ“)ü]ªúÃ/‚Ãä26­V¿@VÅQÃé*ø*Õ…QU>ÔQU ^eé…%Ud¥œ‹÷öÄ—œÉjB(¢• jÒY \µŽÎÝðbä¤ÜH’W1«ÈÛîËMÃåÒŒˆh'õQþ§ÿ–ìÅݶWbå„û¹PFÏ1hcܺºÉ¨¢^Üj±Ç9•Ý„†5•`‘”.ÃrÄÖfi8ñI¶ŒQ3??Ç‘‘£%}yeáܨ?—¹ÂU…vYBØf›‰5‘›ä[dVÄÎÐ.4|iœ)þ0Hµÿnw&dD`AI“n“ÛK³øÇ¤]2³«‰ߌ«ÄHœÑ A£&ìµg~Uj×Þ¥¢llå34¤,­~ÊDÔ™Ä&!1…x«÷6ùr´,•íªìÁÙãT(ª]£äÐÆÁ‡Ʊ¬Š7r Ìø´e{ÿ*f ̾’4-™;¯,ˆUY'yLl¥ÒvW–T‹ÏεD„(eÔ3À\¹7.{bþÍ&pá… EîÄCÇ<žq‘É‹BŠ–8L4f‰ŒÝ®Û6¡ ¿6´{UÇÂN»™¼H T3É7q €È¤:ÈÑ™TX˜?äÆÉå&]>©Å÷ô´‘¾‚8âT!^ À¹ø’EÁ\F͉ŒªÎ“‰„‹—,H¬‹ÈNÍÈÌÍÉ”ÄJ·ç%Ò'’#îÖgó%þ”‘×v ]Ø@M‡x‡ók_ „ĘäÁûù|<’°UžLï€ #$›F%VF¡"¶:UídY¼#5ÝUD±PË»0”±.æSš*ŽJ­™ÄbÒäÿ`”¸ò·C(î îGá hÝO8DÈ\Y^Öˆ3ækóÈ3£W“Š ³wñp¥Õù#Á,¬ý ¨Í;*ÇbÃÕ%bÈã­-IÁîB¬ä Ûý°Æ=šò\áÂ`Hï},÷î.1æ lxòT²Ä²MÌŽlªø{¾dƪÅõ{´ JGvrѺƒÁea+ž2¤ÝÈ‹C0DäÃtev ìÝ¿,wÜ'°@ÉÊÌ%ùE%Å¢W'g”„pBܯÕÙȰ£cçóX§Œj²Kª ^Ùx^!»uù)W†îª m(™ ¡{RLÊ­2§8ªX#âb”Ɇ±Ý±Ûsˆ§Rž÷ã‘ÄœX”»Ž9;~~bØeáÊðŽì¬A އtpœ ´Mi‡öS ÕíÖÚyXÍëÀ¡TrJ€ýî]ò»¨ ˆËi™•ƒ9U;­Ë à쪹勻Âe%"r,ñGÙ²±0š:]팩ÉC`òÂX¶ÝEÔnûÐí–@áÐÈ–]Ö%–BÍ^$Ý ¬©Å犰JÊ£•Ùí‘b™8ðÒäpü¹‹reI!f’p™&…+X ™ê°JÄÕiTe.JC–À&`òö?l@%O&<ì-ù±÷Ãrv‚‘Ü:(íó*’D¡œWi~ÍCë=Y¸]˜½fe_R¬å$TÏ#4ËùOÓ…‰$âDRvܘòlƒ‰¬ÂÎ$s2”YáPHÎÎ#4d™¸X'n}¿$,ÿAlþiYñÏ Y¯«È(q,°ã Ö‘hf bÆði×åBßud„„$L±$Zìýˆî^Îç°s,>gžKËÏ•x¬kÛh‰uQÄ–b…wD I=Æi*ÂÇ}6ùmÜóéðLj å™Wº0Œ'lðY^Ùbjá׿ºñS7«– #•…Ah€ åÃ0;áØ´ÒVªòíî[–_ÍHˆ‡÷oíVƒ"¡ŠA Ó¬‹=®Ês[SË ™˜“áO@Kmøß $¾ü’'b×ïw;â §‚À³?Ž °Òñ^qº ááDc,ÆTx˲ÅO±5ŒÕ-H.Î>4ñ€ñiò^ûžR…iQø”wsqbÌqnnH"4ä¬ V^òïé +}¤vßI"±!I#xPÃ4ÎL‰>Ò¯ï–V4ž4(„»Œ"+ò¯! 7*Q…1¡uD“УŠHbÃÎVkNcÝ}En4‘ȱpÄ´´ý¾¨&>­ùÁ‡îmå°Æd Ѐ¤]™ Ž.l—Î$6Ï“‰Z¶DÆêû{”e¼u$¾ê ©(Ä;<ø¤n¤5Ôbe_†€  ê8!Vüs÷™ä…€Y·+Ãur-ö/2-œ;2¤m…cc㻨UÈÊ>D6w¤KYCzTÌG†'¸¤*ï7ivÜ,Õ£XäŽ0vyñªdø¤ ÜÈ};ƒ¥Ü³³;;ßÚ<¿q„RÁE, y=†Ó ÉÃJdFŒn¬Žé^ãpÙʉc«$Œâ Oõ‘ÝÓü7_M9ì»9HO(ßf,èí´¬ºøD0·u1ã¾³Ud$ìƒ&îܤ.Ò!- ¬Ó‘Ø`Ȩ¯aë(igETËÕXᢟÈBwmà »‚X³Dœ,’2¶Æœg›ˆD¢1µ&âQã¼’4Ê_Ó­¥Èh~ ¢-0ìâcJH¹›Xv/væ?ã Ka‘ŒR¼ĿbªóF ¢ów*¡¤ù Ê!øÜ[¯(Ù§^R²î‚I “¨FŽ>m^6D+,§·¼H Á#4 ޶ZÉ]œ1!äTp…9ÈÛ8ˆîÓ—”2²Ä®ÈQå¡.ÍJ7€°ô¦@Ä…7ŽXØI27Xæ’&¨<ª,¯ŽUf³ ˜˜HX;(¹$Á¡Ãúwú4lýðéJ™#r«<·ìÛ±ÃfÚJŠpL"9"ŠHXïÛÙ±PÞ"E¸ìnÜþ;ztLZD‰Q‘¤we9íª™Q¢] –Äq:‰`Pjµf3ǽ°›ùwñ!š?.¬™\—ßa!´cã<…$êb¹ôɰ.(¡…ûì”N¢#°²žÌE‹Ã–øÑ°ѲRK‘5''Ò€t³XîÄ2“û/„¤ ‚O@†ØÕFa+FŠ—î³$:(W²qÚRZ¤ÌÆlÐi*OǶÓ¦E ÀÜöL¡ª€øŽÜ£0öæq/·>IçÓ‚J3¹Wís‘1€ë+ ]Ö‰KGȸk¨¬Où1 Ñ—’Ê%c!nEÕc BĬĦ¿ ^IcþÊ lœ_õÝ%ñêWk 0ûžÃ³{áŠVmû{·oÃrL¤1hÜ¢‰Ÿ± „°K ’H‡üÂ(ß»l”µL¬bMRîWn_c ŠêÎÒY»’Ç%µSöø[`ûX =k¬j‚M¸¸RH›ŒmlÐÆñÎÒȇ,µ²¬¬ø· ‰’ýmGfÝ]J¸àÀ±¨X÷ë(,‘—›Œe¥`ŒÌŒä¦f’Ãryî÷>M£P ˜ݶûIl2$uœHBöÝ£ˆB»ñfr¢C“n6{â}á.¶Å!ÔÄY@ò+¼Ê±ÊÎ)bžx™ -Ý·F"¥E”®G•Waâ2•aò ‰dæÊé,½õØ>ì höZÊi¸ÇRzÀ¤ òTrÂîÚ6®RV€¨ˆ,Š¥@JeOþX`!%/ÐeÖ8B¿¤­AŽäƒ;ÙŽü³ÎübZ éK™´_÷¾¯$ІFË–rUÂ*† ’¿'¬V9å¡O>,4‘“¸òбö¦àCòˆ‡eÙZ B‘#‚˜vÔ‰V ²mÌL8¹HСËXt;±p¬Ä[gâhµ1ëÍ1pÛî JTm#!?hWb–x—Œ5whó‘”I‚¥jõ9!Ãö·³-¥DÂaÛêÖ¹i?¹Ã+#vHšHÔÛIÞGÙÖbm ÅÄr0‘/ÆŠ²Ûp–hKÜ>³òYÜì¤m"idEg‘6`D‡xe²‰¸®-eˆvíŽðòän¨®‹*ƒ3K)HAY9$¬ÊÛ,}Ðbƒ$üØŽÑ 1Çc°]yDæCæ"RåÁ‡ñI nÛб#óÚÓ~#é,c}ä¿’ão£áô”‘üøßÉbN ¨èQ»b"‰1—û×;)v¶€¼u]ø,Ööùil­h»uTYF´Žc;}‹ÄDÚ^Ay„’.+°³Y§º×‚¹Žä%çä¥åPŽ®B Œl$åï:ñÜMõCa!;Kt‘NÍ55++^dÝ·Q¶Äøxá”0×w¼j[f03+5Ùä‘\dZH€YåZ½:ÛiaÇqÁÄÆ§E˜fgnÑhä .+«ÊT(` º¶Ä±"4)4œUsøë\eï\š­ôeôÌ7#`v!‚«ÄдePñŒÎàÂT¤Œµ¤ÁmþB̉¶H)"©î;sF娿¥” Ê)`­*Æ?ª~oq}ñàΔpƒ‚ÇIžÆÍß,üÉs]˜ÇͤTuÆF\œˆg*±/w»ÎíØ3°µ¸?Ú0ìZXry%ÄÇ1†~T©8;øŒòpÛƒÎÌ`l€€Í$ªwV.§0§x„Gõ˜÷–TVîƒÙbŠÆœ+ËøÉädŒ¸e °ÃnèfôžßRÒläî1‘Z!giX ·Ž(]»vä~ãã&üT"íq%qòR{Cw%lLŽ@Æ$€ÊêªÒ`m9|¾Hôˆp᥃»‚\qÞ7âeåƒì%»F6% Ýó…ã0T%“›rØ©—¼Òf% &`ìÖ’(àŸxßú–|7»†nQ³ÿ¨/¼wâNÑu*DäVÛe;‚ÃÆàƒ¼ÁQ$‹$ :¼ŽÌ\)`^ã1“ŠN…¤¾fÆÉ"c∧2ÑŸôûbÁ{¸à ?ÔÞt;/)©r3±ŽGcášÀÛ*‚@æzø:ò¡ÅªîxCÞ±éƒ}$þ ¿ô 3µ” }÷ |ãè߉?¥$L€Ûð’ŽECmÁ;Žùà ©G]”0’@ò>äÜ“¾á¶;0ô…Ü•]ˆð ¢X òyK…·_ûÀ*$ý© *8†Q¸òYƒ¶*wß–ÊÇêØó÷Á²—b¸ûý?M°¡ þªNá݈ØÿŸ;á|Cÿ©©7r9rM‡€Œª<ùØòeÀÜnvÛ—½8©3.ÄŸïA`WöOøᔩ¶ ¦¸–$xqز®Þë·þnA%‰å±m€ô°Úòãû_¾>>t»ýcÿQFHâùsè;ÖK”½¾tcºA,ØØ>MY3 þA¢h$„%;SHm KÌòk1ð‘Ò@±@’3Ä¡Þ)â( ùI-ñj\ü®ù¸õw k!êÏ¿÷@¦?ýtëv©+4òt‹£±NÐÉ)¡ŠêY‰îÎÜ÷pQ,p;ÚüD@§dF‡ŠžIO¥žÊͼ©D¡ÈTœ 6Uj©o]§IŽ™—bþ€bé}##k6n_¨åB~PÉ,òÁö‰#—nø|JD–7@Œ#hì,ÎⱺWi"!°JES$ÄÛɱK ! ¡‡÷öÇqOmFè¨]"b îH±5f¼s3E§¤âGNJ^pÑ´²lÏ+™¾ÜÚ@gH—æK"'%–G…DY)P¯×V|$_$:úÃm‚3·wT‡š¨‹! 4ÍÚ„ Ò¥úü†nU´;czL™† öÙáöÆU˜¹m‹~[¼í†¦…ÕŽéÄð1¨ÿ­¸°¤0•bFq<=Ö}@»šB2¥JaXü§ÚI"xÒm2XR'R4 ÉiÙfjµ WÆäƒÝh•T¥ à$td’H$LD³$Å$’ŒYdÉHZÆ&} ÆÀbn^¶£™H$•û‹E«’IÚO•ˆ–Œa;Øh€îÖŽ<Û»Ù³yeØp‘Cn râFße<¿^.ÛÜ·*?dí¹µ §ünwñŒu¬Ó· ˆ¸3o¦ý½Ž5'¥åÃ1\³±yü[ÏŠœÒ¹m8°É“¬¼.­à®VQ´o:N‘º¼ÂØ+ó±ñKòò¹½ÇjÖ#n,K$®«&W°ª ¼sÊÒLdgÝ¡3¬l‹¢©BJgã9þB 9:²¬šm§Xׄyi _h’lAy’34V1Ɉå³§«F(Ì@‡+lÀ¼kK+…á ŒË$Šj» › þ.v7ÖB&펃'š«[*šËm^©³¥@Mø÷|ÌÐM ÏÂI  [‚Lò!øðø–ÅÓmN |©WQÔÂru–QêWó ›Œ¤÷)LÁì‹ÓäZ¾8–ôèéΪåÉq±"}¶·qñ"«–•Y£†ÛT`«5u,˜Ë;8#uŒ¦[!]Á<£f†Q\p¢oÁU‡ »}[e'}Èý;ŃÈ>žj™¼¨Ýˆm¸’¾B†,H*ÀÕÖó!D. I´&Ïöñ±tô¼¹Ò·_Ë  Ö¸ö{ Åd~šê©‚ï‹yo—‰Ù_Ôˆ.2q&)|€ã=©+ÊJ œêع<ø¸bŽ(»ò»d(4œ R‹¿rÓ'Ì IRÜ Ó¯5[ it´J¨D Äì]YÈ_¨ñöE?ììà ÷'Ù}jX•k‰ òmÅ#µ#,²³¯bûÁ’`J:ð, ·™,Ÿåà6“¼nDÏ<¾ø‰ét‚u(–$’_êמFïh4猻1 „VNsªÃK¸…NËbÂÒƒ v#!Zû²ØDÆÛ¹ŒÓ™¬øšl]o™ðÜ¥’óÕ‹i% :˜îX‚¸˜­¸‡áDþ¦‡vÀ xÛb†^ã7s·ÛLl®í/pXØ÷d§òΣ¬‘ÒDIã_Fþ’$IS0x”Úzપ€`â‡m‰†5ñ#¾=OÅ‘ùŽ>æ³+¡–5”kô±!þfZKžK`^S,šÙL’u70/ïûàA[§Ú½6㇌(m‹%‘÷*•¹_:¼[Å"´ês•Uªå  ,è¦ú±ÖBØ¢Yl‹#‹k+-tdP³ d,©É–”Ïj°w)„p²YÖRª »1×u Ûñ!!ISÈNüY H™À,W›ÀådòÀ’ Ȇ#€O¨ëY¯–ÙÚÀæÌ‡J¡Rý‹Lr&ÒwñŠÂ:u«8pð¨ØÀÉPH\÷‹K¾>GûM ‡¸·ËÍ"-ãepYLL±I˜­%)¥‰îD$š§!BÁ/{áOf³ØX•ÍÚѰ­4Žæ>y¯³¶»'ôNä®È…”±JýÎÃüÌI6võUalÍ-Ô‰N: øAÅø­æ–°šEb'y U–ÛÆX?'"¯VhÒ]¹.§^½tÓXIJ‚‰!&‹Í‹_½±›5§B‘¨•(”³….R<–°=ð,He–Äp¤d³ìòÖ9wÚµ®pÿ7‹â ¼ËOõfáFZM•„i’ƉÇÚ@KyJ Ð7ÅÇH QÅzR¼*<þ~:OÈÛä+©)` 3Áßv#€yùؘ¬øÔ5™¶·í¸wÚ9ÌáUGՉܳ†߯²Ç¹ó´€IwQêrЦu¥ýA܆ Âe›‚ïrF)Èå)æR½D€’‰—c";þݪáÐ:¨Ž  „=š1B±Îë3Èñ%¹gЬ’F†ÝD—åEp-…hêÈð¢FƒÕn¥¤ÅÏ»?qYnbD*J¹‘ÿŒÖHñ$OµbØÖ–Å‘êÑ”V æRGí‰ú!!Jƒ¸Þ6?Þ¼˜ûÜ ·öÛî[rÀq3ªÃû]YÔoĹ#oû·ÿ#ZÌ€=4Ä;}¹v™ððg¿„Ѳê;Øöó¼b«Ï¢5Eh^Y±CâCžI!·^VHbîHÁQ-K3ÉÚH"kó²š7Ò¥5¼Weî0â«yŠÇ/*ÚrÎcàŸˆ„ÉEÓv6©~9wku¨£å€Ì“þYKåO*®¤;Ä®ÿoÙb@€²ŽJ©ÅD¸ÂJ²r…V5DI ˆGàóv¹5:Ò:W¿O…Œ‰kªI-Ó³«Í!j¨b$5ƒ^åÙ½ïŒ̪rÅ * —»øòþý›Œf™Ïåàžlv-­Õµ^{WH¿#™)䬿"xŒ—ÇIf´Ì³¬°®êz?ì]Yi¶ utft sò b]‡6{‘@ÖÂîµfIF&Z¶á²¢$N—D£iT.ã#+sŠg²›qâ?ê’’Dâ'B$6…[Ñ5Bž;ò,|øþ†üvö7<„{>ÛîÅJ›êÕèשM K%@.Áš_´‰ cUN­4TRÕ2À0pA»íЏt­MŠâŽ%nêyv`±´¶ÊǾÜ´.Ì­J•Àvòè=VÄFpŒ°ÒLpVeS/æ*ìßýΩ'ÂÆÙUšœ×ܼ+hx“Ãs÷Øácã¿ÛDrO㘠ìÖ\˜‚d[õ#9:Jãµ$pv©å—QÀ•#JÁ–9u;¹2}RDb¬˜q<r¢#ÚñwŠé8jœ’¬Ù(â/zìΡ٣jèÇâ>óâãuzRjG^>ŽRÌš™A˜:BÍ"°²€ ÛÈ—³]4"¿ÂH,jŽX”‡>{6Ç˃Dk ‡ ( qXÝH‰N"63#ÚXY¡V™E{•áòÏÍ¡õJ쇰Ǽ ŽG“½ÙFö*Áeà§\žN†)ÛŒ¶D´,Þžc´ ¸Na¶ÁRáBHÕw$î²ø„_׸·þ·ý3ì]ŽÛ¨PªeB»Oߑؑ³Ÿ@YÌ(C;o³IåÄÆÖ8,:UµÃÀ³µÕçœU©4N«tiŸ 9AÍÚ•ã‘Jâ)/;7þN±‡æe"=تĻ·¤ÙÒš†ŒSܱ‹· Å,K!NÄίï±p–HH¡uŽƒH‰Ž‹¶6ôÓå£N6¥HoÅ]Y¤äÇô§ƒF?ÿB;ýüm¹Žjá¶™ÎFØœlÄd&Ì»°pDкrYk+–% cî´ftúµeÕJ B”à›ÄïïùY™}.šP¥jS•I‡L—€9—ÅSAÀqÊ8ü±]R]Ö66]"–*²Ì®*Ù`ÙìïEÄ4Ö62 ~˜Îe¢[4ñ²Ü‰¦JÍ¢Ž0ìá„RC,èÐñ~=êû¥ D½¬“X‘ÔÄxäƒöu3”af@Ï8¸[´!RæEPÅ‘V=…·kÜdÂþLMùÊ5Ãdyrm˜÷=oîoìo*¿äããˆ$µ³¨–Õ™xJUcÅ$l¦íN)"VN+ÁäÕ …š{‚Ý[ýš)Ž-»#Ôjfª”) &.%–“nq—5E BªIQ* ,^ƳȳbZœŒéJï3ÊòqVgid1ò.¯ÛWghü™ÊÍB;tø¹×~]©ƒqþêÆ>9-P&Ìò¦ŠóÉØîB,X³ý=îÔÏH’šÁö´j·û§ ´œí! F²û~fÚ4R¬ˆÀ4³ ÿJ.Svõg‚ª6b ‚x•y99ý¼ä@fU%{0 gº…\µD"𤔥GSîÁÏk0ÙðÙ<šs4ÊÖµ$¥ZK1vû ¿qQlh­D“³ ¸Ã‰¢r©ùUJÅ–¬23;Éo¶ùl±«It#hýM*»>U"í~g5A2¶ë’²†ŠÁßt±Žbµ#k’Ê–T§«MoŠÍËš´nŒWp£mbÝHÎÅ“³ò[ÓUÀ˜®èO‚K(ØýÜlÄî|‚§oû‰`Ð^¸¦¡Ò 9ä¾Ç{âáÒé@ZžÉ 4>ÎÞÜTûo=‹/fî;# xä™ZÃîUf)Z’{,»ndа¾]ÜUm6:i«Ç2ðc]Ñvy»n TSÇ´8¢Ž#¼ŸH€Ú…bÅi°h²ÍÜ=Y~ sÿkdãüqñøìæBdI/'Uw®;a¿¬N䨿S’ˆ9ª ÖÑ#ɱ lé<³1”Ñ2w]9Wc&8æË§ îP0 c#šUzk]@n$] ìÏ3ù¶fòÉ ´¥%ÁIQ*h&û_gçò1¨x–¿i>DÅÜÏn ”±<î!6RåEûqÃÜÇHðñI]ä·[ š·±Üö»‘Öæ¡9üw‚xk›J¢Üelã ‘ fUËÙ²-í ã„rAfi9! ‘ÈÍ*(ej³ÊÑD,ÃaZñãN”¾2NõÙC ! ‘F’Ä"ÄQWå‹W®ª.Ù1¼)2I,q•Ùà3~c‘ƒ—/^s02È)J‰Pr§igƒì}°²tS]e+Q}0ÝÀ÷Ûs€{é]Lòó8Œ”²«‡âé,»J±þR,Í#Û’‡$y­Ø@«N5˜w= i-BbUþøG ©J“"p„µëq 8ûŠlR­4’µ9ùvZáãkD¢GÜvÝCvˆ§Žå‰q.÷r—‚ÌÇϯvU€î[Çá^C.Ê¥vWظÒîC0 ÊHïâµE‘M‹A-H öó‚Ã)ÜÕUÄbå»ýlüU´ÒÚ’F}ð7å•f1«Kƒ¼ÊŽÊÏ/ÛÈšK¶ÈYiÜãZ³‰=rlÖx%z×*¼6RFá± K)•ב†JS)®öœ(#ÇžB¸ùo(™w[{"¦Ê’ç‡2R¬A£!`§–Á”ý¼C(ØVmlBê¬ç9$@¶dS%¹–DX¤Ž(÷ç ƒãÑî0(#0å+ÏÅŒq×gjÉg—^¦‚IP)xmý®.O°ÆLÞMR•…)@–$€úY㉻‹â=Rµ¬¥ˆëФ֭8ïFµäšiŸµ €N&’ çð×d\¬¡jÉX6žw2úé>•Ô+DÂ^h–$ †…´²¯Î(o‘ˆç"|ÿ´õç¾"±7yƒÏH³ð®ý™SâÚ6áÅbŠ e“;P­û’GjQjXmÛEU É2Ä„ßpŒx–ó¾Êûs͇XãÇn)±ßûA Bì@ x>’±¢ÁU¼ —/ñª¤8¦ì»”óåÁcßé¤tºvÖUsCý·K³ˆóŠ¡{OæhWù7ñתE±Æ¶mDÈÆcâ3òäD†9NÑdÝRô<»7®K**´{F#W(Þ$*_¹MlÏ^ªJIЧ›Õ/“oj÷Ãu)wÓRœ¥"]¢æÈD¤²B(B0Ù] Ù‡”WeÕ~)Ï`¬ÅNÍϽf(‡|:/Çy|9¨K3r}GKHÑÖ#è¦K8¼Í"µ‚츲}ßó$ðØœ ŠE4+S&ü {c¥5p¤Õq9;PM7v*%RI,?mÝÖ¼F¼ÜOù·Ç£vma!›“Ÿ[¥u0 ˆËH¬®ÇØh#0íÏÄ›32¦â:üÐf!,·Z3ý§ÝCi|0-.ÆrÈÈ iP â@ŸŸoˆ«UÃMV°ŽeGNû# ‚@VgteâĈ †áUZR6ÜñHʽ^ª*) d–I‚¸‘ù`Š:m5SECQ^ ’Á˜,åø»p™Ô«${a³<£1:­xšÂ’q…$r n†<0凱9¿Ú9ÅES„¼¿TN1ã®C@Žq$bÀ®ÅIŠ¢‰ìÁašyL‘¥¡i˜ä¦4e?aûرB@å̹%9·Ô•eàßR¾§Â•fØÛîp6^×RÈ'’±äKy>™=[0@dÓÆTÈ{#)Ñ Ì|"àipdX; Ï E˜Ô êà ’ä¦'Ý)NŠ÷ü²)“uV}‘±o¼(“ zOûg>RB07Y\t–…Õ‚h¥” HàŠKf­‡ØÞ«›s°\iV¸‘…©’&ب1¯ ªEfáÿjq(›r#`Û– ¹!I'ÖaôâNäíºC)idvBf,TT¤(õŠ‚ÈJ¶‚I/´´ÃA‡Á3ÓA?A¤ w¹8˜ÅY“Og¾ýÜ^rdž}šœÒ²’©O#$Fœ³Â·3}+[¤«54kêì¼{´óÔG¿š´-0¯’üºôù…î* æ…d”ŸþâšD{v¤ÚµöX›‚蛺ŽÛ<^$¸r(LlÜ@ÝȺ†*‚FN¬¿ÁÕr%@·ËDÐÄT™]D’¼aI äXIޤú·-Õ*U¬ŠE HSIJD<?LS_§¢%,,’KÍÁ‡qmÜߊúl@²FåTFòM ®²gÍŒ£˜Äm»Zdk1iycYC´6¥õÚ:{5$EŽùB烦>Ú£-ˆÓ¸^Y¥ÊT­ˆB÷2R »T¬dZÔ_§m@1GÅcŠy‡Â¼Je‰ì:wMJ“1¯r©xó"+±W˜Z¼DIü>0I¼‰ð)yòóXb/“ݲŽ3³¹œ7%26ús¹ÕeSL¤j–$ˆpÆ7ólgÊd†`¬(¶–1äÖýƒâ±¾žÕLo “  ?#NNà’"& cj¦ÔhH«bÇ â/é®BöŒ\”4ÎyXDØ<¼A£DÃôŒÊF%–?›S w«#$wªÜJãGJXáŽ× ñv‹mÕ]NÞ û¶àˇRwðçË ÞTUR‘Ê*£É?O=È*ÒÀ.ìÅŠ„:ÍX’`ËOÕå¶Æåt´z˜¢à·€Lvìøª¦õIÅp¹7+Çg|k6æF«Æ‘vˆ•9¢‹Œx×Zi#zä²ÚO› ÄðÎñºÌ®{B(Èå'‘UžWàN~8Ú™íJƒ{ñav.ñË´†3&Ò¸g`ÀÙOØyßrÌXá—cê§dà‹çåa…îe\+1@ð5ÛÚx®ŠÝZë²Å~h¥[øù;xé8™ÉuæÔ´(0@JÅßa½äHäwÆ<ÖI4T•“¨´‹ˆÝïß5ª_¾Ò¦2„ÖíV!¦à’SH¥khV`l@ëcø¹_új@ZÇdXÙŒƒÔ:oQ'ø,„ÎcP¡iä2²ynÿ(žx gûZTWÈAcóVíÔÝ¥´ÐØÎ°W"hi³wG2²‘0íÊ:V™ãeq»±ïH[l„ÐÐFì²2ðh@Ø”ÜÛÎä©R£ÿQþy–;z§7Õ—¬ªzÌ’ðÿ“û]•È"½$¯Q $¹Ão›}‡œTïöî¤e‰†*òr⃴‘É©^*‰áˆlÐ2®>Ý%iaq”XÌ‹8é࣑H؈ÊÅ^ËÄ&؈ÙëG"‚<Ö±Ú3]^un$QˆÉµ‡p P¬š‰$FrK³nb,¨]ˆî£ÓË%ÐÙY·‘”)¤þÐÁNþ;!Tð¤ˆØ¨Õ­TJa÷&úZÀ;ÛÚÓÒÁ?9'oHy›¸Ø‹›åªeêy l¨¶éK]ìC#Ç^íiàîCäH¤Ž1C±‘‘yG‡‘Vs$±QÇH»Æ¤w$$¬ŽÅç™fî’0‡˜Fc°!ïËžªÎ9¡8ªÄ%þ6¯ p¨nXª´¶ŸÂÂò¢Óyãíì¶8°|Ei7xþ‰ÌOëY‘#œ…š; ÁéÆ$/½Ì˃¿ý5`)ª/•ÍÙaYCÔB‹;ˆÏî"06¾_áÖž=.xvíã{ã{ømE2#>(Z0Œ£±ÞÓqGÅ&aÞ¤½ÿ†p=”xÂΞÔiÛhð7™$S¬ô/ h¦-¹+,‘Ô•þÖ'¿ •‚ü'&;Uh«ð’(ÉNJy†@@ݘ6ÄÄð<ŽÄîHJŸ^,$EìÎŒvRH•ÆåG‚ßÚAQ¾Ä:ºÊõ( H2ÅÉ´DFÐdÈ‚zRJ¾*“©¥‡cíÚâ_Q°š‰œÁdLˆèͶ2q#iT´‰&—ÁåZ>XçŒ UÙ²+(d6 >¨í6&8$¥¸Ö¹ºpVïšÜãTš÷‚|©öøó„÷=[Fì·2½ò ªŠ%XŽ*Ñ«“á›Ì|@eâX»èd€øwS¶c Nu,ñ—P -¹à»LûÃ*Å7!˜ìÞ£O­TR‚ $¥Ø9Rœ|¬ü°såš0ëétÑL¬U%¦S0=à—ò°ÅIIäÙP`XBÑ–ha+î˱ñG‹µâ{”»¢¶nÎN)¸PoÁÉe šÆ>ûÂic±Vk|ãŽIUl$R/ã4FÛå¨*Éšé(é%tí’¨ü™+ÆüÇ?ѤR3E1V%ß²L­jF³ÂV‘ºW &U%n^ÙU\5:¡š98w¦<ÕÖN|R -Jˆ•kÃè–s6¬¶\WBD¡Á$©¸Ùƒþ¸–Ë õ…'`B‰"ð<çí€ô8LôŒB`2iÅá…Ö‘öQyZT„òâÆÖÔ’FK££žX |6A”‰ù7À¾’<24‘ÎóÇe¹?qÎÙbXídÄØ¸Ò $cj u €Œª7›þùÅ[ÿ;²† n8ËúÊ„s Òo³¶îʱrn<ƒ´{„+¶ü@Dž·SjI07%˜ ÚÌþ8#ÇHB¯UL¡þ×>Fåÿ[K ¦ºcQnÊ0ùTvhœ7ñò#³$@Çò%zæ#f5ÜQ™xÒŽ°X¯Ÿž¬£‹5[TlÉNÝY)ÉrI$RÆÕ¥5¬Ç!øŽÉ«!ÙÒN)lFŸ~ ’“p{P¿qûRîXreF2nÇ–ÈèKqùr$•SúF_ÕêMxàÔÀ«qÆÌ9Ù‘]^àsŒ§0äÝ‹íÅäfj!Y­FñjÉu%æ«|%!)t’铨6ĈËÛs}cìU£Û°Y|úÃׇ«*Óÿt=ˆ>€M½Ãêè§0žĖÔƒa7ß~qôI’[ôFéÅYQvË™, nÜ[ô«Éveìƒ~+±äÿnÛòÛ‹sMÙwRÀrØŸåv ¼÷ÝÀ0ßuð 7mä©eÝAh÷Üä±n{&ÿ­À;© lvùýÎê|¢öåëžÁ å¬v†bX7‚As´á2}›p¼¼ì»q^@þÀ‰·ц>ylwô‰•öEÜ€6à3ÍÅ›;‚yØí¶äUS´Š’vøÇ!P± GÕŽÿ¦P£À;q<˜löìO¬í Ä— õBÉÛ]¿m¸.`wU›e ¬ºÂ åÍ‹[ÃÏŸÓý¼½QÿP"yJÅïã©—ãò?"ÇLºM‘”_¹ò„uí,²"Øåå³zíº;ÿ Ë úáÙÄý9ûoÈõ9ÚìX™Ã%£`@üùŽŠnȼ²ªª(<"`ѹhâYÐ¥jlŽ Õee‡L[g¼ìÑÉë !Êî¢X‚v¤TY?:üi%öä7~£nô¼²dJƒ‡¦¥ååŠ~Õ’²Êçhà å'³ñÀ–½Y8Ø¢¬ÙKDžq1Cºª 9g“‰äHå¶W™Áe,±d“|b‡‡ïëp™,¦g0Òcé¶3€³öàA~ñú>6–Yè  —NÛ3ÀÓ´‘€c‘ƒÄ÷`]{óÆ-mëÌZàE:êñ:*…ˆ¡‰geHŒßƒŒœšÇñ"JµÂÈnÇeBÞ)° ¼½’7–0YT§ƒ¶‹ç›G%GçÆE<±Q¸K„T7”¡Væßß#‚¡NÌè_¾Ž‰4­Uk§”yÊÜéÖŠJÌ —ykÜ=…¹|"BŒ6÷`ߣmÎø”è­WŽÓ6²R_†kÜ+_*÷‰­1’ÊØç$KÕV r8ä5£b^©}Ï¢Zu_ íK%É]Cf.¼ë²oei- "™Z×$Æf ¨„"¥ã–% Ý#7aÿCÌ“Œð»¸'ן³È¬Ì 2³? QH˜/Ëï2·"¶#Ý/öW»0ŒÙÄù¯‘Êæ*š•u#X€ÞĈ¾úÜÍ  ô —w/'—7›€Dƒãu[ çÍl‹oÿÒJÅ ’‰ ÅQ ÑØ˜–Z³)†m‰%:©€ äÓʪ*«ºIR.H‡uvhÖNï$ßq7šHÏz$ù¡4%G6~ëí^5äàðÆ!GðK,Uä rr‚ÍV’Knù˜.˜UTŒ«(EA&ÿ-“—p•Yë´’2ý`¿"¤Å¿ Œ ú¨t¬—Í"Ã烉´î ‡ï1Ô3v!„7§?½™ûb®u]-Jq1ЊíY)µã"IeÉ7ŽJê-:Kb½ZòLÁŸàMޱu+µ«Ê±Ç¨ÒÅ4NÛ2C-IJÆg‰U†Jé½Ä„ƒeÆÌò%‹L¶T+§aäRaˆ“‹d’7Œí›ºöàiIœly ¸ka2´‘¼iéj;.i íYyXf"BVQ+Gû'üªCåP%ªJ£À%F’)QM*qLÞ­_1ßi3ÿ ’­UÖª*,¯NÌ#Nߟrþ‰Ôü"/ÃÈð!Ù«Óâ¯ærM‚"Zò€·£E¬å]™ãäÁÃÕ=> ¹¥–Ù„`¯RB6%^(¶¸¯$‚=¬Á}émU/f¤®Žc+*² ÄIáCÅVat_ýŽÇãÍI^S±q&²<ÖX˜·¶%‹t}û°Cß)ÉP¶j[g£- \ú¾—’ƒrLúÆ¡òÚîÜì/Î6§¨f†‘ Á$ÃÇô¾¯Õ=>@aK0wy]*Ôu-ýè ß5bh¦ŒòŽÂ¹¨Çñ,¦`ÑúbÏSp“Ô¸‰G,ìðcœ¤Š#1•h‹‘À²J•’)Uãƒ4XK,/HÍʧHö•™ýV]áÏéfBÌ9´Á¿÷ï;^› APJ(ŠI$ §HT;";_» Ýñ*¢•TUPõ8S3K‚ÛŽ¾,üSÒÉr)È•ú"“EàÅ‚[FoäB¡Çºƒ’'ñW_-<á]=NÒÑ0Sü–ÂYJÒB‹…ÊÉà%u‡æ:mek=7K_FÁC“"2v“±ÌÒ,R‚£¿ g![øºŽ Vë™kå˜Nœ«Fñ©ìĄ̈ü‹Æ'Ý{íp¹™!ä{Pe$T𵀨ÄHë…ÜxéYCr·v'X<4nïÝüG2àiKì4øã õCMväÙr=À JýŠâYåq ?Öî÷”<Öc¬À6;¿‹×QkÍ?’ÂdiÕ–À{pv šZQÏ*¬µfÞI#•E«(qug‘MˆrRBÑÀ#HìŠ*íÊ´Š#e’ÊÈ®£×ÿÂøwÇ j¸åR7ô§‘X䤳±ecËŸýd³ÉÄ#¸‰7ÈÙŒvrÔ¸EŠXì(%ÑÒ²èZT•K( d}‡†‡a¾"¼þeI4ÊRÊpY#}ÞÜ[| l UBªÌüy:"mÉÚ *ö$7@R®›v‚i"eb\ÑZÓ €ÁÅŽÉÉm&[Öl?Æ¥ÜH£Ÿƒ1’JóLóʪŒÍ*£ÚÈ«w©T´Å¶º¹EHÀDäˆ;|YÕ‚‡E‹uW ¹£ZY±uÉP…} 0PIgW¸¥gTÆòq’C`–uRÛ)¸w“9ø•a0HÞ¶æ2ôó‚*8AAÞ,aüïß%Âè/Z˜$'I-OÙÅŠMÒÎvY.ò 2ÉÆ·Õ&Œ,‹YåŽË@òXŒðʳ=ED’)®V¸¢¹óõ/IÿZÔJ­™MAcÌw]^DUyOdDµ$ü–³Ü5æ(|¬eU‹ï‘Í Xø£G7nJ1ÈÂ8 4ø¡X-¨ÍNý™¥Is´ˆÊH’Gq#12Äå§ånä;G+ø÷î4Q-ØHZJ7õ€ôŒ¨#Ö¦Ÿ-rnÿ”íŸÄ³;„ÚÚOmâoÉØ¶,'üGÒªT†¸ó'(Ò€=v=ØË´ŠáSò,ñ”%ã½}¨‚µŽRž[Q]ÉÐ%w¯[yZ9ã‘]iׯ#ZŒoºÃÚh+‡9ZQW–œ¬ k2Å‘–B8Ã×@$u`X¤QÀ²ÌgfQ¬Hk Ý­˜•bRÞ´ÅžF<œ’Ò P +ɼÅ͈|“;6&Ù|f< m]9\…²ÔºJ$‘¦Tá½ <܈>YçVÎÕ® ‹ Idððñõãí?v–79F嶘E^hÞD–>ü¯,h^%TŽDïÙUûRn+ŽHÀŽí…˜rôo‹©Y՜ݔƋóÉZ`-±„»,jíqØþŽN@<¶†¿ÈG.ÕÉ™ b98 ñÅ]+ì’ª´e·;4˜xß›¾×ÚP»N) övó3¼¬Å§Y6 ,¢Ã¯fi…3÷¸Y¡È× ŠIf&!ó9*9…Š‹Rƒ$I ;߯Ãï†ËæëPIE=$寢hpÜ‹àù/Qt³Y‘Vݸäàë3üY¬•ù¬Õ]GÇšùl+˜ä§¡¾j€WÖºuIX¥Ë #HÏ6 è›H6`6 ÆåGÍfß/9­A´q¨-¨ &Ê9UPÊ&”ÂCsÅÅ&Ó¹3Eš•)-*Ì\ÈcW«—ÂÇÆ3´¢DÆXÕ‰ùxy6jÕ·VOKËh )lÂä4m>añ3Ôkº™($E 3ÿ`ÿßí]­pyœ%Ìn6[SÛ±<”Z\™ÍkUnDÉò &óA³ÔyHàž»TÊ®>V5æ Èã‰ä±ˆÈf]ÞÌp$|À+¸I ¦ÏºwÚ(¯Çp´1WZ…Iò³• Yä(d¡,8ÚHg†>22HT8Àë&];yÉäS ëÛ£8åÉžFVHß+¶»¹°Q£šgf|“—£fµcSaÛ²ùtå‘¡‘¨J“0K†çsN3W®ºÅ*Ze€f‰ÛbL}wÇ–3 ,‰#"Æð÷"ýο2[Ûcc é®XºÉ±ÈhÒ:·ŠÀU§jÔézŸyçha³lJf»4¡žÙmLÐÈ–šÌ’W‡0$’LbX—HDÑ&ñ*…îc^™# !T Þ(^rÏN'u”ÚÞì)¸Gj'%wœvÃ<ßur®‹XÛ ‘'nÝ·ŽDLŠŸÇrŽgã Õæ¥n”¡IT0/ fðÿHç /QT©!˜€`´[Ÿø¾,/ûûK‰M»(EƒT·ñ÷k$‹Î»žÚ³²ZþØ™CË ž7c§äúÃu J´lívSø‘ÉjbŒœ× ¿R‘GÊ•À®Ai_5òÒ°‘àUÌq*üæm˜†?"8cäÍ?÷Ëí÷²Ÿû¶a±ôÐ+‰;¿6hšKRN¥Ö"‘Xù6™ë½˜séa1ÁJ!Žü—^"2—D± SÁ¸ a€ôÄá8Öz` I ‡‹~{À.qb¨ZYîIZA&>ë¾ðm!RÀˆÙlûY†,Ú‚µr²Ž µ_!œÊdqÓ™ »q­×jê)Æç´¡-F"y•¥e^×ònñÿ-µ@‰(GX£I,oÚ^=¥D³aXÖPL+#ÝZòÊd’«<†ËXy!¼]‘qòdT}ç‘å?hb¬²FëÒÊ‘,“½”‰…ljŸ“MeU ’2ËÖ… %‹”ßů8¢¶mu’°–pìH &ßWHâo¢òTñYêV-ÌÕj:H’ºFÒF{èñÖŽZÉýBW2˜ÍH!^X¹^jÙÒêΦ!Ô=(Q¤kÓDË vcí¡R¯Ú–7„«øÿ©eÇP9àfv*¦±´¥b$È'{“ÖŽò«¬ÐIV$I'Žh‚÷ëÆÝíY6ËDÑ<µ,Í»I27z=þÒÈK"ñ·+‚{"0Kì¯J*§á2¼Ñ«¯¥˜QZÔ½L”¦Äsô ûvƒ†¡œ©—AE4%Ár7aôû¾,ºëí'Ü*ÙXàÜ1Ybü;ƒÂSiÄœBºWN]?,u¤… ‹ïø¥¥@¿:Gi2·Â¶ÈQI4n•§QÕyÔf‘«ØeÃ3Ûþ›Õc†^N½Ù ˜4/ÉѦŠ8RiBÁcïÃXÊQx®Ù®þF)IÎÊK&Qº°igw‰Ô ‘)å݈ÊÌ®ä߉âa•—#‹çfYLt  ÑQJf‹·“i—°Æ„õ*äi§¸‡}·{¼´š5¶©ÀæpGnKSüÜm´ïÖ£óæ‚À¥“‚¬SI V”r–_NDîÆ0¦, J ú”²Ò4`vÔòDÊË´”Ÿ³6"9HëÊÄà!ÙÈ•Eî%H+!ŽmŽä—6ŸyxåÏñ}YÒV ]Ô£ª2JªËZ ÌÏ^"VjHÅ|VÒR¼$že_[he‘—AE7PRœ¹ð G|`ÌWUuê!"ô‹÷;àÿ¦µŽ…ÆÑ·} ¹Z¬Í£iÊÊK*H+C8šØ ÊÉ9îMÜ»sÓ¯t›²*åÑC–Я"CMHQ£ìY÷5ŒŸŒY2nž«MÜVn0É_¶Æ5ˆ9"VdgH¾––£YåÂ6þ¾;¤óuǺD¯¤ŽÅ"ŒVr¢B¹Ü!iŒÈyÂì-Ôˆ=HáÌmÆ£ÖZ.ŠÉYRõ9™‹ï~&Í)êU©% Ò•%‚Aá˜Xï-‹&šûJŽ`)Þ-ãJ92ý™ÝDiÛø•¹ÂÂÔ\Õ´’Ç ŒÊŠ:÷JHá_(Àƒ`25;ì7ªÄYäÉLì²ÿ{7om˜ºU«l3m JÍ ±‘‘œEÉBºNHÌÌZÏȉ¤0»©—PD†¨e@O­d°ä²í äòH¹ {)¼"6o E¶ ì²E‰ÙqöKº0þEÝ+[†0Cés³ƒîm玥X† @qßÿ÷ýD6ÒLÍŠ÷3Y P¤Ökٳޮʨ³ËÍV/X´A­ÎôµL9h—…Ù!íÂéßйšxŒäörÍV¼”,RG2Zx¦”IUës’¼S‹ÔEf*v-•ƒÏ> ¼’, (üZx·àѯy§F‹ŒR:÷¥t lš†OýâD±Þ3”³HЦVõ—±$g‡rNè–dâ Nã‘ÛiQ«#¢„–tGŽ„ÔD9(Uï«D›×DT£ð—)Hðgk°ý³áMu"¨©¤»Îæ;}§gïgW]i˜Íî€w6z¹ ªœ»lЇ÷U÷ïÀƒäF>íÆAô¦ÖÚ\1 ‘ˆ”y‚øã@Ï|ª6ü£~hê$‘·Ø*’GªÖ²+É·4E2¢Â{ŽYn±±¼“<“ñü7de—*ŸÒÌ@3—ïíÛF”HIaöá´r³¬Ad,é–]9`ç ¡=`OH àë\´¿.µÜF6'©×> †x.O!Ï~ÛÈi²_ï­&6 ðV2‘µ ‰gï@&¯aL/剕âƒa4ÊväŒy‚k½GËâªÃŽÉ×±47"²Zö+¢&Û PO41C £ýô}ØèIåN~ƒê%Yx´ÌëÇÅJÄŒKРʫ$ì¯T"Õ«!¯cC(>”e°³ÞF‘vÞìËÉøî…ÕË+¿lܾ$ñ,ƒkíêtzmUD­d¡N,!¬wg~ly µN¡ZªMhƒ]BÝâ-måìTºs=ä•¥Wv2J$:HÐXÍv¤E,Îárñ¸¯Ü¬ö­4ºQ¥¼ÐYâ¯S¬Ô,©Y–œR²Ìµ`žŸ"žõäzLÛŠîÊõ[Òi+–àÉ!þá½™{L­s‚7znOo·ÅȺ¤:¾ ¤4œÈ–6]šHÑPrb·¸F "ŽðD"àä ežnmÝaëFg'O4¥'IpA°.þ=¾Ø£/š©EJ(êgpHÀ·Åâqf—Zèß«5îˆJWԺϺÆ\5 cY˜qBB‰¸˜ávr׎·Ò*ÿ“-lŠ8—«yHE‘£b¥«d†B¢ë²ÿG¹ù­]T‘[}ÉÛŽ—º|G,Òžq—°À3€í2óÔ>V5ÿ—q”ZÍd²¹ˆýÒ$Ùx#<’¡xêÆ“´¢6=¤QC¸‚9ëd˜Ø‰€Æ:Eõ¬¼8Ò?Ú8hi?¶“Ôëò¦iÒOwݶﵞÛH‰cGÊÇË“ÇÞ+¬U`5«3©$%DÓÆyÁˆwõ_mJÒÞÈ彜c=|Úë„…%,™-»„û8-·˜Óì¦+ 6Iò6«ÖIjS)"|²FÖm·*ð3 ‚G,åí$ÆeeXZº’ÀÖÚQ æ¡ 9xø÷د  QŠ˜ÀÞa&Íû°Eûz¬1X’@¤àòI%…ç!- ‘XK'ɇ9$‰–9®NóGñc 2/D;ÆyW€‰ b.Ñtæ‘·áâ’·qQ_q_‰cIþ—Re>ª¯Ó©fj-jIS8 šò.côÅ´³õh!)B X±“‹òÒÿLYfÖÚLÈ8f×›¹‰ƒ 之½F©Q‹›Jܪ,e…ò¦:­4Ê!ô±­4ćq›G#†äW¾‚ŠZ¡eàᣵ"7nœÀÁsãȬž«hš5hãeU—·9ˆåx¦q;X*|¤ã#$%fIãKXˆÀY#n”4,v䩜+²3"9+&²"ÝÅdÚÕö·o{E‘s«¤Ò5JŽX´nOäðlXAÅÉêU èHíiL'ÂÛÖLÌ<žì$Ê€È#kº޼‘´‚'‘âØÃ ¸ŽÂöO?™=ˆ)_Å[‚˜V—q¦M¯·|OøµR? "–pÅž-¼ÇrÛ|â`‹bX ™Hfv ’[á@òÉñȆõTÚÍGÂåD2ú,ôû?…Åã2doARË匑ÆËbY»? ¬ÏjXzòGøŒ1NŒ±GAã¾’z ‰ÛbUâ¯â1‰Uy'7¾*Õ‚Éïß¡c|tÂüýlJÒD%VØîI(ÎmUÙ>0ctÜ|Œ:‘Ømò$Œ®ng.œÅ$ÑQRâÂ}-åljóŒT+š5Md‡) ÆÎZíÛ¾,·ûëI…ùz̶p~=àÅQÄLÅ@¤;ìàøÙÀâù]i¥Z`Ã3W‡weXêd9¬‹~CÌU’Nb?³™—dã÷H[îk#4ò9nJÙ&W{|î8±K;ì&Aô­‘•·ËáˆL„7¥-—J¬b߃¬-*;*,NÍ·ÇN&(`uæicŠŸ{ÖXÃ"Fp@ÕTä1¶à‡öäwçU̦‰;f'íøÚÍ6·Ò›1\íP~ŽÏñmÑ8ünÌ`cbÜc ï´…üηÈÔÊg¾N.Áµ£X+EYV?•Ék^9»sK5Tá.@ÜQ jÍòj¬¶ „¬ešY@äûLŠ’!™l(3IÜ?Û;ñ{_eÊDjÅÌ1ìÒ!]¤V&±Œ o¬’l©‚Õ#VUÆÊ¹(JzÑ—éÔ²µÒµ(„¢!D 0^í'wÛf3ˬ+JC)*#½€6qïÎ76àS—«‡(Ì8¹5`¡Ûä»HÒKð,É2[ÎQe6U挧ü¾ݳ$ÆWê ïÌæÄ,°»u-÷‡¸…Ù0Ã$Ù~‡g=H_ÏÉ,à˜ å>­)"H‰¶“(îd3 Ê”yNElW^F?þŸÒ 0>íÎÜHÿPx¨AŒjËÔÉ«•b²I¸ñ/m¹ ›;ŸBzûe/z€ÙÀdCo°vŒkèäÿÔlâ™âëqÇ“ßù]y’K3ì¼Ë¡;1 Ço£€Ù¾Ä`˜ÈÜeÛüq#®¾ˆñ(ÛÒUîÛv x…`ûwØ€Jù>[tý…'b}(|’ÅÈ À„$켎Î7o ìí±Ø€wÀ0qì?Ú^#ˆ‹@½Øá ²’È$ Ü· þÁ¶äm»!,J§ì<ÊÒÀDÀo¿&`IÜŽ_µ`/…;ñØIbNK) ”«)*'üñØ0*¿Úd!'e ¾þ‘Ímù±'È ²*·í€ghÿòÃÆÀ*IÝacã_·×‘º«þ¡‚Hà<½øu(›ˆáEâGxBngš¼Hö•.^ Š¿r´ÌÖ®¨T›Èà÷±D纃…p’ÅÞ%ÿÚLÿÓR±8i6õV½¾F§«Ÿê'2³˜Ûß–­ÅÜ TègBkNÎWÌ0—V[`&‰Ø¬D¥ÂæÓUŒ Ø:$‰ ˆ® Ž_b#«¸ àr—‡ìºXë·èä›E2};vÓrá÷Úã“ϹÍU ]IåÛB>¼JÍ!â""»w¤XZ7cŠÈšoúñ)ùã!,v`1Ð<ŽÌ J9´ÌxŽÒ¸xƒ;»¸Ni"*g(>$‘$ ò >µQZW–HØÉÉfxäWÞIùjÂË‘ÆIPˆS&ûµ¸öÆÄF¯éÒ‹|C•(@í/@BƲF¾4⬔Á-Š•·°Ì a-é¼³ØDo{Oñ•˜90À†¾ÛnßÛ3ÄUvTTuKˆøÊüP&ê$ 1;C>æÔ“¦ZÌG¬´pá*®æPB‚òee*Ü"0>ñÜXÐGŠ#åcÁ-·¬9yeŠPÍ!o!¤1¨2+/sf]ÖU ‚íñxȼ½#Š‘û$—EÐWdÓ{›"Êb”ËNI6†µl—7'ŒDZÂXÍÙýŸôݱ4.8posŽ &Ëk7$‘ÄÁk×a±eîÌì{’HZ0Τ2²(–Ú»c‘”lkzÐ7î:þHÜ5xŸövP ÆP¤ò]ÎÛ<oA>•Kió{–6‚¬u̳Ò@²;»Ã ÅJîy´›ËÜ a`T>Œk•ƺrÎ쨷_rì D ÌlÒx(ܰܓþ=r½M5NqzBÀôN¨ô¥˜ÿxÇG‘4ÆY´j.ä³T_›?‡ZµPêÏ~+±²‰?´0  ؕۈ ä|ïëߣ‚¿¢ª€¼^¸…ß~Š’G-ÎíºïúøÖL…"I 'b¤¯È«ínç6*§û™†À±Ò“#*§çRâ90d·\/ߘä$ýF~¤Bï÷â|zÀÕÁ|S;3E¼È¿<œl?™Ñ;zY£¿,ñäàMÕ8#ð&±¤“d ð Iìq¢"nÛIo‚·Æ­¹†èG¥8&Ä$ 1ý¶± qïÂÒ}Ûûc*¬rÈ VcÚ'|cÿËÇ8¸(*ubÅIŽ$µ…Ë  N`‰—²^vޱ2AÜŠù²±†ÍCƤ܅uÖ#j’ÊJg€îÊ!SgJÄòvÑ\Æ­b'rl†>º¼#"D¿¬6Ò¨óöcžÎé9Âi¶‘¡À QïwfìeÆ-¬*wõ±òénµV-Ê*ƒn&o¸ä¡@“vgßtßþ¢ù½1nåo‰o…¨šV ¯ÖŠb@eå³ñFä8?X_ËîwÙS‚Иڒd©™ÀžÒÆ!ç B–•2P=&7c-±¹Ø·ˆª%#UIɹ´%% eI Øžuiª¡Û$YRP}zWF`̼•ã˜%¨8M4i1äõx²=¢TX!tSÁ²?'ú…ŒD¥P"¬k!rÅahOJi£‚9–ê’Ò̬ˆ¾Œý)³^:Ù˜ìK 35¸BE,É …V·)Œ¸X•[q5xAX[Èn;úê:‘Pɨ$’N‰àÄÃy}‡xÀ ‰GâÙZJCÉYÎñ» ¾ M‹¦vÞBGeÉjÑñaUƒ×;ì4nK# ݤŒn9>¢N%§Ø€YÙž°@?#±'pH GçÓÆÝ3²%šÅ¤$j-×<»¼™@û’DÛ~ê†à¬›TÙnTâA“˃ÀVâì2{jÁ’GªIºÃ×( g½Qk•IÜñŽ© ? šO¦ðÝ¥à7‹ã[ø¼S'L3ª)? îJ²íã`6Øï¿øßÐ_©•jÁš§t†¸zi„Á ™¥Š++ñÎÀÉ6ä-ÛOJD %n'O—K‘ÚÍnQ° ½ˆÇØsÙNÇû[™;î?Æà®¨ÏÙš©Üc@FX`–4sbVuîFKØn+Ý’»#áŒB .”jœå0²½,£ê$ Ÿc÷ÆLè§øuiøbRH ).ÝŒ8ƒõŠ1ÇóiDƯ›IH›¾˜cºœDˆ»ÍQõíF»Û«>ëhöœ(¶ÃâšF‘±´‰S*ŸéP³Þÿ³‰m»‚ ±Ø$Õ\TŽÙ<{™¼nWí¼L½ÙÉPJÊêBÈá¼ØËF&̇մkuìnÀ£”ŠW¿-à$ÊÜ9î>;JÇÄk±~>AÓÖUPU¦)•6’ Kˆˆ‹$3{ã/L?PIr>foéçÊ;rÆÓc² Þ´|¸Æà ]Ób„oúä@gÜ>8¬`ng@²»JÎÐ@–QÛy9ÆòðÞãÀÖÒÚ®/b¨RfA.¡£ûÛò)R8ïÍ[êô‘b»Õ’¾¤ÏsÏ,JªîİøìëóWmÔ~0\ 2™pÀ;LÙ·ƒÆ#™¼&!0¹^Þ+ÿ¬ƛVR¡+Ç,Щí(¬V[º¼YH;ìUŠÈSò–<¤ ̳È!æÖ6Ci‹ò 4¼$MT‹·>4 ȵ:ŠZïÌ3M\òÆZâE<Ìõ¥X7XØ;……ƒNä*`U]Þ0BˆÑ{{+Š¥ ŲmÄ’ÕŠc¤ ZÖ债:—ðê••TTL»ÿ¯Õ¬©ºZÆH탼€Ø4ôÛ·†¹-ŒtV¬Iuãþ¦($”WBHTÈé ?džb&ºv–QºnßÀaK¬Ï‹¢dYÅ´t«Ëk±ñR}ÄcòˆÁËmø¾7 Áº`Ѳ Ã,‹¶Å.¬àl&gnnÎǶȬJD ¸ˆë"s§Œ]Ò'&‘NïN[©wi Âì\.ÄúœUÄÕ 5dR›i‹~»>7åE€‡v— Ü?ÜÎ9ßíÜ/l(ÄãZ>Äu—•X™V¼R‰–!Æ1õKªƒÅ[wP?A×Á`ÙÌ£Dʳ=ÅXKw凴óÀÒCøˆ<íëu,ÀB‘f³,‘E0"h€h™#qm»nA ÙdcÄ1mÁt¼ î ð†%£MÝ iQ9”*Ç—q#ÝÚ=‰TS#*¨ßÖBºàüÕ^7Yà¬mìq§E ¦eì´‘~¿\Wn£Q­OPÔ†XiÅ¢ˆ«ðàL¶ò¦ÕŽêe—‡á‚8Ïòf/iÌuáQÂҵĺ&á`2’CÉ$qõÂÕ:{ [OeìC‡¤–¡§ë%h+Å:IIH© žUhë¥$iXÚâd¥_¿f d…Í„¨[”Ô’y*ì¾W¹Ç—ö’vfoªŸúêàÍ3¦ÜyÛJ¬\,!¿4ìü%­›Ç$¥`k´€ÙEuþ50UQŠÒà’Ò@bì?(ÅU“HS¨i¾•BSÁ‘¶Ÿ®*Ó¤}ž.Ê]¹ ‰ÕÔn.yÀ»H¨±]\Z•Ù/D‹]Àc¯O°˜lŽY¯ã)Ù²r6¹Ëi žmãXÑJ‹ÁˆGãˆXØ ¦BË»nì9HÁÌË6áWö’Ç)òêÁ’$ȰYe %caºn½½1«&Âý¥WdD]Ø£l`]» -âû?žGbI'ºš–2éÒT)0ïkC8Ûë;àGN 5Õ¨$œ.à›v}¹ÇytžœŒo¥XÑÓˆ•úˆÎçe;ª¥yTFÌRÚKL̨¿Áb™BÀ‹½ùªÝÊë¸UP!rÏ…!Xž$‘¿© ÈTl¥JʽÂܹ€•æïÂŒÁBáË ø™‰ú’è•‘u>/‘P$¹#m°’Rëå¤ »rdf™ÿÿÝTn6õg6.áØíÄŒNänÏ‚$`v’ìFüO«:µJ‚­2’° $,^7xÛÀb=8S4—©)'âC±,Y„ìýñ µ¥4¿zT\3‰KÄjÑÿ©Ù­€x>Sí4£ÿ˜û€â qiM.Ì›à±J¨jè¤F‘”AÇÙ—þÐOÚ=Óo>$¶â=Сû`ÇÏdŒðe]’BÒ6à¨bKÐmò¾“E¿©¬®„Ž—ÇlK ‹"šâ ß´6hwb…ˆÜ®þ[û€rv‡VÔ(¤ ©*ÕpLÚ Ü4~œË§±®B’• å½EÅ…¬üìc§6•Ó!–H°xvuE+ ¬¬ª¼¹rFâ®woû»œ nGZ­£´ºÇÀéÜR)W ½(„l’H$ì¢01¨ueîà+lD•£‘@Ù€Û´§ÃîæíñR~ 9yÛo²ñ‚PÈ¥‚HrÅ—ºT)%‡Nħ¶víè ©X7®¡I%Ô8§x·&>"¢>7$Af S$µ 6ßž#cIé©™¤l3w’YXüHƒÈò K.Ä‚ ΩqõÝBÛjjQTÔZXê’Q­õŽZàÄ F¦ʆ0 Œ’ôªCªËwÄ‹êÑ”>8³/&"2U÷P-À#×bÿ‚vfñ·ªÓ¬ÿm:…è¦ÌÁùó•)•åŠ=ŒŠêÁ¥£îÙU£qCèŸL«Qy…¥(hùTK†d’Ö'grÂp?¨S¤š#J Å <™§¾=¢qõojuí×KUÚ Ùbd_³À$I.K¡Ê’R²Õµ¼”P˜lpÿgéž/¶»ÆÑñjq–á#‰LAO Ñ,»È# À9ÝI#È_§à¶¦¤B‰¸üÝùØÍf {±íݳ,…^“ÅÞä,Mí;’w1òŒÇr¡X¸–þàB2‘çÈßÁêU*&¸e©#@,’@%…Øîìï·l?OJCäIõIPa#Ø™&>ø.‘Ó@oü%K™Œ‚¼*Í;FñM+æñ¸)²0`XúBi2¥?äXÞ ÃÁ d% –¾Ë¹£‰BpP­°ù;q”ÁSÃÈ?µ™”‡ £‰]¶äå¿îpC#cé®$̤¡,Añn%xxa°Ýw­¸ÿnäãÐÑ^¹ù•;úŒl÷aoÞD’›oÍž;ý^òøëüQÆP¥2ß§š.¨Ó]ÉTò‚=ŽÓ[ˆw¡R 7;V à‰x²ÈÜ¡5Ö@ÅÀsª¼c’`{sÍK[•‚d]VÄ%½ú–þÙú³Ä%@;*(ÂSÄ÷%úÄçÿ”ÍÊ0y €*@ ·p{kˆñNâ4УDyŒm˼‘ü„,l­­à³ýŠ=t=9k^\’¢£¨¹%È, ¹±b ŒÏ'0@@g ÇØ½·ÁçKém=s‹»>”–lVŽÄö(§y,Oä6Jp´!aù›Q ¤»}×näº#J”iì\a;aDtã[’'-²«nÌùb<ïãÖÆŽäÚg L|yS‰¤à ²º¢™ª°HdM½hIŠ»+ÁàªLœ«7ö#þ¼•eßr< ¸)ä/ÿæ^½qYa5=l}D3»·³žèÓ hÓ*Jt§`$µÒ 0TdGj©ÉP¨YTò$í2Ý< ÌŠœØï%ÛîæAÜ$¡WrÇÀ(O÷å@7ëõë̈pS’(a°b %›eØ˱PH ¿¾0ªõÜu{3ü×ìá›s¶šr!H11Ϲîî#gFiry &9^I#˜¼µP—–ûpJd;…x v…ßXøªCý{¦°¬-iqøz¤ù&¹jðKV—Ь`IFOÉõ +ÄñÜ,„’7v¥ G5>¶Ü†àqذ`CÀß©¢OáiøqÏ"\Ê!n]³áYÁ21•€ ¦ÿ§¸åëVJµeæ(ëZÛâ*PaÌ7Ò1Fn•ì%)ÔÁô€âA$‘ŽðXÕIfCÀÊ'’TùWºöV$ÚIÖ ãoØžF¢©jâÁb´~—›i0T¤šjU$‘žÖbƺ££È­³;GÅmÎ’²’á¼^23³l#r%Jñ»îÄŠB@xðnäYæâÒaâ ‰í¨Øê†ˆK|;(Â’nê… ñI6xWûn}êµT„ÒÐ¥$’~UCÛé<÷Àþœ„•²A™bâxû}Ÿxô~—*c8:emXvP¨í0ì®ì9 Q €mÆà€qþÈÒÅeøL~ÓÂð²ütf(ó-§ÁÙ“å~gROåæþßÔ£#ÊDd¯-Áò€•ßÿ Û‚OlßÏ‘¶þœh€%‘I`¡†ÜÇ¿ëmÿ³ÃrrwOÿœ0¯XûµðK Ä\à¡¥HøhØv1ã‡Ä^ !¥{§þKG“Êfp°ÇÊY\vÌ­ š2#Ü…?GmÍp·Y+Ú½à ÃÛ0W !‘ùá¥#îbR U\~U±ÝŽqðJ£[~$´}°l }Ð,Éýï¶ÀxÛpv©ù$OäoB 9,¤’«ÂÊ =¸þÄ:€³Ç¹–ýr¢³ÄÞ‹ôªµR¦µ-IÒ›’C‚™kr6ƒ1I4ÒšiJR—$’Ì]†þ\N±8l¥œ¼éCdÁGT’0R&’Õ¡#à¥%Yãxç«»CJÄNð/ 91F-¥ËYqLœ ÊL{³©2DÅög3¼„Á„ÃÇXFbÒz]%F\=íÉÅ–5=]à¯!pHˆöUPxÜ6ãpwdÑÚ=‚Š¢Â¤ŠŠ#4â4â,$&Eböð¥G®ºDЧaȰÛʃɀâ°(GØ€Ãesº»Aö åÄRw6þí†ÄÇqäø; ­]Eþ-PC‡\;‡öKîmlk© §MÈbHLYœmó1vFGÅb1RbŽ2ªVù"äÒ˜+Dé,Û*¶îÊ¢IûD÷*¸ì¦iZÈqLaU!WÜÑEÜŠSL®ÀWM,m(ŒñqFyI±vDø™¢[ÑoªªÂ’ó l”~|{jñ“¿ø^,¬ÿªÒð•÷‰zœW¼Z@œ»ÝÅ@^Dû±©cÂA×Ò=ÞÚªYÆ…S&ý&@¨ä‚”¥(”¬¹$˜ŸnO{àoGâ‚V—hÊ`1³Žqd“Gi’±³b)qá ŽL@ìbPÑ«l”$˜ö"5?Ø l}+ý—¦&I0TUdIU‹Eä­‘ýAuNö@M‹sîWoR(–8Ïè´1’²°ý±)ý ‡ØŸN˜äTæy)Náä»Çr<Öän8¶=5ë…«Qµ0`Ѽvƒ£CJtÓI &鈗y¸úb,Ú3LE)uÃSfy#”“÷=xÚ8NàqgØì§d`€1mkº?NGJч -+PÄZ2®Zb¥¸± ÜûrR¡×ûÞq"}¦]Ë>Œ‚EnAã-ýƒ`›Äa¼l¾}ØùÛd®Òþ7Ã×Ûr¥UI@ÎŒÒr;Žaù˜ÎÌy}Ø+R®$è8ˆÔ ˆ!YGùÿ#ˆßfn;®û ;"2K)Š6f Ð9û75o³ ©£Á$lWÌOó*˜!N5®/ÙígÁÿƒBšpÄG{<4~ñ:+J™C NnKD"“x|B>ÅR%þÀwããÀ$’×ú8}@Ôñ˜øê@hÔ™R2Ž=¹,¼¦8&C?oòTN-˜*±ÊÁ`>¬ŒªÅI`¥Ë ¼lYOö$ì§aÁù#oЀHåþå0M—@•C·2Z2«Éò-vâ©5„þª»øßY&ÜL«YY–¨º‹N’X“gË‘cߌaêH¢š>”¥ÊÒ Hi‚Û{y$¶j»Ž+€²pš#Y–Ϙ—µõHoö•q ¾:5q$n#ßéøy`=ضëÿê ïc@‰•©²…À@eÿ¸N7ÝÉ êW,l®±ö÷rD±Ä4”ÉñÄ‘¤‘7àiÚ7Uz¬æ§eE–ciYDCý=Â3îÄ¡‰ÿPOxÂ&ˆ»Fõ:n#»'ÚÓ¸iŽÆCöñ°õ¾]Y@,ë’Cé¹¹´^=†)éÍ{íÚÀjK6ï 6>€Ÿ•ÕFë´gÈ úØýäNíÅ|¾Äþýy•víòUoßÈ0R@;(ÛÁý€í¶ûâ@+õ,ÊX!]ˆ…'–û³o¹Ü–#ôbÎãìI@Éåú,NäÉ6>x‚va¾äýÁ°ÍpÒ!çìí#0i>¨rve ¾~±‘ÿÜBvŸß¤…yhØþŽå“mŽÀîJóf^,íçÉ¡G§]_‰6!‰ƒH>I*–íþ#Î>>t¹ÿŒŸê+÷äY=ðê)Ÿ·«´éíû ‰!Œµ£Ý-4›A¬ÐìÕYxØFÊÓ),°¨Uyv‰“„@J6“ã‡`µ¬±6gö%ÚU£¡.ÑuýBww_|YàÉg¬¾ß}¿Ø(ݽÝ#’iZw®…Z­ÖkÓªÃaÇ«2å™S¿uÔ•åÌ)Y]$'ž4ûÛ‘¨–˜3zízGÿ³²å@ˆ°ÃóþAúòP6n Jäi$ ‘°;vØþ¡>ŠŠÄLˆà"ŽÜ,Ó‰#BV9!Nåã{‘Ü«ÊS·¥»È6.c”!Œ›„ŽÁånNÊC¹¯ýÒfP3JÊãoZüØGÁñÄI„$RKÕeîrp¥¢WƬ€:Ìrÿ†èÐïÞb…d@ßUÚ 6•ƒrÝW»Ío8H¥ûc¿;a$@L\Àõ·¾øÅ¬D‡hg x’ æÿXßveXÒXV8÷äâ) nTŸ²Hw0,j¥ÚS·ðóYXîÐ’Rôë»—7B |š#\Ï¥vžˆ"L“r&^%}78°îýà q¢ÇÜ‘åÛhùFÍÅäàyUŒíµ]mÛa®‚c‹‰ÙL‹ HØI†VŠ<Žîýø2 ð¢& ÛÔ‚R¡ý2b~†y7w‹bI %Ä[Ÿv;A—kï´ö¸Á÷äŽ$GS$e”qak‘Y(öAsnÃÄ~9=åðÓI#rT…†2…C§â²¥Tq£‰%ã%A±Ð~NÕd¥úNTÔ¶²K–Ìb€!8çRì’ÕxÈe¬¡€e„5ìü\ŸóÒü(WA‘ËDý¹”Hd‰Ù¬»–Jù$RÜn¯‡nR×dã©›ËQYETº˜j!"^]ÉÌâÿ–5SÊ׬´.@$ƒØý¤ø{à,,30 ̰î«+~$î(þ©ËíN|?>R„Üd¥ÈHÄxÉ+x È c…CŽjá¸äò ÿÛ ?ʧä<[}'¥Øh¦VK¹1 ”!E„Yá$B¼QžÔˆÑÄÆnÛ7Þ(Ú:ÓGl«Hÿ °è¨»}TwZ3ª†%ãq¶ììwc!}ûrWSÃÕC?“†Féî³?Ôž' Že¥œä –öm„—iÀHNÑ„`%Y¢"D”÷Uš>ÏÇtÄ-{¬ 5“¹Ž”w»GÓÒM'åVŒB/±FFfÙyc‰Uâ€b½’e˜ Ò õ.ÖzV¶—8§­ri~ZÙg3Ä®ë ÅÝU™„ÆI\cФ`,÷¼”ƒ<2—äE5†s H¦ïFÎÉ!TŒ$’’2ÄL©rVß-[pãßÖÊK¥V«M ¢@¸0YN³Cxã2©.•O‡Sç:Ac $ò´Ü66CØ~òýÀ$•‘¸¼ÜŒEf%´¤¨DµA•Hõ˜ìË?14l~:Áò ÜP±×TäG&u¤'ãü•~1Ý*â?FQÓKžïò90²²öUcU"™”€Ä“Ïi)íÄcØìÐÜziºW‰i,žI¢dcY&4ÇòL7VàÁA²¿ŒÏ4&¦Å—ÖŸÉAL†ůɅ¤F5~ 6tcOûxKI?àï;–w ¦I#ÝÛ·àþ–fðƒ¸ ⌛ÖQÃc饵`‰7Û~,œdŽC°bHÞî1°bóÔS¼Þ.£Õ‡£+ô»T‡Ë_å´AHàJ€²JTÈcux€E„øóLãºXµÓ\5æ‘rwJÇÉ@‘£­ŒÀß ^ÏxITŸò‹'›Ï5vXàð`3Ù‚\†*§ÆæÅ¾“8q“ÎI,LÿPïc3äf¾ä«!cÎ;ÜÈn´‹$~dIPˆå°P™cÌ6êGý7õq’ö'1¯r$ ¢s‰²4·s}Ž<ç!=«»ZÆ_ó,X•¶É"ehÇ?JëìM@¨p³°šBÉ(Ú£4´– rO’±SâL#eŠ%ËòaæÒHãÙ‹}gN/ÅüÑ}eün@áž?ížÁçϵà64ŒžmL7`Þ¡6Ü0åø÷6·iì†sÈ:ºIf`D–;„“höVÈ2n”WšȤzT’É!$Bî »$l\ïÁWnNò.Áj·Û-nóñ°% —MªÑÇ]²™{ršu×ihÀ‹3TI,VHÙì»)†táQYû0¬…fù(Â#2:¤P” ÛYe•d•–(äpÍ1ØÆë^K–Y”›UlŽÌ()‘¶Š5hV 4%™à¤æöÛôÞ1žµ*´ó8%Ü-~$7äq²,Xâ¬%±þ9$W |œ0XX°A"ú7$Ý ÕaÜâÞk³ˆ–^RD$bÏnðmÊ÷ …†WNJŒ~ZÚÙí3S}½Lt®MQŽ’ì¹;Uå†ÔõŒf„2¬¬…X¾æTB8}mSL*Æ9™Äû)=*¬¼,í´&FokÈÑ–^ ò¼“žR²9ŠÍƒ+p¨é#SW5’EB…éB˜½7@%Ù¶åå4ås+JV™J˜»Ï¼Å¸vkàHr×̦vîw‚ÌÈ­Qß,Œ­°¹Q‡:*O#éÈZ!ç¶eÞÄg^v^6 †åkIYB•%cÒʉŸç¬îûÇ •؞à 6 ®C-xO$Š0RC)ÛÖ¥8âs¶» ŠÑ…6BTÙí–¸J‰Pó,£¹ ›|~Ø~¤grY#ÔÇù~¶mç‡Å‡%›P€ÀKê{ÅØEü5°#æ~Ù•¦•¢EXÐÍÏêØsÛVŽG‘j[úÖ©²b™M†fù:¤¨ðÀ‹ÆÉ4M»H[Š(Qý³z*Û–ã51a&–ºÃÅçµ r4v£Ž#j¡ ®ÙG&hŸ—/F\¶RŽ>K½¡vÄpmõ™ÓêÀK,‹d€6[ί‹ð¯7 ÑU/ˆ6Ôìl%´´æÏxÆ2•kÒ_âžI ݸ±°-¾¹ ¬{2l ånrÃx˜NYûrHÄdQSã­Mæ¥ÎÐ`—ï'jXìZD¯<ǹJ2JÖu»X×ËÒ¸þ¤ææ*“´*Æ¥™™¨ƒ Œ‹–üÝáÆHåÝküxOÀ3¹€l] æ; û}1°e3pû®`X€C†àK&NÃqh漡SˆãjÆÎDœœ´À˜Â,ŸÙe¿?UgÙ½/çÛ‘$ç$ª‘ç´k21 YÑägZÝׇpA·ÆiFÔAPV~–!TÿžÙW&N]êJQŸo£¤&pO¤ôÁøÓò%~è¹9nž&6윹‹,ÔaïÄ]`yæ^„ŽÊ¼$Öü”Ñ«´ OP«NlFo"²ÒK„†L…?ˆ±úb+œAÔAÒÅÆ CODvl Úã:‚‘3“#g‹‰R1Þi c´g‹gBRVz¼ŽÏ&FuÝkˆ­ñÙ…Y¥HÀh„b9wçQÎóex˜¤1úÑv`Š;’úq¤Q2©<$`¡sñáv,Ôë–_€ìñß>ˆšoD.{äÈ­VKbZ¦$œwcd2£Ì^¦ur²Í a¡Z“"’ÞµUUh ªH %Ô]‰´ø¦šjÔQE0B„å¦ÎoƒŒ­¸ÙÍ{7Hç#ùVù€ˆdg1FK†(ûز’Q²r¬VÙk'h„Öþ;ÅùJY¶¨$y9²y”I3ºò‰I¸'ÝЊäD¿øQÝ’G9Û$÷ ,Ÿ&fÜ(Ft3,n‘ÀD2Ô,°ß ^°ëh§KP·(ó“lYÙ ÑXö†Êï2—œï¼—>ïdö€7¬¿‰éà‚Be‰:6ƒíôí‹ÆW:?Ý-uí¦þ¦°| Ó%e˜o>Kºlj,M,Šâ.;§xG%•‡q* «A¥ì¨õ¬—$˜F$ÌZ8‘¥w’r¨à%Wù?zHJñŽœ›wrՂן·ÙŒ©éYDDlóž/oí¢«š.ÒÎ ¤D$øøûŠ ž.äÌèí¡Þ£ÇœNö6KK0¬ªæÌ¬ªYlCöžua\H%‰î0ã$C³>9Qep-¡W)YJø!.‚gH‡ˆ01MJ”%*ªN’Eˈiaú0™Æ§Éí¸à&I@ ’A'lþ2hYT,'ÌOÈCŠbR~GÖNüùÙ»Á”§¹u+ˆ¤”Ç hÒQ$q9®(c<ó-{4ŠUîzVƒeòµ1ma`K®µÚĵãhâ&ñòG‘U‹m¼XäbÙ-ßÑI:Tá·]A>Â^H†¤bh¢’ª²‰÷RAÅ'(Í2ô#FGæ½\­"\$©¡ØC3ȵËQ§˜ªê¤á L­!Ãw³¶Ó]Éw¬˜`Y‚DZ$íh‰Q˜²Êc’௲ØD «ÆH‹Ø˜[wQG+7DmA doؘáä%#ìÔåm¦·7ô²ª£‹ßð¾b.qCaQÒHÓ}þé÷÷øµÛŒ´k Ä´³2·„é;3|ËK(YwçSûÚE#ºÊ³ä–ÖÔ¦=¡ ½4YsPÍdlB-!»{ùpÊgú€ Ÿê~ƒ’%§y%³*¡’ÕéÖV%£’ÔÿJ H·$®«:Y>ñ`lF­9Ȥ3ö^nL¬ÁrK¢û4ÆN$ñËo`D ó9*ñ‰öô@ÎèàñVò#*òŠñÄ~*Óæ“ÊóÃZʉ×Ä+,`Våƒ"Þa$KÈr²Ê#MË.\xŠ‘ÄåKŒP?C—n¹ÿ—„A;(.…T“E´2Ž.LÀ㙦jÈ©Ml·0Û*}‘öéÇ2lÑ»¸‘ŽÚÊæNG&ûöžh£%"ˆZx9I`›1(õ¼f–(®Ë q ¤kéÕAÁ Šáä®Ós–µ‰O~˽6ÙcyÕ^œÜ¡x¸íKus±ŽÅt¡‚G-ý &Äv¾ÊnÞŠ¸Ÿ6k['&Qá’f°Z 2¼"9š/Ìé¼Ï4qˆ-”"Œbz|vl¹šô(¹¬Úƒ‡$ÃAÉŸØãÄd‰¹ÄÏYÔ²üm¸IÝ‘aƒFðqSùd…/ËÊ'e&ýææÂÞD3=‰X›R†QÛmÔ9@;ARó¯Öà|z¨;žŽžÃÇË&."Õy¶#x×ä¤@Å#Â$Ü …i‚M-iك߂9Ỳœˆqô¡ãüc7F½¶B+²”ˆ€Ò4lÌÄH…¨I+IHþ§oJ®k-M©´¿© ³€Éoh¾¾eiÕGVˆ •6׃1úyÀ¬ÙÉöûQÞÈ¢¿Æ¬ÍÙ–tZäÍS²îåVh_iqûž2Ä$Šó³ðOYšîB>]»öIãa‰Ksªšv4S™9GZı¬2—ŽÚü(‘kÈ’z*“·nXäÊÅ#‘B=yV&26æ0¢Bí ÈyYEa$¶™ gê[“¤í!mó(Nê¢F€Èå0†Iå•S°çtŒB±È!ùÊôŒîE›R|Šg±à8ÚlÑ‹FW8’ –r \hpC›sÙð&–[6"Š;–g°Èœ6$™Ð¤Nxƒ9FxÆÏ-3ÎZoµƒ#GãÓ+^6æáIi !¤<ƒ;2¸ý#ÉÚP–§P¢ý}£ª;Çq<Ôºéº)“l„VBØ­'nUe2»%eV绲ùû€d°HŽßÓϨ'X§5ŒôÇlñåÅCHIH™d$÷»x+».Ò}wP«Jª5RW  ‡Pf>C^ø£1N¢~ !Lo`=R;n7™Æú\¼R;vaŠ8D väEŽ5šYbH@(©#wqëà,Å~NæÊ®Œ¦M¼œ…Þm9”†»±œæD(ê(* lSÇóÆ/FS8¤%I e_T1Óï>þã$½“Ýc„`¬‘ÞY¬l¼ÜôœØª êåò1¸Œ*´jÄ·æð íØš‚E‹–í+æ?ŽÈ\ÌüŸüFá‰ãw<9ÂfÅÜõn~w‡Ýîp&ž43Ë$ò›nx—™‰29vçE;•U•w \³Fü£ºâ6QëLôXIZY+JÁØJ%–„ªã,±­mø‰¤ØŒ}¦Ž:±µg$m䪽@³Ì°O$=æ‹‹2±±Œ°•Y÷ f¸S.^=žº«'Žž˜ÂI©rc£”Ö™j|×°YXÇ$-1C¸y{ÖeG®ÕQ«Û?$ÓV˜£ñ¯å§h’lÇû{N2%> JA55£"J­ysÄŒiÉ”Ë S-ûèw(¦i]ß™_?‰X·3¹XÒ(×ÊúÃe2ƒ‰9\ˆâ`)µ³Íd€HðÊ®Oä®Ëlï^ÔékO¢Rô®`U–Œ¢€¼LrŽq.ˆIwVW<ã‘ݤxˈöÒ«F0§'\°ˆì$®ï “4¬Ä2:ïžÉÚ8-$SÀ¬å¬g;Óä;+ä¼g»lîlØÖ2¹ÂGþ~bíþw‚ÃÈó9Þ1~èN3+3O'"³H¬©ñÆò†jp±/ZA$V™So\ënÜWK%µ\Ê\ü©ÀY#^2L¡ÎѲ¦âë§®v’°E“Ò©”–l¬d<–sÌR7R[aÄÌîÅnîà[Œ Å8e1}I£&ÓÕ«Ûšõ{ <±×5¢·2D DVGT&HHÚ±p¢=øZi"½YK7“¨´&™¼€$¸‚Ä ñ"Ø‚èf…©AZpÎA‡›Ù¸âõÌ…+ræ=£!&@X!g2§+¯ÿ¨dšB$ŒÕþS(ƒa‘²½³{ÅeÙv^F6ŽFeYlDq^*"e«©‘zçË ˆ`ÕÖÌ ¥‰B‰˜»÷s¯Ug(lJ€Ø«e”W¤»’mN—ËzªY9H?«¬“§É«<%UY£ù5¸lX˜-ФªÁ:÷£ºX‹35òôXæ$úIIQ†&Â壜WFuð®±gšf?ÌÜb ü®L©?É\òf‰¦HR)ÀKуÜHä?^òוŒÿH #-–Ì€å.÷wÃLÍܨ¢42ñðY#*¹#·jZìlSîJb9é]£*0ÌÄbØŽEaŒ†f” -l0LÇ•ªàן´¤°@éU„£ÊÕ¶Pª œÛ2¬1r Š+KYÔÿG3•gƒcë(Îôà”4Ðd–}¢o$Ïl\2¹Ø,¨!½NÎ癇-,çÅÍå‘ù+²¿®óou‹* '“Hà—¦‘Â^ÛQ©ÊÌ®¥3ÈǺcå#9y${IHî5£ºâl3.Ì’±ôgÿ…VJªŒ­SÌ”“ð̼ÙüÈ6D,Û—–Aùù…£ýzÞƒ³rÅ5%>=É`nJ³É$•žHPÊMe£P`¬I†ì›,³FTîÉÖËV* JR¥iI `ä7³ÝÏ8Ï^žbOÅ b¦^X^à8ðÛc­ML»Ó±-9¹Ín¶ÌwŠX–äêîgªƒŸpÉ’‰‚LÇ×E³yÁ#pÊdâ„–³ºŠ9B¯Ñå„x×í7[z_Lͪ^Ôq]©¦°JÛ™\µÙ>|ý'¼‘¼¯•­ ªGʲ,*]ƒ¤JLp­±T ²ÌfNœÏNZ’–C¸hmÓØ}í&øJËg‚Ž­0K¬æHYýÄãJ;ª±<`+E‡M‹,bàÇË_¼#÷š€˜©M½tbËÜ£•è^»RA–e¯/#'2¬¤U,œo ŽUøšÄO®lp• 1P9Ô—!‘ ÂMÇ$¯ÍÖ;ŒªÓ¤ê«ŽRŒÇÔÏOhÙµ5kv£È×®µí .“ÄÓJ®+Áj)Ya« "%¬vŽX;v%&rPê¯V:oWþØ`jIv"àZÜ8|g¢Š«_ǫ̀4Q9 [±v8çÇ©óûnÙ| ”8bÊCGÜP3FG0áïGÃ]_ÍmHõ>iØD2ùP®†_”Žý˜]æŒÇ7¼Ö`òCj»8Çžr¿‰ü½(¼ceL­.êE¥< üÑ´°ãõÜ‚â›vR2HÕ^’äQÕŽo¦5*ưKˆ•vh‚qà á50 T!nÆÓÙ}b¾œCCaðûú\ ÍÁqÎ[>~%õL_¼8\>!Iª3n¼Ó12w Ìg•â#˜)0Ê™ D“Ê¦ÝøfyÂ}rìݱ~Ì2OfÜÓÆ±@ÓO,odÇ—ŠEav…¤‰dpÖÉh;2< xDCÒkÌCG˜§Û 7i~qpìqKöƒ»·i€±b«XX£_PœÖš};}±¶-EiŒNZ´ÅX$Í3aŽr«,G´dµF ã¢ån÷HB=_G1“¨½4t•Y©‘kË{‘v`Îø®­,Í1®°:IêQ,D™üæe2'.¶V4PÕ^³ìÑþ9>ëL¿« ?&¬¥f¼D£ÿéòªtç»…ƒ/úûÆïwY‡Sæî4½³Û2–ú°„Ç‚»EvO«ï Ò2òcu$;•falú‰A)â-þžÁ—Lû®FV;¨¼CÛ*ª9§LNë¹ù „RÊŸ®Gõè7^IÕ•™ XØŸé%aìà1‘é$]¶ø`wõ%öÚŒ}'ÈRÜ_b¾B6üŠòs° çöIØ öõ•RNû ~ÐqåçÎãöÅ@7ùܨšyHlSú~¾IöHHmÆìïöV¬mÈIäáUüªl øo¦Û‘¾Ã}ÁÛ÷ÏàÔwöÝ܈ñ8Ãn›wÙ7 «ìþØ}[qÿØýŸ×†¹$CÀðA';þ‡ù?äù?³çöã€ÊKì6_¹`ûl ïãüø;l“ÇrBÊíË`ÌÛR~¾CqîWÿ¨K ­'gfn><{z‰ÿâßú„È%›ˆ÷Û­Ë•‰ÃÉÑŽˆ×ãÓ Xás‰w/’Pؘ¤Jõ#T´h ÕöåbYPíö Hw;ÄÌW ÿ™—ì+·®ãuSßüÒµ‰þººß™Ý#«ÒžV)¹eŠ«U™dWbÅ;˜ –g^Ò‡vMŸŸ(Pl«Ì¤ÃzéØ UùmF,S!á2ß¾»NŒ¯ÿO¡¸!„Ùžý£§Pc›«é±’K—`-a¯ä>5ÂHìèä·ÖI•#F§yx²F Í%” NždÔq·z»FS‹"æñªrî…Þ; UŒh ;OÂ(šH"":×ö(ÆŸrÖCzôñò-)0»üi”q´I`IJÇÉ3¤ zÄ,Óá-GXÎU9q@YѶû—iRJÉ<åÙDœ^¼³F;å#‹é~2(Êz4‚í" pX p|–8ÂC´;I¹Ÿ$ßí‡ÞT 1§ÒEaÙ±(‹m8’5äñÁ!;Y¢®—g“¸× ëP¹I9¾á”´à$aå{ ,{©Æ&¸•ݳÔ%Ç1@“‹Æ’±É!¨`ß-Ñ]Y€YVÿ"0ÜGVH™¢“þRC#>x¬¹ˆ¬dÆ(ÔFYÑ» LŠªÛ»c™¥8‹Œ2Œý—#„‹í0o¿–21-gÁtÅösÀ¿bÆÍ‚çIdCc1 I÷ZÕ_dî ã29IíÉëGÇyKXhöîý¼ZŽïÊ ²¶ã‹G „`Îû}œþ¹y z©˜œîc5†ÇXh^pLâh;Ï"@{„ØŒþ§…ص¹¥x"—dm×Ô5þ©R­óÆB ‰«×–ÂÉ`0„@“¢DÖ&,ÒbÓy#dGŠûÖ”ÆÊ;Ósë*ªM=J”Ϥ%ícÈ; Êõ 4é J !¢Z^» [9¾ÈOÅ×´w Å—ÈWÙ‘™i/ГÜ0âml5=‹ÇöÝ¥÷”t¬Ë€J,Lï§Ç;5¶Æâ4®ò"Ðïgg³»îø˜ucÉÓàvØpÊŽð„}gÄyiHnß9EåD‹jZ±HVµ‹ ècOŠZ…ʰ"pl…C¬è³³@<Sºäc³Aö“]]ˆÙÍj® 6JÂΕÙ¯Q…hÔq÷¢Yaâ¶Å ªØÁ_)ÓФ‘Ú^qòc“fYÆÐÉ̆„–Œ ®bî–åœÇÄ» µ\£)^DÆZ…JyO‚¢N¯”@Ô\`Èÿ._+Ö§Z·ÄH:I@—ÔÀ ìÐÛqyÅĈ/b"Ïǹ{(eSŠ”xä!dux ·%Û’n}gˆá° n Ç&Ä€¥ü(ú€›ô oº’Þx×ê.¬ ê“Rdw¤Å€¬GyÛ“¢î™'ÜI‰±âTw_j†„¹ aU‘ØUY¬,Ž;¥J«D–r 2V§i¸ð,¼*” ÏHÍ(–RoH&#îÑ}°M=J‡¤¨ÀrD 8ßëáäbà Bì²·é€P´ÀÜ º(;B®ÍúP1ŽH¦¡R„ÆcFeæÜ%X’X¼ÈÃñ$©9xTÇx!eFÞ”84s<,Bíc‘f®ÄÃ1^äÍ™ǾôÑx®þ‚BdDÙÀ*ReÎñnO,‰KÅ8ÞZǜĥ܈^U2.¨Êi帘çHÚÜÉÜŠq^ÔÝî×T—–d±Úü•!®Cb?ËnAhKgrʯ—©€T @ÔX%”Î ½ø ¾eë¦dÖX-2›oû"Ó|ò#r òÜq,O5E(¶#`Üw?³È!$—˜nA¾¢4 ¤ýÈvƒ ¶qö`Fê¸×_ø¨žDuš‹ňH +@ªÈxY’H×ãXû(¾«|ñüRÔ†GIÛèڠ&ë5Ò2ïÞ§4*²VhDÍ,eùvÚ©ã&2OËïÂè}2dén51Úð }9Œþ%@ÖÎÎ"!ü3ò\µ±b˜lvʪH!D{7“¹Aäv€ ¾Û‚ìÀ ÕB7JWA$‹‰VXIxªÙ‘£ˆ]ªÇÜ&@.%Û~%l(“ýHÔ¥„‹%ŽÁC5V æ¹.ácK,ª P~SËzËE ê?™Ô åŠö¯Gݰ7Ž´5às!žŠ»÷E‚Õäy*ÖvjWj/ Îm¤1.̇LÌP®•Ô =¡¡0à;Y÷f¶|Öv…jJB5ƒÔ&J6vn÷Æž8»Þ¡$Ûùt•• ²#ÚIâ’ÕX»í ”sšŒ|§±8LŠGv;[y G`£r]D`ÜÎÜI#sÈs I;¾¡©üÎ’E<@+,©y%ù-Ý$Sµ§1ÙHE¹Î)˜ÇpDÙÌázªÜžkŽâ­!w»j§ÉΆ÷4â„ ¤$i±ç†FËØ¨wQÊVÌ®™¤ÉK#W’Í'`ìÍ/Š2Yªt…@F¢á€– 7 bÁäoƒ´Ö,(p¢Exä;Jv.‘ŸØ¸±æür>Ú“#fâ=-ešÏyņA qT+qyH@ ³Ÿ²ñòÛÐ :‰ŸnMϱÙa§¡‘&n";™Ú(,M $Jä¾2¼LŒ’¸GÔÍ80o/Ù9 8!boëd]¦—²ÍÙ.XFÕt¬ÑÒ’\ÙG±‰öï‚ÄrãÕêíÔûsý"Ä™õÈ};žxåÇ y¶XÍ˜Ë 3ì†Uy"‘¾²"¾ò"´IöuÚ¥ËfPˆA"YÝdT‰á•¢‘#T,Ú{¤í­öO-F4áI-îÑïuR]©j¼§`³G±+­k5{Ðlõä”Ì—X@²Vµ‹ÒBV a‚îÅe!-©~+Å„qÂDµã;ruj°2˜XH\ˉ "¦ÄfÙ¦Y ;*¼ºT*ê.%ì»KNò-ÜÎæ‘Y@§S$q.@"ÞîÇÃàçÓ `içà+_˜Æc³¤L£ŽÕÜoRC ªæKŽä–T2 ôE’çÐyJ¼ŒT !P& ¹1"rFnh­àly ù¨ZµàõVgORj¸Õ µÞ{.Ò[C4É,û4³§€°”I%©L«“A‰î.Þ»õR/Ž;ó4Ñ­KÍÊI£ ¼²ˆðÖ¶ÀIJ´íµ¤GKw`°Á™é™ŠÕ×QiR‰•6ï$È÷qwƬ¶z:hBŸRZ†·¿ÞÆØ°öXüF‘–ÎnZ/‹ÏQ I'UÁùmÇ?\'ªsÊuc…A…¢ó§‰ïÞUŽW*©t1Óø…”Y„‹A«]ÜG4¥‡ÿrá¤~ãˆò•ËÄ©]Ù%ŒŠíËd–0GÎH¯ŠïT¼ŒT5™Ëä5Ñ$i¤ÑBñB•a)Ü’×8ù3UL²9%+[?YkAŽŽ«Ç©¶qù —áíKj´Õä¯Ý‰¤ŽV ~?p,õÝCƒý ,³¼9v,¼‰šTœ¯Á  e&n¦vr^ZÞp!UP¬Á«:UQ bäé86å¢ÃâIJ¤1ª—S1úû³‚»ÿ`ܱB¾9!5X{ã¸y×uÖc'BÝqb7¼2Ì”l££³0K1‹yˆrÎ5,×gÇ]/ %B'K¦æQVš•¤A`A,òI-a°rçß©Ÿ P¤nS¸ßˈú¶Ø‚$‡”ß™X"r—Ur©4}ÅâáÍÄÅÁ*KYÎBc´É«V§K6˜¬à Ü·îIò›¹´*Í*€ˆе}–L‘UçŠ3‡a%%SÛµ,$bs½†(AŽ4“d½|³´µž”€¬ß ¬òØ,zcqé+³S§rHÒÁ°RDfüÕï$iVÜ$Ò­ ÚŒIé Ô¼ø^ [ ì ­Š$ï>ë#¯ò",ãévuxåÜYjÿÛè/ðÌÒL€@à†" Ë·Œþ#—25ptìáÉG!vw<¹ "0n[²‚7 ±åà¬A Èå\Ã}}W>¦waÕöZ8ZY&Ÿb-peãÉ"¯È³÷Äy'á_¢Ý'C2ÂOiº—¨”05°H“<-,w#QØmçFîÈ[³ÄüéxËc+"Ûh6o%&{+.G!KfC.‘C(ŒpG|ëI- VXÙq‘ËÚÈBS2­ (wôüZ¾%@ÉRJnb‚>XnCòq—9›¥Z–”•0CAÓbÌÏo¨coEÙÛTb†V‘fú¬qƒE!#šÇd¢­"IïI 9!cí ¤'oV‚IE*òñ ·x¨iØ#ðʨqŤ`®ÅAffÕ VŒ½S%Hçšµ•³SJì¯:¡^sHc,Åv —°Eyú%W›‰õ9Nªg±ÒĨ`‚Gz×ÙJê©)€ÜÃs«}ÎUæXÎDÓù u ­|ÅT®šA Ä’ˆ,Üy{˜Är9ºTi© pJœ°q MŒ³Ú÷aƒÌ.æüÈ#û8†$1HØnÊÄrú>Äz~9¥^Á‡p’ ‡öÀrØŽ;‡Ç )êniãj§^Ž\|gQd6ÒÈÊÐ3îX¤ZŽ¢Jã%‡ª¹¤gG§Ž”ÇÜ”Gqfs4| T`†±pÁÍNZ=ä…èñ1œ é™™!X8 „ |lK,=$™!ËnD9i¹‚'PQ†•Ë11 /LžôÏ Æ$ÈV<’F…¤s?ˆ›ªÉÆÜ¤ZëÄó܆2 L…¯Ü~ì_y W*öãN&jqI+ªÝVk%©žS¨lÕèÚ©‚½‡Û–€œMÄxÇv˼Ï",©u{q×hæÄÉÞ¿»ˆB¼\;Qì`h’8‚©"ÿŽNÛ³ÙXÁ5àhþ|6 ùrÉ\ŸE²9z™zE5¢¦pÀi¹ä’#— 079]jRu$$=-Uˆy¨Y8¸Cn£Êñ™µÎÇpHb6 ¿þÝ\Ìc±džÊ„I¬†–EúØE<¸­{_ßÎf¥úKbAÈâ>­ç8²ÿŽ; ¥d»2M1Š¢Æ€Ø²ìµçYb2Ï!k”ˆž Áó› H u%Œ¶Ê2]÷,%ð\õ³Ê”{‘-韸àEø°ŸÝÁîyã™·Ø‚B–ßû¶¿Ê°UŸZ¯ÿmYv7AÿQ&ߌjUd™J4mù#¨S0KÜÆ}tVsœ$/‰ÆÁ ^,’ S2ØŒ«XI&}ÚØ 0·ñáÖÌ72 Ê!ÉfŸ)‘Èdf‚.åù{²E+Ĩ¨‘ÂXDÓ ¸þ-þ=@Gư£dˆt¡Tª¢AA0’JZ<}wœdÎæèæ)%(Y*Õ¸,Ì•7mżo‰Nš3©©• / €ž6æäE žHH˜«IÝaóÄÈ#šÁ†Ö/zbR,w€Xrvr+³GÉÀü M¶ãmŽÞ?Âê[X{QÞ§ gšP#™‘b‘ž!®ÂC ¤Å_xa¼îµôëÈø‹ /5ç>“«Ù%+ËL…¶6-™ #ñÆÌ¬¢xJÊ­9®&•öoˆ°1´cŸéÙœÅ}TÒ’ P bYÁÙ¶mñŽrE*R’ê?(%ǦᛟhÛ„Aöf]Èp<ÝúÛÇ;ºÿõ6ôØ ),9#ŒjäsíªŽ,ÄÊ‘…Y‰‘Xú“Yƒ¢ŸÑ˜ŸwØÈ>ÇmÀÀú“ê¸âº™”ÅP§ŽLU9–š þJ=™f@d“¹$+­ÄR¶-E ˜Z6kØbÂ[§«Ù\ÓD!0o½« ÝBx8†ÃWºÎÞ)MÁ Òï WÜóô¯IÎ.­E¥ )RÉI*L‡ ÙæÖ``¥>¥–Д•„‚à%6¹™3i‰ÁðJC)v*I•YÉR7þÉ>6;ÿpf+ÝIS»*¯!ÉYY¼ÁŽûì*ó±ß@ˆú¿’“e G~ymöÓœd½^[Æo ñ#q¡aãŽII“·ë¬ôQ®¨F,ã¹~t=‘¾îc5CG6&sö¯ ÕÈ©OHÏjši _çMƒwÝàñ¶øâYh¹fd’ãÒd4_™Ù¶ˆê)óùhâ »\™‚ó‘Š•å´êLUÌ„*å[“ã­pHvW>¥.Pu €"˜[ñêdŒÅs$‘%~3‡“½b³†c<†ÜlE¾Žr9wÈ^¹}àx¥±dÍ2@Y ’„(WÓÙX71ÄXce‹x¤Ú𞾜Õ/§.¾B*UæçE)¬_0ÅTÇrxLR\&y ƒËZĨÖeµ*cl´_˜õÐWËUVMT’£M)m‚& Ÿ’ìÈzU©§4*¨˱A‹õó‹ZAÜòÜA;« ”.ã†þ?{‚<îÛ“ëÊÌì.ÞCn<äþ‹~Ûcû; ø€«ËÐ(urè…ª;Û½6Û©Ú2Uª¹ˆ§ö]Œ3KHþI‰BmºÁxG¿ðÕ”ª†”IviFZÀ‰R˜iš?«Eõísݦ¶Øvýsã¤gUÿ¶#ÿ!»{›ñïƒ#©eYµ‘¹d—bCÏßv.LÆ{¦ÿÝÜñ¸,Ìxì>þIÝ|(QºF߯Cަ—8Z¾@›üfQ‘x¬Dº´L;’£ 9ãp›úˆ­ÞRXà©I*¹AyYd1‚!@ÐZW^Vaí±†jû‡– ›ÖÝI¯eÔtb‚Å Õ;-÷ ·9Ü*ð’Q#V†Åj¬´±÷¿ƒãȤËëFW¦fèæ)-Tý)S¨…$ì|oÂA6§5˯.´%ED€ ö»ß¾þ/ŽS3Ýú0àY$tp^ Kq’Çj7T²Á«Ú­ÎœnÖB…´¸va†Ç9ãŨT$‰žÊ¨0¡úNWœþ?¶iI(ÙøöZˆ,9YwEI6hþêXÆÌÊì²DÁU%RmbшÃFawÚP¥*UµR•jç¯D;ÅÌ¢y¥%UÀçYb*¶Ñ‡ÃŠp¾ˆu,–c2)ü0 — 1 Oùü[2št þ)) HfòÎKwvÛ€óú’wäwÜn¹äFûñ`@ßbFûX·yd†; › 7׆ÿ Ý}ÿâýÖ‘C`£RåBŸ”à°b{j%5„|æŒM¿dÞ;IÊòQêõžCˆ¦¼V&L”±}Ru»!4ÑÒÉøÖ$eˆ@lÄæ_AÏHÎÿö¶¨nÎÒOsfk[GRÊÿ¼ˆ}?ß~`Q·T<€;!<Ñ ÿö'ÇŸÙ¦™&ˆe2ŠEK"„•”§mïÎÇšWŠ 6f’fÂLðËQÉR³u~ðv)§â`]Õ`k’|¡ôÜ#@õ 1·ÞH ̦ßG#xÀŽIšÍ·²Êb{¶¹  –I¬4²î0Eƒ¼päy]œQx8/Ò2Uò˪k#@XHKAb,&mÆõ Ýá ”ĨÁÉbÛù,ó½‰=* 9Æ Í׊BßÿP²XYUÝQY¬«ŸÎQR™¶ªLG“›¸0ol£‘WrGÓþâÊým~¿ÀõX´¶¦“LIfH¨Ã9š£"i³B‘Ë9{ÀOƼ¯;$tû .¬Uî:@ÛC6SµÅ˜â+ÁÙ¶ºéÈ©û¢pÇ ó2,Wyi‹KãÔsÙÍlʪ! )!,I¹ õãÉç(R¤”-jIÿİ`À7;™‡àÆY¹‘¼<¸ð‚Êwý€§Ë0}‰; ÈrS~@úSP‘Êñ]¸ò ÏÔîéx«;4c~ ,ýQ·@0pÝ,6Úiä‚G0†Z¼ ¹ø‰iG#ƳV^,V»uÙÃÕYÌ)'ñ5 4,VHòRÝÎûŸ™¢ŒÕ^1Ùù‰ÒÕÌ@-ôÌߥ'`Sr É!ŒóÎ5~;.Ï©NK1¾ò\-{Îê¢36ý•X1$+´¬É´‰ «ûª0UâOO;lÜ[a»2°ð"ûÉüuÕVG rTÂHâcoÜ-¸;ûUÇOס0ê|¡”® g $ uÒei‘¤’F¤Yå»YL‹Ñ£¬òÃ<}¦nÇS§µ°É…ƒóUKóvd]Ê,°Ê1£jŠeÄÉ81$L¿Á/8*!F˜˜<¾üvƒrØeçòêB’IRHO¤Ád¸Ýˆäp64˜¦&hö*æh§†Fç†5df- ”Fï kÓ8©J&||‹%†cèùÒçUÂ_‘ŽfNÈ Â-eÍx_ó¬|ÉR–H•]\qXøqmÚŒ³‘Ç4 \°N\$©ÍÄ»F½Ã‰TŽ-Çó.Îð Yž›Ö2iʶ ‡@Zµó^x­¤,’¼qW ,ÿ5ºî#åW$ù{—ÇHÌ‘ú9Ÿ¡R¶TS¦cI¸y1úøh’¬š5õ¬²HWf%¥†Ã‹C´6,jlIܰŒêܘì@B¡·ÎÆCãô6Ù†œnãÈñG‘D„“¸‹’ñäA¹9,Û3·%ð%N¨I̹Â*ò&6C~įûÿè EÑ÷ÜÏ‘Ç-Tü“„M¦ÿâu–p¿ÀDÜÉEjA*§¿ù"¥:ÌA(ÕÜW$‡Ž8Y—éèð¼à€„»}IÅÅø€A`óØÒº†X°+ ¸vI1Îìò,ö›`ÀÒ¢©c·éö ÇrTlI;}û)?¶Ü9¯½KyUÚòÁ…ÇýVVî¡sq GŽIDuÚË“ñ#ýdŠc¹2×mŒŒuR^âÇü,>Y|-æe›~Øeþ<ÉÝ}¸2€EFÔ¼‡0]I—|î@ä䪕Á‡â Ñ͆JñwM–‘]ÈnéþJ«¬’ä!H—(‘K6ì†N¾^¸]DÁIÔ ÇbÌ\±òØÃœÎR­D! r ‚Œ\ˆ£1Á9ü¡åxÌJÎ{¿Œ&Ñ«ÙT,FÞT] Ä¿‰%ÛëÿOÉ´×»2Jßÿ_x¦~`¯f_øŸ/8x·ÅÜdXÊÊ÷mêLJÄxp²¢§íd”+L$’*Â,¤?Z­jUÇ’9RÑŸôøa6›÷g,M"¬Ÿêïž,ãfO˜ 7åˆ ·¸B»ïÆ4!=gÿPVNFª„,á=Íâ;wÅ!Ô+¿nÚ’Iãèqÿbäž;#Fê7$'ö’¿÷0'줹ÙIô³Ä®ÿa¹Øº£}“Éä$™P“ûn!Žû‘°ß6Vf?@rŒÇ1Ûû˜Cm±Á²Ãs¿0XÍKv#ØíáüáC_¯>€`Ð÷÷–ííï„rÝ„jI` ÜÇø–$Í¿Cûûü}öá#?P}øÈ' íïÏ«%˜ ÚgAT‰AQÉ´µÚZ’Gþ:ÓInóOVÄ6=Z6„‰KFQÔ‰T~9ƒ3È6—¸ÏÛ ¾äd¢U/‘B‰xY€5oÛhi5ç¾Ë®âO}ýk^ÑÉZ>ŽÆ•T$*3S²Ñ×Uç u‚¢šz´ÿS´r%S?>ú.Ãw’D‘ßÒ$FâÊêÆD)8•ÖÇÝ’JÑHa8¼¸ç’çXœ¼rA,j‘ùJ+ònrL]gî ‰@~Ww°ÒöÃGó„f«À£<ÀH €¢Î8¸y`;äØã :@g äØ6Ü»ù-7.Nê +¬¥a…ŠØHÆé, Üe»ld—“5Ik‘æÊfQ٣ߑhÛ´ƒ†ÉÂq4±nÐZfaJä¡,æ’3Œ”+2Xe‘0†%M„eQ,F« s"F²É-j‹0⮣åAl­§qMd_Hfaæ]šBîд‘ܘ*Oe«F˜G#/hT¨laÞ[]ééѤüÌ7üˆß¼b¢TÀ;ÿµÜ¶°ÇkaÔ¹FÒ»yº[ŒbUG 帅%Vlïë${•XBʉ۔7(¤-:Ç¿õà–=Ù¤†@\ŠÄ­k ¦+x}Ì"æv‹3—m™I ™Û‡8L‘²"Æ2´a÷ÍÄ7¼ë ë`,Ÿ¦dÔã‘`£®Ó%¶)ñŒe»qäxadi±ìŽ“—d¤É"Ü3nÐ.\8r—;,½£‰¸±Ô V Îú³C%„sÜWâšÇÅfÄ®hKEŠAü¤^°¼xGÂ8Þ2”ì‰ßdhä˜3Ç]Éã^ÜŠm¼¿ÓZ­—Ö´ ‚T)ü‹vJ„BëWhd®\¤m#Me±0’e£oŒò¡eVghÕÝ‹ÈòF·#ª”‘{Ê­ ò¼g¹¾µ-Áÿ¶S8Ò d4$³¥Æáï ÝÌáßJI °€ßÿ  8_ËÊÒ̱$a‘ãwBÜ¢aÉf¯iëµdîüŠˆÂ äë"X¦ÈUNÚ?nUÙÝÉMù4À_ˆ)$˜þK&¿÷AvØ%[Ÿ¬dº’¢¸†h™§!Uáig€%—m,’ÙpÔó¬UWó'm\¯n8CÎåݸŒo YA•,ä RðI0Öf‚IMt@`û–€D¸;ù‚ƼR¦KEßÒ ’A{ý}ñÑg,¡Ò9FGIca«FxÆÉ;÷@•)VÈ V†Æ•ö2:€Ø1ªv 0¸…dHT0‚¸‰¬¬†1 ízmdîñÖ&üYcðò1õ£Zͼ„¬’<ŠÊÑ’í¸f…Wi\D ¾6)Ö ­uù½¸l(ôû«$¦H¤–I7î#wã’U˜ÆÐ$±ZVTšy\'*%‹¹…î…—ÔY Þ×&×—=÷Æ'êà×`Ä“hã¼ó¦eu]ÖA´sª'f6“Ÿ‰'U†d¬']˜ÝŽ5’¬Q·^I%CH扣e ]xr.>âÄò8YÍÀxÁ;Ö#Pዲ`cѶAxÑÝQÂðäÇšD©Þ À‰,,1ÈH§_t–›’¹ë»ze`fôB;s—IdD K+Úy"€–ƪoØÚG¬« ŒJ+—béLAÁá€6³ÞÖÌ÷ˆ¢lဇ†ãÆ7ÎÈ囈•¸H ¬‘Å# Œ…„qF+‚ÑV´9âòl/œ.Ë6ˆ©E®ðD±³“$K $Š'ÞÅHÂÛyˆ³XÉT‘ëIà˜8º—°U ó³Ui`†8ȓƩWtƒ9\ƒ ÑoY•%1(CÄ‚"diÞ1mÄJ–_xÛ‘Ü.BÌ]¨É8é";ôÌ!˜8ðÓvìüŽØ™$ Ù‹Kaš'aÀÞÎêrJ7—œrÉJò´D¼`¬±Â’“5˜P^ŽâÉÆEu²EÊD•LJ’;%s®½«J ÑyË6j!ñmij$R®„IÀˆ„q”EDÙøö ÎȆäÞ­h'txêtÂK¶´m)o`:µ¦ç†þE[ÖÝG¢³ºýâŽÁHrç47Rz©„—e¶þ3 º•ïáàÇØÅÒaÛ_0¬ýJ IM ‘¤ü5au9K8†ý1µT錪+ BN§ ³4€ó¶Û\àºèà c;±ì¢V’y$HË–„Ë×k‘ÂW´FÔÍ3ذ±d¢ŽÂ±Íx§|¢[¶Î°×ªw1È%yâ´”çmÓ#Å-û“w(Ý1ÁùBUr¡ePÜOa¡/LìLp=x ¯c/V1€5˜ÚΕÕÕ0±m!2Dc“›¶å’F‘Ú"l¹dGŠÅ‰W‚ä-Ý[µ™dÆÆ-©ž?ò2Ð, Ýí¸ÌöÜ»€xcˆ?Ÿލ)Ú,ÒîNèŒ6„ÞH¡œÁ¿6Œ· mf° 7¯DÍ,ñÖŠ8l´Äª®Òv¦{/(¦ŠÙ¡r{—a ogc’<†5cøÓ4:º‘„‘Ëð†‘лYR)9ÇòñM¢Šê_(ÊÔÄXЦ~ÔZJ¬Ì„D!†•ÚbÚ1 ,m És_àì»ãi‰+[rôÔ$"¢“**J¥L¿Ì{;Ë6$€5£Q%@JAwbàqo¾š;Ü·E5Ö_Iàôõ½ŒO¥Îé}c¤iõ!iÓ†ôÒôï=«ôæžÓ½E·[f¾@VÑ™Ì+€±RÝÊÑ;¥™˜8; ¡”GbÂgŠ8£i8Å,ss7!¦8lJ‚Ѹ“‘@‚~bt‹§Ýjn…{öÿ©=¿ê½•è.O¢y~¥õ¨ÞÜÑŠýÑYìJ¿Njhž¨kÍo›ÔyüÆqNŸ­—Ò*®?K;“¿ ™±ñ}3h\;È¡2r³Ty„L&2­Yl<-ÛšB¿Õ=â€ÿ!c“#™«XT5C’äO«``Ý cFjšQ¡W·Í†%‰ƒv›}7JúñŽ(Ûî–4¯.õÌL"š)Çõ4J¢+1ù{v$TJ:Çô‘¢*Ë/%Xäí¢¾ÌÈa ÊðØQÎÐŽC>mOc¨ÐXe•@Tˆ¯ bá`§Œ’²×H£™–YDZ\V%fÉ)jÚ…ÙaŠ5ñ$#ÝÌ,-VUJýÐå`Xßèö\°„v+¯íg.L`\ÀØìmfb3²Zæ~°$³XˆÇADa¦ey$B€šA+ÆEs]]1lWw$«-ÔØÖÉ´—ÅG#ýwÕ=Ó§¢ÖùÈñ—u–Bl.ŠÓøŒ.¢Õº›Wä1±=Ë•4N‹ÑøÝE­u"ãáa5É´æÊdñ4pdâ§Šž¼Ï0í1cuŠ8×t’1T4$ŽÂ5jòG̸ÙåÅÂÒOy»y©ŠB’ïS:“¤5öž÷;Òî½`t^ªên™Çô{¨]"ÏéÝk@g£ó™ÝM¦õEMeFN£u§úg7ˆÕ´1ö°zêÝmD™:Ñé=ü./¯ª%2ÆÅy•÷â!^s¼’íÆTF‰h™ ZaœÙ¤³GfhMĸ»™oH±¹8BóÎÿ¯½ñÕú÷Ftë_Që}W§4^îkMél~[P䱨J6u¦½3J`jÙÉY†¬ùÌÕéצq¼Ã+1£~9î76™y†yªY⦵ÊòÈ‚²$½»i;» àŠ*´ÌÓU²ª˜¸»g—ª}A÷+ªô'J*`ôž#¥úcJë-uŸê7Q°Ymc…‡©úž–O@è¢4®êoN5.¤ô›Ú»X×Íß¾ø+ßïlF<®F…êx»íáú„½é¶?ªL– ¨ºkLTÒÚ¦žW+ƒ½víý#ÜÓøÝIüî'œÆå[PàqøÌä9+Å%y²±YªâüM,ãÆf¢³5(*š“OJJÔ.m¥€.Ì ¤—BÒ§YW­$ÿIv‚~ö°Á¥X âüƒ—`ѵa0æ&–© ò@nDd8äU„¤k,–RX•°€³pæìÛͰí©w—Y’eúÍÝŒvÿ•Ý ÌD½˜aŽe$1Âñ÷H„“EPÀf rœ'ж‡á«µ%ÔzvñRÄYà¥Éa"2~RG)!v1çf…'Çb#æÍtv«ŠKR7R@ÚR ‰ypû›Ã°÷|P ‚ÂÆO‡·ý H2°V®7ŒªÈªEx‚òDVI™[QøVœÔÏZE_Ou=Å^à B>ê$Ž%HÚH«—ŽJÓöæ¥z*#ŽšŠŠò2)‘Xªpd™ÂìSš–•l e<Yµ ?ôÞ cE;Œ©Þâ¡Ù¦hŒ}—Y¬‰&H@RÙJí"U˜•£R¡l]žVë)–¢ÚY¤\¥®q4à‚6½¤vˆ®4Ll®CBèK¢KÜÝ¢›;Y6•pé ­™šîÆ‚¡DH $}µPŒExS¹Û–8a.߯TiEš»ÃšãufDk$óIaÝ&ì•pƒk.DN²,ì§!2jNV\p›üõ¢gnç%^Ð ä36Ó/ÑšWF‰£HywuŸ“+ÆC3¿)#ì ê©!2#ñ I„ˆ°Ë é4²EZ‡˜.+“Íu Š–tÈ—-bö’þ¶3”$Îç¿‹ƒfæßž4 á"xÏÈ2˜˜ù‘±Xg¯4S½ˆ™eLp–/ç+„ËJôíBÕý-CÈ™y÷RV³È2q-ÖvŽÓ5Ël‹f"hGdP7E‚vÕ—’‰£®ÕŒüfnóq’ Ÿ$l?1v ‹…†•‹äʬÀ¥yHJÇFÎÊ»ºÙ¦ZDN.øî3Ó¦®/WîLYý6²ÎE¶ ’L¿|" c êÜ÷ðÞÛb»u3Üç¶îŠf£Ó=^ëçFºQžµŽ£“«ê7Stn…ÉIˆ»eªPÉŠ:›9‹±|ˆì㥔À)ä›–©h˜ÙµïA^Õ)¢·ZÔrد46RÜW+Iù,Û¯n«MRÅwVŽ\†B”æ²+EsŽÃGëç[4·Sà÷ªõv3îwAimMíãJè¬^«öéÓΉkêÚQÁ¨o]›Kê麽Ó.©TÆTJò¤ÈIŽ‹PºCˆ8CN‚å{iÁjíß z;XéŒ~‡ÕZ/¢½(ÑY…¸Ù<~•Éé]†ÓÕð팖ye]?ÆÒdÔš–†žš ñµ^¬NÆ È⣭W5V’©Ó¦¥B°r “ ͵ÔËÓ§FšÂʉ¸Ô ,ÑfÞdž^)+3…GF"53FÍ;9ØŽXã $‘ÇŽÙ“'\ ¬Í௯qW/'5/±Ø(ë·YVäü«B{òSFÉH3àåþJJzuuRRˆ¤§ŠwEt‹–Ò±ãÛ1Vi·3:w/wÇ*Ük½$™;±È$î´Há •–U‰æÝ©ÆÉ¶š¦j|i©m’ŽGºœyQQ"D—sÿ<6243CÀçõ3ÿê-m¢vTB¬MWBʼ1šñ1VŽÆÓS¨ý×Å[KS= 2~–YXÃEjÝ‹2É^%HâŒË±`³**Å´™k"Õ‚ª5ŠN9.ù`O Í"0Ó„­Í„«Â6ä"9EïF¹å&r £Æ7ŽWõ^}Üh=KÔ¯m}cÐzKOA«5¨ÑW±t´uÌ|TZÅHem16Rì‘Õ¡ü¼ÉJ¤·/CO ,Šr+38…J«§MKJu))p™ ÐÕØofôÓ©HBˆ”Ĉa¼mõfÇ_¤þà:ד¨W¢ké?X_JZ¡SRÇÓ ¦5ÿð§%%úØeÈ.˜Ìdž*ùY±ZؘG[W6##‡q2ð3: PT—Y6•&ß–åB§Éç•Ø8h†L¼ÉUËãGtåzß¡º§ú·Õê9Ý3Ð=u¥qš3§FÒÙ¥õc§¹¾‘ê_3ªúqvŠhÌ6G#ªôÖ¤|ÔºëRôë%”é†#Ó6ºS?©“5ÄY×2‚YœÈ¢Xä0³ JòQ'bC— ayÒš„„²³=¥‘}U–®º´ÂÔ‘ó4ô €Ä ö }¥^’)ÕHuÉ{6¨<]ä³cLÇ1F…•Œ|ãCÜWtzá{¿gíK.4¿òâ·Cüa¼HìΨìDÈÌÒ?9aâI#=ïý°Xæ°*¤mzFÚµš;n+I/Mù•Gæœ #†ùU›’/n×ñv޾NIKZ‘¿Šx¢IH~0¡†5'ƒ0âh&C’$Y$õêÆûé¹Öó½I{ix[úH%ÿFóÛižq[0ô“2ÎÎ[inÚr-…åÈÊ ¬(‚üÐЩRÝ‘:l˜æNN0#¾‘>ãÐwSûöï¢5®7¦ãÜBôOTr­‹‡ ÓÝYÖ>œé.¢d,f,M[ ;IêGKQOc)rêá¬ÔÄÈ”mÅ5Zß;¢œD§æ±÷,"à¡ù ÁY8¤›íp‹$ïýV)6þ¾}ëöMõÝ’×^ߺ«× OW4?H(`ô~¢Ùg¢:[§º¯Îh†²ÌP¥Ò [Ý9LU )õ[`°ŸÇfÆfÔ3-Œ¹œÍJ)IBN©$lÆÀX“¿{o‹òôT©+Q%ÃC˜€ÍÏ7Åñ¾ì…EY!jÑŽÚÿ×zÍM¹v«÷~\djÒ› 31¼4dt.G²ü•'²1Þ'‚FštM¤q"m^[ËÞY–ƒ×8b{rôGMê­ Ñ>Œè­w“‡Pk}Ò>šé]u¨×)bãê ]§ôŽ#©µdì°½e3:†¥ëñfæÞÄ’Ú“"FI( 1nÇ‘bLÆ"Ñ”SÌÆ"WsF¶£Ø÷?-ÉMÐé§T­ Y@IZe2à¶änÜy¬¤!JBT”–¸$;ܸ ßs'GWÄ‘+"la”ªÈîµ8hÛ²åXƘ™ì[aŽÊÃ`²zIˆ·u€0€Û#}X7cd“™vtá~=ñŽ=?;lÂÜFúÚyÃJ­¯8ç"«´o$gæHÝ®&w’%S°7ƒ% £áÜ‚}½$@²(e2×AË“H»¡10ß»HU“á!e‚Ým¢¼é$kÉÅHxŸ¤D9çl@$Ë4µ¡›±ß}S¨ð'Nåµ^·Ô:kFi=ޱ•ÔZ§Wf1ZsLaqµÇvþK;žËäja1øÿŽŒo 7éÖÌ  ÕhJMzáѯÜÍVèÿ\:CÕËšy1Ö3ôŸªº¨—p‘d~LXkyhô¦£Í./ùÔoÅ„ÈdÒ–>åjy Hi25lL!>óhäó×:×KKQ^ÊÏ¢r¦M!¥òZÃRKf.,ƒÓÌFræ^Ü.‚H`«„ÈÛ¯h#£nœ’)àûeÔöõ[©){¨=xê%¼X†~¶{M¿í²¶››žt[£ñëY²ñÙǶv‚O¨«â®âëê|ZâãÉÚŽljÍÔ¤ÐøcIN¥,»¹hö‹ œjø ^YUõiS‡p—H/ÄÖf8µ€XÉB`HÑË´ T¿$ÜB¦ÒÕ315‡q2Á=Þ58ŸN:¸ 9JÄÍ'33HI*9Ë Ç² Ú†8¦ZP~”Ÿ)&áÒGòÜÙ•P™%`ë,…XqîGinŞخÇ&E7Ž/Ê‚°H¼Ã¸†!ˆ¤‘#˜ÌÊÐ:G ^ ’)G;¬Õm9L¢˜Ül5\Gfb¹.r|0X¸ñ/".a¤»½‹¶9 ¨Œ"@倒?ÌL,eÕQí Q H9jx¤#‰".îà ›Êª *¬l‚1JOöFË!"6jÍøà³"¬ÖÞ­”—ûÎï8„n=¢'m̱ UG÷gUWùñ†ÇXxŽ21rô°Ò³vË3*l6* —tñÜPU&ãð”ö޶NË<¢oRRÉ&ÖäöÜA‰fÝ÷ÃèظâCY¿ã,‘ªÙW‰·XŠ–h;uT3¢Í$Ë–À¯ÜQòëî. —1àÔÕÁÈ%q ¦È7g05Žã/%'Œ†¼¶{;<¤4•eª±x2„¬ì’(R¼oÊ(¨ÑíÀ:Z¸”MÒ¶Q€jÎdÃð D¾–»¯(Sâ*Æ‚.ßeቑânã àЉCcì–šGhUPR˜ÀQ;׸k¸}·ÄJ¨ê ”Æìûwa¾Øäö‚~EHÙLe·F°{ŒU œöçZ­!üv¸ä±µkk·4{·,&Bë(ugFF‰aUøª…Fð2¬Öj£pLÉÇÈ{“#õFgbœ™Ã;†b>AsYHÎxÈTö§“ë ÈwKÁš ÌFQƒ `æJ•©(o¸È ¶9$F,ñ||®ÛU ¼´܉33ˆé¹°°{Ë}Ÿ~ÖÆ‘ïBWïF(ÒÈ_bÆ-åW¼§ï°Y3Q™r»¾Û3)í߉Ħ@CO0b§Š°Ùˆ%‹ƒ(¦sq$KG'‹Ðà šÎÊ0d–» ’Ëgx–AÚ½“Ù“Î$Ë·´M_ÝÿOVîé¿v3rÿ¨¼v…‰y£=O™Qž}ÊÊÌò”GÛŠ€]ÊÏ$™l·(ꬶìÇ€4bRÍ·8«+ý?–h¾d/£µUŽCÆÿOu+¦½×*ÇÙ þ ~ðc "<Ú^¦ÊAþXª’5­Å©a‹r7þ¡,¬¥Ý×Î Ûǰ÷C:3Å4ߨºÒÇ4ÒØàÜ‘dŽW$¼­¿x‡9h¹cGm ëÉ#‰AüQö¢UâÒ0*ðH‹ESC ‹9ÆÆÜáÂ1’¾\È ·¯<ˆˆc’AöIY‹³BÁÂͺ€6@ùË°ŠŠ…³Y^^'Ò‘d–"Û¤ÀÏ”GÁ™” ¬½©eNÈfxHîj*Ü®9Y¡â/H?î`nö¸³H-ÜÛõH,SÄ?¿hâw¾[ ¼ŽUe,%ftgX#UØÌvØI^$ÝïFBÏ-“Þ£¼ ¿§DÅÔp¤•#4I<®Æ>ð®‡íKe¡V+^Gj–h—šW7bU0¢/Ù†gK—A°HÊÚDe•ö+Þ "¬ŸÑÎ //K’"YP§‘¬±Ê#xL¼DRF…d<«r¿%¶-ªZÖ‘“wQ @Ôï}÷„n;˜c„·r{K‚Ðo?Qÿ?%ú¡Ôý]§ýÒëÛ)®ª>Ñþåý±è::z‡Zõ>+ªôq=GèwHïåtßM:üÌ:_ªý1ÔYž ÅªuN©Êa¿’¬1}eµ‘«“^•é ºëkÆóBÑ×íÇ,é ®djëiÙB$ ¤=XÜO8—áeÁ#ÕÖ>ãñ˜_tzk&œéÃe´ïR:mÓºÔ³X}C/Su&?¨)ÇkÙz‡§uýh?án˜Çáj污5ŒðëK—Ìê=-bµ-E¤iæo±HëÉ*ª«"E‰²©žÔE]€·†§¹çx~ÄAúX¦oMSSù¥Eܱq’Ö?Qq‚YñP£,ÈJ˜ƒ*„Ám÷ó¸lkž"d‰Uù4ÅK«>ä YD‚5 e°ñ¾w7[yñ«Î³Æ0f›d8x£úˆåxxÖHÄsLD&Ò¡q^YcÖ®Õ­È÷o[2Û‰-$AÙ¤w—²±Ù$ñø­´„É8Ùpw8E%™ŠùP/$iå.ûªÉ´²+KÅ@_„»£Ú¦>ÒIÇ#pf aNþᘇ X¼ÚI2 ¾¢áØA$’8 yŸl7ã¶c^ÈAîö™ƒ™ …ÇYæ Ýò¹ZÀÚºÇM‹zûÌôûKôs_kΫåõÆŸÐ]=Óù®¤êË}:ךϧ:ÆÅM й¨&Åbó½>Ô_;1–­Uñ•t„9‰Êæmâ¬-{·V †¹¹^_œ4ŒíÊÃÌž!/ Ý …vE¶ûVž·*¯Î`›DuÅ-QN-=KCÚ¿-ê j—P Øô‚`Óä<³Jøû­B*ÜŽ…º*Ìp×u½ü´ñWíÌ3fg/T[B&—íxyÆœºVjÓun!ÙÌD¸»¿/{iÑZ»Cô‹MÁ¯sz«Tk½NmëQþá×ZÛ_äïësDiCÔ,Ö¤Õ“i'JÌ%ŒæVî[Sã꭬ͻi'²çÃ8X,2E•ˆ–:áçEV«ÚgEŽ9bm…9”X·­ÅŸº }¼õ#Uõo¦ÕuÖ¯ÓXÍ1_=˜Î¾‡|@ÊÁ[TôþékiÍyü~UåË`ªk:1G¯†ÊörÚz•¨kÙ­ ¥™á'bT14Ÿ±.œ¯?ª«×Ü,¨TTaœ®<‡xÈ-”e©k)Ð T§rnNÂÎC¶Øzáfµ@­)V§!6³0´lKIÛ ÷#e+$LˆÜ–RìÕâur“:àm¬Ç8å¯ÞkÉqVzÃø¶~JùB„‰‘#b"Ue,†E&Dí³<ÙDó=pæ³DEªèóë&²´Æá"ÉÛ’ÄTºX @ò¤la¯Øª­ŠQÜ| Å*2ÁÄ+#à ä3‚aEuš¬ß[DDHõ¤É"ÇÔ"MÃxç´R·&ÌÀó¿mÎóŒÌÄÙArr?Êe;Ê„wa²Êd˜¸kÛh„ÙØwIJD±¤©òCHuW©·ýÄYÏkœ¦¥Âã&ÿPªûxÓøL¸ M…²4Ί­Ô,M1ý¶f0›ÞФpšç)ª(E‹Öófs˜.¡RÕpi½o.o®}·$I.ì†7ic³ÛÝ©ù‚_© 2 ¤‰É)[tÖùý¦}Íh}qîk/¥4®šé½ûØ~­jßo÷39©³Xž¨ÜÌtÖ¾c­õ&ý3&ƒÈÓÓÚÛKgô>+¦Ñjxú®4Î>¿SjÀÚ“T?QIוÒ&ª\I @ßËË3ã~E J3 OXÄÿµˆÜÌ–´¶ûâü,Ê…¢99£Gh~ó3F޶ ŸÍ¢‹=ƱÆÅ$J»í˜ì å1I‰ à/U$p溙dEil¥g„ËXL´ç§dbä!‘] ªC†ä¬íÙl“ÆDú£­‡ ¼£?Z÷~5bMNÊŸJíĸ¤(x!ŽºÉl¨Ë²*öûÃò¸Éž­ðËüe&R›\0 ò½ìóF©rà0‹Ë3Àp=À·l;5†ŽPðäcbýÉ“¶…&˜G2´ÁJ¥¦^yzê°T+ !>;/ôVVÃÛ- $‹ÂP dxÝ0sò’ÃI¬åm³°1…’W±o …BRÉऄˊUe[f-ë(לC’áGH“»;¬à|oÆÀ¬üTkÖß|ÜBE¶âEQé2„æ›´;—°ß†ŒD…Äïïû<˜ÅF÷‚šÛ7§:%¢:u«ñ:S+¯zó†Àê nG¬÷ ù­¡êôëz›3 ´GR:kB}eˆÕ E…Òš¯%ÂÙÅäóúoKê„Ç^¥^Ó $žÒ5î¨Ý­•Áãuv-4Þ¯ÖÝ>¿¬êö§ëýëz—BfæÂæ²X>²kIlj©é»¶"i´Î«¾µ Êá¸ÈôkÍSÍ÷yÕLJ:£%ÔZ3NõN õ[ÓŒWÍ‘:zžbÞ‹ê7P'Íd­`´¾®Ôm[ƒéÖjµ\†Oe2PÝÊWÓ±DD–;…žŠêZZ«¥:7=BŸcéÝÄŠ—K5Õ?ÆQ†R©ŒÂeÓ‚•ªVqÙ¹Š·„Æeq™ë~WVЄ§ÿÔÖõXšiŸ¨ »O%„†Áôt3­õXÀ)ýÀ¼ŽÄÈ™]LŒbeV‘¸O&Å„ÒvÌS3 L '#Vä OnQ6&gJì¾¼“4̱9ã»ʊѲeaáÄ$´UÔ…ÀÛs$‘Ê…ŸftÄ‹ã 0B#he¡˜þF"4ˆŸ¿v‚ÊL®@¸‹çijv€Ü©Œ²JŽWnÛȲÅ$’Ùì²€Q—°ÖÄcúx$qA±¨òÝi²âpáH‹F"Xd܆~xìÛ Ä–(£r,·Ž”|xü6þü$ŽE`‘L¦š7⌭\„xk "ËMØÚKå2aҤ̉\$7Ì勃 K0ïÁäîAbóhŸØÅÒ=iÔz—Ý^œLÅí}¥tŽLuJh®’ZÐ=J¡Š´uÌwñÝNÕº‡#¡(iùu²¹c'{ “¯©oa´Î—OèÌ¬ÒæëÏžÍ_`Ê’mÏÚ‘?2´g•wæ±ËòÚ‰3E\'o0kÒ<ˆÄ%.¶áõ/_?á^N\Í&œÀkX2=UþF­œ= m§åÆÇ­ú_„5âœärúnÌL]BÈ%ÚôñYówJ6><ÞöçÍŠ#ª¡b@U][êW”@/ýMÇú!¥Ë'r­Ób¤~I*ÑQ«|b+T]ÇÊéi?[÷ÆÌÞ­TÏÃøIÒÉy:Z_»ÄÌ~ñ2:)Ùˆ²I•¨èÆ1`1iì-€‹\ÇYËÙ:¯ug'¨µ&£ÐBÆ¡ÌdñØÌvRþb†W/‰É½Øðö­`ì\„Tr¹,›øýTð>_2Ú·÷ñ‡é˜lY‡{6`{ -Յ䳩¢ùK ˆ¢yw»Z×ä†'Ì4‰&(rŠEjÐOø«—êö?Rcz—Õ~°ôâ]3« ë?PuV>\BõQl,'@c½©èœ­» &#JdB¾S/‚†>œê 6”c«¬º“~9r¯ô„VRÌkNÃÕ´nD ±Ýz°×,¢GdLsS°Í#Øb"ÒöOaÈÆQó¯ ™šá:פtþ/ÙVöñ/SôRµOE5¦#§×_çt–jßî×êL(è9èõ=QRZsTÄIŸÕqfò©c Ù™FwaYÕ_'ë @“¨¤ŸRbÇ‹Á.DcfSWÀ®Hu–,MäÝžïwú÷È‘–tŠw¶ ðâk)!bS3=šÈ²W¸M(Q+IÍÝæ¡VSÍ£–)a…YY ¹†z‚Y«<ôa—†ÆÙ–X¥'Ö{`I>ëÊÇ’1H¥y$)ÁÌlµ-˜á)P•BÑ*›„oƒ‚½® ^UˆíÉ=fFb`HÌÊ–{r²‡Ç¼lå_»K"Qw+°'V¢Ä‚ Ãî Æ0¡Úæ&LoÀ6är°åX´‹îÜ·Œ±c#©2qòòHå|Ù±Ü –Mþî}'œlÿe¦HÞ#ŸE`Õ(¦˜Fe…ÙŸßV…âÛ’G[†fFx¢™ w81ƒr ¼ >ûÜ0’a ý7$) du´3ª+™Ó:‰£FY’ʆ·\‘–ä«XØzdêpn–%Œ¸ØÆð?'eCyÛp÷ý»œW?vZƒ¨š_£9]Ó}aÒWtþ éŒ™ËÖôýŒÝì–ŸÍu›§zW1ŒÓ¶†NŒzn{tóY*55ê»Uc·kGZ.Ý¡irUŒY,X•–(òWªÃ §r4HìÈb¯ñ›ˆdX• ø´y W)#ˆ®>äz—¦zmÓ†Èk®™ê«i|ÞªÐz{1§±Ôp¹Œ^:öS¨Z+‚Ïk«9¹Z Tp:–î=K#W›Š|†„S­’DÈÁaíBÉ‘½ îl؆k•¤´Ó´k!Kr¬®²°k0ÇfU’X¤™Ç²ÿPµÜ·¬´ÓÿW[ù¯èK"úHx:»÷틪8¡H©$:”5‡!™Èv‘ç (Nad2·(ƒ ”Ë'çUŠÃü®NL¯ 4W.–ÍQþ‹ ˆ —cáÑ'8•Z.Ø#·þI­BݲP“¾:=Ô@¿L¯6 TÝNÁŸ˜pÒ y –8ÕbYœ á±§'‹ä@JL¨V½€$"xì bIY% ªî Ùcµ˜Q²ê)*y2%/¶ó´]·±;ÔÁ˾ìæïíoéíé×+ H±°Rò2p‘c£0¾þ·ŒjD‰$,X7ëðT!YRGI+! ¨ŠcžÞ%$ …ÏÈò¿â<ºOùãy ÈU£ÙJμŒ\OY¬¬M#U2q©xÌV™í„_[õ¦®±·ö3 X•fŽºÇ)Y#Ž) ¬ÿf*Õ¬X&Ü·¨Ø)U#Û-dË$òI¹?ωÝÎ,HQäÄFðÐgÚÏß·yÓqøÝØ2žð´Æ@œ{ß"GU’Ù+^hâŠäÖ¦±Ï³z¬^ÝuT2šƒÜ¶ªZ«Oë š¯1iÝ'6—Ò4f¡ít맺›Oà(ãr:‹Wdl=;ù¼ŒÙ¿¨^{9÷»k'f¦"¥œöSvÚF¡80Ì Cv%_u’š°‹.Ö±úút?¨:'¨9®»¾ŽéæW§Ù+Ö:[^ÝÍâ¨a³ÿYG¡´=©u¾GIžÝª÷tĺ{NÖË_³g#«±4Zœ4¢1TΣêÒI.™uHÜ—µÜ>5SqJ«¤(RF¯Q7â`N,Âå[s#d«ÜF.óL¬xüx’mÚÕÒÅñS»E‡Ø(A„¥J¢4e&€Î®®²ц.³Ê\d$6J?ë¦<×Ò„r/%nç)䌌ga˜@$öÞXâ`R¦ºÀ 6^K‘ë ßA¹^"ÎÈ[Š'"Cð[0ÁÌwùqL;P„…·:ÜÌw7É{_þfS¥§êL˜ý³· »l… åöº¼.¶"šUfALl:€öbŒ?9Û³r—<]hþr©—Ç2ˆ"0é!B÷TGîóÃzìmÁ'8ò2ð!=-‡–>Q?ÙÊK …\ #ã+¬”ÊöÒHQWuƒÊÖ~RÈU¥UiGYðŒ9ÆVPDŽ'àÏ 'í4ȳ{™aPFþœ¶¸&ì"^DbN¢ ˜—ÚÆ.1JýÚæº¡O+¦q]4ê‡RôÎVæ„×ùmÒŽ„tëDkn°uW¨Ø¼¦œ«§òYTt®¦éöé–#f޵Ëëyt–“]MÒ5?Ÿ·jÝM+¨m¾š:¡ôþš]k*-bº5œXZ¶ šÉ±U¥[ Ëuñ-—Kñã±Ó–¹šÃÁ_'’íߊe4§Ý¦˜è¶kXé«ZëÙÆÝ·ÄôËYjü¶§ÎǦð”4HôŽWO®¥«þüÖxÛ˜9sY ùVSOtúÍÌ%­L^K+žÏâk`Ìþ®.ƒËi¼öÑm×Ñ]¥òš:¨©gm%‘ÄP·§"L|äZÃ×\]ŠUÞ”è2Û¡èªÅZ7c‡.Ì×õvÒ f`š]æ^Ñy€? @¥Á:‰Q ô»†"Ü1.XTþgb~dßf3€B–Mà’hÓê¹@~|eŽ{pªG7ÑçU#݃F¦(W»?ÊÐÕgïÃp4¶æŽ£ Û¤i‰¾ÒvÞfŠ0ÎÈ?(0Ž@¼CÃã˜bÛæ¤ŽàŸYK c @å's›2!ähÁ˜˜VFk­³æê»S‡iS˜"D¹Kû8!ïkIúu0:®Ðç™=šw6‡ÝÍŸ„ˆ !—º °‘£Ê‰Ú™¸…XÃ7#’+Ü*™pÍ*³–‰õ'8úS@ë-EWPhíg§27kêÞ¡ØŠ¦ƒÒÓ¥Sñ3ZÊÃdðñÿIȵb ò´"ÍÔÔÛ€ó 2W䡤ýžËFÄ…䌕®©ÔˆQ{˜ôgŽ*Z®Až@ Âõí½3CEêëzÓsúF¶œÍXÔøA…³©Wjȹj ¦ëCb|°ÈDÍVJÃ-Ég•R¢vX°¦§È¦,t™s‹Çå±¾øÑL¤¹%ÈÜ$À’ùçlT¯lšÏ®§¬½dé?YõWQuM=)¢:S©ô>c«C¡ÚGWê‹YÿV0ç_h ý¿ÒƒIOÑÔšsHÙéœÚæT×úy­çp9|^/Øøó<¬Ç퀌œdXÕ\/á—»^°~\k©KP]v’öÐ2§ªìÞçAhgº‘¤ºKЇC5–7Kt§Rk ·âÁg.dz{©¥ê?¤ºs-©ð·o./7£WHëÊ™®…^MÒu·^ÒØÉ¾v Í|»a"–—’ˆÃ´²H ËòYO›l™H…uf4d µz–Å”â@bHxfv‘þ-Í1¨ÁÐBRïý^‘1Ü5ûq‡WÊ“*2gPBÆþY ÊÒ7 †ËFÅm´pžŽÖv>’¿Un1²D¦"e'S+Å:…•¥B¢>D¶£« [²$‘ ô”“rG+Ey~ ·ÞПÅlà½H[‘ÆXÜ&&Ø8d•‚‚‘ÆÌŒuú)ãa˜¢lc.CÞu@õ¦)g´Ò°ÒCïÍìya¸öÆVReãrîM…Ú9Ãå{­ÍyÿÔ $áø€1˜ì ïÝx·áVÜÊ"Çÿí82€Þ¾zû®÷ZÝ.êoJºK¥µ®ŸÑ÷ß©^ß57[³z§óë'E5×^4^ƒÏè-ÆŠ/åõvÖ­ÍjÍE¼úGéGn³iýcªtjŸÐg~çp dO,4‰$//á É8O¿ÃFíYˆ NÆMÁ®ê?It1é©:iõ†Oªqè~ÐxJ8ªùðëúÉ éi^¢d/ބljÑý.ÖùM%©rz¾M ¯•\.®›Ô8Z–ñçBÿ騚FKv2Ì  pûÈr€ü`T‚·I€d “< ÷Å‚­$!ŠÌEì f¯eÌ%¥@³ €ö¦°Ñ^Üã·•\Y©N$ôùøèIqÉB†É! ÜÙ`e ‡‘$šö~òdúK.¼†Í~ÅUJ§n5 M^7 ᣠ€1Š0àüXyrÆLºÍŠ¡ó4ŒC<˜… 6PXmœ³/œ‰;»íÝÇñm­`+J :@`ç†#‡wŽ]È¡AD©Ìdß°OÑ¡ð‡!Ä#v£/Û@ î»0dø±ÂÛ ìÈFœ³!~÷"±\ Ê#ò)Ië÷´ÂHßvŠ9Yƒ_­y­ÎEÚÜbm‚‘™×vmØMg~ÑÆƒþ”ì‘(4á/ò55ö" é 6G~E2Ì&IJ$ѼsifƒsÆ–A¸Ë ÆÔvp‹Ü¶Û’ \xxúm¾+Hr@pG=ˆäHÜ{N>á³}KÓ] ë¢4ëd:ÁŠé檻ÓóŒÈ,õ ¾Ûixg¯©®c´Íé†E`XàÎÛ‡n®ô²2Xƒ öû¯µ{/ÕN›uPu71Õ™dô¦O9‹êž˜è¶šÍbôF¾ÂÏg§¹]À*“"$ Ò‹LÁõIÒ\/¨°ÝæZ1öǗꆩé6YõcRäu.g¨ïëm1K=£4ÎŒÔÚS§ºŠEÈè 7¬4æ‘Àé¬u®lfC©0ÖÂT¡ˆÕYLÍcØ©…¥08Ûñ1Ù0 ÊVWaùFèQÞ.h[õ^ÓHfÈí¦eC¿¨IºÇ„ë®'­°Zk^iìM}Yªô†Ú÷Oc4ÍÜ®WFê ºPe°ôñZƒPV·¦"ÕXüÎ'”­w³~î"õÚÂÖ™±ˆÊdfÖæ«È¯4’óÔ“#íùæP¡A” þ`‘c^?’Šî©dB~ 6QZE0êV¢¥@‚ÎÎì88|Ö³]n3«å0 Ö´@ܹÂg Ñö8·(Ã,HcíÇÊ4ÞQ$LÜÂB§½-(ÚUÁÌEµi}š0¼a‘ƒndyÝåÝì«+Hœ]X›!w’0¬sД’!J9í¤NÌbT:ÿÒÛút×rç““Ißst’* «3Í‚´…åE%Îü6@’C6Ìír¢ygÆÊ ÇhîºØKýâ@gqõs†ÆR.aÈ~Cvû³ãRG0 å]Þ!ÚŽU<ÒcÇÚäŒêL㳉—ŠYc¶ÍóŸ¤Ýꎣ÷ ‡Òz¾î¢¯¢õ§R=Åôÿ 6S§ ÑœÍΓæõ‚iÜDµî6üpÕ]K8©òýdÀõr®?E\ÊéN«ÏÒü­üV›ÒUn}I%ã…Ç{¸ÛÙYKl¦ â,TÊ„s‚‹ûp=P~‘Íí¦×^FkB鎲ÒÌeµŸ^«èì¦1%Ž„ÐêvPÞÃ{„ÊôÇJK¯sMÓ­_œÍÖϹuå~ŸiwÔ¯j:²ßíê¼Dº¤V}Krº+| jI$d¶a÷ì ,˜I§™ÕH¬ü8Pèk›¸½ÀÚ`bù|nl³G<î^±„:‰ÚÄP„P³“-qf«[ª%}ë¾Ò½&U¢‰ÖÝv“í»W ’™ Þf­,²mCüÁÝ Ðˆh÷6ØD”6èÓH¬ÌÜ{B&ÎUQæÆ7`È­y³n¥—´¤#»»8pÍeãen,5°¼ªø‡(Ìu_ã@H¯è’IReî&Akµ»HiÜc’&Äûx±ï˯r¥âÞF˜¼’ð mv”q”ÅÓ–ê×*&Ÿ‚cg¤;p£_VoQ_ôóF‹Jû¬QqÆÿêï¢XIí2?T&a%q.Îñ¸<•¤+)ó¸ßoR—âÈèdãV8^ÆëÂaû9ÇfÄHMùHŽUÚ'þŸ6ýµî¼+»´êﻎ$Ø‹©³w£’ªÞ6Ø4ª ¸Ù‡þ}sx¬¬¼©ƒö@%˜k`×H 3 päSc·Î•3ïæçÏÐ6dHbÿ¯<[`9ÿ¯Çì±n@ ¸—>³ÉX1^HHwSÈ_­Çëˆ_!v+ûÙÜ· ²1ñ·¹ò‚H*y <øŽÄäTcõRA}·û±òd¯ø;qåÌúƒ+™ÙÚOi·l9ô.ÛFITÿ»ŸªwbwÙWíý¡@?¾ Ϧ¤g0f^[ì7v!Gë?¿$î~ÄÈ’7õå‘6Å‹l Ñ}A,`;®Å†ß Nû/fäw}¶ >»“¾Û·&ä9y$ïû Î<~½,-+ÿwÜÿl|eö¹çQ{×`eVÿ×÷¹´vB“Îî5Tr…G"²Ç 8áøg£³·Ë®K[ñóà$G³# ¸Æ»‹^¨`8d +ÂãáTïê¤û\XS{Öfí°ÿ×§¹á`;ÍÅ"[p ©þ æNØœîmü¥kÿEev¶¬¦uT(Í"¿˜E™gÛr¯WqMÛðj©0öÈØÛ£z~X})Y¡,-ÛûÞyŽ _9X; A‡JO˜3>wÆ'i4(±º1àÀŽ;ó” í""IÜç!ž¬’C•cØñ顊ÅIâyžë ÒfæË»²JNÒÌÛ2Ü²Ä œ$5@Ù‘‹Æ€¹Š!¸‘ã(•S»ò[y .‹´vÀi²û*YS+ðŽEw#WÚ%Œ‚‡tP›²°;ű'y2:ú0—oO©™‹@¯û=øÆ"Ò&X3»¾Ñõ‹4ò4d§1l…¿ŽHâ]ànl’ƒí„ž*ñ²_ÜßݾÙ%v ÅšQ$…!EwÙYž0dX’Y&þBP{”m°Ž¨ø²ëwf%Q;ÁˆŽÛR÷v˜H @eÉ çO'Ö6 NáåŽDb¨Ñ´‹2ÂEuVBò@5ärjüy–k¡õ`/wâ ^ï·{;îψ±,H$ ä÷ËF¼ÏÀHÊ‘²8^Eú<¬>ÒSØÄè~Vü‰¥…Ìl˲ÈÁV&ïªù”€²¬œ@ Ã’&Q¼J„ãø‚WÖØZæee#€ÙO}!âNÁÖBÉ“êùýߣO¶ù cNÜÝœ²°ûq@ÎqlѫĻ ª¡0׉–ô$̧Ԉ. ô€!É–‚XnY­'$´—ŽûH¹h·÷ÅdÕ>ØñúŸ[jìÖO[gƈêRzoÕýyÓQ‚Órc5½é&–К?BÞ©¬¥ªÚ×Jb±õº]Ó¬ˆÑøk°áªætäö² ðç²I5”<呿™’MìO$«2Í$¬^ÈaËÁ™‹]]¹NH–Øëuœ.êª|ð™]¤Vxc±•%E’ø|Ò1Wã"ë(T}ÌA¤bd~,m„‘d#‰Ù31çñM¸õM,µ*§Ã@J–ÊQrA0÷q>ûÞj­R¨HY„†Hà0úÛ|h=V ‚ÝåuRªé)’I?,9žÜ³ ¼…%tøö*žÝ½ìÄ6ó£vDR@®ƒ¸ê#ã',2q/ñH¬±ùÀÔœöŸO²•;ݧš>M­ôʯWúWÔî“äó¹}-ꎊÕ=>Îfôͨªê ºoYa¬éÝIü-ß& ÙBí2p·v ??$7èÂèEm¶å`Få‘+F®ƒW?tÀZö[ï;–©`˜oˆ¹MÜG&Ì‚Tei÷ ÕŒvO)80s¢ ^G¢°šˆP[()Á¸ ñw~14$-.Tƒs³|Íhç´c‹ÅÉ£ŒÄâaøØìM^2*°ÂÇ*éVªCËŠHý˜Wâ¸Þ8дV˜ÉûÛ”;X˜ëP c(ƒn e–e ÑÓ–æhÔØ‚ÈháÚoI±;hÚ'âL›ŽÓ³¬läŒCá™B’ÄHCÚÜ\ˆ/&´°;¬\6åÂv•ã!DLaæ§Êzñ· wøÍ^G®äÙãêiN”%( %!’‘qIx‹|b$‚²¢K—*,ï¹$Çc7ÂÌ6$hÉ‘]&hÕà•T±I+Ǻ‹1ìºqþ:ƒ·•NO3zSÀÏñ{Œ®a’Bçä*±I—ƒ2HÿV2/ƒ#n2‰õŒ$›L#2EÉ©†hã;s´†¤{É´‹H’Ó8ïM*Šwg&Èð#¨R,#)ð$äH‘tŰç?¿HÈ —%¥®O—ì1"@ qÁþÞÙ·îЊFhÙY‚“)pcwjé›ê‡é¾'Ò­u¥i^Â\hlZ\uœæ{G% W–ööåŽT\'Œ÷Ók7§Ò•£ÊØë Ëëw,“Zë®F\ÇPJ¥¢ÍVóAPY¡(RŽ&¯¤+ä%/ˆz­Bi€”£ÓU•1Üik¹}™ñ½iHÈÓuçå- %0w³m°Äæ ÑÆÝÆgæˆP¹Æ±w%îGϹNÔ¥”d1Ãí`Ìë }6ðLÂR†¤Y$mÌeq›m÷1Gˆ>sï  KLŠåÓ5‡m£–AÀ¸Tï!2Fæ1( ç˜âˆú‚96!eEôâ³—æƒ褈Ná’ ^+'”0D¿^SIED¹f™.ñÅ»xw}ð3¥œ³—Ÿb=¶ÑÃkY¢íª‰J3,{)JÝ¿ÈQÐ2Ú sø¤˜'ƒòJZUÓ¢½«ₚ5‹¶&­ $ù\Ú¶Ë,°úó°U.°/zXäÅɰU!‘e’8ä1~¼'‰¦Uî* ï$À1SýTSãjì}v°YaÏâlO'â©›¡fÃÈ §ŠkÆB€„ìB&–ÏíR®?“¢bT¢եd!$„A8vJF¤9!Ö‘Á¡.m˘ÇÎnŽjcºËªÝ?Êt[_âáÕøê:öþŽÓ˜¼n°ÓgZ¶¦šµüîk ’Õº{‡Ô× °dÌU¥¦²¹YÌÙ+Y+éŠD°·è,+JÊÌÊäM€ŽX‘7œ€xœ„ G™»rRÜGÍ®“én­ç:ì/¡®ŒuOg½½äú5š×ú˨˜ÊØM9 ã醄Ëà3«ÓûW-ZŸVæ5-¼µ|~2¶ŸJÐçpÕ¦¿–Ú5¤‹ô¥æŒ´ˆªTn’9Ë ïŽIOi±JÛŽÞ9ƒÕXȾ‡tÒH¬~¦°¯JTIgTÀ—‚ÐÄ´jζªz”TB4€N¯K†r!Ží»Lã#þ™'‘¸¤c¹³ý»Æû³BöL#ÇPí ãƒY•…ÐIrt–VP,ªé+4Hl¯¿ÈëKÃÛ Öe ³ÞêGUt‚P+ý[ë ± ±ù‘kË+ÆXµµ·ù¿ö3qW#“ugÝ¢Ê>Èy<‘ÌL •2ØØ„ÅXöš ßÑ),å¦b4¿ E˜cÞìc‹3³»HgÂVŠ)÷G(ÌL(ÁÑFT Õc¼µâ‡œ,óòŠ]Íh÷«qº¦†Õ¹þ´ãúO y}O§©éü掷ÔÝ/Ôù3õtý¬¦?7ÓzMG™Ô÷4{à*äk䱘iâÓògr¯<‘QÔÈ'³Bn?S²žÒ‘Ä´ªìêâ(ÓŽîË4HÂ_|ÚÿM3P=Tn¦ãµ¦‘÷5Òÿp¸ýÔ.§i==ÑíyÓi0=+ÀÍ«5ö„ÕyÝO§³5µ6›Ó,Õ¿bmˆ‰°Z‡=ž/ö¬: ‰ÊVýM°u C,¤‘¬îA`Tt‰ xy–Æœ¤Viò›À` ¬C£_ÔÇ”¿z×Π‰[ø\¥K—lV¯¥&¥l}Xà©zY”!°î°°.ÇûØðXÌr¢É%‡¢ÊÑ%Ð>¿“FRŸ7{Iç³™¾‘cz)>¨×ZÃRÔÑêÑ.jÎ'/‘¯%mg¯ñÔTWÂëÍNbkzÃ2K¿v79ÑŠ6"SÜ” È~q,å‚H$VŒ~&tEÏY7¬´åŽä$ÛWÜ©#/H”²’bl ð_¿ŒW_þõCÙÌ›3‚x ܳa“• ɲíÏÌ\•"jÛ¡Šµz~[8i,‰·ôÔQKøƒèeiÈdî'f(høÿñ&#óÄ9ÐÔo¶'T‰v(¯'Ó½4ªƒʼždÚ>) {¹Ø„JrlªÂy³!ŒÂ¼wT`Ѹí»ÌǶ¡Ÿò@Çhq 8NX=^T¢r—%¶QqNßßؽÀÚ[µ¼Â#Þ¤Ù³ËI*°’_“ ¶(™~CX®²ARª­ãËÏnO•CóoÙþC¦7uþbÞ“÷=¢ºÿÔY§²y}e¨æÒð}NêU¶í[9OVæ±XµÈi0©©£ÌØ|]7‚¬Õâ¬ÑX“èûÞEïI÷ÊÆÌèŽ8QÈÍùk×’`±Yíï`Ûãj¸øNÄümö­ÒÞºáò^Æ›-ÓÏpx+½ÒÚÇOuGî¥Xí¡4n7Vi:8\Åž˜j¤»>[7ªêÉB½|^ ’Í…Ìã ·’ãÛˆúžR“›É§N² ‚·‚—„ú\ƒ¼œÊ”¯/]–• A†"K¢þF>Ç|p%#îÄ#<Ó0ˆÃåŠ(ë£wÛ‘U8µ;L·å=–oX±²ÅØ…29þæ‘ÙŠ*ÛgG> ’š0ÀÜZ*sôòÈQžFTv1¤ÂXÛ¶ÂÊHå!œ™ŠV´è$ÊqliPeBò¼P£#„bbQ'5B{{´+ÑÊ©¼0‚;X7 Ë´›)QaÓr A¸-΀íò‹3Úþ^÷ßó„q#¼dª¶ñ‰YþûÇ$±S3E»Ó®ÈÆÖ¶of¼rDŸ¸S€ñÊx¤EØ+%ÉŒmw!k¬Kc$ ‰€4»äÌ›ÆdŒG¬»ÉqAŸŸÙk·îÔV̲þJ€F}bŒö%ž0#Y\ËÉ¢HÌ{ˆ§¶!•djÛ ¯OklZꤢ—‡ DH6€aÜ¹ç Ø¼3?ÛÆÿ\=ÄPÒ¹Îê/­õ¾¦¸=Ké†uVu¡§F¶WÕ=ª°1 Žëš›)¦cÁcðêÆÍK™&¿æ8ä `å’kkö$‰¢s!4±ÈÊÒE,³K%…æIYdIŠõ–ü6`ÿÙ†›Ï¯ŸþéºC®½ÌkM Ò*š'OÂÍ1¤µS3Úÿ¨ójzÚ>¦j*ù¾žô¸h«ÚY,fr½Dèì#UõV½Pãf‹Vèéí?ʆ»Gc=µä5¾S¢ý8©x E¦:‰‡Óõô¦¬ÃêÊ3VÊ˕Ѷ%Ó•3¬ò;¾NŽ¢Æc±ºžâê |œó\Pé*”ëfëƒD „¦©r•i‚ð[õƺ´‡á©“T š`‡Vö-;ÌÑÆ6E*>ëqw쇹 µ~5Ë}Œ…ñ‘’M˜•£È²J'‘A0XÙ¸ýÀŒªþ>êY7œK r“N5)çÒ upјÖ9‰vP§îÎ꣸‘ru7YTÍxJ¶ñábUÙ••™>C ŸpÑ#1c¹†Ý™¬Û¸*¯¯Ó±ù[Ý/¹v™,àïFý¤c’C|Ϲ.ÑýƒlӆКêÆ#.ÊèUÙx¤¨Ìòv®ÎPËA7’IBäA_O$†S+ &„ò±÷•‘ä ýóÈóì#’Á@«rd^ÔÕY˜#cé¨û›0 ehÌ\a*ˆ-£³‹ u“¸ ¸Ê»²Û{Jâ(Ùø¯m6@§”<Bo´P6ßÂ<²X¸YT"N—â×Ü™}Þ&$°û4~'–y<ãi\¢ƒ) ±³–p®«à¶Ò4¡åݶHK{A~–á4þZ{ƒÊauÆ#Vdõ'Wjå5F#z6»ÓüÕN™ôÿ ’ÏH–'j¹ÇÐÇj¦•"uέzë!YÂÎõÖ¨¿£´n¨Õ¸Ü ÕY)šÇé½'‹\ƤÏdk×qGˆÄ©Œ_·g `KE$Y¬EÞž ž¾u{RèÇY}¼õ{Käu~ˆÆ¶+ÜŸIîÞëO§ßïDÚ_Üf Xj¾²`¯ufö¨Ž |oéήõ‡¦Xܶ ÙÅßEôÇM[eJXvAÙšš3pšF¢uzªŸå…M˜ÙÀ ìøÝFžº5N°’D­” x,ÓÏrÑ©æ²Î¤(09“˜Q°g+òxâiGsàƒÞ‘ÊdwíÊûaÕ”‹2#si•’nìÂB 䣴öD`“+©­,Æ€ØU%„ù<á–%í…G]ù! B@Ñ[“gX“vHrŒ†Y¤gƺ„HÉp±VŸ¹hTlþ×U+àÉå)¦íF@-JBäéâðLE›g÷ö¶1¨9$Àf.Ì6~moË ifx¸+»Dݦ’Ά8KƒUAo¹î÷¤Ž‡•–Ãp§|ˆHÆíýÎÜ™\³´Òl9FÆ6+"ŽJ!pÄÈ?.G1Â6Óm!@KIæ@âG›Áá,OòGPÆF#uÈ4c{¨ZLnÅgÊ+¢)æ^†YüA`Gwˆ¯jªïÑÖÈœ0ø…ßËsnÎÄÞXà–‚{·mûã绪²ê¤hÜ6 ÷í£IèfÝŒ·C:ýþ훫uüæ'!†×ÙlvÕ~¶Z–Ÿ¯ˆ¹Æâµ,-‹™)2Ó³Z²z¿X{3‹ÄÉ‘µ‰¹u±ÔÞõ½>ñïM¬mÚÞxß4f|Lí5ˆ“%j‰4×bi$ù%îŸHêé=áê­U~¦`´ÎkÛ†•Ò¸ý[¡ý«irôµn¾«½-;¾¬–:úVjhlI~{M,5Ý h>ßD½¹`³úSÛ×@4޳Ói£uè‡Kt†sFÇz{é¦rš[BéÜ$šzũ̖­\ÁOŽø¶–Y]éä`±‘·$½Ç$NMDg³@Ó,J‹T 0fT1}†ÒÄ`†að”N·Yƒ‚{³ÞÏËÚ µ,ʹ*ÅŽ êI" Xòe¬ÄoUNÖÌÛ¥£Ûõžü²4’Ie#P<È{e»¤„,Šñ‚玆 =cÊFÙ‘¿B fY‹HX;m´îÌ€w ‘ì'w[k梇ôŸ ‰fX‚ªä”(ö)1 ÜèÅ)ÌRJùCÉÐ  a}L<µî¾äàm Í¯¿yÛM$‘¡E=¤<‰Bl¥ ªæ&–jÑ3*Á2/6QÖt²ù#©q-e‘éþk)†ÉVÅkÜDxë9M%•’¬‹OQÒ6­‡±wál¤Ù%ÁYe‚ÀaÝþÓ¸‘ fâò$CrTNÌeHùe‡r®T£ßÐÝn–ÔºóÛ‡X´†“Àdµfw;¢2´*èü5¸ñ™]We»¥qö^ZÿÞr¢KMjE:Ò­2–>¨Ì€šN—ô–Á µˆb÷#|[NV†ôú’"Ä‚™˜yqÏp?´5ŒmÕî©Xê¿¶g­µ&/Dicö±_;CFeíiÛúÃ7TµÌ:›Pg³y [­sº·5¦uÒ•¡¢˜êE³v¿‹<èê¢B<±;¢‘¼ÕP8Éãó7oÛITd->éF·èßTºË_Pôs¡Y]!Ó;×8 ÇQ²ý-~’c9«tõ: *ãaÌj,\ºƒPÇ%[´´…ÇcîÖ½¬Ñ.[ÀH“è§Fôf½É¶¡×úO¥=>Ó:ÛPK+Z9a§tn¬sSYß”ç+¨kÞ·rã’Õ.ÊÖ*†‚O$ô®¬€q2²»–-·$0/’[õñŸä—iƒsÜzÝNªUIH(%)d´ –p—Ûê¥hRÂãQc12í0XÆ4Ì“)‘žTáÙh•\°„³ÉŒŠ‹ÜŽ©—¶mpÞѰRjÿÓô…–~ÛFÅÙƒ² (ÒL’$18¶Ö–6_•‘U á,;έë cWuVsP¥Cã'¿êR’La¶ã¶¨6@fáëÂ(Ú–ËÛã†Îr:nÖg©Ñaz‹£ú`WÒ*eÒÞÐôwµöÈeÕ1½>’…]ŒœsTø8Û­Ç6ÊDY²ö ª½]FˆÐJ~rðTCÁû˜˜ÆÚhWàÔRaj =Au]ÚCÌ1x¹ÊAÀ! È¯È É*ʨÀößplÀ»9"jçØ:'°¬Å^U%ÑGÕ †S·dÆ[u{IƒLH>;ÁAl™Ê[‚wB‘³¨&YÊv¦ïÿŸ¨­0Ú›T†ÛÒ xÛ–Á²É·ÈæbxÙÔÈ…Û¶_‹MU;ËÆä%Sqè˜Z K1,Äü¦Zî<öï„ ê¼3Aüs{N4#™Õ+ø(&gæÈ¦7*±˜åñ7lÈe1ÌÛNmó¯.Õ˜®ôàÈ9/€Pƒb)÷‘Zå¸ÿsUSµ_ýÄG}××Kâ…*J÷«*RYÞeXÖÉ–Oìiûj^É~4õÙE_ꢓÖ¢"î̆6Ž>Ûv÷Uä߈ w€ý«ùiâ´Uw>¥­–M÷†°k·np‚U©÷0 £÷ŸFö››ÔkÕš÷OÃÒ*ø>¨uKÛ÷W5^µÎb5]®´hÝGÐŒ¶žÉ>#§9¼vJ\³ÀèÌ&·L<‹™×s_¿‰‚­÷nR¡ Ò*¸G"8±tñÒöuNÚÓíIÖ¶Æã}¡„«–TÙJü?3q,Çm 0Èv±¶ñâžH¬WÝ>±ÚE¥ÄîÜx´¬cÔ@¡—”ÌÜš±¾®·¦Ä ùz9zª’’“PºœÍÜ7bd´Ï¾/«^­MD ЛC3™ìvßgŽ=Œ€(œ±SÚU Æ@naK­Çæe‰+.ÇÖLÜØ‚öÈÒ#‹ÎYܶìÅd²Q¹EƼÔXÊäÙŒ[ÉZ9H:¹ šh¼§lìU¬D<%ßúqÁ(-±õžÚl§²&EW!Š2ÆðË +¼k¼°Aò”B›Ú‚áù µ7aëN¤\j Èræg–fŠˆQ7á˜5›ïr$û>9Êdäss™¸ÊÁ €9›ó8Ü-Æ?"Yªã··¨/VpºóUt¿¨úS¦šÚ>ŸõRh­MÑZåªcEꌖ&å\.¥øL2Jø”ղކ@+½X®DÜÕ‡¢`®­"…eW2·«‘%à{¬S`­+(üàÿOÛ"ZûI¿¬OZH ¨dŒˆUyHMuYî@›§!®LVµž1‘´iÔ¦¤”²TS,x~Öb“Š]*8 ‚ ~àn ‰Ä?JiŒ‡ÒºkBèš#£tVžÃi=)‹ù/3c4ÖW ˆ¨Ög-%©bÅQ§ ‹.Í6¢ÉbV6¤~ãJ„yVrV U›ìJyŒ°Øî©ûÑ¿ '’ÞG®»Ç-º‰GC_W ìvú§Çd&Èð¸©¶Ž¿8ßs¡/%‘ˆBÊ|ñxøUE uÙûþ“O¹ØŸR¢”¥(K%òY“rYˆ¹çÌá,êr\¹ ÕÊ —wßo8ÖðHc„ŠìÁy±ßñ÷Py9ÆÃ%‘hm5-–S»í0¹¼~Lk*H6(ŒA1½”‰Sã1å…Œs–° õàÌ;sRY˜#FßáŒÃeB¤ †éÝqì>ï³0I“¶BÉ\"*ÌDGÔ­¼IÉ‘Fwš’þU›ú¾B_N¦pÍê{Ú=âÜ6+!ÌØXxAØíîí*J¿_¨GHY ã’ߘía¹|´—Ä{BNß>z[í+]hopXΨۛ¦d¡Ô޹k}YÔ]-‰ÎÁÕ~·é¾§Å­WEtƒ¨ñß¹&›©€étZ¿j̸úk6gþ ôŽz6#óÙú«DeXeá"®Ó‘²³rÝ$³ÛmÅ¢Y#“¼ž^(±˜†Ä˜ö,®ÕŒG“ÃàþD­ÞæðFÅ­¥¶çkj›Ys9Ju×IkjÔ€’XšD¾Ð×.6ƪY…ÑI!–4¨ ±™6ÚÒ ¸Æ‘1‰¦‰ÂHaû «)ÞA^Høˆ­86mNFTzG(÷ U‘œ¡îI%¥ ]èø¤’×;ÃM ³_yHàQX&9IÜ2¼‹#.órð#`-qÞ¹Œ¢ ›‘â‘”*‚'FªâGb˜ìHûv  5"?4–8­î0½í" šlÃgKKx¶3¼¹’ïæeÿã Ü?°w9©í¤¿GgŽFƒ¹%ÒGy½ƒùsD-{R%>¢ßéïcN{±*ÜLŸê ïÜ2ŠJÝO™ž2£f ËÇ$ÜOïÔ¥YJ–n,COÈýˆØ›FxÓp¬¤»^’´ùã/â+þŸ)zk݉Xoþ ^ñ$‘dW6S¥2¿ Äl[`¤m¸Û×1×äåXê[ ·§ný¶ìØ=Ò Öo”ŠL!Ã,D2ÐL} ùrQT|ÇüÜx!·ä2‚å‡-øq'ˆ'‚U~»‚ –-à’I‰>qà£Øì8ÿÿ¹”~Š€OøØ1°@•RÖëà‚?Dø¶ñë(N?¹>wÜ…;$‘È“äŸò}8CÌûo°2øÛü°Ûm†û¶Üÿãּެä×`Ê…ÆÍ¾ÇÿÙÇÑ+·ìK1Þ9÷l|fö¸ò>¥÷¬æÄ䟞çÑQ%"IaÕÂÑøk«U!vRkENhñ²FnÁ3 \G ÔqhŒjf”DœNÉ.Ë1¨%aÛ#ú•ŸòX&°ÜU¯l2Æš£ÞÊA¢?¿oreV8f°’Ju%!a¥~ï+é% ’oEœfvHexű $¡T)á»R¼’YPìÿ$ðî3VÅ–,­}ëSNñåë¶èʧe‰ƒL}½-ûü·äú€®^Ê$†Ò‡ƒ[˜iÔ-93n b­+JêO¤©óy¯%‰Þ4#ùMÒ( ØÇ÷-©%#ŸÛ«ñ Æ%3rQÚy¼?5Hã?óhXMp¤«ÇÓ²FèD‚»Í †g¯¼}¸ãtzѦuxBËÜþ8ž2cåüi9¢'1¬¬Xv $‘³8nâ@ çÆ`›÷$‰;È ÙYÌÉ)îcUê8oF5&Ä/Ãoýö‰Æ2¨‹[°¹àá’¢³ºªc:w0wu²XvÕ\´r]nM‹ür8¾X20ŒÄÎþQãx 1²ð,á Wò’Èé-Œb· v˧㠌ñ‚i”,–`94q¹iL2 6l¿èÔPj]®­%™"²¿VûRq%¡ûˆã>'~Úò›µ%¤)‘¥äK2³á¦T€¤¥ÉI»ÛÞwcÆêbÆç}¬þÐ;îäã óJé¼NX“ÀÊed߸̑ØbÙ^Àü!:è'úr"c¨€ªö¿r)=™„*±ÈL«’3|p[½^Ð"Ë]”¿Lqurf£¹Ž¯z5Žª¨³^9„l“3vøÌ…ꈜ5T¨¯' _—€ZÿoaÛ~x<[9’G,øºŠ Î;2a^_" SÉ–e]æ2xØ^c«ÓËÔ4t?ÃA@Pìâû^/ô:uLÅ$ÔEM.\‚¦CöïØb¨ÇÁdÜ:˜‚ÈîIâ~§iådHTœ±¾À/˜,˜Ñ$ëÛOÍä”; u`0ÿË0+”$ÊÓcÚ½æ’E“p-ÁÓ˜pOü›vì¨ãެB,*BV"Êñ)íÇ'†Hø©a0ôßû{BñÂbåÞ$c«¡.¤ñ„[îçbLe¿k¿¬ã¯S*„ÛW‡6þ@‡}'¤T Yw´‘)÷v?çfWB­’ áC:ð1èðIDƒ"Ü€±#˜äõ€³ !ø•ìÍEX„ŸHÍd=Ĺ) MÌøÙÃ=¢Ð½:ŸŠ©FL£B qMY¤j"¬³#T™{ .Ó²ƒlüv°‰ìÛB%§J1¥2׿…—åT1žV…åí…‘™8ÉÉNët³ä%`u+z)C8šÔ] €Äép_I;A·Ô}\¹¥\RYIP(à:™Ê¬,Ïß¶4UînÌ©"ŽR£nãs79ewd?×8UŠhjÌ„»˜7vU"Žä®ñ³E´[ª™–ÌwêÙlĄۥtóvÈÁѱm½8—’¦Î„¬`˜Lro$a‹KTrX5 +‡ ê0˜øËYã§ ‰»ìîD`:ìÎA’";RÌ{ÎŽüxW\¤NŸ†A÷ –’Ñöïã¥,‡,~RÎtîïÜÆ*:À¥‚ \—f‡ãì^@®¥åÇÜ‹üÌrl-ÐÒ˜.D·ñÛ´’ÈÄÕ“eù0ˆŸí!`dxW†ã„p²“) N[H`7ä¸J<‰ìÕ\q5X™H\¡hå“ÃÚ]–ÓL£ÐÏã´C .§i Y½ßGIY,*&Ò’ûZc‚ýï½NXBòŒ–=÷PÂNÙ,J€C7&ÝáÝlIÿJåpaª¢ÆÛ¡£IG ìÁžTXÞÚB‹,Q×î¬d‘q1ÉÃä+yb=ZÏöfû,˜:*H;¯fUúÈáʯ ô 5hØ…¦Û½nÑ<½ú‹Š¡ÈA:°Ô¯>#y(%ãÛù,Ò´¤—Ë‹ÐÕ%dµ]Ì«;9~©O3PRHSI. ‚I&€†áñž¶Eti• y)û÷þï«×/à }Väê0ãp–Š“*ßG·Á¥©:µDßמ²–vfF CE$D‡Œ…3Ç$ʲ€ïˆ÷7 “Gn­†|{v˜Ë~¬/™%•Ü m¦ ¶·˜ž-5øÇfFþ HæÈbÖIç<̽ëa –%;(õž·U¥B¢Ð¤’B™LEí³îq¢ŸN©Y)PXeé!NÞ]îÿPÄUE§Œ™ÝÚ@Ê…u–v3 å´3rŽyïN`V”f¿¥µ FÆx¬ÐxVF êcZÁHæëù A³]Œ­çex€6˜h]:dfl%"¥¡!{‡i…Hþ ¤‘ˆTG=¾ ‚Ç“—bÛh *ÈÑ¢ÂÑ ïåy¬fA8ÙáºfY¹ïÆuc@ðF˜X![ù9&äe,ñX™’"aIEb#ô4õŠjw¦¢7ƒÀœË–iúí=.¡0´‰—š»6ûžqY™Ùvî;2¡]™¶û'¯1áeÛ€¿/ã’=é„2l}1 a^G‘‡x¼qœ,1×S,µcŽ#Ú#Zf£bd­,q|â*²‡´òhM(y1ÁAÎC¿{€r ĨE¸#Dðb1šáÀ‘#~OQýG£4æ?•¹_R´ðR³ÝØ_òƒq_èÃW؇6a$ dåÔ|‰Do‡ãRÏËq4L±¤jò¯›ãî924ÑD@¤Ò3V©[jÙ8ÅLšJé¬Î W±±Ø·$×aIãl~qŠp‚ÍNR,€³N#IUɺ×ðÚëæ‘B˜¨¤’ $šÄm`þ`¶2Q˪ºÍ4.X—ß·ggã¾_B…)aLS Òi¾¨±Âël€’MÕhò ;/\œom­$|q :ÁcdŠ=„h…Š´q,!‰†8¤ HµÄ¤ˆ b¶â——ø˜V†]¥¹K â·"±ï5°¬ò¢á±Á£Œ()hÀ’0TX/;9…ÒÇv8¤ASÎ|bX˜žäògõecß” ¤›Ö3Õ¨B„°€äú bï½î7Ưá•õ‰`]ùÝþÞmW°n\1‘¤¼ÊÁ@m£׊öc纳GCŒV±ååWÕˆÌÑ¢&Ü$âcẼˆBÀ?Î&NÔ¿ˆ“+ùe–Ì ¥ÔŒT[‘,«˳Uà‚ÁûW;%Z>,T”T'¬±TñYû´¨×j•¼MMjRˆZ½«–,ò=jozGSeå ¶ÿ¯ofZ2ùêyŠ…)Jµz$0bޏx-½Œ‚è¡++Àm·ü÷3߬ß~,Óri#ei £‰X¬rÊ<Çùw¯ ïOs! é±Yˆ@ q•J¿eQ¦-³FIž( ì{Pî,Ö¼¼çãEˆõ+ÓØê¹ AŽ£rç­nÈ‚Xg–jbVTî+2‰£Høˆœª®Öù¬‡ÁÅt•!Q±q°Œ8Y¼Ádá$S;1²æF±0ÚšW2ˈK…P¥ëçÑ–XB:ƒ–ð CÉø‡¾+CÀ°sÀ20ydS$†PÜn5‡„@l«xȆ›ªIŽrñµ_jÒ}X,9(„¸»Ä{ü˜Ãk²óQƒÅ_ƒz²§Úa„Ū²Æˆ›Ø°KvxŽü²nÿ|k"H@vTzJ8}ù#‚RÅÀŠÿX+¬êL’‘ºKõš6 ×xßÖUõZ:K!a£gØ>àywh$\:eW)0•9sûj×M9î*·æÜJ1!äŒ ‘l6è, „qÎPAŒ‰&ÄȎʤe—n%ûn½ž>„*Í»,‘¸Þ*]ðÂ*ûü´Ÿò¹›Á·Ué\? níwǸXG1ù6ò³ e™Ã*všÀµªBÛµ»lÖ ŠBÖUYQŽÄjò32íÞ[8™ÙwVʹ)‡zª¢eõ·/šMt©i zH,ìK†·gÜc.c.¬º´©ADî ßË?ùmp$æ¬Ê‘3uò®» —`ý»ˆ·æ¬Qn±’x€õâCóp±:øàѯqDsŽä;ó^äÍf&°*dÎSâ¶LRÄ7}ãs¹N`ÇÛWcbíH²ÄVEÈø0l%§a€È±« ôkÒzC”ÀT·{,NÆ÷za-¨™Üß•f¸f†1+´(åâ +IÏáKrîË3›§—HZœ»&.î'òcˆÄ²Ô>:ô§JHKº¼¤‚á¶È"È©ÅÔ‰¢ü!w;1dú«#–DG„x‚Áa<ÿO0cé’£ÔAITu):À•åE­Ó~òÂì‘{RÜxì§–HhM,4˜ÂýÍßµ%†áäqâI4Ã4HcŽgÚIáš_·§?Ø:LǺ0àÉ!³g™‘d3™šFšX§‘÷$@Ë &™”aþ)E$:¶ÀN›ËókŽÂu\— K†‚Çú;m'ì.Ø­å¤$wŒ‡wu~çlÏÝŒnæÔ1o³=ÄRhVNݺnf%FadŒùHF”,~4íÂŽbKD® Ç ¯ùrÚ{`†õcÏOt²*„Ÿñ¶,Èx$%x•{Á;5Ëó È’D?A MR­ îb•XáZµ­Ê‘G™"Û´fIšE’W!a’± ¥WÅâê/¡ž¥\è¦`T_o•݅؃àv8¦¾MtRÈ.X1ù‹.ÎÑåÎ8J9ïpEŽFx–ØŒDjf—‰„ÀÁR7ûÁ§¦”Á+H$Ò@uDF@â%a2v$Ž5™{Ž!$IRÉŧBÛ3Ÿ‘ß—©~ÆÓÈê*U®×chrÛöÑR°ÕccDb%U§Š»9º­óîBò×í¡…4—‹Tp𱫛öѹ) Ìòwä/`ïÚ2¸-Ø".( lÙŽ¡K.¯† £PCFÂÿhîØTr‹®€¤”¥‰#xi³oŠéÙ21þôÚIá!¥[ €í,E„r\Žc‰þ‘ª–Úßõ¨‘žÚ´;qs–´~Ô®;‹ÄH•eqÏ,ëðl…D l«ôóJ–‹l{” D±i¡=Øá`ó*üxçQ”Š1"ê:Œ˜£6'p¨8sƒÛ`D2Àÿ°ÓÆ+nyدd–ôrÓz/OßÁcm٣ܖÕXžnܶcINÊv’¿2Õ£†iV~Q4’=ÎÁÐlÆ>`9]Ķ ‘åR¯!Q Vf^!¿€7N,7õŒõJ YB‚Î’ÅÆáœ³Ÿ¿6¸ÆÄôúªRJ@`@0ÎÄ÷Þýž÷®Ò› ÚÝ¥uçÚ$…D" Ò"Ç)Þ!ZDZɼx9š+ÍÌã.’=î<ƒJ¬S‘g`Æ6-´¿¬@[«ÂÍBÑ“ÆÄÿ°4Ñ1Èh3¸0“ݱbV \9Utª¿$Ù,¬D‹žâª9Ééæ™OÁ•8†S"Ï+:³7%‘xÝØw1Ô•Ñ» AbUUˆêùt°Ò¡!™ ì#v2Ó·‰éµŸæ '½§Ÿ;q}ð„²ÄkѕْI„Á;ˆˆÄvÞÁUº¸Z¿9Vk'N´Ó(V©;)î ‰2Ê È®P{²*HÊ€qº•%Ì=Ó»‡0Øo²H}؉Q[òdÜò„*J 0b9‚äA=k, * .#Ó¼\›>Ö–‹L®EÐ\ ½÷fØX_ϵ(g 4‡ƒ#™îŒíŠ"ª$> ”—Ì‹µ¾G‰Õ“?Ü!ehÝd+õó7sêŠLЖ˜Ìa+M7•6$y§q8Çk™’ugµ)Úe1™T±À’0U³iÚËC^t’vQéàÍu]˜No ¿0fC*/r0±=úq»Ç‡%/Ur$’F!K2šô¾2ui ܦö÷œd]ÒX¢¦ÔéŒ9fÛÃÃŒ% ˆÉd‡ãXy,{q]Ñ·DI9vã#zrîˆF•(1Ç#2±e,ì²Hd+ËÌ€ö÷x€÷Ûºñÿp]l$]:ÓM“³Ê(”°Poú\Sºx÷–«*»(H/¾ïoÀ`¼úÊ*º¨F€EÂGhë4e·YG[)ŽyöXåP-­ùº-%IZ#Kb3T/Ï’Žg–¶RXb)d!!i×.–â1…$i˜OçÍÉ[·"‰vc0Œ½?аtº]ƒ™k¾ûy¶ØÅF‚ëÔÐ@Qs&Ì'÷f3ÈÍ£»fe  IT]‡Ý;!‹ÝñüùÓ#æò(¥K3÷B@ŠZ'å -\ï<³öÂ÷fDãó•Ushd¤¤XÓÍ8˜n®ñ´-½Æ#cö3˜d*ñ8ÝY†ÑÙïÆY _§zl’DVÀi» î@}]>œ£W©c4)¯Ævf¢ÕÙ|c[.Äv.éÔ`ïVG¦æè±Ü™âóõg´Fc2HêC"CÅDf4E,í‚\2F…Z¬{ÿË™,ž+¹Ø…&üry)ÊgäIgIa#¯mTºÍâ+Šê(¤®<€¼½X¸úu§£DQÒ8 MÀXG¿åVüQó3o´Î¤‹ï?y¾ÄQ¬15qY—¥I‚Vø5l’yL¢Fy93Nþ”b8Ä7¸ºàÝUÎë(QeýÂÍ439$D3³þÌnÕÉU¢j( ªd»Ù™…÷üöÄFÙVF]¸÷!d‹¶·…Z³$‚B©,H¥éHŠœD%ýå‘G?ÓÜH4ç»>r*•ÿP_xÈäÇÛRéÓÆ&•6Øs¹òGìRyÉ }J¢wX +K)-!VÚZÊÛ³H¬ï.<¢>kŒWÕ£Œc_éþPiÿuÀo)?êïÎÿYrÿÄÉ»±¤…‹N¡¼$īȔúúþ 3”ζÈM÷ˆÝ¬û9>Œ&¾É)@wtƒ¨Cóûµþ€2º‚ѪìÈÜ*ˆ+þ³ÉÁòIUÜ~ý6UÁÿ¦§c¿ýRÊIn\”†àll¤ãÖJs^@¨Pöy]Ã… °ñäíÄ‚Ãv—ÈD‰ßbÀHy©pûª`ìç~{„æäÜÚÿAúãÅK)Îàù ;îÛØŸø¯ú$më RxÆ®6ž6íûaç‰]öÿ;“äŸKRAò| œøƒ¶û*>Oì’HL•wbVIPÿ“T,<ðåÊ97@)°_ Ož^ 'ŽÁ˜Yˆ †>5{cmõg½ˆÏ5=úûŒ 6˨µ¨ªZŽ ²D^ÌÒ¥kkÆ|•³f…ŽäuÕź•ûªáBZUâÝžv~àBëFÿÜÂÄŒ€N¦OíõR½²Éz³Þáâ±KSß—¸àÄLÉÊâ¬YwU?¹ µYm¬Æ{rcþcQ'ˆÃ ¹©É$uT•œ;C)„3H˼ª ñ6>0» Bæ$i¶³éOü7.ïÒÿü?@6çŽy\ÿÿYX¨‹¶á ‹l°Üv8QßiA…%’@cŠ3¤©°¹h‘[}ë…kZ¦ÓŠcWѹ ÊÜ aÔfIqˆ­²’ÆÒ¨µ/î”ë×SŽ•þB‚Ù>éˆCp’BI ®‰;Þ‰JôŒåb— ¥æ¡“/>¯Á•ä,*„œ»¨üRŽ»€BþD’¢±‰gXÊ8—ºî¹Hæ27‚/‡`´ Üð{ñA`&[°‡Ø¦ç;˜Äj 5€pË÷X;e¿$]¥=ŤîM5¼–ŠÙúQ É'ˆ”9®Ò²È]z3)uGW›ñp[PæH§øùñügÆ$–ÖhÙm§!YA!Kl%îã ‚â9åÌrD˹ÜØâa‹+zÁå*Ђ¬Ñ«‰FWµ#¼|àICLyER`‘é«%§¿fHX¢D€°*’/É%ý¼ VtÅŒ÷³ßøÁƒ¤î¢lÙ(GôôÉS!ÿ§»ŠÈÌ£(y×v)aà!¬…‘ˆômî'ÒS·€¨h—uaÄldãeˉ@%—qLÄ’$c„“”I7jA0b¬ÛLì•`ÃûïÁ²Ohþ|b$DO«Xâ¥É-2ƒÛ“½/}"gˆWŠ_ée¶aÝéC95^jùC-¯«ÍtØ®ª¿$)…çÚø/—êšiü';¸g‡ï¾.8#— @äňÙG!û#¡ %·ØžIömʤÊÂìC‚w#f_ ì8–~À`|“¸õêž-‰T ¬„NðárT¶ò7eLÏ"H•dZ8­({Ð\QŽHc”ÒNNÉ;F¼ä2'ö”aâÄb¼OÛŽWb>Unwùò3J Œ©èŠÿï‡î›¥åûliT¤\é$êø ãŽ =[#½§[‡q,³lÅ{EÚLC&à €‘°-»Î-ú€xسø³ãü!fÿÙÿÎÀ£”1ÿ|9FåNpUâ{TÄT'ʼnPØ ±üKȺ–NÙ}Tű2ýVÅ™T*fžY••“”Jò%ƒ¼QžLÔEDÛpµžá^in;q.=r$ ­ÄÏ(ì²:‘R`Ÿ <¦,˜™dâ$:*¤¬Ö”ÊfÄÛ6ÞvÇ«’>ÀP2˜K{·ö "}ŒâT‰D„Ø ˜Çc°7·#§pV‰„kœ¤ß"ç àX$5ô "Ñ̹¾÷!^iù+LËXƒ"Ï,QMu¢QÚÛ›­@ Pˆ‚l¡b.84c¸Ü]š=–Rï9x£MrZuŠì0•³òÕ,ÐXéF§Òã³n²–,×7t,M?Éñ•ž5”W{QÅÿVßâ4Ôù€ŸEsyufhšAA%D2ŒÊmËvÛ2ÕÅ¢«“$nÄXvy³ù¶.Øø ¥A<ˆ*éä'©pß¾;Å”ÉІƥOuv¥^NÍþ$lQTò½˜ïõ;pú;&_¥ûH¢Ùb¸Ý¥V~U–&2¬ÖkÌZU£q ù—†™^0®Ï‹—¼ïvË¿0ì²Yí¿P¨á^1ªÈÎЗxáÀNMKaÛÇ¡ÁÓ˜Á€à½ïýïÕAqðd Èå3i7çóŹ8ÿig$ò *òÜíýßPP0Ù¿´¡>@+ª¼Ff›ö«ªG2Äѱ4fr;%(þ«U™ã«$¯]öùª¤pÙ …ˆ{S,q$üI2Dc—e²g’¼€Ÿä£lÚ?ÔcY}ۚř‰’W–yS„aæ?-^E€l¦>J³Ì•Js¨ûÒ— [}²U¸¶ŒŸK^ZºjšŽ ÝbK1Ë8üó×ÏŒÅR(QÒJœN›ðò\O凨†ùXÞH½”±Ssf+ºÆÖbeÄŒ&¿±¿Ž…ÖÅ{El»5I6[x8rÏä»CÄÇ}À$,X–%wK·sº†-ͯfTH;“Í01Äb•¢Y7“j·Á2‘±¬Êªõ´r—™TMjÐ;¬[ÅnÄKºº@¨±8Rkª•Á[d{<–Rìö@æÊ*é .L±ço´âœžleµêAV¢Eƒ@Üo3Ûl[½Õ”fP§rÀ°*\{l‡Ê–Ø*¶é°”Þ[üùÛp~ª$™,ËF¥ò¹Ð’¨-%|îJ±4Ê‹/É’È´!‘»QUÉ%Ķ_C޲}6ÙLó4ŠrÙeIáÉvô/ÊFÞH¤«² ''’¾œ±µ²ÆK@¨ÓÑê9j©mŒÄZÜ»?¾Ž«M†ª%âäK6þío³â่1-øä Á@-¿¯# ¹ñËr6ÿ»¢Ú¶Fg:É,âaŽ˜oVÌfŽ4^3—0jõàH{ÍjÀ¦«Qæ’©{iõ©2yɸùl±hÌ2¸þc&Ä’t¢hõ-›÷¦i-HÖlKÜIìd=™ŠN„­¥‰æ Š×q¿’¶X£ÍI,«:,[²™eêk+I!%0°AÕ<€ÏÍ­Œ™œêkÓ Pu9{¼ö ¬š“ *«ñy9ÄQczḭ̀« |%Znçj“EÞ´gÞ½‰& ê˱'uC1ñ²ˆÐÈÊø¨H ž`U“ÈÚÓ´Ôš9ëË,2ÆËfà°¡ãr¹­DQL¿!—ë%¤ò±ì‡pTÍê ®g,ÈP*ªå-ɼÒ÷d…#åo²òÊæ!ŽFí#òzڒ˲DCfòkÌ)+ €á!ßö7xÂÊçQ—B“£Q*x=’àˆ´ùúâ׌ÇÕ\Ld¸ÿ%ÛÈeØ,{o;ýlÅÜä*ŽâLmå¹ —w*IQ°8¢‘º™ #ÕJ‹Pgâ…æò«/q†Zü#±3–gK 0–*7Ÿ¼w¨ÚÅAz¬ŒÝsù¦c\ömdy ™ ¢u™G'z¢dÉr› ¯ol­™9Ff"ºUb•1 ÐfHh‹ùãPê”Í©*Î\ˆfvgý|Dœµ÷piL(aTj[‰^Xå~¤JZHOx´“Kà (RKAÌ•E긤r) «(å&ñ4q–y“Ä­,H‚%’2yÞ¥üL)ÚjS¸m½tdÍe¬Äõ$ËäìÖcG2¶­W1Æ­'nImÙãgˆ,^k¡ÊךZXÔŠíbïɹe@ã“å7jµãVæÊTrþ6³¬Šˆ y–ŽQ¸ß“˯-IIR’IRJYØ 4—þÇÉs5Ó˜ZVÚTÅÍφw7Ü?Ø(ìü‚ìk^i–hÐLYw䱨ŒÇtŸTWc2E±š':[ì¬AÁýÑKÖ,f2Ê©!b« p†Dçm[ÞFÝGqTK)ØhÐ!nÉ5Àí,5ÄαܾÏßÂØ?òuí–[ðæ³¸Õd‡-˜«iÈŽ´3ȱ¬ñ0U?ÅE#ǹºÖq)­< šŽ}”î_9–^fši¤¡%*Õ¨‹€ß[ZÜ;ekS¡P¬‚ S¤H™y÷%ìo‹hªeä;nè¡¶ 7! ‰Û:2/¯Ø€â6PÎÛƒ¹Q²ª>¸çñF¼IMÙIUÓQjí¤™¬ÓÙñZiÛÞBÔ¯rÈ›—L†ÌÓІ)Õe*]I©¼ÉW1Þ´ŠîÎV²FÒÙ2Dö[«É½‘<–[¬*¸¿á5Üÿ1&wÔFÖ¸ó÷‹=N’CŠ*˜ ̃3Ý£–a‹N#J£DÓ·ÕÉe]þÊÇeN;ìâXGÔ£\D?Ý•báþ|l© ‹*£ÖøÒ¼j‹$;3㤓zÔä — †T_ZRêÍÛÔyrÍ%™“/lÀñÙ•–v³‘W”0³1v‹uMlBšÆÑr,Ï<Ò=‹òÏ-‰ætšÃ™íÚ.è¡ÖÄGy'–H”3bAÿ›D«nk'b‡^G#W-UKZ RÌ@‚t—<À‡³™Û³yÔfi%%ʵ(ƒ‡€þ¾&=<€.¨¦°1w†Ò2¤HŽ`‘m!+7Å6VD”1kI”&:‘ŒagõcÌRñ.áI+À*‚ möâÁ”mÌ‚I#`?\ê}S!-)b±Ni+È7íÍ l,Ÿµ#CfP‘ËaªÈñÅ“VXïW1u‹d–&‹­­ÔeÔ7ݤŠ!Á/Ü…ýÀ#L,Å4›‡v|Š¿8sb–w§ÕÌUJÒ´ êI ú{9Œ>S;N…-™W¨K9vàvÞm&ÕªË壌"¨ ljaÜð@GïÉTœ¶è>šX¦]ÃW ™Ifÿ|• T£…Pvcöo¨n=c¨Ñ~D™ì‡–[1±¹yƒ^èzü„­ JUoÄ jøùš¸j…‹ÍŸUê(vfÏfäwh`DkÏ2,@OUÄ}ù\N‘:•HgËc¹vUhdOXÿ„Wûˆ&Åéq<7v:¿ŠR"i)æ^@;7icìÍÔxœi§f/¸¹TWت4œX9ŒjqØNÑ ”!^Ú—ä=„6®Õì©2öYkJë9Df¬ÐÆcŽK‹½%þ’ls“³\DC¹wSeòø\ÉÞ·ZKaÚ´ïU$VÞ¯(&!Å·z÷Ñ=ص:ð-Øh=˜Fè8°hÑ̦ä‰Üºí4ü®bróµºÍfü±Ñ‘c²T*e©”,¥d’Xj‹K½ûoË`Nf¸­WZu#Igp{ ý{bÎhøäcæ1ö¥]¹BZJ¥]y¨Š~ß+Uö ּŠèLvYL‘¤oÜ?Iø¬ªw “äÂòªßÚņƭTÔ™Ú5ã­W/‘Ž8{³FQÂÑ[I«BðDî!Š•d&Ö );÷¾¡ ã9•~VÙíÊ ‚ññù™¬òûTNb|”eµ¢9]2½E©atÝe^¯SÉ Ýìc}È£©S@BT…8 ,çÃos‹‚Q#âå‹7%írŒ0$(o³ cÈoû~hJlã,ŠT,m#n¤!îFä¹IJ€AU.8ì7$ýjè×Zˆ³¤Yë­´„ŽÄÁ‡9Wˆ^ü°ÉYRgI$¯bXÛ•“Øšä¦Û"=c¨u†¤Ë¸•c’8­JþE1µèU¥”É6R”Þ,ØJ  ZzMrA+¦á¯©œ5÷f{OŒI]R>”(D&yióÍG$‹¨rJ+ʄܙ„‹ÁfU`© ´¾k’~*¹VÍ$£ø× —~˜YXõ<Åà*cÃ_ˆlÏÔd)…HëvØÆÏÁP͇çŽf'#¬8’ÔÖg•Þ{/<ù'šP‘4–B‘,œ™k¼‰ª_’8¢WešŠÿpå<¥ìlÍcjÅWš4¨$«²Ù5ì2ËQË$M4f_Œ’ÐŽ5’þr¼+&JÂ=pÎV¦[âåU@0%:‰$8 –¼‡iìp9’šÈ¨A¾ Âç¿;´Þß‹c´lËÅÇ'^*§öTìXùò@ÙH;°;lVÛ;FX¤žJcÜìA#cÅYvݘà9”Þ«¶¶ÔlOç, ä˜ìÀ‘©ý#’dNU¦ –°Æ:uäå\Ö°ûIéï}LËÅsv÷Dv +ìS2©}‡õq¢–HR_å`f†ä2ׯ´ˆÁ¿Õ‰§Æý¯gnÝùÁDõZnABË>ã°ÿŸ}ïj–Û’¡ þ…ò<øÜ’‡m¹rBUù+È3Q·Så† AGÏc»×{ !hü/*ݳþfVþœþB²v.·Õ!Us¶”†ÏW™¤¦C0azï$Q²6R¼|1ö+È.W¯%˜¤’^^CRå2uãŠî^kÐÃ/v(åµ)Bó±íh!Y% ßü9X4ùý,ý˜VezEJ5ÑQjC%@°y`[Áý± ÇQ§Vš©„,3 îEžÜ»Å£:þyxKÈ æbìöÅ#X2° ç w¥®Jª³cÙ&F–+Wƒ°Ë„ƇYcaB‘]ƒH„@€¤Ë5’O;;GÊ ÿX˜øcQ þ ÷C/'Œ°fA ˆî̽Ô$U•$cI"Ë’D1Å;J§Ô’i¨jEZó6¢!0ÃHàŽ$਱¡¬Ò@ñ´ÔGÈ*p»JXªIÇÖÞ¡^i S¥R É Žçm±“)›NYK$8œI’òþ>¸µæVY›ÁØ` ÿà±PÇÁ“Ïm¸¨'m²e–xXn<2ó!Ô¨•‚¶êÇÉV<ÔVz¦ÚßR¸Œíè÷háúÍQfÖ`«"ÕŽ>{)c&ËBý^PZïÛñë'^j5tDÎØ•dG“è?E|§ÛŠñÊ•ËؾèŽÕKÓ~ÜåA£¢ÕU&‚Wþ.^ñç—ÆáÕPn•É}ŸgÙ®nÛOµâÁ%BÅ)äA` }v*Œ¼‰Üøvð@ò}T¬³³ä²)$V¶JéfâÊ©’fYQ¸¤%¾ôY–¶DšËNGnm©B‰ŸQÚ)#Fb˜¥g럖ðÐ0<Ÿç’2îíß巨̹;¼¶eiI¥ð…¤“¿kœÌ½¡¸üªc©!³µˆh>2ÂnÈtååVµ, …€ª$=îÃv Æ<æu‘L]$™Ë„÷kø÷0^éVFÈåé—ikEb8 û¸‚ÃÇcñº÷#‘LÈ-C$kvÖ5{džÃ}ŽÏ¹T IJïþ6¯ÛÂÿÜO×Éñê bs¹Ly›øÜŒõšeŠ š»Äí?ܯ v&‰«·f5'çØŠ'“oäXˆEdõSlųd0&ƸŽØvOí;GTï°»—ëYü±Ç^¯‘Nw¤ÕÌWUT*˜I]س3ljçeº…,½¡hYP$–m/c}÷±hšÃ€Œbe(ª8÷A÷ í¿È;în6@šÐÿ"AË“ýˆ*Üãí’Kq"pFÌx’K1o>»¶ð<ü(Û`jÜ:çR“QšœÈ¨ÕSƒã™QÜÊbZÏ0?ô-£|nЦ’K*ÃÒÛ_êxÔË.q,¢^f½w¬NK…äJ¬äwëB è®´rÆ‹UÉ`ªè•Ô§Ô‡$›˜‘ÃßaÆø"ž«D$jJÝ %Úí§QÆ@ÃpÛ(í„”»qòª&§uÊÊ¥€G)Æ6Û“€v;0d_ÕT«”ºïUÄH|Õ´ˆDªÎ`¥-Îåvi'VHê¼r݃œiŠ3|FYë´³,‰'›]ê;±“2í« #aYÓ•¯ªA+šÑ0†PwÇ™Q§ÈJ{2G]O©S蹊kJ‚éÁÄÛI#ö.ü¶ú¥ §J"cóÏÄvëñf•–òžðžH|H»G÷"în*šùJÊÔ)Â,9G˜'o l¹V턈¦?ƒHÆcå{ÅÄŽ¹2Ö‹úiÛäC ”¸ËÀÇe`ìÌÃhãX Ý QÇ)ãr)Q#Ó²7Ȧґa½‰ÔùœMy"Ådç‚ ey¬F#Yåù\R.G½®Ò]"WYs€¾Ic¤)|î^®c.) ¤Q&,Àƒr…œŒ ËWMÿIt±p–Ôuiïnâ#ÜÚ)!“`NÅ“bDLCª¶Ç—m×gøý/‚Qy Ë}‡3ÅÔ‰9åÉtmŽê#Dâ úpävmÛ÷]›^jrªFrX.„ ÊÄqä;”ˆc“Ê%é;tèH{þC=7þùÕLaeÍ*±•Œ´àH÷EE*õžšW±ÀÅvR±Þ¤ÑcØ´aÇIÌÿ½%ÀãèÏÎ ž«—r4(blÌÝý‹wÅŽ!ã`Ò)dx‚„nHÝ]™Ç¼«~ÁmÇ QCI©ÝãäÛã±¢-ÐM,’“qÑ+Åå%°«­NŒ¼j^ç¼ájF=q†»Õ¦>Pæ&âÇßþX $óî F¼•epK47CŠ ø‘,¶—›Gò«¹k2_ÈÛ[½e‚YÙ#zêæ5®Õ¡Hìü7™¿=XÌC" ç–**AÙ“éÕòõ¾*Ô‚4¨iKn×qÌûwleÍg)פšh* “¤¸âïÀó>RÆD¿`mhÌ< AØ °¥ˆæ¬ÎëTͼÈË2\†ÚEŒ‡…'„Cý=£1iÏv…—iýAýäLþ"¬YæêtŒÍbe%‡ý¼cb êKRf´ Z9 ‘+Ôqñ•¹Í´Rß1ìeµØËtâ¢e¿³ÇÿÓéãl»µ)þ ¾ñ,Q±Cé҆‘;¬eFãÿQed`ûï·ëÖ¾=YRn K‡?ÐÁö‚ÆgˆÆž’=5‹CSXüÁœZ?Æø¿lwbüJòâ¤spKÌ39Ûeû xmüx¡D€eÛʹú*þŠì(*À1.ÜÜ·ää0Ú3õbÛ7Y@ðÃpTc~@ª†m˜50 6Œ‡žB…yú‡ä¼e;·B}v Ì}Á‡ ªXä;IàN1¹}ŠHŒ íõÛf íÉÊþÔFÜ@àM™;¨gÜ ÈîyòAÜ€Û•!“~*§†à1äÅàIäßTßÀ•'Îì nÇmÇoÈ×Ò ³‘Tn8ï4q)Gé‰náýr<›ÁRX–ð°Ë7¾Ðß¿/ŽØÌ§[{ÞyZc￯ÏÍW¶ñÅ_!ŠŽ™]!dÀª©•–)tZt’Å{±H-}dFIc2ÎLL ˆÜ$ܼ2Ô`òüy˜÷.c")o"­¬`ˆmê¨ûcOþÛýò´iÚ=üû€™#•Ì ˆ§'DŠÅ›P…¶)îÔ£«:Áo–F›±´ÆVSŠ#Ž ú~]®)¥ÞÖIa±îàØ69^ [9\ä<ÀÚÁ¡†ØÛ[F` ¯¿i£J«,r„àf†Û“ö¢€¨†å†ls㑱p«e;²ÉÜ}•R?ìi#€Æ[h Ë4T˜ì)£wo­¡"äåIçIÃJe‘—(d68¹^ÆÜUa%g±Ž\3ƒ–yCŒ¤‘¸$¢ÃlêÚ3 J¿’C(A,’N„%‡1(ÎBªÐ,\}ÐXå.Àv‹ÁÆ'2 FÁ»ŸïÇèȽ” 7Û”¶6PJѸiĈÒa€ùTUB³bùX„ÆË ‰‰;RFd—y—”0FшiöÌ I·^mâ^QO' ÖDi0Y¬ÃlSéE†[yóÜguЍ• *ȯ͊Å3ìw•¶:„D#+#îìà–ixò.ݽ‚ò%HñúV'r¥v*’A`Ü×PÌf¨æTšu´¦¡ ¹½üÛ²4(TË…­J.L—mGò`çuéeuøç²ì®ÀšõÞQ`¿°OyY«GFrÖ ¬/T'ß𪘔™²±Èé´b”¸„' !ß“lѿޛpãoÑ‘Mý‰Á #r?Ýä©ÜG(•‹+¹bëÄïÈŸIØ'б}·bÁŒ¤ÿô¹nÿýj%xÜ€=b9Ìù/ñ˜q®Ãg;ËxÆÏÂåLý˘ñ$½ù‰ÀYiUÒçWÖÃYƒ-e¤£BjKŽT™"®Á\¤ñü«É"ɳñìbëÔIäŽ(d0厲Ç23NH‰&Q3!ž¨+~,“ÙÆU³þU7™Ý /«6¦i§%Š·ò™ʌiˆÆ'äß5PÎa™ã|zÀ×+ÝF–ÝfQKOµ ŽD1In¬›ò’5íüÅâ5°+¬ŠÂIùðÚ ·ø]²ÝDÕ^Oâ-z–B½[ºU°Ø0·~p4ŠhÍ H`äBNÝÕåðwN“Bñ©lõ¥’åþ4q†çfM¥MçˆrGÃÍ5Rk¨„~@¿øIÜ8àD*¥Â"@AxcŒLJ㻊Œz3›­•ÄJKŽkSòÈTöÁ Īýf-° Fß±º·Ž'^6$æG5úyØÇ²·1ü•HØ.Û8!6畞Ï%Jjň †˜ÿ;¾Æ‘“Ê”å‡)¤¶Óǰ0n‘«¾zS!Y9ÇÅ$j¬Å”vÞËÔðöÏ6f”— qÀ˜ƒvzWñà±8ÍÍ? ²HõcÆ ¾D© ¤™£&NämIøCo6šYgôT{6HEIT>Ç;î rã}À v'Ãs²VÈÇÝšsžS¼Ë&ØHJIÛ;eeŽR£dâì]ÌúŠGÅ,H› àÜþpøed²$ü0rlåÙñVIhœ2vcŠÉ#LÛÉŠ²×šf‡œœY¡¯•, ¨Á„"\Íô–ŽmUO!'ò UªO^òÅ*ñ%Ú³GGÌ0½=;#úÃ7ý6ÈÊÅšu‘CòFe#TÎe«_åŽM-å£×§¥üyîr`hé=™În£ìXNXƒï4Œ$HËæ;$·òíi¿GóÿžL®šš (:·µ‡m¯4"®gá­¥·6ä°$’ÒױЛ¤ò¿Øê)O1 c6.)—BªH[ŠL’)1ÛÙ¶}»¸ßâ§ÞWHé+ù'Pm!T&CŽW;¨Df’1’HÊÈ‘þXäQÞ ×ì«JÅ/‘1ÿ¦VwKFÊ弃̓2y}¸H╳2€Vdi]¼†àªWs°¸Îܶ#ŽÄ…}·f<ïã:„;„Zm¼¸cØ[S’Ê$…9Øj<ˆ“sù·°ÀtŸgW}DZÃL’EŽ)#~"±´R›Ò”· #²V^1–‚8âŒê«4ÏûvÔT^èÈéC+‘RJâó$á]ci,8¨fŒÉ qÌ ó‹Y ž1d¶$m¹l˱=¿î%I Ëëá¸ñ Gù®©M8ÌQ òÈ5c¸º©’ÌéÛhØ&PdSQŸ7KA€0£&Þ™ÍÖÌ¡ ­© Y‹¸äOnÀŒfÎåèR ª”Ð} ºŠB˜?Øq'Šè-Ï^·qJËc¶Yã2÷%X¥“‡(û’ÄìEyEwi°ïfpW—¤s ÓýÁl¡W¹Š3‘_dî$™Y°Ä5gXMçºÈqrL¹,y–G?×Q*‚dSõL–Y‘ãŠ0 Õeeþ- ÇNY¸ò·Í5‚ÄòKÈý#;Á\•> 8öÝ‚í£ªÖÌЩI4êi D†à ½Ÿn9œÝ:À©ñT¡òËD?’ñq÷‘*t…÷j‘‡]ÄxùÄ–0ŽÙRÐ\öì䕤™*ÇÆ‹X‚¯H¤Œr\ýa!‰K‰q˜@VÜÅæ#‘)m³ÃLJ© ‚gi§ß¶KKndeYa³n +¯wq@§ »yÝTLìäX”’FÌå7þÝÉ,ÜÊ•ÿÉOî'ûAô+ñ¹à[ã_³‹!¥¬çì@drÛÓrä‚ 1ÜÞpÉtÆÆ:¥Ü‚êà§ «{>1cï*A#ÉH-²Ç4è‹ ËK¤±+Ò¯mË x¾å@$—š|÷i"Ú(ÐwYeñ-V9I‡#^6·–ÜE–ÏjS¶4¤…x…ï,|H­#¬á;-ûxä’1»¶ÁI9grÒ£ÕrË,hk±¿¡!Ä-8gžªÈ/X²FN"«#Gè×K^bµ5ªªÂÊT³Ä7™Ú×ÀÜý*4J4„º^îîÏ;³à6÷&émgQS’ûe# RßÇhÒ¤öZhâÙZT³ ¨fŠC¿*sòÓÚHk²À84‰ºKdï¾~™S !IpìÐsK ˆ¤yNRÔ™PÎi²‡‚ù\ƒÏ:£W=.™Yà¤bÒðl­–<ûKÅ"²Ž=Ó#ºè«n È}¹ ‘•$’¬AÜ«qRÜy8WrÎÊYÇfóYÊy…¡)SÂ`ÖË·Ù•ÉÐ]-IÔ¢%Œ8/ý¿ãSÒ‹Î:Š6Ý‹+IŽ™œÊûÈ×5‰ÉjVÒÄa cæc“Òk,ç}C]d‚Êô&Œö»HÙ2¨˜¢˜>¢H¹GŸ$ŒcôSùÒ8ðv ¤Ëa°`m¿{òäªO\€ų6Ŷw]—wc# ø·.eHÜlvÜ’wñãÖÆgœ5AË7gh- ÛÛŒŽQÇ¡ÞÃUäG!í·Øâ´êM?.›È%7à»$•+]–HYªšæIeKÍ-‡”*†VhÚýd^]éÌ¡Aä¤2®æ­§XíeNõ쪈Ǯ/Qg%ñZ¦‚u@bÀ‹Çæq€Ui%9¤Ó@ô ©IK¸ÓîEäØâqÿ 2w\Ì2m3m^G‘ätƒ+4Ä ¨íZºÕ]lUU­[FnwW ÒkÆI59 /qèÏ)†++$×l»ˆå+ u,HÍj•»‘)C*;d† O1AFÃôªƒp@<À’Å”û´ 9Çý5€#!‘Ow.;ƒá‚† –†K2—þk\í±÷=Éh/ü>‚›ÐIN¢ÒÛ—·ÖÀ@t–Üq³ŒÍ34‰¨©Rôb9#}¤ŽIRÔ®ÄÇ»×¼ /C~kÆ€oÎÊtÚþ:•ÛÓeqÓühgg‚ZX¯ÞŠI9D—Ÿ…~×6—HÖr† ½Þ’\y°d„qÝv#cmßôýÅû ÀÛd`UÀòüFõ^ãLg7‘Y+¬°|dl°„æZ"TÀá•)È#³&é z]C2ªˆ ^ T”»3¹Þ6$[¸»áUÈeÒ :dv©Ç—8«\x™ ´Œ­#NÒ±2Ywi¤yJ¤îªmÜ +[¯¦.¿ÊRÆ{§t­A8²pU…¬šëÕlÍ´qìí2dâ„´m^*ضŽÑeeš?À MÙB„…P¸–U…þ«_ã>쪡ӳ%35„é²Òêì_ïrñ‘á¤ÅÊDŽ@Bá¹5’Ê$ËĤˆªc9V­ !hV“¨H"/náš0/+FJúVYÉCO-îv8‡/J²EË ­U0`#†Êº¼s’Œ“–%lHÈ£q`îàß¹Gp<’z|ô¢ðµ’£°%V§f4x݋ʒA –qQ¤%Ÿ’ªM0M Y›ñÈ*Ÿ ÇÈäÑ…_ ï˾ "º¤Ÿ·"f/±)þ;;ÿÚ§b#è/ñаì¤lE»Ä~§F€ ¥åǨ›iûÇ÷|×¥¹“šeª,Êï$Ž•¦IË^e Ý’),άkM4ÊÐÅJCU„è' îÆž¾qo4R˜RŽó$Ž"Ö`I"§rQ,ò—ià£ÞiŽHWš¾Zd­ñxZÒ ™HÝø¡ÜqäA?ÚÀp.7Ümå~L®]Dí&©¸aeJõÒ™d˜I”ª÷ÚÄÆZ0Šë=çäO­=gVù#Öü†nµzÁ+QPÒ¢vf(xÜ~@ÏlYÌ­*’R‚ T"Á3°äÄ÷œF±xæÌä+P‚XÅ‹B’Äe˜3£ldeŒ¬kñNë,˃ ãM'Q䄽*Èì¤e(ìRBñÉVSIIfúwâT†m¶·R'òv7$ž ÈÑ- ‡ýψ2Ù Ê{¨ÅD¡O`3Õŵ„­7ñÍ t ú´ûÚ²«î ùC·’‹å° ¼˜î 3—êºÔ*%4Ö¤\³0;òçëžRzjRÁp¦ô‘`_x!Æñ¾Ø§L2\æ?ÊÓ233﻽‡=¥Hæ’I`e’ÜŠL3LÑË\Uá¤Ó7¬'J²¤§ž?eªÆRÐ>ǹ}†E ych‰µ;™–£5f7‚Š ¶ÊÁƒ+xî…˜Žê6>'>¶R6.X£•$¨YðSbÜ6â~܉ý7ì9]K4°0t–€×{Æôd2ò 9bþf+~kCäð˜ù²³_©v „¤‘²Äê ˜¢­d³ÊðÄ¡f£$&:‚k8èÈy‚Ê›1F@FÛ5&eq1îÍÀYçíË+ h¡3äù ŠÈ›€l~½îÇ¥òJ)”µ6tH]/Så³ † % AJ† dE2 •H®K"•TŽRFédE¼rl+LTª_÷u¶¶³³QWöôk§Ö©^š•P…¦pÀ,´¾gh"•T¦˜?(pIÜ€ÏÇ'|e£œÁäÝœL-Ø™aìbžpj ¸Šå•øQQSu|™^Sœ&‚Èf±uòu­ãªW·hVHlÄ ÇbXKF¤ EeE[”ZYÅ» +UºëQ…h`È,ÊU„r,K+¤É F]ÁŒÉ µ6dc°/626DÇoiÞN +¡#œéLaCËŸÎûwYÚW L^IˆU³#’­%ˆÂGjC$ЪÆÑK¨fW—¦•SP™v/oмadh"­U%n@2àõïa·¥yf%?‘©)2n+"óT;Æí…ãBOÚ.ÙXñ­³SG>=)zY™rÈr8¹$’9Ð!ƒI,²G+4rhò‹$¯6hyþ‰’S–äqb ªбØ÷ ”Pvñ»‰7bOööô¥ñ ÅP0>l7Û`¬›„;îK ,7b‡‹)zžhÙi€, ˜?ÛôppXdh.ÐdÚÒ/'¾Ñðn—g €#PZ‘%YJ$GebZë ÛˆVìf@"º¼¼]F¹œdøk6qÖÖ› ˆŠ³¸]¤un $&[1E$®>„„AÝE¼ ÒȨ`wâ¬" lˆÁ>ª¯'sn Zµ¼©þêÌ«ÿºi„IT¼î1#Ê Ivp_+*ÕBÈŠ}néùÊÙŠºj@NÀ;²'½üG-Œyì­*ÁBL ›3 ò^¼¾"˜œœæN¶:†“ÌÓý­ÈÐý«šx»ibNìÉ üÔ«:Õø†åäi¤ˆ‹Ò­@Š„dqÛ)²È8ZœßâW™¤iEôÈý£Ÿ&ÀK!„ý}hô÷û¢‘ S”v¬F.‹câÇ's”ÉZ!1±@Dõai+äËÙX[Õ‹à7v›ë° F@'ugP¥Øn[ŒŒäNäú]C;^…QNš‚RPòws÷ãÎC'Jµ"¥»êävˆÿŒWïøQŸ=¨ÆR’‡h‹ÈýùL-âç BÒÖ#þ]ÜI#­h,Ádp˜zWž€#-œtÅVhdþ¢Ì‘®K,pÆë]Ìu@+,Ÿo› Æ’8§’£öÖÀó^(Ø0ûò ào°P­*FÃnC²nH.vÙø–û, `vâ 'eþÐIãúâÂ<£2l…xlÀý¤-Æ=Я@ éÓÔó !Ô™™™÷Ùñ/áÙöŸÿ#ÿŽÃÁúâ¢ÜÆZÆÜ·Wh嚯 …ëȦ¹‘»4b8àŽ`~,²ÆÑá§aòXKm`4Õ¼ýÉ1•lÔˆµYîÀlÇm`0¬°EvX’I!ïÛ± ÷ƒ5i$¶Ã#‹™)Han®£B3¹‰7—ºù)™Rgví¨IP3ÄóK©‹¬?‘F—¿ÄÒ>š†:†VWEA‹ºüá¶&áofA$`^%Õ¸ãnÚ>8xè݌ծ¤eU%!bšTb¶Ö’Á¤ñtè&¦`S&È-rxñûlazUÝÔ]ÄL¨ƒ7vVbž ’($RqØE%~ÒU}…—l}£é^}åîµÌlhœªØ´Ò•PÂVŠEª¬Òƈ°Yg·õláñèûòà2ˆà*Gm þ¶fâ6ý~¬ê²(Uw߈â¬6ªx<ŸmÆüÆààJ ]O2ÿ:Gÿ$Zò ^npXtì³#¾¢áˆ’ÃÚo¿8¯oÒÝLY–i±nѼ|)§Já`‘¦… kY>YñU“ 7vºC~Äw=¢2ús¶íÍŽKr(XÙ׳€³Ï$BHâ°9|ňMbÞíAV_­3ÛnâžnCú?÷àn勆Ø)؆'wÐß© ÿFAô^‡ŠNi ­€¬µH‘4ÉÅüb}iÊõ ÅJ´¥$¡k- µ‰߯+ÌdèÓ¤µ¥'PK‚ï¿mË}±^^+`ÛHÂDH üÜsíF!y&I¥øè²W†ËGNö5c9Ö¢i\ŸN37qÐ[Žîä·^¥˜Ý.<¨êê+f*ý¸Ê|[K9’HW2vDl°  ¨ŠªªDö„NnXâ-(®-maé,qØ©d¦W†òïjðÅ¿‡Å¡y¹ }Êü`‘H‚1»Ç ”†CຫV䋺}NÞ¥™­—Í"ê’R`Ó}¤® u×PUéHi"CâçßÜ`"ý)Ô'ÊÂ’näR QÆìÛÕ;$ò¹€‘»¿ò×%íÆÈÌï™hì05Å“™ÝZ£ÖCBTùé™ºÙ¥Ô ÒÉ f3¨;ùo Æ,þZ–[áèIbHr^b[kžŸ 5§/êíEU)BÕ›¢HÄrHÒo ©Õ^1ò1ncXf1䣑ç˜w¦:…ìÃ¼ØæL’;¶Bc)J4ÝÃ@ȶÁ!{ÁfùÑÃ|_ú£«ÒžØ·–C5 ‚!snk÷-2”w Õ÷»QÉýr1‘,¯âŒ î<ñ^Nê¿cÿå8]Û}˜$~†ûú§;ÔkÐÌTE2”€À˺D¶óôÛŒ]”ÉѯI+[ê“ó4l}Ÿˆ;œW•én¡2,¸hÊ„®ŠÖ­¢‚A:Ʋ-h#ƒq>=HvÇXYX5ø¬K§S¥:”4›X²nÏòZà$v"WRjIÚùó²Rï-Ih’SÕ`¬72~ü1BêX.ê@àA;†/·×eY‚ˆ1…Vf Id ÁTó¹PA$íõ$ý‹lÇr=c_9ÊI,% ¾äý¿]±«ø^YRu[ýÆ]›‚üv^®gô–KN¼?:X'7vX%¥9¦zëÈDÐΕÞKi¶õCÿA8/ÍÜâ^9">üÐöâøÑw;r³W>K3–*͹…r`,õí÷1û5)·sGUTñd–æ‹iYMÅ^)¬FCË_cÈãë¶]EØÑVà=¼œ·;ÈÒ1¼J®#t’iŠyÞÂË,bºÈ—+½Ö2•×Z‚k-µ«¬lãgixœÍRE,Ê©•Òä— ¶Ð7/¾ØœÇÒÜü‘ˆ…Œ@ŠmÙäU¡aá¢d®k4QA0<^Œ]˜kIµˆÅ–ÝN?áV§>EÜ**Ɉ‰5¾ávcŽÒ|Íi#±´Ov³5c@«(°UÚD¯2ˆÐ¸.áÁd_È7*$©‡Àýú÷Wv~@íÉKƒ¶ã* ®üÙ¼'×ËÊê¹µ'R@IiHwq¼8y˜s߇NË$IP{<ñÌ ö8¯öúY©{ÐIœ&ÐÇÙ­¢É±5VxµrÅ迌‘¥P÷Õö Zéž©A%ÉfÃʬó}%¾¯'VIéÛ!%ÛkŸy>Aè¾ö­‰AȱrfÝŠ†䲕XAmÐJ¤ìI ŸZ™Æ•¦(¨íZuGîvÝwŒþ¤U&0¿°»l¤í¹äÄ€OظâG>³¶ûl7ò>܈ð7.üvÛ_,veÙOɧ!™v_-ÄÆÇv_Ú$—e_×’@ùÁ®x;GcÅÜ;þ[¢BYb¤9Ûc¹?]·HÜ‚FÇoy¤3»mUØnÄ ”1b|©î¿ ÅŽìI;1$zÉb7uä¬ÃpONÛÿ¸ül 7ì|”“"ìˆ$b£ìÉ ‰v$ñvPÀyÿƒ¸;Ž'ÒÂØvç÷õçý±:ËßWhì§ßϸäÊüø™tãM:²Õù‹+ˆD¿$ÍÛ¸GÁ±)j¤wŽv1eæS”1JÉ1Œ÷”ž=£pÿÉPÔZû½qò‡/U{Û[ºk|ÍÜ*ߟ]%I"^Ó x4År± I+I°ÉnSÎÒ´¸x‡*kµ£•˜—cöܪ¨MÊöË1´<WóÊ„»Iq»`úîz(#!–bÓÍ’wò-7Ø–äúÿ«®@K…ÅÜBI›˜¾˜i ‚9‹Ùÿ©'–SðQH»r*²Ñ–eä$ŽZ¹Äay+—qŒ¡Ð¢|\…B?mÅcÕb“é+}W 8ìÖ Øe¤ó:>êÜ_š»žN›@´`†XŒˆ ’bP3±õ˜Ã<šPyF ¦W‘x’FMXŠ3øP?fÄ›_Ô©Šê,K1—»wý¾øÄððv3 ù_|-ÔíÁ~ŸæU)ÍäwÄ_#8IPÄA¥WF$#›xäú³¨†bÊî›sJÒ´å–7²‚‘䊤|4ªdQ³×pÂNêK˜Ä®²³_”i\ɺ­×6¤ûE0¶þn Ë“ìæi“G»rˆ4dWäU&¢޲‘‘f“¸à <ÚÜD¹vüŽIË~¢àXw³ø‘iýK“Ó’ÙlQ¦Ȇ0lÂÆ¼K ¤»¬sˆL…™¬UpÉÄõCQ•2¼8÷FŒ¤pnÊ|ì´¢2ñç`ý„Ðù¢Í1à`X¼NK2öŽžãÀ,¯Ü`t$ÈÅ¥±åVÀRÙ(@Wà€]&Ñz±#;`lñå"E%pJFX¢Â¦Pˆ°^·?4&?yeúâ¯O"ª¥U~Ä`¨€l &ZÖ ÿ|l¦¼à@4u³9Ò x´÷°¶Âd£ªy½‘ž*KÜ`¨?wi# ³ìÎÒÍŒïy·X©°ÉÉFcê–}@¾:5n‚ñ2'mIG*îû,,G66ÇÑ»±î}pÙ¡ÙãB6Æ@xö2ÀËÍ#¶Û=‡„d÷`ìFÍlè½UÂ&lÄâ½öY¬²†/ÛP6Æö‘NÖ!;A-o»†˜ èø}8°z%ÙÃÙ˜óÛÌbωŸ…T—I“€H"-x`Þ¡Õ-JØÿž±¦.Äb(ò%“ZY’ÅhÉ’xÔWˆÍŠAϱJ>pW`¼fž«¬ˆ$Ee§Väï"¤Œí XÑæPÜ-Ù@Ñä몬 ÞF>ºK i¾N…šO$³ˆ—tFo†kì34„¥q5˜MK-ÆIYÎ6`µÝ}q“¸î;~ZYV0Ž©Ý_‚GìV$fX+„˜nÌÂAè…$PR)iøcWÊ},Hw/}W—q/Œ•WP¨ñ©‰€‘<µÛÛäê–}Â*ÕÇB©ÚBÒAÈÒ¿5€+Ϋ)v¯N¤eÎÍÚÆ‹Ý†Y[Š'"ÂXá671Ììlü–ì:ü}ˆîÿ¶5BÊ¡p9hÔ ËV¹û+nñ²wй&+¡®¬.Àdœõ,ÀË­I)Ö@pXùg¹äb4—˜@"‹‹@³if6vx¾þ$±u+9±åG ˜ûŠW!0cm£2É:$òF#†"ÆÅ9ƒ ÎÐÈ»yº—–1‰ RŽ321KM"}»Œ²Oå k 2«Úš6ÀËi]O²öpY⫇Â#“hZGLÂË»ÇaüK–ŽP\AÚÒ†šÕ ûÀdv”ºº„Eä+ƒÂ5•XìñF9Ò}»p§áÌßaœSéñ¡ƒjÜØÂ˜žý¼c@«)?÷§gi´4O&Ûc·w¨¹{ÔîQ’•ݸޤ†'3¤v*JbIeÙ¤äQ­!-rq4‘:ˆˆÙV—žÎ"ödùîXî‘Ê·B„•†ÏWÙ’>x¦Pñ†õ#ŸOfÒ,Ø;© q+¼‡”p|ip;?6–Ò²*Jè¦Õ{mº¦\7É#‹(NÚ*»<ÙàPNˆª–«¨ìVU»¸:òé €¯¤AV•8âX“ÄyöÍYu”GÆwH:],ÁÞ#oÐbM€Õ×ôæ<Ñ­N¥gyÚ{ n ¬dU“’Gax×XÏiǼõ$c,¥¡bž»íÔÜç-G#ɲÝY‡úÙmÖ™ ù câ³Vh^ˆfŽRÐzØk÷A³OfÜQ°‘¥ª;¡PŒ^rÛÇûÊ#i2ñ“ )fǤuÊî¾')ÝUZ‹HÜVzéfä1ʝðC!’Œ­Î½TQ•å-ŠjÓÉ*¢”³L¯W¨•êpX\ìÃòÅ”êf–F½‡HòOÚ%òõ34íÄcñC‰@t¾§r›Ki-GÞyx¬Ô”•yj¸•ž22¡ÔìÒ±îãp¢@¬ÁákJmÛˆ+Ée÷¶Ó])ñâqñ WY–Ús?Ü Ø{éÇWb•dH…{.8ʱiæäΠ)h1T޳.Ø}9¨ ¾ %î˜vz¡™¥‘;hí<̤‡¨H§vù}Ãgêk|ƒ^‘¿ÎÅ‹peû »Ìþ.qßRå¬ 6¾“%­E𳩮A’µVœRÇJ*¥ªAd,ëöeX¦’iãŒKGVÃ÷±÷!ŽÕ§j³(õÇÇäeÅäid#ŽG’ÃmU#MqT÷æ< "F£oæW;ÉŒC»zÝ·Bö9¸\§59J+F&%ÈDî׳†ïY^)¢i%Q6r¼/Xqà„ñ¡¯nkiZ8ÜòÌ©Z¥vI$Œ ^àˆï-2Oo7‚Øv}¦š&™@)€,Ò4°ß±:‰<ã!UAU¾½Ov<´ÿlS«™…þì>1˜¬vÎbg'ŽÉò s|… ô+«Ã-¨ù÷ç­¶Þ¼Yȇ6#ÃÒàÍÍ?5§E¯ý‘ï4³D‰‘H{åœ W½ýS'.Ñm.:Ú $|ëN‘̦NÔî¥If•ÿ«b>GÍH¤¨‚¹“Ó#0þ$2ò@Y,ÈáLxí/äŽÜ¾@«m­«zÌr™H)Cîë“㙌_øœðm*¨ÀDC{‰ä·Ž oÕœºÆÆ\n+º°/-â³–Ýê‹ëÂJI7ɉˆ°Óû§­<ÇQmehÙÆIBhíGb'ãjÚL+¬BFŒK‚9¼¡^ûª½k”Ý ª“Jeõ8¼¸n0àï™I™ãÚˈk£˜N’ÏnÓ–±‘]ë•UÙ½7ü^b¦žÍq%sm«´kUD-j‰‘¤Nƒyñí#4XI%’èå}$e2)#H@P:’˹`,írnÙš0Žc6 JŠÝˆQfƒrmæ¼8Ư܅xøÆŸHÐîÛ!xã@ ¬ï"jµ˜‘€—ȹ˜.Ó3®eÓx£N¶.Q÷ÚÃK-ëÇ(šHÒb\™!…T¨GŸu­BUZÏ^ÆÊVêÛvёԣÄ_f;R9‘Ø $Ç •²£ú¿‘ÊZʵØ»Z–FÄm%j6çA"(’ÝØçš±€¨ŠÑ5ž,"’¬€WjÇäÈ^Ê®Új¢•D5P’NR£¤;´ØÈ›;c0]T©é‚ì\‰³{†™ÁAz³1±|n:7T ÈÊ’òŒ¼%ÞhA€üyi7õI9Žñ‘(³FŠY¼$q&os°XikîÃÍO<še_Œ#ó‰ô5l˜Ä^´’‘ ùk"µ‚,²÷'h–GìÚ,Ù(d›/HÙR˜\¯p‘‹¾›(þ,ÀF’zG™B«Î (þßÇÿm²ÄXÎS ö@±ùœGÌí±&ø´f³À¦j‘þÀ÷5…£ß‘Õœàñâ)}”/ÚK33¼åš!B¥ÒDiDY&¹)ƒG’¸êÌš‡'.RX’<5È‚7Œ$×+£Ö²ËîwŒ¹VFÇØ’ltl­§üFQUSøÛ»•™cŽz³¬e¤V´iÉ!”²×ÈH€Ø•ŸÀVX§«!Žx¦‚xÝYû°Žû¤ªÏ ¯mæ Ç•TQVz…/ÈM¥dС•¤²ª!A$B¶:Ig˜ÿȯ˜ÌÔIÒàú‡a÷¤ÌFM°×ëäP3OWv†M@.’Æ ‘h·÷M‰É$þ¨‘þ‰gªö93,[,‘” iÃDdÚ€¶í X‰ö˜Ë|E¥'Ò+vGkК(¬Êñv`6$àî°GÊIXK åÇ÷Û¶?%  >< ¿ã2¬Ä®.ôqðªÈ©Fuò³†=”vD´¸øXvð÷rÈ’6!g^†Z¡Jª€T jPK‡x.nMùŒBjôÒÔ€þ¢Yàíñyà–½Y¸ÊUðÕ ¦0Œy;m4‡•W^d3C,[41–oqgaI€‹Òá꽘Á’LM2HWÝnYl•°²3©U­ePE‹ä¿)n'ÐÔbrÉ]èd¿}5ç.U‰÷™bÂÓïóY¬~j|a¨lc²¬èã–ˆªrgjnò*ľ9GÀÆòCÇ ÔЂóò™Bœç)‘. i¿ÿ3f™›‹µŽ,ü^uË)bÄ)qcĈÙßME¯,g1—q/‰¤MËœ²äTŽ;0]®ïZUŠ)«X‡c-§jÙzkRŒF¢¿ñ£™™Èf‹Õ<ÍÞÇ%ÿ&_ýœµöjè,ÓVÉT›û‘@¬ “m4KÜx£PÔÿÜ^7U«vN3M#I†Ù"U-¦?+È8RÆÃ¶‰±ã‰%ÉíTbÃ1g²ì¤m¯/F•4Ñ )%É Ôæ/ÄK–ÞgÕ«UkÕT¹`Îû;És¶ïŽ„’âªËÛu;²(Bc–7R\Á4¼Å'“iï;6>Ò¬RB. ¨òáñ•1cáµÚŽwY¬X5€?>fKQ^¼hÉQ‚¯g hG^Cj³Â¨3ŠTDš9Ö41‰äÝÏ…K’‹ÿte×! ;ÙŒ,øÀ¬›øjÌgŠ™ø+V[Âûjê{R¼^ÅVcºÛÍqšÔEyŠ4j¤¦°zvbÞµÛq!§¥ZªüŸš€þ’Ïy}û°Q±Õ©Rb?ƒvIG%°ö¡9G²º3¬É&Ë2žÒ~JðÄ„m§ÿ¬ˆÔKƒ‘$dŒqŽè*öï-ueŒò&¸6!S:¢©D6gœ4k.:ÿyÜ㮫\{6vcÀ¼I½±ÿžä7ØQýUO·¦ ŸRc­<’òð8îéü²`s䥉¬C N$“¶cùÊ&`WŸcÁ¬íO–+ü…xãŒH„z¶Z?þજ21šË}¥N‡lV`ëÛ¯|È ^ƒð«Í:Ã<Ö$ V½içû ,ó"™9!Wt¸ÃúIL¸¤=†,vß}Pã.B WJ6UL)!{*‚H y~ËSËWŸ”îì¯éVËåV°º (‘º›ÒÃbFûݱ*yŒÍ4H­)‚Höp ï°ZÿŠª¹Ã2¤k|”i‘Nâ%“vªÈ(£‘““ØüMh{Þ–½WHc!ð“;~m‚äcB%…Š7“ ðì°1äc.‹Ù^Y,FÊD1·¥f F绲H9ö Ž »ÂT2«'ÍuV[Éø€N¤„ŒNBˆ¸û«³ÇRbÛÖU‰ ìý¸EÕÆe$‘`þ>ðÑcœ  âd§—N oèCŸÎwŽóì@õ‘Y’”T¤¥Éú÷%1Äyß“›Í„²uhH 4ÿñoÏì¾ ƒª•È?òW‘_²IL”lBº;Ê85`YÆÂz}´-’ˆ»VRÈÜ[=Rªx©ÃÏ…ÿ‘„÷%f=´îšäs–0€Q^&& dYP¡ÿ‘n=¬}Ç^h­¨"âÏ&ê³IqcžVwyÔw1VÁ[zój9.++мÊHâ|l¡eR8²Ë^4n*Ò6ö)«x”‹ÊìY—Ó'#‘Ô °Ö?ñ°~K‰Þ ¶9¼ÙT·Ë/éýIß·ŒžB;·nÝX’¹$¶;M¼±C2«…‘V)–—se.£æCt󈚅öéélðÓy‰r2Wù ôîÓzèðÅe$y!›œò<±H’U&åHxÃZ9Ú¼…æãŠ^7í²K$ˆeÜ'iñ»â…î$Na[´6k±¯› ¸jœsÌÈ‘V‘äRƒµiehќı¤‘a®Î²SŽ@dŠG²E–D·®’OB’ÔÊB]ãJYƒ—àNûŒé¨¤UI@&¦·*’^ÆßP@‡7IÕjèPŒ;»¹ˆ!ä]ØZÇ’7­0Nݳ¸…@2:­•8iÃ/-•®F¸wXCHõquÝ9ã‚mã³,!ÁQ*ÔÈ!ñFüÖu *Ù‰rU‹ŒöБÎy”˜¬¼NáoVóǰ¥qãu”JÒTµ Tÿ¥0˜ùK­°³P}¯§ M tàþ‘%ÊC¸g¨;i.ü_q¨æóaäÚ=»ØlÏùݰW“ªõ#ÿ'¸wî:´WT* ØÈêMe)vXšJ·ZABôŠèó§f8…y'c²qçV°d l'†òd"´ƒlc§d†ÓªÒÈ;¹™ñ¤g3—ráì‡?Ó¿wü¯lÿâ­n)Ë1Ú!( v"¥šAÃò-H×ãJ6 `ª“.ðð, úß°“ËzÓ"ªËfä ’:íܵ%„‚UHŽÐ£¼ibª#3(Ês dPûUÉr_èr%ùKÎ3s•‰ /h#ËÇe´»Ê’ .7:’a4lÎy4q¼márŽ7W¤2‘*ÓæÆ[ìM{ ( éËe²ÙuRbHHS(*Ä4cm·Ï^½jÅÜ1vL›AÙ¹÷ijGê”Óö.÷jM}îöQPÝìÄZ15†±2˜™¦¶ècïMá2LÅ%‘KSsÕºLl<Ê ÆC‹ÕþÍ3qE”v‘h˼j@íË%vðã¬X(+Ã#:É 6VܳDYáÈ%5¤;¦*q%E œ}8ô,mÉñöø¤FFåNã'sik˜ŠsÆåpI–CòU€;VÉdë/]F+,çX„†Ûæ1:YŒÍ$„!ÂeŽ—¥ˆa¼½¯2ÉÕZ°’N"nÊ­ƒ›ÑF¶¼£šG$ pO ¹¸ïZ@ª±YR&|ŽªR3Ûr!Æ5äFò° {ȰCË]Ç&‹˜îÅ °²(=!–°#åS"ÄX“¶±Ò‘¤Žhê¹(®ñ•šâVvhåp°=+€öB…«r7ÇJÙÚd…'°Èíñй”u^NF‘Ù§VçÂ#`¢“Ór%ŠIRˆ,ËÏ;íihÚÕg³‚îÁ¡¡¤px/àÙâO¬5šjTÇŠ¸éb||òŽm|4L³ã~Ä1F¬ 0Ý* ̯Ž!VVc [·TdVD ßF®œoÒ×@ÈÑבÒJÕ|<²I$‡µ7m—$. ¼ÐÛUf›‘zòBym´¥RT G’–á]Ò²ÿWYy(`ÒA±C’[`»wHRÉñ“¸ÃxPùxB™Š²ú#F…:4¾4ÿ/Ô PYÃý»0Æ:µ*TY]B5D3a —=£üš¡êÕÇ á­$b4aaâ%Úbã°B»hÍ$ƒíxGÕªS+vp¶‹.ÉÄÚ¯ ,I!wx[a4`¼2âçxl­¹¨©L¯$ci% Û)ÆÖÈî ¯1m¹P 68ïDÿL‘JÁng"•“Ã,…Z¥ ½®â­“"2ïØw^7ëDÜ­>ÖU‘UÀzvF`I> ãòãy‡/ƒ;œô€ì–XK<^CžH÷0¯Vê’Ò6à^ÄÌ…¦‡˨‰…ÊWçfc÷’ Hà–bc'¯IÔúö+X€áoBÓÇÚEicrd™žÔÆ;¶`R×F%ãÀè|k"ÔˆµnóDÐÌò’± RNØä¥@¯É¿Ô61©´¥ŽL¨bkÊS‚1Ú½®Ú!$ġʙ#«¸&vïÇ(þ¡»Dúoáù0PÉ‚a®"÷7gðц9ÌâÁNÆ 6`Û@±³ãï#gT¼i¼ãx™¡ŒÈa‰ã°ÑRïHrœ»Òɶ`k¶ä‰£õÕm;FÕKT,Ùk9¬G,6"Š8‘kÇ «ÛUt’»<ôÁåB7Fváö0"aväñwX+³Hçº_€W°dŒžÏ.$­øSjÐĪA¬¾þž†¤ÌdaZeFØ”EšþWägP@=¶/#Ï!]ÿ­`8ï²½*U©h¨C¤° H ÆÄOÒ1’•J”–Vˆ[ì÷g$1-ì7ÁŒuZ‡!Ï aË% $9*[ƒûB·(›p-R¸y6SÕŠA;ßÃÚeUc²]Œ³q ÑF« RüYäg;À§ÞÐ1‡62uà’ӳ̕VnÄÒBÃpÈ›$kº?å»ÿNùô¿‹mWˆ­r$Xåm¾,ÏôVìÌ{J£’C°K‚åùGbwá°ÿÉ!çš‘$òGìøØ3¹½üK?o0óÞðV^¬QæHÄXo ÍÈÙ¢FäŒ×hŸê#< ‹´•þBâ«54üºÜ­]ë‰)T‡Œ³)‘äŠI™ ʱö„Ê$ÞŒªýв[ÀJãî‰65oÇ”öãfã7ÑžóE¸%H0ÙUÞ’Ÿ7–ôß–!f2§‹”Ië¸Ý[Ÿ6¤ î¯"žö5>ÙY. –'_WQÊe(TJé6°€°D´·¾îo5ÖÍW©L"¡,ð–Ònà¹rå®Û¾ ?ÈI]7]„JÉ#EÀÅ –;éjY*K1e· |nMl›UxÔ$ˆï°fÄ{ÂÜÈÅÔÝÈ,e2ÈÛuÈŒ2‘öÇÐÄŒ=¸’[—©:¬±ƒ4r%{ŒÑH€wV8âŽT±ä#B‘Å–ò¼cÑYÀoQOôû±1£ï K,êî¿5xXׯ4kïøáâw‰$ÀŸÝ÷>ƒÿ¨ו/ÌyadZý ¹qØà‡F³B‚Pbß:_Áåí¾>ƒlž^B«.à ì€l‘S¾á O¦öfLº“Ä•#–à»6܈ßÉpÄŸ#~A‚·bJ“ºž[&ûþ7p|GêÇs¿A;úÆäžG`7ܹóöØmõnGù`mÉôþ‚Þì÷Á·yäÊþ÷ÂUXùðv Cœƒö,8ìýyܾå½8Š®ÎPâÈ'vÝ·Û}ÏèƒúâðG¦e”»ý ‹ú`7#‚ÿøa°>þ”8‚A–y‘ä#f ·ÿXÛˆÜ*…¦ÂÇÆl“võϾÅd‚ÓßÏ^£CI!~uô¥©ZHö`YÞ˼­°LId¿2\sê×2²3s)WXËò“o ¨Þ]însKáˆ>ª¯¶¾i®½ñ¤s”{ôë¢xºKÏ›µZ-ãä*¬íñ’@viêÝa8m6ñ°ãÚdV,ÍÊ5‘ ÚI„¤sXc“užr;¸ù>µ?Ÿ]×F?þ—P@ü@ ·½¹¶9,øŒ¬ÎHSH`‡°Ûô +ñ,rT2Æh”ˆV ¼¤¢1j–$-:YŒä±PÚVB Æ" –=Ä-øÈÝ¥Þv…䨴úŸ–^Ð=‰ôôe®]Û‹$b3 Îë9,ÅxlÊòIœÿcÂí~9IH‘v DOCáöŽ)PíËòwâæ]„U2K·Í@ÔÕ{ŠX•Q2@»L°´Á÷Æ",o´È,Ñf—<•÷w³±=¯»*<Œ„1Cº÷a*Íöí6Êq²ŸÍ<¼«^Ú"sxûr)'VO<[ØN›³¤M'Qű’©·1XùlÑãHÔ§p´ãÄ…·Ù¿8vK°~ùOÏ_¾,\£Þ@a ×%ïŘï†Á'gùqyŽC¼±Ÿ¤ÅLù“ËÏj"…YO fa! Ì2] íDàÅ í¨ôiÆÜ‹î;*€7û+o°m‚ºŸ#}À`­çõê¹è<î/O[Èÿ$óÅòµhV8d™Ì©¼#Ù‡t*b*°oõd^S9DÔêv—ËÙ²ª¦=äzV5‹˜I';®Â(%eY¥; b¥NÄÍu,µj™¥šHZ„1H,@l9ýqÐä«RE…ÔJT;>þÍ³ìø l¡ü â‡!·±M?¦±ä…ßÖDQ *®Å‹†`Ïõ Ͱíïà·þU|ƒ¹?çÔþ$i™{·U‚£ŠŸ„‰$j¼•âM¦š5¡‰ÖF%<„7R4¨y­v(8Ô±¶ÌA¬)<Âß^þÿF'Ç¡éÉæ¡©TTÄ¿ˆ™ã†o,?÷RH‰W,ıüæm>¯…ïéžáŒ ‹8 `æFŽ0ÈÌ]‘ 2ÚY>Æ’zàÏ{ )”ùµùi>eré*¬»I¼eÛìÉâ—ä«q–ÎÒ©wÔ=C‹ÔáWòÊ•cº¶D Ä¨ÖåÇšÅ#iÙ©ÊÎÿŠ…‚‹p,vô7€¢MU¥äbI¢Ìa—è¶Ï#®åûêZÎì,CiA¨†±>º\5£$”):Uëô³*p öõ ¦;ƒÍ.’³f   ”3pÈvcùI™¹q°h«¸Eàƒ?AÈvÔÒÑ@GÿØ8xpRí9÷Ý<·E<¿J6òðG¨=GÓA{ööQÚ+ñ,¼ÝèÑI‡A»²&Þ]áÈ7§S©Q¸‘rWÛb «1Œ+'zSÄówH*Éö[3£Â¤H my\ÐZš•O!$q1ílFc.‘ñQò€È„‘ç°ôÄ袦ß`Uw*¤s ÃÆÊß¶ ƒÿæ?±ëNûJï)qZv7ŽwÜDr>É 3l­°#áú‡Ž¥iBc—åYB…yѰB«P>Ãhø6é)ðk?Ö`Ž=&tZ™‘ä3جY&@±³m•¬„䌞o&ò£zÖ’DHxÆÁš"Äò—Twh¶UذNj¼[TƒNïó :}«ð˜:ù26e€Zš áà,2F°˜Ä¦UäX'”"‘^@g©Ó­S*´! Rµ!À® œÜÙܶäjÓFa+ZÂC©ÊˆbO=·"ø°‘ò$kn[f>H€fØ~€ˆmÊŸñ°8$†,?eøÿoìq nùòGèÅ·mêz—¤FìÉh·ðU¼ÿBßÔÿÛLuoIn¨é’õžAdnl3äXä]™ bw"€L°žì`¨$òÃ%œ2ÕK€Þ‚×¾×ÁÿÅeÏþí"ù%ôò9í¶'ÜÝ@mÂøªìÛ±]â@ðW`7>’©½ *—©ÚÀbŽÕVs4nÑÅIŒóÀ3ö>Uˆ”nç¶Û›ÝJÑì^EÈIÇ”ò€jÎÜ„@Pï&å¡~êx ­}_-^µJ_šÖ ¥$³‘‹[ËbŽ™Vš>.º‰HÔ$éáÀ™·{â|¬ ±MÈâAâ-¸¡ ÷.ä üyÜøKØì_fQ°ßbv>W‘ðØïÇÿ±ã÷ê ÿô†É¶EÏ)jÉV̦Wxûʱ²±)Ƀ©Ü©< ‘Ôíû4y}â1“³×°›DOurœ s6ñÄXƒ$ŸOÇ „ÍÛàU;A?X‹`¨ÍeÄŠ¨›2ƒû´·Ò7’j2NŸÍ”'ÿ…dO1/jDþŽmˆ‚P*Ž[ª’®ÀñÛÕMcÉbIrBÖŠfîGpÍ@IÆE~å{ÄEÀîk¨zNÖ)l„Æiq³Â‘üyÑÖi¢jë³§ÖX ‰5ÅØp•žr±Hfªw!{…UÝÌ®^5WEï‰ÝAî¹ÍÔØÉ“VKtÕB7®‡¤Q­NQQ K¨6 næ7rE® °'©.B†¤¨îÆm±½Œ “ƒÿJˆlC¶c,ÙI{¢8ʪ0P<ÍâFýò…?fÞ4Ü>þŠEâIrÑ…öx‡äO<]Žáwˆÿëô Ð:»‡Å]§“·ñ&–ú´0³I2ʳ°Ç\DœO<˜©/ËLC!§¨ú<ºŸå¢DfŒh¦ª1`,Y6JÒN‚²XcÁ­áû3nDçr¹¥f«(Q¨ TáA$‚!˜ˆî?2dîÊ×¢šIª„%%IɹÜÌ‚{ùÄ܀Ŝ;‚8–Cõ ¸;bFì|¶þÒóé\{qØm†ÌKo³(;rïàl7ÛÔ uGÈ›¦Wdì ™Z¬áâq/ ë”dî•[vµX%hþÒl¾žÿˆº9]ÐfPväh™ÑĘL.ßÔþ)ÎË<’6%[lß…Í’ß°ö«`nþq f2á¿›L@¿,ÜvaÛ´ º©$k¨j¶á Ã@íȈQæ\缃vTP#m6íJ1À šSè{¦fUÕ8™ŽHT$VDCÍUXŸ´f@Gr¢ïó†Öœ‡cêW¯sø¬¾Z•ÌeˆìÂØê‘Èæ5ä¶…«òÇW˜©KÂ7ïWŽR*º‰ã³´†º˜– Õ*YÜUù¥H(Áz+ÙbÒVŠNûÓ(d…݆ҿçIÛ°»D=^I!HV£H‰g 7w¸cŽr¹J³o¨7ÄIpçSÈh< Zf(êÊÛóNÞç‰nƒñ*Iû¤‚!nvÊ–mÀ$ •X •9QûÙ˜îî®»}·-æ(ºïJ»e‘ qIVD”ËØ»|÷]°&ZáKµróÛÜúwý󥂲1]/cºÇ*´I?r7*BPŽÜäöÝ·EbOT+¹ ¡/,•,ðàá¯@>"äÛó·““ºª:žnÛ¯Óí÷R€G…;xí¿ÿ›ÔwTƙϫðe“/ýdk Ë~Üq´A™„œ;qÂË*C1Ï鈵ΖvXÆR Ýš&Áä|F¥ŽÊ$a¹î7oë¨uv›¹‚ËW«•¯<óã¥HbGž˜Ê;\Ù—gZÖmØ‹fªYÖ3ÞP}]FaR4Öÿ.H<µÈ‚#Ùˆ3ˆU­D¡`-6€T½›¼ñöœJÇ"ÞÊèÜËDê\È …e³¿³³\‰_z`—qazhBi…U“b–ï±n" {[vÄEÙæ=Þèv;#ÕoWhûNQ;¦VI"h‡pJ “·,8®’FŒZÕ(¤øÔù-ôi z8hMSÅàE[¹JÕ.…–’)X+8™#h¦28 $@&Ëh’‘ãs¶æ::ŠËDêIÒ;1¹6¶Ñ WYZšó Nå…¢6Át¹Bæ28*@]ÜÏ1ÿsqrÿÝþGJÈßþöãİH^Lw.@Ýc¸Uòùýz‰m¥¸ñþjœŒâ>1™9;IÈñƒˆÝšy8ÈÐE±æ‘ì[e áµ¾“ûž ±’Y¶P%r¦Ã·X"“ñM1!!“èÛx>| ×(©·ô¨ÿ¶\ ¹µå°hV£T§vwK?1o×vDwȰS!Ý™x‚ÜÕwJž;|0ÉÕuê:÷eÞjö¸Õ@Ó–fŽJè¨J Þ*òN$ø°ÿ×þJ9ìX"ˆý޲ÒßÚùš¹•x´Ì¯Üª¦b‹{…BÏ c~ì Ê­ÃÐC\äjåu›¸ÛQ\¨ñRhlSŒB¸”¼Š ±(·Ž[úÊë*6hÊćLMD×’R>¤‚Š[Ž@y½¥ñ‡?Ršè²T…zƒÈqò“iÀ0.Í,è±ÿÛF%ˆVþ¸HÂýÄpH´Bæˆlm@£âÀ$È´1±Ø¶Áésäü¹îßÂlÀ1ß`7-þõcJ؆ž{jÔñÁZp4'j8´A‰•ä?äÖX†Õ‡â¿¿ëÑþMg¤–#j ÇÁe;Ê€2 …iþ˜ÇÌ>Krü*¼˜ßiu:kUTiIRBF¢ K3 Mû™# §T¢š+JÔÊ“ì×3Þø• Ì xaÜWR§ÏDnéà€<øò ßÒ#n2¨*Ÿ=üîêx°†ÿ¡ûØò'qê65†˜ŒÊ¿ÏQy"i¢xˆË¬&ò#1â º€ÑÄ:ìñ– ¿¤Ç­4’˨1ª$U‘ƒÙŒ2«®à¦ämÀeóº…n*} U: ¥f úŒ¸Xp}£EZ&BÐÖ‚%¦vnØÓ×ñ–Ò™b¨y†@ ¬­êÍ*³7ÔD±+™eòÐ@fž f†=ëcŽiÆ4CÅ•‘–Få*¦&#”ÊèÛ0É#)ÑãZê|COd¨ÒÌQ¹bsIa­VÄ2¼ì/VpUú{DòÀÌ{=èÕ­Ê=¥)¸u!„i'"Ìb!YJ´¬û®Ñs;Y‘9KZqµ ±Éþ“ñ@ëK°CêŸHü™®'²4 Qý$Eßk³rv#vаÏ?Ð}” cÛe'q¼$]ªX“ðb%V­0rÞlžƒÍ/'Š«d¢@Ò]¶ïÁ$þÔm‹p;#‹Y‡ªîsey8É":ë È­†vG…YQ¥17þÅC-¸ ÈL±•'í¨4å=Œ«s/‚x£¤Š{é,ë×,ºùÙ,;)òŽÉd8–1³®Ñê‹Y¤(Q!gVí"Ç‚èg ÓˆEC¨„ MÀ!€x`x-äÁž¹æ‡ÁPa±úÐåà¿Â±ýxzP>H«£bÁCxÜ‘'ž;ÿrîNÍê?cUéÈä`3¸ÆNÜ}²g_S²>ÄïÁÉÛžãm¶<~™»JCãPaã)ògnV£g L©°ê¡÷_Žfÿ¼"žJ<€CuÈB‚ê`‘¥@b,K“7<`Ñ«HžŸº0™ä‰úD¤’¯ãë³Æß}ÂòQ!ÿÔã¶ãö‘ç÷Y5³)Õ9À¼]Mƒ,ªÒ±VBˆ’‹ÉHø-˜!üÊJKâ¯èìuf˜c"¦¥fŽSaC÷¥ˆLœ›}Ù¥‘Âí± XÈ@]YnޤÈZ©hZ­%‚`±_³LDjеç P(ûªd¦%Xsªc2:úßÓ´VYRT‚å@Ÿö˜îöÀþ¡Y ¢’Êhc á™ìý=jÌq¬n¦è”JÄm!¡+…Þ0cšÒa*ƒñ·naýCV/g'¸¿"ã–äl<ïàyØ« Ï‚NÄX´]êTõ+–¬%JÐ#Ãò¥qZ¾ÒEe"„Ç;þdµ8ZôÔ|º¶†ãöÚô~MW§äR?›ÅrÚqÛŠtÉ«õ²¡f&då»ÿÝç-ÔÑUUÆ”¬‚„»Ò&Å·cÎ%¨„åÙJÖKØ'nc~Ýñ!vÜlY[¼ä(Ç!À ¾Nû’ íÿŸJQÄ~ë㇕â>¾7^GìÃsȳØmë€ÚŸMŽVþÖS²•Ý¿Èõ„ÕZuÓÎs¿­Ä…T’ÇÁm¹¡|–âÜwm‡¡†d‡ÑPZʃ°a>9ÛVƒú–‹A$3܉þäb9ÔÁ ÒήOÊK?.óŸ³þøH8'!}Wè]Š«—`#¢Ø%“³, Y^Að§“yoºIŽ”â}ú…ŸÄä´óÔ©”ÇÛs{:Áé#ÉÎÊ ¬{¸EqÆI6ãÌ $ú ™9,‹ÄºqšVe@õEÊžÛ¼h»äÏÖ*ñˆlcU¬ÜÿL u•å[¸6¹yv’þ{à'P4gB‚“¤"KËY»6ŒYmŽºcË~_‰Fm‰!˜*ö|üQ'âlÕ[f‹Ì¹NþyH±aý»m˜úqúõÒƒ WNã+ZËÒŠâ×Už ^:òDÖYcWMËTíí´¶ ö‘€ÿ¹ôì]¿ùÎ00p5¨‹¹U³6Û9ð nÃô=«N¯Å¨É_Ω¦ßîø/N¥?†Za %È{{‘n;v8°ï9V/¶îv Q†Äìv^eJyÛè'ü©×©Ž-¹ ¸>7ãàŸØS°â<Gë„Ú—OÇå³8öŒñAaNËÜï¿ »G ]É;à0 öôãjLfÌRP$tlÄ’4ê'Ÿ<Š€8î$F)§[ÒtÔ2,¡§’ﳟ®'ñ(Ø) Ÿ}Ãþ6ÅuÔkç3 Ëz]Àf1ª"¡1…÷(áYâð¸Ö-y>®©MLGTÊ\0qŠÈöÈNAÕmc¹HòøâåÖí9ÿâïØ·ã…÷Œj;ÚÎe¬V”HMÀÉ8íIܘ61/jyxòøëe¾9Õ¶~ƒÔ‡§ÖiÕÔ =Û1Ö­&"hã{Q!3­š‘ÇÚo <¥nÒ1 ŒV–€È¥zJÊWàZJ !ÉH{œ£¤g§añ “´wú]±`ÉâXÆœ`9I¸]“ÄoÉ[‰Ù¶ß“x?çÖÄ[*© T…\#‹åIܯ¾T²–Ϩòê=:Êåè¸U“îסd"#³±íº Söû>žLþ0WÎcÔI*ÇQKÌa3ˆÓfVPk¤AÄ€H`Ão\ÑEbjŒ`–WŽ· `÷Ä¥}tç‚™vÈÿ ìS“¸”Þ?cbä­±ãa°Ë©‘¢á!$JÞÚU ~áØòSÿ͉>ó®ê¿oR÷Ô¸Îã5•%™HµžÔŒQ‚IJ¼Ô׃(CöoCÞ¢æñw°õÒ•ê–eÑŒU$°R5Ùܲ¾Õì×Jº×?vì=iɦ ÌQ%®I ¶&ÆcîqŸ2º  DbãÏ1å¶8 ®ñ’1ªl` ä9ŠF„ bC0@1¤úC¼Õîîì=Z¬GÀaZ1 ‰Çö‚3˜Ø|h‚˜ä”wJ¨ÝUäÙ¼r;’}TוÕ&g n’$G¬æ6‘g‚Ýh‰Œüªq•p““­Â8fõeðú‡ '™:£·ÆÅ*Z· ÙŠi!B‘Îñ0F™ÀÝŠŽÛ7 ž7ŠuTTZhèJÉ ?(± ]­ÚfÐ?¦…ÔÔC€™Ü0s¹ÛÄbdèUÔlBª“õ*yn7*íØ€O×÷äïá·#f?RB—!œx~B`²!Š=…¹ —ÛÊ×·É&~¼ôÀ~îöTj<+Ù²´6[&ÒŠ¡P~̱ìþG×}Àqê®ä.;ärwÆBÌÐL–"’9Œ·$5]-7áYŒJ½—+Zå§cs*ú)ÒP±R¶°¤²ÚbIx=ÃÃýFu-%¾’A,Aœ8<ŒzV¹˜äŸN72: CJ7Q¸VU ÂU&…¢šMå’OFeí´ŒÿŒ3 äA!T± í³‘¶Ç÷ûôé¶^ 9,¡µf­cbªI\Í´bh+O1±,<Éhà¹IVnRE1‘›h/Fhõž^yZWЍùm)Ü0;2:ý¼¸û׬BOÄ/Ò½$$‚—âvb]·þøÑ’]1A%J@Uˆ,î#xgÛóí+)e`ÉùƼâB@Ç?ýX;ƒ¿¦ÀN˜n ã³¾à(.[ûˆù;ž[j3:m’¤y~5ãi1’1" Á(I(x’ Hý‚=3£Ä»“-BдäKb2Áf…¤ý‚‹Ý=È,ƒÿÔ<£0]ZjÀF­œÜwv|n×D„úL!ÈÞ)¡ÀëªÅ#\^*í,ë$ŽàvÕ!Ø/w¸ªbšCÛI‚C/⑽œŽÙ. ²9$:§lÈD­#¨ï$&^)rUjÖx5aÚsè±Õk1㵘gH籎ÈIÂË,\‚ÈWó™Hþ†ÎzýÙ£=ÔAèPe‚>ᕊ·âuo´ˆÝ•ŽY6¬ª2˜­H¤¦èÓ ]WO*†:š£…^!ûý$ƒÜãžÍ²³N†)> _qò/$A‡‘‹u]À‹Ú@¦™[eî°â»~—o>y /ÓyýzsŠ†Ø ‚2£“¾àîíylŒ6Ù·f;ìwãGžÄ’/äh cB$­ `ð¨ÂC¿vf#u$‚Þ5#¸ä1¡O»[®¤+)”î ¹)yŸ(wÛnmH¯©lŠ€“m \ݶì0u+¤ŸRC%/" mô±ÙhSo ‰"•!¸# þ6ú²…mÈUT… zÖ¶‘ÉJÃEÁ€«eX¬*‰†ÅB‚wØ–Pw`HvÛšÙ¼XÆ™Jö‹ê,ÄUŒÜ„ Ç}È•Ï ä¬ÇÈÖ/eñ’Ò²?’Ʋ½3kIqcV‰äñVú;qmÿW¨&ž`)•¶´ú¥ ‡}Úwgï²Zè*Rƒ¸rúa˜€w.ñlUøaJ1BƬ‘2“*4 °7ßl\nv¡ ožÍÊ5ôu銬˜Œ¼`)*BžhÅÓàÓI¸¤«3«w¹l­c½ØÞ¹‹ÐLâW+ ˜Åp¯ @Òl6@Zi$Š2&¦§Ë‚,DQ•X˜úg—Æ×ÆfÓצÿË#“2#Ëñô Šq+¿nÌR:˜ëÍâµQÔX†Që¡êIQÊN~u80î"ø4ÆgÖS¤¥^¢×,Îì9LÆ’±p vÕOöxäÁy)@£ãÿÏénÇ |f*Fä¡]qÜnÇ`ä³7¸ãÉ›ÅÆßŸ%P¹”Ç÷á^$lX7û'›ýðwú¨B£ˆ?Ú;÷Øzò f*±— ª~²ü·’Nþwacã¶ØÂkÿ}eúìë|Öw•‚¤m‰Ñå•ÓıE$စ`Æ/ØØ/…¸ Š(¤-;1á,¤A+!®¥%´% ³ÑP¯¬«,°®®!n/)î) %A!$0K q‡g¸T…¯xíZx ãŠüˆ‹œ *¯nYüÏÁ#ŠI3Ç;qh«|‘µÔA=<£Áx££(“ÖAòü׌e䌆€x1f"ˆd@c’Î:6JøóË' Èef65ý!€w Ï$±¹ŒD ’ô¸hî 0¶tðN\R‰Û¨±ÚDçÉe CÉfSÆ5Œ›­…i‹Tw”²Ä€³ÕRDŽ$¿HÕQgKBÛˆÖ‘D™®« CÂÞ%e`ähwc^ïÞGx$±<ÚY¤ZfrŽÓDY$•É9¸‰­üúIº£2¹G "Å ïYã?V#- %g¯Žü”2m#°*˜‰$Ý˹˜pÓ<|;·‚ዧňïã7qÝÀ¬»Ð“¶ÉD§—)GäH òËCÆyBJ õè¸>ÜKI¶Æ)yqQ e),3öÊD"}ëÁ“š1=ƒcæGyccÌ–åu‘@%áZæU’8äHÖvWvÙ\ÇO¸™ö[LA¯ ªêÞ’³€,œ¤%T×3JÓös%5í%™–Üž‚q®õT_„½´‘=:iµµÀ§TÇ2ýäÛÛTÛöaý¿wÇd½qÍ\ª•¨Ä±gû8ƒ¸œD°×ïn!¦Z¥hü‹„S,þBÈ@–9ö‘ø±û´Û¡UC:¯ÞãD[5dõÎK¼bdíÉܲÇ)ʯF$p,›!¤1Üb&ÏÆ­Kxä«À5ó#P@<FÍp€¿X6i9*ö¤ñ_ê±âØò-&ÞªZ Sêbì]š"Eì,a™Ü@í7þàs8è w‘@G>#FTnéw(ý°±È»Í ‘N%/á½$3Ç¿¥‘e(X:70T‰ÜbRhçr±Gý®•æßþXD¸îÛ}×:;1³p ²•†iY¦YLb´>[JcÌ+;_9?“JmâœÔ«OnÌ9»ÊÓûM <‚XÕGY_ã´¦­b¤E¨½P™­´¡d)<0 ÓÑ. ’ü0ïQõk— ÞÖchÝñÒI+„<4b2¿Q"£#)$mOQ! %AÊÚϵõN~–ÒÄZB¨RD’Nài"æ“$jl‰I¦™aX¿•’2+É -¬Z5˜_ž‡~=ƒ†ü£¶ Ç!y#ïîöÜÈÏ3¸†v^yR~G‡õám&Bñ bXRxÔ?ôÒ/ÆJ«(á†SÛ¬ÍʶŸµÞ­’· 2HgÅŒÿOÐI [ـ‹’71ص§’ÏI™I#± I4[íÛ ,D+ÈfB¿/þ)\+_xæ}3Ý@‰Fq¸*ÆcI2’¨ÐZ’2"xÜ¢Çv_Ç™E@% 4 À!oij®Ì$†#³qŸhÂ<ñÇ+îöŠ1—¾~F9›óô¯¥¤Wä r"î°¤ÌfDåÙxÇ*Ö%ì²³R‡z–) m;üØÈKXEÁgkü·?Ü#°x¹Ò±µÃ¾Ðïã–.,>†5´Å♼oÛjñ¯y#Ü–£ïך1’‘Öµ€¼‚çy“v™™#vÂÿPɰ5å°£Íï+^h¾ÕȽjG,d+ S ˜Ù^iI‰Éò–2Eh’Ô®ù9ß*Ä`W(k0»;\„EfŠØ ›hÔª°BµØxü`dßæ<¾TÀ¥”aËvàAsmàÎövALɉƒ\6íôll¬¡¥]‡TEêY,®•|1cÜš2ë|ƒÅñ2/ÚežŒÇ 26Ì®ªætvÙ°FIІ‚( ØÜaç C‹+†õÎK Àûöç䲫·äíÇbIKFZ8,ŽBÿÆi-[tù¸tŽ&³³¦enRij,Á´Y§X"í´ÑÉ?Ç’Ìqw¯ ½¦ÑÙf“"²m&Ì,â {‚íO†'°µ‰ ðàoÅÙñ±`Ž€ƒ’ɉXbICYLÑ“öš¤?Ô»íy˜Æ  ˆ0Âxù ·:òiV1›ÌŠ"ypRõ”i)Ù §á´y(œÅÎùQ—´ˆˆ›——ÕQäUŽhmI¿ÐÊ{PäP%‹RŸ…?n=jIbéE’Y˜ìLb¸ Ñ»ŽÒ¼i Õ_ƒ‘M}7zNí–z×y3 ä›—`âÁž#Üo8…õ4’@ IÞ~ÁyéE+xE‚PH ¥%%Q$âÑAĪÍÂDJ1ìÒ䘲X®) Y·™¹´«9FÛ¸’ÇHÒ6Ú ,7%ÁÈëjû«æ¯8‘ï¸]•.;²›!¸ö™ •þÖÁ 5ù˜ÞÅ©.Þ“Ýheí;òÜE‚i‹Æ…•1'Ç–ËBI¯KcBZèÏnFºŠŒŠA!¢Yì– ñäŽ_|JHÞïHo쵘4MÍÈ ŠxÂEÉKÅb´IÜŽ>û-™±Ñ—²g1æÃµY(ŽHZTVG ½îRó;÷¶ÜLüëÎU*MþÐ4þ´Ú:÷BìÁ«…¼¬Ì¶RNÌ‘Í:™lU$4oHÖFU\$ý¸‚sñ²²«‘õÆ#hž6PЬHWŠ9'ìÈ7j±}4ü»½‚Pé&˜Cz™ƒÙŸ“â' e¦ÌÆmP|XØã¤Ì¦6Œ#ÅÇŒac’6r_s]’nêŒ1±ÈýËÒ¤”ò}ºæ3ëÂÀr~k˸YÄÑ"ªòãÊI|$PU‘ LŠnÝX–Hs#´¬vÙRF c2¡y=‚ë 1Ê›Œí‹™HH³‡DtÜ*Iã”ÈXJeù•–ñ© Æ™¸°¸Ž(ß|tØåçiÆIMö³b «SH`Ó$Æï âØÚî)WEî4%^@¨²;µ`$‘IÞMÖ£7õSÛQW c© `è’>܈åÂÀQ\¯h°•¤X%X!zÒ RYÑ{:~aº±™Ï­)­À$4‚ÁܱiÉ–Pcw"¿ ”ˆ²N±–ÎÃÅq(³Æp$g’5à‚S"(Ð:J*+ˆvhRxë€Ô!‘ ©müÄ‹“ ¾’PHr beÌ\h˜.0ÎþÇò1âþòÌóöx·&ðÍÅœ/Û›lòÆÐ³4¤L»5#åùPÊ»íéá2*–RÝØRGÝù$QÂ`‹[åÇ]‡Æ‘ŠÒÀq6W`tpˆò÷!Œl†'.â#§nüs¼âŸûo·"}êF‚0×T –HÁN/Œôʧe’¤û•íSÿʘÇ74‡ B•ê —%Å€K—–ƒË|!{Ä[“ï°å±Ðw‰•âEúРI%ˆ4.ÄÖ$º‰ÅY%¢|„ò+V¼©X‰”Âa%R%,̧´½c$hq€€Ö’.ì8n"Ü]ÂwɆIrV1ß+!Q+JÎÁmJJ¡rdárÿ™h¨Ä+FÁYB@]#WÇc´è‘ÄÊ&­³7nuØÿÕˆÞ<ÀBúuS}ÜýÄÍÌ;½Á¸&A%‰™´?“HldÜ•Š`UÖY%ØJbedylwb‰DŒgPdž¼l“jä^®‘ˆ¥i—"ÊB3fGIF•åE »NbYxyŽg+ŽJÿ†RÖ·¤Wc+í¬ñY;%D…UøXr®‘›vÿ“•¾M[O>¢üK0Y*¥BÉW1ºKŠ8˜›~2A¼{¡ÙpˆG‹îβÊ’ZA-þEÜóˆ¹ØÀVKØw¹2C~xÝ·SûÇwt®ªòâ,èRD«4àfF–ëÛa](¸!˜a”IåĽØ×„n¦0«2Í=µjÓ-$EëàÊÃbœÒ,Á}k‰$2wÒRÆ6­Ì¬¯+DȇGi /‹j{YÊûѦE•FôÒ—Ñ’3Î4&5#@^š¡ú¬R¨Œey%’áî×̼“H…"i©Nˆ%®î?À·Œ82Îa®àghæÇaËr§ ßi €”—™.¿xƒÈ ’‰SvxÍż²¯¦WºAR,/&„'bU ¬¨‚Žn \αòZläÕ­šVÇÊH·×ù ÇyYX3E’41+m¸¶SnÉýÅÕ_—IÏf°X?^ HvâZ!ÞG‰èÈ®Tï,»ÕYGÈ—bÎpÑ»Å0ìê‘¥Š6[!)d–°/`Axý؉Âq%Œ5¤¸ÒÑm„l?¹R¨%XɉYDrInÈ‘Ö9IÜ”U2Ø”¼m´È‰AÔ‡ý±ÎY?ÄÌÏ*F{á!UXƒÂ ’ÍH•ëÑ@n©›b¾˜/¼ž;„ìÑÂâbÍįy®qdšw‚ØÈÆê2õ8E@-„yÊòaTˆâˆ‹$J[ðŶýʱÅ6ÒQW.ü‡k2ݧàîÀvp$‹˜Ýø-|.1-<²AÚd1"ín^ðeT—‘,A!‹<³F&ÀH8»wâ•RΦƒ¸#´'¹—°Yà •Œk]͈ûŒQ~¢9$r‹4{¯dïJ¢–©k”ã—­F23(D^r<…¡ed~D` ÒiÑ%²²‰ºÿÔrÌë êÑÆ6WWXë!g!„S…Ä+±ïXħqÙ6É3H±†‚ÁÁ°äy·èì0Ä=$Ž\À´·÷Žø}䉣^âÇÚc¸šeŠ@dU‘]†óÅMl2ȼî|Ÿ›–L4hCC(çÅÙXÊ¢4å&F‚.’Ö*ÅʽÄY †išX¢LSª•rOqÜL®$VpåLqÉ…Dnî9ÅÒ#­u £3¶ÎÀdãHÓ·Ú®Ç~ÎÒo]!yT”Ò‚Uf¯(š®  ·ÓèCú`¿'`Óψ˜ ¾¦ æK ‡._µ€ï>Û!’U#³°;/•yƒH„•¸Ï#ÊÝŽíšp"I<úu[eVBÌÌ#Y810•ç½@¤ìQaJ1ìûCŠ“<ŸqÙa¥ÙËÎʬ±4ŽÌˆ*É´o¢Ä\íbÂ7{.ÿÍé¶ ¼¢Fe"Rf¬¬Á™D¯c—no4 ´”–ËU-”âhKztÓUbbÅà¾î;\÷ÝnÌä‚îTDþÝîÃ|ʪSíDC Bzñ2³”/¹Þx¡’a³ì~lV¾•“à7?Y ›:£;väe~ìbMݼ°M I&‰>ócâSQl3Y^'Ud +¤Ó«n$‰ù±RİìÆË´AâþIŸµ~%5kÅò¸;l†&! ܨS(å½uI!4HÒlkF¼mÃca“?Me$A »pRZD8ï~[ƒˆ%¬Ìñ!œxàí…)‘ ±ÊŸ +'äØsI‚/#2î#™Ñ¥ÏׯÐ<…`öúE¼†8âuWŠT~ˆÛ*JQYJG‹ kÞÞM‰d‡þF`¡æfî¼vqó&”¤nðÂ6Œd“ "AgÁe‚­”îQ†òÃ#FÈÊi¦A0Þë÷Çöø"vþNºÇw3F$R5î62 l>ÖÄC€±¸†‰†ƒ`ý(9/zÏûr´œãbâ [feaêMÀ¥§fÙñ£mÛ÷%e2°,Xp³;Î^uÈ’hÄvšºí]èªäX-ô;bB i$'ŠH½©«! …yc³6ñ´Êä¥|­‰ høíšn0'tßwB˜£X›¹„’Ãl½¸¢I£Š9eW« £Ú¡eÿæ–"L”$ wkI9;ý%®ˆp“¨†‚÷$wb}öñ·ÊBÇò‘Ù’YT—d"…‚…¤ >µo>ÆêÿG"ŰcªÀ1 )ý }Q…Näq€Ìß–pZÂY?ˆœü‹À×”¦wb6GÙ î­+q‘‚òÜ ŒÇßu¸VUJÇi1ÂE —{Å#(©°"Š>q¥‰yL‡¶b¯#“3"m^¤ Aož`’>&Æ`LOçy˜#±|8'“d¼±‘ôŸg|2cWï;3»‘dBYD®­l¿ŽêE$îNAïØ°Âæ-~9yqD¨Ç¶_¼ó*–Ä%6 ñíˆÏ:ïhGæ:…VµÈ~ö6œz‡´a8Ì©/0ìÑ’„Å™ì8Vñt¯‘%~?Ã8N¿¦÷TNdĨ#dn1·hFÒè Q$ÑUy6¿1r¼ÄXbký½"˜Œ0’°ö'°ŒEJQrHîI††bÛ~ÈT«]ÜŸ9Œ©Kl#íiÇ+¬MÏ$0Û,AieÅq8xÐÑ"¶i"¼’$%@!ûrDyû, µNdâ§+;´‰(_O‰d*į9/&ÜùA;O(CVY»\c· +mòqªo@Éé/ +¼-»7hŸ°’0X®©$jÜåx šDm˜ˆœVPÁPKÄpO—q·í°‰,Â71Ølî&Av8[AûÎK£³«“&Í #ÈZ5-4Š6ºvD¿_cA;Àˆ"•Çã*TÈÎŒ•ƒUUy /tÀ¡ °FYL1w~²Ó ¬…(Éâ@Ye×JÒýšÂó‹ /ˆûŽÜÓ+0’%P¡9FÇ`žx&®%ñ»Ic;’IÃ0¤×Q²("4ní’î³FG¥©y9}çæ +he”)âæFíV±(‹êÖE;°…¶¼KAÍtîAX hª%xÂ$’ „#%1 R3FvãlXf©u’œî z[Òî~POp,,õÐ%ÝM ÅÀæ6üší†û1l#ŒÈÄI,¢E²$–6˜$¥Òo +Nr[tÛ5_ð@>T,Wf#MÐ ˜–AñÕ9ó IjC“=7¼ãä4çÉX'eÜÊf$Þ•.«¨á¤R’fˆqOXh¥¤Z)JŒ¨!Ë”âÆQ¾Æ¾ÊÒI2äª# ™CÞ‰ÎÜ ”°°$îmåžlÎ ‘ÙâÃa»\¼øÇ`,tˆG!B^5v6¥”Fø#l¹ø™b•…Œ:0=еCRé4­Ë—7*òÑ,‰Šã]K¹EÃn°ï[‘-‹+1gUGqœÉ,a¡tGXdKNâ.Í{–Üm`òǨ³¼¼d\w†!‰—xwÃ_‰±¸v ÜíFŒÎ#ŠÄ6øóHžB#L£’ £*¡ÖOOöÙ€ŽÇ8’5.áÑ£^À ÓÅb¸P߉¸Í65zR,YF&)¤ONI^Íe§-ˆˆ[‘=êÅ¥Ži,“3$%«‹ˆÉ=w ^X ”ÚòuÒD“e@Š]ѹÈ]Ž4Ég(Í ›ºÐr­k%Ûž¥åTUWIJ {1n{Z ¹Â.`ÄPX0âûãË ¯9by ÚY\÷%¤I¦ÿ«3®æk„9HˆÀòUŠ>ë$a«ì±·qÉš¶Ê¡¥W‰Ãœt|£øŽFG‚M†PÆ]YûH‘ÆäÉ%;ÆÛJKqWXÒO¬®¨ 4[1È}žB¡ÝJB8³4­*žâv¹…šIƒszHa“<ƒ¼­ ÁÊ\íµÓkp.ÛíÃZ¢KÉ \‚C7,=¼ìÌËFv•¸ìVHäî9¶‹+|®ÿ ñ ?÷ï÷#µ ±‹-˜«æ(·;DÆBéÛv8ãŒD7ˆÎñ~Hj+öáûY&_’Y‚A’“÷a•{Ô2ý-I“X–Tµ)jõî&@lþ_KR‘ƪý²r#"&F~eD(Í-zá¶3SäoW›ú™ƒÓ)|€ä8XpÃÚÌ1=S§SÀ±$3caôaL‘Ÿ¹txû_’D² AKÄÆr½èàË å#ný[Îì_aû¢{—»ßÌîv.÷œg³u^ ]ƒ( Èê«°™Ù‹†žpΔ,K–½(ãòÅq¤jB4]¹pŒ)bˆK‰UK*€3TÙ‚âe äû‘²¡l?V˜,Q«H†ˆ„e6$HâˆÓX•AÂNÏVœs YK»øÉº²FUc1!bÒ¡*VÎóL›ŽpeÔ ¼ÒJœJú†\{}\6rH~î 7$ËòÛ7<0Øa2¬ Ò²„óœ©=×giÅ–š$º‰äPo˜ÙeÊIÂ☟ú“3{Ñ•ÃÄ¿úò÷ª®afå§É3´ Ç–F,ó&Í3,¶“Q7Õ’É2EgÊÆÉü² ÜYGWÉOñˆëÄÿÓú>ûÚUÚÿ×§¸7ƒ¥¥Î«J±*I(‰a—xÞ¹j¸),H~ƒžÿP%¿@Vi!8æC—âØ7Ñ¥Yƒ°BL²’/ûÞãC ¦ì9}˜ŸØ °ÿéß‹1n1Øÿ¸úÈæÿ^lì|€ÜGí‰ 7€ÁR$ù>OéY~Î$ØŸRO×—ÛyvS»n9xDØ©ðNK©Ø1ŽûíöŸ‚«õ?ço±;q ^¹ÜÆ\–bx©ßˆ!¸ˆÿóöÝ|Ô€v~_¿ZÌdåºrUXѦá¹Ç›öóã“m¶äý¼»!Üì §v;r`»ƒ±ßeM‡Û‹vò¾šFe,Z=Áþñ‘Š‚ÇwX) Ì€bU3r%Qa˜¼¬FÿP?íñËÛ}xbê'¿)#‘_ß§Zd,ÐEÂK‡Jè7±#‰ÓÆŽ%dy;tà¢+µy$ÊR‹3rÁ§ÊÙ^Ù–¦-‘¨®ÎµQªb®]¢ÎÉvh&µ46YÖ\©k·oê°{s‘GR}üñ­ËïÏ«•ÝžGpΚO§÷#$‘¬©¼³=аE*UÇ[y®ÛT·kK ‚ä6âœw+ß©~¥”bPM[!RZy(ƒÄ"›ikÍ*dDl–¥ä,á_¸¨ËÛt½KéTR˜?iÓ¥$7Žä7lr¹ÒžªH *ë ²ƒ83 C>ìóóÃÛ'_ºµÔþˆè.®äszÏ©š¿R{yÄõnçIq~ÖúѼ6´Ô¹ ŠÏM¥º×¦·úOrÓç² ŠÑâ}AONОÅ|€ÍVÀO“Íâ$ù~Ý4Çô–·[ñ´1ôz[™ÖSè­z¡¯ºeÐÝ1ªåÆ`Ó%¨²pdú¯ªtâV­§ô3LÙõP5:Þ¦Ó˜©ô«ªì•pžÖzk¦ôEn˜éüÏ\1š¯O§éN'LCîSÜ,øün‘—BÏ )b±•ìõ( ¥§Dѹj²VÊáïVƒP&^®®Çc²5½´Þ‡ÔÎasø ?—Ò—ôöS\ætìZ7Zëm5‡Óê=?¦ºÓ41Ùhèi|Q`Ó|–­m=O {+­ ¿¨^huS1›¿R2ÝZšèC’ ¥9a‚³€6Û~#§­aKA-¤úRÁƒ8P >ÇŒã÷ïŒÏiœ_PzÐþ°ký!>šèƪÎå0Y>Œâ,â"ëF¡ÔSKaèŬz©¦¿Üúš¦cOd¤¯“µ&9&¯©g».>–C_Q{êÄèºù솵éÖ¹Ó÷ô7«8½Òê”´&gPÝÔÚ+©^Ïô¾4¶±¡¯¡Óy}ê>êôÎ_‚¤¶ò|–S7S=•Ò7ôŒ8=Mat¿¶è?O°zs'™³N`³Zö§ÕŒÄé6w?ŸÑX·{7g%vÎ#©³Þ¥ó™²PØŽþnîBz:hjokÕù Q—ÔZNíûúË!˜Ëç¦]a«—»oRäý¾g3ÔøyªÕ©K~ïµî‹ÏÜdQYÔQiŒ¥:b&ÔœägðºÊ“5Ñ«Ñm)Hgsòºˆ’ Î *ôíE©$¨.EÀ!ÇõØŽñ-ï|Ø ;¥º“ÖšçKµoIz‹¦zy­ôÏUz½Ð€Åd5çO±NÒ¹Iº¹¨ú«éù½™Å=Œ)ÕG0svÿˆÅáå»ZäÕâZSÞæO©èli} šÃt¯)ƒö““Àêõ4fwQ&¥ë¿¹º} ¿¤ïâ±}^¼ILY„ÁêìÌŽ?ø¸ìj´“¨5†NflNoÚÇH3BÈukøœö¨×umU6²ÓZÃSaòß‹¥Ú£V>rüøì}½:ÓM=(ÇÑ Ø 4?—6ªê9§Ë>¦Ÿö“Ñ]5CÃas‘c±£BI 9=i«3O“=/ëE_p:+!™·—Í_Èåmá:•™Œ†B͹sZ¦µ»0ä/å+Xi=:éu•­2F’U¤‰PÝáÛõÄÓS§ 9¤¢¦!€Qm˜=‡ÞÏg½þé]'§jkmMÒžªb´>®Ðº¨ÝÎÇk¦ÖdëVÒšÏDéi²[P¦Ééyu>¨zG¨=6‡]G¥odt~]ªÍ[OêWô½#·D:ò½`Íu?Gezo­zU®:AkAǪtž´±¡3M‡ê®•}u¡²ø‹Ý7Ö:ã ,y=›/¦-f+fñÙ/½Š§fa»ìË¡ùüU-;Çê¬æ™Óú3¤4œÍk<¾R—M4Î? õnKMtòýY±tb½Ó=_/ÜÉÿ´4v®ŽÑ—ðšjôê–4·O´–ÖAê6"»A©ú©éÅcjl­«,búO¦eÑ:!1NYiCK +V–ôA{/}ƒåaö:òÔúŸÅ¦ªËŠ.ѺR_v›lïŠ*ÔÉj¡Qr 9)ä½Ïè[>]¶Vûr’`eäð=•’8Â$†E1Ö–Xà•"{NÏ[)ŽAB²&RAŒ«oÍ‚šåc$˜ø»·Æ‚&c¼ ª¿Ð,˜!0åÄj†¡º±BÆdàxóØ(…ULbG’%!#`åžô8ãÓ,ßËÄdŒ€Ê[q†âa,ÄO#ÆCÎÅfØÍ(ªŠ]¾ClÖE˜Aü~'¸¾ÌI–n6%à݈sÈÐK»¸`ÛÙ·—n\<K“BÆIZ1 Ìù&q !DÏÈ$pÂåRÕ˜ 6"VY±‘J„ú׊)!ä±Ì,à†2Ç(++ÅËRPÂYeƒµjÞ5V)²QH™Ö‘åŽT\‹mÁû59ó¥cd´K¼mïcã¼ñ¨&œ¡Ž?²¯K!–xÇëÑÛÚ8"äÑAg•ãT†kÄμâårj<(oT²‚„û㥒BH‹8fÛöò{Í 0*2¡bAYÙüFÓ›~á=Êu[Buã©ZNu/EtÇIè‡iž¦×»šö­Ös¹EžÉÁ–µ‘Lîo¥=déým ‡¡ZŒJsYÌ=Áo,³×·<1$>¥¸ï|u´æ‹öás«+Éb3mÓ-ÉÞÈiÑtf*÷Sµ 7cGã5ïX4Rº™‰µ%ŠZÎÞ¤š;©«¦ØŒ¥Lnµ†îJZ˜ü­®‹¥:. }¯zŒµòMªz•¢ñ½>ÖR5ðiÛÓØ*Ö©U‰pÃXr0×·bœñ¨‹¦;Ъ¨5ò§±¾’cñg§õoVp8¹´vˆÑV#Æj +%«Pô·PjaÒÍAbîCB^ËOšÐY_™µÃÇ‘¯¢z“ŠŠ¶^hÝaN¸­/?˜¡ÕQK¡Uõ’t¬’É$A b9l$²*dL&ªJJ@@«H6bÌfç{¸‡«¾ùõnœ´ö4‡K5¾’é½,Oºëg«ú÷Jè\öœ×MíÏAêü–¥µÓ]#€ë¾ê­-g£Þ-ºŸ§ºMƒê-S¥ºÉ09#ªá4c½ßéxó8¼v_@u6¦…·«q=ÊõöÆ3§QtÊ>¹ØÃCzïL¤Ñt:«œërå!Ê´¸ ¶ én[AK–P²ëÛô•sÖÔ^ÊúS©dÍSÎjž°O¤²´zãŠÓú5†´–‚Çû‹Åçq½JÇhËsé÷eªö—Säò:.=y«u¦/¦ °éSMiªpé¥éKíK@=‰d—^^ÒU5+u3Ò<Î[c¥õqÇ_ªvfÇia/k(±ä­ãaê¼RŽU¦µ…ÒX¸# ¬*£¥@€H$3†`4»Àõ=Úq'éªJPSòƒ ™€2n7>H¾µ=ýhÒ´NW¡~ätä:‹§z[¬]7µOt²ÌÝP鎱êÿBú¡už§„ë&o'Ræ§Ï{…Ñš‹ …רý¯q:2†wª´^SË¥4þzg˜÷q†ÑÝDéÿMµÇGºµ¢.ë¶ÁÐÆåóù‚>#Yæzk©ôú};†ë¶g¨ù4þ/‘Äåu¶†ÑzϤº[[R»¦3L•£’UtWÙ·QcÖ8ÍC×»ðG§úeÒ>Ÿtk¦:?Nu‡1ÕqüGMzÛÑ.ºi›ÿÉçº=Ò;š#OhÌ·šbqú+!'X5¶[Lfóók¾´ê»Ú3KdîX-[íEêMK«5Ö[õCOdõ&¿§ÕêZ[’ÐQé*}Z£¤ò:KýÎö³=7Ìë¬Õ=KÊä¨e´Þ¢ÕÚƒHå1y ïhí/¤òµ±óÖŠ*u¥ ÔV…évIˆ.U^m|%SÈ%&CT ˆ–`^;Ù¯8uOýB¢Äô»Vêí%Ó.£è­Q.„Ÿ©ÝÿŒú?O¾¬šKª*é[wLatR³Ú§Oå*Ù–DŸÔÚÝ5ÔrSQ©ôÖîqŠ×=òiìräq¶z ך=P§Ö'è•Þfo{e¥Ôºº’¿KtçXa•3ùr¸î‚jÖÊtÓXiÍCƒÒZ3®:“[ëzÍ‘\F”Ëet¾¥LdcF{Òvús€Àu¯]u#\ê_ON„ÇÔ¯ª4éÓý,ÃKªfÕ9lWK2°ô멯×ËØŽgÔ½_ÈõScq¦î•/W `ãœÅ¯}µé o–êF¤Æu#©º1Õm_¶×sèéº[¨tænTéÞéŒ[§}eéOWza—ÓVð]2Ò¶VÖ©Ðz‹]iÍM_%>ÔškJêÝG‹ÈIÆ” A¤ % 5Š  ¼ î# ¯áÞ”²ƒ)EKIQÔ])K0ÁÉ!·°À7ݺþ¨ôå+IЄձZ§ÛŽ/WGÔ Z‹OZÅÝêæS\çõ~‚–iò:vþ©:¢zgÔÌeÜÍK5E<¼zzõ9®J±G©¬}ýiÝ9îr~šS‚ž„a=»äú¿žÖÓiÍCsSjSn]7“ÀtóDÓ¡’ZÔ´±z›L.CBI‡·©Sk½¸û±¦Eq÷lnÛGM0úCKôþ¼Z®ö™ÒÝNÒ]J¥K7•Çß½z~œi|¾‰Òš/PؓϛÒM˜m-r…¹_R¦Šž-Wc% »6†ý…t" ~&œ§S²C¦z£¦"·sUã¯emCÕ¼þŠÎËŸ(šb+-ªôL½7И®•äêËNgÂi<>'ÌÏE­ú_¬•k)IQuHÒ’Á„ú‹nÃÎ:z©‡IÖ” €©L™!Ø37û±7‹Ý¦1¢£§²=÷ë šÉ4˜öÿ.¤Yž­OZ\Rúïùý)Öœ÷BêôölIW3®,u†–6ާ𮋧¡Î4|Àžš{ùÓ÷úa¡õ¼Òúªþ°Íiï÷¯Qjô¿‡±Žé>—Rͧ±ƒWàõN»©¨­I’‘buÑ<«Ôž£å±½ÍK.Œ};¶Lÿô±‰©ê¿ýC{ˆ“®ÍMoî·œwRë㓘éüqº_ #¦]Ešz~÷D®6ÕB<ýŒŒú¯þvxßôýé––ÅéÚÚª]tÑv±ºN–ŽÕùÜC¤sê.¨éìN_ù,|zËPfº;™ÎilK¨¶¤è­®”ëxqÌԣ˾%„Jêh1Fˆ@`T%Èù€¹Ïâ)þF’•V¢»°áÀß•n1$µïCOàµ|Ú/£õŽ·Õy}SÔÛ:K ÑÜ>;Qä'é7Iñ}“Ru5âÔ¿{ZÜÄf:·‡¥KLô—¯:½”ä¡¢zKšÇâõFµá’¯a`+ö¢–ª*EX;±È³, F@‘£‘,8å•Î.Û5ûóOZee¥Ýhö[£:ѦõF•ÊuC¬X-!®òzæßP´f^ê­=«*ëÍ=¦09Úa:•Ñþ£QÓ¹ìHT]9Ô] ºsª:jüź=A¹fÂW©qE‘B‡ãå³4‘DѯhÂ׌ÒÎ] —¦—åjèãE¼!”»>ìÏT²‚I ûì°6&{@Æ|ßáHIË…%Nu_M€¼sEÆøQŠBã‹ÄHï°IBü–vSò¤o–¶`Vô²DKï†îÌ œÝ\÷YÕNŸõã1¡¦Êôo£úOOjM¦:¦:ï§µæ"ǺӪ0Ø,½ùz7î#%«t§B´¢Žöw)Óý Ò¼þ ª:‡[jí/4½Cm‚Ö:jü_F¤}L/3–Ù„'mÒI,1€A ¼‚^ÖŸµ´S#ÕBê'´ŒwPr½O Ýmë>˜é]g·?]ºŠn—ezsÔ{9=#¦ôF¥)¨u§JµoXºmŠÖzSK`tæ·ÄôË©ZR¥¢ºËAÁ¤uFWRꌴº‚sKBT²’¯S Ê@ 1¶Ü‹G'ðPµà2ƒRI!ö`Î_¤—î‹@äµv{Ó}dÔxM7‘ê——©šg¥º§TtÛ7®úQ–µ‚ê&‚Ó¹m?SVä56—Ô´ò:b–£½¢ñÚWRç(d4Þ‚Ôzš<|¯Z¯» V²»Ãi­7©´–µÒº‹Ibz—Óþªè«”5NÀë­1ªõn…É]¡§õSjšº;+j< ý½S¤lR–νÁé‰JÖÜ÷²­)ž¥Ô=ýj÷ŒéQîu/;/Dôî­ÒxM§õUsõõޱÔ0d°º=w¬a‡U,ù¼wOz›¬õ¿Ip•³9|t:Þ Ôx*š}4öA£:sœÔ9¹ºŸÔ½Y“ÔxþWÌÁc Э§„ý9Óš×HhɰÚk¤=é¾ Y°šóPÔ4iQІ¦™âªô©E õPHÒ”÷NìSoPãÉqiþ5DC “¥È‰ïlmtÛÞßOuvœéþS%×¹[ü·ZúÛ¨{§yн(Àêÿs]è×TôëÙl¥É5; ®$ë6‹Ò©Z¥\ækIfrT+jȰmÑÔ¹¢Þƒ÷  º©p8 =O¨5Zâ³Z—§™¼îÔx­#®´Î›ª–®æô椹Kø‰à–9a±9ÉðÚƒQÑËZ¶1áÈJ=éÿ³~œèžZé®XuÖþoÚ&r}A}ôIÏ׿ìëCûpКL}ºÚ"ž&6Ô¸ÏlZJÞ±µ‘Æ\LÎ ÖØì<ºfžGŽÁ½½ô'«Zª6þ²Ìjªý8é7OõÞ•ÑšKQë.œjÝ+„Msa©&B¾ŒèOKz‰’Ó8Ü\p[·©úǪ5®¾ËY—ø‰5©½:5::™tV@!E!e R _Qxf}Ü–}±%"¢ éC€Ká,¤ "Ä9ÇÐ]û’<­ m±uš L#„·nQ…(¢3*G[%"+â­ˆñ§Æy& ¹h‘]ÃK4E¢‘0¨™á€¾îا™æÆÚOå­Ja”z´ídƒ´ªìþ{r:Û­ÏÄ$×b‚îG!Ó•í|”aUõQ#@K8!C–ÔÈ ™I®µÜTŠy£Û˜Æíw:Škßx¹FàbKZd³øhw†ÀÐãíïçcû ž”Hȉ'Ý£˜ª4ë4±mfU’HÄm3ÆÜnLó5k•wÚö,>µÒ °ªrĈ‚YUÃÒdŽDŒY#É6&#ù eQO܈D2e®æe!ØLÜ]WxˆàGs„QÅÀ •ZjmÛ”¤ô¥¶c±ñ»pÄRDÎÐ1¬ÐÈÊ,<ËY"fŠy QÞ *^¼ÿ-@ÁZ9$X)\’ÇÌ‹‰{ኀ»þeÈ$}løÕX‘än¡çŒË$‘Äãg[m´a™BC™—‰ÇÌ£Y .¥¶V%Tfí 8,_Á+(IJ´°5a.Òÿ|¸Ô+"7üÚVìWm,RHí"^|#½Òæy ‹zq#)) âÚ‡ #šK¨á2¶òÌ¡UJ2´¢Û}+ð”5¡žv Nø½””¾2pðº«9rÌä˜wŽI / žà„\ÄÙžD÷"lÑ8Ç`–hæg^S´¾JLÀ4_–Ô²c<í d^¶°»=ý<¢ÔSJ ´s!Dš4X‘[‰Fvi$cNŽ=¤v’-¤ÇÇ`Èù(›†ZHåR †Ã* áT©Šm±( -m%eOå#ñ Ó Xä„מ'ìâyÔCÊ8C³I6 …±-ÂùÉ+Ë4~›£2ñ‰l93ÿPOÂÊDR0E®0Yµ RDµ ©<‰1›!J<¶ù´ ±Db^ØWV¶ñ¼o<‹] xÐI5yW¸Ô-MÝ¿’”>"É«UJ«ÒáÃ%„YÚH†0m˾$ ©¤ˆïks»»‘ššßšëÞ±ë.‘^ÔÞд~kGõ«©}8NœjtB/sƒOè9Ìpë<CŸAIµg=A$Éb \­Šyüd.$¾Å'c7ï¡q“¨li1þÜWÒ1ÿ¼ÿÝÚ ø ç±¹ûÏWEZŸM²ÝD³ˆ ÒDÂã4ÉÑ㨴Ƥ“'©4ì:¦½ rÓô»£¸¾“é¨èÌfk#š­ÔÞ¨u“©ù+’#C'Ö+fÖKV„@øý=&€•§¹…½%͉õY²ÞÁ4VcF\ѳõUR¯cLát嬵<^%2+ŠÁû!ꇲ3Æ$Ç­5kzOª—õÖNÄT’lî­Ä`lQ•°t横ŸTIzkÖ*6‰†nÃfbIVEBS£KáõxäÚA¸àoÝoA±:Õºu×V±z†§Rktk#zæ…ê†+Dbº¡6‘µ­±úC'Ôü¶‘©Ó¼^JƘÇä3ؼ…ÍQVµ*Tg†„³Vhæf£÷uÐÖMÍU«1|tÛêêu3Ýë–&ΦÓ¬1<Þ‰ÆeºyNßQ«du®w †L‚9ìÖNÖS’×§bÌ]û9Òšòޝ§–Ô¹»8Ý]îe½Ëd1Q¾?O57J5ŸLmôæöF®*[0YÌ6´½-ÌÍld±TÒ xèͪQãä ôËÛo\òö'ÂkmCœÁèÍ1íÏþèÜ_R1=טJÝSÒ·‚›Méý1-nªô¯1§4¯ûcXê~¥>ÖZ’£c´þCéI.æu<ŒºýV™¦z€’@W $ú[–#}ñe:Y•¢’*$8k¤0“qÇœ}ÑúÓ ­q²çp/Ÿ†:™+ج…-I¦u6’Ô8Œå±Gv®[¬°º.–ªÑµZÀȽ§õö>ö—½“Šå¥É! bÙ6à¼8£Ÿ¶Èä{o¹s]߀“Ê^Ò•¯’dUTÐŒcú Óë>:–uN¡Õc¥´ÄZ§B|͸g})ÒþP·—¡ÓnŸb¦‡ù4U|žV¦‘Õ9MG®'ÈË{RÚoF¾_Ž>)à?9Ø­ý̲8—¿*I°• ØÊ©[T{JÄz3–5 F¸«¦nâïîDµšÇ«%kÈ( ó¹Û½±³9PÀÜÚ(áÿ ÛNcu55™€±"Æ*é›fƒœRI"¨Àä=dâ<´|"ÈD‡¸ñ½$/!y·IœójÐW2T,."sÅÊ5)òƒvÏʼnDíK:&íŒØ×jѼ99&µFb.¢5ºzÓÒ\Å ÖŸÑ:÷UéŒ&/¯šŽMÒ™5ΪÓÚn}Ó{úûRªà1š©Z‡IeõVRÞ-eZv¯ÅµG°Ü&­£ƒËêÍO¤z·ÔȺ¬ú­2þàz'¢:µÓq•ÖÚEtsàÇJk¾ƒ­¦1GKo¥É¤uNæ-Ž´ºÛ)¬qZ‡QasR^“{F~‚j w:#ÔzÝ5ÑÙé:'˜ê¶Ó} ƒÊê­QÑQ„ÇÝÏôþÞ'ƒéÿG±ýbÅéì&šêÆ+ÒlÝJi_!GêôŸ=šÉj;cE^®‡H¦#J½eÁHê }‰h˜/Å=CRª°K¤8FÄ‘é}ɦÐ0ÎwßgL±}^©c±ï­5h½3®fÓú Yµ6‚§[Tj*Ú{MÇ©:Õ7Bqx^.FÈá3]ZÑÚK˜ÈÑ—OZ£b¾fSÆCÜ·AqïŒ{KÂPÂæµ×Xô#=˜¡©4Ö\ç@ð}DÕV9{ÙÊáõµI[Râla²²I)oYÿ§Ý^ ÉwGꞪ]n‡ZÕ>ð5?Cbô}zZÞ$÷¥ÒN´ô¿¨ØûM—Q_Çd¥ÑÒu»Uj=˜£Óü2ߦ‘éÜý=SmI¨pZQf4¶¦u÷Jú­ÓKw!®±³3¥§©¦:¢t¶iðˆtµ€êè1­¢pÚHj,ELçóXÌyZÝw·ý/>J®c\Z2éèõ½­B˜ Ô½TúgÓÜÞ/Lk½Gª†™ÑÙ¦t†?›Åbrº¿Qÿ¥3¶oALìŽÅ} rÞØ:‹¬µ7©º¯¬Z^n®él¿F¬è|Ž ¤–ñ}0¥è°êäøš›§y.¨æõ.¢¿ž±×~¤Í‘µ†êvŽøðXÓøÚà#ÓÒRÈ‹µúçµ.œlfG«šVΤ·¨zŬƴ¿ÑØ*j«ú³©ðºŠ~ ô3]i={£úÑýc€ ºlæW]jÍ#gl¾O§y,¼qæL¾7V#ðé>¤’K@, zàöãgl/…‘S“[ú\‹PÌtÈ»žâ@ÇÒÈÏuCÇ2Ï]ÄrÅf kN¶ 34Ó» †”ç³"œ6A'lU:†Le—k’G!óªm~6€VÇ?lñ¢J ¡³2£XáäÁÖyãb}»Ú«‚á"4~³ U*è°¡ly‘ xãb±CiwÇÂHZ6˜œ©j­"³{Ø,¡A3–îIy8ÚïÃVö¶blª«¡_UbðÉžÉh¨:­>Nš?Pqøy¢±kF®«}u:L˜«ønH‘F¥öÕÔlý^§hŒYtþ˜èçX:…–ÖÚç§z_•¡Õ‹8mG˜£šÍôûÔ¼§QòºK ¥sqÒ:jÚËÑÙ5.;Jårø;Y¸-ܧšª*Èÿ§GM³ú÷SfuÍE纓ªz¯V¡é”'«X=A™ÆW††#ÕkÚ›)‚©¤ô–V øÉ±/Æõ¢@ÑÕ×“Ë »3SªS$¢ŸÄs"¡@ÒB‹±–iU¬ø*ORR½1t1€úä½ö¶ØOx½Õ™­„Ñš×bî®ÌhÈkE¬+õ¦O“ÑëDõ_ZèMÓ£©ºp”5ö‘Ô•:G©-ig‰ÈbºYÅcµUz—5Šø=©šÃ{ÌèÞ¡Õ9\"ärXÍ1K§Ý+טo¨ôŸQt… WYµæ¹Ñ:R+§u^‡Âå5ÌÚÑs\«Ô-9.cHæ._’®"ýq¸ì/³ì¯Tk Óîõs­O«tL1ZHà´¶év3BA{GéßoÝqöùš›%4‡?›n¦k}/ÖJw²9Ý9•Óšxô.]#Ó=c#ž{ûz›ÚWQµõÓëN·ikšž ÐÝ'£²o¤7°bî†õ#Xu ©užßSsù-coTK¬îá2k§uWN0•ëÐ¥[Nb0w#•åeVêÎé¤*J $Iz…¦Ìäô:QÓϧYv!˳Ã(D–à‡.1`²Þâz?‡·˜Çÿ¸3¬Öžê¬éf[Lh~žõ¨úž»Ð8*—Yb¢Ñ½?ÒZ›5ký§§2try|ílTº6¾>Ìbîpd¿õ©uç£Ùl1Ë‘¹ZcÐ?iÙN†uþ²‹©¬ãòXL¦;/£4…ÿ„ú[]êŒÆZÆHu#¨z®2}›©IRdŠ=CÒ^•tb-IhX·ª)ä+Í"¥Åå¹Ü˜–4V)Š> *sœ<„v!‚S¼¶PHø[Ex¸H’5f‚s( ¨TJ@àÎă;X@›œ™A+j *A‰©Ë;´¤ ùïFÑ…1¼œ–¤úHX¬lk,FD0,‰ïŠI‰­ðÒZ×]®‚Y‘ Ò½8ÿ06Ó¬EMû±1 â¯sή÷ëOôŽdª|:¾ñÝÂ%Ec'Þxšý¬ä$×q¨í"X?Í#yƒ<¦U•›œŒãv!v‘ÙøöÃ5™ÔךX×÷:††ímà‹”ÀZÅܰ&@¨þÜíŒÇU¡‰†¹-c¾Þ7Æ»¶ÊCFo,mÝEub‹Ê¼1–¥‰BMr„,"©]“3 4«,j±b.eVe‘¥1qíÈÓ<C$ì6 @EZÑ'ùÚ C²¹â0²–D/l¦8ãxaâÆ]»0Ç!R!®fœZ°ùPÊ̹fFº‘DQƒ<‘ž<‹ÚuÀÉ"Ù%c3.˸ ´ìó|bpcéÔ’àâç+ÆébVÌ2.%C4T£g,,HѬ»DÞ°ÊxÃKû,×2%‘ù$SOõDº«O­]LëI:«ÓÝ‘êWJzOÓÜ-mÒŒïP,i©ºIœënsOk=›Åõ‡§4èäçµÖœÔ->¬ÓZÛ †Èiü6>{Ñ—'RøÊ±ˣðúÁšz]’oꆋݱ²—Ãøªøº[@b²têtðåÀöٷ´Ͻ?oyý#ÓÍi´±ŒÄu'Fhž Ö|–Î5}€×sG‰Ò’õQb±·´ŸHîe2ì0˜›=DÎi|.N÷o»·%®%ØÔþð:'¥ðúï!C5žÕv4©Y ˜Ý=¢µ´´sÙn“ás—¨šJê›z¶”ÎõOâ0ÖòY CQÚ×ø rÅ›CLXL‘­R¦WOðÙD~Ÿkc‚Ó9Ñ}¨qÚËGä5Æo~QÀáqÚ‡KˆµÖ–Ðt3š§1pjÝJéXiG›%ª1¸ìY±§°:¿ÚÝ=WÓ=ÓYõŠÔ´¶KÜ-›— ÁÖµ2zéŸ\úm,™r«ÐÈiÝhlªe³Å© ÓáÒ 2[¡5zË(*2AÆX?õ/h/ƃG¦jJ…e—¸0‘òðIºy#m‡Z—ºÞ•ZÓµõFnÞWW#‚¥„ÓX½ÔkÔ›ï—è–„ëŽE3=.Ñú#ª±Ùm7¤uÝL¦­Çã1º—O鬨 YÎbòÚ‚m=‡ÒÃ{Äé^KWu[KU«Ôkô¶ßG*WÔø®u–?¨–úÕ¦†¢ÒôƶˆÓÚ“Rë‹’‚ôa‹„½”Ôì“^ÁѽŠLª òþȯg´½LVS]謾NÆ—Õ+–ÊôƒRÓþWiÿn] è&3VtÛ5¡:ÅÓÞ²ôŸPÕµÑY5.“Ëh^²b-c1zëPh­w©þ;LêìV£ûÈK.¾›9Õ¬GPæêöíQØêÇLó:ç1{Tû}ÑC]kQiÞªè-MKQæ*Ìãµ.‰ÌhÝgÓýDƒ'Õz›ya–±_­!šˆPKÐJ¤Aeˆ´7bwÄþM,õ ˆ² iÑÈw;âì9¹øî¨h¾ˆÄõ©j]љ܎'ÌCS##-”Ö4ô l ¼mº‘ÞÀäèëù£Ò™œ&WRÿMõ:Þ«©êã.P»Hžº÷Ò‘ÉáõF¨·[w%O5„ÁéMu­sx´Åè%ÔQžÈiݧ5& ¥¥tÞƒ×z;Skí_gþØÃbu6öc7‡ŠíExÜ=Ô«Ð?Ò[ÝTËfµ¶›ÉéÜö;ªš›ŸÕ×;¤:¥[«: Æ#TëÜÖ¯ÔøÆ®Õz µ3Aƒ6ç<€ÍsìÏZõæ£Ôš“«zÖ¯ÔzÃQë˜õ;¥ãJÏ¢/ZéwLzQ¤ìô—Wè_pÚG­}8³¤q½4¯nmA‰ë<Õ55œ›àµ.Ê×Ãárôæ3=H&™§–Ô¥ )d³€¡ˆ}·lSFŽMU*Ö,•ƒ:ˆa.C ™øÅ˜>âú)þ÷Âtö=qBmA˜—EÔ£%<~væ˜;¯k-îši\¯PaÇM ðZß]Ó•,ôßCçuN7Tg‘–n+<‰Úêo¸.ô‚l|}LÖUpÜðšXÞàu^~ 7 ôÔ¸úÚË©Zî=#†ÎËÓÎ’i™²¸ˆu¯QuÊiÍ‚¹v¤’êLuyãu©+þŸñ¿R1ÚË1Õl†£¡ÿúuÖ¬ýlޜԗµŽ ×ZL>O"¿$uB·J«ÔÔù<>y×+ÐÝQÔÌu¹Ôúú®xµ\®ûjÕšóUõGThާát!ë?·«>Þz•WPtøõ/–—Ž]wžÔºÜzïDA¦5^"—V:‹VLî­­Ô3˜ùÚwѯSNÝ¥¨«¥_©ªJ•(%5BÒÅÒX(†UÝž@–œJ¥,ˆ©M)¨µ  •-E™V 96ß­Cî“¢ø\æ¡Ò0êÆËj­<ùÌU¼n3¨çÅÅ®0šjî¨¥ÓœŽ¼­†±Ó¬/Rurº[Keó´òyÝ/<‹‹ËcåŠë¿¡}Ït{Xi< ÿrSÁÛÉçºc¡.é[‰–|®^u–M=†ÒrÀ(&K#w+©1ØÜ~n•‚åù,Y¡~7@æÇÉÝ•6¶åÄ¿ –âÌ|œ¢ ™›~ ‡/—;"·‘äùØÿ’¤ˆ H›þå!ßì—pL‘¶P6ò_<–°ð¼}±ñÇÛ«Ã'R}üF w§ïÓ«1ù€KÙ6tOM­‘!i Ó0+TH‹šcÇÚ‚qìZÑ©xÙÑ «RŒ]×r½«O$f¿Ç´U`ÂKµSÜSÈUïo‹N÷ôQÕ¤ßwSþK£+"ʺ¦4ÑÅ*©sV¼Ó«5˜œÅj$¹hú³mÜåE…Òi#dHå’P Gß„L¦i#~/&26í[«ÎÑZ sÑÀGMËLSvl A1.-#ž|ŸÅ×-%b.Î'ó »n×ÂIŽ@ê0†'4Õæ1ˆù4®,@eYÚ¼²{˜äY­Y³Ç)†¢†õ•‘Ç=™Ý¹4’H¦6‘¬*(f¢´dAÅ-Z iÚ¨Uj'Ê›æl>áúÍ zï¯Xj<Î+¨]^éw_óý#éOñØÉ Óë-wÒoôú1ƒ¡¥ñß#.ÚO Ô>«ã­dÊjmG‚Lì·,ÍzþFÒ—=‘õnÆ»éγÐZ‹¨z·¨ºÛ¢=HÏè,¾¨ê>œËi-ŸÑ·¦Ut£Rꬡ†Ž^ÆVÿN3Za3™ƒ[¬-%ñ/¢QEJÔ¨©*¨’§6Y’H— =ä—2uSF¥]@¥ a¸!'³€Kr7ÇÑžšãhe²Y¯ã©\†¨HÞIw]ˆäÌ›zwýŸ§9nøô½¶Pʼ:sAk¦kFàs_ñsT`¬k<QÑØaµÇ¾;JŽYDŽ­˜ÔÕLþ³¨Ǽøø"¬• ,‚Ä· {óÙa¨HÂcñUñ ÅÒ¦%c•kÁCδËðþ6š±ffŽ4r‘Ú‘,?j(]ýÒ¤Q œKÜA4ˆca̼€¬Ò‘!*î±·äTd¿"“@ÜáÕ°¿O˜nùGEFû˜©~02IÇaø´¼ê8Nð‚©*JˆêT6èêLÊ#s ú4rx¤ >’3ðÂLB}—]ÏM¨W“¤¥)ED¹’¢mHþØæ:‚ŒÉH0–™ø%tË…˾ddhÔ¸µ° "±!XÌwYLjê°ÇÈ­Jn-w²å.~ZãÑM´“p°5žH¤Y– È;g’Ü3GÈ©.§Ú%⤨‚ô–ÜjùØŒÒlïŒÞ>â•YòNä w~üÈv¶äÛE\ ê$·ò¯u 5Üû˜´vÒ¿+é~Y‹ñæñüð²Øk?’*“C4’/õ±²‘Ù£Z®r¾šÊ¤„’¥Jt%ÂD1á.L¹mTUN :¨ŠŠ¨¥%ÀF‚«°›óÈ,wú—€Æc¬â*ã)W ³VÈwbŠ»;4-ã¬9 =Ð~¦]Õ]@9þ™ÍÓþƒé>âr=>Ò4ž–)ú©Ÿ÷W®²X»÷±ÖuMéó7ô®7OçhkK:xéKúOGX­k%¨î4·»¼îkßVGKÜÖÇÐýU¬uO¶nžtîÆÔÑÕ—^èŒzßMû€¥ÕÙ´äZ#s©™l~¦öñ‡Ð1êÌ›¦³¯ˆ¥6ù2.UuŠ4ê-"¨FÊgá 3äo‹Ó‘ª¡¨-zˆ$† ’Ì@rccéáTbRPÆD—²ÂHN°ç(~RânѸMÜ‹._¿$…J½<ÓX¬ÕL±ÊS6»ê¤î©’²˜y§rÌ ’XyPßEí]«¼O̦šôcUëܦ°÷3§ºƒÒ™£ÓÞ¶à4Ί7–ÓXÜNˆÔ>ßzÔL^2Üyœî¡Êä²'PëA5ÜÝŒ«Ik7jí¥ˆÓÕq8šw7C˃JkÉ01¢jH1ytòI1›PÀ».lRªåÖ ž™üK)á¿a‰õþoWO^b˜Z©¤¸bÌPNѱ|,Œí:U4®Ðwt¸6w/ݹÁ5ºi¦×-§¢ˆÌbøÛCn%~ ’WJáY^Ì®²ª°®ó¬‘©$ ôÃN’§ûyÄÓqv‰EȬvã!·'IDrJ¥ædŒ¤®ÍÜyGÛ×盦vzc¦´fÔ½EÕÜf°ê7´·_ÿSeéYÈ&½Õ½j³Ö®„`hi.¡Œ´ôñX^¬j=SªºÑŽˆK™Ëi̾£·UØÑ9ü…ÅC©qr­+ÓîãuLtŸYŸ¦š Ø'Uú»ÖÝW¬ý¿ôû][ÔÝú/¬ôßK:ˆègO:—­)×Àá–¥Û‡¬ÝmÉáF7Lh_ø‘¨ëÄ•òÚ›Îe¸¿ãY¨e-÷õ©ÃF§ö—”ØY°få¼³o8ûÊ7ÒôÛÕãì|‡hY¦æVŽUš7,L`–u…Ô×­(ÇSB.¡éÜ^'‹¯Œ¬õ`ø1÷§¥š5’yšbí Æ«‰oO$“å¡ïPbò²ºÐŸmPõ‡9ЯôÎÖ=PÕWmITõ>%€Ïå³tF¤Ñ/šÖñtë9ÔÜ ž•Êbt¾?OɧnfÓ¹[2Ò‘aã”}ê«*åqQw•ÅÈÆ2Š(¬dæX5˜£g…ìÊUÿ†þžÔ@Hò²èÙúÙœÊE/I–+*H'‹m›zŽZ•,±)JJµP X)¸–ýÌœ é×Y,TŠ@Ÿ‘N@( i,GhD"µ¨!E>?ì™Y ddéÆ(ñ9ížä!ZöN2ªÒ‘Œ‘Ø'—Š·Ê;NGî`»¯T÷1­âíB!Pujá¹ +)»FÑœ¼oówz¸r‘ÉÒ%æA°;lìRwbI%‹î<FÛúÝÕ«-)|5­¤ê QHwI° µ¢óŒ]-_ÄÖ«JAaé€ ßwçl 2ºLÁÌ[‡"·o=É`ŠsñVÌ0Y…ZšJ ‰^ŘÒÂ"Ù*ï éÖÁçq™ 2uÞÔðÞŠ™rgUzâV“»^XyØrv[ê~DÕjYL\£&LäЮ2ýÃ|FKˆg Wú!Tñ‘ÑHû/0B{§ŒŸPN“¼+„ËÍTdãeÛ7ø‹ÜhYJ.äù·ˆ¦Þ:ËÚØúËK1Xäë¨Ô¨átô«Q‡`D\C÷}÷*•1™¤ÔÒ…¸Ò%0Íîÿß³ÓM±…°ýµe]‘o\‘Ç,QÇ s¤B´R*Í> 3£E‘˜¨{^`q<¼1ÔÚ´RP{²DÒI;4¶mÏò'•ì¼óÇ&Ûs{©Ãcì ‹–Få”Ê¡W˨Ü1 ¯¾Ãc±ûcmñôêŒÀçè²Æy.p²Æ‰%»{¼*K‘eT¿<}ˆ¶zǹޖΛ^­LÒRª‹RBHÔM’ÁñŽO‹â¼õiË)H¦„²ƒÚ·`x~ãè+5‡t£Hë/%Bݨ^Ga³EP¤’û-bŸ%YZ[ƒ¼¥JDB> ÝÒPÀVDxÞÌ€"XŽÂ"8åñòœ•ø§ð"â0Ï3ռ䅕•¶Fæ!hùo¾ü¾Dp<›…TÛŽ}¦µ‰Ú”u­ýOé續v–Í;™è‘öÔô–šÓòÕ×¹}GÐÍO톣×Ô:Ó'{+KãÕ [ŒÄâ´Î; †¯K*Úƒ9[På±ø)ðý|ÊréJ”U¥D'ÒͶp\¥MU”RŸö†³l/‹™ñãR–MãXÑ"4P f2Wç "¼P© iÒî³bm\‡(ÜûÂÌe‘žF3 Ivàû Aò$<#E`-:ñxÇmñq+‡üàÐÞãú«Ó-!G«=~êfZèÞ {h³î ˆƒ§úIWév³îÅ^¿LtÕí'©›ÕÚUdsšGMi ޏ“Tõ ?–³·’Õ¡íÖ®Xöw×=YÔŒWR4?Tõ¼×Vú[ª4õܼ“éÐö_Du?N®¨éòSâpˆÙM7’¥¬ô=세±”æÓxé.^ÉÚÉØx±Rê”kVE $-i, Áˆ„Ž6¾.^R­4|H)í¹°~ͱî Î>Žè §3¸Û6rÔå³2eŒc•ËUåeŽ•Iþ<ðE"W0J—9eÃv¬•mέ`Èè@ÿ†AÒ21–YËJSŽS!Üfm²Ê׿ÒoÚ„0„v9šáb¾–H‘Pâ)[%2ÀêˆIAJ™Þ òo,H“H_·|4Ï*K!W­$ü¼Ïk-e¤:_Õ½;¯úÿ­²Úr§ú†iŽ’u—­Yí_Žé¾sKô3©/VÕkoWè¤Ñø~”éÜ>1qØ£—Á3WŽuGž°·#ÉÎõ£[/™P×SI'H `øbf%Wˆ¸Á¬–V\½2¤ Às¥Ê‰»ØÙÿK }P¥ZI  ÅÛ/3 {×£0Fß`f‚)Kh&îXH–Vfõ™:a¥žnò㬰•¦î©Êe I„d–&s{“4¾[ºü¥ÿ±&X”@¿ñ}WÒ™®«Üé¯U}ÒkN{/Ó2{ʽÐ~­R÷#–Ò¸ mo§Ïfì ô=ÀÁ«)\ê=Ýzî{)¡4”ZÇ*¢Î…Éd1˜ùæé5GÀÛlÚ³Ü.­ÔŸé³¯:çÕ wGRuØ6¬Ô½YèfS¤t–µáôw¶\Ƭ×l]=9‰Ö?îæÊkŒÍZo-•±§´t†ÕL& =¼‰µ…bºÌ*¥ÀŠ„€KHì4?‡#—¦—ÒŽç@’Â;f™vµºËÁçŽÆFc«*mJírWy£bbU±(îIàøô•ôR¶wo>¡æ¹Ç¼ýµ“·Ä‚aŠURÉEh¼†>Ô… ƒ(ü¥«$òàk³E) •ÕîYF’D¸Ú1ÈïºYÔ’¤—®NÆXãÇ=¦‰„½@;Ї>LÆî´}Ʊ2,.ÒDkMj(bXç@¬”Ý/T?:'/Úåµå¨­d¨šd’L’çyvÆ{ÉÇ-šBS˜^–*,@¡È ììIbpPÑ: ¨p²\ÊÖµ,²Ú±f9e©W„RH"ìS‚Dj©‡vÇ[æµ.cpνÏSTénäÒ5k|úïzè dA‘Ù{L½ÙÐ~iHivñÑ¡$  ²Öã™(qžô‰n(vƒe9º¯,‹*[d_€Å,ÍÜ•ßÔ{Kjœ­ÍA…©‘ÎÛ‚) ãê-y{t‘ŒnóýBÎŽÁØJAˆµU•Ñ¥ÕŽauk©šˆ`¢àÃÁ9±½ä­1@Q …SJ×Q ê`Ó;\yï-i§héì¹ÇQŠ×Ä)ÈÕïË%‚“¤u k Æû²E3ÃQ Òɲäc¼ôIbñF°0v‘c`‘·)߈pßQ$v «FP‘eeÛâq±CÛ ìCêY¬ÚžV’H“M6Yå›¶’´¦E¶"VFìµÒJµOÊWŽþ) ·K@LàJû÷v~M'fy ÈRLƒuž Edˆ|šÜ¬rôc$µ«/H©EKÒ –Mˇ™’Öòø™§Z €SÉöö$m' ´1@»ˆÃF¤$i !ý6é"*$«]ä;Ð &¯mRy¶ãׄYÖ^錬¬ ‰‡2ˆ\2KTöeuÝcÉL©#XN!$’'(£* RU©‰Ñb·ãrë‰Z9Uš*Ö• ŒÉ犰#î8ŽHÕøFZP%¿Š7FŒ/Æh˜Ž À3-IˆøØïFNèxÐj;0î¡,a±7¢1@e¤w ÏêÜ—|ô~„Áçp¿:úÛYçšU–%¶Ðyã‚'H„Kà©e¯„ÿ] ’}Œ¸ôÃI””$Y’væZ<•åd°ä“Ç#,s$W™6±F  Ò…™=<®Ö4t•*[›bͬ¤5²P×¥fL}› Ñ%Èë_ŠÅ+sÔšE²!¿VÝæŒGb«;Æ~|i~µõ˦þÚ²4­ë.§u㪙_tºß¡zÊ4.'Sfô>Ÿ£”ËØÍõC-Ó½‹Äéz ¥ô^œÊÕÑzWNéÊ:=ú›—ÑX\† tî_3ãsýF¾_0´ÔÐ¥z 12ZÌašc¥Éä¨U¡MJJuz_P’H˜wí<5ßCaé––ˆ ¬¯äXãk–^¢fä°9£‚ 9<55®füÖcšoÖÌ=8Ó 0d†ÚJ]Ô²~<%,¨2[MÒVqÝTØW’»ÛóÃÒsÚï©~ÚtލþåúÑÓ½SÓô¦ÒÞà:}”³Ô½AÓ|§[=ÑÒÔÝ`Ó³;ŸÌK—«‘ëí8òš ¦ú:?/kPa.ÔÖ”®¶çê/së'Dµ'Z2þáú=”ê7Rµ=Œ/T½à:›–èuœ&•ÓÚkDuV¶§é% U¨«&'ŽÔÙ<¾V]K”¯f®«Êå#Òñ™±š~¾.­‹•¥ÁO¬æ*/NªŒ¢:Éb¦ž.Äs6–Ö®Ÿ@R„é¹g;Iíù5N2ž'PÜ¡EÂÁY«¤q±XO“Uf«,±4.ÈÍ'¢æÊdãI¡ÈHQ«È‘âY±Cáãydûl­ÛIRv*Ñà Y ±2)ÇÁiC´Ë¨!¬Ê†BÊñÄv™’D0ÿLNTVx)((-BÄßÇ^zàÀl?¨r¸nðq#¾í,Rï8@KpuX%°#´iýcó„6þ»œ²”r´ÉPQ(Iõ9.Åû8w ô¶`æ*fÌÌâðϾÀEÌÚ;Fa2ø¯ßŽÌ®Ò܎­†Ž9ë¾ÀÁ5Dñá2¿É’{IjtŠõ+: ’žži‘«ÌÂdi/;Lf¬ÓÁ‘æ¼ ŽË³DbŒF+,K²úzéZ®Ë&é%§;3¨êÐLÁe³X€Á,K¹$¼\B¤ÏU% Œ|w_+ÿqb¥NÃÁ؆†Ü ¿®k3™ªšõZµ@Ë`L‹Àƒ‘ÙŒžËåèš4ɦ’t‚ILKH±ì1]¬iìkk£€’&þ7„)²ÜZ2ð «w&qÉç-·Ä«žKÞkd$ yótÏO:ºÆ™}Ÿó‹n HG!,a{RWÿFAU¡¼¦‚Uc»ðeˆŘü?uB°hjBýºÆ®ó’„qT˜V¬86åZ§°;z0²†ãýÁË)`AGøÝ˜Hâ‰ÜýÔínc7]?&ª†ª)%‰S¼rO{qlW–¥I_U$*’ÁØi£ »à-«ôV…µ~œS ¢’%ImÙv‚´­ u㈽šÍ"w§­ ÑËfyeÈM9ìɸ¾Œª¥šGwu?G›¸±7tE.ÒC=Ôˆ3µŽÒz€Å;a}Y¡,‘霌‹#ì’Ö‘•aiUZ}‹W Íõ–0Lò”¦Ìb´ÀW"Š“³(@¡@HJž|вùh•‰ª1•öB[¥Õ]JJRÖ¥L žJbd4ïÝB•:u”$C¾‘,ñCíÎB²‚D(ÀÕ1ÆŽQ“³ÕøýÙ9öfp?ŠŠRÖíMÞ«—”AÀHbÓÝ?Áep´oMü€žh‹ÍÂÁpÄ.É$2$rÃý°ðÅOì­$h|‡ÂFìãsú˜ÉÞÝ÷ŽH™çä‘þ@%@d¶Ñ§{/îãÄ{“êqÔŽ«‡ûyÏõ>¾žÌê«:cÄé¼'=ªíd²¹ ÑР-b´†;1¨íb(O9ÉfÆ…ŒŠaéÛ†²Çuà‘aÕ«®…­ RYNt™0 »$´l.ŸFzºVRRÒÅ6ö´ZðFÿ†šaH.·>h>úðu ´µ&RÌ^;eI½8I¤àÁKƒÅ¡Ó:B¹µtH¤I…˜šfrþl¬Gª:Óc"È]*4ˆÎ¿ú-ïo_äº1Öm1šê÷S5¹ÍûÄê'M,û‰¯Ñ²g1]éÖG§Z?VWÉé k¤¹Ü­)°“Cª´×HôŽ¡Òö*iÍG’ÓyþªÖj9; ¨^Ò¾æ:ÕΘk.¦AÖΣh+]öƒìo¨=ã™ÔÚFŸTúŸÔ¬ž{Ôî¾Óº¨cUqýi×úZÏ@´óêÜVwóñ9]ÓÛŸÔ-œ¹Ë¹Y!#UB¢Ä² bì¡Ëràøé´XúÀérFàÏÊäryûAÿ ´ÚÝŽ7P´–8ÂD?²4~bí°%dî<¬ ‰ähÏkÐsQã#Åç2˜ÚÀеäŽd¹ V0-ZóJÂP#p‘|ãC:Þ¨Í*(Ó§šÇ¬Rÿ¨GQ4®êUÌÇM²~Í4TtM"Æc°Øm ¨²}eÉiü­³Z¬kc7œ–œ+Œ±¨²}ÛIN‰£ $µ­b-ªó¥ É'ͬöˆÒ»­*¦×å7jIØ÷,jÊjöÔò®A®­›©SYPJ= LúHñˆåæp3ªehÐBJTÅÒ<0ök-ˆÉDß‹ð$£Æ"1I&Y ¼›¹/nª«O–s]xŽLMx ˆÉâ±¹ SdVͺbÄÀÏ I‚JCe\@ð™!ˆv£)ÏŒMÚ”1z j/jví²‚£¶6˜ VdSaP“ÆÜ„âÉ“ øœ6´ZC‰Ó82D ŽŒïÅ)²2³òY!ðcv$‚$bIämè‡T«R:z¤R áØixñŒÝ>:•*'S ¤˜xs´ÙŸ‡Ädô»O¡dɨ€E¢8Š6WŽ4d®’Fc4‘ʆ9$V1ÊÏ A(iÊ–u¼<ß »ßx¼¯ðå[x÷–(Ë’è‰Ø¨DoM&ÜXV'aÁ¨+ÄòÛ¶€ôü@R©2úáÝdê^\Ûfȳ"7}IŒÆ v œš>Ø?‚(Ç]v­1‘âåèn[7]I¬UUd n—pÌbA‡ÌKÜcm\µ®€J–¨`A ¾â_¶;ÍÓíÊl‘R ('‰¤÷X +²r¶¤Çsdãb1´ÊJ‡õÕº6ž2e¼Öä5‘ ÷]c1J±m3ª$kIÁ^Å•1@<óFXâÍåX_¦Çy_óÜ T¨ ¿Ün»ñßÐë©…FšŒl 9:Cç+ ¾Tˆ"âm:"¶ÈÛ#_ä6&˜S ®jºóAª²•(&D=ÛsôÚYŒµ tj)ÒH €Ó·¿|Ž èß„ íoÎ(„NHVÙËX䟗eœ‹ëd••’™u0T«ÞÌcéÏÜ[»yceGI^(ìÇ"´kiq4 ~1^<•iÌ|[˜™Ì)„³wߘ¿Î6™ÔÂí2mܸ69¾¢È í*¼µ ’¿’Ç“ãŠÆ>Tb>K4f7cPDY‰©ä‹ asÒæ “IdPB˜ŽÉ% –n×.X &5P kó¾Þm‚Ïü2Â/Õ®dŒ¨ˆ 6à?nLÓɲ֓܄W_ˆ[¡ck"Y"G9n–éíÇ™0á‹ùíøÁ¬ jýÌÒ³Š(Ô["v`;ûýwÄ„¬EYçcÉØ(ei]‡tqç¼#“ÕJW· åWjŽo];ƒ-œ¡Js,pO#BÒ×s½ºñJÑȪȪµçˆöV6?Â8ø–’HÂóV$UwŒ’‡¾y3:†S²ÙåÇr«¾ß9ÕÃ2MŽ+7©&ŒPú›®Ïõ²Êé+ñt£)äY\æ*«"B¨RüÖMÆÌ[úì«/M‹rAK>¦7rmÆ9š#UZAD1ZDÿPp=„Òã%é†/i'É•x¤j*¤kÜó/ aó¿Úm”&çmþÞ¸¹þžâqX{ù8-ß6+,R!”E9‘£ž8‰jÆHõÙ«¯uÚFIl,©•3›bÀ7h¾Î$—’¨Ü7$üùßxÖ¶;é|ãCmYg~0Æ ±)iŒg¹À)nh‡w‰]<÷b–s0ªÔÒk)@­" Á"1~ý±ÐÕÉÐM5‘H¦0XKÆí&ñk`k¤ô'P`àÈËbÔo:Ø!¦XU@’ð†zï,?)û@ ̲­v4ìÆñBaõ).À1giò`òRU¾jB/ˆV3G‡Æ.;±F<דï\Wo>º]9~z^™wnFÍâï$¬+5ë$÷Z5hÞ^cŒ¶`+—åqI€†h÷$²HÆÿ`åÛ}‹N%›þÀ»’ßù¢ÙœöeêS•ÛipD{AݰôryuQBÕM$”K¢Z^™ü£gSc`Âgmc«´“C‰–ı‰&+4K)` EbR_–b‡¿”¯½hyÛ¦òÉ<ˆ.ªáÊÄ6s9't·¶ÑJc ”ãhjD <§U&sÔB©È¿Ö5áT“$å6ãD«"º;š5âv*óÓRâ– ©6†ÝŒ<”HK„EO®£e,–z FÙ ù’­Óej*¦ZšÔuR’òéíós"ÓŽ{1M"¥D€”¬°¸y!ƒ?׋㿜Ž%ÇéÀÏY”a¤3ïòí÷ˆvž«Öw!d5ˆ¾gü²F ‰}1Ω£Ö³UH)(¹a i—™`îMÌ0$bU:VY •`sÀh{ƒ1$Àt»,²¦×±ES»û–T\Á¸ÂK%É@{ð÷Q!k[@­ E³úg%§,Ô‚äõ,Ëqh¾+“*¬jÐÈ‘$š4ŒCtŠ ‚">?ËPÂÓðFûs ¶¾7˜nÛÝ aȲ;m¿è5Õ$ o¼L‘šs1F gg°J‡XÉšg‘ÄŒ‘S<.HJHþ·äz•jù„SZJÔÁÖð[˜7£BŽº`• I.Iþ¿áã8îžå2xÊy ö1IZõ~PÄö®å‘Ð9­ ñò »KKeÇmlvI ,Ô…ço’s2$p÷‘ˆˆ•Z’€’FÈ;e :Îh* ÞôUѾt¾¤òz‚MÙÅ—Ýdƒ°ñ¹!l§Á4WÝ÷¸íWÒŽ´tŸ¦8¾½ô;ÛŽ™Ö÷1Õ¼–¿ë}< œM­YÑ=SíÚŽ•ÓXÔy¼ ’Åu7WÜÖxì<¯«mé\]»Ú^Æ/'Œj˜s}g1–]@K¥*)$–v ˜›>5PéYz´©†V¢—}JáÌ[éîSþçP…6q‘©”²˜¥²ÎÊêº9SXRxK!b÷±·1߀lôÃ=Å\Ûļé¹Eås±ß†ed±NH»r…Þ2 ãBµXXò&uÒe˜êJ:qÔ Þ ´Æg[è­9ªrÚqþLo½™ÆÖ»gµñòÓãÍ+pK-Þ Ê$,ÄD° ÿsI¸:°Hóºª(Ïà»Ë°`“Õ³*Р´’¦"³ìÃÚæû>é”D‚é€A&Ý̱6ãíŠy¥ðç±DºÉÚžÕ)vUœ÷–VA°áÊY®´mñ÷îI¨ãG’üÈñ¨õ ö “+ïyäi,‘ï­I]ÙUv€]‹´‘4a‰ –gUi@äå˜z"jVËgì—ó!¾Ì±Ç Þ™¥`ÀÒKÜr è¬ÇµäÙG>À8 Ͼ©¾Œÿúãëí—C*´sC)Õšp;¢ <¬ëŠ+¥’%ßæ<•‰aæ˜j:JBjæÀ`Ýþ"}Ì÷'D¼È*Àì¬[pw;SéçÃ:†æA,"ÜzlRä'ž#ò·POØÇór |¨* m±ØéàTlÁ‚1äBxR¡6Àògn?½¾Üyo¸×z±4ÉaZHÝî¨ÄŠ ŽF#ôÍ#¿5û’ă±Øsø2_ž^ÿØ»vØnàu½ÀÁ™HÜ8$wbï±ÿöb7Ø“·Œˆ;ÈëˆTØÎ[ï²…à6,…m¶T`Q· Àíþ<©y ¶ýO¤€Oý± ¡[Ç@!¸Øn7íË×ÊÃ%·î; |rèU‡V÷ðÆ.=ôëÓS‚5mëô§¤°E*HUR{’‚ܲÚc½‰êîÆUl·u]lQÐÀ¤4±ÊT£¶êèX¬¢çŠ8o˜³x?ƒU³ Ïu‡ýC@ÙR_|šÔ»I:¼G¡=ï,‘=‘iæ5 ²"]îbÖ`êÞMÐm̨î†àL’70÷[ò‘GbXX¿8ß×sÑ‹ôì°P!‘2$€/wg™ŸË”ê#þ¶±pî“vX€ q-ˆ#ôϧÆó^}§Rm~½Pžãáàkv:›WJ×Ñm­§PÁ'Õµtlôüù 9%,ç Õh\uëiM9¥ËkZØl|:§PbpØl棊¤i—Êâ°Í4¸}Ë„4×*ãÍ™¿ŠIù›±Í"X*ÛïÆÈ TexëÃEå-[€?eŽ9Bÿ‘/u¤­‘?Ð ómÄly+–U1Fŧ'm`ȺÇcNÆâŸ(È>‰Šµ%$X„¤Ì ´0ð0ürAN¥‘!‰,î ‰·v¾']9Ëã0ùŌȩC6ìò2¢Ƹ1%Án2:¹æÍ ‚%0«2I ~$y!Î<}&…c¿¸–/H`Ä}Ä‘±âé!u”´Œ/Þ;,‚Nd%§²q\éë-nššõ—TÔR P `À&>Óù1u ª(¦ P{ætˆ¦öýH=FÈbr–q³b®Cy¢¯y&’v0–š"ñ2º¯Ù7’X¸·vykï*'¡Œ5ù¸…ØÄ±oÊÄšíÊ@Ë3I´Æ‚·²Õ¢¾x”zݺñN2XãçÅQA2l6ÙÒ5Ã8ù|X&"}a™ŒoÞ)³¬‹c™ì«ª3’ÄÓ"ü®ÇÞ) 7)þ”úÙ— 2ôÅ$¬ ÔÁÁ ³`ÖgÝÏ9êÔ5jj#K€XØo>cyçüç·‡j}U“ך‹¥Z+«³“á.f5lØ› ÍÜÓÕjctþC!’‚ä]³†¥§ŒÅdlÆÒáªU‹èƒÔt¥ßí,&‚~ži(t6–ÔÔ5¦Ò-†Q§tþ°Óúé:ˆÔ¸Ü2´²øž¡'ûÖ ‚Ô¿ÜK#š6&•WäË2«—mÔiùðSÈ…Ú>ùŒ¨jž ž¿»ÛMòUUÙû‘ B%߉gvå#‘á/Ò;® Lìq­ºye2ÅKÓAd¹:’ÅÜÝÈ{û\á¾.`üÒÉv“3†‚ íaŽ- 1…ÅÞÔÙJ8œ~3#ªsQê Sz´ÅQgiéÜ’L–jx²Pi=3§ð6.qÞ Š‚‡å¨\›ús—ÆâàÈüû•ê÷¬Òi™Ó»Î>0@­ÉÚ*Óîö6K»öô(Oí!`:v¶„0$üp’ý«BľPß'”n¥»†\P ¸ý£fçi¤oÁÔmp0 )ê^õ^c*Š´•¹ÒCËÁw{³¹ÐÌUS]µ”òfÄ·vÅ•Læ†e²ñZÓ‰HÉc'¶2®Ù6ÆßËoD”Ôßp'¿ò$®»,,>¤±.K§†´¸÷:WøùæŠ[8çÁЗnÂ(05œ{ãÚ¥™QL]¦žž¤q¦Ýµ®ñ3©CnYãÌËLê;\Sr²;CÍjÂv†åug²EˆWvÂĸrˆª®…e-–2Ú9›w0Å+[“ïf^xù@(¡_À2²\³32X˜xÍåÃøÁâõÅ.#Q"Ob÷qfÆ¥ÒË$]ÌÎ6GY(egd•#Øî!" _Jäqˆ€#®ÌT'¡/R2Xì­êãmAuE4å-`Ç‘–V0#wU{s¹VUTG4©j+ácìPvÖVPB€xºð‘1©ð¡¶xâ|dÀXbc±5ˆ—“¹Ù„SwÛî’ ƒ??àlÄ Ý òé«©Õ–étòÕSQ *(–ƒ /{nø¦¶~­jjB ©pÌ^K^grl5H2\£(š4.@òI8“²ÑAf3+³äœË)^å9·§ 0 Í«“Ui¯Í"fèäp]Ü3m¾ÅT¡“™ Ï´2¿`½µî ¡ß“g؃7r2XÙôDÄü<#Y)ÈGý©à<§þ¥v 䊑¹(æU‰·^âN Hß‘"î–X®MʃÔ€‹3yyµ%UQ 0JY‹´¹žÀ>ÛÅ9\Ú²áE!ÝŸTblcžÞAÅšËgôô˜|¼f±ÒË6;'_~E厗XÀ ´°¿"))l¯ZY$.«é~KŒÅd!¿§NI/V–5v”÷`1,0±FR¿h“òÃ(r½ ¥x÷Q ȱ¡Û𪲹PL[o ¡dZ •ÁØU´ÿŠy\Ö&cÚ6_ú —Œ“¹!g‘¶’ãÅ¢›üÕü•8ŸT§¦SMÐø‡JÔ“ égÜ;°ÛaÎ.=AjZ*èK áˆg6ç±â×ɨtâ–ß;†ÊËù†ÁêÉX`ÄÂß–B AŠ•,Hôêd´²9ª’ã­Aj7£¼÷v·bË$À7ri ˜ÚJ$"µs͹ÄÌÐ5@Ñ:°a/qNëÚpòÇ0ñqy„eÚŠ·ô“B¦ „Y $ƒ]š@Œ\FH‚FŠß{he?Fgû ;™EñÌ>9SéòÝ5J¿TQg8åÞ϶lòóøe rd±iÜOÔ³À䂆†`±Åถà {ò© Íd€$œ à–åÞ;0Pq“oQ;<Ñ×uÞ–ê}œT/®ô~ÕzKjÈ&ÇiœÐZPàëÖ,jµLÖ{¦:"Ü5­FïZÞ:·ˆ¥m‘¦LÎTÊ#E`ÓFB7lÊðn»÷%Dhï<…ôØ™÷’]ùO"E³°7PÆc(¶¤ó&nf¤XIôF §Q+JKB¹"À¿—ˆŽ1+RTéÔ’7f±ûŠß¦ý¡û~ÒumÑÅhymão®½|v¤Îç5#Mé#—Ÿ;¦:y¤©å¬Ìš[¥ú[QÙ›5CCbÑ0ølÛ%ªHȰ”9 mw7R¯sZÚғ謆ae”–™“1CQ¥<–1bÈMW+ކÆ=fYJ“_jΉvâ·f[-ºJ¤;3D¢T.ìdã´"?TÿµšÌ_™ûâñÕ–ÌP.ä’­ÙÄ}ŽÖÄ÷¨ÒÁkQ¤•$ŠX+O¡—²Ê²C"–JóFªÙweq½R;¯âR(yGÅ#`ˆë„ÊZH\4±#LÇà×wT¾[î+È£ÖªZ²œ#³…âê𫵇'T¨>³Ëy³N=…R½ù¯§RIÄà¤aå™9MÀIb­ÿ͆a‚Ý¢;¹¨£é…™Kz/J—¤ŠI éCKn8.þÏ0ØZ©«QUµ\YÝùç’϶Ý7¹J 0õ27hÀÍ‘·ÜŠÄÐFÌ¿&èÅäÂÛ’É‘`áoi¡“N¼µ¾=Ü,OJ9jÐužš½~à4JÉÊ32+7eB™G'@Kz©RÈe”‘XI0c¹t*¿€„Þ9Š|ÿp“CyQ=:²ÂGhávÓxÕeg/q yCÜ¿ €a¯´O¡µºX©V¥OŒ V§)¸6™à“xÆÔgÚ˜H¤“¥ †Ó¹ˆ<Ï6`1;ê2EkRCb¥¥š‰h¬ÀµÈÞi#jo]Ú"í¼‘Évß)œO{›,‘¨ƒÅ¬n‘öˆU^j rådÊ æI«]?=YÉ7‰ˆúmeTWP‰ý@Þrk~Iä~0Ú8û@Ç-š)²ÔXFY³È¾¼ÊZiÝ$åÍÔ¨yTw@›`I#ë-•Øebà°`ŸDhR©¢™$”´˜æFðIæðpU¨j­K ¢ì?s‡bZHˆ^nÌÌ«§Š©´ÎS쎻#d¤Mâ…V;Xä2,ŒHwUâHrV5G݆‰d ð­ƒ$J !°ÊFÉzR¶"aëÓ Nßâ(j3GĤŒ#Y @7ܬ¯ð#cø·–,‰âÈka˜€éÅ•f ÊVN-p÷i!ªÖÝímß­už¤ )´dص;3òA,ö`;ÆîïˆzA\1òA ì9sÏ#Þ›X©[Nk!ŠX®\‘Ò[H“ªÉ*¤SÌ't¹úI쫹¨ÞoŒ8,?u1ra±mbÕ›–E9êRïdet–ÝéD2Fd½iÊO,òþyxÇ#úŸU5çwiLÍÛ1S#Á¶Ê«â‚=ÃÌ«æ\jÒ'õ€—ßÒ%uacp¬‚¯*ÈUD’¼¥O|L€£Kár5„•+q™T€õºZ+T]EªVIbkLŽ#éõ%Ó¦„BBu=Èo f¾Çü§Lº1ž©¤ªfôWNòØÝ47ô=,žb®Ž–ªWŠ'ÓèèSd­U;ª×‹âÕ2D¯]H!ôäù83 6òÐR“_ ²cÚìT.Ï Ù1©oºeJ×-V‚ЭÈEbÄʉ#F›T(—y& ªÍ¡È’xpÕlÁ ¢ŒÅhò$Î6õ¿Ç?}ëû‡Øë(‰·c4„sFÞl΀½ixŠBOªOD¦%ZMÜS 8y _fÅ£«T:IH'`þÎÖ;X‡‡ßíxðÙÕª4 Žj4v+InrG d-˜žU3E"ÉäÜ•‰£l\ˆUÞ @(c‹³ ¡á–$ ò‹<ÃÃYdв<67–bk¸–Vbq‹™3*²L¨ŠZà“ò\(i(¡Xž™†=Ô#×”+$dºܹ—Gf;vÒí¹{î8ä!Ú¼Jz5H|*H¤$»\€ÆÖìbg–¿ˆµ*j;¾âfDÇìâÈôë!J-/ÏsÉnß8žä1LÎo ”LÊ;¥@i;Ó}…,}MFc,‹wêžE‡Ì©É^@DŸËØ@)üˆÃ>ª]+2‚ë}âã±gNÚD\mîQ~Õ¤.™Ä|åV·bê,¥ùžÈ‘³<ŒJ™V¿u¹Y”5\M/é\ŸA«t”Õ­UºŽ¤†³°’ì[³`½.¢¤SJ4| $Ë/7’Ìðø(d,TÿŠ‚ÒÍMaU¤ÿ!¬ÿKÍkvį,r,oeáÒHÕ©6õ,x ú.üúl¬’^¦ä…åÆím•˜xT=ß”ƒäre`ûäTéZ·t© y‚¡.Nˆ.¦áØÿsÐ@Éf2-³sÒò@©º°t"A"©^!NÜ€pfâäÅu¶K5Ö\ZŽjÕ«é¢h§YšRå2鼕oiyÜÜPŽ ¤†ú”奾_öŽLbOºþÅ c!w+Ë6õÊF—!g—v ÛE„Ê«i$R¤,ò§åH÷¯ªÑ€e’(÷>H¼b Å@)2ø¨\‘ØÅs‰úuULŒh£@œTˆÃ–ÐZ&Gñ𲆤ÿŠóqeÙ2Æ Fñ¡PVv,]œCSòšR§uR¡¾{Z±ÚJ@Þü•–A¦Tú‰27! îxû‹4ãÌ×5Φ):Z\»3—ÙËÚìó²<*™7Œ¡„.ª¥•GÊ,…Ôq˜’¸‰ÓPc“u±zÌtôÖ,u«N±2”îÅEÑù“ÌÖ¤°–A¼níÉÓg#w>«°Ÿ„ŸÆÛ"«’î¶Ïú¼¦.ÙŠúäj3Þ÷¢ÛÓiÜ*ÞK ;†È%Ð…UO”ÃixÂ,‡ý9Óú=„‘îeœËŒÒE2­)—Ãiã‚í±÷–S2rĬE˜bM·i“‹A…ÆéÍ;.m°5p¸™µf~þ¤Ô-Š’½7ÎjLJ4ò9Ü™Š@÷³Wèã1õ¬Ø“”“ÁF²1Ú$ô=ÌôS¡:“'ÓÜös¦Ý>Êå:SC‹é®Fö:ŒÒh¬V(Æ{¢*øü\µ`l%YÒÅLm¨{øØ ´ÒHÂcÝ ,•XÇ2 ª¶êKd1#lÐǺËRÁì\²[8ƒ8ØŠB[`©r´’ËJ.Je,Â+8Ñ÷ú®…L(-s§ar$³ž88Þž­P•<Ü’÷ Ü0f³c¤ãÔöu”XÜë8Ò–µ"¥5ÍK¦ªdåÍ®{áûÃ[/4¹!I‰H®Hö çÐ#Y4oªsìxIȬ;¬VÌ-ÓǤ²€’  –”%§Û”nÚJ=FË@HUݹ› ¥‡â »Ø‘ñÔåÂì<¬Àò4axñ&5-·nu[‰âO Ú)U”ˆï8à€>,î@'FS#øJ…i"n43»1w$²Zÿ¤çÌçFa! KAãÃ_áÎemÃlå–Gî#„’fxÀ d ˜ä™ *m•¼Õ‚KÖ£VsGOM4Î^jÐ0ÇÆì’Ù‹ñ‚ì ÚWÉ }‚±U;0Õmá1*Èc„ïÅ•p±DŽ""¥€ÝšÄ÷jYì~Fï+(`ZO·æ@òöŽDþ©þÒ³%"R'§» >´g²ÿ‹BP¥ˆ$é$¨ÃvÚ ?z²¹¿Ã(’ACN›=‰'é6ó1kÚÝP¥ ¨GnOb襙2'ðò(Ìx•ˆƒ$c©¹wHÇ!ì¬E$d'µ0nÁ·ØÇ#§'åîž…}ÆW ³13#ÆÝÇ‘¡q¦´»·ÖÌÕÑ_âÄÃl¥.FÑB«ëX0AVFÙËÇ+üT˜LÛWëÉÓpBƒë-™ð‚Àªæ¢ $r‚ì ³}ÛMN j*‘()Э@ ÔX2ék@ï‹vlVC[¬AAö2×ê=ˆ¥Ó@G7yŸ!YH†H¹~1&ÅÙ_šGòDq/gc%©*U˜ŠÓØ i í–™™YGqÌظà E„‘Ä®–¬~`˜¥¯ÒÈ‹maÉî³,’4„Ë"•¼¥A %+ºe@‰«vg£Êh؆¥Ó~ Jk5AB41g’üß~ØUº‘«MTþ@¹sØß¼ˆÂLo"‚¤€ŒÅ“`>ђͨÙPFH )‰#”}À}uôÌ…óØ33qeÉ×$©E(^Ô@¦òoi#qka%ÄìÞ„ª¤Š9j’1#Œ€…NæÛ¶àl+ìŠe ÿ·Yþ¤‡ô…B‘²1_Èy«,½…Ú-Àd±¶ÑƬO Lå–xÖÄìu€i­RJAk»ÁßmààzR´,zŠH`eÈ“³qó‹ ªôÞ“×Z~Þ’Ö8œªÓ9;¸K¹v™e›x<Õ E‚¹b¤ÍÚyqºƒ‰ÌQœlðdqÔ特D£ÖýÌF)‘Âæ25ñ¹,¶——76œ¿m`±g6k.3.6YŸy2XyçÆ^dKJY!}•ŽõÅf&9£f+S°“í @’0yÇq^Yê©îA`­À{K[3)@ ÁÞfC)œ¼þFî@Àl”ØYpyà @L£o@E¦²¢¥‚TòR.w–ÙÙìØ(:²Ã$$¤`¦ŸvãvÞ/‰]kþÚ±x½w§¨ôg¦µp]M“ý@ÆA…¦kê¶Äf®ê\QÉÇÞ'†/Qämçq•èµ(1¹>m(¡™"’9>;§š¥ý7Îi˜é­=¢ôâ –J<œ¯(gÊe²&Ýü•iežÝ‹Ó§³-‰§žusC j,9ÞSðŒÂ<§uÎjðäÁ•!C ¿ËfjÖŠ€§ÓjÒ´AZRʆ¥r¬;ŒÎŠX졤Pf™¶þ*ÊŠèXJŸF¦…¡iP $ÀÔ˜ƒ¸wú»Œ*QUP¤”P)É“nÇÁŸ8ÔŽ&nøf•‰ƒ’—ß‹ªò‡±+qÚeu FFå }Úµ½ÏdÚÂê#¹Ý<,ñϤŽê/3±¥21’bÌΛZV%ŒjÎW §ñÓM­Öäwô&—Iøu¿ŽHJµ6–?ÒX™´‹Ø6 Õêf¢ ~@$[ý¢ØçÚø8tîd]5L4¥@“"‘†dx%·Ù‘þø’ L7§ºÓåÎ}xLgóB €Œº³xóåË“x?Q¾ÞNÃÕPŽY"±+ýC¨‘”©`8vƒ Ø„2O,¬,.²»Ìvpó¡oÈ8Ù°k‰ vûŠ¿ôlÿÓÿm å·¥[¤šË]EU`¢ð“Ï÷{ïl*}KBBY÷¦Nïß´÷uáž]Q’}ÃqJ²Eñ¡ÃY4ÑÇÏqvñˆXTyH©,*ð8ù5½DQŒ’‡v Š;áž$ –hJÊËÜÞO¬ÈïK*ü9ȇƒzÝg3:IÉäA…Y»…Œ|Ë2È¿õ£ÎD¦%?"ûλWgô°6'¸²ÃÄÌ|…34‡’¿-÷ŒÎÑù±lk¼Eg§ù ôV’ *H¦4‘M2C$ ÉÈ06ªÅJŠXtê$´DÚÌÞÀÝ¡Æ:9˜]1zYYŸø}åY¡ +¡¹»#SÀ´^XB ­dÑÈ«5L:R¢Á‰§M9Ëam±~Äœ¶q²änÏj5ÆæhÀ ¹®ÙÞ#¥C/ã\K*3JZK;ÅňîÌ…IîNü!„-êÇc{ÄãÃF6M”ö~/X"ðkƒµ`5Ææ!á@ôª•üº¹UG!ˆ!ÃOä=¢0s¦®³‚H!Ì8íþ?°‹çm¿dù¿Ï¤HÒüDÄŸ¡o$—8b5L³7µ¾ì}±ËGr¡vݦ¬È gV¶ °Aß‹û,ªr0Èa”HLQÑÞ4,è¦ÄÂ52ñWäâd7{ÍÊaÆ}¸ÅT²•Û`àÿÓþâôIÏŽ$ìwôê¤`ÚÄÜ U°ÜŽâ=ŒÌ%XÐy ОÃîi †H7g“}ý0œC‡*ìÞÇÓz€WÀQÔ@pZCNÇüØ™hÅs£ð¥DˆV£q]Äe@’P @òFê„0ò=Ö}é‡P:Ÿ¢:µ­tå SŸéƋ׺MPÔ4*ftüxÞ¤ê.˜jAr|>N½ªRæ!Éô“H’íwhQl½HØÁ’¶ŽQÑ©ÏJᣒ2GÄØ«©îFë¸äßÚT©ÙÇ'v#Ôœ@£nç¸ú¸<˜¢òH.Ûw>A Ys@*µP  TP¹ ÍïŒ_— )éS òä—rÿA½ûG:6t;ss²/%á°T@S*Æ£e(J€=>ŠÛ÷d,òâÛ–ËÇ}÷äNÊ©ðw'o·3ä(@  iW}‰Ü+¿ììH ¼Ÿ(á±ßï(SÜgßq¶ä$'ìFÿä ª àÀb f Xxfß«å7±Ü»òL“ûxÅOÎ9ìû÷Jå¯ñº³‹Ï86 FnŸjö˜Ý’õ™M˜Y˜eì =Kï©Píþ´º‹Û`€¥nïeNòq[Í&ÌÎí±SP…œÒ“ ¤ÃpbAØ7í·Ü¶ãÁôø-ÏÛ¶U97€ÎT~ Hâ&û}™¶Üÿݱ>¦%朌Ÿ©ð¤¯»x!Hý~?±çÿ>Ÿ ¶UÜìX•RÍõsãp?ú¶>IÜùúT'ÔÇ¿ž@Ž@¿°w's¹ð6ÛÇ¥„&TSà>ãcÚçºÒÆõ ŽIƒÉ½ì¯UŽÜ7}º{|ÉGÛ×Lmnrf¹"MŽe!ÍîÌDÒòŽOѧ–NÞÀ¬hþ¡ã¥"iíê¶ô9QzÛþ¢‘?>#ßNP›q@óûeöå}ÐWd 8’;Ý— :w¤k58èi½W`?Vê5ò¹’”. B‡¥).!œ‹“gÛŒé¹:5¨´ ªe@»C7‹mnø¾ëÓ}6›Æ–2.C!sòvpÛV”˜Ûœà¼ ‡ž=ÒNK°õ´Ý1ÓRü×Ô‚d’H¦XøùåNQŸý»m-5в¨’0Û²8-}î~ƨÿUÍ k¯8 õoAצَ‘jøEDi- §óþÔ±½J¹ŠÅtýu¹·&V\¬²Ü±¨3zã+ C#åàÃUÆ2à#ÖÄõ¯rèŸô…ÖËÕ¸›Mû‚¿Ó ?Yð2iQYyZkµÉ2Ùw3D¨ÐÈž†Í$nOhÈe,J4•”'ãO…klƒ”2lkGf@Òý}:¿0`\P%¼9‰ŠºQ^b~ÛÇI„‡x¯6íŽ!ßú 4ׄ((bR8º(®±Ù„µÈWçÌô‰¢”üòUÞ»N—Uur©RÔT¥?ÌOþ&]ߘàŽqÎu TÑ\¦šB\ÃØÏÿ<IÄ÷§ºªÛ"·ÒGTP5"É,Âvvc"‰c"HJr6ÖÑâ»^P (ŒEÿ†:}•øK|73È£³†,àvöU…›œJªivh•[QÞ’Æ‹> îY—¨%2qÂÃâi™R$šþÏZЪ #¶çAu¦y²-ˆL¾.Nyµ’LŒ`Ž+2c§ vŠ“#³cX›< !žÄ2Äe”veyµf³ ¡UIJ•T@J`CÚ`5Åñ«*œº2ô×R’V¥ÜDž{–‡ïÎ×o¦§¢”ç³:Ù¯/v9£ý¢âÒ@c.ö·T+éúã Й¬:F"bV@Ñv—𳍶 ’O¢Ï$«FÄ›W‚—d½— }[Ž7³‚ÿ£a–Ö`Ö8ÈS¿fí¨+ Bà;ÞV3Ñ=·MÔ³zIV(ì!!¤ç²$˜‹IÕ¸†–R6ñ)ÊY~¹ÍÃÂ)ÓÖº™tª¡Ô²Læ{¥çshJ+©(N”,ÇIveÄ[bq“f¼hÑÆ±3GýÊñ‹̢R¦»»¢<¬V³õcØØúÁAXØ„Ti 1…ÙÇÞQ,QóFuWþººžc+vÓ§ç·¸oîKÕ‰q×úg=¬›3ÓZ½%öÛ§t}UwTiLÄxÿø£ÔršÚÄô?á–›«9ÏÐÐúÖWL 8¬4ÛÍgrÒáéðð~ërW=óätwüDÒºšÔZ‡Úî–ÐwîâaÕÿñ—Ii)z®dt&µ©Jn‹èn´QZê•§ÃNâôõ«úÌzµ UMz‡ó49sÉ%„³»ñ’z}e )*HôjrÍìYãHû±¯(ŽäIT’ä¸í†âAk%Ômß=—<=” ´¾/QÇ’k7-Ã4R$kÙ^@ÕÿÂY7Iž±ûÀÑZ£zr‚Û‘òoÚ÷¼Êþå}Ôu{Ià5v‡ÊtpûtèçVúŠÂæ1Ù-Q‘¡ê\t¦¹Õz¹è<Ã&z†–é–©L”dôšÖÚ2žz¦Rå5õç@Ý› §uÎnÓ_› ‹½›¯‹ÜƒjÖ7 o!9–QÔžä•’°‚ãN³ ‡y[‰¯7žrs¤¥ Ò ¥Lì%˜3‹»â̶MIÍR£X%@K©÷?lIŸ¥øCù¯ñ¤CnUg2[¶À¢^aà+­!ç…Þ2¯øYƒ,î·ò%™¤Lqn¬ÀWVú?¸@iJ‘Á/Üüé—\:ûsCô©:§Ý­ 1O݇µÿqýaÖ穘ý$º3Ú½®úrøÍMÓ†Ça±W±˜Îh½Y©´6­Äëûº¢ SÔŠšK%w#¥ªÕËP½ÝÑ:¿Ü®¬êoL½¿Ï×.¿hN‹{ƒêgUµ?J:ñÕ-?¢4§ºì·LºIҾˑÒãó=9ÅiÍ;¹ê¿PuŽoDäµgJ)j̇Otd _NψÈÓÕ·91×s JŽ“}[†Þo'¼ Ç@:n]B†,Kƒ6%œÌ1墸ú¤ý-Âp!r™5u@˜EÈÁŒ¢2û$A¡²œ‡Èˆ‘#¾‡Z×N×Ó×k×£<¶ŽB6ž™"/[Ç$¬Q ™änIÅqêËNeXç¯,Ÿó_êQÕ\¿Aý´Ô] ¤:‹Sªý‡Ü'P-Ø¡€mgÓ|·¸{]7©G§Zs'ê7lk-%г¨ú‰œ€®OáñšŠ¾?#ŒÔ63×Úî¬EÉbeI„Ôgzͺ؆ÈçÜWEBÒØW®CÏH/nõ`–åúWS­šÌ%D!D±,;Å `~%J‘L%@¥” ¶¤‚CtÃ$N°ÅökÅ/n¦š$‘ÒÙhìYDä±‚ÒÆ¼Ý·„“Àf*µO£ƒôŸ ÜcüŽD•Ÿ™/,YQHq'Ýw曬¬>§cÛ‹˜ú DD¶1üî!G‰ù6ŽI,DL‹tŠÌ›,9Y|ØÂ9D«€Ðª¶Èï#3“#¢ŽH7ۈ㳬gõ¹&N$¶ü·õLÍj §ðÖ¤‚’H„ißy³OicéÔiU5 .C<så°»ÒüE:lŒé楎¹, Ö…¿=ä³ Ç&g’HÇ–5$äƒD,HÅULsCi:¦­Ùí]¹XнEH",²Ã%A2•šb}ò Ý¨.õeˆ¸ðuÌÅÄæe~ÒÄø\%žÌ(‹B°šTFh+ñRg–5’T‰y¢¼Š¼G],†GÆf”L§þaY»bX{ñ ¤ŸY« íÑ”°'w¼„Yn,ÄzÇO7™^Z½EVQRL$ƒg!Û‡ÞÛûi^Z€ÌRH¦T© ÁˆqÛ&ÄŒ!úS‰ØGüµÅ–DdÒ…Q»’wd‡²¶ŠóñÞÌÔIe’ÏuhHçZiÚšk! ÖìÚk5ÍÀó×@y³Ë‚8Ñ™%kįiäDÕØ<¶c;Ù¾ù Q"°-'ÿ€¥· Þv;*’[s±u]c“PÐFET“\²·,>]ÈãÝ••ÜK"oU×€£)ù˜×±º~k1[2„TªV%Ä@ê ÞÜáóyj4²êU:iIN™Î-%€{lDàc ‰¢g¶á]Ò¡âAXךƒ´l74eË}·­d…;úA·Ûñ1Óšòa ‹‹si¬<"Ga‡oOÙg‰ƒ 'Ñ#Rb *IúØ¿Øþc.ÿEBÀ-×Ý%‘.=7òin¯ë‡R´'»M9ÒÝ]‰Ñþƒe½´û‰ë],®Þ[=ÕA¢‹Û Lš_Ã䱨7¦`ÅÒêÖ£­‡Ó¸ì–«B§o“Íd4¥ìã²Æ³šyp ´’Ά6Ûüà-K¬t†Ô sà0åŸm†.<³Â¢2ò.É„b1G<ŸuhTwU¶ªlÍ/dˆËzpL#($^S9‘p"Ê}·PÐËa!#¸ÛüY)â>Rúù®½ØûÒÚiõo%“餚ƒ«] ÒÝ`é¤:C¥9¬µ®—_¿¯ô6Rèûøq¯29>¸KWJëjèíYŒ¯ òzËSÃkOÓÓ5ö­Y_l}`ê–·êTº{ÔlŽ Èat¶Kj”êwµ½{ìó©™l}ëù f®ð›¨Ú‹7©5‰Âå[KÔ§¬c­„¡ŠÏç ¥a,›Aëâ§Õrõ«"Ž•…,5 [cbGèq©}>¥:jªT’É}"6“³¸iÇÒ]¢1úŸ5ÇÈËY¢´ôBEZ;!–:•g©n)dž9æN‰7™D—ë»Ahþ>&P:WBE-nÊlÐ싎¨Jöד€Íe¸Êï¼”äØšñIJ/­¾“Á]0÷ååNnW’T"IÙZBC#»¬meœ4ޱ•«3¿Éƒjöbd¢Z³¯Þã´íwújæS¦˜­{¤zÇí÷¦#ÎãñE¡4/¬]9ÓYÖÔ™ú™C¥r:–z’äídnÖšL=ZùIë×Šä• e˜&ª×ËfT¥èÔÈhÁÚû3à¦G)J­)TÐN‘$I'LžÑ>;‡¼‹ÒŒt£oæ&!¢’'' NI /É ™€k•ƒ#^³ÛœM Pžœÿ…¸öfçíwIOÀ¬Y'T´¦NèÝ¥¬»n8ÊÅÝS3|íÕ½v÷I¡:+ïËMau~„×]Bög1”N±ë%¬¬ïM¬ô_/Ôz«™Ópå°Yž³iAŠž©¯~þ–Ò™ _O]ÊM‹šsªº‡Õ̽~‘t–fе:%Ô.Ž{†Õ¸¤£.VßP2š«¥V=¾WjE¿¥‰Ãc1vz\JàogŸ/[!¹gÃX§7Ä:Õu”é©Q$°CÒå¶Ÿ¤cJºm‚BXÈfm¿¶øÚÔØÊzo-%ï-çŽ:ÒÂÏ\ÀÕŽûU‰Nkæ8Öž9^{¬Â½¥To\–+²ª³Ècvø…“˜Wd_í…£iYådÚ;lsؤ¼©É¦Š^ë˜Ê¦7’dtŠ#wÞ(ÁCÛ;ímfY#%©Žà è~ÑÆñ¤L>±4E8FYÕ¦…c®Bµ›kócéÊÍJšJrSÇõÙJ…t(­D•­'Qä’ÃE½íŽn¸ ¨´¥$O&ÍùCñ‚™ÐÔµF>|“ß–‚$óVdj0Îó©T’Y5ˆš%•ÛšÒ…[ríqYª¾¤©ÒzŠÛ® eeæÇWfV‰xE.Í1ÎÓ4 O5íHU¢vPáý¶àÑ·lÀ•¤»‹@¶Ùªã\ªDª­zHyÜVˆ4‚fŒ¤2O`°îºø qœÌ汸fƒ †²r²¤æ5š0­ÆH”£,JR„rI"?nÕƒfUqu*çMJÿ¡(¤¢ ì‘>Hh^-8'J–U¨üZnª‰Eïrû÷ÀãTá#Óy³ŒIÒÌkZ¬õ¤+ž²NîaI'­b:]É ·d3T¸¢±®Þ£%Ñ ŠÁ]âú’X©}‚² ‡onÞ^JŽãÏ¢/T!#T3¬¤ïŠ„H~8@¬a`ñŒ+Ú‰ª¼P_°¬Ó=Y ‡Ë¡<€sÙp ÁøGNÚK76Nh†çxö5`Ýþd#–@‹Ç¢™Rµåé­GQP–ž%„Iç3J+ÔJ@JB€†.¼ID„ÊŽÎe(¢Hw•äD%Ú)» ï.MµSŠÄG§cIXª®Ä»¹ %ˆìG•Ûÿ—bÜp‚ ÇúI1Â5boG°`'!ÊEäFPœãŠF FAmÙûg¹É ɲ‹Ÿ†2SéÞÜr,D—C±àµš2°7…ƒ¬nØÍšZÝo["´»zÒ¦`’Í„ðÿ¿ B¬I°‡§bÐÓíq‰î–дµ>&<Éš*mICZ¸–) ‰öwK ë":ÈD•Ÿc3 h,°C±•ÿÂ8¢ ÇP?'ŒŸòÔQ+<eaš2¦FaVÍA0’Aë³Ó¸&:FÏÂ5ä½-¬˜¦—fz”Û%ç²™;à·f8dµÚLÊul¢Ä^z5gtX^˜à=àë= ÐME¬ýÀUée.´Mî=íóGi¨³ÉÒ«úüU¥6_\k|&šÔSh­9†­¨ú…®u¶_Jà²tt&™ÕÙªúaÛV•îS;Ô«ÐÌTGÄRP’¦a $4q,ûƒŽ+£Z‚ªiÖÉÔ ‚ê»L{m¼=±‡¤Q•y1°a°f¢©ÜYåilH“œ‘ÍÈ÷âm–ä¨,JõÙš1°"q,e³ŒaäàÊôb/HÈ¥,j’2If6= ¼UÜ Y܆"zeïŸÜ§Zú3„Ô=ê'F1z»¤é립ëuÏ9”éÍý[ˆê~¯Éfz¿¹Ò=Œ£¯0t·N×E5 Íê92:Ë'ŒŸSáû;+ƒ°™ ¥ýÑû‰Ö}MèmÍ=©:icÕÜ—E³-í[Mtã+­õÖ™öùÔ 6—Îk.¾u­øý[Z¿L ÓÔrºŠþœÆj~ÁÔôæ7IRÈ[Ëë Òã±½YCN¥—`A`å¤åžçÎ4ÿ  ïðÐí»¼w»7Ð 5­Vú3>5œH!«VY$("IxcuHGrI 7´gŠ¥—Úô֪̱ԑO®8 Û‘$2¬QÉO¨eðàÃã…â °ò0âò¯-ýL:€Õ9QÁÿk*€ ´S&6ªHìŸa‹ u Xìc]EùÙ1Ä~ˆÌX•ĈŠ8†o½tEfRKDTÓS,‘„*dB²½n]j^^š–K©)–“w-îXÉÇ5˜¦šuê% „’Í0üo2Ó~1=Ó½?›QâMrb#X‹±-g"ò’BHá4rq³bã#_úkäHá<í³>h' õƒ¼q¤k?.kZ‰Ë×]ÿÑaîN£i?NÛÿµªüAY²P÷L€ɸãÉÖÜi©W~äQ¼[ÔñÞ>*8“‰G)Ëäè/â$’*$ƒý$#¼ïpÔZl:æV\œC“Šek“Í"¯`²ùfhG+îÅ&Ȉ9mߌcqå\•Ý’BbbeSe£‰wVC:®íIä²oÆf z±Ý@´®M‹×r½Øb‹a`)i¤–Jåˆüm:?jTú¤»×RHy8×¶êÜT‚Ñ™¹lP_½¸È¹ÏŠ‘è†BµJô”¥«R‚ôˆ¶”ÃîÆÖãs´Ah F§//±›$?a†¹+Ê"ÆÑžK¼$…¤ 3²‘4u àGߨZ©ü*AôHÃôÞÎ_[!ü”5>P s×=Êá$Ê„Ä%›‰/I?I¹M ”LnÇšw4Œç½*Í(”B¼Cw+'Á©j¤b•hþqü…Œ¯R4‡Gº/‘êfµ¶hiM!ˆŸ#’šŒJ¦s%بã1Øêöfü×3y;tñXÇ»41X¹v ®=hLÒFÝK3W+E+BŠF©pð‘l±’~ïÙÔñA:±¯8 bI;¢QÚíƒ/ŸÌUE]jK¡–é¦Üû±æq®¾K,ƒD´‚\– ,îo¼»’ãÇéVCš±ÊTßpÑ»-“'2‡¶Fuu‘€–P9Ï_hdÙTÇÏh;øíºoS@QÊÛÖ˜%]QÐ ¢aä7£ê¾×s{žé>›Ð´ÕŠ÷uF¼Lþ˜‹Ϧ²³·N²jþ½t^j¾¡àô¾ŸÖzs«Ý}é>kOé ”šOb_¤}dÔú”²/Ù·šîRÓÕmÉšj´G»ü´XÚUfŽÞY­Zµ:b¦’¥RR ›gãqˆÖé´SMk(ù@)!J ö³nnÛ>=ÎdvÖPÒBþ Ýâ}vD%Þ?¬™Xv’VO=^©­—¤¥«R”€TYÀ&}6qÛ+ "²Ò JË „¹Ì嘞Yñ3Ï”lf—ÈÔ®.ÌêÅœ46 °Ó)$Q‚ß7¶Z^ß7¨»ªŸV#*ŒeÞ'V¡QЬ¬èõ ™ªÅZR¬*Ë55n\¨%â]ÄR)…Þ‚uFh‚çÖ¶Ù˂䇛ó6/ÓT~%avJ€\‚‘Ç׉ÇA%`ª¬7#‘æ7u;0ª…â¥QïÇpC;(ígcÄqo+ä’IB<¹Ûq¹Xn‡€®—Ãäæ:Ä„žT˜³»¹Fi¤nãüvËcÞIo-VXÆß]÷&4#n[7"<„¶ì¾wێʤ±³ +VìµKcÁœiË—¡Mßä Ûµ„_»árm݆úó»Ž~P̶˿ÿ`ùòTûßev IJ³#°í—mù(ú6ÊOÛÖ¿–ÌÀLY—›ðq£±dR ù+çqé¶I /$âŽ7VWO²¶Î„[“;ἤŽU$‡¿±Õ±j¬moÓóýqVóľw8ˆF铺 nQ2woØ wm»m,½ØÒîýËá_Ý´°ŸØ"4zçß´,e!}ãj¹Ó¸ÑqácJU޼1ù§o´tå-5u$bNþŠy–OçsˆíÁ_#–xø°u“µm’Ä…œòFëŽHŒ8øûV1c¹!hÅÀãtê¿ä•HSïP:2Ö’¨’7ÓxæVA'·¸ñóIaoþ·"<ú'Ö˜PÈ0/éƒè -î7üð#¥¨ŠÙ 8ÞÞ´°n/£ê?AíÇcÌäwÜí¶ÛlÛ±]È;úÊ£¼‡ö0,¦O$ìWû¶ØòâT'ÁoúSj€ž*yWÃnFãôHÜnFÛí¿!±T«€x¨Ý¿È ÆÛy ÷ßþâ6'aÈNä& 3}ß }”.à}‰b<~—ÁAØ(>í¹zi€.ÄÊ)$r7$€’ıܶß^ “é~”( àÀmüöýùý.Ãa¿ë÷é’Qw nD¯¶À…$1?³¿•ÀB¾w$…½¯}sÿQ…f‚[ ï†yždï#Áòý±{mµF¤ÜŒ‘´ÐÇŒ1+WIÖoœËFZæk8X2îo´fC0•Õš(ˆIe=µS h›é‘,kZ]ŸŒ§qZú.ÛuÓýEÈ$f÷µ"¿$’rcoj¾Ù£€GFÚ! °AZª{—²¢(Z)kÇ“»dª³ÇjàîõÖXì"Ü¢Q§áô©‘Z8ϲ>Ç×sѯáôJƒ“¹û9gñsŽK¨«þ²­ƒ³A¹ >ãõà{™é7Nµ?Za²zZ”Øî¤jü»×±óeqwu&½Òñè—Ó:²|†)‡ÉEªpÐtÓA5 •³[FâoäCd©Ë,ïèΙt÷§Ç7oIiœ^!¨íT¿©3)Êæu.zÔPGJ•E­õUìΫÏEN¼1c0—sY‹qÑ« x Lñõ¡‡Ôçê˪»R…Fc/ „‘‚mEUì8Rt9A}źò sŠêñVi#3à‘CùŽXå™ÝùM‘`k(Gj5)Q¡üø’ÖÄ!$å馠¦¶Ò E­Ç˜|d5jè)UE‚ú\³–gþ88*t¡Êeò†`Q“aç, p[Õ™«”%'_ øØÛh¥ e”¬¬¦ïGº;—ê7«Y.št÷'Õ*VLOP2:WOZÖשC3ˆÇÏK=.=òuíÒÄêMA‰¡xÎoQÄj,æ2˜ñÙkõìWÒÎÁ2³£R]c1»0…ÀyÄ‘#8+Ž•ÜÏvѲNˆÃulqð”$L»´Kµt îX<.bŽd1­ÉQ4哵”9 fo£ŒÍUTRÒ™&t–`^vmƒœoËu—¤©ä¨#ÒÂñ3íÞ-J)!UKYImO&Û¸ÿXÁ[ªÑËòpaZFGŠÚ#@Õš%œLŠÈ ÈòB¨nÊÑr•ŠÿZˆ–Û• rôE0­dîže¯XÕ«ñHÔé }…öÅ~Ê{iè® ê©·ôv©©®µEÍ3”ÕÚ—Lõ£Ü?O“Qäô&†ŸÒy ¾éÏUt¦“».Äbñøu¯>˜–]ZqÅmr™È[¡ý&?Ó(ŸBÖ›¦šGZáú¥t¤™Ur¾_à:–:щÕÔ²VsÇSK—§Ôô:ÖÈlıêYƒRøÒaL3XÕD¶ˆÞ±#”C•74¸Ç ³GaFþB¥ sHÁPAYÄh‘G&Ævœ0£3°Ž|”Š m’*ÄA#L2YWR¾5,jW¦MÁI;»6׬Pk*´$C1X[¸ÄV¾Á'PóN“kþ!çôVé¾gVI—ÍÙµ’Ðú3­µ~ŠÒòãod¬iÍôîs©šë5ˆÉA‡­zÍMKk–Ì_þ;Kd:NBE“<ãVzÓDLáb1ˆùwjÅ/ì™ýÛ`O›Â‹oAÉZTwW_ËÃ(”m¶2ÉM@ð±ŠY±q8xuΆjòÎ<Öowò]¦ç4ŒÃŒ¬&#³,¥72ZGzù Û¥NÜã«3•EZ4¦Q/¥,™!Nߘ˜1‰ÐÌ*•TÕY5’@€Ä¹ 6%ðG‡Û·Ø'ÏÛ¯Òm'R}V·#ÍIwÕ£ƒ/¬1ýBÌSÓÇù 4MÿPq8}¨hhQ¦¨êo‹¡¬s5²Yü|±’öÕÑ,Æ iÌ–€«“Æ&nž­¢¹=W®íg0šŠŽ6Ö.¾kLêùõTº»Je~þ9¬é\Þ[”.^©qìÕ½j)G*fVRŒå‡ÆìÆfwCCØ/"î¢.g ¼ƒXC=)­"°ZÍ$Ãíº YÒG¤f^NVÁ–)Ö1,Ø >:Ӽ⚋+8Cþ¤\• D&I ÝÉ`ÒH ãÿ**ä:Ÿ‰ÿßÉízWÓ™4Nœé«h}5[§ú?%§²úcESÇAÓ:w%¤òj 1‰¤kU§s ž­_3^Êöì¶UëOiÞg…ue¥ÜlÆ@î”fc7À{U¬Xb6ŒOa…ªvÞ3Š7gÚµŸû‘öc )$L®¡P™Óî6È€+¶19µ´"$FP£^ièåĮŻeØNCÉY&YK̯,°«$ÙEƒ9CzUÄy=y–œ¥dÔED02XÈH¸0ÎYùóŠ3EYŠ%™I,\ÁAà>¤óGv—|I†íxöxë4ÌEˆ;Š)ñtg‰ÀK• hÊ>M#Áý\}Ø«á¥vÕ 3°'û\©vc°;2º«lÄ…VSê ¬ 2+Ÿ ‘ í%.Ø-/Õ†ÃZB%Ž0©•ñÚØŒ3ÌÅxÍ7pÙV1ßÁ9ê@“˜ÅûÁkeÕ±ˆm´gò_‹)"¢P†2\4™ý6ÚØ§%œb¡¥J$v$$vÛ‡‡8´Y¥yð¹bÂHÛøËÈ#ŠhšWw§8F…eåuO”ï)E’&2+Ã2<éÄf¹îù8{;ˆ–)á®òVesawy£²±Í„Ä‘x’’¹ºÍË=„ŠPÒÔ¶‰4pÏ‚Ðy‚¼±¯jÌØÈW^…f[½&Ìkf0¥&˜HÈ¥K!^ñ`ÉÁìÁ‡ùQjü#á@;¿Y©ôÍ*QøÉzŠJ‚ˆ.4³‚÷rÓ>ø¼çž²*Šjô¤†I$½¸ÿÑ]Y{| —‹;',@QÅ ‘ËH6V*£î!>¬ ÿqQî1°ç Z%'fwoä/€…$K3¢ÉÊéü¬!é”H1„,Ù`E§„‚4…¤’8„bËKV8CÌÏ H;´k:²ÐÈ!þhÉTŽXŸäM÷žd—í+ò•,9Ÿ‘4ÌL’½óÂüðĶ*ÝÜbq¢2ÉôïÂÕESP)6 ˆäû=ÿX×Ï|zk§ðôØ åÄíw·Û”aáÌ)Q»©g2§ Ý#Xç~KÜMö§a^JØ—þžÊ1 æC@iœÏR4WnÓ‘õ¯Nt^¿éþš¸ö$Lu=#Ô¬ÿMu.¸¥sVH¬WÉçúM ça|>B…Ì]™êƸ|É A ã×iFŽdážF% ÞuAÏøÔc øˑ╠úÕDP¼Á \ÑHöY‹,‘¤í`¨[öC[&ÐÈ™‚M9ÚŠM¤ŠQP2€P؇úsÏœJ”‚éQOŽcÛÏíéåOc½ ©¦5nŽ’¥^Óº—Iazyˆ£–ê ÈGÓ¥u@ÖØMÓ$îC_NÐÓúŸl ¹3æµ®µ!ŸVdqÔhP¦Zé—BôK2¹ýKŒÊuWêíEQq¹ _Ôž£j}¨Û 5¸òOƒÅIž¿>/Oá¯dkUÉÚ§„Åâ¦×6èÓ3-ËXìušæÀUC2²ðH£Œ+ŽÛÿM†V0¤ ²ã Nä˜éo0§‘+°’)RTȇ·4œÙ4àw6e! ‹où••v±Xþ|0*§“Ë ¦¢(¥*I,wÎí-ÛÄ¿]NP”¨Y\˜‡kŽ‹¹o¦½P¯ª«õ#¨u×Qõ†¥×Í­°éWwYu+Xë AÕ]C™ÊiºÔ°rfòzÊÎZŽ.¦:ž2õèVrzHæuÆ“ênW ­y pºóNi Bnä"› ‚êeo\Ò­§r,M±¨%Ð5¦±•Æä-ãF1†·[¹An½­¼£T¿“hÌs@Ñ›7«GjPÖ#›O4)<£g¬‹Ci¤›:-P(#pÚÌ r2™(œÉ4²I&bÅsÛŒËjx,@J¥©`V–”¢é©)fa@è(K$Ô¦f C ÉSâqxê®ᬹ/ 9ôêsgoí‰T‹©Ë«ˆÌ”±åž8»2³w–ËIÛ²ëú†ðU¯ŠcÆ^ï-½¸òÜáÁS`Ü^6•–̯Cb½i| „"ålX ~œpãݹõìIuÜ‹3Y³)í*´âK23:n©%y‘¼ó&òGŠW#õ7?6äjFœ$2‡wXäYTÃ0R±Ê¶drN©Á–‰y€—O¬Q¢G =– ªTQHT Éw—óÃ@šõ>%ET !*°%œˆ°°[=Z½í3r­ˆ–jÖ®Ù¯z ¦k[4‰mK ðN‡gˆR^ËŽnã}d0hÜ59)اJ8’sÅÎKG'ú‹o2Í<Ó¬ÊïbHÇiæzü¢jí^ÖF’µKö•šv+X³ @’3X!F‰ëWåéi±Ò‚¹&–¶NS0å”e2)Çô­”È‘•¹ï§pV/ÊÌÆ_ ÊÂD’¨`:§M¨ªµŠú²TS=¯änþàãmý4¡]"¢›Á­¹ž ý1*êtÕq£FݧÃWåÚš6xlÜuv“‚¼%»»Ö™w£‡+%œ‡ͬ6Q3HvW€Æï;Ë©uÖBÌÆ(bùqTw!eQ—šp-'’õÙØ³)–ÔÖíM!9ÊdžÈ=¨Þ*â9îfˆ‰¢Æ9º.r¶V;‘ØŒéöáN3 (+Ç,1,Hà’¬Ì’rgRR<ìÊQ¾>4WÙÆü¸4iÒ¦N”€ìú¬ ïkxÆ ª5ª-l@*¸³þßž4šG0HlJ Ìw«³w#ˆ¹îÖ*kXœ@É I%G¢~Ge/×Rþ ò/(äWž5Vî1oÌÇ´+Ï,ÛðJT±2‹:… ´l—õÞÌл¯tW+òr7°º¢Å»'%Ÿø·*VÕ:¦Ì‹N{%è.‘êþ®éZQÓ“5®pÝFÊáô×\úÏéÖGQiü~/…¯k¥8Ýq_§Si¬n# ÄÔÒ’éæÓ°ÐI)¦5¡·hL¨õm÷WÎf$‘¦û·ò™Q²HǶ¯Ó­Ç’Šk'Ï©0VÉ\jL¨­¨s/#šÎn¯,h£)~qºy•C‹¿óÖ &LóŽM˜ÿ§Ò–%T¢C=á·fòÏ 1ñrਂ‘r ØXŽæ]ûc¿Ô«ª¯žÙÚ8èH‡™uJñíÍ ;$¨Í É7­§çWµqxߌI f|¢ˆ‚÷ £`aGv330"x·›ñ Z{“·Ê£UØ1~kRؤ»4Öì2WVy[åY°8p¬Ó=é¶³$µ=H÷5ti ñ»HÊx¼RÈHC$)P§—m‘܈”DAHó`XÅŽ@€úèhÓøT‘Lº´  –…»û,ø V ©QU€¢HîÇcw"Ö¶Ö+§D®œUx¬HVÜÂnb0whë¿ådaqhÆhMrå¦bZs!Ü+*w[pÎ lžèx0~_bW„€¡<˜úªõ2ÙŠÇ <ŽZ¬)Êt‚µÌ…zªÍÅ6†vNБä-bŠKˆ%dÈÚ˜ã^HÛm5F ’Ff³ƒÊ)2¤(Q{v‘X3Aºñq®é¥yŒ³z [¦Ö]j‹JÓ¤©Àõ8‹Ã9ßÉ“‚´³è§M(RH€Íhç¹ÄêÊê¥i¹Ä©µ8‚ n®*çe3MŽ>K:7çmôas°í–I ²nxø;…Û‰mÈð _îò_`j…¬®LäEÓvûäáH#£žÑ¼#íñ©˜H–&ü_ެRÚuÊÃõ˘äÜzuµyŽË—Ì:þaÊLÅ•»²*ÈYe˜Ax¥éRH0¶Q1W™'šauNV¨¤ ´ J7$˜´{ÛüTŽ )•$ÓW©eA™š>\\ØoƒÏP3’XÎÜZ¹µšãíÏþ¤,ÂHa‘“r-ZÚ4„<<‹¼qz­ÿ‡&uXÒ!+«Lë'0±ÉÝuï%vo¤7OnÁ˜šeR³ïë­g9”·Õ.å2kÈÜ‚Ä×þ;ñ+¼v)M<üN‘ÿËÝFFÑrv]ª8O\yQÀ8™;’ÈDÆe濫$n%d£-¦‹u»&ëVZ{¾7þ`ˆ¾µä²ËËÓR°IZT–àí÷ñŒ™¬ÇâV¤„ìN왃g?' KÈŒ E"2'C$Gœv}±<¤¨­ÚÓ²“‘ydGxXëÒ:G^ôàis¥4Ö¸ÒYêÓSÍé]a…Ãë;™¬'fjùœk “NJ²šö1ÓF¤*¬dб4’P½ºÑ¤qÉpFCµX $V”LªÿÇÀYeÍÇVÌðtƒŸj¶s)N²W©—¹ZŒ)<ÑÁJÌpq™¸»¬®ê"¨Ò‚E¹‹ gz‘Å$›LÏžÊ+7LSt°3¨:m&Û¾ñ¶)šü2ÊÈRœ7¦÷ß§)ì'Ù–£¯ð¸ßl½ É`zÔ(ú›ÓÚ‡¤=3Ïéê:š¶–˜Å7†½£äÇ`°¸ ]kI§qUkH¸+9ÝOfŒÐA‘Y¢ëþžÞÝhã´>GÒÖ2ÒZKEhšêÓ,¦ Hi®µè~—jœŽ¾Ðús¬pRÓåsKG]fµ6­Îe´F_BgõÝý[ªqÝ@Ëê­1—ŸOÇ9ÿtêM‚þMPD#Všõàì¾8µˆÒé~ÀE£%$?óf:„Â\:£Qð•ÿʧÑÈžsв‰YäˆÙçH໵{Vq©V7°C+ý>‘@{‡öpÆîòÝšäÿŒ¤±ÓQÈῤ[híÍñÌÐδoKº‘¨ú‘£:×<$:¿©y¾®j®œÁ©ô=~™êi¨X¾RÞ¡ÄUé­]OšªÿHâ¯ÖV¬Ó­TêÛŽ¤k©µrº¯4ÁQ8\‰÷í Ü6*˜—qÇ’HcíYuÞL­3ñ1ñ‹tfs¦š—PÆ¡W-•Eh„;É‘CBç¹ ‘Kd½®ì­ö¡7!s Ƕ՗×ýÛ7e±zÍǚφžY&X]’0¨ ²Ê¢ªØ ܸ¨SMZíª=•;>î›Ò¿T¨0 }Ë›É`žíÜã&w;ø¤¤ŸI À1‘k»cÑb¢uv`®‹ÚwŽSh¶ŠYZFªÁ±ñ¢š²PQM¾dEšÍèÉšKÈQâF6Œ³óNã¨u’E.ÌO‡$…FÞ4;*Up4‘Ž%ù@c—„/EŽc$‘ÉL«^#?å·Ž1µÉ,¬Y„u£ WïRÔ9èVk䲉]JGŽv™7¯»öÕUENQǹ•wLe¨¼ ’ê(:³¹UæP’\¸,ìÜšîqNO2œºÊŠTu„¤„³†)%¼Ìó;bÙ×Êñx®Ì-Ã(MÔ!A*9$nÃv¿âvL"“ü›#3†I”HâBÍ]Œa;¢Îëf5NÂÆQÉY¨¸˜—9}ÖWÜmÎТ^dh–'–5r­.ψn'!eÃS³$ÑÐëœþR,‹å>oÇ´2ÚºŠÐ½À’ÏÛ5Õyüi]­JR¾’Hy´¸‡$Ï¿86:ÊP¥pÌÆîYƒ–ÈL^9 ý‰t'JÁcª«çzá£kèjÝ,ÐÝ2ë½=ÔNœt£¥õNYÓé†‚Ò  ðØÙô¼ý#ÓÛ1Üê׺¶$éNã‹S!Ó†K“^›{m诶NžuLtgAé­ ŠÖZÏZõ7?O…Óúj‡ZgäËKQLápñ¦LÔ³[IèŒ]‘bLŽÄàt[3Ó¡ZkmT©/üÖË&ט¢ˆì9XмƒzÐ5ˆ»ey,X‚óˆ&íPž9+¦}[©lG-k{Áa)M…ˆDR$1NLhÆËÿ3X.>n6ák‚%G¡*Ju©úT €^éS}-}Àç }Y)®ž•ºÁN܆{w¿8æF•P£ˆûd'Áí ®Í#ÁxX€Ô­){¬!%L›GK'ûŸ ~ü"·fÜÖ6<Ÿ#u]àyb›ŒYªËhÅ>5>3N­ I™×h߇lHîcg¸°ŒOr«¼è;Š’1}K0‘!%èrW–9kN•ìÄÈb˜GÂUS$-©k£G kr!©‹¤Ãß/8k>ª™«IiI’‚Ÿ¥#Žýÿ ¢£)$‡ RTÃ}*Iai`wßfÅ˘‘vî³ ,^IÜîwä?[’»nHPw>£:Å4Æhƒ7§ =»±Öu Ê£…Éwƒ) f*â4âT;€¦½®»ÔÉ7#˜ƒ<’)0§ ‘¬’­AúøÈÏr½ŽSǨÊÞ™µ«óöa±VÎb̵æ†MJhkK¼‘È&à ѪÉ|+·u!å ŠåIZä=GG¯Nª­:R´©¤À ³òÌ|^F ¯©Ñ¨… +r&,Y7ç‰? ÁǦÄÿ¶«Ç–/ì±-µ©yF`ÒU(Å’JòÀeŒSæñfP ŠÅ ãuÙŒdî~¼ÝÿDŽ?â¥UÕ™ÜmhéQÊ QÆÏÛH‘]f3E@E›Q´’Û||ÒEÞËŽpÌ+YÏhkO*Èã5`ãâdhëÄd‘™"yÌ`¢–ñ,í¦MòVVèõjÔ]D”2‰"âŽ\ÛXÎ#Kª¡M=*ô$%¢Kï~]¬=ˆïõç}UsŠÎ8GA£S¥’‚^@ˆ~ؘfg¥•âú¾.wÐ;ÈH!d¿+G³®$‘¸ƒY’^[d0쇌T`ñ®2‹£$4,>,^RR¦Côe—€i#s°¬ù©Œx-²Õ 1L²,&ÊpGº»^plW¬lñT’S¥¶^ã-MØXìLó.2€nù“øª’Kò¦gZÐ,ÅìÇ8*Zx ü(å–7xSvçz¬Ó¤íó,²PÙïëhÁ¾š@]VbBS¨° gx¹»lØï¬q%¸rØ;Ç-à0ÝU‹¶þ´ÿ{îOŒ €ò!¶~J,?¸n íÿiØnI废\ö–D‰•˜°b ‰Ìb£~A ò¨@'¶äÁ7!ÏhyT*¹,È÷0ª?´¹ ™‰˜Øv ûaß’¨Mƒñòßï~~žâ„E €­)@¤Ý–3!!Ø#!CIÝà ›‹¬Š–0ßuÙYNçþÐ æv?Ú[oÿƒªÓ;º^+ýÅŒ…€sÅŒo¹ä‡ ‡p^6ÜñoÞ{Œ?K͇&$3È£c¶ÄþÊ“¸%˜¯ÿEwúúR÷ Çùòüÿia;Kð¼ãi@ ò À€y?•  1“Ï6E]‘Áâ?í῞AŽ«p3b˜ðæµì¢ó-aB»­ÂDuù”ì®ê\¹5Ù¶¤’grëÄÜ=°½Ö)mw<¨befUŒ8EYIâ#ꌤ˅N$–­qʉC•`Ê%e¦¬°È{{3Lêdí—jêÖ*¸Mý8ÿÕÒØ®nÖqo?laê¹0do7ü1‚‰Rš[œ8…ª`j«±‘öxªÂeøaNûÅÜpO'n%€õ)$«‘”ñqöe`w/¸láÃ}Û–ÊwUV†hyƒi¬*Ž$,> eæîüXÏ0Y¬†ë)bfØ€y!õ)YäEbRœ„R ³…Û˜.ˆxØÆKˆÛŸ?YsüzÏbµAwy™sÞØÓ@ÿ&™Ÿ@¼FqÉ»»ÈueÝövS±&=Žþ ‚w ¸ò0võ³ñÜ7%*œ‰Ùü+Q¸u¿2 °kå?¾"^[#³ÆýàJ’¥˜°ý3'}„dmëâ[¶!C"…RèNÁg,!À]Ç=Ç€@_UaaÐêÿLX¢òÖÞ¶ø«:D™ÜÎýÃ'òöÀcH’R@‰m)ß´8™,î\ éš>>fä³Ô—÷pó{>>Žì€36Á›eY,Ç÷ÈÁ†Û–PwR È*û SÇcö#–ûn»o·œÛfT:N̦N@!ÜO¶ÿþ)PärRÜÁûnOÐg‡ïŠ‘Çÿ¢/#ö@mÜîK›Û‡U;·ž}°_ ²)ؘՈûn€©Üo/ûJïþ9)Ü€v>ší$Œ@T%B‚î¯'=Áñ¸ ·¼©'n_ÜNûlH †âx’œCrU>Ür.ïãõ¾Îv'÷þ5W‹ùf”xÄ‘…Ü–+nH `<}|òe…å¬ ,ÓÿÌcãçE“^?Ô\¬&›ÞÕg‘f–4êžàÔeB˜•}ë`ž9kq–Yý•{M˜ËUc,±™¥¾PøíX`÷k3°Rbu…g”‹R¦ ¨ãycœÓ{%v™\d&›zŒ°V~c»èêòçKéLñ^71o-"y 5fê©Ô?üÚ~˜dHyÈÀŽë#¸ts»ÄX$Õ¤–¾ñ º×dÊ@[nä3ZUFH‘#BJ'%5–HÑGø8Â’ý¨ÇÄÿ(+}¤FQëç<ÝbëúiorÚ_9¬4^§é¿zýö½£º£z}ŽÃhÞŸéÞ¯h¯iÖ-j 1¤5UÍd3úŸ ÝkÕ2â1ýBÎëœl]YÍb¨åt”ttv‹¦º;[ôïXê}%ª}Àj.°Q³¥t®¦ÁiΣiΞTꆘkYLöŸÊê u'Nt™éÞ«»ƒh0”sZN弆¬ÅêÚÔµjb+ÐÒzE.¡Iu€… LdzTD%ͶóÜÆ¦L¢–¥- ¥ƒ“,.$ŸlYý3¦¥Ôö,S†âV’¥w²À!•$g‘jØ…ãŽdd–Q2®F×'‚ìoߢkp2G9='µ¸g+§)£‰™*HÓ¡OÄášÌë4õ˜½hTÄéÌƹ1!ãt‡»üÞEG0‡…– à²ß„EÌ8c´YÂvÊÅŒFlvÜ¥ ¤½èu‹7ªú?ª2ZK¦‘t3¯ô½Ã{1Ðúv¼:›Õ?“èer4jõ+Pë;š¯#£5'VkOiÝH§6Äôß “Âéíu£.E”·¤uj`ýW«WÉæM4¬„«L% °Ü_‚-{o‚=?#C3@#rX¶1r¿á5ÒdWÌT@6æ‰ ÉÆ2~ÐFï( mÝ[lÆÒ10FâéØºIz7 ™š¬ŒÊÅxWƒX5Áì$‡fhYEŽ1ÛS#7Ò&±ßÎÞñcv2ÅñØ“¹Häšww±+ÆÅ¬”öZ“ñ8¸]ºRu'*—äœ2.V,¬Ô^º½¤Š;=¤æwãßhÑ£‘–Ã"J¡š­4RH?1šÎþ*­:%4ô­˜j%©Î×³Ë ÛV^†TåéÕª£¥%&ìP€2íä[|@u>‘µ¥ç± ãq%`VF‰aèˆî–%ÄQÞ~B^k´D2†1X¡âS‡‡ÑYÊ îY—‚(nb‰#á_Ì:nÌN'[5¬ž%Ž®+¼øi]XUÈ2Ea_¸ÁÑU¡–%¤K´…ÄA¬Ô‰§H½#yfhy†4!{îD°†”3†šfBÓUŽwVÍÒoë„VU}ÉV©^‚Pú¤n ™°{ã&fš)VRN–IK—2àv%ßJ‘ºËÿLNfœ°2·+-$)ÊX bK\€¢=¹‹] â.H¨ý°dgÌ¥ ²ËÜà«_mÞ všû•HÚš ,s¸¾4G®Z÷¢z‡.§–zy¨ò‡)Ódè÷·Ü.#­:ƒÖœ¢¿‰ÅuWõGU˜ø¡ôÖNMQÐÚûùl6­é¶ÇßÎjL¾E´–:»éÿsÝwÂëÞže³ºÓ]åô¼÷'o£ùøuïE:_Šöá‰ÑÙ~³å:c‡Hõw¦:kÖLv¸³$<&‡¥ÔsKêªä±ØOc†ÉZÏcsÔë)Öš…IQA C¿ <¼ÛÓ«Ô§ñRPF‚ °2 ?b-Û^Qy#J«Ý"1$Mf65ùQãwÄ‚G’aJĨ֮2ËŠ¹!¬«ñåšoHä5*Y–µÚqµw„:ZŽÊÆçÁ’3*´‚# žadÓ~çñÙýTÚŽem-–£ÑVàÃéÍ?ñ¤³“ù(592™‚G[ÍÅkˆ‘'ý_e,7×ìÕ¥k*‘$®ÄYˆTä­ºI)îXþ>Ájan®IÒ?†Í§¥uJù¬Ò),’’HP úã‹Ìù|QžÈQ£AkBN Ìê{éñ¹1;5ð.‰e• Š-$’,øœˆ™&i!^,+ÎX|ØÝÃå”|è‰RËè¢zU²+Yh/`0š>C’H”Ò ˆ©Ìõ]±x&©gu˜ i¤ò[¦»¤Š÷j7 ü•b[q6Êì¡„K!(';I˜6>ZåY¬Æ©Ôòi¹qï.>{§‘–õ¨—‡Ç‹ö(F2NŽš³˜¿FÌ@dßÔ3”U§K.ΰK ‚,]Ï 'Î0ä¨P¨Š•+8J4‡ƒ!<~÷—Àvn›f+Azã]ÄöªU’ÄqC-¡?jº5‰’¼Ùž“È$•L†­‹v(:£Âí'Õƒ·4üŒa<Ë'ý`ÑFȩ۫ïKÀÛ®ÅvOV+ ›“=¦uBJ‹G¹S3*BZ‘1ò&ðì÷"I )h¢¶|n+""WÀŒÜD!ʰ^!*¥QÕq)FÅ©ä[ê'‘­Zª«"¸ÓrÈ;Fã~øYª4P„|LCê.KC]ŒpÓ÷Æ•¥•™x” Í™÷îX••Ô U‘8w…šà+ˆ{’êjæ!Iâ*v“˜¨ŽáY å®xÉÚÞIû¦³XH˜ÇNÛ j‰&2Y¸ƒ®½Ö^Ô,ó·t$ZÛª·årð©jpG3nïÖÆÙ¤MY–o[RD)ì«+¹.Ƹb4‹55“¸À ¤›qw)4Žû€L±JD‘,v ÂîÝÚogqŒ&C½½ö'm™ûṟ‡q]â" óh£ŽF“ýáµ I,ñâ#OäVÈìô·\µSö^4¤´œIƒ‘–>?2IVâíòáŠ3_ʾJšü—h¥ê;xvŒª…bÑ$RÍÈ¥L±»oHc _2„½]ž¤ ,ªPõW^õnŽ÷G¤úE©tvšÄt§9Ð.¼õ¢ sÔ9QÔ,ä] Ô~Þ1¹J”toðÚs ¢è`S¬¹OâqYö¼Ék,±Å½»ÚŽ;!‡Ôq5ÓB›¨\€á$Áä]ÝÄ]Åöšh•!@ĺ™`ÁŸ°I¾-C«1ßŠÈ ¢ ȯ÷W "ñœH£g.ÒË©6™£‘J.Yœ2…SÍž @$’Uÿ ÂQ½t±hØX’šOËÐÎa0ºg NzVë\]½rÓZò-#Õ-YÑíw·§s¶ÿ—Óø†€×ýuŒÌâÒ\V7§ÒeõE WÓ»X¹33€÷qZ‹=\MìöGSËjÄ•i¥Ô¨ÖP¦„ÔwÒ½A´¹8,Uà‘fvŇ&´'ZˆÒ\¤< iŸw¾-¾ÑÙ-KVKtŠÁ ¬qY³b ;acžnÔiNÄÕ /3¼&f‚òÝY•À£$!û§¥šœsqcÊâ]··t28]£yã®,²  +qñòo=(Ì›S^“øÃ^æBwó/#±eÜÑÇò]‹‹dc¾B fá‰ÉœjÞ_Þ>¨ÿiõ lE¬a:÷ ¦}µôϧ½CÖ\}C­u”ŸMæµ¶¦Òµý 3€¼#±”–%]Q‚šAEŒ–¦yëó¹Î¯_-šZ‚@S%Ð nÏ»øwܶW¦Ñ­A!E#Q ‹¦À÷—ú`ÁS¥Z™]ØÚÂ(n)¿Î¿"”1š=Ÿ²1?ôl‘sÕ¤0Yz†8ˆÞÿ…„}ÖÖ0>ü”¦Bêñ Í!qÛÅYkÅÅ(3s4*¿ÀÜŠ8îz©SûÈëäšwZPÅôo£x-WÑkÕî;ªÝNëdš7ÛM¥z7¦šÞÁ­­i÷›ËÔüGWtŒZ}2úcˆÑẉ•Ëæµûc …ÖFž™û¸Ìu#!í)º¯úGÝ'DîuzÝk6/N25tÎŒÔSt¿+ˆ’Å]asXcέ5óät¦šÅÕŠ„ndþFÕŒV7*ºíjŠù€”ÝYƒ’7}Ù¹¾4“D J‡…Ápgƒ|nj,-½9{øëSV-8æ+µ=9`RgˆË a ÞX£3ßKGœrŠÅáÕ«)•à ‘–Y?¼—¸°,¶I‚D£ˆ ¹ u‹B7*ñ=¶•ÁK«f$Õä@ÿ^FT‘’TF ͙ ­¿(lBMTVÔz„ðˆ§h•cdI ~Ïo¿¯ÛæÂTã+sÄ+ñz—y.’Qdõ×äª*¦V•U³©–vÀ'›y™Ç?›JiWZì‚@™Ý˜›ƒ÷í‰~#Ffóô–Õ©K»ÆÔ’¬ÊJ¤Vø’Å2Ñ¥L#ÔӥаӲ( b9+ ©#*Â\q2ºœÃ¼ ´ã޶īHüaôX žeÞ5s·ÑC¬€ùÝ•H@»‘¸]‰o³0o©œê9Š5*%*§éSΧçÌ¿ƒ{`ž[§Ñ«M+V¢Tͧ}¼ Æ+GM_ÇäáÁØz~ÄBC[2%x–õ‰cX]Ê—­«G(7Ýêó÷éc¬ÞJ½™ú]©žSÅñÝÄ +ÜšVueÜÙ•‹ FóšCx+ËýV>¥<ýJõiuê.x»ƒ!ãÞHãSs!QV3ñŠMö²%ÎF9îc)Ÿ´äˆ¿>ÂT*¿F]ù€U sÿêЪ“°‘EýìçÀ&нC0„ÐRJA¨EÒ ‚>݇¾%G%AF°%_ËXJ@,@`fï{›ýñ[®tû;‹¥%ûrãc£Z P-Ø’Ç/úFL”¥yf”àŒlÖ3ðÉü~F\rÂр̜¶˜¸¥wŽ'vEE€ÆàÌÕG¨Ncøºq^lu)‘]-f®^Z_6C”Ûeå–9!…Å#L²Í!+>Ðtµ$æGTÌÕ Yì·ª¨ñIc >Â"´‹Ý‹¸ÑȨÈÎZ1 †@¹JÑG—šC8rvtÜÚó ¨ªŠu%Im-عi¿Ó}±“;Ae%(Ô\9‚A¯ïktðú7›Çµìx¡ñd{âYm[¢ŠkÉɪ«w;rùïÀÂÃÚû÷ëVm½v¿á¶§å&ÑRŒH*¼ŒÖcHÂÚ$³ ‘"FlÒtᔌ•LjøßŜԞ tåÌzNY’·É•'ÉLµ«´v.^hCH‘ÅbÔµjX±i•kÔ•§«Y¤’4šÌQ$“¨;E{«ÂçºU®ú©®úk¯úQWCuçN$鶤“Jeº«oU4}}3£âÄh}Q©´•® kQ­q[Ii}9­µ&.õü®Ϩák÷†lßW­—®ªe`êhÒ{³ÛÞl[2Ý6•Z4ÖAQRRKJkEž|bbý4Ô뀴ä*$ "äfœÄU*D•a˜‹+á&²óYÌÀ,ÉÅl¼ý_§Zœìi:vãrß:3"4r+×cqØŽJ̽ÊqÇ ”ñn6WºHõMh¨¾·Ô=?ÐZ£§^Ûkk=MkÚõ_x]jÒúËþÏ­ÒîŽØÈêÌ\tô†¤N“êÔê¯R²×tºL•±‚éÞ×û~¸Èj¼ŽŽ‘DD¶îd©¶<}™áÆ Ù|UÜ-Û8ûï Û‚$,õ§ïTh¦u’Ã…®EÈa°Ò‰m<°Å–ŒVjW‹Å`çÈÃ~ºf‘$R`’V–%£uƒØŠ¼Ôù%X¥ã4¶KF³~¢}5^AÊpsIÓ•hê…a]"6#µÌw¦^ØDÍÙ‘•O‚Ž!2FV ãq!#âêDA;Ò"¬âhê$‡•Zí~¼ä‹nÕ™}tùuª­uÚ–—-Ø]¶ˆö'*Òª­’„¨ÝÝ6oÛû6&˜]˜ÌQ‹%ŠŽ5­4®‘É5§ƒ¸Ñ.üᜫ<ñ:Hc\„1Íbúr¥i*ÕUº½Hzk©ctZÂ^À|êÍÙX8,0"1‘Vh|ŒzÇ+AˆH] yºr"M4<}Ù/Úi+£´ÄEɬ¤¾ž þ?…xšËÁŸœîEWŸShЯ>K͈ A2m»–Fe`@!6ƒVÏæ)Ö©L€ RIÓö. ù³¹j9**¤…D”‚&çßH¶åÜb¯YÓyeͦ™1SkÇóBÏ ¤ð¸-4ïb5yâ©"ÿïQf’ÉîÕŠ?]†éΩU%êV•¸¤Ñ¯Ê¨%å!XÕ$‡¸•žýaÉeäLUºâç+-!¾ªz©^7íJ P”+A+¤ŽŸ•Hå*¿ý+2+W¬àÓ1‘çÑ••‰ØV Åæ?ÛpW2xcÇeã¹bøPÑ[[=^˜¤Sê@YtΠ>ß.ò|B†RCQõzTÂ^Kû{¿i­Y=¨pÕfÈ]­RÈ‘a°ò¼d³F“ Œl&‰ËGvf’;×Ó³G µPÕ3EJ…báP¥ ´q¸QÌw»p¬lðû …m1ˆl޼HãÒ¹™¤hÔ„¤³n=忉L‹$F2ÆbUÝ ïXŽ&šª× +Û~IHQHij9IˆÐÚR¥ –²×ýDÔ_*-7£p1ä/c´ÕLÍêÔ­ß³‘Îe°šF†…̆W)PV«p®Òv¶’I"ä‚4"9#SªŽ¶Ù„1Ƚz7ä‰âÄJ„DG–2€Þ½tnÏX4Ö’©‡Ô•ôF»éQ´wXzk«.i÷Ô8|F´Ñ‹—‹¤Òµò8K9}#‘¥¨2”òºv†s —§¯“«š¡ c»¿1ñ> ¾u´YᜀcÇ~1ž–…-`Çg1óãmYïJ>‹b5íïr}"Ö}/¿£z}Sª4F‹Ôzg©¸e¢F­ÓZüzWW|½ -gÖšÃKa2XÍOŸŠëfý¹¨õ>®^Ö4³£½ÌôoXkÛ-«Ô (šò K©p8ý-b«ÞÌ+<–„•a‰’ mÛØøìj|.˜·5LæNCgZGŒÉi—›'èÕŸk]a÷¦z—Tº›ÓL>®ÍôgWô{¦ÔôNµ"i cXê 3ªsÚãUA¨:‰“Ô:»RÚ½£ptêÒ£ŸÓ7¦fÌÃM³Ù«Ðåjõç¶Ôl ˜<î¬ÇÐ9~´õ7ªºŽÞKof*=WöÿÖîŒ[ÓZ~|ž^ãÑÓíÖZ9;˜Ê®J=Y‰Óa³!+År¨qW©!L”Ó5¤kS*d@;‚Ö ÞiäJ¥i¨UëÒ§ ‡“.û9ÁîŸÛ~sªµn'¯=,½¤ôeš•µn¦‹¨y4æåæ’¾:îC4mÃlÜðËZÍ{°úŠÚ2`r7­oGWzÏ•éïLâ·éÞc¬ZF¾œ½­röô¦¨ÑØH±º¤2Z×ýÑz³-Ž­¨aŸ S–3 …Šåì½K5Ú­f&íU ;ì‹\5üvk^u'—Ìéœ_Lt–šËV³ÖÍZÒéž›kɵ‹4­Õεk¶Ó¬ùuŽŽÀ͘ѡ-€s…ãŽ+ÛÕ=½@éŸS4 KÑa¬õ §ºëCÇ–ž•§¯ŠÏMä°5ò*S³ÉjS¹~ öq•íUÉÉr¼w£·WÇ·¦…LõZU ZbŠØü+¹,"MœZwœSRžUQS⤫Õ,,ä°pvÞØh¿qxK£G¬Ì@5F¤ÉWM£µßTzw“Ïk7oO_ÏA«qv´þw%UpÍžÕµ#zä·â‡JäaËICô™ä¸ÏrþÜóZ3Su'×”äô&ÉQÁjÝ_±À¶ŸÀå2Î˦ñW§"biu5ˆÙtF>·q³¶cy4ñÍ*I‡jïo5~_Säïj,l ª=³æz»u._ÃåòϪeÈkC(ʤsw“PÔ9…­6=íÉŽz™a3¬ÐVªÞÐúëŽÆ^Ô8Ϋã1L¨:=¥«š:÷Ü>Z=OÓ™êŒ.¥Ìé :«:«©ú…ÓIuô˜ZðéÌŸL,éëZF¬³Ðy5 F†•fzš P2â¨Ò]Rä[™}®`ŠÌÖ($¥’€ åÁ÷ï|ZV÷{íÂLî”ÓñõAÉ_Yt§ªiÅj«´Ôº:=Ò<Þ+Oõ å3îÓÒÎãlÙÔ3gñpâgš*=2ꥋ2iû:"ö>×wIû¦öÅ­õJh¿q=Õ«Vç¦tþ˜ê–‡Ïjþn§j¸Ü.3™³5ÜžFµ[´ÍxÐcõf. òXöɈžaG*ûêšh s¡­õ7@f%×½"÷éÒ Æ¡ÌൎFä8ßxù^“kÝ=ªÖlþ³Ëæ2ÙŽ™kÞšÏɦ¡Ï_9í3”9L†v–£×”—¯ý•fµž³êž¢¡¯4þ ¿Pºïík«TצnÒÌiÝ;ÐnX„ê|=M“’™M”ÅÙÔX)R”Péä³^øÜ¹YnMJs=P—9pñ ÌÉIkÌÎàHŒHåòi k@]Ø’áÁ%Äøîïl±^àú•½¬ªaúçѼ­îš¤²ëèqÝQÑsI¢êCyq¶ïê«)œ‘°XÊi¡Ä]Ô¹,6zÄz~ìÐËa"õì}¶[»Òêx­h-l:ÇÔEÒ=oEê­#¨±së}1¦­êìÞ/,ifËc ÇâcÄ 4(Á‘8|ž´éþFXN'\i˶j†دPSDê.e5Þ Æ/ õgOt> ½¨:Ù­swãÕ²Eg1Ò:Ç©ù›hw­ŠñÚ‹Ké=;~Ž£ÌISVⳚnJ§lõ¶Y’ë ½VÓÚ‹LÀ,ûÌҞ傽Œ¼‰&’‡Ú>Ø3ZOù ·Âœÿʉ5¦“ÉOQñùÚPG¦3Ô;Õªf*YO1Ô”Ê9aLj›ú\9ëÜDÑȧWóŠˆÆ !À Hyñ¾.rÂÈTȼ™ ªb Êfv^3I Ys¼ž/² ’.:8Øoé lÚI`D‘D/dŽ*,åbW¥°‘ âïÖÌlBÈ}2ï;4lVs$j6YbYŸ¸`*È´dàæÞäžv`Ý®)m"ÿnÊâURÂEWîÙW{PA½«¯dkÂÈ=RAUÈ.}æ{0ÀÀq³ñxqûðà0†‘£F@¬²MT’4sYŽ]Öhà+Â/H¯oc–(CFi&pË ‘ösàѼrVY6aö–«ŽË(dØÉŠ/¶I'â ú`;p/#Ï#$ÆyV$âÊ%,æ5šÊÕoÊê 48ˆP_„™<¦$Å!…–8ÕyÌ›÷NðGäm$s½ R“nBjØDŒQ‹à’-Æàíß·fĉp~6aaiî/‡bT_î94ŒAa)/42G,ªò+ §ì—-Æ;yÊ +T n5>›Xã ‰ „H ÀÄQýø+Æ»ì»E ’–Wiî¢ì²¿|Ä@A¼„ö‚v_ò¬œ¤ÞŽåD°FÂ-=<¢xW„“Yd<ƒÊ#ßò‚²Ä[t”+LLf %º¨{ùRË‘ƒ€-‘ 2ñh0=›¾Øchäøýûûã×EŽNn¬e¤NP•„H«aâ¬Ö+B„Ÿ›e$iñÒ “Fx4Q‡U,ÒJ’FLÜTü¦J›Ù¥®YÞt1؇³š•ÄÁà DÄ9XÏ&iRPVcÞKDcÙBÉmT©<Ž(¤%ëÙ¥ ÄJ[†é*á‹c ÁÝpŒ®W» f°XSšR.‹‹%;=¼dÛ²…ÉhÕòø‚ÐÏ ¿g/³·øñ…r^GF[‘´lÀáùî!ym°Y8’‘äÄb+ññ¦±$€9ÁXÉŒ³E²¤i¼ÒŠ‚ehaenM%œG%J‹I¾¢Åç’£¼N²í íÍVEU’(r ªÆV4¨ãFÑ ª‹-2«"—S.r¸5y:à$fX’^@³Zãë‰$æbÏòî8ˆ=ð¶8³?mË Ýšrï±fái¹F®Ãì#l¡Xû©2‹x`‘‰bìƒã‹$ŠX{€9Bcä#ä’?g~ÍR{Wâû[íÈô•P7ÞU$˜ÙÙwHÕXWX¥+I.¸é¥å1WøÛÂI‚¢;¹e,0(ÞZ6XŒlÜf"ÄpóØÚ #[Yö’(Ò±'Òô¶á¬î»Ø{b:TáL z/´0ÒÂ’¤`ÈX³¥Å abWÍu‚RR¾\‰”¯üiUªÃžÐ‰lÑÂYGùS Ü‘ü8×”j®¤K*Ñ•S$d(ohJ4…̰³¸/ 4Ø´nxFb‰î¥vq-XØRz…¬¢½Ð[ÓüåØ~YÆÁ—v«°´‰4¬8Ç ütl0–ÖAA«hñPí³–C—†-òÞâCËó‡nä“w{öm±ÞÏ*ÉŠÒL{…Å9{¦[‰ û9[]¸bçÚäŒìÛÝ€½jç¼èæÇa㪸\Z«B£øzjÑI=¡Rççe )Æ%Š}æ R}ƒ“\ó œf•Ãçh2,p `-£BˆœaŒþK}F9ÔLÕö+$“bñLT¹4)IÉæŽÔά-°³Ç Ãr­ çü±‚±ç:˜ ¡BXÔ$¸³¿3áÆôÑë® ÛlŸ¿óÛ£Û%•Ñ¢(pÊŠÎK€YX®À°#“ăÅëi•˜ž\Bøf ‡vòœã;îx;vfâvPIÔÜD„»#ÅF˳ƒÿs'}YT·Aôâ’ñ —bJÿanÛ,ѾÊB«2†$íôS&ÀZŹþÿ|IÒJYìÄlí>H€O"Ž7#À(¼Yxíþÿ›ü­WåÍ·$oÇ`Àl[qÈ6àǿՙG=ÿé´kIbʾ9n[Éþ³m¿Ù>#÷¶Àz‚]ä»lLËßÇüâv¶Ío×÷|6Ñ«mÛT‘Q€ F¼HUx˜Õw@T)gm‡.ÚƒËЇªq±› ¬SÁÿF4Œ7v)"grÉ;°Ü2°Ó™öÌÐÌc%ð8ò$„BÁ{ö,w$¨^1ñfß}ö]Ç-÷ßrê¨Nþ×´6KˆîÑ–”÷¤™T*ºO‰Yòq‰k³"ÕB¤:qlÝ2v~,[ŸÝ·Æø ˨†rRÖãÄŽ<ûÏ4QMbœŽá5ÜÈÌò¤Y\8xØF±Ê@ÈÄ) ÿt|R@LœW‰÷æ§fEEî†í'Á~lü˜ ‹‘ P2rP8Æ4\@iŒ6À¢®^5°¾nÏ/ÃÝ£Y8úr2’€/ö« ¨T䪂‘¹aÇcÈn¤•PFÃÉß>dT¿õ©¦nbn[ÈÅùr *}“fƒúŒGszjŽ}±/zæV´xÌ‚dÒNk!ŠŽõˆ,IldÕm]©òÔš_+;ü˜deŽ=‰ÊÄ.êŸà•$ý¬ 2o°?­ò|òÙ‡pÒx~?PGö¿Ô)P)'ʰV!vAÄîY¸¹â¥v_,NàJÛ+}ˆeòvÞO…eJ $— vä9µ­ïí‹J@Ô@• <°oÈmçoQAÍ刡Czë?4zÉØ{“GÉMtI „Øb«• ó†Lj«1*ö²/TÿÔy!m½×xˆïVa¡ñk"٭˳NË7—£ `å²€ÇoF|ÿ#ŸÍ»sËßeeûÌ“,¥ +ÙX6ÙÞ:/K·+&F>D-ì)^.«ÿ¨#„pt8ùkU#ŠÇO±s`cek‚Oa²%³Ù„ŠU‰¯9lˆrC‚íb“÷çÇÓ~6l‡ß2\½Î>”…Q·×rò|·`ûàwØ ì™òì?¼rfb»2úý¸†Á!v Äí¹f%‹L¬êTŸïRvA¿ U¸íú*€øä˰ôöÛ³nHáɎ˸ق§€Cä’7`¾AØ6 ßöÎO‡q„2n@U%]‰å±!]¶“û¿üÊH¯×‘ëU¶Ü¶Ê62îöÛˆ”,€m¶ðWÉý.Ù-Ãr±ñý$ûH;û‰U_Ùð=kMž¶Òñ@7â o þ ÿ`v!˜îa„Ù¶—ýò=§œ|{èùd÷ þ¤pð ÷—¥¤äÑ7m¡ŸÙ?´Ke  2Í,â_‡ ™Vã®BVX,–DÈܘ;ÎßF2#"÷UB¬Y¸v…ãq”, úWÞ}½Wn”…Ü?úGýÿþùš-ÀYÚ)¸Ùö3íQÀ?Ú"Ï#ð°…–÷çÆ&æ¸>¬81FÛ£Fa~¹pQƒl¬›¨TÆÑ¡#øÉ6–SÄëºèŠQéôxâÑíì1Éõ ÙºªO¦ÎA&BQ³€mÀød:EÒ¬®+©¸¬¾‚ÓùœGXsôµS1yJQd(k=SÓº+HàóY:yÑË~¦§º&–ván¬úS÷äŠzÐμþœtc¦½(“/D`š®SRütÔZŸPg3:¯Væ©ãw‹ÊêÝI'¨n`ðH^¶7-öÇiq½|x*¶Þ‰Òð"rÒK))°³²ÊÛ´j–šPˆÎß.0±ä"%Ì@©=ØGôäu™å‘”ýšqÇ}—›ˆU ™X3$–"®ŠiJÃã¥FYåd–ôGð´’´Ô’‰ k%ìÍöžøÇñª,¥¨…$CY„?¾ Ý(•s(ÉÝ ¸ååÈ ç'Ì®TI úÂÜðC1ÛkRÈÒÂ@Œéßg]Ó]U«ÕŒe}P$ÂkÝuÕ½%ÓûÚ¿?k¥¬]RÄφê7T´wO,Þ}=…Öº¶ŽSV=Ü¥jÕ²=Cêžjˆ­“ê^µ·˜àS¿{"Ø£uèHTÆòÖ’ÄK%q*9ŽF…D‹B[ ®í±µ  h }ÏdêN¬#mC˜-U 5–ffU&Nä+¼rY@¤Ü¬[ãŠánFLÅ” Ït…g+ŠÄ¡À.ìö,Ïçé‚Y<úrÔÍ •–’ÍÁ‚w61™÷º‘í¤ýMÐ9îœæ'Öx|.¡ëe¯p¶mé]kŸÓ™ÊýM·¨/êYò”³XûðݯŽl¶F͈ðqÈq¨B¨ŽÕdûqÒstëÓ W«º¥ÔŒ§tû«´³]IêF¤Öº WÒí¢º›¢ª¦§Ìä-e?ÛØ] ð×cÓæeÅKùzï C’·±#©õ:ž+¨2ñ/%åÛ¹#¬’Î7y_rÄ|I 2ä•Z(T^mQ©þ¯þå˼ŠÎÌ‚c˜ä<&hä,1ÜÈ\àæ !ú–ßÿN±  ¸@$0€ˆ.6û3cZºÊ…´Ÿ˜;¾çv»¼z³Â:Ø6!Ûk7—º©ˆDH€¬LäV™£œ áPæû¨„)nÒ°„å´ 4|ž:¢]ûÖ\ kZúÄ}t²\®\¤ykÖm41²F—žY8DÄG1x7iÙaŠ;ÐòîÚd!\¤¶åÇ@™ARͰvÚ­+Ê€YØMžÖü&Ò´ÆÛÍç×A’ËÔËQE%HQc-³ ¤¶fê£1TÕK„.[Ôûµ¿1ƒIYEìêíÆXÖ‹m(/*;wÃ*ª™+×%>º«Ìd;÷äZs$Cœ0’$ÎVŒØ•ƒÄ®Ö7)˜ÄD펿.?“DòK ð»`¤i!bÊU §!+ídVmªó¹c˜Ë®’L%Ù¸³žü[¾+TRÌ&©¸rÎÅÚ p}çÈ'+~ÈzmožÒ²kN¥Å¡lâ:çKFhšÊtq1Ë{Ÿ?g«³IäéÒ­Ÿµ©ò§WkZX,Ž¥ÊfŽ‹Äë]U„ÒQbq9»Õ&&iOo”4×Lu‡Gò:ûRê~œêÞßé}=3>Bi\^ŒÓYm?•Óy´¥M ¦ôìu,XÄeÌÖ…ÈëšUZã+7r9®ÕRÒjpòHóÇ šH—ó¤O¸NÒ“ZÚ%’MVâ¹mW«ÕCMšµ#Ç,*¼B¢Æ)Fé#Hˆ8´ñî¿Ì˜È®wj+O®hÿ§U©™à°3!ç¸~ ŽØ7üa  "àÄÛr%¸?lgèæŽ±c 6òÙößò[§¡.žÔ‚ßLot×9ûdyiŒ…‰Ù•;(O\®­ÎNW Ó¬LŸÇ\áÜÙãtiª‹A ø‚³Æc\œh »Pš¿ V·"ãÖz¨1ç-«¢ˆÉwÓ4Î ´‘ï¾5Œ™ÏnVŒ€G?)Êf$‚{·äžÌ ;Ne*ÌœärÉ!B³N¦hm6â£÷±Ÿné#fG£«)\Uœ‰”'͈ _¾(Ìõ$fh-ÔÁɃò–ú»íµÝœÇ[‘-ÕXÝ;~ˆØ2E7qdˆžã+–Çoõ ‚Z¼Zv7Cz³YÌ Kb¬·å—µL·á‚Ô±V•_Ý‹xŠWŽjí ‡@a‘Ì3ËTÎÜ‘"Éq¨…£)cEXæ-ˆÃ !ª$á0ƒ—~+Gä95ä êU6´ÕÄ/qËvÃ$eƒ×`âWuYø³>IIKyj6õ³;‘«Zµ:””P›—ybÿVnàòøÉ•ÌÒ¢…¦ªV°²0–»þOfÂ7žÌ[rIÙ¥)´{·%e‚ÊBÐŽØcI_‹CŠcón#ÐÛ1Óm-™ê–‡êþF¼óêîŸè.§è >'·;é÷ÒÝ_Ît«Qëˆrøtf¥™–í¾èÅškUå±£õÆöa¹~æò×g,ÜÇoœ,«"º}àP›ø#oùq;=°Z ƒ¸ñd ÑqEíÇÊHe‘B2Ø1YÎý–Iª·H_ᬉ©À¦;ÄUJšÒ’ãUˆµÅÎòH’¼biZÒJ’K³s%äžHßgìãtîcFæN¸Öz:ïOq]!ÓZgVë½G˜Æôó§¸l©Ô˜,Þa§ó¸¼ÇĽƒÖ•emP*aðTof]tö*¤Ÿô#¡µd½BÊk¡õ3Z²¿áîTõ7Ze5NCNè!’¡™¿ÂMzU޲góØ\6SSê™aŸVj\Ö&šæ²#eÜÒÑÎG€Fˉ»ñ3‹Ÿ3CA+}ìSSÜŠ@/s1¹@¾Ì«j¡žg‘x8rÇȺHfY¢OýĪSR,µ•® aB2yd((SI.$—ùXÝý%›xlHfj­%%j)1¦ü³€Gó‹Ò›-ü&D†™²Ž¥™Š8e©R?1cÇï°ÇFªâWåÆÂ°ëlúkTã5ÚÓÕú¯Mj cÕÜ]0ºÃ—·šéÇR´ÀFÀç4¶?=ƒÊé¼|yÿA«ðùúv…‰¸f^ ‘lv Îb ž¶6ø§²¼ïÆ5µX™!…i%Q !1Jy_â"Éq¢úî¦½Õæ8æ“* øRV¼mŠP ™¤ÛœqÈvçc†Ø™·¯È<Îôc˜ªVYd—%‹zc‘ ¢Ó‚¹^¤Š4“LëÔk?§›ïç\×úàó­;¨m{€êÁÕXΡjþ±ê‹÷´G@õ& ¨][ÖžŸiš½MÕ;Ô].Êô÷¬tFŒéÆJ蜎˜ÓxTÁãoj+ˆ˜Ïd¯Ím%é|u?Fõ–¤Ö:£Pꮎ`õn¾jÍ'ŒMg>µÆéj9ü¾§Æà08Ü]+M&“§zµ])OŒ¯f娖¨• „mþýÕ‘—ß&*÷G©$xÔˆ…šÈœÛuúZ¨d¹ ‹“}ÑôÒë½ZýîÞVG`Ž©Â½YL!YÒ£>Ïp–­%UA&D*q§ý<¤?¥  j0c±ݱ¥]e$ S€ß ãn1"ê£sÔÈÒ³4/­Ú`±°eÝÎÚ§ÞÜ`yd`©Qö·fŒ2…߀.W‹³³KÉžî'vxÚa4Dÿ B 5%cÔ1O ò3c%˜î]•f´ñׇrØ|a"FUe%hq[ ôºÁ[‰ä˜‹«¼b9\HÒÌ¡$ç'7$“ý2$ü£µobpVeíÓG.«-KáPEi*@bÖú{Ï2ר*ÕU@ìNûîÖ÷í‹ÒöFÀJ®ê\äƒ)^ãþ‚+È„¤üSˆŠ2;À)‰%>Š1N¨Òy‰¹ìÓ/öÆÈ@‘•yØì#FÛrç` DÃj,îž®õñ–š´ hÙtjйŠPX;IŠÓ"±¶1ÉÅÝö¼ìcñî6¾ÕÍ 䋉ÑA¯QË$Y‚4ˆ±Éac»VK\ §Ð\ÏL­^­E£I QPÔXó1¾[¨u T¨¢™Ôà2¸{üÿ-‰þª´Ã¨š~Td4xÖµ¹™WæLKrrD¤‰xp‡V¼v9†ShÊË&é#nv ³¦á· €@O‚Œ +y+þ?³žÌdr³7mFruRŒU'¬"U ‰e¬>>ÁdY¥žÀÇDZ–üÿ" ¡Ž7#×muî¨8¹È I sç Op!.牉 ¸™ÁŠ6eú…n—QI ‘¤hÒK–ÔH,,Ûv8…¡I+¬¥µ¸ pÉg›Ëï`õ¥¹ÿÛYuC3NW‰D <ÝÕRèõãb K‚µY¬“V "+Ñ«¤¡ªÚÚ¢bx̫ť‹”n%’Nçv ÝçvkN‰:仵#)I°ê[Öšªþ:í[·DµlÔš¥ºß%–zÅÉÅ21‘W³ ·'U¾H".ñÙb nI±}žG /.'pѯnÍ®Ðušv¬ÔXEUZä[úÙÉ+,…¥a#R%%å¥Ï±~ÛœùÌÒ+­*A"ÀıÒà m±]5)šE;Èé¸^7< ”J¬9Ö˜€ÈW Ĉ-è^ž×úM”¡’ÆkŒuíwF×\³^á0‘f&oKk|Ö’“EÀÛÀ- I-96nµk¥±|>rëKjG‚“Vâc56{ 1VR(9bV­çn(©,£šDXãCeŸx.íõÕn¢jãXï׉Wu8º›JëÅ8‘Ìea©ÞbÙf «ˆ°!š¸tݽ`Ítª™Š‹©¥*J–YÔРìÏ߃Ám¥N:hõ…% J™<ÌIƒÏæØªøOôÊÒºGct‡H:ÛÔ]2=“Ú÷Vò­Òº¦×Tº5.sXj$¥%lþ"æ7Ij¼^G¨zá0šKCij›u,U¶¸­>Ø¢…cíŽÔ: :åÔ,—Dú_ÔnšõWBô›Pct¦ ËiLÿI¥Ò¶4vÓKÌâ­êý;Òxoi fVæ‹Ãd)=›sejŒŠâ2ù:K‘õV¨ekÐE §nèdâ¡ùÆe‘THf9†A½‹0¸~§Šì§Pµ2Ê…/§›n«Ç<¡¼ʼñv˜ìÝØ¥ÜT* \>IÖCþŸ\”r­šdžAí7Œh^›;˜‰÷FöÆ:ƒQ|ìÛ¼uWñ¼–]чš¼D)¬b)&ÇF^µxDY¥u›¾†BÈå¤btb\oÚe¦åþ¢Ó1|ÄæïE¶,Z’Z÷ÊÔ~-Ï^l̯܃˛‚Êý¢UBñ ƒîÀ#³ˆ”ñª…}tùjJ¥A( :PÏ-6ΖúMð ½AR²–#Rœn;ù˜ñ8²ý4‰Û3ÏÌ´ªZNê„=®=¤jñ.a¯(î׊f)rQ;»ƒ¶ÄHÇÑ[û”î¢jã'7š³6à’”(ÈêDfFCÆ4„ºÓ£íñåŽO7"ß×?˜é¹ª•êÔ BAQ)$FÐ6Þa‚ôzRB ¢,Xs;âK•çU+,bALz€eX™ÏÄ*åˆiaíf¨œéµLŸ¢ÁEµEØî¨#`Š N;[¿Ç„ ¾ä ØV[:‡/c2šŠg¨ù8ÖŽC]°XÇk°€7Ú«J¢à±õ²B]ø‹ªaŒ–·MY¼ŸùmAÁªº÷d‘8pWdüYn Á¢³]\–#MLu¢‹ºh¥*rÄ©Òû5؈;âªYÚ]Bu2”â9Ò½®åíoMu:O,çšµ¦ vÀE#âw`Z7,W¶Ûî’ð/Î!&õ¹ˆØ»Ì{}»;¡^1ý‰2óK´ v%EïG1W¤Bo´·/¬ó™ºïBìõ§«aeküTÌŒêðÂÇa(5£¸ „ òUØØGQ(̈Àq,‰ì£䌪î£ä°ñ`F»UºÛÕ†0Õ¤C.Ìd2ë£Mi¨ÏñgØ„ˆ÷ܵÁÆ<ízuÖ•!Ø x³X?ad»HGÑù” Ûñsfâ^ÒÉqaUkÙ®&Ìmì×¾¥ÝévŽÓ¶pÆ4ÔýDêOº?£ìHër…-M®ï]xòYœHÖñ0ap˜Í ‚L½‰¨D¥;R£œ‡õ  ¼q(šn Ûrt©$‹Æ8Ø&üÍ®´ûaGPéΩšU´ÖNYjÍ[3‚Ôºw3 q&SMjM1•Šýæ)¶d¯’Zö*ôˆŠ¸Ú¹;ïEû’‰¼ÀZ©(Rÿ¸PB66±/ßó÷ÍKHPRˆ`l|†-ŠkÑnªõ‹¨ýDë¬Î¯ëi~šuï¨>Æiý?Òž‚ÅÒ«ºSBáôŽf†3SkÛôÇTªfrrf¬Á#b£‚,5»4dî×€M(ѵþ iG'Óœ Þ‹eÆsYèþ™õ+QiJŸRê}I¤´'\ú‡šÑý;ž•=%Ò îSêøqØõ·XôÎSPèŒWMéMm/­µ×fÜñÞ½Óý#¡cÖ´® Žs­sAÔôj%§«•Õz¦–/ŸÊæi$žL•6:£ÁÜys5)¡f‡sÌ{}énbl,Óà-Wl&žÐ4UÃærxÚ9Ý%Ҝ̺«¦8 MI¢‡Tbô£žþ¢Ñ±e;•°—odaq,×±–ê(CR̵+RÂðwÒì世&N¯“5º,’ };Yœ¹g7"€ÇG=æéîµumúwƒÐ¹ÈôþTë©4F¼Ž-cr\Ü]?®.äò:¿”鮜ÒÚ/žÆí>НC¨úÎÖ®4oCa ¤;îGÜUzsWÝ&¹Ó:ûTb öû¦¥ÒÚÒ-1¯4F¤š–‚Èêèëë½Zqqë&')v„´5¬Æj²ásk©¸Ç&8µ^5¦.éLí ‚A"ˆ~V›ÈZÇdᇵ J³.R¶öFæÃC¨Ô ”ÔÌ„ÖÖV`”Àí»?;âB¦Q5Š©Ò&š”©&ÁN)=ÞZíÆ*>£÷Õ‚ÓZï[é[=<Êät¶‰^£i¹u†"棒ÎKZôJêÍY«1‡/OÛ¸.ŸÔ»¢µŽ”ÁuïSo5eƒ|NSKÆ—«7­L§»mq®éFŽÍh =*Ô:»\ôvþG ”ÕØ}aC?Ñ.­Ô›65àôå=5«q¶®ÐÆj)[kÉ]©kžµSäMË[{_鿝Åkúð3‚Éë­?Ô 1“–Éd´¾WõAÞÐwz‹yS 6­³‡ÈLùL „ZÕðÏz{Cä\±+lbýªtrž/ S3‚µ«îb"éÖÙ]S›Èj „ù›éذe+XÉÊíO‰,Ï…Ã# ‰ù&»¤’Ç­"ŸXSøÈI[¥ƒ‰räˆk»F, 顎…Árò #µ¡½Î+n„ÿPlPrwô>¥Š½_Édú?C§V~ ¬º?YI×-5×s¥*fº”zw7 {Kèm=_Ôšö-!§z« å«…ÆE£õþ»Êܱül“!ïljê.¦ù^”jüf¢ÄÿÃ8º×§cÎ>s[t“QõQqiœ ¥t΢ÄuRZx­C‚ÔYœäz»C=]#™©f,mÛpd(R/éïi=ÒñãÆ¨±Öðš§ÚkNêúÇP¦wKaºInMàÒùã?òzn-CTë ?€“ÑÞÅPÕÚ« .P^Iw±þÕ:)Šl XÝ1{O_KÔ¿Š­šÈÅŒÖrtþx§Ó¡ã⛆¸Ì`mV¯)µšye õ*O]ŠÄˆÓêàjR†„†#Ð Ì ´<Ù”¾Ÿ*ÔÀꈨߛYÿ¨OD`³ºÃ-íÛPË¢°Ý%ë'^ÿ™«ÔÍ<×­t_ÛßSGLº±¨—M¶›žJÙÚ9ËX«>ÐRäœê‰.Í6[QhØi4¶¥ù_ý=Åk^¬`ªh­O©ô§Mj{‹ÇǬôć/o;¯}±iužê¾™É鳇ÇQÒ8«¹˜kÝ#‚×WµVZ– Ôúx#að5òx›9î¦öÍÑ=_§.éMC¢c»§ò!ê§C.Õí@-tÇ­š®¾ºêf˜#¤…u^¦©[)-Ôe¹’H8dŒ=1{ÛEr¹I”Éi;SÇ«!ê ¹]<ÙüŒ2·W°YM9Ô}Q…ÒñM#¬µž 7¨âÊj:ð­±> ÏEv¹’FŸÃêãGó©’CÛˆnlvߦ¦@94–d;––x½ÚÞ.Á[~íúŸ.«ÒzN/o‘b3“u?Dé½y†Èõ žrÝ]Ô.—ÇÕ žÑ`ð`Íklž&hð–´nG[O:†³eõ3EyJ~Ú½ÊÒ÷ˆÔYØ´u0’éÛ`¯jÊ9 P˜BÙÉ1õun™¿ˆÒúÏ¥óúvÄZŸ«4¸Æbl\¡Ò:Ç]ãæÉ_ÄγÝ鎨¹&[%oÚ»¤²߯å2x™Ý´V˜'OÀd­,sdžMÉòtC‰/!å&ð°`ßKºÓNŽdsY=ŒËG—ÏéÝ#£ïdó¹Ü¦­ËǤºs[)[Di6³3X–¦Iãó˜Ý=ͨÒÇükQ<–jÂ=N>¤+V¢D $wxçlAkÉ)„¬“§ÔH=®ðOn§o3Ö¯qz'îtêN¬áõ#ÛŸRý°èj•1½)ÒøûúÊ·_òžÝé+ÙŽF®qU±Y.²ZÇ$¥qÆŒ™bóYOŒgÚÇßÔúqX°};Îa:×z2-3×+ÒA«°º¿BÏÔ¡¢uëåôN*¥Ma£õ¼}\­üuàÕ©sAïI.6sv´Ú }*ÕÑu9³špZN²çúgªz…"e/Åc9šé½ “éÕÈdIJ/§îôÏDØÇüsj80ý‹êÝé‰Aí[¢ðä1×Oå'ƒ ’¡•Ò¸š›5gGèÙhê1«c« ôÃÙ}+ˆ³¨ƒÞ»ÇWJÉ,ÖkÝeºˆ*ª€‚µT\¤jpàðÇk038±5²Šø´Ë¤éKD‘ä½ÙŒÍ±ë¸O‡öƒ—÷! °±éû¹,^‹ÔZ –pÑÕRYÑú¿[`1:gQdqÔMbî¥ÑˆµFO›–š*Ù ô5ç½^x¡h¯s]WÓÚÛ¨=8ÖZzßVu5l‡G±ý'¦ÚJ>‹eµ&S«”5,ñUÔy ™C¦¡éÖ!¢õMqÕŒ2ÆC˜¡kAd4¾Vî:LõëKc )»ÓßGmá2ôÛ5/žµ„‹;˜¨1¶²šÞN¡Þkõgùx bë[2e“‹“†>äüñQCMÄKηíç§×æl¾b÷S²úÄÝÓW1ÝDÎu3SÞêžÆ‹“QXÓiÍqbÛå4Ü8¬5TÔq˜¹Z5a#{y ϧ¯C©•S]*©5¦J”4¼pZû;xTªät© J½U5'Òä¦ÉÙía8R÷‘‚·éÖŒµÒî PÖSÉftŽŠÃ²áçÇÚên’ÌÔ§Ô^œgòÕìG"} §m?S2÷EK˜üÇLqÙ]OŒI5%:ú>þ}éû’Ï{yÒša4ȩ̀Qõ–wSäðX½w—¥‚ÂM£:G¢ò½Iê]’½”ÅEoQêºX-Ñm) w›æk~°h\„5¬CˆÈEbw'µ>‡X—zÎ’Éä2Újž*ž–Ô—µFvæ¡ÓÖqº×Ôjú‹ŸšÒ߯ê‹:׆Î[Ö ç7Ÿ·Š£ŒÉM&5 w/ä4“ÊkJ÷'€£—Õ\½3ˆ9h!½ŒÄa.ç)g2Õ±økicµ”ËáðvróAXÇ9§¢šV©B¤bÄRêJ¢´Ôªˆt„. ¹mà~@óŠÊò)«L¥+(VƒeXgK›Ç¾:/¬U5?U“ITÊc²zw]ôBuß§Ù )®+#™·¤ïà±y*—;]ìã_UÑÈ_vš2)‹yš¬1¨? O¤ÊÌ&~–19o;Ʊ³+ÞqR’Š÷«ßJ=ºhžê(ïhº0c´¾—醣Ý5ÓBl¿ö†„§¨/ëµIîe-Û/bΦËd*Õ\Tu#:FNÕY²³üI+Q™’ªÜθôkHõ÷¥Ú›£ý@þVM­ãÂŪ+`2¶°–rX¬V Äêø™oVe»îK RÆŒ¬öa[¸™ùÒžDa¾öuíÿ¥}ZÆõ›¤ÚŸL5=NŸÞé–K¡Gð[WiëvãÈ×›Yi¨]êçòø+¤¸élæ$ïb³Xz§0ŒéÍÑ]%$eÀªI•;;^Ü_òÅ”W“*¦°&¹  ò€AÞbyí‹DAaEÚD/±nÁ}£^Ò»IF”òŽj2Éý!v”’ }ÊÈÊSf_?[ êÌcHȪ P›+¾¨Øð˜ZQº)vå(H»ˆçþ«Ê‘¤¢bÁóĵ#Úeðü[ä…åîí¨Ú¸§fHÀåDQCÍ[e_[JA$È`nïq1c{‹ã+@%À;Ünÿ§ßlÓÃi–BÂ%ÆÍ`©œ VÀ1ˆ˜"ºÉ°Þ´eûv¶ÛÙ˜ía1n醯VI[Žñ4*ûUŒ8ÕÒ:ªÛ’bGÚ%"-ŠÆ¾«Æ]ÂbtØfŒ⮫8ŽX÷î(qÁ„›Á#oòÈSeÇ)j»7«†Œ®YGÓ؇,€ uíýâ>#îÛ™Ñ øçz“ T¡u}ÈPžñþ-:p%u ü¨ ÌÖCÉnx–Û3[”e‘c 4Vþ 8¡<ˆÜ†PH;³‘¹r;“É@€ÛìÛò#©)'@>7r-ÃH½¾KLJQ›bwßÎÛ_û‚þƒNäøÊÖC²6ÛBøâиtâÊ9nJ†$ʆÃëŸ$››sf íÇì³`ÂS¤’ïû¿ùÂÄã·Í‰xâ7%T¾€“ËÎʼnØÉI“`Þ”gÈØ²òP#pHoí?ݱÿÞ+·þ^›5Ès"¸äQÔ–MØ€K¯ëb¤;3;íÌþÛÖd/ êA ¿ÿy@ ¿É`Äo±õI. ÁñþwĦ!Ü´sðü|lHP³È¤ Œ¡ÏCîXw%O¹]ÈØúšï$˜u‘XGÆã´¢D0ˆ÷ˆ:ì6’' "/xqZJ` {ñ/¼HÈbw@À» Ãsmö1ËxÜÈØ1 ï·¡T¢“ X‡ní¢†’B±•Hyn§‚¬œc”˜x™K†cÛzcœÊ5>÷ˆOüãP#à-&ÉR\ÙŒ³°òö8šh—ã¦q ä4Â&æJ´%Y]¶ eîð ŸI òb}JVQÌk);0$Ž-·Ÿûv¶ûª¬Hܨòñm¶œÅg‡êÿfPC7Wóí!ðpASaêZЩ9÷9,džØÛŒOËr Ž[ÎÃÂm¶åNÃ>e¾=P«kS™¸,Á¬ÌC ¸¶4e¿ìÑ7ôvîØg»ÁpA!‹.Ä@ :múØø$í¶þ]6‘Ð û"³n {ÔûqÛûˆ#p Û‘ G ‹ÜRˆ»ìvî³<¿"ÄOþvØ ˆÂ±mËl¤È‚wbØ»þ‰uo;î*`ìK´Å®×ÿ;ââàŒU@ÎÚ‹<Ä»ízç&WgVŒX°õ‘ÌKÚxcPÆ áV\dâ;¶iϰ™ u‹ýB£x€+î_Om/XîôÇ"›;–µ,{ñ68¢”bæ›93ç£ ÌF‘–WÈÚ‡¶cí)fbpŽ/Ý0'÷ç ˆ«¢„ý„ÝoÿQ ̼¸ÍK4Ðþá{iÇ„apì€ , >ì7ôS¬Êä@–(D¤›~[|逊ù¸°ÿæŸØçl}1Ü*”)ú¶Ò·‘¿7$nßc¹'&EU ©þâÛÆ€·‚7;à‘ú v*£ÎûoÄ›-Ç%"WõÜúÆÄ>”J¸~ÎܶmöÙÿÀ ÿÑ$þöÜ…Á{øÃlàÌŽÁœÙö#oíü{¹c¶å†ãêO¤³²Ê>á$ž,T÷ý®ÊAòüŽåœÿà€v%Žêì¼xíþv}¶$ñàÇøi–DbS“r;ž$ývð ö¯ù?çÒ ~ÿa±ò ¥ªG¸ïõ‘ƒ•>ï40,æ1ì7Ù° ì\*@é-‡ãÞÂÞ¬¥í>Ö¶‹`PÕR28©’4”xBž\ËÿqÜÌ'‰8’}W®–¹oõ"‘‰ Þïúg öÔò%=‚û2šÑ7ãšËV˜•ŽB¶j[cj»Ø~NˆÊÂ/?p£š7m‰PÏ9å ªÎÜg°yOZ]’ºvüŽ÷¢û>‡;pÀMî ÅÎ9 ç7\êhI)úSà€ÍȆÎÒ0vBÉ’FÙ»J>_Ø$\†ÐÛ`4¿îO§O €rXGÆ!$NU™å 'd–‹úʦæâ6âЫ2òY –uxÕ ;´PÆóB`æbiE}¹ã‹v$G ìBTg’ØcÂDÇŽÊ/¹‚Hå` ±¸ãäOß$»ÕeU‰‰2‘< <ÇîKF0à-.$¹9x”³áD™6-0•Y–T›þî 6WµÛ…ÖÚ Ä•£ðÒ& ¦ñ¡À±ÂݸöýÖUý˜VF@i£’õg%÷ÈG§Q]cF qÝ*¡<Ã1Ý£ÙÁ-[b¸’M‚Nû×¶#‘™‹qyÔ)’Cß<ñÉ•yÚXÁ3,k¾mLUáÆMÜi ±6‚N×kNòñ„ ½%ÈìLÌ’H±˜òu3‚Ò0äR^ãI'uPó¬e@âŽxßRŠPe¢8“é½ä »³žØD(YyFYKGºÆiUB¼0W'UŸäí"ë.â^Cón²óeYY$OµwÝÓÉô%ÖŠ"+Ù/0#ÒUûƒeí<&33#‰<Òÿûˆa3i8ïj@4`TbBHhÙï»8ü¾øKPw `·§óûáQ*2+"ûËaI :XnCIZþÄn%ÆqàˆÍé'U"Ø1mØF¬°¬`òâ ÿ¨"åõ’¡<ªÎ~C~/”®åÞG—›„Þ4fªUûˆ›«Î‘…ùÐD¿¼<®Ôå3ºœy8fÝŽç·#"9qÅ9Yw%¡ßã;&P¥IßÔ½*`YÜ;ûṀl8vbá%›g$ØòÁàŸl8¶ÝåþÒK4ެQ™¼ÆK–aýò°XãºÃÆB¨QŽÚU,$³÷ ~,»ö‚3Æ#cº‚ÔËïÞƒðÞc:íéäŽ4+vÉ’'e Å‚ÖÎIˆ@ÁDlÇŽÃv_’͸D©‚¥V@¹ÝYx«¿rX™¹²™œË< æv¡U¬å}8,fÖwqËx—“nPh·r Cƒ$ll6|4'‰‚º(ÅaI… ±e“÷]Õ¬ž¥ž)í>ák`òûïº4âuíŽ^;/(ž¨<.ýéh!)4Yy™ubÿ°«FL ì FT”'&pû˜¤¶"¿xFX^!ƒ¬(ÑCɉ…AQ#dzn"1s 0YHqBI€šÛ´˜ë¥ ¼IòÒ׆NØt‡%AÃí»ÁŽÇØvÃÏ<‚tŒG+÷Õ¥ãºÈÛ”_©'hä‘”–ieÉDv€š–ÚF݆PZ&‡Šû+F9Á,ÿ‰v¡¢…«1j÷‹Dxúx :·5B Æìˆê›Å‹„ìfÈï„(´ŒHR߀ Æ¥¼TyÉi ‚rúЉÕ&»°%Û{¿퉤¨¨ÉZ@2âÿNósçÌ–Á¡î™b$ù¸Ø!ŽîÄe+™h…YQwdZÙn&$-`UHÔ€µä`Û€dPÆ’½6îÕ¿÷ØH@*òÝã)rìIX;®‘øñ2²Y¯È;ú÷e ± vd1öÃyäÏ2vÕÆÏ+šÅq¼™âú»QmVùvÃó†—mÐÒaµÙ‹Iß»cH™š>E’l †Emä$|0+€¶_c4O÷¤;{úËNë;FòmùÄ É:Ç"˜Þ5Þ1:qF’˜Þ³Õq•ÙIWÒªw9–nï8å`'ŒKÍAàÅØže‡u‚ÇŠ¼H®èóy8JиWŠCÁû²(ݧˆ‹Å{—qS¸~OÌy ¶V“X„ú‹˜·:\żò6–p¢¢MÈ;–`ÄØ0v—缎È]6V.9LáebHP‰Y¨äl°ß% ÔO î¢F­÷ÉgaÚBÀ“)}¸…`ÍQH#a°Z7âVµÐw È9;•/É«—¸©¹ $ñ9AÃ6ïXÛ^•QÓ‹#‰/ÏÆÛG72Íâ¯äÌÆ{Êc1Ý’àBhb>fì?`0Á%%Éwÿø³a˜íÀÝÙ%²Êì³Fÿ‚ºðy^b»Ë Ô­×_êRVIhŒÍë)f&34HX’ŒÂE~ ò ˆí N‘çÇ‚Ä;JI˜ék]¢Wbé!‚6ÚËI+Iv;`…W˜ÄYk^qñÍpÔd=øQŠš;Eãhü"£lÒA_¶’qí·y ·eï¤ãyøÀv  ±X}÷vöŸ. Ø÷A ص¹¶øñyo0THÌLÀðe!'0ââRBEkmîlø’ªb™,Æâ5T á,|{dí#¤ ’ ×eyÁ%ØÅks*í‰T³†`ÌÅ$åÄdvø¥±!RQn’í/jФW1êò—ô¡ ‘• •wñÍæ‘ž^†N*%î¨f‚1I#»)IG¦ ØÝƒ—&C–Þà3Ü6\È^;8ìÜpxl6óD‘˜¼Šä=¦P06(ò±3xºÛ™åMH±ß†Y¤‘‚à ¤®]Br_¬N•&2 œ„S <ìnÄ«ëÏ^9$`î…P Å‘FGý)Rg]¤àH®²2À¦~N•š±°XYÔ+¯u =©&IYùÁÛQ*C+|˜­3ÍiÖ„ãh ‚^Nð<4Äp^pŸÒx6bnì=¡ñ‡™•¸ª³rDhÿ7-àØ¨x¤$³,„p‚ëþ[ñïREI>Yš`„+(%ÑQvVAÆ1„ ‹¼ ž16™dœ´26ÊŽ(ÔÈD²»¨ØÈˆ ”n6X¨Oï$ƒqcÞ´ ~F7+²ˆdBa$oÑ«9~á,c&5nd²·(ë’7ÚÇ]Šp'µäðæ5ŒGß§Ô$‚{øx} lg›v±ø<ÆaL~6íØóU±4pívR „°åÂüâ’ðAÎħåSxѾÛÿíWŃiü´LœfØWI%1ñª*#öä±·Ûãø¯$[K?)Á$¯Òz}ÌM±ÜÍ–íÆÙùÁZ(пˆæEqÂ9TŽ«üqäjô&ñ:#gDu ¨Z_7™×¸^ŸkÊ},hÍ=•Íg5ŸQ²}¸±ú;@᢭GSd®\w¥PR€Ç<°O4r5xÙýs¹¾°hV]% cOÊTHQ„‡7‡}þ†2½95é"£©ÔA€tý€Ð ³ãÒhÝQ±OåP¯Bƒ„d¤Eÿ÷RH_”ª·uÁy;“cX‚7¯ /©ÌAãÓÙ)yÇ ˜û+vлC Q¬ƒ²ŠBU¿³1•dõÿ×WL®RÂPÂôÿ®:Ÿª9}IÔ+–è^Ÿé¦o#Õ”éN Oêmw&­ÁÆŒ;ƒÖzÞ:õ»+£›¨+„k6³õSÖ_õèfž†ÕúRŸTµJµ¶¢™{aÁtë?7Otb{„§‚¿ÑüfµËK^/áózŠžªÑö²XÆYlé¸5ž—|ßÇhxåÿÔÒÃ66;éÈ~OÝñðt¸•ÃÜÇgh?Nàs/·ÜTýœ¥IqÍÛ’^ÝÑĪH…e•Ñ]Û´[e´G岚’¨ýrŒêÒÉøDˆ%Ù<Žñý#^é,Šáóô#i-±µ¢oTªC¬í¼kñÓ…ŽÜ ò«202Hx4¡·H/‘Ú©ÿ·`ZMý Öç¸x¼qoÆ4Ý몫º«~HbKKVälAjCnrqó±õÑåjüjH¬ ÁhÔt† ð×xs¶f)Š5M;$‚\Îü· :Øì^k'LÝ¡Š·r³ÊÊ“ÀÈÞÂòsÚØI";Ãu€–áf¥ XŸ[ §u3 æÀäû|Krø@«³k‡°‡cJxc¦ö棣K£ŠLÄn@Œ¬üÃHM Ž0M¢B¶9ßø Õv,ðnŒv&¬1¨'¸y[Ÿ÷¢±R7e]”.ãÀØï·±ô/1ÔêÒ¨´%’²¨»Ö&6Ú8Œ¡Ó©Õ¢…ª¢ÁX67òÅÛk6)íÚ÷1VÍ|•i(*Yµw¡á$•íNØ= XW’Ni”(÷ÚU³XÄrÖ†I‚™™I`R»Àª†a0;DL$ðšcì‘3òųY&qè—ÕîXw!™±˜$Aö6r9UßÿhÊåÖ½·úWîÊ…KÞŒ¨åU<‰Ì@'(/$äÉ${‰©˜ðüÈ,~ik$²õ^:ŠKêH%„m Á¿;³œ­LR¨¤%@„‡Ú$ù}¥؆8уHå”Â̋ø"¶ . É Xí¸,‚Ltc¶û—ßÑK‡‹¶±'Ö 'Ì #åø³©áQØ{Ë!e—­v®¬¿}di& ñ”ÝÜ ’Pçþœ¬©Ëæˆ×±pe§ÊÚúÙJõ£“‰bˆFd‘ØÊ´©ÏŠØ’h#V=‘ó°,l¤±ìm ÒT ¹é/ܱÞóØÝÙÚä9/-’1µ …Õ(Q¿fªË<œk¶Ë<…ˆù¶ͳÖFþ·?Ûº€ìÇ—ˆñâ±½Nm#ÒVeƒí$ݶw¯»An£Ì.w&Ñ—§¯iiì»•Š­›òÍ$ÌͯMZY'ïª!"Gg…|×Uh¶;nc½6÷ÑÞ©è-[Õm ¯1^—èÜŽ Åg5üòYÇiˆSIàqº‡Qæ!Èd+WI°˜l~[kYU`KTr5€îÒ—JýXP¨ºD%%‰%È ä˜pvòf‡N©"©*u’€ÀAï-ôG€ÍL")†ËF»Dñ0Ö2%°âAåÖ`GrP²‰Q±ì¸V/&˜ÔŒao<‡uÚ$+„n|D|Â+Ú§ µ&T´¬ãëê•ÿPnX= Òí|ªÙìOU´ž«ãñº?¤ºËSjÒJVcƒ)Õ^¬iœ]I27éîY$ƒ'¨õpT­./6¥ßøkâ–oÜ¿GtßPzÒû:º¶OX{—¯›Èô’–¯.r–wNàt}­ucW_»SœX/gY™¾ÑVÉdnУL´Ö ©ëÁÔß á 9w%€µÞ>ŒÆÖŽ,J÷ 0½¯LãIUBê­°¡2H ?;c5›âªˆfä7…Ô’_âòMºÊ ŠÉö‹‘ ˆ>ˆ!‘wjªßÐN£!ÎU”¡;tÕ&ŸL«r.ÆåÄ岇à«@íõŠIvC4CƒÄB’dYO©óSrOý¨Ùöå¸ä ÷ü}«Õ…«A¦HV’~c¬äö%­‚tzh«JšÍE2˜Å€ƒ]žÄ8³bŸ½KPØŽ;5,FòÆ%u‡¶VuߘGvFóÎʦÜ@|xÖMýl.5ÿHá2¦E”Ôüp™'¥ ̨þ.ð¦Íc€˜g‰Þ¾E¤~Ú);,ž©Ñ¶<›ÅÖ}÷€í1L’óí>O,xôbJî8ßdâ7fen,‚w 91'ÏŽ$($VUêj¤(«BT*!*&YÉkLq;Û¡ÓÑUUB–F•éî—I'½Èö|TÉqÙ§ŸnºA fÒ»Af^Ô6LÌÆ 9ÎÖ!”µ8ãX ·­w*pnæFÙ˜£"žPË\Ê6´¸ðXDÀ\$ñ#Õ’×Í Òyˆü³¤pžF)VùQ‚äªBüåo싸ycÕiRí¿)#æ¯E„•çÈíX(“´Ï²Á!=ë½yJ£6ds ÍSRÊBJ—R~äû7ÉœË&‚´}-,6;MŽ=(1Ôb Œ¨D“š%~çîFŒ쯰LBa¦Ä½)kw冖Ç8€DC¼òl>2«¶êÿM(σ1ä7˜l2$1 ŠcB#ñ >ò4€ŽÚ,’ ä^K¦íHUÃÃ'ŽžžVŒXWmͨdVàk±ç(¶Å»(Oj¡&{Ÿ”›E('b–SMJÔ¢´CXí.`ã2©HÝ@ìÓæfw—œu†ÕeLƒ)*àÒ–V%çθ–3Z‡ïAÇf°á!Ù‹:?RÂ’ZŸ<0CÉ,¦ˆø™¦–x•Çn%%â’¨ú­ ¹$1_V I©BÙ[oÛ²£‘Èì?{€û\Œßá2ä$œ×(‚>E¿¤™™b…)]å ˆ¤í÷Qþ€(êÕŠô©e)‹:bs6DI£Óh% :–é ÔÄûÉæì<Ö‰l6b²8!†È¾ •ÜìFÇ|ñRy(õ<ÇU«J¡BR‚»j;s±™%C¦Ó©M ”>@÷‡³1äo|T›˜|pcmãåŠäŠZ*b@Œ~Dî!*™¡„ÈDÜŒ”矱\ ò/®°Ñœ(;aŽÑ«Dö%ìÐ)úX¥_ž|§ÚÁ×Úl“/Õ#Ž(P‚—n†ìó!­KÀ·xÎ%€HˆZzjTÂT1ذü„©ã¾Ûƒ¿#¶ßa°âI;AŸO[ªUJ(”¤=DjX ·¥L@@>0Etú}.¨GBÒØI/¿fâføªÖôÖ¡¥V{vñV©ÃN)nÏbN8 Æ ÔX|™CM`!K´KŬê‡Ö¦/˜ÌWYñ¸¹,×^w ä61D²wLËøÙ5 H•47Ã:êËêeí¼ë#’߯]<‘cî*3c´ Y-ù5"G´ª^ [¦‘Htô¡ûª!dÂö EAûU 0-7pÙiA6-wl@~<±éê‹4SBuÓZRØÃ’Ï.Ãp.4ÄäiŠé§êÒ¤)ËØ¥¥®ÆÍ¹£UÑúWl¤ˆ@I"ÆÌ\¯ bÉ!˜N€r¢5Mƒë{>>sºÒÁ3¢ý^5v ,|ÀhyÒñb$XH†@°•Ý}[°¬Dg‹ìž e$·ˆØ€§r ÿj‚?~}Wž£Ç¶§s'> ¤„ (C-•…~›,®Î#œ´÷Ùª; ¯õfK¨.½o†´€4(•â^×ñùŒG5‘§J‘R­OýD0&"ÃkølÔ™v%ß¶%l^Gd^<{»’fQõ²£·Ñ¥r¬µçˆ,ͨѸÆ$.ò&ërpg•wg`ÕÇÙöa¡‘Doù»kÉ^4Ùšr[oŒ?îhƒG›‰Æà!˜S¾¡FãTÈCIÚªvB•æ8¬² ¡Ÿ™™Ds^Òµ”—‘ŠPB¼¤#XÄ…Œ¤ÀP»nVBüÄ&AømñUXGÊP¬jQ¦²Þ´êQ–uC5Åù†“¾0V§¢ª`j!$;6ÀÈ`\m‰6Už|V˜AÏëFg#åwT2Y_ˆí̤˜•7¨À–õdp¥W‹>lV4QѾ,?¤r{cêv‹bc߉ߊé™`¸]6#f‘F.óqš²ÄåM„p‰wIFí4lÿÓ¨{‹öŒobpΉ‚ÃÔ¡ÆcUg3†Þ¬ œg w– ³€;ŠÅ¼G®«£E€U¨<€DËIíìø5ÓîÕ»ü4¸%ø›3žÝ±ÒD.Œëà€¡ˆôIðÇp<ïàxÿÁõ”P¨lòå¾ÈÞA³1;°Ù‹ïûÿ=!™QKK'n=÷gbxìߣ¹1%‚¹Rí¹âI²B#rà숼›ŽêÉäÌIߊí¹U%¶ ïþ&÷—ñûÿžæ1°%]Xqõ6oúŠ oÑ;ìÀ€|€?ÁÓÕ }ü7l>`H?³ã÷àÿãÒ6c¹ÙU¸°<¿½‰RXŽ#e [÷Ø0#Övmù–fÛï³ø®ÿSà±Ø·ƒÿìfÛ>–ÿsôÂÇŠl^A!qà¸ßÈVðÍúŸ%|ùb<B«2àÛwP†â³vçîv–zê ¿ØÅÉ—cŒŽÄFш*lyebo°î|’Gù!FÄljßê¡U”+a¼ê÷hRBÊoeï.áyÁ þë vúÙÓ¿úÊISy1p?n_z„åÔ ùˆ‚L¹ûüñ1Ñ\NœÆ†xœÈªÝÉ— ¬²ñâÏÿãFqàú•3 ‹n(cå[ˆÿé2±^(Þ<2þ¿^¢Ú,±ÓÐY‘;-·€\€Çˆúù…vߌ;;FOwÛÔ¤x†bP! ’’ìì–ìIû_³§4½]_ýÅH™s¿ –µí»iˆ£I0 ‡çlavU€}Ãq,vÛÎàŽCf;ñÜìwÛÀ(¨ÝŸrèÀ$“¸b~Û‡ìþüϬà8«º€G&$‚Nû¤ƒ¾ûxñ°òH=%TÊ 3bG±XîT¡Y”1e$ø%¼T³)ÞðßOìø´– ðY¶»ÏiÅXÔ`¦w6Íý§%“c#‡ãäÅäY·2Ç´Š%Ÿo‘BCÙ¤;Ï ±VñÓýB·2/½ôÔ3M^8&ïá;¥»D¤èþ+™6gÝ·ôrÔ ÏævàHÊÝr#r[˜‘ÝdW}ã6Q ‘ö¦Õ9ÀûÛ G±£‹¯ßê$bAÁºíÒ™‹ÅeÙŸ¢XѬsñ„$öÍfÕçö#Ñ>®ã+‘‚ú’XîY3ïÀŽ˜OÆÍH.$ÿzoßþ1ôÌ'è’Ì6#ÀãÄù>ÙI (#É$ÎçqéMÇìG‡mƒ)`U;<ìO€AÛØß^Dg,IÛ`»m¿`’<~È'Ël߯ûO„Äÿ´ö$.î ½ÚŒ|vé„ÑÉîkýHa0³ýÙt¼ÙF‘3;û öx󴻯 ‡±ñ»˜ô–K…{èRd`ß¹>¬u¥xþ“Wé¦Iê SÕŽ¼tÓ¢ô¡ÖYœ¦/ Œÿˆ9˜±s÷/aqy»Mg ZF¸ðÖ¢õ¬UCR —Ó@û©ÿQºâ`%“ÜçJ.˜’C‘‰ýŒ{Q¤ÓÊ Me&Ž<¬Â$¼ˆøˆ¡g‰¥“»×nŠUë†Jc³Õ}9Íh¢h®§èí_£+éëœ.ªÐ™Hó Çë ¥ÀY£¸ƒÍƒ¿‹·ñ”›6Dpý}v4U_H¦šO¯O¤…i±N¦rÀ–‹ÃùÇ3›M*]IF¡!ž5%´ $Û±Û¶ø¿wPh[«zSלFŸÀu?–é'IbºIcWkÌgTéõ³Ö½K¢WKcò:_©qùœd>ÝúÑÕËéhi<&š©ªs:ˆàîd+‡ÞOG2Uᵄ‹ªÙ×I^Öú† F:‰™·¢ðT:—ªºM¨¦ê44ô­¡rš_^hU‚Õø D•2˜1‚Éä¨U|})ì¬;SûÐÚ¶Šäu>­ÔÝFêÚu#Kõ2®u[MôÃ]Ìrº7Jë½ §4¦s§Ô´V—é¶¡é¦IõK©têé‹X(rWsZË)«°® eŽÃd±óýí_GhWK+”»&g¢Uº+ž»[ ¡tÕlœGZu¨7õ•m1 4¶‘ÑØÍE“ÔLÎOR¾SOÐÇ×ÇÓ»KçGrÍ©'øÂ} 4•©bТòa‹s±Ã(t¦Rª(R5%Òã~Ò‡:QîsJõ?Rjý-üfgî_t/HÊØŒýªºâÇOzKYg΋Œ«GÖô\Y‹Ôñö'”_J¸ºwmzƒ^n6CÞ—@1Òdd³ŸÕ«OÓžœõ_;š¯ÓÍso ˆÑ½ZÌç´ïKkd³•ð/W«5Þ«Áe4ŽŒÒÒLuuÝYÒØ|M™æ ñê~Ð"Ów/ez{Ö Y£2’usPu·‘›§sqá5ºè«t ©ÕV¦N¬P_ÁêM!³^;Q.OKêxS)BLÖ+žW$öAÓ›Z/_hŒ¾§×9ün¹é'·.’I{R/˜ÊÒØ56´×=,Ô×jK„[Uê¶Ô:Ñ2:ÇOç´üú]cqB¦cÕòù\|óÕÖRt «ÔêQÄgoífbŽžåJQ!“.5\@—~ø‘zŽkxés:Í5--E“Òöú|:e­¥ê%Lö/Dc:•z–KBE†9ªåÐYœN¨­#Àq¹luêy:V¬|„Õ’ÓšŠ–ªÂ`u& ®Ë‹Ô¼vk5ÚÒ㯈røõ·Où:YêÝ¡–Ž´Ý›•®ÁZAÆÎJÐä«H$ÈûÓt&kLÿ;Óíjüý­A­«Áí T:/¨–Ε¥£1u¡é&ƒ³ Ý!BŒyžŸëézƒ‘Ö¸=s-»­™µ‚øzbÀ鯂§ÒþŸhΟPÌj]CÑZk¥ëêo•—QjŒ­|5t…,çòSG —-²ÒVhÒ¾—"±XŠð«zÕWQUEþ2š0¤°Ô§àO—ò.1›62a(ü1+V³¨9ù].–ÜnåÛHÝË+FTB°‹fe@•«öÓw0ÅÜÑBx½0Í_1'EôŽô;…0œä}¾ý¦Pw±´IÈãòoËö–v|yã±õ°K¨Vh˪£Æb”ŒÄ_îDec#©HT™1–±aŒLO¬• ¤…KídÉ»;wQ<ÝÔˆt1æCˆv7KX…GzK.Ò¥ˆT…IäÝÆÿõkóâÜ‚‘YÆÃ>7©)öhvÆÌ±—ŽUXÜÂÛEÎÝlHBTí³·Ä°Ó/™uš8ö†¼ñ1ÊÐñAÜŠ}¹Ù‘ž»uÛ¦½Í\êN«Óz“E c{ÜIýÆt¿ªnêh4ódú[‰¯‡KëìŽ7 ”ËãhåŸæsMcµ¥ª©þTˆ¦5„šR„˜úôa¹ó,ð±–X!…fJñE$0;µ+‹Ó‘r[RÍ_#$+YÔ†N«ÞÈ鈮4§“ä$b1ì¦4”TbR±2)ÃAk}Ç'žé5óU–±OÒO¦R „‡7kÍËÃŒÉg¨Ð¢”)ZL’m¦AâZ¾)6¡ö¡îŸ%>¸|N¯èæMuã­:ÿ¬~á4>©]XЙ\ÜY-ÑþŸh>—鮲`:I–Ö4t-ŒMòùn¦ÞÄéí¬²¹<Î/¥5V& ö ÒµõexrzzÒ7SîË'&Â!fOEjËHvti!Šº±‘ ™ ¦¼›+Yšx^"¤ê•Çu#”´*X]i£!P,ñ4âPïnÒÛY MƒRW±j1À?ÓÙ„@¨~Wh¸ÒÐD‹ŸfÙ±¬õZʸ/;Ç#}R–5\,ö£”ÉM‰7™ì1æêÉî,– níP´qH¼¯fˆn9Y+»ïªºî ‘ב`8YØ™»IXÛuisÕÐãk²´\OcQfŸPd£½$+ëÁ#C)B釵3Ø=™] •𱥟iÚ*’1<Dw”bRI·g‚¨X”2HGÒ¼²©É2†‹Mq(wR²õùZk§•¥I`¥ICZL˜àZ ñÍæj&­u-,B‹‚CNÐEÙäY£œX—Ê¿íû0 FDŒ/mQ;kQø Eb!ª[D"´Î²Æàd‰ø¼ª6ü‹¸ Ì‘°EU.ÞG-ßbveoU§LëÓxájÙ-mçžY¦h­rd]ŒÐGYûöâ*nód«‘z1Å™–TÝR³1vþ1¬{¬YÛš·pª”¥ˆÕŸ¼íx³NL@&k%š]z•R¥!Ò?yvaËÝçèg(Ó¢„©^¤¨i7Ø6ÐÁ܇Ç'ª%F¥®K¤løª¥¹Ã¿#܂Ȉ±±’ÛÇ ²Ù…×·¤Vãa%UB9EÄ•t’FEfNé‘Ò'þÉŒ»2…x¼®KbùuÚ^@#ÔÙ¦Ô×ÏPØø«2C,’Dbk¶šµ™$zðÙPóΉ@$UKäa-”…kM±Å{ Á‹y}¤W‘ Lm´½ØÃÊbt`S"‹ÿj²îx¡Œ¸]:’´éR?Ž!‹Yßs EJÕˆ Sˆ‰Lòöã *ˆÑ£æ:mÙ‘u„·a!î(Š&L´ã S`3e@…‚—h%:˜¸(J%ˆÈRW.K yq¸ðF-GpCú)È<é«÷‘Š!!Pµ©ÀÚHø…‰â¼;‹:’¿iƒEÚ‘äÝ‚Ûsrccd<’BÁm™VÂaiÒ:Ö.C/‹‹•5¯Ïñ¾V¸“Ö…9H* ^K»˜;»îÀj@ ±rAg·÷6ß#¦§†~ý©†JÔ§p«5p%^ $'ÅiQväcÙe$Ëuõ_³¾Ù3ÚÓÕ & ×¯Çj¿u=ÁЋ }KÔX .ƒéÖ'Oi¡áo]Ó¿Êc ê‡ƒXdð1d'Äf£ÓØ,6z<îœËjL ¹®œÖ§qÿbëÙ‹íe$|…ŠŠŸ&M—ŒRcžt¤ûñŒÍ4—~cvž¤p·}dƒª«1|3+šòS‘.ªõ‘Ìa™i•G‚8­'jR–*Il´¡9\ïK­™®¥„¸u±B€îF÷"ûŽƒ-Ÿ¡F:zË¥(I.@IÌxvíÛ54×±¯s]'Ó—Ô-ê~£×ÞÌó͵Œ:†Ìº2‡OªOÕMM£õþãTÍ>°Ó˜ÓÕÌí}U€0TÏä †þmr9 ñ“œúuuFuƒÚwQð=hÅêº-®1Ylú‡EV‡3CEà=¼ç:CCBôë- åž]$ùL­É1øÌ…\]ŒM-As1zÆo'…ÆT7õz¯8æÓÈT<+d&F È`âÞY&, ˜ôŽ.îJ¦öÐC(2½W³È”ÀV‘›–ês2Ä­!}áŽ9ä ÆëÿUÇ*°Éø;¿ öÈôô*ú‰Õéb=I'†úÃcIêÔÉ#P¼±´G¸‡´12qêgýÙe#xÄœhGÂ(žGy·)£d}þeÖ®#-V&,cÕe~W(¸h+°mã‰ÝÀèÝYY³&™c/#R+üyßEø;!Œ1ê»j ¤¹FŒÀ,CZ³Õ’ÛK uÓ¹ÙIÚ¯4Ue´HH¥Ž+É–Wi c®)FMÜ’ç¹":Ê¡dY!Yf3Cñ/»YÁ#¿ © ž¿.“K/J™´¤æ×pöØîÑž{0RºË¨†!kƒ¤H$Ÿêr;ý™˜Y™ºM´J#½l+£¬€ðÉüq@§ëàÈÅ ûnäIê{³3ª˜Ê€‰d¡8~Ù•I IÈ €ExÒÝA:cüdØå¹²$†H·d)uìÅI¦šBƒ–6ÃÌÖrÌ%ªQYå ÕùF?Û‘¹/*GØËÈʯlËRCMF·#ΰՑ^«X{hðž{5ÓóK¯Yh¢úêS§vb%Ø÷ àÞ_;AP•«J’‰Ë0÷s¿|kçoªõdî"‘üB*^R=3´ .ÜšIWû1Ã{1}¥”O赸*I*\O° ÂM‡÷nwFPOërNÄ6뿪éU5ÍSªZ½¿‹Cñ ”0¼uÂûÍ%Nä,H¸×‹"¶v‘aŽê\:©»8GáÎ^FL€¬uãG‘$… *–é±2^Ÿ· ¨§˜¹¬·ÕÉf 2ãá—E$¥AÒ@ ‚EÉ3ùݳåótEE…Ô¢AÀ°÷=¯v`ؘkÎìºK2²THkrfqm®UFó$$CÌðŠu°ìDá«ÉUˆ¤’$n¿‘»ò² àNÌÊA’'úüé‘Üí- 7 AÔÅZÆœ?Æù×YfK,0ØI9°E–¼-j¬Ñªµ1ø%ÊA4É(d<†èc2«G)çá•Àº ^S¶ÏÍ!dóð¬”bŽðZäÄ0!ÓéT£EB¢JJ”$i@Øû^üã~¥:Õé—‘ܼIm¬á¶ÇŠJ’vÄŽe¼PÀZHÚhËCFÜÖÌæ¼dÃKaúJgÊ8³§„!ËcJK ,nV™Ó‘šId Åev‘HhàÌØ‡›®ôV5‚y®#)õUþ’I'8 hÙšY Uv[QÑ{-˜ÿ÷øIb—øÙúÙ§fzva¹(-Ae¦’Ú²™¡ ò™£QÄÚxüèPüjЪ٬ҳ7­õRT‘I =‰ ]ù=¢×Œe¦@(%Ž•E·‚NÞûâÜ¿Ò7Ú>ãmÈ|ìTŸ°ÚNM²†ðK ºúâçy60ÎQâï72É_ŠÕŸe›´­:#=ÃÎ>ÁO.D§ªY‚Åÿ¦¨í\ÿ|ÿüÂy€» v|66F]²{0Žãl³ÔŒ­ºÖªšuäAf³Í ­DÓ‰v™YÀîJGvXÜÞ^^XÏ*à¨fûÆQ—û8(y#!ì·w‘ôGцݖD•ÀJî9:íý„·éIð£Û·O놚£%x*T±ŽlJÒ;ˆ««X£Ž8§Š«°üæC,ñÎLé ÂCú“'TrŸ•Ž:’”yxÒËúMûA¤"²“nÌk#Ç-&ùUÜ´rDe˜ÈæjV¨´¤i'´—ƒ7àÙØâ43´iÒ¦•Ìï° öäïØaímÀk:H‹î˜ñ#Ë^y£g\¥‡,Æ¥e±Á\+Ô%jØt¹dv¬ŽFŽ ¹»÷PéËp ö×öà†äxßÕhÈê»Ù|½ÛªÇ>::‚5©ax‰d•–¼Šœ’+%ƒQ‘|ÍiÅ ‡iKõC&²lu5¶]•÷GŸ— žÝ9@‚ÓFÌz¹ÒÑ@ P‚•:à wØ0¶–z‚WUU–±§Ó³ ƒ³Ãí U;˜R§ñ¶ IÅ›yš4hÖ(ÎÆÄ…‚ˆë:ö-M"V°ÍÈ g¦FºzdQ~r8¬3)@€W*ªÜ*›¬"ªÅJÒ/r#¼')Ô\žB•ì}Š8øVÍ[tç—”¿Ž7•b¿ÔÌ€DíFÌ1˜å2È,Ó–JܬA£€Ö¶´å&¡Z©¼¦Ý‰]îM3ÍööhRoñ²÷íETš'ùaäå†G3øJ”ô1uR[P#IHݘ1ÓÝžNðün\æB“¨ $I 'G}€fnAň*Ŏ帪ƒàîA`T•ƒrâNûQ±$ò#zÿÔ¾¡vB㧠DZÙfI÷#b7€¢dgyê-uǺ“Ô^©å q¹Ç㸺ÆÁ–ÜÀ1gؼ@ ’H¥þÊ-Å>]é¢+1‘aìܹìÉY…P¢Á qÅ(vNÑ–IŸ³”Ù™™Ô鼋¹½ÈZ2%Ý?'˜ËÕ*$”³¤‰±!æîúb9ÌÝ ÔBi¨’H`}®ê/ôÇ¢$û±ªTå/0¢È¤}š2„l{v!ú]"P@iÒMAˆP»ƒr¿'¹›ƒL‹Ï·! b3³!µÅä¡(–•d €ú{[ZÓøù1ñV‚B ›rK#Ïß2;ÒIGîš’a]ŒÙhËY£¨…¤îžªd$VA†©º¼j±-©_¬JÒFÍÛ Ü°f®ê$ŒÖ2wTÂ~Ÿ›©^¥D ­[›ÀpL íö¡œË IJ”]!˜ôb ç±âç ¬‰«.ÂH•Þ…@ŠP·9Û´ É`:ƒÞ¢B›Ñï:–øÇÔ5>áx´ä–Yy<Æ3°^'¾Ç°ó¤ 7nã¯v˜|tQ‹H­$‡?˜“3‘›!4PU•êWŽH¢¶ï\•˜¢Í‡NU«É#GWR’‹ÙŠ%Ši‰æ!KG–®­ÆFP«;´U)UU­'Ð¥†;ÈL3 ZÛo&®Ö"Ã_ŠDHPgfZ=Ég¤ÒBåå§.Ñ\áÒåÞ8·ñ‚B\‘ÅÔ'æ´%àvÝCÞÝ\P­Üp'~RÄ^ê +nÍ*û¨ä%`ÊÍ#m¼üVWÌDµ€c¿¬ –T,Gå FˆU„…jÁ ÇϽ„l¦A0ÒÕÉJÁŠ A1rÚ‡›GÉ8¬€‚àŸ¥»nIçòÁ£FÔ·kEOŽ+sC•޼¶©÷kþvtF’©”%¨Þ%Ú;K(ÑØ”#§­]/¢u#ŽÉœ$xÏòPÉZYg…Xí45$‡Géx<2À?¤jÒWû˜Æ]>”àÇÖzèg™¬Ía«§vÄ î±²LÐÒI˜ÇbNLËvFH«˜JÎ{­Õ½Þ2aaP¬¡³;Ø%#äèÕþ0Ô_õZ²Ìª+þ‘0°µ è]qIÑQD—)ÔS!åÎïa0{™§_&QDÔ*) K‹q­Ä4â#Ô¸,>¤œŠUc1”›i I;H“:ÔÓ´Ï ²V=‹ Ü"™L=>RÈcc#·uùD™ØÇÊ¢2!gXÊGuöìWX¬SüìËêI¨²ógòfì‘4FHc†8Öêº 4| ™„FºL$Ÿâ["Oå¥y±»§ö¯¹*¯¡SŠ¿ ‰ö„²®îˆ§‘ª¡Çðn;6¹DB¡j¦…4(R€Ì  ·~EæUkC”“‰>ï`6Üc½•ø½.{2’hØ $JÁG+q|xø¿&Rﱨx…‚Ó‘€±8…±.#ªì[Ž, ,`R¯ÿ3ªïâöAæ3ê¼æ1ŒÒÒžBAŒÉD¡¡}ŒSY%¶60X\–ìÆ^zɱV7á0Š›ù>=vŽ3ÅTÓ„…TÛtGUr„>ÃÀþà ªÅ*[ƒV«óAô—ö&ðãŒ鲺¥ËèC¶âßÛµÙò®ê72‚ †C³€AÜñŒäyR§p6'—­ˆÝÞ6h–P‹¿ÙþŽîY r}ƒn@vÞQƒ2îÉ;ð*¬…‚•ÛÃ…_!¶?¥Ùwßëû>”–†ä#ôvÄÙ7ßÀüïl5³©åûr߉çõ0,H^<$±0HTdnxmÞ0Ån“<Á¾¢±8„b‰ A5  µX¯dìA•bÛb¡8–ns~ ŽßÑÁê襋 80ª_gÂÆ¼ÿ,÷x²p Í&¢‘Š…XÕëX‡œÉÉž$:úh*Í¢ È`\xíõlaê/øe¸ËÜ9‰>‰YâÓX±#KÞXŸ~Uþ:²rb¥•»€Ž%X?2ó¯q¹#ÔžX !Ÿˆjìpœ™˜%Uò£Ef'™* ž‰XΘÅ"7z3erîû#À’@ê9ƒÎ=ø£êT WX0pUAP±© î€$¾Û1¸ÛŠ…P7zsZ©-ó¨—Éþó-Äâü±þM>èÎx¹°–ìv»cT‰vP$%¸°•¶bIñ¼pÆÊç³AÝWÂþ¶õˆ×›ÆRI Ö-Š–p.ãmÈ !¸Ûp­’²oÜÌY˯0|ñDò¿ø`Ü8ùfæKÛ˜ßW…“e>TeVMŸü‡By3†bµn ìCØÈ–‰î?°ÅäAàË·ÛK<$9ܲïs¹nÔÜeZÄ–; Ä(’.eDtPÈhÍÞ²Â)‡o±UX½Ãÿ¨Ê4‰$ÖîOZŠ?ùö\Ê9<™;ÜâàÕäV–̬©Ä‹Ûïsþ‘Ü$ÙøÕëMÇ/@bR÷!þ£Õ•cZz!$‰òKöú§ìI6#»Ž#JO¼9$ºÄå²$Ç©ì Æßç¶ô×M|Ð2^6õ¤Îÿž>¬d’ÌÛ/e ¬FÄ©Ûr§’§÷) GTYv*NÛ¢’ê6Àâ I~ÁTÆü¹zò|3lÅWüßÃmÈ© .8€¼¶ô²»ìG<°bÅ‹oà â¼¹y?ÚOï`FáI!¢íÚö6¶ nß}¾¸CÈäòe ~ŽþE$òß,6Q¹ØŽþµÝÇ&² þæ0?²»3ÿÁßô¸;—Ø ¸¯.e¼—b­ú]Ê‚íĶ—2bY÷ãlr}[Qέ"ú'ÒµöoówT°È¼Ø0c d@In@È †ºÊx¤€,:NãPýæfukÈÌê±–•K,Èkº–276Y+,ñ¼Ná»¶¨³µ¬É#+ºFÀ5äˆÆ@¼)ÚuX…IƒÿLC-IY“ŠÔ­[iZ_³c–â°,æ 'S{ËöÛXæáËkG¦îa±8<ÔØcÑþ·è]G–§©s—tÖœIi½_ÓL&{^esÚƒ ‡Óº©3Ù+ujbå–´ü7¯û·öáCJaõ•Ž£‰0ùü†{Z}Ô\ޝÇd4½(ïjøuGNñZ:ßQtL:>…š—õ­q¥0Tt øËº†|UL®2K™ú¡$å§¥áœ0±Ø7afЮ†§sUR:@Â\`ÏÏ3VEkým—yÄ<빋—x×EHÖr¨l‚͇ºeÅC°7up°»öÚd•Ý^BåëpØþæŽLzÎc…ÝæÆÆyZAó¹(}ú…•Âç°ZC=‚Èãs¸lÔ-•Âæ0Ö)å¨å±ù 4mãr8L…æÇd)äiη*YïOŽÈcäy¡i U>…""‰ R¥ /ÜHá13*¶”¯²ÁiÀµ$ÿÑH½‚ÉçÕ™¢š¢›9#Isf±%¤lw>šËµSL¬©´Èé¸-Ú=ñÊøòÊ70ÊÒ‰[¶Ñì¼&x¤Râx‡&5Gùî’%ü|m‹®>TJc÷ÄŸõñ¤Ù`xÕÚ%‰þô@R¦S£gÃ7z´ Ì–FG'N–ˆ›#–ížãühcŽ9"hf…#›iTBdàœU[˜ð14 \(ËY3¿šÁ"K#äéá²µ$™§Œ¯É”wc‡#ÂWCÜ 2@qf:ÝJU—I°–$¹Ü ˜ÀcµÁ‚ØÓC§¢¥$­u‚€0Sw‚K¼Üµ„⛘fÐLŒÂbÏ*º•P¼¬»©‰»q®Á2SGËvIñp¼ž°ÕåUí´<Ù¥0¹&”´ p­ ÂÍ;9;c‡qrÔöÉNËz»r?õeDÀ•yÉ%‡ˆÇ4…·Tä“Aæ9[ë×vH$Œ¬Á€V1‘‰cí*ª£Ä†:ÅLŒ!É؆ °Ñ$2?õõïÒGŒ¹ìÊç•™¢š¥œ@.ìXiîÎ(ÌeþÕL)Ø 90Ä6ã¶8Æ´Œ ˆl0y;…’BåÈ,ñÜ’0¯Íe$VbÞŒ*P•ä“àœ#D‘‚®°È" Í'j°•yELÈÏŽ¸¿.ܽ¢±,ÜÏÞ6”v%‘Œ,Zd–‹‘AíÚ*xÍ…œx’VÛ׾΢%iå„ìΡ$™XÌDqëÈÑÈý–Ysñ¥hs«ñFúDqqô=ı™ç~1¬@‚CÀ’×û[|G6;6 ÒÉ3,\Dü­K;ò%£y‰Eˆ)’ow Œ°w^­žÇjHù’ÜJJòÈü*ÉÄÃ$‘¦æ:LJ!m…·®ä|ÒEUŽA#¼ÊP¢Ä‰$¤Å ˆË¹„°Ðuþ*×p…íÙíO«ô—Oô–KYkÝE…ÒzSNЂÖwQê[ÕñxŒ=i 5Ò[—æxà„Ifh뀿iæ‘D<êÙþ­ø=ËJœ’T@3‡0nÆÍi6äòg5ñzJX2CË´4À±ÅGJóLÿ-qÏ?O#ލpV³% =úPêØð³Ú†)õ2\首 ãX'nAxÝ¢Þ'¢¨^¢Ëö–$|ý' ²8· Ø»º„®Dãc»9Q!$jæÊm63·8•Ø–NäSJm]dŠuv”ÆL${°µe+)’muò¸õay¾up±X­ÖN’uvž£“¥ÝDÒzÜéÊøÓ¨ Óùº÷-b ÏÒµsN]ÊW‰ÿ‘¥ŒÔ4jÚ½§²óB˜Üõ ÓÝÃÚ»^'•A© NaF#ˆ«‡‰â®Û»<¡«¬ÒMYfQ$Õ¢eÉÁ’ÚÜLqï2±L‡VVw_òÂP’“ p@1Ü7ͳ¹?ÂiõK$ÄÆ÷ Lq¸öÜʰñB#gþ®D÷-Lö˜©I1ÖÉH‹$§þU#ÒEI‹‚Dˆì⥯2)Tu9V²Š1Å%‰ 2H†:ñ¡FãSúcT0W– "n8¾ãó1ŽÖIÀQÈ€®¯QÓ¤‚ï"-}Ùý±L3˜$¿×Ÿ>øâêc‘JKpá4Ë$•ç¯Gøu†kâŸæZf‹3AZK8šÄ4K›¸&Ö¿ßé„ÀRûnÌ$[÷㊱)a'lÒR†)^8 €î¤²ˆž:í6ëA;7"²ŽŠ¬ý(,¡wí>ü]9«Ë)!¤jíYd/ÁHÞÆ=X¥)Þ»³”se¹È8ˆd^%ì2¯fIEU/ ÙÚ)­EÒO0 JJäüQò—š©<#oͶh$WHø+÷wyLÛHÉ"ò\ck6¦sO%(©'/Kãqá®ÑbL8iÝ ¾‚d— C[å12O€/ˆùUäde<$Y ìò"³fÓ$V ˆ‘cÈÏ^6~_âxådZ£°+Ç+€X¸‰ùªïÁ1™Z-bk5Ç”~òì;=˜‘w%%Šª¬i"‘£YMµ”­#^eU’Ìj"Ó7ãáp³H%ÃÀ2c¢vÄb¼±ÂéË”œãfľLZ¸žËÌaEÞ®æ\Ãäƒ ÌZó‡"`–$9!á…§b;ÈcˆBÇ2E‰¤Cò^Ò”gÍv(]ØF/³3UÈÇÑsNÄœ\tãÍe•;¥ãtxöu<™·0´ÕÝäĬ[íü“³wK¿]ÔýQDòÍ"ÙÞDXÍÍ"YæjÏej‘|¢Døññ*Ã.E½!dˆ,q"*ÆV‰˜Dœ¹ðÖ†NÐ’´¡ñ‹(k™9Hs&1a˜T$°ý†Oû¶ûï/†€Ä’a€>¯ì-ŽZÀ_ƒ™LbFŠ&ß¼’ºp–Dt¬;!"Í—ãüÕbE"²¨õ•Vb8Á,¤É \6ÂRœë¤•uyÖ62b 4pCr¾fG°±·®§v±ØŽ=Û”œ¤ükmË¿*¨a Ä5›H4Ô»|7aãÒÞ hD1ˆ‚¿ õKD!‰ ЉÎGI$!ç¤;YVá˜QZ®òjAg!¢Xƒy08 ìðà«ÞÄ·ô³rÌbî_Û7n;8tXÀå2«)a¼ât 5ZEتÞ+%Ú¶ËR.):’¦eÈ’³¹ó ¤*&àw sVCo®Ï6.'áãÌȲ2õÕ²)¹ÝyO{¹<‚~ʤ’ šÚÂ7–òƒBÕSÚ­½¸Á<Ðû–$þEé£DEÌSG Äò¥46­Ì¿ ü‚³ìBµ‚H‰–í\q8‰ÁåˆüP>Æþ<Ь;¬ûnK™^u’GŽD <¦wÙlŠ7„JN¢Ç(§Œ b'–g[ºì±! H€¢8æÔr« ,{8OøJâŒvòŽÓ©_ZâA.áUeub¬üÕ\MÌYG {Dêb±:$•ô½ÀSÔ²b“ F¼Á o(íÅ!Þd•#f x{8¯ä¿I#…ÂzJ!† yô»lÐGê[+Q³X’KqnýÛ˜PäцwB,³’ikB!Y’),ð3ÕF›x'¸PXÇÎ1ßÓÊ#‘ œZPè«*„#ĽÖàD– šÒ•åÕ­bãW‚›¼yábE«¬+™"’O’$ŽË4 =ie’AX”Xìqì4ëT ÒF:@Ñ)&AU PF„,m$Qƒ]"Zább‘*ÃJ;4ÏFtîÏÛ3 )æäZ¸ý0e%ƒÂûÜ9i7œ"T%î îÍ{=­æÁðò1ucƒ$|¤æx4»²ð‘ᓃ!cë-òãùZÛ×§tXåÜüQìÇŒ0²$ I=Ç©k"… Ú®òEYÄÕõÝÒ é¥jÓiîoNÑämÆY»v a(Ã#¾ˆÇ„ôë«]·Ž ×Á™Q“”±—ÆãæÄe.`²ñiÜí61÷laóIŽÆçcÀe €HqùJؼÎ/:ê¥Å£–Åß’µú³N·VF^²©”YD9XÄžÍÀ rÀ¥…J´Ò°¸RRdHv7'ˆ´ÅQB\rG‹y”ÊY¨âhÄÄ4É2<¢( èÍ=à –…²õ)Ã6ÏB¥ ¶“G#|W”«»hlÂcÀò“ ®aµþMÞ9"(Iz›Ü/¶m ¥4Ž¿Ö½oè‹ÑCÈ®7§úÃSõS§:sHk¼¶O´¦†ŒÕŒõl.§½œ&JØ$³Ü„Ê®&rб¤aÉa±ÖméÈòÚ‚9¦Óôg|:^ÎSÆÕ\¤òâ!fÊÖÆQQ’J >8(¡1¥ ¼*¬Âµ^ɇb»òxNAWìÌ*·Yª®ŸÁ'BŠu0pÄ’ðÞvúúrª%>+¢–ñ÷ŒSèÕQ€§Ùš# ï4›²•6~AuŠI¦@cþ]âa‘‹zÇÞòp¬ ÄT*k vÙÿ£‰•»5™÷ʪRÆ>ËI_4Z”ïóÕkGÔêtã¯0Ê1Ò¼1ѯ´»Ã¼K¥ÅY<]–Â(¤ßÕDÏ7D¶ÁaYÂãe ž«ÂøÊ=¹«Ühä³Uâx{]‹s*<±È,I½„y0½]KJ)(ÓQ*$k08%@C3ñp tòJPÖB‚LpK4@ÚµMy¤0íGÚi¤½†ƒuWY¦d­xW0߸"Žj–UcŨ®êáÆO´k( K4n|ãv(¶*©ã+¼[9ÇdÈ@¦ÜÓE8ñb5–„Z/3̼~ìÌ#Œ4¦pXÈ#«CnXãWŸŠÊ ¿,ddª/ð•¢{1 ƒ¥ç H«38†(ûp˜ÕO"+ªD ðŸ‘ÇÄ«$´e ™Vte»¬û¡VææPIhŒ²ˆ™¤•%†"¨Ò X^úGÐÃò\¦3“eO_®ÙlvåË­Ø¥yI‡Èx÷’I“~òpíÊ«ßÔ ËnP€ñ7-Zµ7ô• ™Ý„[S:ÔU !&6Tp/˳€²oè#kò„1Ú¾\– p4Ȫcɺ—jjâÆ!q˜8µÆZòl%š6nK')ØJŽÏÎ'…äÇ铪S75…°…Ýðí¼ÅVNï ÄÀG±â« È[ïÛb‡m¹9€†Ê°Æd)">Ó™‚÷ jÿm›—ä亅pB¨Tõe­I›zö<80ÞÏ‚ŠéÚA?@/µƒE…ñUâ†Vhä‰ ŒH@&`ä2GzOÃ4Åå)¢bïN4ÎUÖ"©ÛYÚ´µÕk£H°Ê]Y…å/ñ+Ò㯣6I¾ÌŠqés‰0Ù2vL‡Y%Y¾ý¥åÜEhã«cüKRkÂþ# ¹‰¯ÕJ«Çb–û1PÀþÈß}÷]ˆ!@ }N·VUªOÁ±ßvk¸·g>q*Y‹L,T>¦$ipÎ$ìÓ¾ÿJ|ÑM ćã3·áÔu›*¢‘IAK¸(O “ ¦ÇŽ;L´ñLL›ƒ ®ÓXrU’( Ö$MØâ dÌU"ä‹"„ô\×e†µÓŒ–"ÆräUR7\­ÖGO8åY ™Ýk*Ëf+žÅOF9 /lìªìÀìßfbNìX³î?¸+ìµÀ]Án©ðéÑR¨… ‰*`«K1 ^Mí¶#O!ñJÓñX °-$ =ÈîÂoŠ„¨ÈÄ'bÊwbû”bƱÏ0)Fd¯“‘$GD±€H&dBÐ0X—ò!`(€/hJ¿Lmb¤ Ú´»ÔlùÙ”r³š=?›+ÚˆN@È€€Ìb«#ï8)ÛÆÒL¥K<XÑM”Eú_$Réûr6áÿ“™åC4ÒÈ4Qȼï˜ÖTe’+Uòp²d_“X-é“Õ5QU`–¢RRU$ 6ÚÏ¿.ÂþÕ“DTrAQ:C8Òäö™`L‘ìCJ%QÜc)1˜¨]­2¤QïøÞ ,PBÂ|lMl…tl[b«"LkÜG²]\™¢ŒWÙD²O_™­ÉÏ;I#µ‘Qj¼µ¢·RÇœ¨ 2ÈÝ$= vRÎ#}¸7• ï¿ RfEϯ#^>2 #Vµg„’¤,Æ ­*ÅÜxJÞŽÂEp‘Ni½O)ÔU™«ðŠt5{6ðâdGœC3‘ü:õÈgx¹#gƒ÷U^éÑ»íîTL' ÊÅ×q_(ê#ˆo1ó½j‰IÆ8ÛdPÉÎ ¡I!YT!HyFñV»R†~ík’AuÚ ÝÀêXá^ CI+…îE MÝx@®°ÉfûMMT‚& ÚÀñ#Ò°©± …åRÛ’DA#¹Q!Y”2®ZRÖ²PÆô[„©ÒZ‚µN€U0 ÀGÒ/=ñ… ÔXK¨j 4l?x ø›*MÝ[1eœ»O³*ˆÖ埵Îj¤E”ä#UNÕŒUDUå馱]ß‚òá*°O¼ÏŠÅÁ$(ì_}ªÃÜ–\¬D­§„õnþ9v#†Ñ—%IWd †–cÈøã°?Úªž<•£Z²¤ ¦ueP³bm!’`É »ƒ/aZciXcò#íèR:®¥„|Ä€~9¼—–,üà‰ÈiJÕñ %%m¦; pþ{5±[û¡Û‹ol÷ ™e„¯ –vQðY8q­zhU0¶ã™8C4<]! ™Ä6B´,H'âÈÎñDóR©Þ–µÅ’ü+HÇÕ€éµT:~¡)aå‚TBÊï^˜hæÙL<‚ˆä nËÃ$Rº­‰'c=Jè€HIà{`ˆR=Á;…äxÿÛö>Hð<€‚º·Ã¨ªb’•¡_îðĸÞ8°©tï‰M5>)N°äayލÉ!mž(÷f²Oá&F,»—Ä 'ĽT¬Ú«#@£ªJdf A±®²ò+'&®¡˜ìÍŽÞO—ucz™¦öUÈZþ†¦º½ºìd¯Ž‘Ô@襇uŒÍ;Jya(²,‘´K‰•b¸G&ÃùaSÏŒ¢HÙ-¥“#ØpÑÎKRYBVGYK£d,ä‰w%”–£SãRBÀÒT¦‚A‡ŒŸïµ©ÔRAÔéŠI³’ ßÈ1F„…*ÿŒ($ ïH›„®Ò¸Th#“uùI‡”v ÜéIzHÂ}•dgI#WîÇ#¨“•mÒYÈÎ..O“‹ŽD4]µ%Æ®#Ünı~êãšNàBÈ]ˆË:×`Õž©ʵ¥ßÓI”A¤òB°I*ÇÏdòxëÉ"aȺµØ-‘)ñ‰ aibög~ÍwÜyœ@9g¿òý=÷3‡FèË$Fvb¶ˆ¤ÓE!ð¼Ý¹­› :.CÍ[µñè­yŠ–H¸*îŸtTFé‚GåñtîAËæº’mWœpµ"ÀO£×O/öÚÈLq¤VïÉ;ýBÀ#e瘙š:BŠVxb/wîWVCšG>6G…bš³½˜ûÐ,O÷áAɧ£/Ê0»–•wE?¶åãÐz½LÓ¨´|°’R¥ `Î\·3æø'K§š”ÐMP5€ ’¹½þÛâ¦Ë1W$ÛÿÈðƒ”uجÏ2 ]FÇùLxù+ØÄnSLÙW‹gŒéÎÈͺ€ò¦Å¤4E,˜æ "KK <êEe}Hñ†í"S¦9E&Ò CÛx$vä±Cb#+­"*‰Îa‘2­èV8‚AÀ‚²ÆÎ]c³Ag”Ê ÒÓÕiC<’±š ï ¦"ÇIJJ_‹EJIšà%‹IòXÆ0VAEEÓ$($™;¸ó`ø’äå„a´Ó1ˆ;U»¸†ÌµÕK[„$¬î¼kL(¼"ǸãB91±ØG „ÇYWþY¤%Ÿ—ć“L¦1,`0^瀊å¢ÃrÄSÖ’bã'~ÑÌÄýÔ$,Û–vð8’Ä),Ž5UU '"Ì9ì|ù2/ÕvÿõiïS°•¦ŠE *þÙ{Œîå@n’7)ÈñmÙŽäª(>{†öŽ< Pû[q÷N1µ$ª›G *ä•íø°]ÞE^+ÅËý¶* ØñÊâOT`9wc²«ªpS!þÝ€$º»~ý9ÛdDwÉ¿p+ÆÄ}ˆfÈ‘'Á$ ½0ð²n¢V*$©¶Ì| •bSÜ'û " ÷~ËàOZ¹žw¿ïl>̬¸ª¼…UC©Qÿäï"ì¥TìåY“rUöfeQ'TŠˆpO¾êâøª4¼Õ’©âñ”çj%* ÕãvçÆ9ædޱpZŠ^ÜF` ÆÀ+"«c&Å®íö |)]¶>…=O@µ0Ñ•u@ÖÃJY]+ªí0I;p˜T¤ìÆ¡^ÜŽf@¶nK?¨»K0ú@Ú~ØÇ*V]Bò,;¹³ñß뉆u:s³¹`ŒW 1e ¹~üB8eQå{è»*geÜÊ•„œh”1sn âB’nY;ýJ︉舣:[ö ‰#vðXËú0‡ )”H‰ÜI¥á·‡¡;€ lÌdùW¼†Ù—}À*sæÏóê€KŠŠsÅÅíúžâú )¢€ùFßçöÃýèWŠíûƒ¬vCå ?׃6çr͹É$U!!È#‚•ëý¥›c³¢°“;ðåÈwô©!eTŠsGü‡mˆv8)aı`?î$“é&2!vú#³,@rfvòF ²ìI`yçjB’ùî_é÷ŪR¤{˶*æ¢ & Ïv±7²OÈG3ÀÊ.JlÌÍ2É<•a}«äŸ¶²C)CÙrö0¥=˨è"tœõ ,âHëøoo:pÆÃE SnÍ4¶,¨ï<›¾¬¦"=G›fm~b³0»¼3•„¼Á^²ÙŠãG!b*Ôñ•ž:–Ö|ƒ4Ë^}ŠÓÜçú’ìªuƒÛóˆÂMq–öï§$nM¾îDÓ1rÌÜÈ õcÿK‘`~jqíL8¹çû6ôÓüìÛ»±$³ÿR}¡Œ1ôüb{Š ŽäìC Ûê»—#í‹/ uïMº›ÕœæšÐúGXuGPYÖYIÑÝ;Íê[¹Þ§éét¦šËÜÃÔ¹¨\bñØëuíHúeíkU/]:×oOÇÑL7L´U:9‚Äàz¥íÏ#®5®[¤=½t¢¡nžu*my¤ðø\5/‰>¬¸­1¨±Ìî+*ñÝ|«ØÄÑúžÿv™x/$©`~»` V×¹»0åf¾œñ(ªÈŒÎV1@¼¡ÇÁb*‰Vhyn"äóuØî”@S†sÞÛ~>ªþLj Q4Õ©S9mNçì奅ñ5gVBØ $„‚6`àO#¾—¯ Et«ÊìqFx¤DˆëÉrŠ»†®w-^wUºÎ²C0XÙ@¦_CuY{¨§{«~Úu®•éOúÿ¬uÏEÇOõgGð}Åd™ÔúNq=W£ˆÍUêßT:§¯¡ÕÞúá2UãÑG¬tÕfÐ×uö“Éu/9lôž¥ƒOß³zÕk6KÖt‚‘Fi$ò+–t=ÕV3LUÍÆE’¤M$B&"¯V1åö8»nÛD-šÜL‡ã†ÝÌDψÃCfJ“¯Õ:~c3š E5© &A äð|Æîš£C.Rµ$(ŸQ;øÙá®~ø¥¸NŸõ£NôÏ]u§Pt Ô½u;Ü]H×½>:§ÿ4ÏHðÖrºs§ø.‘êû9L&Ž‹¬'éÛáñú!k?¤tíÜ’ä²7ó¸ÜœâëUNˆô#Ü÷·N¤ã}ÌÁÐ=wÕL=ê¾ìôF‘èm­qÓ\‡¹-?ë~o۶КÇÜGVõV­ƒLë]6¤öýªô÷Pµ:k®ªë‰Õý7¥ŽËkÊZ$éÚ^GWñ³Ë‹²bQÝ{Ñv¸nU$føãŒ8íÈZ!$.MzÌ]UÅ3EÇòc ´Ð™™‡È„”VZѰ!g+b§)Vhxö€Óѳ.ÿ£¤ ,QÚO/î÷Ø"zÐ\Ǩ̼À`‹àÓn–æzí{ÛE3×ñ¹l×Hz-Ó.–çòØŽê`òY~Ÿh/¤¯ÞÅÃmbÈÏŽ¿ÄÉkÝH¬W®`šè£eôöÊÅuÖEir¡ÝÙã=ææ©·w‡‹Nb³?3 Ü‘5–°¥© £:®’U’ÓLd0°íYXD2Ãi0‚äq !N´ÔÌš‰P[€í)°=£nÿ\úLŒ™ Ç.îÉG9Cx|æì‰'°{›Iã–8á’HÚä RAT K+QK‘žúaèÇ]ó+Ç §ªÏòƒ'äøL½Â“ŽÜ´™ÞZOtŒr4~§¥¥íÝ»r¬–VZ¦Ñry«:Ê’Nv ‚±Éw„O4íé YbôC=TÄ»\}æ*ž=§å1¦ƒo;Ég¾¥KE Ú¿aZÛ*šèªwÿ0^ì®ÏÊ™¢HäX¦ ‹Éë…fºÜÓ+Hut6žk}YCRÅDÔ†X–£IÝ’U ÈTW(Ì¥ ŠW;Å(ºl¢U%fô>YPÀ«cX¨“½»@¬;rW•{“ rº~P×*óŠÄ±ú#Ó©®–T"¢4¯Q$y ÷ö3ˆËœ)©YJI HHk—„ƒù¶IP±DJˆcãã+Ãfˆ+'ƒÿŽ9BÕØÕÉ<ŒÙY?S1 Yˆüµ“#¹-zÑJ@½)Ežƒò|ijÎÁžpî¨^0 ‡P%‰Pì{äÇÉVÀÙ¬ -&WŨgM´›¹eWGfUÓ„’¥ˆÔ¤E´ghÀ†¥‹«$.Ôm l¶ëµâܘ;¼‰}Ø›ãeøA´;$ý÷ç)É"÷ªÇ2‡„ rvÙ‘êFî’°GF³ŒI õÄy’ëgšú÷¾ÎŒ\뿴άè}?¡°ÝBêº=¬t¿~¦ ®PÖ±[ÅËG%§îê,b`™ Ë T¥Åò£åÅ›R‘¢ºðqú‡xBîeˆ¤£óÅXÛŠ%v¹Ã,WH¬ËèíU0© Pš™IQ»c.¯*YRÝíœÓÛ£»§š»XÊÖÌŠI¦…(AD4;LØÁ Û‡ŒéU@ÔRÔ%$j?0Äîxh÷õ§Cë«õÇÛþŽ¿¥ïÏÐ=kSõߨڅst©áµSúm’Ò”ºÒìÎ<Še³8ÕÔÚ«'×Xæ|jâqš·¡Z3æ^o˜(ÝùUÔ_g¾äz™Óm-íçÒ¼‡NòÝë½î«ÞëŠêM"šGªøŽªjN¤äô.’Ó‡ž›YËo¯õ5Î*÷UVil !•ÅehÉ&ªŠ)ª„©æ,ž÷öõ¢¡AJ‚‚A%‹3³à±ìÃêøKƒÉŠ˜AXûH¦0ˆ„HÌʱÚ‡±"ƒ Rëü rVdzó$rà!Œ>Ò‚ÛJÌί$eY™,´³ÈÆÇˆ¾ê ¶¤áoUˆôžãÉÚàŒ²«:FJ«ÈZA'<ˉ¨ÈAö“3Y¸Yļ\i +%nM˳Â8f“ŠÄÑO"•Q¡Hn0‚ñR0à²D°"/vÕÛf½ŒÌ@¶ÿ½ñž J²]¸Ç˜ÈÈ8ư€!³a“í #«fýrµ  lJUŠ2*”™eu\¤R›vyVPÒER`Ö&œË§Š­W2HØeX‡s²QãsÙh¥HL\ùF7É+MO{«ƒ¤³Úã¯ñto¦zg©tÎÁæ:A×Cî‹ù­Uª®L½=Ñ1¨±º“-Óý:ÕYlzŠäVò´ñ—Št}ÌtRƾÄtšßQ1z™˜Žš®Å ûb`Îgtüz¬èËDl ôå:wN÷EŽœO«©õ/1¥¾¶ÃiÓ³®CÕiÔ¾Îz¤Ø£`ú}Ö>™à ë™êž×òknêmbÕô÷PóYŒÞ˜³ÓõÄu?K®Sé¶Ïçi¼ÙXó˜¡>J¬Ú“M|Œ61«éÝöCªó­IÓ §Vtõ¾ë^¨æúèñttSÖêú§Riܾ'Qât¿SSVÿ´q:eõ£Îfp9 Ý<¿ª4–*Z?‡QÙÄבf¤×ê@BH4‘%V2ósXâï…’šÄ* ¹8#wÁ£ï3Ûî_Pët:ƒ§[Jtó¦ù^¤ëM}‘—%ƒÂc(aµ•M$xÚÚƒ Œ]iŒ·5©,iía¢äÔ:7RÏ]ðu­å3&2$v=Üûo¥£1ºú~¦Ö«ƒËåòZcXi^¥C®¦ÔøJT¯å4›t¬èÙ:ɈÖxÜ.S¨¬`rº¬`Ò—ãÌ)ÑW< í«Yøc¨ºµÑé.tÛEi +Ò§ú#¨èbÅÝÕOStÍþ¶â³IÍsˆ±c[©´~Žm_"’Ï–¬ôçhÞ9—K½®ë ;Öü?¸>¡uHê. ÍÕÌçT5æ;Eh|֚Ѡ~âºQ…Ó:*†¢Öš·'ƒ—C.¡Õš9—Ô×õÈ4™±¢•¢ŠýH Z”à”°÷ÔÞ™iv.HÄ“TÂd$Ë‚LúwY›alJ×Þ'F5²³Ó½™Xç"ÁtƒSÙŽ)hôç1¥ºËûzFÖ˜ÖU«æq™\›Ô¥Sý¾*ãñØ¥ÈÖX³¶òQäèã§: ¯}ꎥÔú;§}CÃjÍI¤£·ÌãèWÍ%fÆÓÊ&žËfôþc%ˆ¥„Ö˜LfuâÓÚ¯Rè\¶¤Á×ÍOW%Ünvjõ¤ªšGØæ§Ñ˜í„‹«šbÞ ÑÎô¯QÍÿ3Tµ>c!Ñ<–°¹cNe¢Öÿ…ÔôuTµ©a²¸ŒÎ@X®O•ØŠQž:ÒΩô¹«àµ?P:gšéæ™Òù)¡ôþ‡éuÝ©B^Ö±jªšƒ\k ¾©Ôjþ³[ššVŽ•Ò°d- åüEì¼u&¯¯+W¨&¦š”“¡K’d‚_bå„<ÉÅUèå>òê¤8–Ô\CƒÍ˜3{bȰ@ À€UBȰÊYÚ2°Âñ0üÒšêëB¤¬”š¢‡ËwrQWhð… ³$«õJbp†ôÔ¬º^Hl"¼/rÜS :<!‰£‘vhž¤°»GÎ +l»î=S<7·~¡éþ{‰éDô–”énƒÖžìneš¯ƒ¥xœß@³è¸ê'§ÙÍ;¢õœZ&n¢êÌn©ÒymAKJE¨qx¼¾»Ìèü¾’×Ðémc‡´š3Zàð8¦¥}mü¯“,­ðꤑ2I.ü{/a$Žaýò×É ?!S¶NÓêv™Ü‘IXF™jÂXÜÆ[æ„+r=Öq/là ⼒Ù?q½G§Ö¯˜¨´¡iõ¨‚e$$;Æ "1ÓäsI¥BšMD’’¤¨–B|‡6÷l|XÆô³ªX.–ôƒ¥yßn×ús­o{{êGµW[pz[UõïÒÞ†ëMSžÅåºaÓî–a†œÓ4ú¹«qíníK¨ñÙ 9¥tüZ>L¥>¤V–=/¥þ€i¿oº{Fûö•«t‚´ø½Ð]ÒÜ×Qs˜Šu¢éLv…\NŠÀk|¸§ÈËfÅÈ+¸ÅÇZ¶:¶Aßâc±ðÅ^¼V¹:Ÿ¦‚¾YnC…$UäU{ªZ_OÁ,½Çdu•aU@SS4»9süŽìéöjp–ݘ$Ì7°½µ¤å~|ŽÊ>Ò;GG®—tT`AI!A˜Ü›vïg<’¦Ô€XÁ>— >Á÷ñê1ªçíçñ¨"-„#—ŽvŒÆ’Mw¥‹·3S™–Zí*]£|²CYD©pe'´T$3Îè î’G <¡^à;åƒ|ªò§F±Fõ#ÖYÊ9ü³[­ZAPÓJñµõ”7ãæ³E5hä’d‚e+Ü¡[¶÷R٠̱GdÉVÛwŒ9“¹&ò"E,ÅÑåÝ@¯5Öy_ú6¯ÿIZÊì;<¢Tœ½=`¡A›È>ÐÜîÍÌfYdKŸíç/¥ÍÇK¬r´LÃ#póÙ ekî­âµåËÜ€¹yK ZIÜTGäeû À~JÊÜ€$9PÀñúð «) ¼¼:/YáôþYd;Û³05ª ®°È‘š¢'šHäZ™LÞ^äÍ`´s”Œ£Kõ;Ml?V5 N$UYx÷{’µ‚WàÌ 9)‘VØ—‘@o\æg)˜Vb¡M5¥ÜÅÌ›³o~ðv…zI¤„ª¢uˆ&Y¿¾8yáuG»ÆÉÞÄ3³¥úæ±ì¤Ÿmþ4Çð!_Çyú,üK(ylŒ¬?@l[ôHb@BÉ#q¸ãê¿\ÔøÛ:Ö¶¢„Ý4«ü5wâÑ\á Ef…!;±‚WòøÔc6@TŒÏ¢+u'M1ÞOäL§aüHÚV‘T¸„W°=±%{–H¤EØ ]¯Ìek„ÐH¦¥h¢d—pDàÀ{g¡VŸÄ¬êJuU‰ÀH;Áý±ÒןöŽp˜â¥HÕ{‘Iadcr·" ¾Å%š$‡ˆ²TÇ ­Ë* Â>À¹f‘„˜ÊJ_‹ìó¼lÂKÛH™(F€À˪5Þ 'Éã鋯-Õ¯fž7Ž •çêN\Ê?¦RHëG*‡žh {Ä„— ò¤:Ƽ ’¿Hã ´ŒÌT0“ùT ÊÏs¸ôG¦S]*U>"JIP)"D‘y8ÅÔ…UOÃPPÓ±aƒpþ͆חö¨ Ì+C²'¼fcEIWß&ã…zÙã$EXvpdK˜ WHÅø‰í"¼ÿõ•¥~@¬B$-¶$Vz-½<|fŸlŽ0ã°Y@OÇ(åb#:öÙã’ehbU›…”TI£XÌ!' ¨‘Í›”mG^Ý^/”•nWñufÞ..eV$SZŠ/¬oÜd®"~\D¹‰WÃ) Q*AâX± È™ž1†št©ˆRášKFß«ˆ{ åU2y© ûSÅXÜ€ í1åÄþŸ\|éC„Ë…X·8ëüù£p`)L`£›6ãuA̺àžIÿŠ86-+Ò»»,ÅQŠÇà·ÆV1”ÚÛmJHt•‘eCÿWÖ–K©˜ËxëõêV» “ÀÐFöcQ+Ä#ž.äl²E&5‹|Ö¥Wš)¤iP˜Ï5O#šMDI@;–9盇¶:g)d¤%'H.Ú{<‡%çnøèô¦r0וTòãH‚ í$bº˜Ìaí]ø‰¾§éeÄÀEuWe^êÄÈã`8–¾»—bÀ*À(pOçaê½hícŒÓ´¬Ó»^Ìï-¿—ÊSŒñ†’Fˆ²ºÛ/ö`„ËtT±x‰’õ_ t/´¥;+Ú34Òi"ä\&ËXwb”»W°áª÷ ¶;’ÌÔÌ-H¤¢’N’ðw{÷cˆås4E U@Èüàî-ækeŒkM:U‘†’ެ®_|¥§eV'{‘F š¨‰#µxÌF1³l\‚y6f ü¨¨A#}¹AþîC5ãRêº}AŠÉQ¯+T¡~AÌѵ¸£ÈMfÓòÖ†a&õMx¢±5®íK¡*¸å;=NÂqØSÈXHµ j¼[iRUi ŒÔ-½‘»vÔoåNÞ–c)™U ²E%jBP‡¨ß‹<ËlŽb’WXëKÃ$À ›‘Æ&ZŒÊpYÅTbÃ|¢Y$â¿lGÍB,›Ñ¦D†),…‘4W¦o€˜Ê,·üÆ~Ó4C‰nÚ LVyÉ5¢Ó÷>L“üqZÏv¤V†n>_¨xkøÜ–=jÚ/~ŽB´"†‰ËÕÝðÆï,±HÒÄé Ù ½÷‡”JÄq4†³Æà±wëÙ­,Ó›Qȼò•‚D²ÒLÉåQš¼Ñ(¬+¤q<¦çpœŽgðµð•¨ÔA ,àL‹¼â±˜¢sIX¨Ÿ“I.HoNÃsËX—.Ø;ýä[‰Oßa ú _fßÁÔ…;€À¶æºõ"'ÿrÆAv‘(×™—mIvµz&ÞQß*ÓÆoÍ‚ä]Ì4“Â'ø›ƒñnð•Yûh#EdÝf1´Šý©,p®9"H$!Šˆw õ~Z¶ É=úÕ䎩 ¨<«×iŒª{r:Ȉ¶å£ÈcŲœ®%id_Ó²µéW ¨‚””¨9›é`fÌÌ9Ä3Õ©TF”¬(¨¦ÇÁá¶™ñˆ{I4¢AÜ$2Kj„þ¨MZ3.ÿ^)­Ã()|¤_]í*ö¦Ã9%ÉÈ×)Æ`ò?cŒ”†9¥i>J²ˆ«Ê+>441õ¦AâJªÍ+*Â] ‘³n]–u;É)¦ÊGù#âûúßÃ]‹“¡u¢-{ç’yü•‚UÕŒHѪ·–œýįR&’¥ÇXn°*£Q)’•'I/,«›4·00.˜ÑUV MŒÞþÝÃ02í‹>K2ìÁ¸ËÌþ2T€Á‰UC²»€ à„G¹ð¦7ªdíé\Ü‘¿ù\ûyH€n³³omÿÌ-ôö»€8㩸ÔÇ'xV^=§ˆ˜*Sa^œ°5 CGÖXo$¿>&cÑdЪyjHZt¨$ þ•{9w<ø \ê¯P‚  »8€áÎÞÞq©³± •B˜œÆc ]ÔãÙ»µ ÜÅ”د!d‘¡nä°èé+Xe^öæ»Ã1ŠHþ’°#×’É®íòå‘ [•O*¼î"¯§ÇB³°RäD¼Y‹±GÜE"Yp^PË⽉v|Šmª=cŠ¥¿¨u ÑP£ª[š˜„20jð¬‚,-©™:úÐîÆ ¢ÆHh/õp1F’»ÞÄ´#óðmƒV’[2èkQ%dÉ1–üqãç’#·GÍR ³$h¼d¨m¨±6Лo‰ÞTi=œ¥œÅK”ÆÍ-X¡{Tši«áäîY$?êûJ± µ$iˆí롤µ¶ ‰4.$í7ÊšF–µhš5&Ó4ëÝYÊr3Y<;’´Í=hd¨ÁÖKÿ0¤Ú,‰ðt0Å˹±hã_̨Ï2hÊÂ.#ˆ8)럨ŒÚ*fŒ¹Z*¨Ê„Ãå6‚àÃàÍ5PZ()U´.š@RAa¨7ÌcÜïlA:“³ê'’>'\#K_º¤,–¾D=´<­Ä@^ö9šØQ:pZ/ßí,u’8ù¯>Û²£"òUhçÿ¦óvE½,OÊäÓD6£r%:Ã3O;™\•ÑÓzà%ÞtIgÈ[—*õÌ’ö)^…–o˜ïRtJö{‚?ËwHx#7#!  °-W@¡cܲɶ¹î Æ]*F^šT H@Ô6‚†=ßl Ìuª¨9d¿#¿"ïùÌõ2@G‰ÓÜJC”²­ÝŽ›Ô‰‘­Wí'¦–XÄÁLE%ŽÂX l"ÖÉc°RÎpxw‘Š»bq…ÃL†V§*VÑ› ì{†»öÒMÖ"V¿å#Œâ4àU`â › »Øþùáçù$4gAÂHI¿r(ÈyG«§ÃŠ(ȉüN9TUH÷­ŽÚ•,©ÄŠ&¤aUþàì©Moÿݪ²€öÉún[§%J«TÙé¡ÁA›3Ûll§w›‹¤LáZH›˜Ü »ˆFìëÿpuMŽûy—£@Á$ ȱ⠂x„eÇà·ØˆÛ`@>Ÿ<Ê0àv »ûb@ïɰˆxïçM¯qŠöÕJ¦äÈØyÝvûîÃnJ¨UGë¹ô.@ó‚Å$3‹þÿ\k<’²JŃï0,n‰äÀ .[`¢0cB#Œ½b=¤ì—Q÷ Í„r:•ØlC’Îò6ÊOè ÀÞÞ8ø©=C\ìA¶Åâï´áAg#`y#û7ױƌ«)T/NÈQ„q¡~J¬¿eNê¿e'À$ÝOfc§ãU„0eh%v1ªÖYˆý•®T!g6eZFãÑ‘Ÿ`Üœ°UêW¨Ü‚¼¹€Ç}üÛ“ú"N©Êñ¦ ÔHßÔ\UC"ª— \Æßv ²ÄA5mHL±”8méê'7L€?¨'—açÄ}±“>2ËY âö³s͙伤z¸4î-I˜‘ œ7⪟êÊÑq.Ší1WŒmay}L]£V>ƒìª *rF,JÌJäÏþw(ÑÝáôÝU‡{¸A’?±r—µ#%ÙöD•’5ËêQ$Š"2*©;ý†ýà§ê1¸'ÿ¢T쬡O!ë>h©UêµµŸósÆ-Ë¥F7ÿhíÎÛpÛxÃ%Ü쥢,8”ú&Ãe#ÿÅ_Ù“*© ‚„þ‘Ü(W}ËŽÉä29roÐ É$ñe]öäJzÛ…I^'ÁØ'—ŸþÀ†Ep Õ†À°S²6_ˆÔpßpëËdò(oÐ-úä1  }T Mê zfv ÝÝß¹ÅÅ*¹;b®ç„‡QæCHñäïªeŠe´®ìRIÆF1q–ÆD1k™0q¯þƹßõÝ»†N­ûznK9´¬ÇÛ®œ;³A y°8¬0FvÂj——ùÜÃ+#d'2 ^ <ݱ*ÆO;ªFXO˱!ZwA¨­ê¼{×Ýú‘ÿŽ]Wöë#ÆÁ`ÇÛ¦ŸWY•B,s³ÒF„Åž*ÇÇÑn¬)“  ÃH M¸žï8Ó\WÍ.!ÏþBâíö÷ÇÓí¶a¸R ’K2—;‰ÝHú}ˆPqm·;oë;l lxì‰dÜpÇû˜îH$¨òd€A ²ÈÀ%¿aU¹qÛ`¤[n§ÌWë¶ÞO—eÛ`<† ~­ý§`Aòw+ûõÏ(½ï³_—òÌ?2Tkr¦Ãm£‡ií…pA¸ä%ó³1;ùú‚~ÇÆþ oÿձʲ†o*7TcÜY–åáxì6ˆ;x-¿WoMìÀóbv 6cÁY”Éþм@ý€¾wú€<rc¹ÜXìUÂ6s·|’ñ îw; $@•obû·Ûê$‡¿g¾>6hWÿYŸê''„}dèj• #e½¢ôÇb6$I'fDï‡U©$jݶù•YRÎ Ò"G"GÌ ÝDnÜc .Â~Ë9Ú+.~[LDí,+OŒIïOýE£!ÈYèT̼¶Fý¥ô.8Ä’€%•À†.Õhþ•RÜÌRÛV’¸¤f1‘CÈܤnd°ã,›(*Óí¹&Æ;1j/1¿®ï¤(Ÿ@»–Q& ÃîaÝù íÉu5/ñ•Ä‚R,"’ï`×8mVÔDf`v,ȼÃB¡åïD?f%^í˜Êˆ1ÅÊI,îIuÉØlè C3¯0Z.,à €³n?øÄdw»l¥K‘ÞÅØ±%hò¸ë–ƒ"¥JYZ,wc"H–8ëØg•ëÆ&z<Ô­uiÿ—ઃÓñ´=¾`Á*¥ÚNç(Š;‚Ò@ÊÏΜ’,8f’@ü@+2“µ5R§)аH<Üwƒi¾3iRXI"áMo§†<[ñò;œ ’±;“Ú+ [¸4J¥˜¤áÕpÒ*¤Q¿#é¾2³'rvvÜpD‚Fˆ3ÏÊ*0ÝìQËnvC²ƒ¹_§øÜnK5j †>;pGDÊ#´¨ñü„’Ȫ#°ÈÛEòŽjìòͼÊ¢»cz_%.-Æ”‹1^ƒfæÄ¾KV¾*#Û“3.:[Kz,tM¼räÞ§‡Ž[ oC³]^–V¡§RŸÊÔèbâÒ/î÷£òù •ÑñC9}wvaÍŽ*©ï$Ž+w £€“i"Nüö1|˜“÷i‰†ÌG²›Î¾2”…ç îªs”!b’éŒd“*U®ôÕ·š½‰$HªÄ‹;?¦W«ÙzM£/V«UæºÔóx‹PÓ§Yû­=©+ß’:µ `^Iì4pC仨zèTÓZåH2•±Ø+”,E5ª¹*³W³ž ©ÛžÌlÉJz¶4ÑÎð±R¨äïêýA—RKR“fRIÚ@žK¿¶-WI®áª-"oaû™Цø²FÛ“BQå²[‘iã`Và]¾Ì$ljŠ@²ÖPGn8•‘Gmd„øîªíÛr™‰yŠÉãÑ«©<>&¾&LV>½ f–X¤øq/r‡Z!Q˜”Kзeå§ ÑÌ]¥OB.À1…m”"}T¹rK wR£Ë±w-ò"°6@°r¹±™¢*„²I)EÌ3;3¼±ßó—¨i–%…˜–.À;ç£+XñÉ1a"•unÂG·(€‚Ãù‹H"‹ J¥~o‰*ŠÞ°&˜Æü^SõóB¤¢Èí$hdÿX5‡9¢a¹[¦ØÜV^öR H/Ç^ªqKs+1`²ž{ö œ¥€¶«ÇÎÔ³äÊcÿhéec$xpc÷àR«VI¬˜@…e˜Cˆ@‘ÉŠ˜ó5çíÈÀƬ} ;é g ’DÉ ¦s/NIJ-Æ£åü˜–ô@Væ=kËfÓ˜¤š‰Fv ;‚°P ¾àc=z5(Ô(+$†f›³÷òå¶Ç)—‰Vå% üC1þóbMåhÄ›˜m?ä®ÿÑ…Þ”“Z]£Ž@ÜxŠ¡b¼ˆxÂŽ<É=%bùÿÈë1å à£v(ÆóG"¨Wgb8=•M–D_饇y£ÞoY•XÊ…T*…I}Ø;3,<ÙYjR?åºA¥>ÈÃÖ‘Pib%›K;½ÙŒ]»Æ*!ÔàU{°rgf}ïŽ`Y.e¦s“šÏ´¬Œé¼¬Î¯´²vL1\A:Ȇ—匂¦’Òñ#eî$B8Ódc;D6;‡hÇþлtú\ þú³3£ËHY¤ I´E@™˜«øÞ*èá[ÿà³s®€¬©êÍâô´ðÃÏRE–ý£0"xÕ¥Py‚ë!ܹw>vùÁ›ê(ÊhÕOV¢© À$ï{‹XùßF[)S3¬¡zH‚û¸`yrÒn{KTä±;'&™ fâ#hy/&Œ»XHùAu#-rHÚÆ*üUÆ—uÔ…bÝË–`ÄÂw*ˆ²ËÜ®@rü¬c¹vëÌH4ŒÌ‹mFÒÅ”®£:Ì’+„<{ÉiûyÚ3ÚE ±%Y”M¾‰ÓMçøZ{Ì ¼oÍ£‰ÉŽ?îÙ˜³·&¼œ¸± ñ?ÐT 2 ÊK o±ÛÜŒmþ]¦¡‘÷ßoÌŸb¤íiœ¿r~Cò„’A+Êx\9;,†=ÒyüŒœãôŠ6ÊKh„# ÜD»Ùjâ%®í°wÇw¢':¹}‹Eµ±ŸDéˆëHçI2+")`¿SțʡûDÅxª½VnÁaýÊIŠ@Nèðƒ)œ(Ý¢’AÆåH¿>H*ä"⯭ÙN¢ŒÞ½ÀÐC»à3XrG¾3æ2u2ì¶ Ap ¸!ìZ¸7Ç%]ƒ¨IhK8‘Û‚¸yÊã`¯~gŠXm¥«10B½¯åçö 繡¯°.£›ƒ –ôÀ3Q E##¹ ’.娻’<œí×BÁãwYˆŽY†ÑI/dö7Û±-M‚ocV)tN–—€8JÊý¸×qÝT ¤MAË— ÛlIähÜð ¦úùÄe´!õ‡!Ù´ßw$閭YußJÒ¸6Ûvv ¿íñ\M‰‹_‰â‚°’EY"gVV+³ÊõùÆö›—ó"@«:•õæ±3¼!V5T õp­¼j}„a¶ø¨ÜEB{WI¬}½¦!¯~Âb(‰*×·„mq¼Þ½K}Å£¦ÝœáBÕ¹[º¬ŸÜ—3(3‚b‘&RÓ"Ù¹²XËUW >(=8òÎÜÊ:*$q¬{*¡o¶ñRYV8ÇþÐoý~;DŸÙGAéœ$ùÏÃÉNȈ>ëY¤Y¥ŒžäŸ$q³¯Ç†Ï$ªQ6,CNŸi9œãÌ8+ŽiAòJËÀ*îäÄ€ä¾íçЪýK+Ez  É{3†ÁdkTHXP!I\ }¡È‰<óZÚy”¸‘ãXû.eWg)Û~1Ù•Šƒ*Ä¥”^uã`L©>5V1+ªÝì«ÞrѺƒ¤r•‰ŽjÔ-0µN_ãíÞ/ò‡VOþiQe¢\”¸‰V^ òTùöfqg~q“ ­³ ¢cËrÊh.W²qºE^hØ%™€†»Oò¹ðv¯+0ªíÉáæcRÊŽ­•ÕéI–qésnKnEí7#=;4áÎî!„4ne¹Þq\LÒY\6åQÕÕNêÒG/öÄÄ’«xï%¡½ »0>šy¥ð–4ÙG±±++5Xá׌)È7ÅBxa-wZù1´+ês¯ñ¸ì6^¥z5û5ä¤Ó…gïï*8¸ŒÖâ^æÁ?÷ph=A Š6Yâ“w?f0w«"lŽƒu‘äŒïñv›«–äe’-‰UQVšj¥0·!Øm»~öl«ñP ¨ Y˜‘9n÷û$Ï%i{ˆÊï#ÈŽ¦EåÊgâHhùÌ[åʼóí5øéiÚBÌ$WŠ6Œ¤o³*@ñ¦ñK2G³5mÚ¡yÛä"€VÐZgOf±vmÞ‚y+‚8dù/Ê+÷c˜ò÷%±ÇëU–±]“q4“§Ú7‰h±“¿—"8îK±ˆ°nÏÔ‚ ‚]¦?ùrìüŠ‚§^§—£UtÔ•‚•Ò†.ïg¹ÆÄd+T¦•‚€ càŠÞ~‡˜eØ(,^ì]¹Š˜ìmÜvOÅɺ¬ÙZlH‰q“,h}Ð ¼WeÞ¼ªÑD Ãxñn–¤+öôIÔØ,]=a†ÅU«e)Û­‹yÖ&Gyä|„µlH&mŒ³ÁÄ*9¶ü‘¢t;ıc‘ÚÌ.8ÇÌ¢¨lInÛ¼.,è]/€ÎâÍü d˜dgNô‰´‘l®ŽˆôZ$<$·©‘éþ“GvL;< Á%™{O¬‰ÊFsÄÄBðy~ ¹p¤zÉS©P¥Qt–JKÂñ"@1ÛèTr5ꄬieBCXé ’Ýf'ÔFÄ ‚c•ì¼è\Èw™ÂòxŸuþE‰&°Zlqßb<ãüÒ†rª‘<1¿qXUá$‚?¼°Z®­óXNõcÓ§zhóHðöuìI' PÕYž[‚–܇hÝ@x8Ä|"úÌ=:ÓDã'a$•’{]LÍÉ Æ8–Cι’‘³xú¬õlºL¥lÝ€c`ÎÒb^âKb_Ãë’þ—°Þ=ÞZN+i@ÌòÚ­",¦T°–]ÆU™ä§|Æ%2ÄB¡_ˉ:2®Ãêˆ@ÝQÓrȯLøñ«–áSm±“¨–Ѷõ+×8ºxŒü´h¨ŽªÕ¯gµ»»÷…gŽÄÖ@;³˜1eÚ õ¤Šå57„ÜbŠÜ|Ùªaz³Âv+Õœ±…@sT4•ø­´®>éhÛŠcæì»Ê¦µ3"Ä˱®›Ÿ#”›QEË”våyQÉ%@ʽR:‹B’´© oH ýË=¬öln§‘¯U XÒ5Ëq!‰þÄö­óA4h$.Ò't…'RymÈ®`^_X², ïMM½4é¹éÉ@FBÁ9Hþ"hƒ*¬BX€øqþ6Ë.FëˆeQè•Ó˜¨uÆ;°³Pµ&0þµe³ Í ©„¥Z}@4é'Òö.`âšè]”©@|¼À» ÆñŒXÉ>B€¢)#“a'vRÜ–Ã"£K¼pÝ$=I•ñ(ŠT>°™•mW Y+ÆU ì` ´”ã љͩØeŽ*ÊýÒîà3G(IU¼ä/ÒYc‹_Xÿ¥Z;Ú¨ ¨Ù½tq‘×›#B"†zâÝUx`…e1 Nj ®$RƼ¯ùoBÇäíÃay:¢d =îÌEíÙ¡Þ1JRJ‚T@ÚÏ$_œi1Á!Ã*Ç ]ìÈx ™»\–üÍÿÄ+ñ\^ÖM+D¹óåaD"V^=Ŭ"Œ9€†¥ý-TUL”‹bQhNŒÒ|¤ §¸í€»«Ø~ì{’Äò€ìb'ûüÞ†[Ié˜1™9cÂccdÇß ˆßŒnÑ5ÈF樳D“JíÏfŒÈ"ÓÕi©A? EØ êÒ~kØï‚¦Õ Ô.’Ñ‘Ëb·Dc;ñpËÅOyIˆn%WÂ5'”Y6ÚJ²MŒ^}J™dàUÇ7‰hÁa`Î#/ûF0¯JtL³:ÇO0˜L®6ó_ÆÁeâ½À=˜ÜJ¬Ñ!gåÛwö!Þ¯}Fix˜Èé±#‡!•sö‘9 $Ì6I9(ØJ¯R¥Jª‘¡D¥žA~àà\;¿ ‡§’©Q (ÒA-Ûq; ÆÜß ©<›œŒ¦f‘ŠÉ#1fG’Ï 4…?ëQ¯…vŠZ)ÉËPdâ«`h¬Lñ_ÇǘÙäOî£f0Rñ;%][ˆÄÑÕrjuëÓhjkÆ,€elWFe_%7<#˜ª„ Çú”Ø™&ŽÒ|#ÂR ™—¶ÁÝxÈyWïá¥o³y ØÓ+ªS@¦µ!Gâ!Á—³þåÆ2u Xqª™ %®}$ àƒý±XVZæ á’Eo·u¤(…yˆÃ‹D "‰dYBÎà S=*è"Q1w³“a âî²W@­†Ù¤ÇFCT˜|¢Â& ŸszONWÃå­UÃSªãnÏ üvZ4K)@J—Œ*””£Éî¥Û˜ôóNa²Øy§ÈcjØ–;±©’Dud‹âÆÑDó-f&ŽM ™ÿ,µLkcym!Ôi*¶…¤ \êgäLocŠÓ“«ñE0Ä”ƒºA¸»íç˜åHž2óHpÅÕ›¹á,„+4â»7vrD7`Ú¡¬¢ƒŽÿ`ˆ¤xêª rÊœ‹ÅR8¾›2ð ô92†0d¶ ¥ì³èm8XÃP1£ˆÐ¬q7r [}‡e†ðõÃ*“ãÐo_b(PÍô*Ô§[øèä–8–GDimØ’ÌòI/c¸¦Ì0îòCñf„êyn£K1Q4‚Rƒ’M¡7€]Úgf$â9Œz ø…NÄ3&$;{µ›|C&xIüR¾èO \¯jMÃñ‘Ô¾ëò6-FnQFª›L¤‘quüD*„âѰUÜ‚èÈ»"(Èö(ÂÜæãOuTzPŠS)n&CȪ—PfyÂldf…íÇ € ZZÛ7Ú}Ï®öŸ©ÌÆ2¼ðÄjËzŸÉ®²h'xÖÜcÊ8ǤÿÜZå-)ŽEjÔ•¨‚R‡7m¬ƒwcŒ .¥D‡eª d—r wŒp ˜3%yeTa?vPÊœ%Q,€,–LJß"b^,¥3Ú¦D±1o$ñ*dḊ>(ò âeüHŽû?m˜H̆Dö.7lVdhm1¹Q„¥'Ü„ú•~ŽânuÊ€!Ü…Ø9õÆÔz;OÖÁf-è–+c­Ë ‘«ÈcŸŽæa±.ýÃæH×ûˆñ±‰êô ‚E:޵g,äyñ¸& ‡ðúéA[¤„(°:˜=Ã’…ï¾ÅU˜s°c·iXPËØyvWºBM<{œU´SE8LÇÒdh¡b!&fs¼*¹v±hc÷‰älÓV?)xd– 4.ÂÛà ±ñ\²™Iÿ<¥–X჋ò Ú‘c†vXv ¦D‘LÑ1wÑZ]ø¤xzkÛ*8ñg.èë'>ã70Á·ã ó"Œ{`(zV’*) %*b@hL'ïå£FBª’•8€$‡ffpÿç¥gŒ“¸êÊ6r²ïÆB¥"q1Ýd°S‘ŽëŒ5 Ì[IZUP³o´!µÄ’ÆH–²Ç’8ÚÃ9© ƒ5)ãh¯,p²¯©VºÃSÆge­J¬Të=H­È…a/;Hfš='Yì Ùjgy!Þ%%gnBuÝK ã‘&çÚ2£! lY;7‘ÆÏ¯Ú™hNä)TMjTêI a$Xv³Ø5üãÒP²‚Jˆv¹ ÿ#ó|<²ª˜’G“’ ‰iáo§>@’5Ü æ«W°ÄKG˜$úô’‚ãiHp(#W(J°Ž0›ò™š6fZá¿æÐ¬ìÈC1Åù<‡‘à"C,sÄ^gp~mÿRH†éZVÞ%Ã6òX’¢º6Ϥ’4‡p肱Œ«ÄHüµk´¡iM¥¸¨±•¯#V錾ðÏòÞI¼ìüø­$•1`Ó-ÚÌwüðúɰ •â{ŠûêÍÛak`¼YP Y<"A.%Ã7Z¼‘#áÁ Äâ2¬àËÅFWŠ'“îõÉÖŸk,DEÝ¥0¹L·wöÛPŸ’Œ¬P(‰ã’0Üäž$¥LÈÌÒ=¥•ж¡`I\3'l¿p8ÝÝOr9²îŒHô.·U£F¢©”Ô*J´’Á¡œ¾æùèÈÕ¨„Ô H €sh!À3ÇÃßÒÌÐWåy—‚weîÓH(ØØ#‚¸’ÌPKf40Y®H¢­n#»+3™dn"•“–äDÎ{§bUŠý©wµH—ÈuØKõƉÏAK@C\P¤ýšÜâEá-˜¡UW;Œ¦ÐØVíQ“‹Ï˾=E{kÈ»£"*W¶…y”(â2l.Ä™æþ¦¾Ð6þˆRªšÔÓPËaáœ~ð~ÙV…SR ”»»â±<âM•hÓ§9IÉ YcÍäX£HMšêÒ–@A… e›ïNp chÃz°ø7å„Å'8öLm$nãºý4OÉ ñî Ë!$¹V`Cy5Ç*ŽØ]8‘o³¾Y |¢°í#M]A]Çf4ûNÔþ:ï.ò’=X]?l!"UxÓ… ‘"~:PF†"7åöËyíñßrô©ä ÿüêÆYǨ_¼žå·¾ tõŸ‰RgB}}±!NêΧ†à ™ UPH ãb6Ü·“éÀê6Ü… ãß’IܱßéÛòH,HìƒÄ ¿GÏžCü ÿñé{„íÇg;¨Ûn xØþÇvßüÛÆëèÙûïô¿ïþKjrɽ˵œ;^mÇøCqýìŘ/ÝWu¶ÿôvþÓ¸+àù;zÃH" •²ûKøRÄW·Øï¸6°vXf`X ¸ßõäøPI?øbAòØï¾è #bw U™@ú¸wßpNã`´nè&Ûÿ|82G7ÙÞ{ããv…c÷¯þ¡J›ª º{œ¤vgö©ÑZ\cD?…xÐ^0‚$É]tWÕ¾—{s©Ôúš¢¹-g'Jlà:16:—?Q³lêZž„é­n¥ÒÔ4bÁÐÓ™]Y¨èÒêCc-Ù¿f­§ÎVdÅÑžt¾½Åë='Xôã%ÓäÓ;é– Lé˜ë)5ÞTäuÎ7 CøÃvƥ˙Í=rµÕ»3j ¶nDý—2ÛÜ•ÚHTn$*ÿ!œB«*òŽ c´Z8™žH?‘Ø= .('âØ2ÅÈå"V@$ˆ¬ ž$Äj€•Ù¹MKÄ•\üæâ²6RȪ‘J²t”¦ú¥ˆ–s~Ü_­šø ‚”…¨‚­!˜°€s 1%Ÿ—ÿÜ6V0¾2C n®9F.CÛ‘Ca…¥ññåeœ™[hvõòé½»uoß<Ý?ÂêŒvˆÔš/ÝN±Ëêƽ:·3Ö~¿ëˆ:5ª:o¨:W¢aÊx-í·O;(j ‰«›ÊôçùL'dj˜þ›tûPbñ9k62V¡­ ˆ™Rb%{òK(i%3:'~cVcÝ"ÆÀšR´»GÚÙ# ‡åpTæ!1$§2G‹yòC)Üsýc%Z¾h)4Ö¤²d(ˆ—29‡»陊Trå+RRä†pö ùM„¶Îøù˜èîžucÝwQt^§Ó=%Ô]oÅôïGÑÑøA…ÒZ3¢,Õ™ì~—ê/U°XŸ—Ît—^ê±/Qz—ó©T¸˜ÜÎ/OØVÅS `]$Ò™Mmìó[g[1¬nàô§ú‚èyÓYÓ¼® Ó!ëF:ç Õldúu¡çòx~„Ô·>¦ÓçD%ƒ§fÖz[Tgb·c~z)öØõ#Lw¾¡Ž9‡>29¶dRŽÍ(F*°©ã3»"EýŒà’=<½CÓâOçRYÈŽËßk„\»E”™³@KÕFö"% »)=/0Tâ•H!D¹ ‰Ò}¢f Á/ÇRºÐîÃ3ðî½ÎóˆŸU‚|Lag*¿&éPmø¤*\ÅÿRÂ6áZMÖÇê¹Ø&»Ž#·"ÈR%]Ü4¥‚nÌXžXàw°0Ø‹ð¡2øôMê§ÃfécbÅd¢¹$Rµ– ƒ³Ùž ‹eL‘¤Ž’C]¢¾Ñ†ñFœ4g°ßnÄ¿×$›ùY†Ñà‘r|Â]ºjÛÕ€þn&µ,ÈVsnyäȧpÀI`X…ŽèKmuB?ÓÌö~üù<¢Àf¯QËj.\å–T•÷™‚;ˆ§³³G”U†Ì¾Ã‰JÃ]i'-Ç9qÈ›— êŠÊ%“o£:¢˜Kq2 „l|/¡ù±]ºÊN]u‚Ò”ê $%ô9IfpLHi$4cVWáUË!*¬šd(™>¯éÚåüâ!ÕØÇàK3í߯fã#Ž4\¨ì «’Fv? ,"d?w_A€®ˆ¸ý—HØ1`È#™Çå’H¤ha¾T¬ÐG>4èV$þ¤j&^OÃÉÒ·,RI<襃%i••{–ïp‘¹E…°c 2û ’ÔMÒ¨PÂTdzÂ9Iüfd–"ý®U r¨o‰Ž†N6$n:j*',‘Q$SºY† bí&ü[3µk’…¤€pA†óßrûáÉHxÊrrB/ØEÆ0ŒC"¤Kæ4æwЏ&Zîl›Há3‘À2ª–YX¹r,†U#n1ýò<qõÁÜÜŒ%šÀ£«/Ô1dRZA$ ¤€÷cØ«†5C‚}z;1´ÄÄÑ$cŠFÑ·rÆ# –oË1l3ö1ò7À½âe>ˆ®9—ƒ.ÐÎ Æþ'w»´ ˆÞ=±²ˆ­2(,̲D…9 œ3xÕ“Â3´RqŠ&&;õmY&Ä zâ¨fœÔÏf]dµ¦ugPt¦oLèÆÔ´W§™ypyCf…ÌZŧ³-J¼½?l1ñø™±·çˆÉ YUØŽ¬SW'Æ',‘yC¹üg¿Ùù÷Ôf›º,xòG«E_XiuŽ=)®T[–X!V’"Küjòu;í¹p}sÝr…Z馚iZ¡@”‚Xún[g‚y Ü·Jª)ÔZ‰ 4B”2£½„ƒúÎ(O»n‘tó­ÝuèG-`..«êN7Rkn¨jºY¾¢b®UößÑ)pÿî]-‡¹¦u&‹Ïkþ£õ/¦Ý?³5ˆáÎŽŸê½}˜ÃÎù =NZ«Vêæ‹÷eïÊ^ŸêΧêü¦Wý3´¯PúuˆÏç.ÝÄhíyoª^êq’ázm ,m\~ 㱸\MÌ•ϦI1Ë{#r¬´¡Oª‰­´§–]A‰Ä\9[‰‰IÁìñ}ÀJQÊ…,gm÷oN¦²Ò…”¦¡Åw7)Ü”FÛ¤ Éx˸@1$;?pôìÃÍ*€’=ER»‡p÷<³N í2~t5¾a%÷€Y»9¾>Uÿ§ ùªgµNŸƒ3¥5òdzÒ_ŸÖ]:ËëÓˆÓºžÍZõ“AëÜF¼Ée I´læóé¨p¶êÙ¿B¦~ G…ÇYƒ‰lp±;E$qDä–ö%{ D^gãV죽ñ>,î’©6XêÝ[I[1…‚7[¶ßãÑ£ÌÀü»/^&Ž9¬ÊáLÓ2JG'fØ7ªÎÊv íÉY&âÎÓ´1÷Cˆ¹q³~on0æ@W¿Mšò°B¡V€¬Š‰XFI!Û`Hï2âclêµÓUT‚ nI …7Èvi1 ·‘u‰¾l È ™é³ „°ž0¨ÕÔïÁXsøŸI1³žëîŒ}[8ØöþË*ýT2Èë$ª~¥ÛšnŒH$MÕ‹’9oê¦4ŠnU ÏQÕ‡0Ä3¼’&ìÂTSÙ™U¥ÌƾcÛˆ³ê½88ÎâÔ€ùPF/ÈâÎÝ¥GÒ„?TÊV­™¨¤¥L’Ðá'Ò‡àËÜøÇOÌ"•¥JI$Ü;‚‘>8Ÿ8øA¤æÑú³¬Ý>ö§Ôí=K¤>Õt†¾÷8º÷5ÓŽ´õ^ÿHú±×½5Ón‹ê]GÖ-aœ¥¯ ¯‚éþ²ê­—I.Z†u¯M°y:d ¯knÊtSUõ[Xh¯ôŽê¹ê/Q³9]}ƒÅG­if6ÅEÔ Wz šÎP×BÅÁF”ó꼤¾RÕK)GW#~܃¶LkWé\º{£·4µ= gKtÆÎ‡Ç=9qú6m%¤¦Ñ”,Ci§ÇÉKKO‹| Ia·!±ZjØØ¤ŠÄ²ØŠE»´ª\¶“šx,\¿‚µ=fõí½)ìQu/ZÍš–eËReõ^J…%ì3V‘¸3£OM¯L()Æ’J®àž!™Œ8›ê™Ê C‚à‡$C#Þãr.Øõ>)Û;d »!èÄK¶ÝÄ$Ü—˜%`©&ÐØä§ÐÖjò²îÁcUî=æEdr»H¤Èˆ²·æ›a47}¨L]IHµÌÍYiIVÊü´2“ƒH9Ea!mâFRáÀ¢[±þvhøïêÒy+HÊ?/&0¼½ÈsBZ9mö#NÁhÿ¦©ä¡Bý¾IÆVŽ Ì ÜÇ܉¹·nS4A¬µc#q؃´~x4tÂpwƒIù_$A`¡[—Ŭ$I¡ b¬Ñ°dxâØ)ÎåýR™Rü¦Hp¨ŠJÆKƒ»¯þNû±Ø0â7ô4é®SG r;wjT/}LqM4b/*,ušº³óø²”)XØ_“ ^S#6Ä?÷ ¯1™¡01ÙiàÿH„Ù]G)Áó¶à€Î¦¡ÌÖ B” €v6ríÃio83—Z´»1€ lH;}¦CàQ¬£1kí7È£FðaÓy wÜIš»ØiL,®eæ³ ›"ǽù-7ª=ûDnYÔ—fä%GxÓ—ðÃ}Ç-™O–ýz êÛ‘XÖÚ~ÍK,G8å’xåvHÖL‹Xâ,$cY!‘'–«nÖÑëÍ*cäIJã;†á¿ò¸óÌòAò£È 3sV‚wØóo H;¾Ûo,Ê*|«!E©é"H‰ÚЈÄh-?¹Ö–+k³Â_{ÃÇÓíTôî E1|€“Š´îËð¥ dJ4ÁX.Ñmû;ìÛŠ³ÁÌ’IÞTÝ™€–I †iesù‹1àöß/\ ЮñîlÞ¤Îb&Ó¹Ô­~”’6"¬Ùƒ»!¹°T»¨{–YkÂ@ÛwÛ~[m[Ë ²"³<“U-ÚRBÒ’¼0ÉZ­ÓÈÁ¦i¦.üHt””¦«¥I./cŸ{7m±‹©)%HeK©’\Á bÁýÌñƒ‡M!•´ûEÝ [²;ªQÀîªðý¿ §!"A'&ƒˆŠc¿T— «zÓ 47» F…³Õ­k¨ýäOÓÜ.²Ÿo¨šƒ§zgRt+ÛÖ/¯Ú˜J±>gÓŠ9lå½%¥hU‹—ÕgNa³v«RËfrÉv:w™ÅSÂ=yîÒªí•D6_âHòJ9ñwÿæ(2wö5:§@šE–Òq,òÒ¹€®÷¬5»’Özp5Ë¢´4Íû/WoâR©MîÎÍeëV§UåøÕ+Ç>¥•«[1Qh O©@($˜ Í=Ãî[#˜¤Œµ T’t'ú€!‚]$¿csíùþ¹zRúО–çu_uV*të«XŸô\ê|·B*Á¬àÕ2á¨{³êÿXsY?•³Œéä°% +‹‘­UÔÌ6±£Ó¹ÜÀ–2íµn#WÐÖתºƒS{²é_»?iÝ ÒŸÆk|V´è¡Íè7œÈC¡b›ø<®˜ë'-®'ÕÞö !pʼn‹=Ü4”&ŒývÎé.‹êÄ©þçѽ*ÕS€ALêM£uÂ݉åT|¾*À­ ÷,YÃæ³bŧC-™^MÈ0]%ƒ?†ÕI¦zq[U`170ZRæ4´Z—Oà µ ‡ÏÅ\® rbŸŽ·SñØÀÕ„NPŒþšI,@s®CC@.<¶Î1·ñ”,@æè‚Òäc&Ãþ¥ ©”i£A‘ÙÔpNv"E…H¢šw˜ã[!ò¤ºMk•‡¨D”ÿÜÖ  bï»*çËvØØ na 2Á(Q ¹#‹4øi#åê *°RÁþn³;úDvc?¡8æët/¥³ÁѤSZ0+‹ ?­¯Ü"#¹ÉH'mŒHÛì¤Ê®«°‡fžBËå†DÚy &UXò¶‰ø(»ÂÃk ¾:ΔÍù V±ðÙŠ#q™dÈ@‘Hó2P¬[y{*«&ðòoUçe“œ›³óŽEFÙ£!æïÄœ£f‰Ç;uˆãáSj´‚P@%ÒÒ¡J°P#ù€4³éHr½ÛŰ?¨©+ª 6‘/M€‚1ž æ³20(µPHUTOܳ’µ`pN2ÓðÈ7b`=ná¶\®5dWQ%ÚìϸRª&Q,›òR*Ýî/pXÜÓCƒ×<ÂÂ1b‘•p¬g*l+ †èóÁaeŸRVS*4M屚(²TžÄ© µÜÌÈ-qh y#ªXš(×…[eŒ5a?rÓG·¢‹Ò¨’l; s/ÝãH¨’`¤íÜ<ÆÝ£ó·Œ¡ŒÛù‘vb¼òÜ7E;ò+çu$ãüë•›Où6MÇ-Î:ómöÿM.Û2îÃdÝ¿ÉøÜ(¹ ­t«¼«^(¢žE6”MsÌÑ!ú’6åͲ©‰¶î7[/«4ä˜ü„1f±bjŠÑÂöX4™,Žk³#'qI©ÂêÄ7žIk¦¢OÃQ[¥LÎ.@·x‰ºeפi«ùˆ}qv1ø#¶8Ý-,12ü¸„dlÑp Òäs¨ƒüW÷cÌò> ľãÈr7 'øä‡ŠÄ6ÙþÄ?‚@p¿O³xœ>2âf²´éI-ø Cfp²ÉÜ„vÛå2oÈX;‹;óÙX•ôFM]¦X«¾wƒ“*íb4 ©¶ÌXž"6ÙÓ`Ì»IuÎÒ¨ªË)¦¢ ¸‰Ý¢|DZNVµ/‚€V«H{¼[鈻!µ~m¤høcÑFQö-a‹+‘³È¥y=gâ%PÒ6æºF'ÿ.›)&BLjUîwÙAß—ù}†çÃm· N¯Ìâ¯ê|ª9\uª±ADÏegsªeæb¶YUãXcÙ‡àä²bfí•›Ué¶Üÿ9IcMUµ СšN+Ë“í³2’à¨'c°¬ÌS¨heBi¬)( úK 1 ·ÝݨU¦*W%aÊÄ“2BH'o¿Ûê4tÀæPˆÁþ+&•20ÇXvûíÛB|ÊÄ´@3€Ü@0Ž—1\@º¼cùG`ÆD?à…e ÙÉy Lv‡ä÷^¶ðýv3£NYÂfc­™ÇXù«‰kal^ÕYVRäW²ó·Ò@«Ù•¶“ˆ‰tû9‰Åáo¦Rõ V?‘ ÝéBÌñ5zñDýÇb“ÀV8LH¼h•mj XÁ4«~ªt+Q©ML|ÎÄÅüyÃ)i¤(©,P\¸iÒv}Ã~x1¤„ìʲ îÌû¨#r7VØò;ýX~ŽÛ¸ÜÔÎî¿!Üãª:/v4*VõÔPŽ?é†ô­J3—Ç»ëè¶5v—FcüÞ4ˆ¡{=„æÑÄëû猌£ˆw;Ûz kë”.êæ£j½¸–ŒHj ˜-˜¥¸ö#wf&yÅcÞ®ÛAZ‚Ã~#òãnZ:m%§4•) G¥NTéŽßVsˆgê¡YvJÒU©%lço«qˆPhÕ‚FbTÝ„]ÁƒöªrÑFdßj€÷*K¼’°Œ‘ë·¥ÇE‹G(vÊUe 4®&I¥`ClÖcˆ1³)&¿mRÍ2Ã&üxø¼„ÇÁ¢^\U\Le$)Y¶e‘AJÅ&ɧТŸ]Œ ðÓÎáçšhá­Zý6iˆâXb›wkq)`î±…%q¬Z¥Æa*0?ZiT Ÿ†¦lÁ­¹ 7à`5üêd–õ‡ãæÜÃy–¶ñi‚2ÜX2ÆT:+;¡ÀlNÜ ‚»ìmÎËë…ª 7œ;s'hîÕƒ*Gÿ|ÊÏëoÐðOŸ »4äaƒçqñF^A¼·à Z2À \/ÚE,²ÙdUbyäê C…±„ÊÕ¯˜Çس%+pEZžKD„îÌÑ’UDgßëcë“¥F ®…J ·bÃy¾:J•(¬ ˆÿ¶_Ô%‡îßCnšì4édQ‘´¿ô¶OúP0-–«!nQ¼cÏ0fߌ‹±DQ·$†PTRÜ$lÅO/@·#ÐÇBf°ÔpòÇw!N´²_’TŠk ìGM`hšYIëÍ"•­fB$•Ï2öÕh€Ã9ŠXä¤Ò^„ûjÞì Ž,òFðÀ§ÍR¬s5Ši®Vï¤Ñ"KÎ~ø†Zµ3E´$°‚¦krüÓÞ£†:ž×r>dcñ`ȦIw3ª*‡ÙI7&œ`væ‘LVC+ê 0 ¥TîA2€Éâ{`wIºr“²lùþÑøðƒ©]{‘­?$Õ®Gj·ñÕa²Å%Fü‘ª±”A˶×caò¤@³SÆûÃ%‘·äÌT$¡.Û3E#0ŒrøóÙX]ûq»-{¸û߈]6Dåé$‚êIpCͼ±~Åö˜œÅB•êÉ aGÓ&Ì~ Ù°ÈÊ"FBÞ}»~f-ïÄî?-5ˆÚçùßÒâXÈòf“‡‰cî‡ega‚8M0C|’¢ ×á!6ˆõ€ác‰X¬jÊr…‚XÜí ©)iS}û[…™¤-RU ÷ô€c ÛÝ7YKÀ#Å~`bRÁ»±MIlK²ßÀœN–&ËÁ¬^‘·“Œì sq¼ý?Oñƒ^t‡Be$6lQ^wGʪù G (õbrJwL‘­4•»‰Á$ç»Ü&;¦/e›5„­“¹‘ø±¬¿Ç«Á!ù•Spèw!¬ ÷ájYKIA÷hƒ ä$==Ìâ¨a ·«×š{öÙ »$c’ËË/×™ù+2‘ì²ñ¶æyc ]¢>¦GPiÅt?Ìâ?§jV³]L"•Š8Ûp±™Tq]‚q<Ÿ\ÝE)sH4JÂÔt¯I,᎒Ñ÷žpv’Rž]b²iü4 HÔ÷‘ G`EÔÞâj2_™ €¡Ýf* Ö~‘FLÍ¾Îøýö»fæ `D KÅVI”ÆË!+ Pv ®Ñ¿8«^â#’>TÈæ€ ޽¿Ž¿œŠh,ÁuŠH„ ¥›Q•–ÂëÄf’57+ïj¼Íd5{2Ã2JŠä•1¶ÑªÉ±¢ü„ì—tìPB°SWkµ·bÃѬ¤e©„±pÜ ]‹ÞCŒ ÌçÔ …:ä ŸÌoýñÚɢɅӧx|²yŒÇ‰îÖ`c„”Õi›óÅ8ïËý8;X­<àqUÂÿIW“ç%¬ŠÄ²l…•ÔòdÝDi(eõ]² ¿ÅiÎ?R.Ñ”v;Èg¬¬%µ1 ò2ìŠðñKÑŸŽ…_plv|. H¼ÅQ à.äA-ã%Š.áx¢ò1ªˆËrè?R/Eÿ^±–ÝWa{™Ø÷œéÿ÷jYþ3wÎ-qÿ;?Xn;|Ë1ubªT Ÿ™ˆÛ‰Ûr?~FÃmƒd ¬aäKää–*|—rׯÛúññÄ3*r“n*9†;~Ṵ̌y;$<úTM°Ã…Š€yH?¾ ¸^ IŸ;l@2íŽ ƒ.G¬ÜxñŒ°Üìvß~HC1!ˆÛìFÛ“à~¶õ«n ìÀ)Ø ¼ró±ÜƒãaàƒãÓ¥W}‹¯Ø.áT¶Ä¶ÜŠ‘»7ØC7 O¦ÉhÉû¸ò§`Àúöª6òÁ¶Ûÿ°Oª“©Ã<ÅŸñ‰Ï#~ÿßžûá.¬¨ÀG¾í¹~$ʾÿµ*9nŸÜI £}¶õO¸S ’í&FBÍî1Uî;²…Tñ2íÝhœö¦‚ê¹Eå$ŠÜÎxìÄþÛ}Š–ãþH ïçoBž¨HV¾·Y¿y—‹€EŽƒ&À‹.Lt¥âÒ¤îÈ‚3tœRdnûú[|¾]Gv¸ð>ïúŒIô–M7/À÷v㿸p%Ö2â²í f;z˜.ÊNŘ^[‚8îvmÐþ¶,vØí°äv¡}?SþÙ£ÆB…žg ¤†i$ å¹³†$ø-·nb{‘¬©³².ÊŠAÛ—ÊCop¿mØlß‘sÄz£6ÌU:Ì4KÛ÷ï|hË–£H±IÒq ÁüÈÚ[ÎBó">NA`FãÀmа}” Ø?Ϥ2rr@dQ°UR9FT‚Ìá” Ýʃºíçb¤9âAòLS‹ÌH`ŒHàß½×qà'aˆåI”Èv$ÊÁ¹<'.-È0#™Ä σHpðG¿Nóß%äþ]¸ÅcÕÔù¸#Î@ÂÆ#ÉÙ»M#¬‘ ,ØÇãèÜåÕ»²"z¯¾ÈÚ!î§ýDcVW—ýíí¼·øªÀŒ`,JD×;¸î€©È]•}XZQ5iGd¼ýɬ¤×ycGß…C ‰8d¯ÄüÚ÷Ðü1Üõ^ý•Þì?Ô*TàwÕžÝ"±ˆÊfNŠã‰îª xÔðhT×÷ôOªø<‘K’J/ÿÄjo.ïqc¾t³üüÕßó”íšÃŽ~šqò …[ôw¨ áwÜ’ ÀضãÏì/ÁE-·“¸ »0cûÿ‚6;ÿ¶ñŽ$2’Û~M˜«¿øñ¿÷xØñó°Ü¨„ ̱àv'õ°úíôõ¿FärÿÆÃÐU“"â'Øþÿ,*[À`@–±`8Ÿ3âØÀ w ®ûnv߈m€ûìDÞþ7ô‚ʃq}¶Yé°ØÓÈù þ¿CõéÝ• ç–Çôê;íàí¸ 7ýù>’ ¨þÆ;îG6`@$lNûîwÿÀØl}E%‹f>ãJÔ•OÃÇ»>á‹ýÆ^ž<‘ûÙÿQpÐÉÕ^£H’Gž?i½ÙË´ÌÉ7ã^)’:¨¢ÇÊê¿«4êcUä DcnÒ°eU„0&e1í:T.H”Ù›Ì<+žB±hVf÷·þ¡éô˜¥ô4w‰­v ö±Ñ‘54«ßWµY»qÙ0ÇšÄò<èòG’4´ð¯rRœŽeŒÆT•Öp8¤†Ô¤Äö8ýQDu#‡ú6D—×yÑJFBŠ‹5 ‡…¸‡¸亙*Î-˰@?ñH¼¾ÓúãTóYTr‘Ïî Ò3$ÝÄ aK× óĬhEV>õu9–¬BŽ6hÕ2 C"ÊÍñ]'xã,ËK$w2D´7b6·ž¤10í¤WX£1N³˜™„߆$…]§X–ug¯RGšÝ .mÞåD«« R‚¼šK*ÂÃöv öÈ)` •ö‘Ù¬Üá€N[Md’Ãæ6 ‡{{ݼc @î†wï´á±²,œU˜‘¸7mYL~e3º„¬àJŽo“R6ÝϬ)hè'f_°ÖI–`7vw6ˆšZüPjXAÈ,ñ·5RŒÓ8ÝIzzù²#Ž’:KPǰÊ-)CÌ-±Wäǹ|ƒÊ„.æ(œš½%Ó)·sQ«0,#½^3Á•šPÔFH¬N­kœ,³V²«>JtÇÇõƒ1ÕrÙeü:¡ZÀBAKÄ9gñíËk¡‘¯]tÈÒû–#–´ÓËÖîNO#‚#=Èš)92ëÍò Ú2Q?|e†¨ BdGÈQcÝÖº«W]ä)$ À¹44ZcÅé¸K±]Xm}h% t»L$²þ|«#’†Í ܰഄ$ýÐ(X™¿+Âó}ý.”iÉ!k4„!oýÍn}Åee– ÂyŒ@×’v/4µ²,J©ê¬ä‘.­$$Â| ± Ÿhö¿øndéK¤öï³q|W”v,NE÷“ÄÇižDHÒrÊŽ¬E*/È€Ó–Y±lÓ,Îj8ˆžd¤u=¶mþ(ܳ€’îZ¯#&„×È4{ïè±­46NV£.3ù ìØ’6KV¢D¤?ºG hR«HÿrZ¶;‘ŠÀ5^¢ë0Äœ8ºòÞpÈ!/Ø/õŸuYFÕ¥òoŠè&˜žþ>']÷ß–ÍSÌÓ)‚RK1‚’ ~æ-,Ç3—PMFÔÀ–b‚rö" ÀÔ<5UØ'-ÞD“¶UVEBÈÊÌÔ’ŦyNÀ5+Å,3£‡>Àºp…T‚><±/æ 3©„¶õ㘹™ñŸf «’‰þ<ÜDûBé]^ã;+"ĬҀÁ#Œ£#Äãj Ý¢-°¬„“Jm…Ó$'—¬?hÌäwЬ…8È•ž/lÙ®…º1n„H1Gl­²Hðƒ¼=-ÂÉyZîA¥xy–sY‰2ª—#xñ”7nØ ¨Àsë&g9G,Rk‰)`÷!Äùÿâì¾^­b¯†S &/{Z >ÿP_³~tEŠ# 1Ì U?ÖÌÒ£rŠ4aÈËÚƒGò±œ¢qË?w7ÜÎöË,|ˆmŒŒVÜÜÇÊC]Y×# \£8°_ÑÑ:S†Rd2ªT"ƪÕ“ ¿ÓʱÄÍPò\{ íU‡ñÍ ÅÊJ°A€72ȱÅ, ø¹‰#@Â8æHD«ò˜Ç/tO¸K \¬#2º¦L€±;'rYÉ?»6Ì¥!À1}Aœ±ßf¶ñØàT™UþÎÑ• ßšì‰2Ú–M¼.éE¢ÚC¶9ÈÊYþNJ«(cD®¯zë 6òö¬iU}¤ÅX &SúI”ƒ”ý2Õžg¿“fM¦VÞ „ºy°Ò!®aÞe{({QŸêœ ¯,a&Dnêop´ÁĪHt$H—’Ä|#3"íª+ –j±šúª9™¥«ÐS©Ò,8‚üc=Jhéˆbî@âÆlx3Œr‹«É,Ž®mþ,–`Á1lƒïý<¿“‚»«Fä+€¥¸BËLâP¡5bëÉÌ`I7˜‡-ií±• Šü¦ša$œç‚$X¤JœÊF¥e“x£•íEŸzQ¡|÷Âk*Ãøþ«& WñW ª$5Z0ëÆög¤‘Ìe Ù·lÊ_1œ¡—)MR}D±aðcƒúáP£V±WÃbbÿâyµæ8~Ë'×莪®ARÜÄr%™Ö&`î$޶PÆ'± l7n2°Èù?T!U#‹¶cܬ‘òQ&ê²@ ËÛyJn­&2oËrnÙÛÑ¢N•S޵™$ÈäLÉ]ÜVœåìB„ÍaëÆ¡I·Dk(X«•åMb´Ze‰é![Q¥Ùç±f©a"ªÑ òwŒµ¹w$Y%š^kþ']Û-Sf³!aÀTŽ£•4Ô§:Q¤(é{°w/~¾.üd©éJ”úC¸hs¼ÝŸ½°:?¿>iõ›ui²’ÖžE‰~ÊÀCçÌZ¢^7SFž #¹`±ªDY„ˆŒÑ!VAî+†’ÊD6ë<—.¤yÃÑÓþâ€üY ‚Hª«Ác‰ :)håNßÛ»QœœtŠÍðUŸs,ra¶°ÓÕ4ÝÊTëÍ5˜lT3…±^TE"Ì‘K ½bÌÐr 4°SíAfXçÜT’HýNŽw/]_›ê.[KC'`Z}ý ¼µji*Xô€Ä’ÿ_&Gy¾"¢©‘ЉŽP ŽÎªënERˆäð/)úè„*AõŸÒ–BŠèŠ‚1]kö³9…«s"°Še…£¥,jØKarvÕ›gLí"øuì·xÆ‚HÖŇu]ûoYD0½±í<h`e+öäÄ”šJ‚9íÉç$h6®\–s¬>sÄÖd¯=hËÖ¨92d¤TéU7Hä9‹d3«3¥zî唊@¦b±ÉQÏz“÷#µÒ G-véuE–™ <Jÿ>ÙŠBf¹R]¬³¥+’vìŠÊc’+Š%6eY B£Ôr…½d«º}!ôóy¸“ã–d°ý¿Ô-éfÌþqD"œpeO¼©#T¶î|™7x¡-ºAts³]÷®#5Ï!âÌÄbðÏd…"ä±²H`ì+*×ì±Øîél=—\ݧx&zêl"àò°c#ÈI’ÌÖíIc‘H”Ô‘Þ­›ìÅÚ:Fª4«ÛUW‰Geœ«§ïX I«˜˜ØX!æ«;Bà ù–Þjv|UÉ!ˆÂϲšÓUi ¤ü°E‹;̶Â1–¥5¡ZTXˆs!£sÆçÏ8ß'´YG6sàîé4Ž_ñÚ–I:Åù•Y²-›PJ¸êC™–W‘ãˆ#ˆšRDe«¢ (䘀~u+Zh®UÌŠfšCI®®¦nÍ’‰‚ÛÂÑÖmV!ÅQ–t5íV“˜¦¢%©)2R—éd‡S˜•‡ ŒqhÊ£+΋7AjÖöÞÔ~ä“í:YRC-LîZ𔕍 €]/e3>ökíxqrry•ˆ ¤7ÐÝíâŒY8’"ŠL±HB Í ™¬2¼ë L œ™®Eh¾’8Íé¹LnxqC(Ù Ë ÇŒ§f*VŒÄ×ñ)ºcX ’ @’jÜ#éÌ¥ µîÉm-ÕùæF0V³4¦KQ‰;"ik ZöÌuj-$ÃN{Å•{]È—º¬#›ÆB†ÿ£r2›YŸ’ãæ`ÖòÄ/9o·­–*%5)± –;9 숽ûâ… ¡E ‚Ô´«~xÝ’0NV9dYf‘xw‘Ú.°›v›¹4j¯˜€ˆq`Ù„ÈŠÈ€3FX…HHÖGáÙXꇉÀI%t‰ž”S´pYªÜ2Ür1B$Ó–Á~]ƒsycŒ²8gd*~)$°_Ç¥ævfYcf\Û—äI¦>2CnñUy5ˆ%ª»MVí¤–ªqžõ»de©mNGoV¤\úT!Ëi?ÒÂÙïŠÉ.ãÒ¾ÿ“ôZGʶ›12"¡ˆNà䂈ã¾ëó*Ëý4QE\†ô­Ô%%™Š5aDCöù¯v)"Œ´`+ªË&,6ôäPZsÛ&š[IG¨1í~\œ°Ï ¹`ë×±2[DJZXe‘xš6Šh¶ˆ¬ ”Ž—ÑšR©”³CÛ?ŽÑ´¡ËcʇÓ ’K‰Xfµj©íŒu3ÙjkRH Ø%Þà<³4piäó* ¸:˜È Òö;Y› Xȸ9†ɱuyY¦ÜLÖ¦@{¥Ð~È*™` ⑸³ãeVê[‚ uŠ1ʽuˆ¨ˆ±#lbÈx %3$ýG¢òt¦ŒÏùÙbPce(ª‚)±Ù‹·'æ¢a-%)•ü=Iqá¶1ªH…N:3\<§úžJ.`»e¿ÙC<ÛLÓ£ƒ•«¨e,儾‹úpþÛaÆG7»(q¨A‰ñky-|˜F"F2Á,n;Ü žhÝcèl,ƒŒðׂW1>U¤Yh]cB’IZN÷§"y„E lêWF ÌÌdh&®G…—IJb“‰ºäˆgÚEªpíì±¥^æBò´pÙkÕH&3Kó#JÐï$ß±Z¥~O¥5¹ Wl¥Ty#ŒcEŽFi ŠS,ª¦&^5¾5‰bù£R„ö£ï0jÖÝbÙýj§PTBV‡)U•¤‚X€ ˜—Î1•IZ¤(JK( ™Ø¿¸N2H?n̲ìy4ï ª2ÎCĬd~ÈÚÅéKC–­ý-kQ‚5»O#„r‘ øÕaà‹Á˜b²A$Œä«;b`™›äW-S8Ýø”‚–“Ðk©q#+&Fjî-=CÀ%r°4Lû¼6CC2± ‹Ü‹eY«0.];㤉ù› dYC+c7 ZÈ‘Pp¯}HkÐsîØ·\kQýë¶Uõ ª¤­@)¤°—€o³Ä jFK2¤¥A¥@ÈÜÛså„Û™)yÂéÀ”,Ó®Ò3ȳLÒ¯Èqžï³VMëÔT¯²úWדH Q£–ªÉ°ˆ™¿ÆIWÝã–LMY#Ù£9Ég /i6§ª*àÜòÃnjJ—,ÂâHžxÊÃÙˆ=•¹n(þÔHqâڙЦÒ8ÈT9{DqUˆ% QWY5x»2¿rù=®,õ,YµI–¬L¼öZ¦ë+¦úE¸xn0ÉÉæjj I%*LC‚4îöžvúR¼ªçÎåD¬ÒöÚWPZ[{‘¥RM¬Š‡Êíc—¹ƒÓ°F¼ßð¹pÐ’5HmÅHZ'^àåŽW‘QNñeþ„€ZÏtáq8[ùS–yß±Üh¿ŽŠšNäqJI‹!ñëŽã™â˜Àjâˆ{5`HRIbP–V*Ž$PÂ)$¯æ2Úiž; GÌ‚>Ì™íÖÅUDNGF^½é*¦§L\1$‘ç·8¦­*´”PÅ_(iØmçóÆ”1‚µÓ¶\Í$ñA±Åab°ë3 °ˆ’où 8[ÅßüÔ8ûÈÒ Û¹iayèXHòHc/–*ÃukÚ­É"Fš¼ÑÚ|ÿKñ4ñöì-̉h)ZœÇ+×hdt†il=˜b¢“ËóQ“ŠÒÍé¾ü…‡°§“Q ‚TÅÀ)}íkNû‘ßÃó D%´’îÐGqÞxßv*#Wí°äÁRqR±1Y¤6T©HMÌöä&Lt¤­?ÃçÒ&hd,€x+ÖŠá ÛÈQ«À JΨe—‹‘ Ë£¼ÈÃÑCEè꺊‹–Þý9 ´ˆ!„WE!ã ‰ZV!žX×d«<ð ÛEjçRâiÿ päÝ̪6ì»A$Q¬A\:"“W˜D˜™ù![ˆD°µ9TuS©åi,¡E”Ö¡ƒÜym…K!˜RB´†P}AD$ Y·ÞãlWèU"a,2/u»Æ†i9I\’Ò\âÕ¬ÏÁBMy˜C“¯ Õ¢½øƒ/±ü%sq8Ý$BêÍZyíÛ/ c™›”2ŽÖT¬-¸$j]%_ ŸÅã(Ë~XošÏ,†$3©k¯^d«Zð¤Æ0¢ÊÇh¡Ã;ÅnÊZ1¬öN•áÝïäÇ÷.ËØ±»oýGxÃUÖÚxÈGº=¡å¦FýI]G,Mj>š‰t2À¤Gåõ´a‘’®¢°¤ü–±7‹wã󌑇*ÑÌW¸6‰¡$vp¶Kqnò:ÏÅ-Yn/Š· x¤¯3™VÐÌÂUܳv¦fUYâ!ž)èð‡1ðbX¦â2ÌÅäxË!ÓJhäoÁc3$ô©Ù¹Q],I58è-Z(d±]CÓ¨[· ¥íÞ6AK1Ç4~‰«¨ñÖoÞžü ¹+ ¢W·Ãñˆ%Üõá™Ýù†Ð~uå"ñôã¨eUIkÔÀ) ÄXgîOm÷0üp°‚J‰=÷‚FÇ둆VÓš2£4nÖ ‘ûòn‰b9·³$<Õ/4B¥ˆUñÑñ”>Š#¹æ‘²3ùáÅU , ñ#ÁnçññSR¸¤fŠXýXÒœK/‹Ù>.±3 Š˜YKêDxxåâ`ðÔ‘VÂDÓ(jÍ;œÉÇF&µ<-MgïX*d’[Z…äKÎF±åÇö“6D±D#·Fb¯G?—®¯†…¹ 0,`íû`/‡­“¯E!Kf€Ï °°>[ôÄ#³,ÍqB»JQ£’DQ$+aÉ,²E?»–3%9<~êvôçÇ1Ê*2Á;“"ÄÖÄZd”Æ,”ÿd#3 ù“2Iº‹]ûŠ)‹«EÿKŒ›HƒŒ/ …6³Þ:Sî´ëD [n&R=mc(Œ†KFX&5®]Z¦H]ãíÁ<ð‡a3–‘bî–`áa²™^ÔßáNXkUD¤T D¡£°Q¶œ'˜r¥ Txµ2*äÌëÚ‰Ó²ª#öP¢÷E,E‘#Žãò±÷HÈσƒ §Uá–LuY,O©Rwgˆ´“K?|Hb‚¶É3,1 ñéuìD²Z’U–[€ §%#cVF˜’òÁm€̰£EIžc¨IŽ=¹k‡—]5¢¢Q Ô•³s)ü˜ÿ|cRJVi¨2’À™ga ‘bçÛ‘Q8°eEt•F@œ‘ÐÊÿ-ÓkIùq†O`# FÆ=ûJcØÉ7toQ!S¹–g1Z´ñÅ6Nq÷Ê,Èþ·ö7qà¦èêQ"´jx¡6'<«²È[)hљ£I%Š~f9ü%ì²J N$íÎ&޹ ÿ0HäKR’,b¢xe XÍïØ€¢Ê²»³ï!ŠÁ¹?™Ó>Á˜Ê|‰ÿ˜WùxàQ‚hªš©MD>’˜€Îy".Æq•TÕEE …&òò÷ÞãŒu²p Ãi d È™i†[3r„Zª,(ˆ:%h€YåPòã+5yª6; |.!¢‰yMV¯Cñãq×$R_‘°É!b;’ëíøäL.žâdÊ‘D¦)¥)ˆ‘ ••¯¯…£$ S* ‘7_VGN÷?€ÂÌ¢Vch9vvrÆŒÙy_ÜŒÀ£³• ¤S Q¦Mþ=`Y¿Þó%¶&}á°o æÕ!N~H ¸bZÍÞ0ñ¬Åy)Vq) ò—eN>APëÈîyŽ^ öÔý8!”×xÕö«0+nRyàÊ»¢þÇʱ%Oû¶Ô?/ì »,k¸?Vû1 ûB¹Ü¶çp2¡Ù¸¨‘ˆÝ€*@ ³Ë’«°mÀã³$±‚Rذìþ/pNå·ÿî1¨Ø*2nBÊR1â1°*ÂGçÊ1á›m˜«Ô«2…Ì¿fá±â‰Ä*)ÿ;o¶û¨r ©Ûÿ#`=m~E>Ý~­$œA+¸á*³}>Ç3áÉ$ ý(«/(…ݸ;yð¡Îû®þAp€ƒ·’= ¹wŽÞ7Žÿ¶Ãé,%‡éõƧm‚¸HX’L¨§ˆá±?by;eyõS±ÙCýP†nÖ äE,lZP¥^ÇÕ9ÀÙš Ü-A†à)€ŽGå‹èh <öw÷àýÛ ¦á£b· I(°)¹mþÜ÷å¹*Kq‰>œ™+!*I!|±ðXñ–ÿlw Äùôó–e,qR»*€¤î$(¶$0â  ÏÛ}š<ÇIEÜ¢~|Æû ÙW’Y@möâÎAØåÞ@‡œZ  \™#¼ñ8¬ºµUu&aä!v¹1ªâ›±#¸HŠ™csk’± ­ECH´òOƹû+Ø{·ÿPX£•óžÛ¦V(Ç£8å~Ý´6h¡g¢íÝFo±±ú¨G.¦ÌöÚ3´Â2“If6hÚ7­‰ÝiX¬Ì‹}1;È`©T5lö]"§»ßõ„N_Û¥‡ˆDa(Òtz€V³ ˶ÓóUëÁXíè¿S üLßä, RÜy;`WO šÍþӼʓûP7xì@!•·ßŽá ÌýÄ}†Åv$x ¥…rý×ÕKyƒy°ÜØ·ßÒBðÙËqPùCɇ… 'fÜì@ä7aÇèá˜múÉ$nI>*úœä€?Lrç@?c¹@rU˜“»o-ú6ày]‡í†KëFª›€93€¤’ž[‡þ¤(ö¼ •-±Ü¸ ŽKÈqRžvBSgßõ¹;~É n£û$âNìä̤–f,A2É¿‚IÙIQËu ¥TEN=/oÕ‰ˆ}fìÑÆØøËÓö‘=ðÿ¨’Êò4?ñ+ 3F®{P¤R{Xè½u1Ï ?eVÄS²ÀM³EQ+­‰åµ;4nYaeup‹‚“)Q]ª1»•Øá¦ž½xÓ#+CÄȵkCãÞÇú†rã™ú•ÐIÜÇþfÚ¿G¡Šp²ŽÛZHKA'tvMCKf‘-VHŠáQ *ËdDQ‡Äny¿bBJÔ´â“ÌD¼Û—®ó¤…O–Sîl.I™ˆÇ+ÔJFiGæA"ÆO°¿$´cå÷¾î«ë­CѦ>’Íõ¯Û®£égµx>ä²µqš§§z€nhn„êNžt探Ô-ê§‹§¯êî«^꾋ÌSÖ쎻ÖÞÞkâ Ž:˜RÙ:ûMéßP´]}G”׺w©˜+9Ý9¤«Pÿ|ûç뿼 3ší©gÃáúÉzúÒImäkØ(%Ê,ÕÇjÍLUcµ~ŸôÿR¦³­©´>Ï×ê> Ô ÙÍ5‚ÊA­ô–*¶£† ­jÜ¥4›Ocªkb—4Îb;zNA«5Œ]g“?–6å ñׄ+1Âc‚:ñeX„+ñÒ8Ôï vøÇN¼[&r¼]ë]¦}*:£1ñêT+kf !Ø_a>šBè 4é¥ 6£»±pIwƒ{ÁS¥2¯órí @­£š6'›O ËâhûŽ63÷I' nÒÂÛÑûSõ¨í²8þ—{ꦭ›ÖmC¥ºÛjŽ·‹§þß:YÒ&読ooz+¦örùÙ:­î=_¨ô_Q'êö„ÓT³šO05~Pu‹H/Dr×_¥×êÔÌÜžÍȪU|t妒êG\ òFÒ4³Oÿ uBü„»â'©ÀÀï*ocºí‹¯ÇSñ½èE¨ÃšŸQ¯Q(tû§õ5Ô:Ÿ6·-ßÌY[¹äÎæ'µc&×c»”\…«bXîHòëT*ÔÎzRHô“éU£æFïm‹ôšÔéåβ’I @`ÐXýmiãæ¶#šËXêÆ§Ã{Òë_MºG‘ë®ÚWL.kn«êŽ æº‹­t¾ Ìãú‘_Oê}N.Óé&£ê&²ÆÜéïN:‹9úX!ŠƒUÕŽC—5 ôë«ÝFÎé}SÒî¦õ[ܾ ôÓÜ·^z]‡öáÒ gÈõÏPä4·Lz[¯tN·ï}I¢hj˜ôÚ–¦Ìj QÔþ­]éܹ½U­4gKµ¾FôØ­9¥:›ö !ÓNŠeú}•é.GAt·!Òlæ>ö;3ÓK:_IÚéþWrsc'K)£ä§.»¹d™ïÃc,ØÞYÁ“vô9»íÙ^KèžöÍí5£:eÈaúo¤ò}"éfKMôûªoÓ½•Åè¼5Í=&+LcõW»‘©„¯F,Õú,Ï»«•¼†d$iIm!Ü+Ë ¸g0Ðï‚iÍPõSw´î È? Ã¸Š=M¥Ð®…QëNk ©ºÃŽéÞ‹¥Õ}M§#ôö¥êT:?S^fpW1ø-)I19­K[!ŒÇTÓúr®gaV¾ц%s·$q W(‹bzñª«n ¥'‘‰ÁŠcÙ•Ï÷z/êÌ^’Òz?Gim‰ÓúoKiZé9€ÒðUÄà4ÞNÑ¥‡£§±XŒLQc0šJ¥LltªAÓÑ×£V”0äD·\»3ä»X»·;KÏ+'ØcÔ¤wàÞÄ¡$»^Š•')M$(HIÜCIv‡|rýMiVaJA @?îÙ î&͵ŸœzNdî£*ðÿÆDS|[«ß0qi © $.emKub»JCJc³µž|d­ckg±²W7åC›jÎjÀ•ßyÜ%KÇiø½ «•»NË·}ÓÝ+·Z<†Qæ´°Àô¤dÆý© eiþK‡¾a‰f0ÞÝR¤||à˜#u.د¦¬×³ð⦆͊÷¦-fY’dš 2²4“¢4/Ü=Ç_ÆÏ»;8E<íU.‰¨§ÒàLÏ‚{·œlË$«+L&°¤ u1S) ØA>d`mÔY§†< ‘ÝÞNpÈ)–j¥b’wÃÓ25YU‹Ùs=ÖäÔGƬ¥Gu·F•«1ÿ0•».wk<Ú<íñÕU,(rïSç¯ñ±¥LlíÄ—‰Ò޳÷Ä»¿qŒQ3|ØO”¤ÓãdÂ@y&cH”£!ŒÝlða퀣­™„(œr™*DÉ1ž´q©Nž?éÒt”¹0C3™m¿ÄyÁž/X±Ôt‡)›%.Yûᛣ²!tpãØ Œm™âUhchÚVÙ®cÕkm‘xÜ(ÓFPìåffÝ]g•'˜ù¼ò‰¬öcxãœöêMUš¢†º#FÛ±*›ñü6x¬I¼¨»¢0–f;D[a_ ~ÛoŽ`¨›EEÅk $¢* Ç5E<"Ÿ-½Y¶Ê[»¦i%D$8؇›Ûì !·ÀýLÅà‚ÆÍ.[±7hÏãu"<Ç€ÀeŠ5…_•b«ŽÜ-,…ñŽOÏ‘Œõ2›TŠ5]Ï{:›¬Z/ÚßR5÷CõÆ˜éæ³Ñf¶¤Ÿ;©ú}7Q&| K¸¸rØÝ5SýÛ¥ñXU~¬òÅŽÔš¯0˜—&K:0 "ê¹*R0“/&víÈÂN2vØO1g`gŸ“•c#-†Å¯ ж9§tƱҗt–¬Áàõ&–Ïb£ÇgpYºU²8\Î2ÂÂíK!¼­ªSKnk؉àwDC÷^¤º¨¤”’ rX .K[aÁ®’SMu €!t’ä3½îÜrqOýÓ?W/k>ŽèŒuçª}1×}iË53Kã=ºä4¦…éö‰ÇeuwUzáz¿T:Õ][’ÏRÁ ^€Ò•W'cFÏÕ]_ÒJ9Ü3Pd\]¥5¹ÝMî µšu«PuƒJé^·õ¯î)s¥zLûWé‡OiXÔ)ÓÎè}C›Çu3©½xéŽFM)¥z‡kEõ?Ti¸5^«X.¨æzeªk齦¾…ÙÑ:6Ö²ÃõÖ–Ó×:ƒ§4΢Ñx-c&2œš— ¤µnSLfõV˜Çåø¶K„Ô9m¤²Y¬dEZõÝ3„µf'l]7ˆ§=–{BÒNNµé_mÓ}[Qf5d]KÁtãJâõªj]FnKŸÏKG™#—ÍË“¿.W$l›™ oZ’ħ¾å¹c”Ì•/ImZIvFàJ¹‘%˜Fþ&›1ÒÚN’-Ûž7¶8žÐµ—Wµn”ëå.µë=9¯5¯O½Òu¿¦uóÚ?BžieÒÚV=-6žÄàôK­2ØÌv:¶^hƒjo¬s–l<ó]ÏX†JÕië‰EnÙEx忯&7E†ëM ð¹Nâàf {Î $+gqkLiˆu#iÍ?‰Á>©ÔÝg©aÅÓ¯“;«spÖ­C•Zâ&¿™ÊÇB—ÍÈX&Ý”­zFí õWëòHaÚ¦Xš97 ÐÆíM!ŠP¡ÞŽdà ›E RMK/'É*§ÿOÒ]*uSP’CðTåÀõLCKAÀ>¬´­tÊ[L°ý(âÀ±þÃלÕÉ„¤bÝ~ïŒÎ Ì…RzÊ’,’Éþj‘|‚ƒ“ƒnÆÜב;qÌ’.#³(6 snJ‘ÊRcØËà±õP«ÊÒX®ó/8„ð ’Yc€Fl %d`Ó¥^ú7dX©}¤¦¬µ‘q#*b‰ÊȤˆ-'6R·p²‰œ>ÅÞ1»Ï5oSëhÁ@±yô†ŽÛNÏÎ+é‡OÄ.d°K€ó`ƦEã\uÑà¡§h“¹ mñÜ(y#âaMÔ&ã¼qÕ¾ŸaKÈæ\¬A…¸Žä¨Âý•DÈÎòŸuwÉùW!½m³-;f(¦Ù+XpkºJṲ̈s Í´eÎÌ !âIR%é\’˜³Ñ©‘€½W”q‘Œ|}•\„=૲×eJµÿ¥™ûÊvD(es ’ú©Áy6r˜·ç•‘™ v" ¿`òüým°[E·!±; fÚ>gË”e&4‚ìÈß IM·ô ê»m—Æ’MñFB±[e`>]ÄWØ)‡w.°dIanDŸGpÀ Åb™~ Ÿö3©q¾ÿFDZü„…ÿÈ!«¤æö%8M|$‡f«9&yÌ'nÄö–>Û[†WZÕë46Ó•˜&s>–¥ ÚpæÀ‘/;÷$ïˆçGý:ÊM™Á3ÝÞHñVXûj‚8XTF „x@ Èa™`iˆøõ{©nµ¯ÍiÅk¶c]Ý„K<ÞGà#'Šß4@mÝT_åeN&šˆ­á;“ \j•¿Ä’+ü§‘á/¶ÓópÆyçPR+ÉóïMJ“åé‘$g„E6À„:VTÜÇ 2A¿,`›j¸išJy>m0Û­`̤dnŽÇ{œsáÈ%%œïì<}Û W;0í*íÁäTyêJÇÙƒƒLÆ-ž Å–<µf[vÔJ„øDXJp'›m2¤ÌŠ8‰"¿°…Y[éP,RPØÉcÕ‡íhp[?¹5UJ2«.ËÄðîÈgs+ˆ{|cYe•!,ÑŠ¨ÑÅbÂÅù$ǪKV5»+Oeh€¬!€;ŸM»Y½îN’ ³·wìq`:TkŒEø¤Iü1ž˜8Åñë†J°K’cáX®>è2R°Ò¼ä¬¡d¦»©>ìni?|š;FßÓ9ž´tÿXô«Nt2.žéí%—Ž×Ý:ÓZÃãR«ÖOþØÔºÄ׿’M¬µ éûYY#5qXÜ\k‰+¥0H0™"ˆäÿ#´d3ÌŠ•ºØ‘’àD‰2å·FFeHcFgVt3¦:Þ—PqZ›Gâ2Ô:£gKäµËJ³Öµ™Èé E,&šË®RŒðd±}?ŽÇR­†Êâ,ÒÈcþ43W´–S¿ë‡ê”«TÍ(Ó*IIõàY9o½Ä[WM¨Št)êÒIb Ù´Á÷`âÌØùµ¢}Äu7ª}iéϳm7ÕŸq½-êÙ^¹ê~¶ë.¸h¯i™N¹èÌ~€Òšè~—ité'O³¾Ù¯âunC©X=u¥­„ÖºŽm5¤z‡¥_!„ËYÅgô×' îGÜRtg·}Y§:¹‚—®BéŸBu>ÛOFz{…ÕÚG]GkVÒÅõ÷¬oÔš«Kj,×Gz/“Ä6­ƒ¢™8z­ÓúíoH¬tµVµ=‹Ý<«ôohݹ…¯€›EåJz×3ÔÔÖ5z¯èõNÏPu‘<Ôš·#Õúšªåõ¢Ð š?ÊjÛv³ú"8´ŽbKv*øô]OiÝÂßÄÚѺwPtépX]§ñ˜•õ¨ý4Ñôð5Ábô¶‰ÁWкTà4œXM?¦°xŒLbâ)1à¡b êŽAC-šv%LX’J­éfˆh¸æØ!ñ¨Id˜ˆ—dþû ƒ8ìõbÚå„J²c ˆY¥³_±ß@ÑðìC5ª‹1WP"Žéc¾`ŽªÉFªâHÌÊÍeæïË ¬d¬y gx˜’Œ‚?åmCÈKÇ—EÁ rOTãdÎã–1ÿK'Œræy¥,¿Ö9dkŠN>@¢b} ÊÌ’f¬°öãGì7㛼þ(âxŽÍF6Q—œºlÃù‡¯pK!«I¡K*¼¢sUbYÀbZ?¶2ˆ(3‘ PeFê²rÃ*º Ú•ÃÄ F$‹ Œ³ŒÈR¼ðó¤î¸`®’#Iª"u;ÅwžY ‘cš Iy,KæE‚wÿâÏ=ë´W1ÛÆ Žl¬’¸GI†vŽX#YRA]Y{° q%´º^¸u©ð€É7w"„ †Üÿãö${·Ö†€òAPÍ~gï‹ÓTìiy,‘´wnö…R.@ýTÂ𴔢wãÜ…÷nd`ÌÀ {»]EÒžžûšÕ=oÈtæî¨éߺ‰ºÓŸôf¦•ê¾Åt¦½SO;ÕIäÎcõFLj½?’Êu+¦ø*¯sEkÝY÷IU:K¥çêÇZr÷zsYûL鮉Åê½'¥z[˜±Nºõ'ÜGSäÃæîôw+5'Êe:A?ª”p–rYpº[ îüñÑ[m“ö¡Ñ\Îo ©Ó ­4¦Má³x F{¦ÝZê×Ls51Z›Qduf¡¡&[§º×JÙ»WQenäí½¹'’I^ÕûjÅg훦XÝY6±ÂäúÅ‹Íä³8Üöi±>áúõC©2¸¨k׫sVéÊ=I­§õ`’½X È¦ ÄåaËÁÞ‹)Øæœ8ÃG8X•)‹9¡œÁb ‹ ›>6Y‹0'å\òv·#}KŽõdª‡¾¿ÇÓröìÉâYT‹Uxâ-Ú¯(ÂÑIµµÈR[Q¼5Tyd]¿;»´ÂÌ‚Ç ìÈ䯰O")#b7ø’E³cgrSUÿÝ%¼È˜Ú¸žZÑGÂInªÅ^*åj¶e-̆þBØ¿†B´žÐ%‚Æìçx•b÷Ž@±! i4ªà­j¢B¸)…£*}Os’*ü-#$èi‚ µ„qögcŽC6Ã1Uˆ>¢ì\ûœY•‰™ 87¬4{òáÄÃX¢Á·#ÙâyDÓq°ð•€ì %vÏä!¼ñÙÆÇí†ÅFÅàØÕ² ":O»iqÈ3òÈÝ !ãÊv‡”„r"i$rýÛ IbA$°ÆQ£V' æxç`–ÐìÇô<)#÷ö FÁò%žñu˜ë»ïn|Û.MIü=$¸ ŽA©ÜµÍðÍÆân1ã%™³™–3â²)Æý5Ñ™¦“ú¦`»Fq¶Ûª”ûÊÌI'o±à¤ ü°nÔpØ)ôÎ3ÿÄüHnrxÅøâ˜¢”!B¹×F2QÍæÚ¢ñAËÑ ðmÉ#ôÃÈes¸ÙT`—$ñA¹;’@ó·©æÉR2±j @ñûØb9RJåÀ _"ÃM¶pxÄW]):O: LxÔ@¾Í¿Ë­ÁÏrwƒ%²[”GRÁ1XšÈ¯ãc¤ßºˆîŠ­ÍÞÄûCk'ÑíFR`¨’·«7­ø#Ù8¨E![—õ5û”‚¼;|ÄÿBâ"æ2eíŸU˜"HV‘ÝGHî’~òâ\ðÀú·8•ÅM)Qbé,ìØ0ñ¢Óøz@¨ …ž øÛfÀ{_$I«´æâ1ôÇîI*ò'/i`G‘C4‚f®+›,'ŽÈX…2 n·ù?Ú ùØ•=§P þÃØýX¯ŸA½y,k«´ìã¿Ç¦ªÑK_’ËKò"U¢Ž=»bãHÆIcJé\«cÑ™¥Ü©³³VSÏÄ`"•®<£ݶ!H'Ô³!*–B’égßòxßPZELǬJĸ;&ö³ý6ÇQ,c,LŸÃå «*rCÀ¤‘J3C"ƒÞˆqï¡0“´Ì¦ÓÝÃäU·ep3ÙmêWÝ”­fÃnwššF“FVFI%29šj­‚Ì„‘FQ,Í)N6HÐöÌžuFø¼{þ~ª!2nkêB†9—…T¨§]wÐH¦Â3JM–6š5BZ˜Wá+ ­0ÅÌ]¾Ý‹ÎØP9ºGRJBH6Ÿ“IÂò]ù8%ñHÁb¿^;'†n*7$n£‰;U*ïäžG`RbˆgÑŽü†&²L^1nÇì´I Çy¥Y± $’0nÙ{'Ѳ/Õ£MŽÍÅìèwÛèÎÎÈ7>§}ˆ©<,j8P¬ä6"‰‰cxù<¢ÖHÂV6œ«Ì7“âO‹:Çj ‰ ЏKzXPÍ$±m*Ü y¾ìpÙõ—dØ(™Ëõ;¿ëÇf7Ù&*º ÄÜYñ1ÍäÅ„o.-™NDmyJò;ÈtÖë¨p*MÆJq[yWº Fí'm¤ø½À÷ŒcùÖ€6M!dŽ€ŠûªÆË"‰…¹"^Ù%{ÑZÔ4û¢^~ܱMÊ Þ —Ô‡L˜×P៵ ”¡iÔ(ŽÜ?‹´eu™£—àñh©OÙËÈÆ$c¢ÌبnÔ”I þÒwÜHKÎêFÀrýHõÕD9›Ø¨_㬟.Aô٘Ȫ ì7ÙÛ~'Î˶޻䢱Ç.\v ¸9q!J7 ŒXÚMÜ•ð8Z™ÁÓÙ°€÷gm—“Ÿ¡âvØ ØxUbU–Ro\=BªN’ÚÒ`ƒðË㦨¤š+’]|À¼^ÇêÏ/ˆïMÿø»Üälp^Üa¶hª2€/s—q »²üÐÂïŽë¢OÜ `Êßa¹` <€±ý¶rFÀx€tÎ8¿Ûò²Ÿ–VÛ—C,Ò4³f _¸²¤ÑÆBG0–È…" @ÝvqÏrêA á˜ì€øÛí¶ÛlÊ[séóIQÌÕ`O«ƒØ~x…!9t a‚X9b]¢×s¸ŒWþ¤q:‘÷á´˜Ê=å*Sñs/vqÇð<¬ƒ•rÖ!´!fW®eõ•g‘Ö5DŠyX âIx)´Ø2ÇÛ Œ ƒ Gz„¬ÂCêsÔ„u;HPI)ÅÕ1‡àeSÂÌc²ÎÕgFuܹ¡2×DɧѸý¿†?§8ù8ªªxÆ« Oá¡•Æeh2áD¼Q‘œ¥Ê;ÿ1w0Û¿lsy‘ÿQU›N¡âÉ·˜ÙÆNêÄìd P]¤ß²l9çmÙ#CË5_g”r†•ð“Ès&ËýB£7Å9'-³%;ÎÒWÅyÆØ³(gŒ‘7;:F+MÝXÁNáïJ]É’æSÆÌáZvw5br‘C~¡YÙcf1ÎÅŸ”ŸãíÏ#ƦYqJE|oëd•lZƒC—:dÉ€Ýýþ˜¨ ?#¾Ä7·î!ðlÐO-M–¼µ¢h¬äeX‚Ju¢™#Ù¦ŠR“W’B]T;0ŒÇXÄ“§µ¶c)šÅãÞ\uh[¿^Ä—"C-ç@\Ç AÚ y@íU£edšÄ›Àd7Š+zbÌF1r¼×-Dí4©o»Ãýåû‰ã*Inð„$Iy]}3¯.>X1Tã—¡qî6îFûªžX—1HLÑ2¥XY$‡/V¥$Uͦ¥"µ)D ÀÐZ\îyÞ[¸;H-Tè)R”§Ru7ÜÌo€ïRø¹DMÙqÔßî©ù6û@¢Å™ƒÕáݲL„ïÂDŠHì‘¿q€¯Çœ¨y+¦)Y8Ñì,xGñæ2Œ«ê}ÔÞî%v'‚c"qÜ’2ˆ%¡3„RVdTÍßí$M@¬¨ì`È®§I¸÷6”€÷JEâ¬iÚ2^ºø—jƒ%÷ù‹¹;’-•¡'äýÉí÷xÀ¬ãÅF†Q/Ï-7‡Ž6|v. Óá°2÷Y3Q©šûÅnñe(œ*ò ˉEYîíG°8±¸ßÁaƒ‚ûc(£™dïV>MÊc°Y·!ùà×›±ÆpøUˆGÿ9–)RÁ‡“Ib´eÖp ‚7,ùYu …DAO«§Ð. eÇÕñÁ«nVäÀ{‹³^3)Erý²ãÃê%è¢çùõîßî L»ìûÀÁY ðIã° Œòm¶åÄÜ–ŒvXÑÔ’v Füœ€°V+É‚ ÆÄ¡f,Áw¼rp»„“o¢òÛ ‘<îÜYJ}¾¼Iá³l@ ç$)˜1y?nß°ûâ㜂Haµßöío¦+&¯G‹Sfã»´—¹ÿEç´ -e0"Çqë¾øºoæ*¯¼< ^µ{/ ¾ð=ÿ©mÕr¾ÜÚ.3Ìát†‚¸q¿‰›’ ÆÉý†0oV[T™£Ë'³ñc]«Th!a(’­ifâ¹B Ú»rCs 鎰ŽõÇÙ›ï ßÀKò¿nÎé!¯Ãt¢Ž5h˜E#“,*x£K+>Šõ2FK$À—(ú§žÛí4ÄfXé=åÒY؉q.NÊý@2ðÝÅ~@ïÍ—‹ü³+}€‰f`¾²¤9ÝG"ApàoúÛn%wðbnàwðÝ?àqâ9†?¿ûTäl $÷äÀðû)OÔìwF\‘¸öXrâ[ô m¸ÙBù$ [pݰ]ÛòÆ9VSà®à¹f ¹Ø6ä©Ðý)óàxôÙ;ýDBR»îGwa¿øqßõþIó¾Ûo·¥ò߈#oJ}CMöÙw >Á±HW/°¸µø ûßt<|=ìÿ¨[2²$½Eè 9B†+ž×ú@ª¬Äü— ®;pñ‚«Ç¹K‰&Sf·r“NC;•(T”~f~áEY¬(;ZÅè¾´bìþ«ƒGïýC%P…ÿâ·õކU)ío¤H®ÛùH¥2M¨i22Gj´£µØsfù±ã!£áõî˜ãû£0öÄl7M‹œ, æ»^‡ÑÉ Áw6i³—³Øäú“~.¬}$à30cË9ã’ÐC3 3@ª‘í!;–j(¥˜:«²÷±¦eS^S4‡ ÑrÀ±Çnk§¤Ž¯y_ihbï3-¦ÝçIB¶?Œ-À4À4¶E*Ìò³Ç$¢G”îPÀ¥ZS8‹»nªù¸{v+v¸’Vˆ³Ðî»H’£»ÉñÜÊ€#ËÅODZ"´1@ 9”ÙND£%Ô4“g%€²b$v˜=ñ„•.¸i?—üœ$Nfcc»+ˆù2äThVHëØ¶#RðU1üik)’É{¶p–c/U‚¤›¹*#$ÒH´È¹4ãµ^éE¶Ì¿Å²ÇG²Ë%Ó:Y5EÙiÇn*qÅ”¼‘´½úâxÖH{”Å 9'cÛµ‘‘ñØï>ÿ„¶VMŽ} C#£5cÌD‘W°xJ#kÂ~=à³$`KY ¶¦S޶o-E_¡à’RKŽ-¶ýØÙŸMµz¨ÕM$¤;1!¹$yþ0!ï°îF¬ìí¿À ×sÜsmÛ…UÏ9iÆ]1OýL}àO¥ï4a[¹ ²xg%ä$…++G+R›˜çŸ„*ÓÉÎUn‘XÜpÎÆ,kÍë̯õ}È—b#rݵ¹4|VóÌAô±Òi@rbdü9ã`<öš0–7f‘\2µQö¥ÙâT×üC& YIg£’n s`ø·ðY¤–uÂÎå0v8%Ø$æXy£í”HWƒn6Š72ÌV"Ñ+†“LÖ‚[7Eßšï EBÀ îLÝ®îÖR}ÑìRƒI"›ÎÍ"2˜zCqf1È9”s–4~_Ù´“â’ÙOªÚTìÏôê ¿a¾J5‘ª—ÊH°k4–/1-Àœui®’´¬Z5k9‡úwGÈ—™<] 9<ÙW¸ì¨{’4p…dE‘>e`éV:áoVÙSÅkiw'#· "nþí $${p½ÈC&v¹ÚB²FBÊtÞ——QØž´7R”‰ RÅ$ÑLÑRÌHÇ]dB°Ddi*Ç)2Gb"—X&ãêl#° ÌTNÄjõ,T¯“âqÄ»}”†®ê‰®ŽÃÖz¹Ì¥%V -:@vt¶×¸ƒä³ ]O+^ª5!'K ¸a¤;KDœ¡OŽlçñÌ9Hsƒ•„Û•H"p"ÄJ{3 G§Ê•gye`¾“ÇV8ä•a/,JË(‰í&÷+FE¿”TªC4»Th‹V*sOŠìV̰ư×xåù ÒW’VK=ÕN TùcÄò4…\w éM›Âµ¦ÌÓã<0X^ÜRJDS×`Ì“¥…Y§…çH£¹Ä¤¸åX@âÊŽw*šš´ÒQ!,Cð'yŸ-29:À”é*P q{‘¯?ß)¦XÝbäç#KŤ ë* ‹;(øía Ù¥hÝkKϼÊ_ÒR@£›«¬,#³<Š®]ÑØHÌ'–¼Î ÷ÚG£q–õ*Xé.I‚Ÿåñ߆¶Ì†´Ë¦9CîNV‘$¬I/^ff‘¤‡dA$ÈÒ‰#Yl¨x‡(ß(ìnÁFû€EæXö³ñˆ²#8¶ŽfwW)ù ¸Ï æ1n U2õ(­%%LRHˆ ~d¾Ñ†ZÏß™Y9?íùýcà\6܃öæÆ6RbÓó© 4.<÷ã0¼[2±d›ñFÇ“FՆΑÎÛ tÔ´×wù‰øÉÈàRR@²™c•QD‰rFHU!XÐn\´A¤¯]¿Ê]¹æSdnĤéM{Rÿ3Qì¨øV¯-™¤6 üŠêÛ¤Ò~PŽ2‘øõõòô´ŠëlÉw)gf³Gça‡¡NµBty7y¾öÀ×äw”¢ÚÎÒV†fiDE`wä"7»8Y~•dƳSKƒs‡ÈU^mdŽª*¼&Ò<½¢œ‹È‰7–¢Nö­KÞ­|,!8”?á.NJòÆùœ[#JvR&ÏßX\ wHdf`‰FÔïÿQ»ªº¶OH²%¶\¥VE‘Ü9‚mÜ¿ÝÞR’îg™÷Žï© Xå®°H|ÉÏd%Ô—MHÁpÜw¾4œžl·¥E÷–r˜<=ž0.†é—™ŠIH¬rÌ븉Ç&”«YQ¾¯41"àåã$%Á-ë2ØŽË šÌ ˆGÈÈé$Qȯ,nYý(ìdÑ#ÊFâ•I<ôŸ'É?òôã-Á*˜Ö _r;ƒv;б:Ÿë£°H L!%I#NùùA„² RQkBÐÉ·( RÅ`½(g­c|c#E*°¾…lµr¡I‹•¬ÎXy Ÿlf«N­  T¸ObYøvhÜùÜ 7àó´ß¯6ÞFqýÝÌodÆìWÚVi“¹é"áN@I"€ªBr"¼V8æieŠWQñ¢Ý¦{DEm–³²úÍh¥YVbÒË"WøLa8EY!]¤D‰˜Ê)îß rl±dm%zI•e<²0?<$T‘¹5…-*H͸f“r·§e·(®Ë³ˆÖ­—¢GÅ)õÇý²`¹?ÛwÅ”iU­4Á&$‚"&#´{`x.îAÊœF̬]SñËvG‡ã1?lÙ%vÃØÊ&JòCjEþÂëÜæ…T²2£·áAç/‘-@ýÜ„{Zw ú Ùé6b-ü{¬nò"d.‰Ȇ>㬠ĠS¡ ŒaŠ&Y2&Ë¡sÀèëú’³Ñžœb«CÌ»Øåÿmi‘•Ò¼h÷Jwâ˜5hHBª†g$P¥!H^ÁËO!íšòù”©)!Aj$¤HÍÈwr`߸Ç[¬Œ¯‹MÍ6-;³´±«ˆ yÙÀ–Hâ._eà¯ËCZʉmDû·%“ŒQ"GeH·î@kÇ*™!ݘSI‚ØKÐdOÆ1€E“¤Ùg-ÊcÝy¢)x² =mʈæ›uX«ÚíäA3¦#¨4½½;-j×lÇ+Û§ÞC'âœûÉ OÉ#LÅ©Çò†2µ‘&ǩЯ”©Q©hÖ_úC´î0Úö¾tk„-+ÑK³Ÿo"üpSĺÈZI*»±F;°ï Õ–íöq„ ér;zóɤq—}¤Q‹*K+âVhZl²sB&š’»>y d]–hZ1ï»M³ÿpŠ5*—!€¯Å—xžX†â”lR8×x²ÈAõ’êé»îˆˆdCÉ¡DHäd3÷vyk× ¨¶'åU¾Ë^)JSÖÃL9¸å¬cèfÓŒé:`mbCð^Ì8Æ$—¶èüåܪʮ²™˜2  ‰Iäh¿äd&&¬fUùæ®Èx”1Œ}ãš8Ls P°Æµnû'iX´´çåc!Ƨ8Ý2¬ÍÅ% îD“hà»Ñ½Nb>ô*7z*JPä. rÌ¡µ‰¸G´Ï,g¹Ä /(ä “˜ÁºÏ+†HªÀ‹*¨(‘aƒ û’Y§Æ"Ir,‘¸0bÆ_ïļa3ƒ,ˆ&YŸ¶`oIAÇ*²]D©Œ™b“Н#‡S/9vŽ;31iJ–VäI¤@Ц$uç#"ìÕØ‘v-¬M/?¨iýPV±f•ºˆ+Ïf29&8„QI ˆPFÁ­i"¸ÁcM_$¶2¸z]Ÿí{8ö  F²²ÇÈžÀet2/t鲤Kî‘8ŒñW˜É…(T(×à Òqn™Æ¤RÌ©#JV\¦a½3rGrþq (BÅr˱ «[”n3:46du‹œb70dd*l«%‡Æ¸ÊÙúò½iIã‹Ú]N⻤LÝÔø¬•`<íÓ´Ò òŠüOW¥Y°üÆ=EÁwxûf&âïQ)“uj€šU£ÚÃ3W¥š€²™lÔtFfiÙ$ $ï÷¼nlg‘£nbƒ±}I"ûG"l{™Í=wNÚ†…Ó –h"– "@°í) +¶ÜÌDíYŠ-jäpH¿o\«)nh²$, rVxÀíÈFãC%!³;7ɯkñÕ MÛm”Í"€ªsM½$@h>‘bd†‡³;6JhQJÒBÁõ\±Þ îq³[#p†Š+«ÆîÈ¥‰".ʬQ–uhÚRc #ʘšŒ¶&¦5fte­¤D.BÆÊc é5¥YaRZ%Xy½†«¤”ªTدp,öeøÄ…àô6C?÷©X©´.j¼SºÆÑ»F–%ŽjÑÆÐq22†§5x¬)³óòcÔn“禕ä•é8оó“#$Ñvå2Y™7Žì¤÷.Ôü•\f]lšVBÕL(©ÃAy‰?ñl[Nu éMB _—pÆ»Ôfý—Ényå}¦™ÌÒùvV~ÄÝ‘ÞȼG·‚+8EV»6¥$ŒÍ+i„^j脼0˜²lßüáIšÔªÀ]|Ö™¹§®ÅŽºªóI^­¸R‘ä"ykÖ‰g”'†H[ø¢U«câe‹ fYafâˆÔDU¥UŠ8Ë+ EG“‘nâ,p4¿W˜SûÇ_c·­TÖ…¥%t°bú„w¿8ÎR´¤ºK«UÁ†;›=öfc‡„ñ¨n2Ḛ́dUvȨÁ v9£–5 (å&ŒTÇ’Ø—BòÆÇÌ[§..I( †Ž͵u1¶æ½[ÿѬKØ¥}9ÛsH¯¦¥Y ö‚JKË v–²™KKïBk*´fXáÚY(ž¹LŽÿ"#ëÑF\4€0Fíº±p"–W—bÖ»ÊkL¡óñ0´\ƒ›@7Öó²È!‘Hã„"ûãâfnÃÝ¥˜ùõÚ^—js)—8í?ä†Ä³pQÆ Ñ’H¦ÌÈË,# ½¨e‘}b5ò‰R’¥S Ie:A$°H¼ îÏ(¥˜ZRP…©4¶íf†™äâ ™kË"ÇëB Bìñ©Vv`æíâI²¼Œ£VÅ/yÕg;)•ƒ–½tA%fyÍhÕ(A+XZp¦ZŠÉqfánGJ ‘70Ïwe›¿‹w•îÒqæ;`’Ñö•;`ñAQcH#‘>WlÎÅý.šj6”’«låù^bÝÈÀCYMËM`–’ÍbÐn‡m œÎD‡%ô‡$¶à{óaÎ_4’íP\†æ\°#Älø€Mfw’Ie‘§›••Ørów8pÙ–9 ÀÇŒ ÊóqYÊÈF”Œ ‘cNÔ §ï*B¯Ýä‘wxD€É™®D·¥å·[7†»§®5‘aá‚V!»š±²ø(ÑN²œXQÚÆ÷¾Ï^Êræ#î§usø¤Üº´H ¿9Á`Cö^FØ$H¶™1ñ¸¨ÖƒMIJé€AE˜–°€‘Æu‚’P¿˜,KØÜ?ýÙºu2TÒVkÖ2n‹ŒW}ÔI“„UÎÈåÚlŒ¢Ïâ’&zm ÈÊ"kdIZ©‡—´–b3\›KáS¥›Z•¥¥‚ƒü¿)bÞÝÎø…¾ráV‚kögŽE2–ù’[f?"@Ë!”•ã•–@˜éVLYå½i½´/ åY¤ú̪•œ†&HT4­?‰*/ ‚n7{©SL§Oóx¼t÷ì¬2CJ%y –ÄÎXáfJ¦8 ) :´±°Iç Êö¹Ãc„9Ø4‘î¦c"Ët–HgdÛ›…à2 âÂ1¦@ä=_—^Z¢^вŠd; ÚÓä½ãU§]%?(ͨËf༣Î<ö”4¥šFrÎ6Y$׌ÛpcàØ¡·&°¤‘Ù ‘üŠ£b‘÷9c@Qy1 ã” 1)$­*}ë<³lפ_M|eR2J·ÇQÙE†44¯á“ÂdëW“oâ§ ·ËÂÕÕs 1fX«DÛwæ«JHM¥œGbW CöØ|­‚ÈóÔDp²ñ³ùa:‹€%Q±û,[{qˆ©j$‰N儘ßo®ù±Ç»¡0Ë‰Ö ÆÜWòò’8”1á· ¸iÙªÄÝRÌ…h¥Utb$Že.bc F“Âüe¤"ç$¤ÉCí:X²…£¨ü}›¤9FfJ¨8ù˜·#ò§ÈíL9GÚe18Ù¦W˜ st¢í:Öl¶V¸Jµä´ÔŸäHa§#ì³~JÈ‚ž^o-"k;ö#Œ¶ehJ’…«2ˆÌð-ü7’xwƒx”øJÍä@B–¡¥IôC‹¤p,Ov|A|Ê”°¢C%L¡’CË’ÞKÇlÿ‘íq)4¥åï÷7bÌÓw´h¬YŠªÇÝ )k(¤“! žn€JFX$¼Pˆf+£nÐq Áž9†í[¸½Ü¤C·zDo¨ÞénN;wçÊÑcV”ó¼Iµã"§;ýUNÃ(ùVRbÆØReI×Áåéí kQÕ·jµ Ž Mã‘÷å1Æó³4lŽÅ€¸I‘¤¢ñDUŠNo§ü2°¡¤­ !f{D›]Î[5­(РH ¥Þl±7bV-‰¹(]Èr"=€Î ¿"kGð$Û† Á^Øt‘®ö£–‘ö„G`crUy–xÚ¾ÆE­Ü$Ø®¿ÔËdÇ“‰c­$݇ü"É«e¨¨ÙãWør–XÒ#ÅŠ¬ª²)m£̬çwäHŠ}Bµ–}7yjÙµó=JöÂ×vˆÃîõÕÜÈRE± Ñ¥ãædxÆÑ…• ÎFªôQQRËB;×òøŠèf©£UDpJ‡ˆ› ¬lržÖîêò²0f‘ÄJ³©” æYÈ0M(Œƒ'µšAô†ž¦Í*´Ãã2v‘[”„÷Xw"I™ÙhM¹’ìܨ]d€Æ FœA(-Â(”rB"]œ”ˆÕ_Å›¼÷?mä˜öÎÃk…[÷êUŠwIïX ¤NkÜšTŠ~ñR>D…½2žÔ‘ºÏñ¹]JøHJ‹”TZ J/@xâqBEU+JnX O¦ ûÏfleoFeÆàD™ÑY b{ì’4;IJnbÂØ¬e£‘}k¥ØZ5„Ld%v/Ü%ÜËܰ$ì.PØMåÂèþ‰2tƒ&¬xåivƒäõe²D;3É´¼XÆ®`;-ˆ×»o½(Üð®ô÷'Fü­›´Ltª‹,±,Èêaòñ¤ÎX¤Ñ§Ú;IàMtTƒës=9E‚ÁQ Òì6›H3ÉfÆ•eóh”¨`¹Úï&÷Û~"/ ‡úy%r¥•,lQ¢DûÆÅ»XމVeç^Å>uÜá¼2J«KR ²ò¬(nÒ+˜ÄË^Q²ÓbëfyKV¹Æ0=w°z*Þ ¥òà³N[VìÍ]÷Þ0'I EUûäÅSèÕoÅòŒŽ®Ñ°év`É'o#P3wÙ‰ÙÃÊTò–âÒÈ¿Žìª“nUû‚-5²IQJÖ— õ0sk{o†M Ú’”«J€ÒÆ%„NÏ7iÄYƒ6óHò€®¬Ó¶íÀÀ7@çwd1a #ºŸJ¡Œ:YUdã,áRE"b+"o+°%æ†2ÓfâXï°´E½?œÀI‚È m¹bšV†´$˜“yù­eA)eyâeaR"ÅlxŽë° D’Ì¡d dPy"DëMÉ!öW†5›ñ-©74¬”ÇýbµSÖšei6"f3ä‹Ù¯Œ«+I)Põ^Æ™$ÌnG%Û§¨’"ƒ$’HÊउ'å@U7‰å ¿fÃöë¬ÊÓ)!±$ B;¡Þ'hî¬=·ˆÏ0æZÕÚËýëj½äVjŠÀh9±<£oì`U弉ñÏ.Ô|÷yè$þ±[b¤´¨@n'v˜žbA)–f¢îräÖ LÖX,vêZ!ßRA $AfÚ&-Í™¶Äu¨€A‚ÆCp~ÃîXã³ó’# ŠicVï ©‰AžÁ’´l„%UlÄA‡xÞ£Éåm¼Ù%Yd‘®Ù˜Hǹ,„Êc 7錈v=²‡1ÐÄ6 õtqív”âl%TÃwQcS*¶Àî´OYèBäÊccDÌÀƲ!Ó,ÉÊz$4l{ ă'=ÕD€í»Ýá³Õ“ë_Šþ±®¶E P¨´¤²Hpaœ7í~q¥|ÊÒM*ÒC§ÕpÐÀ,Î!¾€ÂÚZö"Vk3F¨¤)ÙenÏÄ‘ŠÀ²ÅÜsV}þ>´”ì´‘ÈånÕÂFŒ£ÄÁa—ŠÆdbÊÊÁ FÓ³ kîmÇ2¬‘ȵ€^>êãíÍ’¬ÂÉ]Èš;@ŠJä*ÈÌ ‘lQ·Xžü…d®Ã×¼±0Ù€˜§=–@î[&rLm(@QoJª-VaMTÍ/Zš5’‚é'RX0ì'±†ÅU5!L]+Iú—›}]ã vcþ‹;¯œrª#žF•f§ÌH[Œb(Àg£ «XwcÐØØ3< §p…N.€’Yg‰‡ÆƒG4ê%‘1A›îM¤k ÕUÂ`6BPÇ™+`µÖr‘`‘³™R—Ì*éÞ­6óËøÇcôò‘Ã`å±ô¶ $o "¼JÆGMâ™Îß•âã¬LÑŠ’©SH –úŠÏ}GÇë.ÛàÆ@ŸŒ CƒM,û ÀwûbZ’D6$¯Ûÿ¥¾ûÿ®ÜÿçŸþ k °ÄE!XšD%mŽÃ’Ÿ®à0R ±ãŽåwbx’§ÇýÇr} ú¤xÅ…>A¦Ér1Æ!®®7'‹E213*žóÆ«“žä:{ Õ dfðÀ›ž{N0g}9z–v³È¶à]á»Åñ$Ð{®™¨¿Ü½Ûh¨Ï\ 0,Ü#$a¿Ù .v߈;ÍnÜD£ãËÃýV6$lÜU9±ÙT ÜxÞ HÿkÓPæK ö*cª¼FÇw;Ýû`$†>¦AYJªpK°!£AÀ¢ïăãm—js`õˆÿî*láÏ‘vl]@KQw@€>ïã¾î¢ñ]“ìw ÅÉFÛõljâäöÿǬ(‰˜ŸòÍþG%R?µÁe*òQGr»øÀ+mÖ8ØmÛwlH,ÛÈñRÿH~½-%Ucú …Ü܉”þ—»ùV#üùõ™ÃZy]¾±z’F壨síòõV´ÇRæR&p~y—‘•÷‰´å6cìe¡‡÷Á´o4m'ªçìÕ“ÿX~ý!í2Éöîµhk+$.¥$RGÚy%$ƒÆU›ƒ+y©ÕŽÕÔ¹“Ùwf¼‰Udu­ ›Y€žÂÆc‘ªÊV³FËš Ï`U«Ù®ÿúÎ÷í°U‡·í×`»7Øô™v6YÙó·‡ßëôz+ÔGýL—p¤1yž"ÿaÎtÝ'5™î–ÒpAÖþ±¨›“ý§fU;ä²'$rPv€6ÛoÙØ£Ÿ$m×f$/Ô±>Ø üÀUßr@ä=)Âyæ]¶bI;@A䩆ë¾ÿR@²›¼×f>8ûA!˜øð<¨Ý÷­Æþ=Vć$‹û>ÿ¿s‚ì s³·ŸµãÛlaûîüоÊO¾ä*HúîOì¶þ”{híº£’ÚBçˆÝ¶Øp»÷ƒàn6ÛÖ<òâ§cÈ·'ˆØì7`yŸò6ñçm·ÛÒ{@]ÕJˆeåÿØ x`ÿÏð»lG¨%”© ×iûî{ï„Ì\&åöÇÆmûáÿPw-qÐ1¹‘cŠ/ÿv’|‰wŒÂ-Þ;š¤ñª;‘H}YY à  º`©<¨ã2­yg†4åòƒ²„픋v>+ž‡hßÞçú†~)–Uê/·äYÓ€‰Âû]éÑ}ƒ[jÓJ"ŠAñBÉo~ü`Øë,Áöxe¯že1g§[ZKYb²˜­Kˆ9h£Go)‰ËäëÍ%hà ŠºóÃ$yªH…+BÀüZÕÂA^¼KM §]#ެmsˆ”×ä…*YqݲÊjÍÁfS-š£T)Uõ†*ZVI’D7f3i"Ø®½z)úi% $2€ÒÉ‚4¹€Ï|º] ‹Ÿ²%‘Í9X'2åC:"˺Í(Ø!¾OnhÜA°xÁõXµŸ[=ÎaýÓáúo…ÏôâÎ#XëÌÎÁôSOiq­õN’èÝK©ºŽ¨u —j-”«Õ+¸ >—ç$\f[Hj 2µéÛÌf§ÈÕ´}-b3–œK±ù¬Ül³FÜXÜIœ~F<u+a <‡®.Šö£ ô/TµWWt¾¶ë^?9®µÍ®¥k]6½Eè=[ª.bëaâ—;§åÓ†ÕüN7G‹Óø©sM_ŒÆP£E¡­\¤€zê+/4‘L)£QIH Eœ‹‹³´nÇzA@ ¢t‰:\\ ÞÄAk~xª˜-{ïÞþ ëNJëÞ‡õ ³˜.•P×ΟA¡±Õ:–ö,Úê]½+ŒÇ[–~¤Úé†*°“hø¾4ùž¡&G[á㥘‹4ß¼OsúÓ¢çXâ³Z Cº§ÕMÔ]_¥-SÕ¼î+DTéhL}ÿjPv²Ú[Qk ¯SrV5ãa¯Y§¥ôn“ÅeðrM\RJ¿@®ûTéE¾•Ùé#]â0‡¨¹>²c5~#Z_§ÔÝ=Õ̾zþ§µÔÜ´J’I[VÇžÊd/Gjö:õ&&ŽÍ T¨Ê?`]Ä—ÒÚïÜ.ˆê’g5^RuëHõrL_[:“{_ÔÑ•5….¢j©ôÝü6¢Æç*tϧ5Jú_qÑè?üLØóó| ¡›$„…–H‚D9,$Û´´9PºÐK‹ÏÍ¿ÈÒq.Àkü¯UúÐ^­å(`ñ™§tÛBu -GMdåÍiŠ o¤p:ŠlvPYHîäpÔìå$«„Ì#›)Uk½…At¨âªKÉD‘°Ù‚„qÝðžXýíX ±î>@,ôJÌè=Ónžôã§Z#SOhÞŸ`q#Dá+KjÀÁé-‚Çàôþ&œÖa-\n^‹üÇ’y«WŠÄeç—¡§u–¨g#¸¡‹È_‹3mYHûeƹÚK¬{6‚©õè= ä©…bT]ÝÆÆv |rÝOIÌ+OÈ!À‡<ö¶ -FþZ÷-¥÷2+I''±-¹ˆxÒKDðÉ!Šh€jÓìv‘œýR%!˜òäOäò’¾¤€K'þ6oUÿ¤óå.2ƒ÷Æw\4Ì’—ê£á öX„„M •\d¬ð.éouinl Ùà9vòø#Óôœ²Kxs}\œ :º’½<2©+½;:˜÷ð•Ÿþ¥ÄüÐÆ£"&ߊ6ÄÊ5æér I¥U$îCiU…hYdª…£ªÁÕÖJ’‘J^4ú/¡‡U%w¥‚ŽL¿ÊH[iøJ¡‘]«¦Ýµp§z}¢’#%`yÈ¾Š¸¾‹h…b¦…-…9'zÒV5 NK;O,Gû¡yÀ–H¸»í+‘êŠÄŒ–ZàÔ!¤³‰$ó0÷Ž^tÂ?Z\„'Å’o¼1#ÞC2Þ2¨ÊíÚ—Žè$æJ1 ØbC”_¨Œž2xS±m½Tk&ȹe€ÈöâœLêK6¬! ÂR;ÖD<@ÜOÿQ«qå’©ÊÉ=Èøú!Ñ@ÕZd%9.L½û¿/¶2õ0’”0I¨Í¬-yØ33±Â¢ÚwA]Ff,d1˜û¡Cºî(LËÒªV³¥‡+êk½AèWBµ?TzuÓœ_RóZV†;!‘Åæu…m#ŠÃiö³N¦[TÜšÅ{óâ+NÖ¿Û¸§­—ɺÇ;QÈàúØ›¼èdXfnF4R’4d¢™l8“”QÝ'¶ôâ8üèXΡôÿÕ®”êÞ˜ê{7W®´»éÜͼ\ÑÁzw¤ò5xÜ$êõnÊQ#m¶>›¯k(¦)¸PÔÖtßKî'r1‘¤ª RAO¤™7«mŘ}#ÏÜ÷UýÈtÃ% (t_ÐGo«Z—Mt×§zS¨õº·&¬Ëõ#_Qj K–³cDÙ‹éÞ†éîÌu'QÛœ¦R ?£õdQ¼ù ¸J²‰nûÀëö“÷/…è¥éI•×±uç)¡zs„ÔZÖ=WItëùGèî¬Ôºó3V—^Éu®˜ÛShLÓj}3_='m5¨,»˜é~žÏõ_@õví­Hú‡¦:/¨š/La—,cÒkQ²:ÞwQd0"ŽÖª¡OEUÁiüçʆlNQë\X†Xu å*ÞSý?úoËämgú¯î)¤ªj¾©k¾tò×S§—Nt“¨}c§«©ê­oÓëÓâ§Ô¸Ìž¦ºÖ5:kVÎfÍŸSÔY(1q΂‚Ðã֌νi5ÁmQ ÈoW mÎ:.€†B@˜¸fä Iœu½ºõó©ÝQê'P´»¥Ò<âé-Õ9M]Ð¼Ž­Ìim«3×#§?GõVcTOo¨u•J­ËCÑ×-S‚ž)_9²Ò€t’´­°HËH}Æ]&íB’$iŸ³YãÒ ¯ðƒv"D‡ÛŸ¶ê>Ùpvtæ«Ýh׺F¾š©„Áé.¦g´¦KOi‘uŸùl,gGéw‹5X¥3”½%ÛY3fÕ«N÷,Ia£ÕäeᛉHÒƒÇ@¥‚ðp&J¢d“áBÄØ¡vSbáøÓF}uéÁP"¹¬ïé.K°`éwv»\‰vK0®PUL¤$%È>’O§kHŽÞ1³n'¯Ú#‹X¦¬¹^ê™y’Yx«ÜoÉ‘BaAAêÝð•ëÄ_tâÕ1nÁ6Px‹'èIÿoÿWª‘’&¬@U°„2 †ï§È,£pËÏÅ×™)/}[Ú³™`NÒ¡TŽ 6 $jYÜ Ÿy7ðVûÖB7ñêΰtª‹C¨ÂDCxo|G¥$Tøµ€:c‡‚cßWa‘ñ·E ³Jë¼o OcZf(ÕY'N$#EÚmÌKýþý(4Y­ÒDhïV+»3Gº &BT²Ç°ìÀ;|8¹,ûŸE[’ȵ.<ÎÑñ©cvI!¶ŠErl0Þ¨nfu¶ŠÒ…Ý<Œ:U²ÔÌ«vجñvÈgà "$<·)&h¤% p#Ðê•Ìü‘ôqwð-?FÆúšNb (“³7ÞÓ€Ä~ÿ`%Œ“‘vr~àD²•Ü”®ÛŸ'`UÑ¿’ÄvFÍ@†íȰwVH‹_ûq¥–ÈóxìpI$*­ÀÈPý¾ÿUäwÜ·ÂòU;—U§q“ÃÌ‘7œiE­,ŒÒ vŽÑWþÉ%*âÆHŠú$‘ϰ©ötÑÿX€ °S’ 2Hw‰ƒïˆçeê3?¤®C‘p :¸-ÌàBÑ0æò/fc"Ìq2–]£;Jyn&óÞój ¬Žä®êÌòLE ó³Eäí ¶E}ÃJ[âKIžô[úÙ3ð,BHcóyv-Ûvu˜+–è.¶æ´„Óx°ßÍ:E‰%™ ÿÒ퀢Ts°» ²8/Q›–6sFQñ‹úëA Ì–¸ÂÏÉ™ÚÇá;ßÙßg–É›d@¡™L0”xË2?q™áu'y;`7Ò1ïXâk[ð7,B–T«R.ìî€ L›N^GG€–Møa—y`3±fG$$J¼–vÏ$“ÉØ â&‘÷’Çm—¤~ÝY$í3$)#o v’Á¸SõšR 0Óž2É‘ ½EqÃ’#³oÉð'úš`Ë–0;÷ |zDޏ»É+4I”ev”î"g‚¸f5ã<¡1 Y$’¶ËüèÈ[; “¯ýèk]Òïyë!Ñ[X ç¶<Þ‹Âim)ÌYÊͯ«k=-€Ô´õ.oý§NíÌ>4ÖÍMr‹aõ?Nõ.;­³ú¦çBN8þ/©+Ô²z#7¬eÐ:J÷QäÄ`ïÅ©ó5ó™¨cÆås²Ø¨³¡KÐàîGÜ¹Õ 0@üpÒ Ã4 fÙ€ì|Y.«Ö–-CÕÒ:“V‘Ô—2ñ‘£%ãm¸£»cã<î&ïËtÛК2Tá–Dde<–S?nÃÇ3©Vßµ<í 'nÈþ¨´˜æþµA%ªØ-›¢%ˆls*¨›ŒKR¯ÕþHbFâ&ÈHÍb$ä®Íèh’dä‰Á]á!â1,¡^û@„¯'¦§)‘3.Dd¯®û§¸ÉÑy:d ‹¿ÝØcηâjÈå;<ÞÀq'{`ßÒÈK`ny^A”í¾Äv×hBT“$uø}ãsvÞ@Xmè¦ñÍÅxÈJ†_ú`1 <0,~Ço3lFä¦àzt²f|€(ñ´¹g Ý*K^¹-,È9O)ÝL·víO!v‹ñ²ú(¼»;)Dâ)*ÛÀú‡}Š©ó¶Çõ¾À3Ä~*¨6¢~¶óÁ˜=Îejd;”·€‘‡Å{êŸùª‰|‡"xƒåU€Mʸqý¾û@ÜÀ†þ¹ ôfëÿýBÑàw³Æ:<£~“) !Ác#ÃÎpÎ:™Šm•Y¿ŒC'ì¦ñ¶Ê\ž=ÉFåkÆ7²žX©ßÑ ‡âJ)ý}†ãôã÷àFþ7ßcè7Ÿgn¦aƒåñr^D†8Ûœ‹‚óÝ¥²ã¹ÞaÝFMÃø^`)‹¹ J“¶üIÿë¿SÍQ•,ßÊfúy‘ì0ÙYUpQÍ6¿¹·¶“Ή `h”HTr£ Ö¸ˆ‚™UL‡´Õb2#r@7=ÉãQË’Ýbè_oúñ!¨¿ÔW àú´:Ü:é\ñÜ…4€b¥QŠ5ÃnäoÀ `èy#&(ÿ$«µ^äœ2K'k}Ø a¶õ’6Ûp>»ÑC»÷7Šç×Ez7ýšÜ|P,íéK“ÎÞøÕ T–nÓ¤ïàswPlа¶Û€Ay¶ŠU 7ÌªÏøÖ"yç Nd‡sÓÆrxÖÙ{Ÿ:ªÿjNdnâq!Éí<ˆ7ìÙRb­ŠÒï:zç³—‹š*÷ ã0 ¢I™ÓgŠ4–56­•ÿ•Ú dh¤f¸ÕA• ‘£[u÷XÆŠâdï *8¹uݱˆ1Âé'¸G¢•Ó¨ÂÈS°}»›™¸€5 ÿä¼³;K{q·yØñmÇù¡›ÎÞ<Ÿ;yÜî óäós'|FP2q—ØìÆ4d4æV%†ìƒ`IeߊîT¶õÒm‹¿Cüïà>àî¼Ð$öÛrG®f\³bò€‰XÿyvB¡‹|YB,lÜW‘ä7?^[rñÈ9ù©pX,[ÿ+»3sõÇT°Ÿ†¢zy÷þ£vbÀ~X€ô¹Qq¹EG݉w;¾Ãã+/¼Øÿ¨vßÑ9Ì~XºxSËöU<ùßÆË¹â@ç}öÛÀË¥ >#!Åœ­Éè Â Þ9:´ £@ Ê|BñØ [1hX%‹K7wå¢Íáç£?ÁæØöÄäüíØÓ˜n"Ü´œœ…í÷?M€'Ô+¥hÿÄd€Ûù08ð^[ 5”/É…„8¡x-WûBIœjDtÀgñü6Wf’f†=×9c,È¢@FÆDS$hÌë÷ ¼'¥là ’G Ïù@ï´Àü:ì{Õ†ËJS¿ý1¸µÿº;4ÄÓ?ôuÿÍG;Îñ†ƒœK·È¢—ÞÖk‹˜ñ°œRpK¥Jù !‚Ÿ#cýÞOÿY=:”¯þ⌆ L B¥L¢{:ðbƒår"*µäŽÍpmFûÿ´w'ÇéG“¾Û*vøÜ¸#c¿ 'T=E+ÈEˆG+(þ¿ !îrÜiT­Xc'k;Ü?Ä ÛÒœfѦ=*kX_Žø¯¨‡Ë¸P ¡¿tÝ›¹‚øóe;+þ>Dð$¶üÏ à?'RW’ùšø`x‘ésÔ}ÀrxÀ‘¿>¨´¯ØødŒ±XSÈ¥¿Ä±¹˜mÄ%¶,ݲä³³?Ì…XÂÇÌu^tçßãŽ>»pƒ¨p,Uù¶W’.îÄèZ6,8¬.qó"UȾÍ\ƒÒæò+Me·ùH³"d`&\6™$|á†÷{Éå¸Å¢nL >|ìÎG.Dxý°?£ËpAñê©@]?›W;·ñö¶o¬€qŒø±cþKÛ¾ÞFÞ¦ÒcbFÊ}|–ÛÈìùGþ|Õ¦Àf£© ´ŒQ7ˆüo±'è9þÇ×+–ÖIZ w€'™çôÇIX¤SX$0Aæ »Ï·nî?ÓBNfdN/œG¼…“j°SŽE¬@Ü’w™\_ìôB#‘J! ßeÙ¿[Ž,‘¿€gÿ‘èqÓPƒ3¨FfÊ[æÅY"ˆ n6 ¶>«ÞHÇg¸B8Ü€b{Œ<±ý6Û¶çˆ]‰f °>Fàùå°ÑœHš§Qp° r@±{û–Ÿ«+¤P¦#å,û´ž[žøuBZÇP¿t¯ÃÔä§›/l‰»Êbt­#(YãBmM¸š±^ËzG0w~»Œƒ©r—ûJ°;Ã5¤CX‰5W$onèƒÔÈXêã¦Øü{Ĭ{afC?h÷6*®Œw[nu»/˾ Þ¹' †'R>&H«·uƒ†ì¯a®¶?43Ò½"ذEI·^Ÿ"Ç)Cc \9Ç ÆD~—æóGþ¢¨ÛT‘!™.]ŒÀˆØ‘X³+žóC"‰(¿ý#݈‰çv"A\DŽóX$Ö˜¶Û´;•äafs¹#ˆ¸V.ݘ›`{{ñÄɵ‘¸>Z‘v™'—’HXI'æ,®D¥ÀúÇù‹ññê;±ôpÿˆ ðïÅÙƒ;©0Ä ùæèçà©ù4Q^ßÃ}@¸h»7—g~Î3‚H%§‹O?pàÛ}oãi;“¤f刯ÛhëF‚)&• €¿Øï¼„óidñòåi&‡dš-ŸÃëöÌä+c Âñ²ÂFÉá¦-ò?·Ì;‰ÇK§4aµ£²ÜÉ6¯ÚŠIjË$SFMzèdŠÀEŸˆW‰PSŠTòk¾ý,oO1x{˜»•lZ3ã Ò<ñ2Å-Ã<œÂÛ~‹U7 µã?gÝÎçnb·áÍl×Ūë? BSòÿSCÚó8è¨ ÆŽ_AH§¤jÐCì÷µÍÃb ÔÉc€hÒ."³6åÐpkV”XnK ©“y#™„o´J}Aù wA÷;1½DŒóUa*¼ x¬ˆà|˜‰áIÂX„2 ýLz™ÇPıHBËŠ¨IÔ1Ïm¤hŽ 9ŠB³ jZÂU@gUõ0‚$~Hâ -($î Y&PÊV?{ ÊÜU€ôs&ß„£`JvC›v{÷bH|ÚGâ*(‹¨Žý¦êâ8wÇ{ è1‡Ûï˜åÊ.&7k4Aw°Hùà Óé‘„vå±õc4à)„ EX£ÄRe*¡cQÛEPˆO$Uáô‰0¨XÎæ?UÎü*ølŽÁÊÉ—n-;­Š¡™¢ ð+Ý+÷¨À¼^ƒc´ôeðöä1Xø¶q³)íDÌÞH.3rsýàØ1`u"‡ódÝõ¸nÃ|éãùË*þµŸó°ø+F¬£žûïÆ>߆ oãü‚»ïãö<üIïFæUCÿôâÌìcàÀ}#È>w$ø>°•`C™É ¼|ü0V¹ÿ+çõàJÜ!’AÍy‡ Ä¡C·è»‡}Ïþ6Üzç”$êqØsµÿg –ÂCËô4eÿ|•gwòKlyßÇ%>G” bWH‹xràÇÄAFÞTAÜnóé ÙTû LfG%˜f*@ÿ%y凯4(ÃÇÛ÷¶Ä’G/)Ìø#ÿ$ÛoîÿÂfQx 9âÿÜaIgàq¾ ŠÁåGu‹ržw]ȼ¯Ÿ±m`yoËbýS™,!æ m=åym´± éÇ“1JÅnÓír$,vuô[XÕWÿÖ³–]”r ªBîvP &çb@$QUšøuA»¼·PžØrÊ#€™š«mêÅØïõ¯§õt†Ïo§°.ÓŒYöø ,†±í66ï´â]Óð–¤Áy‘5°¼Ó†Çš²¿>7!¶”ù”ŽæÜXo*YD½µeÛº[´àîK„vãØï¶îƒn@‘éêö­Ë +5¦‰h÷  o+sF6äê­ø×Âê\°2ñuhÉ›‘y €W€b€w“öØš³ þ"°&ËYR¼þ±‹rÀ|V,‘;ð>ßß 2:’# +B“?@e wÿ´1Ü¿Ïïo>=ÞN ñ` K7ƒän<îíį˜©R~Òc˜—xÞ4èÀ•`Ž«Àv$•îÞA­É’‘˜ÓemʨÜsòwP¬¦®ªÌÈìAŽpTÌ@j@öd¨<!g’AÜÉR5å«ýArk—´úÓ÷Õ%ZL_·YeŒ8tâ¤P˜€&E‡¶ ÇÞ+$‹öbwòc©úåHæÑ¹/¾Ü`OOKf³ ‰I—i 62G8úz»ApÀî6å›Îäî?A` ‰ÿ>³þ8îSö7$vÊB·ÆÅwÜã°ÜzÇÜÛ³Ç/ûˆ#p>¼¶½øþ‘ Ì o1î<ïäònAý}‰ö¨ŸÞÀ ï°לÀ— ìŸØÂO!á f+²©;¨$ì#áAÿÆÛƒûñëÂ-),õßÿ$þ·Ûì[aþÀ~½x’¡Ê¢° ·÷~ƒ‚Çÿ~†çÈÛf݈ۃ¢Ÿ%·g ¹;ì¤),“ýß @ÿϤ ÇïÚØp^~}ññ«D$KïoýCÙ¹#õ BÂI`‚=­tp0‹q5iaZí<-ý]¹7XâìcûÒÙ†à‘¢ª;ÊÎÇx'ÝË¢òMŒªÑ´Ñ.ý¬ƒM \«J¦RªÏ¡Þ1ïoýCVUˆïÔ~‚?&mš(ϵގ_éÉìW3${ÓþJ2ºFŠ+^gõe\¼¬ïÀ«JZ HÕÙXx¼‚ˆØ¾ÖE?9™xïë¿è¡òXeå'»Ÿ¬ˆÇ)ÔȪ»«Jd<Ó8x†c–0wŽ8#Anˆ’š¼¬#‰LÚ_‹f´*­¨n–B´É%jêûLÙ,{ÆÎ[`–>Ñ«WiÇùZHн3«zj:Ò!Ž~SdˆG:ÊfþÞä¿"Ÿ»øÄj¹5ÿ—þM+,|ý G¸1¸S&5Ub±Æ'/< „P3£à]‰»¸aȼ!˜‡!‰•ƒ—co| u8qýÀý!±½›tùM4-$°/z¼’«JyFÐGòC7}ü¸»eÑ«^"96;ëÊ0’93·•å.Ø…8N ®d”p´éÝ•ŒEÝá¨ŸÓøLÜíÓN‚$d%‰äYäU]¥2¹xäieg pEôÈBMŠÏˆ°·LµK˜×³[œÒ•%Žý7•,°H#3ÊýEU®ßŽ¥ºXÚ¶zÍV¦Q*²©ü@ÄêÒHL³‚^xÚq¦•:äQøŠC–q,x7wPLmõb& frªÌ!iI±8pj¯ ê!Ü“ÄʤI@rÛ×-£³:nç½Cfi D¯,6âî·ÝÞ.e§¶2½ç[yØŒÐYŽ¼Ð Há‡u‰¡fY ð*ñˆãxc§,ÛÈ›•ªáŒxvü oëU#EI Ó{¥‚AŽÙŒµTªær¦ôþ€=÷|uèݽMû´¬ÛªÖdŒ3UX„òœY«¡Tw˜¼FzP¼‚ ­8€¾LÈ‹.ûjM@“ù‹{·9B 6FŽÞâf6Z yÏ ‚ŽpjC Òv¥FõÒƒ§º¡àŽÔ4«ðÇf¼mfIäCxc ö÷«)WkÀp³·y]¢V*É$«àè.)“¤‚ÌàI’ÂMßIÌ>&°ÎÅCý·‘<ìîØåSŸ™Z³g/":‰ ²G2ïB²~7†V 9SiWˆ¼Ï Û×Ykši¦†Et’i$ÙâMå›y¹ç_’ì^×ýZ¶Ÿ±Y i6Y„½6Ô繘ÈUsMó±e{KuÜÄ÷¸,@VíeI4Ü,À# WÔ.Zç¼Ñ˜LNõÄÛÏö˜–b Ÿ ªOkì(ÉTåÞÛÐü)/@Òv!ÃX°X3ô´*šÁ㕟”™Á&Hhn Ÿl<ÓE¿%HÕÌ\4H]Géꪰ ƒ‰»Cs é”,YÙ‚ [¨–(ã\Íàh±5vq°,``Ä(Ý\î¹FÔãIõFȬœx,Q©<¤XÝYËBüÚMþ!f+‹i‚Ù°Í5Kå`tv›Å 5xGÆC762©±‘3Ç4ŽÛ|~à;ü¶j&a¸ôõÕ– ±C—Ó¬Þ° Kí,â\â4EROÁ×ß@<ÇË,þA'GXê"3ž¿‘V2ѵ`x‰KÂÌÕÈ Ò(’Œ“)J‡z™™ ¸ô:ËQÉýLZ‚`¯$³á#y"°ò¹¯Æ*¥‡#ÙÞ½Ò‚$5]›Ó²tëWJ–1,T$™\l÷@äf….©jÐh²u#?ó$Uµ<°ÊYphX’;.Žeå=üi"Äk³‰$´†[®›ö­9íZ¢Vº$¶#sôÐ\+/Å’ÂÍa÷=ܾ/ÿ­$*–ƒóröìí¶4eÖ:—°ÑÍžºfˆ?®ý¥'º¦ÀS2FÛ[ˆ·ë·É †:¦%*GÅY Ò”u¦óÞEhGÊ;¶z«­’¹ÚY?Oug6/‡ˆF"HX%ÌsBS‰te0ÚuW Â^xg^–:ÎIˆ,ïì^Ui ¯ !&K-0P9ç,”+)K•$^{ \¤þS$¶±Lˆ{F÷f&î1UAV@½ˆ×3é°;Y‡¿8~¼‰#© i,F»#oÎHÀ0:K ãDšo"˜© ø×R¤×š’ ¶ ´[e•Qþ$Pƒð;…ZŒÿ¹¹F”Ì#zÈ “q0̼GöÌOmË×òDÅTD‘³¨s)c$µ‹r˯ä£÷=J£ÐzÇ»±c,:–wŒÅbÈY£€m?ÈkKË5÷mϵdˆ¾8‰'íº×Wðá_ÏøAÓèøšIx³‰ÿ]°ôwWÂÕ¹€4Ž/pâë DÕûmœW·%g‚héÎcÞFYãZÒ$ÖbI]lVbøMµšP>9çãóyl?!†ÉË],¼v Heî¿o„2;Ï콿ý¬ãŠåè7OO ª"†IN%’½z«3ºKR»üx˜OöE—µ*I ^õK¡Û$E)Q†ž+œÊ±—PÞ3Ör“Fª’ò%ÖV°ñªÌ¾Ràñy>øÅ,v5• XI¡ðÝ%`iÓ 0,[g½†$NkPsT-½:ÞÇ»]ÙÈŽœºÓT$[˨,Gϸ¼šjH”¸aÎJê‘rge0a­FFJIã—éÀÍeíædŽLÅ¥º`‰bRã±Ù¤ ¼‚–ѬÒí¨ˆ6MÓ߬‘U‘‹wŸCj™"iXJ–)-F—²²v„oLYŠ[)#}®Uíºdê>G±$h‡‘ÁßÃÌ‘_F¯eÒ99_„ÎÑQ4v'‘ݦ2 b¯’™Ù¡—y:ÆÍ:'(ü¯‚j?§AV÷ûð0ª~($üO‹¦dê)rá‰-¾Ä½ËÂ)Á7F– Ö3âUñcòÐrd€‰vù#^F «Á¬‘&%-÷+lG2%…¯+c7¹Ç±NÊÌj@™iÒAH¸†<ݘ¾÷ËP­Ùe”fI‚ÌØFÜŒI±Z—)…âÅÜíA=<ÂX£P¥bXÞ’BLÈJÇ$P¤Pád‰k;0d¨ý@Ôq€²å‹¡f¯Ek"³[–43Åm^H€6í)6*G$aöŽãð9LŠKfŽ6[qFǹ-H^}ŠÆ‡Ôqž5²Ô§Ûÿ™VZÉÊ%zÛÿdêveTÁÞ-ª«ÂE‹„‚"ÉÚ³<Ïͦ…ÊF‘Á@ÇÄY YÖœšªPQ*¹}.àï.^åýÌ‘‹ÐsZA¦jéÛN î»6ñ¾5r¹kÙë‚|„½Éà VXá¡ì’8cí†{q ìÙ%ÝëÉŽ%y5ÈDkËSr F"’#nÛÀêÍ÷Jø¶ÀùÆõ¦!6'~Æ'Fz•¦¤ÕìÝí|Hž«‰ ’ä̼߬ fcŠ‚3Ù©“UÊÍ1ÇËÈï6ˆÔî“ ‘nNÁÈ@Ca)rbyH;äd.µ˜løÆŽO¬Jè¡ ¨„ úPå 3ËþÛ¹qÑZ¡Q)RÖ C¨X¹{Ç&?(éì’csMÑB¸HÙ$`#]Š˜äÙØéË,±~D2ÔÆìœç‹wfY'š'ˆL³ÉÊvávnÔÒ±šÕ0­5ù YÒ²†ì¾ŽÔ`’Y0·Ò¼)fu“â‚cŽªänBª y*Fì͘…Ú¾M–A‹»Í9’UFv+ˆbœ•3|™‹¤}µr®Œ1·O¬d"JÖ%hPt¬(p§Àkv,oPR=+ARN¢";ŽÖöÄŸ©²¸˜¾.ÃG~VbÑ@gi—íÙ wI¬…ÅP‘Wø»¯w¾ ƒkÍN¿Q’ŒÄË+‚`Mˆ•¾=wF(¡8㈑ãSnÈjs@‹ÆaÀ§¦37à/ŠÇO4aÄ+%8fJè Œ¤eZ5“f\qca,íf`“éôÑšµV9ŸyX25w’P.M42»Kp²Oýƒ(ñ¡­!ø¸ä2I.u ¦£ñ>§õ‚Hh#ûq|Z•fH¦j„ìT@fúµÛÆ;ÑkíP›ïqB “Á¯…1!³(Xû²sùŸm°v‡fË!ÊõTJec'²ÌóI^4 ³2ª¤²-!²:«¾¤ME ‚}GaÒ¢ $Œaò.… ’´ÙÕ„/³pÁ-ˆb®;–RBLQ]yf·5ò°^‚imI»,˜,¯mÜȪ´ì®Ò<," /m@›€näd8¢ÒcB<.®rT§’Ô¢±D¨¨>¢—p@s¸ì ÍùÆšU3! %Ut€è)vbEÙ͸¬jl½ì­|³LR¬ÕÌRv¿zÚ0,ж-ÃïÊŸÆ;8k®ñêf©]‰ÂÈvˆž)·…?LUÊ·bÃÉBz÷fX„tÞ¤œÚ&H”Ö.,|W?ãbaf)·¶íØÜzè7©”‡ÈÊ>òU¤]øE4„ˆÄ&àVx­”d‚Æ0‡Æïz-Ä•G$­.ŠE$'A:@Ó Aÿo€×°Ã¢¦aÔª€ê›Q˜¹úDY¸Ç[#®µ>JºæŠz¶¡Ž 7¨‘…H¤äÒLŽDÎd(Ûÿ aÈÎx°Œ¡²‡iFàŽ 7^2;ÂÒú±›D=Ú{'×Dé¼½õ«»u+Õ%{͘b °Ö(¯*…ƒ,iG”œ³;öò&)Ê8ò*ž²È%Ù‹¡ 3¥‰¤NF?$xYaVHÏ© eÒ¢ša%‰Ñ¥µó—â UU(|Md°W„CÎòÇ‹%…*"ЉT:¬“‰^3ÚâÍøä’(ÒI`þúÍF#^ÙùÉdGbhŒOv„KªÏÇsæ#wV•`’Mþ%™ÈžEj²pŒõ¸«#ÃÁ£ ¢5Ý>Üq$®$’1„a •£ijFæ·y˜œRä̦£…þU‰ä®ºd‘ø+¤®ª•ç”]êç•&ï½H©)ŠF–bK|¬ ùß¼â7!®áš$ÍÝñºš¿T¾ãùûÒoÁId®Œ†÷"5PÎñ j®áñëÆÔÒY„,Ï«5ªÐ6fìÉ$2G ”Ã*Ck"`!Dx ïÁÿW0“-¬@­02ƒÓÍVFÿÅUî+ñrØÖAjȶ‘Ì*¤¢]Döó+Zœ±6‚ÕPA5‰ñ°G^¼f~M”ÇÜu`¿);îÆœž;EÚla/[ šL$¯ÓßÓøbe¥;Çqàù“ œ@.k”±,TL³¹“¸ï¾#4³¹Ü|Rס“·Mf ËÛhË´±(uŒŽE’ÈQøŠVìo ³Þ·—Xê`9.zÉŒ÷즭€kóI^»¨ò•Ê1ÜCTFˆÂQ±‹ÓÌÜ2I¥¨b•jÏÜž´{£äU±<3GQ†ÝÊÊÆG˜‹Ñ®³hbv•q%ÝCÊ¡òxƒ*4ŠÕåß•ò²ÝX¶IHåVZ Πl„a‹®®A*:¾·’ —Ùžç‹¶Æ0œÞ””ü]&ÌT×°ŽüH¬îfý¨'½rKSÖ ÛšÍxDðüiY¸XŠ—Y¾òÀÑÎ0sQ#»Ë"7Wýé«Ë’3—©‘ºWú‘"c¯ÊB›‚ëÚcA΄hߤdð9L]Êô/U¯NÄý±­¨d€‰æ–¼ ò»¯Ád•iEmÄÙ"%WŒÆ„ödÐ:°®ñc ¶Ù,lv6mãšKJboÖ™ƒü>”VT'Ô•S 2´Ð(P:IÒÀF¦qc¸{a“ø­K ø¤‚5i*w†vi¹ð_&Õú²Ux$ËÝžc$‰Ef.’,q”zê¯4ˆdš“Œ_ ÉNܯaP¾¶7RgñuMjmÒ€¹´Çj“I6è\=ˆ »±G,Ì$ŠÂ|TˆEÁ½wlhÍO¬ÙÅ@ÁS¿<“O„RŠ9mÉeàŠÔ4JЄ·„¿+Eˆ”Ö†;OæópIgE¬¬SÈ&š+4D­?iL¦imÏIi£uÏ ÌE ×U‰aS PHF_á¸*FŸ”^â-$>€¤ºÈu·††—g¼><5®®³Ù'u+ Ç-jÝÅaæE1, ÷a|šÊýÚqrYž=ã<<†g1“u³’¹,öÕ ~s8 _»F¿%Vǫ̃ˆsUQ~ Eª®fRè]QÛE…툣b#¹IYÊ!P}ÕB\´N‰q¦R™1R_×)Ž·„‘idë|9»È»Æ%š8gwæS¹±²áS KZx¥Ey"°(¦Yp4àCØ ï»aªþ$ ŸK¥µ|®Â  ÈÄ~I¬HݶR@tVM‘˜Ï·8ÁpŒÊƒQÁøâ#Û¸Æ@7ĬԚ •\ZTž7þÎÁ†BaœI*ɼ e6°ÑIb;j•™aÉè;‡I,Š©@X\óF­2°»ÍD06?÷ðRÀ*ç»n­ZU¤²â¬IlÉò$@Œ°N;u–dŒ(^O€ØöxTK~%dÒT€ZF–:‚™˜¤»¿mþ­Œà¹N‚Bœ±ÞcÄÇQõ¶¯Rœµ@³G$DjÂà)ç)1I\•Ÿi-Å¿ b¸Ò´N#õ§kSêu¦©o+jj¶Ç•#JÒ+Ù¸M2ªî«ÿQÑd¢Ý*p†õÜ:RìÁ±“Â*ñVUDXö‰‘¤¦FÛ+:|ÖäÑeãH8/¨ý­©(Ã$ö¨H+W‰»¶d·I£@‡—6íO1 éõ#Ä|œ‚‚Šg ãáü— .é!¿ªCD‚q¡C4ë5Š@õ$ÜX&ç¼á5o¿ •š½Egcq )6"XÙ#ÄÁvDGÆ(Þ:{7ÙK+6ùÖú–Gù¹JóŽE% HJFLÄ-ni -‡nRÁlÖ6»‡O§s¹XdµGÖª©í¼²v]dc0iE$ªö£odb‰ ™xæKв2¼m·&‹ÕD“ü5µ‘d‘w6q²¹~%'+kšÄlm¸K!¾5š V<­€=Mg$jf†¡$«F ú]ÃL°kñS£â|2= ;C[³‘aúc‡ný¼µƒc+i®Ùÿ¥Îzñ™8ÃÜx¡zÐl³L¨Ïʆü .´œã º³}Ûn` šHÞ+2³<|–XÊæ6" ép3ŒÕej(«,;…ÌUìE‡’®õ$X#“’ØHDuenÜ·•šýÒ8)"ÚÚ) °+H¨yýÑŘL÷ÕáQ ƒqÉBŠMŽD*ŠØYRxâ"rZ4iI¦A¦ ÐF–‹ifå…âvÆR¥ „,ºˆƒqfrРÞÒ²dDØ2l’*§ØÏiCoøÿ[ÖwƸjö@=d‡xݹÈm¾é¬=¶HÎTí,Œ?‘d )vïcÛ„lÊ“"‡üÃíâÈÜÃóqºª˜ö2³òÝ+IɳQmeJ')b¸Æww‘¢š2“£9‘ EÚFNÂLvT´êÕh8’Õ••ŠL.à „’ä™ÚcßvWÍ0"ÅîÖÿŒH(j<î& *cïY¯ÊÅ£0E$†RˆeR¤vÚxÒuDxÖj‹%Eƒ:á­uZ‘¾rxù'.dRnj|+¬â¨Mþ°Ü1^Ø¡U©–I –*w– {1ŽÆGœ˜m>È’¸ç–Fš1m§[4ž8„ÎTµ¦ ­^6WªÊ©¢]X§H\äãi(xÛëǰŒ[ì6[v*<ñeŒ(Þ«†DÄø\ ÝðωɊW+ –)†YãßÒ‡<å¡õÒê Ú'#ÕŽÓ…¤Àaãd*cir"bGÆO a~ÓýˆâÃç,ËèS$PLÙšÌü~ä]­¼ŒéëccI%ËöæO}Á¾;ªA ˆ; "‘ÇÉÛm·ÿ€97,wñÆü‚¿Ð,6ú’I|€Än Üù,?y$6‘™†ÞB^+¸žGû·`@õ•QÛˆŸ`G±ä@^Kİn?³¶äå·çÈ"ãÜFÿMÛ–ÿp¾ÅùíàÍçrEŠžààwä2«qÛvPâ®HÙý°äúÀ_ÿŸ;mä~÷-¤‘rsÈ8PK}Óo¶êÛ€H˜ÿMÉ_… ©¦G÷£/Ãmþ?EÑ¶ßÆÿö–$l>¤PØ~ÿgày·åýÿlpà<üò^àâ¤1b®wwbïû ÁoÙ;p-ê›F*âSЍy.i*Eøå»Ž¡¥¯»ª4ñýû½¸ÂqwàOßëɛЩRÄ)%™Ara±ße—tÙ\–ƒ ú§Í`ÁO7K—UY`Ï^{Aäí+”˜„솎0ÒÉ:òþ.‹O±vf àÍ­âØÇŸÿéê~äøÄ—@« +[ºŒ$ïÚÀ¤'5(¦8n¶Ä¾î7v¦…bI¬( †$8©n«Ç`´°r"ÓÙRM3Q¢edù6Â4jðÅ+A#EÞ&i}À™öwâWe@©± DlvpÇu,P ß–Ìx–u?o¯äÜ’|m±Í õ_e¨m¹1ûµ»›²å?–Þ„Á;1·0Ì6ÂO,œyÕ0Ÿù*H;îHv'ÃE€.ÅŠ©ðH ‚Ìf ¢þØlÇwÛn;éÇmøTlÀñx8X\ò<SûU'Xå/"åöäÜÉR»•ÝÿpUb9yösbã.ÛžDÆ+6®EMK˜+ÚˆKi[pÜ‚‘³s±aƒ 9+‘6¾ ßr2×1ªVŸfàzþüGæíöæÍµ^Ê©ÿ†õí1ä&$ììd*ÎÛÓ°@õfõt¥õ>dFÒ¼ÆÂ,É9Iœ +Ô5ã"Й cñœc9:lqÍšò2ÖOgÄzÞú›íÖ M”•cÿðsQ˜p(%RßÜ$î4d~$í…â õNG*ÑêNñòŽÇîý›a}8ÄæSs¤–gþ¡ ¿äû÷o¨ÿ÷E˜‘È6Ê>ÌÞU;‚Aßv$rðÛùÁ ßý¸€•j8îHðl={˜âwØx;òÙ~ î€7åË`7ó±’}6Ï!툣ˆ)~2I,Œ¬±•nM$áÂl²ö‘b%UXJ¸à`¯øî6ÚÝ»N¶ÌNÛ° ÈüIlIä€é¿ù<äî܆ÀÅxÜ€HQ˜E&áICo¹lÀ9`Ö|,|iÐPïƒýCšT™N¤{ÝlÆÌÑk=#ä`ŽMâ –)üZXèv„Ó;ü–ƒ…—‘ÌpÍl½zðÅ\™fyŠUZJOõE–F†pLwÙß!$»Ã3|2Gªã¢R#ïcýA»NÌ:Ф³Üá{_ú^èÚ¤ ±‰'~ÌRœÅÜXàšAzÌq‰l”©ÍÌVÂþTt’HgGiâ0ÌÒ¿'iàfŠÜòAñ²uùT¥T»oë¾èÄþ”‡ ¶ ûÁpí/{–ŽK¨†ÎT'ú bÐR—aýPÜݱH½Î{ÍtŸ¥9ΠtZŽ‹êµÍ5ÒÏq½hÊ‹yšöñ £zÑO¬²I°÷'l¦^ßV2ýÐ9¼Ua­¥0FÉkrÏ>!©ÉÕèO¸¼SºŸsAE©ú#Õü~žcµ¶K©~ß5 g´ÞŠÎ\ÈÝÆAÓíz“Xc¨ê Ü5['¥MU6 Õ”E««GiÜwð¹œï_ûMéWPpeÓvë]ÓX¯{Õ^ÝDPÓWÓí-ÔJZ“ÔÏOqõ´ÚÕ¥«úí Ù\†¢«žÆ×ÿ…<©~z´r‹›³ðr¡«\Mjxñp Ë$òye€¥s4ݳ$l˵óA9³÷Ǧ=Ms•3_uˆ¦’„‡C<8g/·uÔʧ,iS£ª¢“ó¼‚D“¹ ìÌvÁ/¥©!Ôv™™A—[‚Ì; ‘Xˆ4’«ñ!þÈâm•qsB"âoAýeîéZ?¬XýsÛíê=3ÕYŸÛßO:ª5¼º;Yõ«ôw=Õê¹Ý'ÒÌ³]c§òšçUðúÇ%©"ÕxœÞcÓL·O1Rkg1ôÚÁ|Õ¾åd•)yE+ ÏÎ&d“}‘fhK4I’'®4‚Ñ`:KÛŽ®À{‡Õ=}ÌuE댮£ÉeêÑm_ÑŒ­ý{Óî˜^©‚¯GºOÔ&ë4x~œhëtþ=ªNŸé¼QëýM]õF²§—ÍŒuÚ :é¨scà¸}:Ê@v‰.\ž>ãz:QøekbA,ï*‡f´‡‚ Õ÷—î*=MÕM’ö_9¬z_ÑUr:g×LGPqx}iÔ.Y-;§ú›m ¦1ý7ÃÔÑæ¿P5Vª¼spéí‘—råØh4Roõ/ :e§õTºG¥X-Yk­úÿ¢9¨u·¹îèŠÞŸ§:C«³}Fé]µ^+‹ê¿O,G§4Þ#%[Ké¼½­Yc=‚Èá1Ò髦K9öñ¬4çN3:[IõÇ3€êF[®š»¯¶ú˜ÚK’Æåu>ªÕMOGë.Ÿ®v›ê.–È™C‡³¤1úÇO_›JŠbõ×ØŽºuí'ª=!Êj]gÓp#OëÞ£u_u;ª´/{o­’è^s+Ô L´íÿöK±=`Ó]Dé¾KévèÝn¾êüVrÆUÙ׸ _bM(ú<Îq åDiÀé$†Âlž.]#.d¤ ä¹f›ù>wàõ¬²WsZ;Cæò(ã®dñuò·ªÒÎWÔXÚ2ÜÆãn\¥G9Nªã³˜ªÓO,C?÷bJÙ MUŽn1 ×¼ÎÜÄŒ§e*ݾóJw+Æ!# s´Ù‰âLœäZA(ñ0Çt×цôK¢šbÞZöžéÐý0ÓÙ<Šc!Ê]ÄôÿIaôžÝäÅС‡«—µC ýêxÜn;2ÛŠ4’JÐCˆýdhäN!K°Tœ"C#ƒ °]^Q“̼VLŒ3þHÙ*C¾è䜕2AwØXAi˜ü÷互Aͨ$‚Çpìx#km‚—IßÉäw,±ÉŒŽTqf>Ò”ž¼HÍȳdW»kÄ¡¨‘6>AÎ8˜ù†ÝH‘V<™”o·Ó’#9#dÜYÏhî®-f\žQ¶”³c_¹+F²³L,W«N½Ø’Ñå KF¨øRƱ،¤Ë`‘š@¨Q7ÝIÞ1ÉÐr;(?ÝÅUG.J[ÈÛˆz¬gCØAßJ6Øm<à—O•C r €Ð.;íÙ°êÀ–:XEûüœãfÙ`%©H¼Š({;FA4l¬ǯµÑ\6qƺ(}ªVb‹l^,ET 5óbÓw·áQòX™ÊŽ[(ϪòÿËðÒ…2Ê,Í(@±¤®R»€šnÜP,3pxl·#Na– L¤—K‹ˆ1¥hAá[âìCd%XËÇZ(¹ˆPü"sÛÿåº˜Ô dòÐÄ©lî_å.Ã~æ}Æ,§Oþª´³¡&Å &îÅÿç§ *ðã¼l¬²‰åb¬ìUž$à7 &æU$?V#ÕE±ò~MÕ !Všà`ð£*vç’G–.ÁåÜÚI1è›Ô™NdJ`EÇÕ °Ä£í ÊÈBLŽ7˜‡# ØlÐ*ê ó·ªwfR,ÙBè†yH~RD­#4ß·ŒËV.lËAšRöXM‡È%Ze „:)õÖ[I˜—r <ìw纣„ÓK&CíØAý‡‘]¬JKHlsGÞGî:É$)Ð&ã0 »,#‹3 C>¸™foE¾»õçO{oé.Gªº»¯u&Oˉñ½:ÑZŸ\å¤k²U§ÙÁc.UÓ(žÀ“!ªõuÜ—ÄWF“-œ®ä[î©$,‚ìÈ»#‰Õ…ö"‚VŽÑ;ǧ'"­uµ¤•ýaé­Ž´ôO¨½'LØÓ2uF˦ Ôã¤ÔáÖãÒ´¶ÿ‡\Æ\§[¶Ð)Š39­¤PCÃý@TƒJj:´°òîXZÐ׌.Ž„ë©©ô€˜òOH`lBÞäýÓj¯nWqóÁí{­]ÒÙ¹4«zw®=°à¨æzÔ-W&’Ó],Ãá:µ×Þ˜ëLž®ÈfgÓõã·CKXÓQ×ÔQ_m@µ1™ùqzoÞv?3×EòÝ놅¡®õoTô7Lº­1Ú Š×ùîæ'Áë•´*k›eÓú+f¼×tQµ'M±zY`Ö†¡­—¥†ÔšFî¡1k>”\Ö=cè‡Qò:‚‚éN‡ÒêVS¢›LüÌžCªºãMÒéÞ›ê-]&r5Óðé.˜çºÇ£îé¿öîQu õ2®U3¸yô´T²ôïUûÖ½Têö/Xõ“«z'?¦tÖgªi‹×Ú¤StŸÝn©é_S+êŒm?n}Eëþ×Õ*_èöŒÃjA‰»Áôÿw_]Ó/Q_M7žÃd.g¹5«4•¦q%ìÙìØèš$2ˆKÈyŽÎ$\>Ö ^îúoîS[û…Ñ}6ƒ3Çô/¢tíýme1òi^¡.»Àê ÅLÿOoS¿rÖoKS›NäpãP)SÉdjÞƒÖ•—NK0H;Ba-T„F¤•íÅÔXûŽÍ+ª÷F1n∨§ŸbýˆŸ™í¯Ù®ÛX=Ãu+Oõ\êüX´ŸCt¶Hë,ö§Ô×4eiLÖž6¯ê\ö¡ËϪ-äã¿R-É1¸ËZw Ì4É&FiÓ¯±ârÑ `XC#—3E‰âµiζWú›XÓÝÊ)lÜ=ˆë<~ºôúªU5†•:\C³qg³ÆuqLEÓêô›»!ÞÛ_ó/ŒÂÒü˜d¦…,Æy"Bª¶ãUš)dwš8mâ{}£r¥µzð§Áí°¸*\$jÂbÌ©Èòî´lË"_¶FÄ%ˆ*H,¥TZFÁ³´Ò~K5q̼ÑʑаQ«Ø³Ù¸î½aŽž°à?,<­pRP#U=ÕQgÁURU3»EväœÌr!ú†U’}mµÒ.ÆFíd¿’ñµ˜ QÒÁ&¡ÒÄíìoË5¹úhÚ[½¨âfvZò”"8Þoú®ðÄW´Ò“Ç·‘É ¬¡]YF&åñ³²(•'7«‰ÝämÁJü`ç£Bv‡Ì(ŒE(H§#É*î –¤ Nê³ÉÛø ‚À)GØuu‘"V²µÂ 2§T;BLüÐË¥¼Íë¼-V ­м7¶ÅÒ€“à eK`‹íÑ%$e3RIz~©w,ÄŸ¾’w­fh—bR°‡%¡¹á·(»ÈuP8XLÝÆ ²«3–Ûb Á"…<Б¹>¬ü•Œ ß15)B£Eß®ÄZ™¤h¡+öl‘Ô3¯Ç«TÕ¿]%ž)£°bK;cœŸöºl‘²–b—4“ƒŸØÙvxÎÀ:µ$g-ŽâcV“’•æy%þ¾×id¶¥’XÄÊæ”Q@&¯tO>E¾ ä1O¥‘øºD(˜<˜bL…š³g\e–<Žy°‚îZ ‚HÆGI9˜B»™Ø…qô’)ÝYÄ„ýVóþi7¢W‘¬‡g~Ò•"9` "C\“ I*ÇrCiŒE!,-Ÿæ)ä¹q ›3“—d“í’¤‚7, L«c …B>\³½ŒP”‚¬Ô†IK$Ð]ãeŽ'­%²Ë2$“Wh!t‰ºcëÎ%ÔËß~íQ\õÁpLdg³ï!ÃZ}±Î€ØÞC ¸’d?ïŒ4ÓN#$©˜LœÙ&hÞ³L{ÅÈV’8¾çÈp²\YÏr©†ƒò<…‘ä.¢.N%Šeh â6™ãÙßÉ)X©ÊúNÖãR3Þ٣톈î²ÒÌn9*Žó&™¤‹eL¼±ÅRÌ üudïĦW>‘¢ðþôŠE¬Ñ4¡•# #Ì!2·*´ØüŠùIïI‡¨•Œ_n±f·ˆ“h’_k>Ö?™×¤m!Åä')÷@`õ+”qrٌۅÜ()dO–¼‹ øƒo{åéBôÓÜ—S©i>²d±>Ù³XM9ª°wz]“ÐZ×Yfó˜|N[K§ºWªözu•È×uÌW­[Pjhtn˜Ê¬ep¹Ì®œXs“ºY4«ŒËJé;#å$/ÉklízË+ˆë’æS)áiAøI(—iˆ7¨þÛµ&¦‡Ýlô¥é&¦Ÿ¯9¾‘j-7£zËÓ£Ôš¿ü0éΞÑö´çQ4ä÷錦3PßÂÉr¥üT‚öe©v:™ tÚ¤ü?U5SšQ£.F¢:F”û»ðïÀêúr)œº5!-7%Ë8ÉÞìØØ¿ï Ž?Óʃ ÝiÊõ;ªÙí[‰é÷EtöoÛv£ê©Áh,T=[Ôˆ5ÜC¢X„3G„›'¨z»ŒÍZÕãtÕ-¬Ö Ó”³(Éûâè~7HûlÕõ¬ë íOuÙ7_¥˜lNš’–ª‡¨1äìjk¦õu5’Ñú{M=ÌFW¦R¨1‹/Oåå½J«¢ý“uÓ¦½EOt=/— Ø.¸^ê7SuG¡ufÕÚÛBuSCè=#¨0w?„ÓCU[StÇBu 9ÔÓL=-wO ÿdÑzaìÅÔjiÉ¥íø°,±€÷7ÕJBÒqû{ÇkÌÍ,Kqú+VVè}LÔ‡!¥°yþ›õ\èµÈê=U®ufEÄìÖ’À纃­oˆ/es2ÒˆsϤHHfR\’7k‚8aÚ(¼w.̰IpÀ™Ó©ÝÁœ¥ˆ@4OqU^ÏÉÆí;†–RË݇y‰þ8€&ßкgUÚ6²²E ",Hµe‘aMÇyàÛúD¥©¥åîÁ•œÇc´å¨Î°æqÞŦ‹»Ï,µä™Ö½é§Ž6‰j QZL£üx˜{x¸DȺo³Êñ Ù#Hˆ–Yãy‘Zª2,¨fY£Õ¨ zŠƒ%¼ÜýúÑDÝîHƒ”§«æÒä A°q~@{ã“Î$œÅB,TÀÚýösùK`íÒÿþ `’9|ƒ‡tVK¼14Œ±Èªy†2r‰9ÉÍÕ*ë$‘Ã!ˆÈãs¹e`®8쪩çÉ~%,~•´g |”~ÛÞþDÛÈ–A«¬’Ÿ%íÊÑ$A8¬g„h¡ß¶œÝ÷f,βlª"{g›Vn\íÀ_ >HÍ-ɹ–#qC}ÜA¬ªTªÁNÁ‹ÉfñÜ_¶zÔÉþþÓ*ÒE,xP¬$TuI³6ÐE+J²&=l·r òòÓ%ŒaH!’C,’‰#܆N S€‘[vO?–ð$Ê):ÛhÃGÇ(ª»4ÒHÅ›¸{“Gf$(,‰ž$â‰]ĶãVo |jQÛ'Éònñ a©\¾ŸÏÈDÑK+ ’¼Õhº+>M`ÔþÑ3CÁ{ÒÚª£§ø¾°{­À{„Ó™~™&€ÎæcÄi~–t M`´ö«ÂuŸ¥ÝHéîVÖ½$»Ÿ½§ïi=C‹³V-9;Ýyf½FMuS™¨iÔâNÞðvpØ+J^ž¶”3 ½ “&H’<ćÿ[=-¿¦4.¦ÓzW«:²ßP4ÇRuÎ+Eatãú‡‰Ðý$¼(ë­Sª4ΨÊiÉô¼XÙßµOIeeN¢jñ]Âi˜Ïâ²øœ|¯îã¦Z«?‡Äèý?Ôý_„ÉËÒšù}‚éöjÎÒ7ºÊò.ƒ£ª$¼1ú‰ÞG¯7ûÊÞOg1}+޳լއ¨ϪQ—ö¡ï'Oè}7Ò<·ÓþàzCoXukUõSJu®Mí??®«kmK’ŸKè{zçÛw³¼îZnžÿ fÎc¨oŒÒyMYªµsO]ÔtΖ3GzÖ̧×L7Pð öͤ$›\ôC_b:ÅŒÕÚ›!×kõ´ÌKu'¤ÝŠ×GhbnèMq‹ÂPÄA=-CÒ VF2òõ@kšñ¦9†ülé 1b!™fåÞÆæ|ãp£EŠ’l}W-½‡yˆÅÿê{LÚ•VrAY^Ty$µv8d¯mTíÄ›lVÄnƒÀà‘BĈñèá0’sŽrÂD'QÂÉÌ…,Îöe’IAšQ¬Ò7Þ»Ìé±ÉO(ËS烩RG0>¤úåe¤_ã2a¹ìØÛçddGr+ÌyFÓ…ˆ?—àÒ0‚2P·r3°ì7Ô7Ø·ø;ãyýäTÜŽIÈ'—ƒë‰˜…‡É «Œ¼69Y‚Ôœ.Ë!d}¹}QÜnR|Ÿ\}"õRäüÉYüµÛ{ñÔ‘ü²"F«;I8–°±œ@:Ob?â²EY—ø÷.îñ`œsH{–cñeÁywß}¶¨ÓGÈ'~!ßÝáU¹ì c¿Ôl mº÷"¾•WfÆe%BND,¾g’S ‹ÙVI"šÊ|gPŽn£ÉSã!.y”o§"I܈Á;îÌ „_±$ž#m¸°+êüèOâ*2šYÃÍô³xßVX€‚pð í#ß y!M[§“«Gf\+–9C¢5.R5¶mnYÕa^­´c˜ K’ÉãdòX~øËGÛmÇ÷Þ=5ü Ú³N0 ¥!ãŽCºå,¬lc`y,|ÙÞÒÇP±@Œ×CDiXº;Ÿ²!ܳ£3ñå·; nT?Úôù'/”%GþÚš‰ËL¾!—KUÌ8vìÂ_÷oåj pyÑñá²l¤H±&„¥Øoú_eÝ%ŒCiìž`Ý+˜É‰ÉsIT-ÛˆHá@¥\²ŠÜ#›–üé!§)’‘B‘ês¨c …Í¿y FNI?[ªŠS–fî,ªÀìÇò,©ÌlÈFÊЖVVÄdc TÉ©~; |}gŒ<¤“Ãà)«Læ!œ»‰[ìûÅŸc¸KoÀ’9±@ûFÅ +ý¤ºìyqÜa•p9—?ÇÛ#ìÀ(v%fã$ nÂ_ úõ:rLlí²ö÷V(HâŽ-±ñÍTô·%‹AµH-§³jbqö ®ìX(䌂̫+UšÌÑlEu• ÈC\™–ê8ôEêK"ê8¹wQ‹§b1YäY¯G#´qÆ– `~BÂKQ$Õ'†HïŽ0&E5Öf^5DÞ1Õ¨ÉÈ;+Fl|v”³ˆeí[AÚXã¦ñÉèþJr´[ÔÉ-°wQŽZÅË=Žçf*Am^®×yØ<ï6ÇNärI§´áÞuŽ3›•œØxeµK±,R–i£rÿH³‚Xl) êÉéÂé…ÃÈÌ7ÚŠBGbä•cÆ£•øÜ™(·S ÊÑ®àñzãnoù&Ÿ˜CXÎ$m ‘4“Kݤò#‰#ìbºÉ$õ"”ÐŽ²÷ê£]ã*YM8Ñ>ŸÂɼ1+ãhö“œ“Æw¬6‚i„R̼dnÑ• ”F uwwÔÛॿÿ"´!ÖL‡~X´ ¶ ôðƒUiý¤7ï<olu¢XËË È*‚A;†ÙFÄíîÿÉ>VFW‡%<Š/!¹Bç~Aйr]·#n}ÊùˆHY»JîT³~Ðn<å”óÜïº÷ôØàVd’?ïgàO, ,Âêî@O®à…*ʺ:U"OåúÏüà’A$mc³ßŸŸÆî¤oͤr@TíÈ6ü@(¤ù+"í኱dÈ…œ!wdŒqÉ$¬9yP±îWîâ;oȨûúÝJrÝ;D¨ŒXYeV(ûn»}Ï’ÈImšÝZ.âݼ)rŒ_ÉlÑïçÿ¨'ìW}€P3»†$Fãû™Ax$—’g‰ü·ø–"…„ÌY·ügi#Y¹».Ü£;ñT*ñ”–?°PèYÕQ4‰…¿4fÅæt`ï+@›Â»|•äªÊœâŽ£ª]“’Eö/¬À³²fçÄyRJ•BHrîÇ—Ð è[ÕZ®%ÑXžìNI“8„ Ic<–CĬUƒn°h.o?­}<ƒœ¤X vášvߎ}ñ—:• s >Äl7¸l ÉßмÿÛ4y‰ÖO—oa<ýù f]ûÒWA,€ÄÆ/íeÛ“8 /##rqÝ…£ÞV}öKÉ6^nj ! bcî0ŽŸ²Ë¥é¿7óbß)0]‘$E D›ÃŸ·(¢à‘•eBW÷2ŠÂ~T\G ãäq ÜØ(å° Ù·ÙBqõ âµV©±ÖKO&w¹Ùñ:)&•>XÚÎYþÛŽpÁi‘—îÿq± ÃÿÖ8 ñCàúWqþû9î,б¶á¯Uûò߉eÿÀRyôá‘‚IºËù%]ûaѼ¬Çû6ŃþM¶$0ßfÄŒ€¬Š9GãºÄ}N(6?÷P­ú,Ȭ˜¼¤€¢{‚ ?°û ÅfÕ©¶§Í±,AвšökB#–[½Ó,2[W6]Ö,›OܵD­ —Õuö~Y=êûç‰þ@bý»™X«ù‘:sN6”˜Õ{ž6D ‡‚€‹$‹÷õdut…u~_ƒ¢òšKwØÊ®µkÁÝIÄ«aV ÷dvŒTøR¾B§rjÇìöïßl=•Vl· ¢nÔUHÛ§5T…§Å¬Côâ‚Ô«iÞhÆýÂc©(þ)I)/d‡$Çq ogÓüVdöŸ¡ 9ðżÙñõ-¾Û;I Å@øÇ–Q¹c»²‚òô2)bGö'˜ Á¹ùŸ?ö«‹1ßs² Éß±<ŽÛ7/nå–ðB¶“êXrª‚6݈E?@vÜ vÏìT•p]þ±¿6ñÉ»7~ôÂT° ·€ÄöÛË0n'ÆÿRÿÏøßÌý@Q°$#B&ß—‡Iø1mÏ该U,Š–Ûë°cÈÁÜøýžCvÛÏ/´Å”ÿp'ˆ”CˆÛ}‚«îGƒöØñ'û@Ø€é) 3ã¿-ùœ+±äÄøÍÓéI÷»þ¢êx?âŸ@Gšò$j=n hKƾèÈÕ*G>FV’­Æ1"´d¿–@ £È¥•8Ò@%.ìêö–®©€r A+í½iÐ>}é¨[:¡Ð‘mâ‚ǵ.‰-¢ S^P€ÚNFã©1ɘ“d”)i Þ9©âÝŪž,Y•A¶8€)º9îx=ÇGÀÐ{ĸ#iæGѧ–êl3u. SÛm;³°Ûx|k˜€tw#—’UÃ0K÷Hzq”if•KS¨£O##+E&Q"Rï´lŽÐÊ­+Dÿ³ÁaZ-¢Q؇"OÇ…ø˜âyd^Ò…•û*¥™˜¹–´rÆÎï+#¨ù0Ó–Á?"}…Èodæâ1ÀMÉÊI•w­,cy GÐ!{ÁJÐÇÆÔ!§-èÈH)cé‰#H"Ð6›‹àn ;Ä–}‡‹Ko޾/{bK8çŠ+=™kªË[”I4b¸-$0óÚC|¸æì¿ÓrC&n¡jd.Õ@ªUX=­(ÈiKÈ‘F“<…X±Ùí×àØ>Wc ­VÝÎâQ­=©†Ò5xRY§ì±à,±ˆÈÿƒ~+ÌUïTm˜ã ÖÓù¢†*¿¸f™X"Ú8Ȇº…i)9”Ç…¶Æ3Å+ÉVžMKzß J`½!@”‡/°êN5R^`$&‘¨æÒ ÉôÛ÷¶$g©ZºîÕw.ѸJ±Û[NqÆmØ€­¾1ÙAâ;yfî>œn¢jhz{+,Œµ ;¯Ù–W”³ˆ`˜NW¾Å…RßEÁf¤W_âoÈ%ä8»È²E3lå`hû¯ ͸ÈUòïH>_%oXOfL꣔I;¢5ß1ã<13²€±=Ô?¥·*­!Pµ ¶X·¨š<Æš †%ÊH#f¹µù"ÓS8úŠªIÔ=Ѹög;ÙI’Ô E’1ƵæœÄ°D#±Ü•þ<µbi ±p•/”9–˜¯•kSL 5øH‰ºÉ!öø—af(¶gn‘vI¹' ÄYT›QÿCaö>·,ãîTŽ?—RÕ4h XÚz³ÁÄÁd‹°óEß ñèn“AGNæ‹©˜$e1Ü #«îI?œ¢F hvØ\Qøèסɼz×DQJ¢ i”‹ —›Ë¸Ü>3T]E(|MELî\‰Ø‘ìͽÞA‚Ôtí·Ÿ*K݆:agc«K áD|X;€˜b ­‹œðËH*ÙßÔ€u;>Ò-ŽN1&ïð·ãÂI#y¥ŒIÜ "º[Œ€…Ÿu$^ኵqŠQ­=…w™+CjäÇ ,ò3Y–hÛp²’¹èZéS)ч šîvŽ+"yY(Ê”mò’EM fFª¨$Š#ýöØC\i Ê›UZ†Mk+¬šf¨ u’ÃD”ÙÌ™ÓVe!j$â é"@°g3qÃc¹ŸÔùmDµkÝøÉk"j˜Ð“,dvž/—<dí–S•$ŽÕVY°½t`êfzxꃆ”W­I#‹S##§n'IåºÍFV…c’ºÊ`gi+DêóÄ->õ ÓÆËF¦KØy¢A/9š%fw#{ TȲ «­aÌc‹QÌíC)U)BV€OÊPT8ǸÄjèY%j pölÐþ7†fÄþn¥jILR¸,Û –"“ì8H9‹2Iïå`…£“Á^üÖ“íè2,ë$ŒÃi>L!ˆÉÉb7k®æ7î¼RÄ™^Säb)>0+!fbXäSÙ›eŒ?n2¡¢‘ùlB‰™ØÿíÊ2®N#¾É dô¥XÐLy,R‘ƒ–(¤ŽÁÙ`%1ÇÍ»XK%ë8heÕÔ2ôhTÒ—H‚˜»›7/»WR¥J­­z‚H`­¿øØ™Â»ØfUw-ôGʼ²ÊV±;×hãŽiÒÒå)NÝpÏp®N&ôI©Ú‚¼0r‡ SãBT­yZ.Ôg‚¿y­€‘Ê@Ÿ€a)øé)´¾…ÑÁ°’6†.Rq` È›Å%t“¸!2<˜è¹ZñlŒÈ%%wÿˆËÉ!Y19V,ò3¯Àµ#-£^MµS ³"ò% *ÿí$2¼3²Õô™%%D 0‰}œ±¶*µ©• E@–}!ÌXÜËÅÆ'©ú+`Êór#øw¶QŠòÄQ²Ó»,̳W%ŒJÊ·ç–Ý6zƒÏÔÜë³Ç\c0Œ«#T¹Íx·%nÚäu OÅ$‚%‹+ùx¸á„r_ã²…UM ‘‘"u£|ØNd¨zÎeHºõ™ÜA’¦dDœ3&3&å‡À¾ ’&R”ïÄÄXä+4Rå¡“ÅyT—»R¢Í 4§ÊdŠtœáË)<þ£ëI¯›¹UQ?íµƒÇ·¼`‹ÿ³ŠH0n²‰¥‰[ò#+D².I«3J7jr÷8£/jÕŽc`6HÂ|p²F¨µ£Ž&$¬†.ë39$†?’E¶÷ʶ/ˆ¡*Ë[xϰÐö¤¸‘¡NKl=h#&EgÖcþ¤¶×å}Ô²yÖnÜD†·ßº®¤âÍa¦àÑM)] ·9â·¨¤qbã[Q¨:heèÓÔh% ­µè$‚@´qô힥JË)5‰,t ($æ$ÁÞûuA$P•š5á7sþ”xU”I(qÚ‚öq¨ÓÕÄÌLðËc‘*OªäürQº…)v®Ìï¼FHå ^F- "²9Äæ(CñžbHâäÛð,9B7⮡“Z>Ù7V¿ŽI åðȰ˜ëa*äG÷T²~°ýÅyâ³%‘ìâ6"9%`¯h7{d,Xîìn¥˜¡F©²R ›jQtîí{òñ‰P«Z“ŠJP ’$¸ä>¢-‚{uC-bíÕÄ*Íq+Ö7befŽÂÉ GùR±Y«Z«!*]¸©[’{±ÀÂÀjÙô´rÅF…¨ÖQßù­^0ñâéÙh€PÄÀ‘ÂÎ7‰%nî.Ý(Þ2lиVR—Zé~1ºÌWœI²? 3XãÍÒ±™‚ä¦;Ï[#°Å7Ñà2†~Hž%‰ýí+;˜ô‘QSÙ‹E£þOkHsÙɵ=¨2b† jÕ†5Š™†µrü÷2Ç<®åen=È,Ê$­ˆ-™äûzáqB¤3À¡’U–B¬³3HªÂAm+Ë#$ß$ù+·ðò}^Õ‰$I7…ái[xäŒÈb?AlÑË/»cKv¦‹k³‘NÞx÷X]›ƒ¥ˆlw¤2 ±ÎX¤ŽaEn‡v½]¤ÂU…oZ‘M(@J@JR>SfžÛä³°ß–²³¨—±&ÅÄKCÙÈLï‰Æ™ÕwôÅiéÕÇÕ,Øi»Ö£˜ÙŠ(âJ•í÷¯j×#…à‚™sb,!X=Hbê~[¸ñ׎;0²¤½Ü1:¹…{Ÿ8«Ï$›KRqVDÌF¦´TèÊס*C#™ U…ŠÇ‘‘*$Q¬EÝ"XÙøª®È¸‚,¹w`&¿\VHTJ {Ìq¹S;Ød2I^¼¯±ÉØÝã~ScPF6Z‘ËTV¥ÒFIuËÜý®|ÞŒÝZ~„Ô!!™€,Ü’fþω¾cTK›Ìã2óר¶ññÐF«ZW'ž•ëV£mås+w$’Qõð-êv¦’Õ¹ƒJ›ªUä+‰¤#rÒIÆK5ØÁ¹T–B K 7†Nä71É)E } ÌNRöØÎ¬±XB‚VÙ V—ñ?ÕdsYÅCÊ 4ÎX-gdõ–M¤3$»G¼<+©þÏ‘ÉCqL™䫇.ÜýAy<ºÂRªaI¦)L†ù™y ÛŒÝd,TB•Ɇ$ÉÛœ2FÈdñù døÚñ +´§ešÑ’>õYgH'wŠw­¢[µK´ \ ‰ jDQ©YþËf@Ó‹adÇ$gdžV³4Q¼ÑÄÚšŒg˜‚(Àm6„ðØ$ˆÃ´ÀFå¡°²VW€DU˜sÇWb.Ó/ò ð¸Ùq™;s;„'ÈyC@¬¯Ù²ÏÀ}Üï–´¨ö °"l;CRC)¶Ž^•SMM­‰–ÒÍ,9öíÕ­RºZ ÃK¸€CÎ×4åNµ:÷¹,±ÄlÈÁ&v ÛîDLQ$kº¢ðŽ k‘ “Fà U•C1ÆÐV Ë(±4B8Фr»fhÖ9ŸãI®·yñ²°½y;ä8ÈÇf+ùâåØí3 ·¤XšsÏüadŽÌ{]¤À‚˜ÃJé4L½ã?ã0[2ÈÑÒFŽÄÌÑ#Cü‰ûÚ¯ÝÁÇÀÊ8ÕS'”RÔ¥¡:‰Ô©“k´ÿoÊê9ŒÂR’t¤C`óïƒ$]S¸ˈƒºc–9TXwuh€bëödøàœ±Í$Q!ÁrÈ&¶¡ê¥æ‘9a`Ý»\²ÌÒFÎbbœA”èžóNÕã¾BcŒòwDVN0Wí)G+W#‘Ë×^{6*±'ø¹I'±e_O¢HC jÅæ¼ÀâP@±$åø¼Qã/9 Á€“›õYÉäX‘M1¶¢þü=Ë[c‡üVn*—h€mÝögñ!Ô™¹µM2RÆ•žJÕë«a ÓØ±4FmVy+»‘2M3µM?{IlË>O„Æ‚¢B %X3±’(ÌfFB"aÞ‚œ“ï$õнùíob8Ö“«zÌc“²1f=öí»D²8nÖè²ÀwYË®9ÇÉPVÉÜ z)¾H b¨ÈŠ¿Ø‚ÊYmù‰qƒ&ÛÉvècT)Èì§MJP€‰3/s$;;,.h¨¥©ak’T vnl–‰Û‹bo§5Ìú~’b£Ç%¢lË1’iÊÉ$ïvã1VAYÍ`‘O,U$†P<«9±Þ†Nøê½•‘\ab“aWó|÷ûFû™x¿a‰ùyâ%r$ÉÆ$Ž¡áCò)ª2GLD}®Ô;;ªÇ\CÝc-Z@±Ç\&ì†`¾*7íòÁ/i»"ü°»1 Üêø¨˜„ŽK"P„)K$ ¤ÄÈ'~àYÙ‘_2 ¥kJ ª,ÌâKƒØ3xÁßSsY*–©48Ø#ž)êÙ0GvXŽJ®Ú{¯Ú™ÖS)߸4ý˜Bdå·„ŽN Ze4Ü2Ó¡:ZSK,óIf;`Óµq*I8äFJÓÿ.7Í5‡ku”Á(HaF­ö-Û¡}€ŽMÕéXiÊÁ«AÂËA {µ7Þô<«­ÑÛt­IĆã§rã’“4.XØŠØäd⼄7lñ£ÿ—Ç¿l;$ärB™C#C¡ýfHÓ¤’l ±Ü¾Í†9ŒÂj%JRŠ™ƒƒ)!.k`í`®ÝUÏ!äôñ³.íbÃÌÅ¿acc6ÛÊ‘eì$—žTZ²DszšÎ¡·_%s³éJ¼()÷b£ <‘É]­I7ÇËa…K‘$SäÔKŠ’_/jvÈåñl´h†6?ÛBÑ#=Õ*qÈ ¶8:MRÐŽåÆ5‹ÜÝ臕¢y!y¤iâ!å¬8™åš/ªÈ `ÿ-j0"wXíâwhfgTryZjÕE)ÔzK"÷xfì'œ5\Æe@¥EE‹)$Éh?åùÇE'Y#æÂ1 j9P›Ã‚ hcá »*ÅÆ<$۬džËéúYC޹èú“ <ëò)㙬M r¬î¯$iü“A½ÛêRæ5£2ñ]]å–V33÷V5C’`ÁŒ'”äý¯5¡}ãÈA³Ûa0Üù b"ò?8{A%ÊXÊ‘Ãñæ dšGE“(íNrØ”Y{êZ©!IRT]$ BÄ™ôÃ=¥ß¥JIÔPeEÁf ÒKÚ,¿â¾`,›ÐÄrYNÑ2Z2HÂØ„È.ÇH|¨8Êb’’«‰¥´¦QüQr¹uœ|Ôpý›p¼V$F·H³î‘š÷ÙY ^w‚A3ƒPÖ›¹êñ¬C¼ŸÊðwáØ¹2Ffå4oX'(âŠròKD¼râî³[´V¼®®Õ•F/˳JòöÁP%;<’<«ÛÙñ¹;ŠÔ~q»Êõ•Š” ­Ãµ"C1Ÿp`‡ŒjVg4°Ê©P%Œi:H;1ÃX·lKp:×%Ƕ>­ltÂIä‹U­Â#œö̱¤p^…`hÖ9©ˆ£l8u±i§†x«Žƒu;8èI¥‡U"Ã7r¦D;F¤šÒù‡cz¼‚²ÇY•½a¥uYˆØv‹ˆ“б>`1¬¥Yj† 1èÒ3Åy“ùñ¸«?('‡2V(Öf»ñ›k°]‚#;y·SFל\qÄÛúЊaЄ¦‘6àîg‚òMÁ`1Ž¡RÖu>¢\»¹6f»`ã¥~ØL åÊŸ0„;o\µE‚CQ\<<«É?Óci,·m õbtä$à±Ä6勦æWvvf5¢F•Ê>ÒûhÒIIP ‘·^î6WP,æ g5€äýúEB¸"Yet㵯B ~E˜ú±ºt‚Ã…ýœm08ºÊ,(+†Aö¡Š’ÁTŽ©(| ÿûÅ` áW,ý…€ðw§ üU8Ÿ…M‹€Âßb[ŒuÓÄ{±P"à@!;nG׳àöÛŽß·ó¶úû X†Pñ‘*C±Brx‘K²0_'`Fâ¸Q¹g#–À²+º‰êwÿ Ûîvßö},¹+ÿÌu#eØ!@cãîypv`OùçÜÌÞ „²‰öhm»vå¤öƲ¨üË+1r¤<’H„IâÈ#If ü” œ`â5S÷$}dD<ƒúP±¤ƒ±c¸½Ï¥ñ$•*ÛQç“Ì•e`veû^E€ IJØ~Âò~Dõú‚¬7TØ~ÎÇ}¶<øõMÑká܃¸±kn?q€ –â”m¸ÛC¹ Êv˜·§Æn‰¿¨7'ŽÛÎ1ç£.²â ržM„v6Ç[§ñ°Óu™,~uÕvîÅ8_É fEN;ÛÝLKÄsn=OUXú `p|/K1ã»0B°áä’ÜÄ:|͘«Ïû…‹ ‰kž,ãŽõãb°§’Ü]„»–‘Éî&²p%ÖB¤s–êR»qå¹S¸$qâG$’+ÎÌÕ<­GÛQl]—š @üÏ2ÿ¶Ó è$bŠˆÜGº “¿€Á‚†íùä|ì}fTv'fT ŽËÃv 7jÜHÝCûظ|vêa¸VS»|#Áããê£vÛíàîMû.Hßqà´Žy!Ÿf“ˆÙ ßcãË2¶9±i,oaO»®+N­E:«6TV‰;¿r±Éòê‡tI¤UxãuCfN]º+Ã?R9¦³%x«7³øe_|^úŽÒ%y´ß·)"å$l³ú}V)$8‹FXqŽôä½èö±õ«7¬¢S©s=²&'!Yy䟓CSÖ%Q™eî q¶ÅKìõâ…}Uïg¥ÿõÉïÈȈ„à=¸â´‘©§•9–ç‘§•Ÿ~]¥XAÿ¤B=êsÊI}H"ɘgöãË‹éÊOâ³!§Iãb—ònggÝÁúžUœVvV ºòå¶àx,ÃÈðFÄ¿#¾û^ü|¶$ÿp]Õv]‚€±Xî9Á>#`¤ãŸéX‚vP<7ö¨óþ?´ä=,!UÛØÙ‰$NÛ€Fܘ m×ÈÛo>€à«Ú$x7—#Ù‡r{áANíúáÄì¤ýßäIÆå‹9Üàn}y\ý‚)Q¿èx#Éwe·ß-ضO#±úî»{lÃoûO¿øó±@7óäì C0'Šw€YußìO-Ë%T†Ûì@@²EŸ­4´ñJÝ"Ÿ¨Æ|ÆŽÈ Æ@#"ÀY`S·v»:<ØÐ{O ÁŽìž•$a"¹Ýò+:™S7žM ÛäHøÐ_À‡¢À(1TI½¶˜ú[Øo°ý@Á ¦RñÔ„‹öL|è\? øZNqª†–nb?‡j„„³ý2 zx«Õ{½³¨s«–Æk):a”ÖQ`/OÒÌ7T¢ÐkÕYºa•×µ„´qúÒŸMZ=Uv¼ÕƵw|E¬ì:ž9pk#éZÆšŠÒpwcmä $3Ä@bû±®¬8‹ù*íñ¦-ÝU]MÑ_q½Fë&¸Ïë= §hiŒ>g\Ëí’Î/©z;þtÃSe:–Ñúw¯]Cé<%]CÕNªZÈÞ½rdÎä§]/¦µ&CNãvkÓ·תե˜H¦ ©Ÿp›–ØsmñÓtšh4 [zI™et•Òruõ»öØÆ@nDøœ­,ÒÞlCÉr™x_aqÂäôv©Ò:¢"è…m÷´×Mu¿]£êšõTt_êÝKj;:ÎJ%zs‹ÏaõC­ynV²­™¬’äjH Ï-œÓ~Öz§–éç¹Ì¶¯Áè¬WT=Éû´ÓáèhÕÎcµ'¦úgNÒ膓\ºÌPZ9]]cNôÃQe-fðuiÅ*j nŸŒ«Ó³,¡Q™Í¬ÊMŸå6³»ã{{‚j¥EÝÞCÏ»0~Âv1Þèum‚Õĉ>Á-Ü~Á»0¤€Xûcu'ƒËÞEå‰6ÂÈ’ßo¢=tvQEùTâåA`Þš‚ güWÀ_>Ž=YDø˜·*eµy؉XyoŠÁÚ/ R2µÆ?òù s =ÇôƒµÀªv'es±f}û¡—ÉRãıdÊ!2&ÇÀïzI'&‹ÜÀ`D%ßv{‘߯P™ C†g1m¾®ø%tºv9\‘h%8öâ ŒÏÚ–ìÙ@@ûÊXÝYO*öÖGzÖ$ wk2+ÆÞDoû @]ü"ßöÇ, †Þ ôéD1&[,ðFÊÉB)W‘&ã nG”¡!gørB EÈ­có $ÙøûŽÜwR¥ 9;(Q° 6 ý‰a±Ý—Îþ„õB£›ª,ÀA&4¤›Ùž~¸'ÓÀt’’A‡v~ï€÷Ul:VÂ.ÚâÂËwFÕär#Œ–{ÌÛØ;cùmkb/ôàˆŒx‚0€‰å ‰_f¯Âmá­ ³,Û|¶¦NXE°¡ä:Í i{#ZÔ»0$2ÉW)ÛIêȪÑ:ÊU‡7×Ô¤SA¤§Svôˆl$ é*©P(@ wù(ú œý#]r÷½í›Û–v]3Ö¾¢ä4FZ-7ÖŸø[ÖUˆ¯§3W2˜ì}ë:›BôÛUiz÷._Ä^¬¸‰s0æVQTXÇÇü†3æwqþîýµdº™©ºGWtÛkÝ"5bçêܧ¨ñú~µ½\ÛטªZÿ%¥ syíYd—Xiì6¨Èf´ÓÖÈ×ÉÒ­o—­I¾®ôûZu?ªžßôíÌw º#©zÃÔ鎤j‘j¨èVÓ4ú¡rz]T>¢Óuõ{3Öw¼Ò­\V´è®‚¯z Uò¯¯—4}¡{•Âõ‹)¬+ô„êl¾®^õz±™Åjž¢aÛÚÇQô?¸Iú‰’Ó>œô«â¼º«½Bl¾Ž©Õ-eJçê¶W-6Bθãò‹ÍfФ’S¨);iÕkŽñ´ïŽ…h¨Òí la¼»cê×G}ÐtÜ2jDèþ½WϦ¡Š\ÍY´ž¸Ò7…’YÚµæ–Ò—3Úk(è#©©´ôYL§–´K“ rªÎ9®ÝäR î”Vx$ _vçè……2’ Íp `'+wm¤Ïi:ª´óš§¨=~éÞ«Ó]RÈôËNèœ~k#ªtmý ¤´v*zwáHt†Œ©Z®—Ó8¬zÙ¹«Ýü¾«— ޹“•mD‘úšVTHÕ!4ˆ‘¢nX/$C kÏ“8tïšhO,¥c,›šF=u?éÚ‹«J²ªQ)»LX±aƒ€] ¤@ ³9ù/w¸½ 0ÊÊìõœÜlF̤XC΂X+••v6]%òš¼bú·Pñ’¸1¬¢(URØÖ!²žâ±p‚ŽÀ¸³(>MK¬W–#ô­ÖuÒ# XHÃ,¤—UG$AhŽz`ú·±,I'È!9ý—¸ÎAÝÿù›K0Ií¶ÀÛÖTRªD8ùœ9Ã`Ïc$žãé`R ±;'‘ØŒs­vÛe¥]¹R»„oBÕ¤fa0ÈÃÇ!Rãî!$‘ÅF=#Éu"ˆØx¬¥¤UO"6âcŠ$Ð ž ~©´gE›q¯ÂºƒÎôì+"lÖ9Н˜¢'bÃ’¯ßuwÙxtª’¾lªÊ§æÂ3'5ÿ1Çýª¨v…‘¹<õÿ(õryåݸv‹ÈilnZGâ(»@Q €û\C¶üµ‹Ç™®Š ’8¤{!mË>ȾY‚ìÌUvÜ–ÜXÕ› Oꌌµ@ ¤sbЄ$$¢šÒ˜g—h˜´õäfhâæªTlSšˆ[va¿ºnJÇïÿ²Iôê̲¸·Ù¸>/mÙPÀY,Í$±~Ķw¤­°íÎD_K¦“ø´9'Ò«˜äýß‹ág˜åÖ`Ì@]¾‚cq&g·tí±Xû±öG)KÔÂïãî ž:ÂO°²mmŒO­viC3öþ¤NÛMÂ"Æ ,®GŽŸ qÕ¾nQ©V»b¸¸ú{[ÌGQ%‹X­îQÂCz«^ùzŠê¿µªô¿9_-w ÔMAíãIê(p6æ Lju=¥ªòø™qªóŒÖM¾S1üÔµ,YÊDÑu©—ç.Z>¶u®þÜz“­ñºª³tCõç Sà×Måç«'P4·FaÎk q; NØ—[Lý<ÒY…&ž¥Àck¼RÛweô9Ôjeëb‚ê„„¨bTI€Ú€Ÿ»-’Md©I*#Ia 4ñÜ€Ö¹Ç܊נµ[”Þ;T®V†Í{åŠÔV*ÛˆX«=i ’U·JåykØ…«³.¨¢RX$n(Å׳ÆF~2 4nân¤‹9VG– RžmêÃYF>B÷#ݾ*âzÉ×}5ª²”4–©ênºên7¢–[¦½ ©¢Ãè:=ìÎ=o¦1Û¦—MŦ2ðäúÑJ(Û¬š3Tã33™ ý=¹†8z7á±,Õ[|.ˆ¥N½ÊûŸêG²½FÒ¸Þ«u›Sbu’Öº&,ŽœÔÙLÆšÑ]D¹£[Rè4Ìf°ú#›À`ôŽSÓX¬ã+a22TÖùXêUüfš&…W^4 ¹wµ¾¸´ôÅ‚Ƥ\lI 0h{‹7c±õÆÎk º”ìe°øû’v¤¯Fíú”­\ŽÝäÇÔjµ,Kü„õneeŽ…6¯ ]›1$t"Y;‹ è-±Ûg 0fa» ¯—»‚«*ÂÒ 1âÔÇ’¨{ ‘ñwNgz£«ºŸíG[kÊZ¿SfàÄô Ìz’ÎÊcrúŸ…÷¦²x¬Îr·Ãêƒ%ª·2-ǯœÇC&^z”!žR£½'î{­yÍe›¡¤z“Ö‰1ÝJèæ±Õ1TÖ¸{z5Ó~¶`}Ï{nÁé}!§p5tF'Hôê==ÑΣuf·KcŸ%KQäþV¤ÊÛ±ˆ³<‘a!ÅLº´¨$¥˜ªv ÚX_˜Ãžš$UIÒúÌŽZ³ÍûÞïAÂ’Ñ1â8—!eB¢5 ˜Ób]„›•!Ÿ9 Y JI‘ »Žf‚:Ìœ$•¬~áXæ*ЙÔrøv&T  ”ç=Ç×Èî£õªýÎêþšêN±õ¶ßHpýWÅã2m›#©8ŒvwÛ—Eú§„Óu.M%¨"­§ó}GÖFÅ ­5©ðÐi*z;ôã¯4 sžä}ÆÃ¥ó·õßQuÎê¶œè6ŠÕžÓôN”éfJÞ ÝwVu ½}[ Ô 20ÖñY¢Óã:g¥¯è\•½;F1¬nëòÕöåQÕÕé¤PªàCKµŸ©ïÜ…ø0"¥-&DËñ¿s÷8ûvmû! §µÙŠÄ`•Ø•Em¥Š“[ï¨V+p^ãÞ-Œ”nävÂwŽûrÜäT+$Ci–TXÀycRÍDÚ¶?u–°$¾hêÿsŽUÐz_\dhuÇLõ—ÝhÕX‡é¦­ÖéÞžiΚ{·Õ½ÈjjabÃë Xý?МÎ6¾'/%®£ckPÒ8ò™{Öëú"{'ê–{¨xn£á3Ú·Zu]3’Ò2ÖÖY»ô5–l朥w#†Ó:ž==¦ó¶É¼ùZ7RU»–ѵgw&Õ©¬ u£JµTRJ•/úˆ€C%ìão¥±ELJt–­I(4²Œ¥ˆ=ŸfÅê{QJîĶËô@«ÝT'ˆDq°w%”öÁç6u¶Bɨ‚»1ƒº9puHÌJ¢E)^'¬Ãq$ÒV ñmÈÒW¡²c§ÊFÞ˜íDYÊ£  'n&‰[òK#þ¢1LümÞ_8ËL$ÇýCKà‰‚¡""e€ 'ð–’„RD¿X[òxå=¹#0e·G“˜¶—v‹aæ}ïÎ$éyíõ$_k_·‘‹ÓOá$"äÈX jQdVâânr"ÊŸK³îWÁQêM§³úOUMœƒLe°š‚m1¨¥Ò‚~<¼3Ù NôW±X)¥FÍê´ö!f­böR½{Ue˜‚º³EE”Ò8K‡M¾g^V½ÑxóÇMwWQÆâ¤Íä­éîÓH¹ªp¨ùI¯Ó3TZ_™fnäK'ýOÓ¼i~åúoÔ?lYº¹ÝG¤ýÆèNœu;Ú…M{ª4NšÖz»Tµ®ætoQnˆôžê„9¬~CNêÌSV4íZxÜÌoâæ´-~“öÓ–ÂuÏý<:¨zEW¬zyÒ=_Óþ±êÌW+ ¥q=½gt¦‘Ò™Ûrd ZñŒýŠXä\uM¤ÎI$Y X]FŒÕu9)T7û@2.ÆþÖll4iD‚Çfg¸îAäiÅ´ê_dêY`ˆCÅq´…ˆÒ~â$B{%ÆÈß%)GRl4¯^ÁojÈ}‹©µ"lÆF TÊ ;†2(Þ#ca½Úëý-!´Õ—Sî§)ÿr,€Jª¸ê­úC«Íu¤’.#“9@ð›Ž?¨åãbPR&õGa!(c;¤(¦4 ­’whÑaqi¼ÉbH#HÖÎÝ·¬ç‹ ɶ1Q ]/‚á¯lŠ±Ç“?N;ÂêÕkÄQnÏ<‘&=Øã!v š›)\›üZa%€H;—k»I~ÍJ‚Hý :JSÜ8;Ùƒ¹pÀPUucÆ0 0!‹»Jx9!yò ©$@N§(MAYQ¶ã‰¤À! ñ˜®åš0däq³ŠR²ˆq³¼­c”áU;ˆ•ɇep6Vl·W$ȸ#Ã0 Ûúõ8±ÎÕ¶*² TX|«ê#lmØM-!·Î…_¸åцŸJSæÓê- Ü»˜¯±ûa‰g’—”£æÞÅŸžÃâ„31W‚9 ‰Q«¢¡÷6¶™+Lvù>~H›ïX[×kM¡—Ra„iõþOßRÑ€¬gˆ˜DhÄI9JÊ<À”I½+<8öâä–w9†iÊ“Äqæ·~y@¸mñí²†ª7qË×cN2.O „$åqi¹$ #mGä4ø+È;Ñ_`ÖOÄ]rÔjm ˆh%ØEöÏp´H©¸º„sáîßó‹H7n"$e #ìàãl¥‘Ô/°2¸ñɶòwÛƒ¨Q“NæcÙ–••R«mÑ7b ¸Ö5šóýSÇǤ÷&aÜY@Š«³MÛ".%ÉW±LÒÑ䜱©†ë †Þ—ˈ‰ÉGŒ)+,LQã€"üZìò÷gŒ:ƒ€Ï)˜‚Àü{,Þ¥üM—ƒµfˆï÷’Œ4ËUKΑ£…b#´vúîFãý ¯&’ËÁ nY®ÞˆÖ¸ê©;KJºËî€Ç»æV@RpKGõ•®&šÒÙÜ^kfÎ!f¯»<±¸×Æ"9dfwrÀ÷¦~Ï),®^µ$.®hª±¦¤©ZKj‡ 0‰ ¶Ý ‹E,ªSD-*H*S| CøúŸ¦4º–ê· Œbâãl>Žïk“ˆBŽä!ã±]·lœªÄ½Äåê ½Àê›8Yx8V—‘,¦GXý‘##øé_”ubÛ4ñr3Φ2¶£BÀ¦Øˆ]%cÚŒ±m»¥‚–QÇkv¡;G,jRwõ TœØ$cíÀ©ã¹Rê¾v/÷qÄlFäÆçÖ7PÌv*q¯'}†Äm¶çÿØ6õ”+¾Ádâš+H¤;î âð)Øì6i'×;‚È'l/r‡êçì_uð /Æá@Œo¾àŽç#ɇ¤ž{ ¼w Ní»ÙÜÅ`ˆÿéë Fw’ûâ_‹yêÇþà6ßøbßãm°ü˜xÝwð™Ûeýÿî^_±þGŸßŸK÷ûýÎØ|x6fR l ’ T#`K’ÌT‰vPyõ=[ãaØ?&yo„ð­!=šÌÍ gVYx¨ü‰7!_—s,h gc'ä~Œ¤:¾ÞW`@]·Q²‚Gù›Æû‘?TÚ 7Œ=°í3ŠÈ*˜Ë0ÚEÕŠˆÎË?›è;zÿUJÎûÆÛwâæeñ<@ˬ’Ñß”öŸ¡µ±$éàÿí^§¤Ú¶8ÆÒ:Êä–]ž~Cre`m²ÀSrìB°ßê’-öJv•ˆ7ƒh6/§+p•ÝÝ¡»LRé" (í‘È€<|ìýNrØ’ÊË»0øˆr¼ØmËq±ââÜv)Þ¬×ýúŸü•ÿ÷[—?ɤ7({þû·ð€d<•A<À(  ø.ÁòW?°OëÓ`±˜bÛŸíbÀn ‚ ñàw –@v½Ç­‡TJ)ÝwئÿC»¿`0<· ïımé™ë° Å—‹³îÛ| Á’FûøÿYñqîb"\ý?/ 8¬úÆ9ÛSfnëƒ*ªÄì¾k½zîÛÔAÀBûƯ@æjÍ· Ѱ5‡Ú 2ûè÷ÚâIeìéŸnļà®Oª¼QÃ!b$n;;¯1í Õvõg5kÔ¹£"GºH&¹ ¡Š>SHOu’7¤¹ö­q¦©QMq—Ú'q}ôûíe©þÕöß UPŒ¶#éõ^}ØpˆþÈÏ)YO&;Eú“ŒŽP»9¦,v {}ØÙ§‘}8ÅfL@-%˜¨ ;‹Ü©@7„òñ¹;y;ÿäí_ÙØÿ×°ÛÒÏ‚±_î'ƒ>å7$r;í¾å[q¹ ‘± yNãí°#ˆö vVÜÿæQàøØŸYToä¶É¶À3± £Áû2íËÿ$’H#Ðûlö‡Ýˆ,ÇÞü mßü)|®Ì›‚’ ÙwmÏër<ÿ’=)vVm¶#eîÛrØõúùÙJù;úHY·AÇÏ ñ¶Üú^I¯#qé¶J‹¿2Ì@¡²^O–ÒK ÷ ßhÇÆþŸ"?¼oõ›e>¶tJ´ŽÜÞ'Töƒíæ]È”r±oûgâNÌ#– 2¦êüžx™ùx†>Üݳº”Bk¼Ê‡òF›Ô’-ÞΪϠ¥d÷}þ¡î‡‹ÿÇ^ŒD!i¤ƒŒ‹ìçÛ”†A#¡Ž+dÆ–ÑÏòDK‹U".,¶ü“ƒ4Hœ a$A°<»˜¤p·ä¯UO:Rí=¦h÷õÞtgþ@Žö¥ûñ{=±Ëõ2Nn¢˜ÈG×HûöÃ<Ï“|\<-…˜+†34+ 18^F-JY€–ô¡ê\Þ.ÞØRºÇr üŒƒ´€Àî&(¬>©…„îü¢`c¬þEÙ0ViJ±ß~lÁ, Uxò 2Þx‰ùµT6)~Rzf¼Ó½‹i-{šv+Ň1Ì/‡¡•š«Ç#Ù ’U€XHO7ÏBÜ]2Ir`D—˜.òÌZÌ^àf¥€cÌØùóÇå.Òº†M9‘{f‘¶²BadVxÞ8šXæç XØÙã®lˆþ¤ñ‘Làuay³6÷ˆ w´¢#)ŠûÈG Àv’Ð=±ižš“.ÃÐk£æ¬¨…7æ²ÎQbÜ™1üñÔæÉòmò«Oô¨¡cé߉d÷¸p¼n†Fb ‰ë àÖ8ŽãÒßãˆXe"ciY}b­•ÊUY]V+,’ bÂlÿÕØ h¥šÍSHJO¥ÁµÍ‰76wûà®z°H͈hV2Z2³†GÜ.î±€g@[}âu3Dv’TXÆþœN¬¬øi£qò ØŽñEÜn,?eguO#W“©OA©Ö0쉺2±`èK3;F;\ì±bÝØÈZ#»”NPLÁ€% 0 L|cN*Ìëò%~¬kGZnãV0ÄL¬¼‘·Ó2*/¥†Þ¢˜mØÌw»ËbïÇgʈ$4Þ"÷ñ;ÕzÌêjô ék=yV3E!seDë¶ÁÖEš„?ôçVho(–_PehV$Ýi˜œ¬DDä–IX #ˆ7ÔÙrd©.ñż[YY•L«øÉ;ò.’ó¹þd!!2,FoÉb ÝëRò4”Tv%YˆÞV.ìÆ7 ³H£tÚ@>;H#äPéX®Y|ÏëeTèS¦᜻òC›† Y¹ÍR¥ZŠ ©*ä,#ÞÓô-‰f’Õ)¦nÏeñòd~dF"G ˜#.g™#ˆ‘Æm–3%QšQ¶Hœöž¯VjÉÁ_ "ý~Çæ×pä.ècXÉUx9Ùn+í[‘BN0¼C!‰WðvŒ#ÕÌ ŸË~äb:RÈEÁdËNÈœ¤–1“» )ÌXÀ„0ÜN¬±ìÖbRd×Â̪`îFO¬õr9Zµ>%G*) Ê"Á,áá·Û‘ÑG9˜¦)‰H CçÏÌç[ªêjˆ1Ð-6¡IûìÒJË’Vª²qá!'ãÊ¢;À@î¦ü .ѯm»ÅÃ4‹¼}ÍŸ¹"ìbˆÏºM²Îã`íar²(}ˆTDEî8TÓe;,‘z{¥@.‚dfî?0÷"•ö‰ý ÄË;rfïF­ýXót (¬7 º¬`òE1ʱÍœÅñùþ%DP,-gr·t K9tc­Çtì…ø§#37ˆß‡DáXÄ+öÈÆ¥¢£\›µp²úÒ Üİr<‹ ™ÐxÅDiyc´Ø÷Gnp®#T ;1.Ìâã]@þè–9¹¥h·/:÷D1ú2Òê¼i[¸W";r­Y*X eÅ U«bÒÊ–ü[’‚ Ж٨´±ž@;ÁdîñT–@áD‰JxÈNñ€^s2!‘‘6vKLË$n=eX»†ÉÛtuu-'(œ–U•Ò½™8Ã]¥uä9yœ­ÁA¨ä§Q)I¤]ƒ.Æã¾œ¶nµ €–PØÌ1#í¶ ßñf˜OËÈ3‹ÙŽZ®ß º< W%Ùë²Ø¬ÌÇ+¿ ¥Èú±D³7ðyÙC–)’k³mræÆãs¾RÓ«Ã\—P=61(’$~ØÝP¼Q ©Ê)‚Ë|Þ/®Ën mò¾ 7LÌ\¬œ•ãiY·`Îá, ‚í»ÆÊ­pF;™Þ3™f>²ž‘“xJœÜ•žÒß¿Ü@ƃÔ3Gp› ·÷ɶ^¬ã]$Q…È`—Œ’OX ‘ƒ$ýÕ‚³ž¶¤v68©>‚c~@“#W‘L¥X€~½òàqd‰[v¸büÓ–1ÄCÌ9U}Ù‘PªÈ˜¡ú#WÔÓdEº–­üÛ5¦ˆUh¢0@ ¤ï¸íÞq»Ktžåq± ! "ñÿÉ@’£3 X”qÙ_º’0‚98ŒÍq+[q4?l÷£^â‡E—}€.½½nnÑ‹ÌqÝaÚ¨ßѲ±õ@é¹tÓ]4¤èXI>¢î–±¼Î-üeuÔJŠ€(}07ŸžýŽ_ñS ÞÎ-ô?*®ÆpZ°Å³ÒÞ€Ë4d”‰1רu6B¥ÊpÉ]kQŽ,î‚IškY‘;Eu¼U¦OÍ~‘ZB+´{FK9Q̪°& ^CÍ«öÃo†M¢ˆù•W‘âP±¡œ¯4ˆ‚yÈ{%)̳†ôøf`Wx[h¢,³W˜ÆHXF!ŒrUäÝφËZÁù²²ÀäœÍϽù%-4€Ë¿åš(·rÅHIE»!Ö 5£+åi7Rà$÷%Œmkq\a“©ý!Vìçå‰/ØûÎÚÄ/,°‡¯Í'BZüáB°4rez©¹o‘ïŸvÚF’+$#±o·´³ÍÛí¤"ìLc…¹F¼‹vý„qo%ÃµŠ‹'Ö…ä…˜É×Zð䲙떂 ï+31¾¨}m.K"Ò5™2wÚÀPÜ[–¦W˜ Ž8ìÌÿ&:ÓLŽÑLíÝ»b6£j4‡‰eGJI#$-u ‘îñIýË÷˜•{‰(¶ ÷¡W/)øÁ“ÒYye_¹˜&ó,û1„§»˜çËš3Ú·χ2:ú‰m¥ €;0–¶û{ŒL¢ÊYHîÍØ†?¯M5é·åµ’Y'ªÌüKp1ȳo³ñ!…B#„«ðg-,«4äæköH ÁÊ0+¤QW’˜ ‚¦{dµ!‰ì³4¶ÉSk+!6#!Nça$tQÉ̆8øÅHKHŽ­7zIÁ6'’Àí¥‰»jûhY-ÖhF"1f'oR$Ùˆgï§þ/pÀIrï»7ôŸùó‰z;Vb°8Á½ç’k²¼É´‰]½äb #¶)ÕÝqãîÇŽçÔ¡z™§ íƒT;*ÊŒÐ:Ï÷¬K—-¬ê ߉O`òSèljVBª#íÜrd ?]ßêÿÚFÎZ×ödÊyœ£ûˆÈ;FÆ"­Û°¢É$sÛãî±¶@}qviWV†PTuN—ª£R¦¢¥PZík3øÙO;˜¦”±Hd¥ÄðyòîíƒÜ=KÓౚ+ì;¢º¿d8wdr„†$®ÊÑÛò•Y ä§}˜z™¦šFû^+"ez†4PIwð JÀGlKÅ?¸îkãˆûeˆJr$„iXˆþ*ñÔ°i$ƆY+LEé[i};².Ò£3s á‡}SÎQß+ ÖxšÉS^zÁ–š|•ÃøVT;$¼šÄ´YŒ¼âg©f˜.ÐâÛÁñ$n[i£Í¾B‘jõÖz»XŒÃ#M]fkBD‘¹¬ÐwR+#Ä45²¿v•ÔŶ+ºÌ½³¼œHI 39-8Ý|²²ŽSG¿w+¿~ ¶êd^`È\E ¬ˆ‘¯x«K¹¦Ý¹qÄÍ#66& Z‰Z<±<‘Ü|]&˜·!ŽB¯2Ø.TC›£Y#)÷­¼{7­Ô©¢’„>”€ÎfîÏ!šÁÃ63)k¨¢µ¢£&Àxí·f‹‚މÖX<h_[¢Âä%•V&š2³Å@û«PÈœ{;ýG·x6óÕ4êXÏu¢ ²H”,(çx˜’ªU§”4 Èn²!¶;^Þ8ˆa¸pÁ£ž9‘Ö99§tWš±=É#˜ª‰1гNîßÊ;,Û0™&gwÿ¨ä¬¦ffh‚¹’DŒG<Œ±ö®\]â³S€Æ—µÃN™–¨µUV T T/0X¸ÙöúcJ3ùŠhJ\ Èsà¹'µ‡×¬®¢Ç]Ösõ…Ÿ…\cþK5yVR°GÆX䀎äX¥Œ•¿÷%‹xôA=MÒñc-ýÀrª¸ÙY¿Puñ´¨²×ía1†(ÛWWSæEV1yñf?‚0Ñ0QW 5¥üy ¿¿N‰£¿!O;𦔡 iØpä4Ÿ pÇMQª ÎepùHé¼Ñjêõdš³´³W²öaX&WáÝ’´é%ffãX†à 'ñWŒU°¹'R ¤‘ÏU!ˆ™¢‘ÀI¼NeˆeNä)#)ŠŠOâáÚIrÊÏÉ–>fg•VN$vB÷Áà›VHK(»gp˜y¿=1·–Ô´…%HSº“Èr™ÅÍØ³â ¥$¥I3xÙˆüŸ„ê~.6qWù³È¡ÚZ`B>3+«ÆÐoýŒÀÁpÇ.ëë[-Ô|^C~ÆäÔÙ¯$bwøëno¤²³+VsÂM—“Ú0Wcè7^6yd*å7tÕäGyƒFJÿp+%šJGÏ ™€ÌŽAp‡ ±’d ù¡xd‘60Â`ΓÌSp¶ø­w€šþfØúÁü/,•늒A•“#·’vØãR³ÙÅ$ ‘¥AˆÒÚÎîfpGÒzÆŽøë5­Ùv¿fpõDecAZ cXܬ•$’¼\È­Êñ-Ê@²fê~3m†2ü²’mÔvæçy#%Xr¼À”¼»-}ÙX”_X÷+GŒ¸Ca„Ø …`$†ëÆ ÞÌV¥ø×¸Sp¾›£Üe.^MŠˆÊ‘·ÈmŠqãb–È'øÉÔš›ÄÁCÔéÙj‹RÔJ®½ Ä0¶þѧÍ! $ˆ "v帆Ûɵ^v¾¢Ë°Gf¼ uøHbC9ˆ9Iw YXÈÀG7ë*X§'Ôhý<¸QºÈì œ"Tfc+³¦ò,*ü µ¬ äŽÝ)ÈvuÌ OÆI1гÈL€=ÙÙ¬.Ãâ!ᘅŒŽÉ¶Þ±åÃ#¼Îb¥J3Ž ÙŠXfàcîˆyö=¸áWÅlíÇu$"•4¡„ ’,Äæ9Ú3)JZÔµ»©ÜÿhØøÝƒ<*4–M£dR{’+Èê¡ÒOÙP©ý9°ª9KY¯,{L Ÿô×#ÜsŽ´cìpþ¢x¤` ,„Cm€’fwÇ¿âÁd0x²¢ÀÅÂha–Ä…1–Ic‹¼ ‚]ìC>ÿ%–ð%Cºíõ3HÜÝœ±Tc+JHûʈdV.0W…’Å&–mÀ˜`^%½/¹i}Ë5‡ ˆ@‚רÌÇwØ|à•¤µ–?Oc&¥j ù½Ù'å]#EŠ)"‚0®²lC$ñ2=eäøÈšæ"4V2ø¡„'¼´¯ìÐ4¬¼",Giщb8Â3'êUñr}U)Žêæ5vÌÒŽh*"A³¼Ñîñ»ƒ&j˜G²c•x*we••Ù[𠌳K§×½ì+}a¼ê!¢¥+'ëÖ7-Uj¨°]EÉÔX¸n`qÌíˆÏf©¡)A "` öñx匳WêJYܲݦ'ˆQA·3smX¯"+RrÐ@ûC: ÁæQt176>-eË–Hќü~áDÊB[`%i9T~1†Ïàósgk`²Ô3iÜÝ3›Š¤‹9Âç`¡ŽÊÜÂå"‹y*Ø\~Ovæ-€¶²Þ«‘®êé9wÊ]žHääXÆó‡+ÊFrOÇ–~Ò ™·0OóT"`j¤ŠtštÉd§ÒLømwóã2ªT¨¢¥ SYÅßߌv­2® ã·ÝY3ªÌÒù‰€À£³ ŒÍGpjñU¶Üz±ºy‹`pÄ·™1Õ6—åGƹ™H^ãm!(Û¹¿2Ûzß|±ÓÚy]6[2ƒ¶¡`‘Í4„BìÆGf,>,ò±’i§²¢O«§ø 6Ãuþ6‘ð«BÐ PøŠBHfE^Ül¥#B¨ä‚ÅÎbµÏþLaÀoiœéå_AÇý”;–&Ììݯßä ‚ "¶ü•Fꇈ“¿’ û6Û~ö#Áõ•O âÊÜv T¤’~ªü|;xòB‚OïoLqv;Û!ây#íäHÅXÜíñ°‘û>UâìŠ@Ü0wú¨ä†âW°¶ß³· ¾”€ï.@¸cßÛŽcRU¨ÌÅÛ™ûöl8Tª‰6R`ßSº¢–þÓú'gc¿€O’v ’@(\±Ø ºìl<ù?q¸àxô§;.ŠÊ€ƒ3.ÌY1Äòâ7'o<ÇØë)ÇaûãÄÙY¸©]—`7ÛucÈŸ}ý@iiwÝ£õ?³ØaËÿHP16/7{ˆ6±ÆÈIVÜnBx*¾0]öÙˆ†ÜlÊ»øô&ê©F­‡Œ¶ÛÉlaßX7ØùW„}í¦ñ!æ¥äéöo¨*á“fRvå°YAìŽÞ…Onñ*£].Ûª@~ïõÂŒüžq»Ö%d‰2=méųtšàŸÓž/ÞØÅž+ü:Áå݃‹Ûw~cÇw§êF–§Ûò ›¤(@%ãecÈ#`;cd$²±õ9À†âÊK Ô€ÇvÙAعP§pÑ ºï¹õ Ð@¾š©º°íݸŠJ¢±Ç÷t‰ÝP0o*Oöm+ñyõ/‚JnCçv ÜXrÔ;ÐTæ›ãÕfùÕo'2ÿöi»©Ðm‡?Ÿx寔«}ˆ¼vÜqmþGŸÞß @>A‘ÍÖBÌGä-þXý@s·ïu ‘é@HÁwñ!·Ý|þ·<9x+à‘ûÒ·ØÈ^U*‘ÙpIâÜ‘˜nvú®ÇYñr‰bÀ§èxÜ V}dé&¬ÌªHaqHT(dV\}nßm$!ŽGj6?±ÆØäDƒÕYö„÷åï»·Ï·&’öÖà3“²ôþ¨ç¿æ1mú’pfÓm¶ÆÑêõˆêÌ¿‘Áìų¢9EŽ(«¬Êþ6•¢´]ÑO#%›Ò1«$cÕaö„ª¾ú}öªðpúgÛ„á”\tþ´N¶lñE™æaÞ2.é3þXÈŒ…ôg©ø £|ÁTí¸Ò—g;Lq,/§Æg2XX€`"û›À÷ÇÔÕ ƒ²üž{²ìYv>yq;‚|qóû#Ö@”(¬Ã}†üvðXîFÿ T±ÿ$÷ô– Nÿö6܈Ü.û¹ÛpåÉIÜø$q;»xÜø ÀFÁ¿d‚›ÚŽ?°7Ú<Ø~·÷l#K ö‹Éîû“°–ûnòWoÓ(‚H$nIýHxÛëé ‘¹Ÿüñ ¸ÁÝX¿ïíÿÙ³ég›ï±;mäqÿ;ÐñàÏŽT:ø@­þO—üÇÿ oþû€ãé3–M»þùÃÙ[]¯'{ð&qñÓ§¼Ç»_õ’7ú¾ô}ìfA,^Ì}µÉ+.ì•ÍW´VJvrP(°åd±`öìÊT6Ȧc>ÊœZ]ˆy‡ˆcc6¤A!‚+‡MÝ_Ý·ú¯dJ"÷ÑÄ!k™]=•{b±]¤²dˆF±»K%VQ+_&ÖNG‚õ8VÈʤð‘ BxÉ2:¤…3Ì9+¼n L”Е²¤“ˆüžï£Ÿú ºX9$¿2›ø3Žg©?âê;³$Ù˜€x}£¾ÃÆñ9bÛ–cÎeŒÿN¾ ˜1ެPÊ ÅqÕªé™Ö:N’|…eB° ÈÇ?1ÜSÄË2Ó#RäeD‘ÔHø´ù‰l¤&8%gI1‘h²H‘G\‰Äo*ÅNï ¶?ÉI±v¢wï1È(Š6ÃFSq*³ñˆG(yV “HÂ6Ži%šsÚ§úßic¤ U*` Xð'k}ÿ7ïŒ$0'ü7¿o>Å~–Ç ¬­å¸µì‡$¼gì\+!xГî$”üQÜUZ‘ F&Ë©rT§GW®ƒþcF¼ã¡_&šN)°£QÌxpÆù©‘š'H{uÔ÷7Hßfô¢Á;ve.Ô¦ÜΑF¤ð,©ñ×tVR»ââ³ñ¼ìà?¯šZëAâú—Öþ ZÓÛº îtÓ«=d넞ïC½Ê'Q½Õ{Nƒëî‹ÅšÍ{±Îè;}/öóЬ¾ŸÈE¢t=ü?Q3V5&"†‡½…»Ò-)€Çé}{ÅuÊÕhfU¡Î¦HbŬXwïI¦Š™f,}Fàn$‘vÙ»î[«jþ•fêgòØœþÊâ´œÖ+ê\ž?!§mÑÓ–cPö£ËX†I"ÇÈŠCÎ,Iìýîuïjî”c°íYQtúž”ʘ«âõÛºz¶ +%“,qWÇå%¦˜Ea{昰‚`AT~?ŸZÞµý[.wé_Pº¯Ñ½£ý–Ð랯²í_íæî«Ð=-ê~³ÈëÞ˜'D.éœ3uú\UkÚgWdjé<m$¡RV6…ˆ±ÿ¹6 —ÁêΨZÚ–¤Êéίû•÷¬ý¼æz¹ígÜOXº5Ð^€jþœûlÑAÔ9j=мn¡uSZã5Ô:é~¼ÄtW)¨t|½[ͧQô¦›ÖyØ5ˆtçó!˜)’%ʹcŸkà¡ÊÒ,},H¶™/k8v<Þøû7Õ((U§ŠzpR©Þ³<–'¯^½h¥Xá«3Év5Þ"œ•+Ú÷fŽªq[k¸X:ñEòy1ŽMàí` vPê»ÇÌóÒë¤u‡r:x- ‚é‡@½½ôËJä5]í3 :c¡ôfš¿¯q9|GPr:oGè=…ÅßÖ-C‰Áehj›˜ÚudÕxœþ–£}ïÇkJüA8Æß’ª‡‰‘‡c“Êß…;“,i3,w;·úkj©·®û¤©JÉSR”TTä¿ÿÂMä 1Ëu-(̰O¥€n9°¿ö*ôÆ:säóÝ©žâêàŠôQÍ,©ò±Á‘ìOŠ)¥„ùH‡ôýÿ‡a‰”áð¡ÖCŠÅ‚¨ÇTnQ*EfhWeŒ3ê¤Þƒý-U9LÃ4‡¹ü|k‘»lÂ+)ÝU©àæÆÏ\oBµ`iÓ"̦äઇ‘Øì—bÏýĨªH QO€9rܰަµ§6½ #ÒI q A%»½˜r9•eÒá$»ÎHôvÜ€8ó8uBuH1IN­ -<¶V†œtƒE‡ä܉"Š­uåùrܺ؆9dz‹0ÊÜÌK!S „’]ãYª8n\D’ØÆ %íüã?9c7VcA ‚ýä±?lÇ$FÂß÷Ô†I;œNòY²Æ³ jýˆÉ,a8,½¨þ @MU`,˜ä Ù€lP‘…ãf?…‘ìÓx·/ÒÝYTj*w"&.à›fÀÌø Ì,0K0™Ü Žç|7ß—'!À”9)$“<‘¥ò0€ñd´9x8ÇX+¨oJ¦Êæ5U%†R¥ÂÆ’¤mŽ )Zo#Aš&»ïé™*! 4VnѸ&2 7+,‰Í$X[e²Z!&vçFF$ã³$ ‹ÝšK!|yYŸx˜Ê]Z!+Hœ»ô"(úбk{«Äb¤D±ä;;Â凒'!÷€yíõðë‚À$Ž“#D+»4ÍbXG2E,mÏ´læwÚÕ;GµKú)¹zc» •)"ÆòJŠ#’´¯³HYXƒ)_61ññƒ·ýw G—Á°JF*pŒ2¢É¬ã¼QÏ]DNµéCUø_ò“± !‹¬º" UÕ}òøÜ¿Et¾ŸÖš¸ÞÆ\¯ˆ¿¤µ }CŽÍi«qK1Ïck,P³ ´Y<^¤+‰ÈÃu¡R­:Hz‹%ô¹Ü‚X»Øb ¼YNšª¡%L pMø÷?òXkQ«ÎÀ)(&W’GÙD‘Ùî(´Ï‚5µ)GÌÓ猅âžF|Z@Òª¹í?a@ì`P†¨Oqã†äi–ÅRÕrJöÀçAõMõKhÝS†»c¿éþŸê¾©x]Z4¥ÄÔËb5 ÒòÚ“'‡¢ôrTmee±TEƒžzëQ¢É|ª©/­gcù%­“©<øwh2+ êvãÅÈ1é”0e«ÖÍ #%<Œ´§í¶k49éÑ£s)€¯AIKUA'I}IìXÜ‘?káUOô(ËBK‡fobÄì8Çaš5ŒÉ"‰£}ÊòJ¦'e•JºÎ‘‡ÛeˆYŠ~2ãÑáß×¥‘^O&E ÅeI!2nû–*#Œ¼m$µø‰jGÛ‹¶Ñeœ ‘˜ÓK1Pf¥Îcb«j ÔyJŸÅN–¥±¶)gM˜ñò¼ó7ÇÆe¤ªd'©$ì¨w,ñšÔõâXcù¼-Ë%(Åh'išfŽÌ±M d ,K<«cs¹o-4X¹…þ="üêcK3-$¹f ³À6Â)ªàèXp $´7— c|n÷–> JdibÜÜ÷–NBM·gýbµ°þ]TÖT!Pв ˜ÌŠ>ÑÆJ©b„9XÉ ’²ühæEƒdñ¾Í‘ë^­b¹ °ORÄrX‚☚½È%ÚY-Ãf-«ÉX—Sq놩 e› dJWÙ™C4q$ Ï1å È írD’Y"-48þJs•B›e³™¤­@º]Áƒò±é»v—fRM˜‚ ‚ðÎâîdûáØ¦®­lÃ’<ÄH¬¡’Wg“¿ÀHbˆÌ;™¯²g5ìÑ E™=l<§‘W™ŒûoÆ(!–Û·î†ç övcR7j­óñ’Àeõ üL™‡4±ÜŽ`VS,FmÅvW‰Jª(Š–`¯ÇãË¥¦Þa°è¬ ÷c‹ˆE+ÂP!%küs(™aÇ3IåQŸòÛ–HO¨¯ú@%íßoÎAç É.w‚[k}|sß qóŒvÝ·R6i@VVDŽÃvÛòqt­po&Ï.  …x4ݲI`Â4Xáí/8€HþÛ¬pˆÜol4ziŒtm3ÙpШmÔ–—¹<‹ÝWxÝ-Í%~1«“”–»ÖXßÜ’w“½ÈFñº- jf“äöTÅw‡9ž ï@ü2ÔÈ»‘ctH‘¶.âCMƒ5÷CáÍâÉ‘~ÎOùˆ°ïwÂР$iU\„—n÷7]ì$Rµ¨àAjÓm>;ñ†>…§fICÅ$LH24"W˜Á!¶ ¶gŽ)¼pò¥5YU¾tUˆ•äaÅ£ŒMÝåW@vS-kNÒÊ¡@0¦R«!õ@Œ }¬ª(f=–¯bªdR!í1E†%˜¤Çó 1wÜånØZR¸T¦A$žxÜ¿$áÀ$’îO{ǽÇÙµuV3o%Jæ>ÜŠ¼R²‰_}¡ºÿ—.ƒáÊQT7§vã@¢F£,|»-Ê-Ù7 O¹XšG‡`$¶¶rpÌ€# «LÏ2ÄY¶vvŸŠº“ú9Iã쥎BÎ=¤.¸í ÑI+<‹)i«LîàÉZ!f‘e™¢Ý±Ô–^9JÁ£Ë”!¨©™õû! 33ý<;á€Ä— "Ò%Ùãvà[r÷N0xœ¶;)6O×L„°ÀòI*²×h«K",qΓGÝœ;Ù Wßl„LjO^(í)$ŒéˆÇÏ4SHò,S<í ÓÆDøc´Y¡úC*²B6hÖ-õé1âî[‰’r0MG[EkVh`†äòW­fŸxå’Jð@ìÔHêÔzüâë¬þœJ]~©ì/0ÚƒPåýªjzd±ÓQœ“ÞKuîSbîj§¿H°¹ ž_Qõ+QR—5CFÅhަajPÌÒ›æà’®J3ªç«e³ Ò¥’Ú‹Y/%Áätù ½:Ô)¨„¸2–Þ¢ü3î6¶?MÔô^øåÓŽ1"D¦h,ÙhÔÕîvÙfK’–.n—'-ßž""¾ö"EŒb=¦»¨F¢¨vm”Úå¸s,c¶— ×g?¢²’ ßD}ÕáìhÙ3ÄèHl`3>Ý'§›«¦Òa:Ša–·å­Mzh놪UÏ¢“Ô3 2V55”EÈçêgÉ;íVV”L—° O‹6%ýKÅcñYšÕ1Õ ¥\ãZY"$šB^N/,ä»ÉR)+4»ß½¹’6.f6` ‘„ûıÇÛ9D<äU?[•«ª“[Ð8Ã4 ™HøÈUêÓ3ê* ‚tÛÜcE€¯<¸5Ìr‡,åž¼¥hÇ IÒ¾‰-Á–/ý¬±ªªóBj*󯔼ÇÎöq—r÷9ãÉ Ütõ”¤¥ôË™w._rXmõå3©?ˆ¨ j ag’;»Å°YéÖžÓù¬5ËWêEqþZÃ]Ú[‘D°ŽT4äK0KOòT{Òÿuº;Wá_Pë½míw§oêš:+Oê^„{ŽÈûŽéùÍ&›Ôš«%‹×ºàtk¥:_¥­W€60˜ŒÝ·ŠîZÅS.J¾Rö/›Ú¬åVU’%D 2]Ë–†"DÁÆTeª)'R`ÄÃÈ?IŒ\”FJ¤!c,2H,‡dHÑfzÒ–i(Md%œwÇXTôü!SdM¹ »!ƒ‡ 9òXá‚M‹×V œ÷¦t5'ÿZ §œžN÷QðZAñ=4Í`uvG¢ýc«Õ“us{/¥ñ8JStôæoç²”±–!Ž‹C)i१iË“jzžáýËô[9­S§ôõ&}5Lz—)¢$­‘é¿Rpx(uÞ N&²Ëtúî±ÔO¢)õ' ¥åLµ¾šÏ¨bÖ5¨Ê*ê½=FéX‹~3*\ ÉÛva¥‹›ö#óÃþ¹ù©«å "OÖ{–ˆÁó¹2¬ëˆ¬Dñ²•~%Õo<&x,FA»™g‡%‹"¼2l˜Ëòr¦^âÜ™¥eni–9lŠáLq®ô 2¬åí«zªØÏxÍf:m‡Órõ:z•­ºw§1_Çt«x©Û Õ&¼Ëè¥ã+ê=µ¨ºc«féæ¡Æé^¬iõËhÛ9 ×êáõ?G;𯹀÷oÑÛšSFêEªiQ:—Ii=Y~Æ“Ó}U×}9ÑØÝ_‘‹€±¬:…ÿ ´þ/§º-•–½\5έc:f^ݪwªEv³NßÊ0ª˜ d»ˆs¿7zÁ.ªj»ƒ8¯>ö% ’JË’0ŠªÈ‘G+ñ†A+‰e†'0‚éþºÔè>Õ\çj-â FÎżF "HÁFvÙ$JÍЬ# ñô¼ÌÂUÚpEt¡îßÛÆC-‘Ä7R¾%º9N¡âgÍçôƵӚ•`sZ—©új¢êM=ˆÐ7u~‰ÒZ{5©õ– Eg44^î¤Æa2œ¹Q>ÐYÐÝM·œÇé,ŽeòúRÆ"¦¡Óº³Fk^žë<Îb ÌéÛ™Ô½;¤54ur¸©Þ™ž\CauE콌”Ö±ŒÍ%­“U%J²AØ3°±Ú| 7À¨”jJ‰},ãi#ߌdoŽÂ%FûèZ¶ÑHÿ¸i¡Ý¦t}÷»ó½“ÿÜÑŒCãÒ‘¹Ž7'!Oi'•¥J»Æ"„HÑM/Çi;óz2ÐÝnòq(UXc »Ê›@ŒÇå |¸,ß*r;=˜²N V}èÃg,±Qº7Ès]VHäcß•e®ÛÎ!6%Ÿ‰ëÙXó³Îiñ/L±ò]½-<â¶µìnv sb1¥-™…B‘~jBŽIí4o<É/jfÒ³$­{!'rŒ½š‘ l%©÷VHØÈêû< §»#ñB¸%FÞ,4ʶØËo¸êV¦bÒJHxå2€M=©Li‡à­ó.E$"õq˜~MKF~bQc("š^l»×HcyR6±*ni'ß¿ñeJ± l¶w;N—Þûù«R”C(7 `Çê>Íc†w’0æE”©˜$kÛu•lsæ;Ò«È€Û†º=¬Ôbµìr$(î:ZC”¦’ñùõ‘´BYšuíÇùc@±K?Ç<8¦;áðï£ÚÀÓFJ„n»8 d@¸D–)L1É+¼ÕâÈÈø»¦l%$xeRýaUÈÓµÚH®TDJÏ_"6ìµX:Ñ%äÅ#;Õ­–vŽa´*0BÚúTGk;o#S}ivù’ 2;HýÛz,HÄañˆèRdãJ‘âÑ’ªw È}X©XÂF=Äd>yY|Feé!Äãc1â2 €R­FaGš´QF‹ ’f«)íšnVHÏ30ü`° w, ¹'v<·äx—#î ò»…Ür^fVü^L©b2ÿ ”»Ô˜ñ†;E' ©°°Z)ŠÊª§o\zjÔ’ ÔS¯sqljö~øéUJ™¤@H éç—y8ôâ•\¦*ë\§Fì°ä[„¶¨W©5e3) ¿>çä³»Ám‡u·¢RàpBN+ˆÆmÇ«¤ˆT!ß`B¨t‚]Ì‘† …U™L/¥@6(Y"ï¡vEY£“jûòIäóg“~Ãlb‡ñ¾ŠK• gT ê‹ìƒîOÇ¡ØÈu*Û*G«3•ª§0° @}í?·ßËÓ¦h ”%ÈËØÙÿLuµjtu6!­NµyW-¨¡kFUò³Vexi ‘¤0«ù%©8ìË·¢“á0n^¿ð¸Ñ jѤ=°LŠø«qY6xötøï³DѰÔ^Ɖ«´áâ!‘b¨J‘q¢9I0“±¾ÛY’Ã2Ø‹ŒtTÏ^Ä ´ÑFì ä¤áõYXlcWb¿ §žûÈ~½>bµAK(BÔ &H$º^|϶!—¤“R¸Ð@RérÚRc³þ—ÄK1…Á &^fÆQŠEÅäì,¢™âsŽ•›„q´Îá¢y„F;¤*ZI&ÞOPN˜ã¨å19 ò5)]–;À3ÏÏ!F«öÕ¥§úYꈂV1‰V"a諨|`Ñ1á²m‘ä¢É'Á²Dt™…`çf6ÕyVÙ§Xä™}BºRa²ùuʘÂþ0ˆ>v(´B"ãØ1f–±pí;I>ÀI²Êj§%Xë^¡R˜’À0ƒÄF"ªtÿH¤‚’X€Á‚Z6À°r#ÖÀà•ÓŽ\pÚGŽ3ÙZÛÉ …Ü«:°äÄfYŒËºOP £ÍV©¯ :¯ˆ­lC(j;Ë”È4ÛºžR·äŽA@+ièþ.A8lG«3¸Œ3ÆBx–KF¤;ïÀqäry•°;z¯ÝM…F£©0@'l=T#Å%€{+ñêŽAù0ŸâWäÐÝmVÉÈ jr ôª•hµ‘¤‰T—c·Õ‘òPš“ 8 @,xo×·t°Ï!GbìŸ&B2Òª“ÅÌŒ»4®þM˜Àå“ié¬gê:¸H„Úƒ RS ×›+Šh\–I£†P"–ïžÃ¸¬ˆ5Sj­éäP©Ð1 ˜ðxw¤ei•^0LjËeÕ¤H!“xÍ÷1MŒ›x¡ƒî–Ѝ0OÆÁ²”"pb)³Gn)Ö#Š6XÜ?F<¨V™ãÏìG*7C\”Ò¨ÐE2]ÙÄŽü ¾ÒÕ§bê>À—³ÝÅ£žNÇIà š§ W·Æ‡ €¡ÅàQ*Ø[¤Œæ¬¶cQ Ãj3Ç×?5ÄÁÌKSF¼°×½üq0õ y Á7á"¯²º ¥çÉØ•¢‡‹_§:õbá—BÎ ©1wu2"·3ün7vtE”0ù I?3ªr™·áÖXE‰Ñ€ûˆp·âàˆG‰i 5ÄCuVFûc g«Ú [7Úª`º\‰'+D¨•‘&÷H.ï¼ý˜W¨ ÁŸÿžì#ÉÃk$‹”n¡v* œˆ2€Ée¶%Ôm ÅóQ}f½)åä|¬D¡M»O$Q–^X8vßÀn´‘äÿ–OÊ,Œ¦';…Bê@;¢¤l‘CÉ:#ž(ßÿxaŽœ–ÇDû°õãvx’3 Vâb’Ùå<Ô|ví‰ç–3ãíYÊÓwç•&€ÆÚH, ؆Þ!ž@ò×ûâ²»Ž6’Í;yÁo§¸Nk j|­.Êù ‘«Éòkñ‚ÄU^Ä(ðÏ ÊE•™žÆÑ˜¬™â¥Æ¢£I;¯£´ÊýÛNQÍ&B¯go ì„’'µÂHxø–Y+±ü­Éù;CâÐùà ó×V³vi,âR;7P¥*Çy&†JÖdìªC¿ÃŽ3,sÃ,ðD1ɰóâršƒ#—£¦1ðÚ–µ¸iÿNaàä—­È·,sŪB–3"f¡heH›™¬šÕ*fÕñÕM4”K*@é±v`ÂÎdˆÁš&šieÒª!o§ÔÎäµËÈüÆ5õŽ;C8£F*QKFº:@,Cjy«Þ¿Z7y§c®¡&úÜ Ï–äðR6RŸ©¹“`wK’lø)éwLÇ‚úXD?ˆúᦟ„§ŠÉÄäÜ{…É$÷Eßp–~·@G¦Úgû?'e*(Éû ÊѾßå|(|[L¨ÄmÛ;+ W‹ËèÌ0Hyñ7„`=xÆŸ`8QH%vÝAØ‚#<˜‚7!‡{ÛaÈvìAÃLÀ”;!›v ü{|wSÉ€äʼn>v#}‡¡T¤”ÖÂJÉií‰LaÌ0”0G#"¼èÌo`|u¼“)sR‘EU ›²–Ý’5#Ùœ—Ü‚àò`TŸÖÃoΧ0Ñ–eC5Å ]_„0·X6öãW”Õ”•ŽJ•ù>Ü€lÍ#É"Ïô¿"ðÇbç*C´® ô_©j9¨6&˜ˆ)%ŸûßúÿS˜%á&-fo~ãÈÇÔ°'gVm°&íäî n“×ù ¶õ…^ ÇõçÃñ ßøNGêñ¹,<Ÿ;ðO‰ße'ûT6ã` °ð8»m°!vJRÃbÜ›È î;eH Âð?kÛrwØo°¦Í·ïÍðT“yØ1ã¾üÊò܃Äq'm÷ ìAö<ÁôļË~/°Vm™wÛ`7£ó°Üø;ÄìWr°–I9HU•Fä»! x 5m)¹oÙÊdeÜÄP|‰?[ˆ*TÎûï¾Äó¿¤æíÇ×óäXþÜwïkí½6F>êÿÔuÉ0÷/ÒZÊÒ4’ÆHöAíbË¢ÀÌ‘°t”ÇVhÆ^A/uÈ¥*µ„G‹ˆâͳy-”bíÚ¼ß'´›ÎÕ³RÆ=£fÛzíÓ‡Ýú“Jñ¿}Òt¢¾òT0ÇìgÚ=–“äVnåz(òD“ÖUþF)ŠÏ]þ-÷õcɓ츲wBGFV'zXU§$â1Ý5Eï%Áë¼è¤Œ…–vÛpI÷/ŽS©( â ˜ƒ¥/ÛþFšA»s*˜4b;Š‘§qd‘M&im¼"$2áüÙ¯+Ôó|váâDy É™§ï;³K ; ¿ÔXhÀŽÝ¶t‹%ñªÓ¯®ŒH¤ Úu“¸½Äî asÙS^XO}ëÚ1©}‡Êɺ¦' ‚†ìŽ´‰'sºÌª8™ A’ö™Ê§ÇVdî˜ôô…ÅV!ÊiÄHx¹‚ßßݧ€w­§òÄŸBfqø<µ‹)]"’”UàÆÒ—’KеÕV9íA\s 0I Ù¢ÈÉ%‘JíÔ"9“rEAÜ/"P½Ž8¤1Ø•¥Hˆ-VP!²©ùÙMT±YM~jªŒGnG&GPý´“²„8í‘»÷FÜêvÔpÉEŽÙúƒ*I'(T¢N°8«¤2|¡Ý†"ˆZ §-^”}Ü5¢m¯vA™Œ ÍCV¡T€6`1 ±‘¿Œm¡«A:@s"L‹°Ø<ñ¾Ø°mÔ 3Î@-XÑ»oý¥“»†H,,¦iPwãŽ6,b;ÈbÙ€Éê“i"Þ%fí”Ò°aìÈ7ì2ÚuX„î$–U¥ã‚JñrR@ FІ€€+‚;jéÀXZé'‘Gó+NL³*Õm½ykò}›˜ÝÜ»$qÈT˜Õg-Â%†K¤ÚÚ£­9hó›¾±ó€é9R )A» Øoa-‹UÔë¸d¥‚ŒÁˆ=¹àvÁ¨“¨*â«â­Û˜C<ÒX¤´R"ʉ ž¢•gÕO<$‚)îU+ W7׉r›{ɱ“ÿ]@T9qâÜ &Q?67²û/­øêp ­ cÛŒD#ÝÕ{ʯ[u•Ä’|„ûTŒ’2ñƱæBæ%Ü—ut˜Lo*½vcÉUtþF˜g‡u–Ä’¤ì}¶õ3­:˦w:}­ñz?Iç±·ºù®¦wS{fÍæ¡Ö¶ñ½4ÈUÅdF]××5aÊCjÄø˜5>1ç§6Fn>¯GÄbIÙ†ÑÀ¬¢7Þ‹-Dßv’¼i».2)ÚŒ¯-lÔ¢ |WÝ }†&)$fýÊ¿Þ^qži ¤ ”ƒ–4<ýfÍQËæP’—(i÷˜µñeË ¿ˆ†Šf\0¸òìãÆ>Q_öwÕÝiÕ:–jxØÙºÓ«ºÕ§z—ˆÖz&•»'/Ñ|—M´æ’µ¤¤öï'QÛ5VKtÏ!ŒÌuó#ÒÜOH$™Ø[ÏIþÂ’;kØV«Ãh- ƒÑÚ[§}°>Ô=²ôÃ_a4¤ºONÔêF¯éSz—¬5f•ÉÙÔ},Özu°·¿ÝøC§u6°Ð:•ò¿ [“Àà0Ó¦¨¡öU2ÊXí#wœÉXºÄæ„È3Ê­Ã ùjür–l×^~Ú)|ÈY ¨wž^k2„î,ó$bC$a2GtÉWD¥-eRVz.L… uC.Âs~ ÙÉØž¥\((İH"XîÑßßó>ʺ Dë ¸mK”ÆG¬úåŸÔ ³«½±ä.iì§TðÕ(âõÆ8jOjy/o5óË#‚ê Gt«w ¥2W3zS^ë<­ö¶HÅSÙœšw¥Z· gAiuªJ½©t÷OX‹Wb¤Ö§Mô?Vé}y™Òº{¨ú§µñöÓŸÁ®[Ac5&„Âh^¿C§4V’ꎘÓH]©ƒúZ•%Œ6ü[‚ðÑ#¬lâïÀrR„?{džÝ§¶>4‹²FÆ>Éʬ0òÇÞyL|¤Ë’dC=k²áá’edž‘”D…T* jÔ§xHpû‚nï¶]Fº€ X$”–†¾ý€нí3§šÓ¦.»€Ö¸Œ&#g¨½KÕxšº]:Çg¤Óš“Ze²ø §Pcé&’Ñ=$~©d1Ö⻬²½:ÒX½%[QM~­d¼Ûߞ̻‚…ÊGÛUqÝí.±¬rÅŒE»ÄèÝ´ä˼„LkËGv@—;¤µ3“]]D–VÂÈÖå”™5…¦©fÃ?ÆWDQ^ŽEùɉX£ï4¬JŠF•:iQP@JdÈ âIh~vqŒ ¨j,Ôf*0·èÿñ†c,I*d9xä`aæ$ES`H±F´LÑ)‹çAY¦ÅÖ­ÚÈã`93• ¼²#ÎòJ» q´J’òYv•|Ó²AŸ<ŸŽÁV%}l½aøÌ‰É'a¾ÐöÈHØcXÞV0[hëÄ Œ%ƒ!Ê=¨'Hª»:²ÃÁ–vnD*0fÚĦ8ÔM jÀ ¥~Í îcÏhò6 %%…ÃÀ€Ó1ÁžpµH1?¿Ïó¾4ÑöÙ$eJ0p±ˆ·I6CýµH2KW¸éZfÎôì$Â~^ž“µÚ滕†î´ñ¢¢°ßœH¯f¥Y'ÏH?)ÄC¿§…YO$sqÿÒRÔH±Äêå#g–D‚R RÇ `‹6Œ‘¡«X}x2» d‘¤‰b~ÏÉ–ia¤†f 6ZjëËc…¬WÑä™Ò¡wì.Î?3~;aK–ÒlAßiiî0ÂnZ0¤ˆù–àHÝ¡Ú$–I¦„B¥· Hps«bÄn±¯H䮲$\B0çÚu€,¬$tjÐs™*³€Ù ð<–gn7á5«ï»ÌÈ‹Æe”4MN‰Þ%!U eŠY»;D*Ebf‘ä&¢–ì°ÇñÃF"f½~ºÇŒ¯¬ÒH¼Èr7ûûLL#GÔ)?kˆTä¤h¤>#ì#D6°£úÜ`doA¦Q¿ª°ŠÆ7Ý£N chcFŽ@b‡²]¾ ¯0V©Ä.š²­%¶œJZE«•ðcPK&ý’ðoÈ?½ÑXŽw„`Ïq‰ŸÉ Ìtš5ê.¢Ö§Q†I:\v,mîm‚4zJ(E- €ï±³Éw<þBÖ>»ÒîD²j*ýÈ’'lX°DJÏ"‰£±$[öêNxä%WQ‹œF™#RVfj=s¥Ñ3›­±‰Äiq”KI˜ ì…÷gzñ¸Ž[I4rT!²®Õ`HÎO'11Ä@Ë! œãQðIåhgŽ›»cìPCóTÞHRL«¬h­ÇÂȹ4q´\ŒM«¾«8Q\“ß¿ÎL4±ÁqŸYGC¢Ôñ°„ØIü€‘‹ÿ‹Ö€–,ñw±æíß>¡_¥—ÏQ±–µ¸€ =Wiݘ¯'„Ç4qÁˆâß¹^F0­s#Id#è~¨W¶ªL|UèˆçP"+IýA°AlRÊZLÿ«šG é¡ã³©àÓ’³Ê¯ ¥RÛŠV‰ØFÙIv6ò1­{XnÜ"BJФ)SM0I‰b÷!š<öðp>¥o‰QEBTí0<ß›ßNœçp¸œEø²4e{‹2æ1‡¬ðÃ Ë 1Ä«V A,J¢¾*Død¤Q$’—Xi­˜¦{B÷P‰â~PÌ¥$*K°!¡cÄXB"®¼ýÎ[ Z~q3+Á—´§ê½óå^ät% R{R¶IT³/$(†~Drí¼\¦’2ŠÎ7ùhÅ㟔1ä]›sºáå-VÇ >¿KMj‹¨¥¬)JÔ@hv"w¹}†ö×K©®’>JHíÓÞ‘r7Á[Ue±·µ†»Råk4+-–ÂËLÅ\Çr[SH&‘„qšõ$¯ ®+ÇC„µ‘rDìS:£LÈv|æ?Ùv9 Í rûÄXUVu#áøE²6X{žÕTy•¡¥ó·$Áåò0Kx?3)DPˆXÆXÕ„d:oÉ"ÖJÌÇQÉ .Ò¿z"P,*•fXË™9óŽUçÊÛJ°(™!™·9£ild“Ì\åñýJ[Ká5\ZÀO’Æ6”ÎÇ£rÔçÇb²kŽÅÀ³~Å2Z§¬V:©º™¤µ.&nªjýwN]KÒýS’êâèím¥¤Ñ¹^ÉÖÖ%»‚éÖ w%kFé^›hWž³¢ÍbµV:,†/%ô8J,“Û‘$c*$í2Ê+ XÞ8û•$¸*žPÄŒ1ÒQ <êrqîïÇÂ7ÿ"pé4éFò*,±Úeþžw0VÉL¦äÓ“ŒE¦`(WMÊ7Â`àéÕ»0¼Øû‘14竉ø€ lå‹¿ ã¼Ó½-О¸P~•ØÖ½tÑz£%ÑmkѬö„£„è|ºWqý+Âk%¨íêšÑu?¨³ÝGêF’ÖòWÕZŸ ¬ôßKñ2éÝ-{Cô~…¸µ^+YðžÈuv›éÄÃõ—<Öz#¤z7«ís¥6eÕ™Ùz]G …£©:_ž¯ÔÌN'§wµ.•Ó8,Ôu6•ê•[rE‘¿b*Ù ‘ÅCèCqŽRÑ‹:6Õx–p˜ä®»EYk;©ø,â=7<­–yà˜™‰gBJ˺•xÕYÛŒóÌUƒ)ç,NÖrn œ{ÅÛÓ Ê’XQ&Mø¹wMâ1!žªIiÿˆc!¼ ùmŠ*þÊ=+Óm9Œêlø9:{×>¼õ·™­£0%š~±t?«£Š¯Õ—³zm§éü=T­¨#ÉêŒN¬Á=í5%¦eƒ5fÌ%n]Ëô0ë†Èj̸mP0 ˆé×O4ßR4OGº}-*2¦vöŠé¿P:ÁÖ•Ñqë ½Ù&Íi–Ó>®/¦nâôd9dÕº¯UÙ¸#y¥RVM’+ÄÓ–7Ù;o$J¹ҫ3ËFjìÏ“fÈÇ Èë’§ÈFeIVȵ#«sfHçŽÃ“+Ö¤Ó#8Kvå烑²C+É<¥*ˆ¨BÐ@;{|AyªêBé©D…If¹ãfŸ¶4™]ÙX™&rÄrc „? äI‘%Ÿ´zHáJ2WûQ…ì¨'<¢%ÿù‹ø#í§Ø•™Š× 4®Ò,–TųÂmeKˉÊ:Uš¿ogâ*’È^/Çác…¼Fj„ªÿq]6L4ûMe¤A¿¯MAœ²lxV¶Rôª’¹‘Ý‘&àC+#7"c‚d´Y¥ŽÄÅP´Ó€Š`pÞ˜¨0Ò¡%¦€Ói“ùbaq'PñÞ;y¾ømÈ@94êÆÊ°ûFò4Š9YJ=i¥JLDôÓcVCQ—åõ³•kÙ£bI"E5IHÚi~7(UVB÷J‡j)’þMX‹ÒNV8†š’F ª°ZÒW#âË]Ó¶ËPÒnÓ=bìš~u)^h¬º&D<ÙÀ—ŠºÈü§WhCIḁ̂ӔŬ_ÙÍ K‹Æy IpC–³ò ÷¸; X ¨lAìlX÷ö‘‘6\E ÅÙèß+„•ŒJ8£Ž;\šbb¤Iv™-o¤$Çd+ Œ$Øë¢8Î;$ìò4sUXeŠj‹ÿs«%wš ¶×B5'ˆ •¦$•UV&yc•䔩5ø*ÆÄØáÅiE8’¬•¹A“/kaéQWŸ›J&UŒ hdS"ÄP– aáH–å•ß cJHŒþ@_l PvãÙÙ£cßÄk±N”ÚD´-ÞNÂ{> : Pbpô²ä²ÍŒ‚H@ŽiL† ëÉeš¼rÔ™v,•Ù ð.䃸HI¯4£¹TË! iו\°'äž»RTÞg截ÝÙYLqÅ$ŸÙ\Ä2í•…x1Y‡Ñ8öÛ²¬ÑÖI÷!!0ÒžüòJ –ÐÊÊK”xËM+³ÄÄ2ØTKÝ ZD(\› îæ¢t›b–¨«ôêWñµ²ðÌÎ7Þ#¶û³Òêi  !ƒ¿ ·æ^ò{Ou~_™ÔX+Õ-¤õj-1<ÒBË]®JY,K<6~,¶R¹pp—‡"+%‹“Æ ÿïÝ' ,¹fm£‘ä_”VNѤ_º|ä­Yø›5x MRz,EÒü~²!–D:ÇÛhÕ–@â Ñ Õ$Š`Œë=ã9u´’“MÖnATé´jR¦ˆ­4†u’ ßã žzªµ2IY $Ãkˆn7Áÿ3­ôÕŒnZ¥l¬]ûTr5kªÕ³)6>W‰‚ÍZî¤0 5ô^ŠÒJ'-‡tûR`°˜»ñd2™¥¹¸Q!»a«Ó¯Z»×’´2Kbš"*Gs½‘?êó;8ÕkÊ»•¸/Û»$BefEØWˆ ¯: ¥Æ¬«Ïo+ÆpÒñÈŠÁNLU¤ŒHÓvÃIÜiIyßx¹ÈDœ·»Ëi²1mc°ÆÁ}:zmEtEEiZ’¢I,>‡S>ûß«¨T5ÓP¥:’4°Ao{¿Žø± ­t§ìe¡2n<×ÁŒƒ´Ç—ÇQP>T ±¶j†^A½’Çf30ZÇΖ¢”ªÄÓ¹Y Ë«4R¥„­jT}ëÎõb-6J›UÉÑ… ©4–bë Ì]L³ÈcQàY¤P>(…;Î`–Œr#À!f\À.¨=%kÈÕù³‰–96kL‘:DV8d‚ß$ž ­^µéLö’Ã>HEFP-Óèåª&¨YQb;Û¿ãÃáëgjWJ¤¤Hr`=¿ä†l4$a6ÏRÒ¬ÁPÁ,ñÊêæo$°!½˜ùÑ–¸àC^RÞºX;u«æ17ä²cЦG-‰`2üqL\FŽVÚ),É¥^:ÏMv݆lVA†>Ñ´£€‡R0ì ržÔq/Ðï·a‚$‡q©F¯ücom‹¡åéRÓy]šFŠ÷$ Ue/ÝEK2´°òù²"c{6P’AIBФ•6´”8%¦~ ‰ÛТ•ºD¤…9°ÿݱc¿Þz`€j—å%‹¢Ø;(ÝóxJF9)qyQ%ëU,æguF·†ÊR‹%VKR· q´ö•bÝ»WPf_µui`7y)­…½–˜b†‹©AÉNÎÂ.0,nÙ`N#v’#L49G7£R0+=§vUyñ³nfifU±e?CzPlÒŸðÁµ›˜ž—D-*áZ¶xWÑ¡‰÷“bĪ”¥ˆgï¸Oƒ‚ÞÏá±XIkäò)VÃe·Dy'“Ÿr´1×%ÌQ+VìÁÛI"•Ò5ŠÛ™"~Ss­t̨dþb´ˆPÊ ¥…n<ŒaÀ0!bÒ+,?]åñÜz®MJb\´Q´rŸ*"uu Ž&®àRBÍc‘|WŽɳ$œ£,öd’c7qܳ šI¥ñ+Í<Ѹi¬DȽ„ÎÀˆi Ò«³Ê¯L£Z¢ªŠJu0f³Ðá#¨Ô§M4ÂPÉ ‚dðó!¥šòüø·BEµPc«ÇÞI š8å6£8Sø‘“ç÷Èz¥¨ë4‘mêÇi^7à¦FQÚKM„@ÜjD²HÖ,DciÁ—¿©)µÎ†xÕÙ«]Œ¨ãb}¤àщ²±(hÄ /?âäo¬6(lźœµvŽq¡Uvcܱ]i%K4Û›Ä,†Í˜TÏBùãTIFq¤”ѧMA’ –sò’|ÉÜì1‚­_‰P¬†*.tƒ,6Â@kìÛã Ìáíi{¾"ñ%âöav›080h]AŠÃalÁ’ÉE^c‘žA—á1*Í;5x^ µß‹µh—•–JÕßšÍ%ÔšRfÙlj ޼ÑÙ1Ø‚YcÝ "t5Ê’µ-CckÀöêË9%}V˜ù[x‰’DE(²*¬h€ÃGi*–|r»ÃÊ¢¶RM™”&Na‹WUC,ÆÊî;|ÂÚ•Š¹cFûY(ñK´˜Í÷ô.·L§Zª–j-%eʤÑ`8ñße.¤ºtÑL%န“f%¡Žàs‰ŸPrtòY¸­cíÖµÆT*ÑIËCbÙe²\‰)Ø®ü»w§øy…ª¬,ª´LÈË-ýª™•a’@Ò«×WïC>Í5µ“`­ê²Ã@p’Ú«—s±â«`÷‰Dí=aÆöZ»5ç_+’Ýóbì–HEhäcÉ7ûü€ì¨¡ŠÄv&fc ¢‡"Êeœ“–) Ôh 4ÓHH¦˜*gg¨7#~ e«XÕ¨º…‰%È“ÈÛûøÄ’ìÓˆÓèB†6³{"GùÊŠ¥ç’5­=ã µ²âìA¸ŽA{g6+NÛ˜A‰ÇÌDº4kZCL~A¯ãî‘$cèîÄ>õ®ã Â`6SŤÎŽÄŽò$Kf‹"üHã+ÕSÊU£¿ÈÇJç•«ŒÙœÿÁa»ªLŸ°Ì“;/hŽO b•¸°X¤¼«²0ä ª†¡N~"»†"5ßßßû—éê²Ãÿí%½ôÃí´o펰âHŸ?mœ–ØrãàxñÄìTo·p¶à¬.Èx–Ù<¾û'ä]‰,7VnÇb¤òmI„ Hù@ÀÞãÏ#·ù%€ØŸWb\nùæ€ ˆenG€;q%‚râv$#{K6öõÁ}C‘õñýÇ×»žYÉû̃ì7!G`fþÃÇžÛ‚BóþÈÜ’±ŽU÷à¼Ô›ãû^›à#dH;nNê~ÀsønGìÄ7  (ñP\¬ßVsÄOÔ…Wä7?¢áwy¼úŽƒ¿î?¸úáb1Í\©s³@±`ÜCªìUÏþ8ì›LXñô(ê¢ï[ÌX•±e\ñP»1cY'*ö"‘È=”ªw–P"›j®}ƒ¤aá·EV!¹'~/''=² »¢0mÔx +ê‹q­‰%·{à~#ª4UÖ@…ݬ𢛠`¬ŽÇwNÿêéw'òï{mŒ¹åÃÔ\wa϶ß]±%Ð,N˜¬I-«ˆ¢IRF<9®DI¹#³ žC;¡gn$ȬZ¿6ýûñf^(Sý OÔyx8h¨ Ådc»oýÌî¡T¢„ ¸g}¶^/ÛÒ¶dÙ¶P  ÙÜ)'p7dêNÃÂ’Ëäò »1Ë9 • ˆ<ü îÊŹܫr¤P7(¼¸î¾T÷8T!ü/&tž[»1`7Ø6 LýþÆÉÜ >ÿó|V=b캫¬ðÙxÄÏ%^P¿Ï|w[rÁ=YÍe,ͪ3gf [Œ6ðÆdyVg b¬±Te·ÛÙa8×%C•´ÛÖ_g¼—ÞǾ’ + aýºG^Ð@VÒTw’9›y¬A%c–ÙK6î,v>‹õ7üNÁZ‘kY,݆ôóÿQ™ww“#Þ!æÞïõ(ÁâÜÄ®ÏÉFĨÿȇ԰<†ÇmÍÉ•X¯4ßÏa°eûÙWí!¾@„Ý·öé¾àqÁ%Èúƒú,|l7ò'e«ì¥wÛo÷åä…*>ŸUâþw‰ ˆ:§´ý=äà°ÝË&7pCM›÷†Ø³³±Ø—cäˆÛuþ娕 ú?ãÖx±í¿•e‚|“ÝBÛ‚‘Ëë¹¾—ôÞÜÞ(á÷kÓ8Õ>C‚²ÿè'Ùì¦ÂE,­h¤F’±ÈÒ¬²¤øö2ÙXö°£è)c!‹Ç+Äc. Iñ‘ÌVYvqU%{•%Õ—÷_Uÿ¦CîgýG8C;•÷oÓĉÑÂå=…{:–ut“,PIÒ#oV„&+µù\’tòðÉÆ6]å; šb¨[¼ßXæhÑòŸôg!HõÞôW!Þ ¶ŸÎÄwÛŒrI!Yº¦.yt¤ÞþÆöÆôN¢5Ø#<í$Ž;¥em…’]Ub’Wcnx#î×UlJüèYÆÜq„t“w‘c#ˆ˜ôª#«í3&â¬#„]• ‘U˜nuàž%€Æ¨&ä%@JžÓ¾òA+vÿív@X÷•ãa¶º#G*HĬŒOoa—nïâFQÆI+³™r,Í~Dbâ¢ñgo=œ?žc˜Æ] gâvóèfq °˜ìöVÝ<Š´Õa¨ò@Yà’9VÌjò¬±I"Èq%k!V‘Zí!ôX=3Ò[³œ|»4¬äü»Ì :qx´¤x‰&åØEœç—¨JÕâÍß^G·.8‘ d“¸Éb²BÒñPZÏhº¥„q×-]‡Éâçç5 ”½b÷}6œéW¹® êá:éÔ¼g^õ&C¯4^‰m7Ku¯MO´Þ„tg ¨"Éeu?Mõ,wVj>¡UÓ˜ z;^é쎩«›Ôz¯QæçÆò=[;˜¡š(¦µ ©¶@>AýÁé:fZZRš\úˆ~ÌCn?±õR>›i8ÌŽµr JƲ“’¸áŠ ŒŒ¦fnôÀ˜ìJ –Ä{#ò@Òÿá¾’UÙqÖQv*‘üÛÛ(¤…#¥~Ø«/娠*Õ‘™‘T–õò¿¥z;Dæº_îŸÜ6S®Þç-ûpÅä3š_¤õj{«ë4šƒ5‡è¶c#N÷P1CÈk+ªÍÕ­jdÄi6Ó×q˜[z"}?S3VÕ覸òêz7®ö‹Ò M‘ëgY4æ¸Öä½µky§u®±›©ÙÌnêÿ^z]¦?ôý{ZëäÌjœN;Né,Ý|N«µÉÔ·šÕMªb[GNe# £SÔóz5*[€"/Ë;ðÒGð9F?Ë@,5ìãk÷µÜÝÝ}¦°z~kbâxšãß[$ö¬ýÀò8F’@ÑØ–S5Å™]»µö‘f>‡(C* -ãa ‘ÚpU@T[-”T"œÑî²6ôhê¼»TÁËí=ÃÝYx-PŒÓp"¤±–Ú;~D`™‚Ø$‚„‰Z>²È¹ÐÕ_›BkÃ°Š¹aÜl{9‘kœÄ{úëúmETÊÓUE)JÖeWh¹{oí³ã›êE<ÉJRÁ!ƒ8^ï½Î' Oã5Œ|¬r:Õ­Y¡ìÚ–¬µ‹O#E,j‚9mpé–+,!e©:vd©Ä›ÿ ô¯ø†ìq†m‘o\ ÃÖº˜ëÅ')kÆ„­iYwEŸI¾~`Ÿ¹0@À· IfsÝ/<\£/#¢™¥]áÉFµ%ƒÁ›ncë ØÉXÇè[øçÍ W,ÑòíGc“,%B+ÃP¸v©N06C$w‘YF ÊóKÍÖM¦ši¥$¢¡Û“³3™fhÓ–ZyzJ©D-JY“.t{ÀùÃ:ÿKb´ÜX÷ÇÅ` F“byd·¥™!Uwgkc<­$H”†&¹Zhœ¢A.î%‘Ù~ˆFÑD ‰e&'(:ÓL;5««R¿ÎÇèÉÕi‹ùDŒÉ+I2¡ŽW„*4³÷0VªX ™¢_‘R@–b °²zÑE9÷#`ñ "â8Ë,C',ì­<´ÐŽîÑæ;ã$lG!QkË¥U ZÉù‰–ÎCù|gÎ"š+)(C'JTCì'gci—cð¬I% GÇè‘ì¡™ 2Vy·„WqñUTS‘ò”îÀE"($ OÝŒJѨˆ(šÔ(Dxøò5?7!él¯É‚™dÈd2#JíÈuŸŠÆ&túÏ?˜ò‚°Q¸õ”% 4jV1 Æ„»*1$RK¸B%Ücà—`“ƒ Â(w—¸$ƒã³¼Ùî!íŒ)H;‰Ûq¿ƒ¶h¿\e™¹o$¬eYVbE…ú†išhÄnÌ"ª"Þt´JÞ¬"tÏMØ®É#J•d.·dFak±ã(‘”ø…`f~©"íè ^A¥eC9‘ÚŒk0»:ÑÅÞ?žU^Xûc·F¢Û–}üꮡhghê'Lúƒ”龪ÐzõElî#‰È[²´îba|rYÊÔµ.1,Å<Èù\a­–ˆIÜ«n½ëYš¹tÒ4–¤[€CÓ³~ÝÁ¹Án™–¥YK¥™ËrOˆpÍñ`_¥ša¢¾«Û–0M¯(û±,|Ô¦ðÎD‘ì ³²‰”ñl/Jôã3;XÊHèêο1 <¤êI„:¤ìàrQVeåKãn}|É÷yÕn¦àýÆõVêj¯iΑûL请NµZ~–õ«ÓiÅŽ¦u¬uuÖC/ÓZo?CÜѳ§zQÅéÞ˜ë+4±2äeÈ`ðö³¯•ÄÖoî»ÜKôŽ#Üî–êö¬ê'PzÃÖŸ|Ý)Õ³q3}4évƒè êfIê]-Óy„´´®cÛŒZ7LÑꆦ†¤¯òZŠíî¢ÉzkØÇ‡œ=k5aR¨\ªYÀffƒÃö1&¿‡eˆRAÜb/Ä›asìt·Op’E›++¤N{‹3vÈ’+9OÅ8Ü%Ä;^/Ÿ@=¶x[bI•%©$o‰£F‚¼Ð3¿åŠ>äîL¢ lgø«<åLGÔ/ê5¯³]5·ÖÝm×}=©}¹ôÏ®Ù{ÝFÔç\gzo¯µ©¢·pÔóS4¹šZO¨Õ2YU¦4Œö#OÑÓíSJASò#bvpI™Œ ÒŸöËH¿ï{Þ{á‘!ÉK·2©Ì’ 9aåÍœ“â´k»ætº#m­ Ywü›J ̬’¯m{BX¬º€¾m 7¤U‹ $‡Á–UqÑ‘Ç1!@¼Q™Òefç^V[rἭ⣿+•z ÇZrÙÙÁœÌŽëG˾!;w#VÌñÀ¢I*.ôícö±!9Ö!Eȼ;7ÚÛ‡‡Ý–CžFä „ÜmãXažìŒþ5ceQ$*!Vw«–3×…$ +Qñj;.Ö¥oŽæ!ïÌä€îP†Ø:Ç3K9^R»Ä"1!% ×5v›Ÿ2..Þ0~q1æÜR_ªºLãvIHe¯zBÒ䡤ʥ‹¥Ðq*í¾À$q¯Ù ’3+íÛdŽUVŠ Â˳L^6'Õ¥@ïh{;·ÔÄ=ñZP•ìÀ;Ûƒ¾îþG¾Z Fbu6嬨šYb½^(‚[1ÃpGÀª‘lòWµ «Î[R÷r1kp­ˆÊÇ6‹¥ºqAeŽðmæ”0È[q!‘‰‡w3¬êƒµg“Wñ«´_ÔsNg+龜õ Sär‘éìnšÄj\ýœüø™²”ð5pšb\µÜôøjµ¬_ËňZO•½‰Š­»96­=|t|ø+¿ÅWÔ¾¸ô35Ôí5¤=ÀõG¨Z3ª]é>kEuOQû—=I½™Ÿ]õŠÖ˜ÔuÒwµ}qÕ+M§Jahi|~/'£píf;8ëK¨i´#ê]R¶[2´ÔÒîÁB&·"ÏüK.¸¿¢ºQS¨÷u¦o§Ú²,¶¨›Rg1t54óèÊ8ÿãÝê÷XµöŠÿJ¡fúßšÔ5úÑÓ½5ÿ1°éM5¤±ýVÖÇ¡j<ΰȮ5ry •nê)&ÈÖÒø½AoJn•ò“k-†ŸZÍ(ƒª¨±'[»°âç6UÓ²ébPBÄå˜ÁL¹›LbÞkŒ-\JŽ3YS‚I%”K$«7pÇ 4¬Â)­Jâ«Aa†ÙQAƒ?tC ‚G„lDÑÎŒ±4mr °Ùv&݆1¥ùwL)2c`ïFñŸE¨•ÿqÓ·ë¼^YX‘{œ¤Q *Zµyþ¥›7ŒÐx]ˆËu<Œ©;È®?¶4äöd‰åí¿a–xcÚo„TÖšŠ™ä‘¯ÂbŽIJ©•B–]JK•$’HŽM¹‹ry¬ÒRŒÉBRɰrͦÐw=°IÑZŸÅݱ6ã±^y)!ŽD®±Â±Ç#sªñ»Ö"f.ÔešxÇE<JK4ð7,‘.ÐHñ™P¬Œ8Çb!Ê6uKñ7 –ÄJ5Ya*jôîëÖÒy‰M¨ëo<¢ RFóVƒHbKÐë5Ø{§’NÜ'›é¿Ý½p4þ¶Ï\ÍàñseR:ÐßábÃ+3d£`ð˜duâÖ$²\ÇX6ãfJÖ2ÞÔ[ ª¬Òêæ :Ä J$%À 6ä3@$„å“N] URÄm;ß¾ÏàÚ/­4Ôk-F†=§â+Ågú©M‡šF¹‘‚¨ìqX%nüX),a3¹ÿ”˜Í vÞ(é$§¾eo†XÑðY`‘‡×€5ÊmÑ#øøyª‡ôLê¤Êú’аÝ?‚@!"W톽|3LAeZ¤ÇÚ0ñ¹$‚± á ¼Hï¿»ñרHŒ¼Á㌗=¹gXöA±£Ú^òŸ”årŠZòôŠÏ¨€d=¤Û3Tšµ4¥ƒˆ;Bd;–3ž0ÔjV¼¨\yìTG'c0ýìk!çž’2^ùr&SQäÛM"±Üy¤iùwlM!&Ÿ!ó[‚’HÕ–7È:žÃ!S‹-i 6òX%ÂÀ$»fnáfŽ"$P4?ú¦@±Ø”‰òCž1Ò5`Þ°’ªÈðÉ"EUãH×z²#EøÜ”Yk»ÿH¬R<Áá²Hª4;8݃3ƒq'Ÿ>MÆ)ôéîrþ?»à¤´ A9 ­ä)Íòd‰R5‰ ‘/ˆä ÑÌÏR;D”ù±øÉÅ2iÒJW1’æe%B¥50ÕÄr ã¯5¨&•gŽ]É®£±V8ã#hû×éhLíœKЃ) lÝŒuœ¤,¸ŠÙ«4ÝË’èÿ­•KY7ä±I2ø˜‘HzGÔwºŸIõG-¢:µ‡êÎ.Kzq”ÐÝqëwAjh>åú£g4ÝWÇt³Ó8:e­µßMΗÆÚŸ©5!Z)˜±¢®`ó:ÃLÜÔ3äyLÿT¯–Ì®˜ZÈ€¤kðäírmŽ‹'¡W.…”'QJu]È>ðwhkÃHñ ŒßÊ]…$¯ 0ÖX]Ë–žŒB¼*–X ò#´ÒJò?!§!é=!7ŒÖQØ1ta7xÜŽ"B%¦áä•?Á¿§F¯^ —¸~[tóÝg¹n³tŸÚ¶?ÕøØÐ¢oè‹Ô¢TÉ*°R¸ÚæX‘¥tdJ“‰ “Å ˆVÕdS3Ä”lQnâ[ØvKHÎÜ&Fî•Ncìg*ŠHÉá5Å„!ñNZäY.l’¾ºü­E¯/H¨’¥ (5È7a%ljÇ;˜£M9Š )Q å íô.<Î ú#AAžÃ½éòv s$õ¸¯_®Ž •‡Hæ,e–5xÌ–-ªöåàòçéMGÝŽrü‡“<’É g’s" iZNÊ5ˆÂ¤åľ¬U%ûžŸJOÿj®OŠL²ó›%€0ïÈyΪƒÃºóØ4d‰w%²‚»‘¿Ýð»nÀªìAÜ‘¸lSo®ÄòÙÌîeš©JÈ [$°iÍ=—ÉåÍj]0T@›1qÉØ‹ñÆ+…½^¦¨©KÖ^-äœ(T–Ð,~Ñܾ«î&AwŠë?ïÔͺMTÈ„æ²W^Ø®“ªÆeý§),6Jš2)¯$µªG?Zù²©øºìر²1î,}¯ÈI à 9ùÑmX?–'sèÏÉþJ¾üŒg“>Ãp¥ÆàFäù¹ä WÎæPŒº‘T‚º@ªÎInÜGne± ¾R‚—WU7 ¨Áöm$4ð—™À'9Óxq›ùA”±eéÓŠA]ªBð²¬oR8‘ÑcžG»q’+AçiÅUh= k—2† —îI)+ÙwI„Gw*JA4Ï+<ˆÆ¬Õ·4ÿª@=YÝrÁ4žq»œ;•#ÀYŸUBóvn¨X,äöHã+z¬»–RXq Ͼ'Š• RLI»ü†ãZïL+Ñ©nÈËܱ-hn\ ajï$‹;¼¥`1™­$I§;o‰+Ç µiý‰@[öíä¸ûg2Û‚Fì>Ûïë•ù6a¹l«ÉJVÕ›ˆR6%“þ‘Ü;òÔóù¢° RAPyh¦óè•‘Ê„,ŠAÒA/p€K5íbg°#HhµÔìZšô•y‘a†IÞ>Q³ñ/:¬{•‰¤d’ä{5ôeüBaÿ irRÙkê†a!P+„X~¥YT,V"ŸiªÍ·ª{UÒvΔK¾+'·u•¯¡!¢*{]O"$Fbw2;*FÏö„È$«º¡Øó±ÝSvåÉ%Vßu [oänë{³YìÊ+- ªR`!ÃÄ0`=ñU ¦]t’M0æIræwŸ¡îq[³ÚN®-ŠÄ|ée9 õ‡#í"ËsãY†¡Mv-³^&’eµ3Zf$›N¥5¢c¾fÙ!÷–C c&üxµ‡,ŒySð?ÐÕ1BºJ˧¯ÙÝz}d•wX±¯²<‘ldÍY»–WT8eI""k1¨ÄFÑú5lU‚–$ì<° È$ ,|lÌÄoúzzùÌÊh刪B”•nI `Ûm£•˪¥t©•%)o•÷—ݹxgÀR÷Lᡎ¹›ÓEN•Û1ÕŽåÕ"–Zµã÷"4ææs5¡!Šõ©ê…Œr4®Œ‹QQšó\š¡†ëB D ª‡cîÊÆh%b‘·‹™e¥\²Æ]:ˆm€Îr(AÂå ¦3½1²ºF ˜ÈÜH±ï#"-äe Ò®O‡É÷'4,ŽM ‚|€«Ù„ aìI (ò9”¿¦Fs0rÕj|C©5b?'‰í»¥˜B4é râà‡xkcU:Y\•r^“¶µvŒ´Œy#äÛãÎ>Ök´‹ß±µáÔzê¬éìŸñ°YžÓIR;Fͨ`ï³³XŽ` ¤s îâ8ÑUFÈÖ’F´†Ê»'bG>?²Fìv,ß°NÇnGmÿ^€=OQ&£‹í튣º#“Ew#$hóoÂEˆðž4*(Žü¥ã³²ÝÓ³•êfB*TQIIŽo{á³Ù\½*H@AH»€}Èf,ïÉp4•бRwIZ$„)¢#£í–+&ÁZÝòÆÎß b_>ºX|rär”1îݨ.ä*Ã3‘¥*lÅÊ"U1,‘9æ‘ËÆ,5°‘×Ã)oZe ™ JB;ÊÑ‚îżm7w´TnçÅÈþ¯xïb¢vÎþ¤:d8ÏáŽå2¸àÊŸ+4B272«~=Èé,Éa͸áŽWVš5’ÄSV’ÿ+E„–žm¾Òª!%‹¨&GÕÜÆø"Ž•#/Ër,]E@Ý×äP§p^aÆKj¬ Ö‡|bÉë—•é¬ÌVK ròÈiÖšÈåK#Ë•îË+³(‘cÞäq˜3}½ÁØnÛŸ?o…û¶ø?¡¾äò è‘ÂÔѬšs4ÆÚG[ñ’T6>7ßÀ>Xì õÌ£?š5P RGĸÔ»;³ˆäîØ>¼–XS*ø@” ”™ ¸€@/¶úSC¦¡Å­ï-HÖĵûI†«C-s]åfš$ŠÌ¼ YTÙ––µÀÈ臼,‰ƒe·Ýb CÀ¾ûÚe &ñ£¤ª›•£/?²±AÜé“9Óó£+ñþRÓÐñbÝŠ®ÎÓ)Úø{J;S±îB²ñ"ó’Ž<¶Ù€M¿güî7Ý$í¸Uúÿõ™WÏf©×¨”ÔÒ¸ 6€aû~e°Ù|žUtP¥Ò Q ˜p$›»‡„¥VÔ˜WÓùi1k2Y Qf連šF ¸\MF XDŠ •d²É,ËOVS„vä—ÐìÌâBdÙ„o Ä|U¶ft1…Ù•xïbˆ%h’2Q³ó“n‹(µÕËR¨¢êRA3ré¼Þ?pá3J+­ @SOd—߉žbpµìƒ#¿Þ5 4rÅ)r`BÛ›=€Û´0þ—`†—YJö¼‘»2¤|ÙG+#ŒÛ —ËUS9 Ý Ë—ÝN!‰s)>6*©¸åº3$·q—t–d]òqla]Ï­{HU• Hø·l‹‘hÈøÑ© ,sÄIjÍã¨ÄÅä»/­• ò^ä°gm¾ìá±AH™± ð3îø—iu>k ”;2U´QØ LÊ Š¬’˜¤W hÈíV4Šôñòž2²!ÒŸÉÝþrI$ #JióQÛSÆPE€CÅý1g âñý}uºbdÑù «Å±ÌE—x!y¡‚"Û%œÇÝ_ê'ÙV&WƒjðBFŽ×™<¾WŒZ§pËNI¤†ç\š$ªÍ…Hûí4`H$PLd5ZùåT®)/ùt”^D$Íí¼Ï'iÑÉ„Pø”Ýu“<ÛÆÝà¾:§ œ¼¸¿—ÝÊ1Ï# $RÍ"˜Š¬§µL̯`ƒ[¯xÃ;2ÒiÁâ#BÉÍd—ºá¥‘åöÝw²e1¹?2×â…"Æ7»($κ¢ êzij´ŸÆÕh•eXØ8šÊƧê><…ÿ²Vî‘<´•b–HÜÚ);mÛhÚ4Jê"QÅy¯P•·1’JQÿn!‰ŽÙmÎær‹5rôê,ºÊBŠˆbH,ç÷ 32„"²é¤Ê 9ÙÚßœ[KSÀø=8U¥¼™Ð’vV4 ,R O#'—bMiEóÝR¥¾ ÍêÉiòOaø¼`Hn©ÙØŠéÉŒK²×•˜}¡P$¬ÖàåÁ“$EÄšŒ²¨”»±HHò‘¼B» p¨Yåm䦪vÞÈiØe“„m•8úS“ÇáÅ¿Óp)áKÍ·p’Ç`M¾ I6Ì×¹oëÚÎ 0kD–éúEz‰cÿj™‹€çÛû㺲ºFZ>l¼7•*qºöƒ1nMûð@ß[i)’å± y@wVþÐY¶u`v`­ÅÀ'ÇŸL'(‚+2îˆ'ï³ÿ’„ƒç¶Ü¿dƒÿ€¦‰ŒE %ÿ1OäRwm”efØTý|çoRðŒž{~ÿ\äqoœ‡¿ÝîDd`íÃbàFÌ9¨]ÔÙG†P7äáB†<†Ù.óÈAª9ãÉWÈÙ‡6+ãê¾Aý§Ç­Q[‘h›ƒ)V &Ìd$°;I䪄ÁQºñ YI ëݶª¦Ä’Í ND‘¸ ü÷åºùä Ü~ÔŸ>™Z`§»ß·ïë8p±ç¾ßCö»Æ{WŸ‘¦íà¡Ü /äªya±<˜*þ˜_UOØ}™B«\<‰dAK)”†ŽJÈGËÛ¿Tð1'd P’D{ŠYx‡;ž?®Ûm»žDý@Ûq»}G¡OU¢w‡Ü÷x§¼%âXHñ@ÊÑ«3Í¬Š‹)ì2s"Q;:tæé<±ýû~ž1“:– ³m·-ÚÞø”tøÿö±H!W˜.± ärØoþ@ ü—Æ6g‘ˆ'ò«Ì< å·Ð°Ü þ€NºÅcòsgEeD!·%@ä¼€C šMˆfò 8‚-ï}ŸŸ®.)èÁök}ÿmŠÙ«ægÕy˜•“„–Ó·#NÓ²@!/‘ž6<' /;còGšAV8cJåìè“ï[ߊó#cý»R@åÏN*%–Bñ4ÎgJïñ×öª ñ6CVÆïªóFNÿýxQ–x¢ìРå5Ë@¢X¸G 'óf)ˆb°Vd}ë³È&Þ¾ÖUÞ9éûx´V¦ñtΜEZmñÙ6íˆ~΀q2¢½LÀäÙ¡T÷¾”»¶ÎFåç:rêó %ÀI[æÙá®dÈçê R7^LÇ~Lµÿó»²/Õ<ø};ñ¾þ–C Ï·Ü)výù rܶÿöƒ·8ñ^Q³*)-ý¤;—b~žIÿ;¹;Èý‹„m‡÷/ Ì@Ü€Aسl@PXîwå³o°-jqÄ?øî\Æ.ÏZ 2u"¡xòùkÝlœ0wXûWžž8̯!øp˜ÙÚ¤ $}£ÂCö$Ǿÿ½ŽÅOW‰Û`vÛqà±ËÁ¸ñßrÜBÿú%Húð?~};8ßHRF͸°úäCl?ÆßøÛÔK¿,3's·î1ñ㦎ÃÜ—úŽ0%]½ßtÝP’ÌBÿè3ٻŕOâ´NQ+\{ã|9àÚÀPO]»’&0$RW‡`I$€H¸ ˜à_µXUó¥î£ÜŸú‹Ä£œ‡Ýþ–HÔlìG°f±rA¿¿!؇¿-:£¿F]ì '1ŒŽÔ@7wi,¡`¤n¼NËCË Žxß7õßôAÿéôI‡ÖÜoì|;l1Çõ"S„à™¥#cÑËîøß®û¨*CÄñƲ<Œ‡Š*¨oÊQB|X˜„ÊB’ ¤°Aéè-F€ˆ¥Gù!ÊoÒûÜT1UºêZœŠôU{AHäH±†’2’5~,’1c 3¨±$¯À!tdÉvÀwÒz‰O¯3(Y m²IhIÄî«Æ-Ç"8ù ö+Žó’HôLÒîC<ÂÜ<·b6çu°ÈÞArÀ–ÜàÍÓ´ªfíÉfìP q½…YãHKXkpJª’³‰¶Œ3cÓucÇ!¿Ñ‡¢-=7ÒŠxõ&?MôþŽy¬Ï‘]CO¦êeþvJk\É.V‰tÜÈÙ³m¬ÜIÅ‹sÙ°òË$óÌM\P‘€ò + )²ÈU•¤?VÙEÍþDV¤`!}Ê\}™ÜSe%ÑcPÛ×wi`¬N¾Å4qœ›"„¬Ž|×F¥š¬jªª„7Ê d÷Ÿnç²ýR¦V–„¡$‚¢ »8˜÷,qoãƒBÁ‡:n½M+Ÿí|C€Žž&,†9V_üB"㣆; ²´k\F“¢»"7mÝÓ÷b1_±‡·ÍÕ‚ÓR··BÌ7©Y1ÍÜQj­Ø!·Jn=ø­CЬ³$l)“4JÓ9cà–rÜd…žAƒm·'r>–’}ý6Ì®`<¿¡íгQÈ„ÄÎ#–2ªô䔬xâ>=­Ì…#ý:‰jÄìÿ K7Öÿ«âÓÖª‚i]ÈÔC·‘¿»?õO!޳:V«Øužê·Æ±²uêñU… Ç9xÁ?]¢š>ã‚e‰G ÈžÈËçÉYN»nT2ËáŠõKN9ÎÀÕ`o\eÆ$;Ö /Ü…•bÿ¨#f<@•!TÞqg‘6¢PúÙ%Óp±Aþí>ÏaY†ò“É™Ps²ƒð¬–=åú-”ȧ-I4õ¾— ×còÞ6aùŒÚë¬Ô( $ ÜCî \÷¾ ,½V Y4ðÕQAzx«E&í4…£…ÊÂ4•Ú«¸P%ñß,¥f“MJ’a$W™lÉ–Ží"‘$r.Ì”$G$<»rP˹4ídÙ †h»ERKȲ uÈî£íÚ§!ó–A-KEBYW¯±qÅTq*WŒk¼`FW%‚#‰8Üâ$‘ª1+ÄúŘ迪ë&²’Ä€8¼Ëð×hu#Jšiü­œ‚oý&ÇvM¿dõÕ+nx°È¦1,&.,¯».„”î2ªý4{¶~M4IõÅÉ´Ñ‚zX¿·Oć2ÊKIͦ°-)à>ë–‹ï\wŸQõfaÈÛú ÜanGh <€3Fãu£ÿu° v¿Cg•ÊÉ#•")lM ~ #ˆžN®6í„â9H¤¶"ÁQ)+zÒh’X31€×o·}‹‡ÅAjöÀžA7g?¶Ä„M\JD“†’9 Ý–$yÁ Æ‚=ûo=xÑ–ßúqøs‘b%>­V¶‘Õ:~ÞŸÔ©Î`³>[—j6ñù:„E$Ô¯Ó–F†X™£äŠE*1ûØz¨Ý×.Ê…b¬Œ¥B*ó™¢ìÈ¿MµÙBe¢üFP[”°<øîë*´†FŒË¿Ç†K?î‘A¯,?€/=ÒÆsCÔÓ¥ãH.Ÿac»9`ÑÙN ¬©S#R•1°w>opøÅ“Õ4èæ¸ÕkYêÝ#¡u&­Ò‹:[PeëR»“ÃÈ…¬FÐLfT³I^[U¡¿ºô,<–jG^ie‘ØÆt‡¡¸mu©º“‰éÿO)uZГªõUln,eµ?#{´ï3³W‘shæZÑI¨™EŒ¬™ “ÕsuîFÎ iÉ"0µSÅVÌÕH¹ìLO;IdÚY¦g‚îЄôäSÅŒlÑ´„È[‚´q²¨ à‡„Ã+ví+‹{5‹V>‡ÿéšjŸˆÁ” €Üý6\mn¨ ð§±½‹4Úóö|Y-ÓŒô{šÄt«Gh½ÌOk3–©¦Ö­ÉäJ¦Õ«obkÇS»%zñ´Æ¦69½8+F섯cY•·ˆ}UZ8»20*‘»ñÔi¤£ò"¼¢€§2•â’Äq™YY£-¹‡x™æOÀ›‚¬+#&KÈ•Øøô¶•ÎéÈwYY‰•”K %ŸãÉr !·@ÉN5ùª¢9–2AmQÊÊY 0ôËïù¼cÌçÎh ”hÐ’5K¾›†ßy|H*J±[¨àÌÊmÀÅ{†b“B²Èb'·ÜFìÄÿ‹ÄØ„}[Á’¤¤+ܪ­øWŒ—ëJòŠöQ[˜g’}ÙaÝ‚l“·ªDçéº{‚'ç ’Œ9-q‰>Á©¶ÛÎyEp…Û×¢•C’V›qü€ˆHsÜ$´f kr!åŠqÓðÃvÏt¯Å© øºt€ v˜"Fñ³’ø|–xåʆZ¦X1 –ݹpãC%’§&7#w¡ydX.UYŸjòÆîÁdI¸Ç® C`ªËçǪdD‘¤ Ÿ‹`Ê7Ž`Í»vü«Ò¬‹wÚ®H°Ñ¾Êì%RyHÈ[šÃ4MNèñ´ô7åt–QÉY}&Ff+r\I1v^e¢cÅLÅ|½¢ V ÞÞP§ÈôÁ”Ô B½l˜%ƒ›nLvÃæóÊÌ”Ÿ†¥áÌ¿v¼oì1×")%Ø3w#™ŸÔ,ÊÝÝûq݉ †´l·j'-(ý¤Œ¡+)xöVH†ï`Í-”}³Ÿ‘/aØòãbGÛv1!ˆñí©,7Š0Œy"–9 åZÓ4yà•G­s1Y ?€}£`»~P&bê6‰]®KçBפ yr"‰. €Ã{x-ÃsŒ"¬B€s ³°nÓ--aµ±ßi!v +*dªØFnè£håm‘e £³bMã¥æ³‚Ä\Ë]¦nEâR©ºFÆTˆÖ‘Ëpx×cÛèâ'åG‘=ò~e,FVC3~F,¨ª²ÇÉývPr/ÛýV$|°E—!‡§ ‰ û«$ŽÊ7¬Ã¹"‘¼–÷É$I*5â;SÕS‹‹iø·¦JJ»‰%ÀsÛ†ØvÂ**oSïÃŽÎÁîïõñh݇qÛê$’¨äÍÿÏcÀØGNVÕTÁX=î>¼{EIª33Øòg$Æ$òXÊ(ÁÿÆÆ9€Øú×û>ÀE @«âN^R?ßÀ®@’³†"ÛqÝÎh#ŽDäP´£›’±¸BRyÆKªFíÇ#1ûRÙeǃþ¬fpä–gw‹òÝžÑK…À$–iG.þ÷Û—Û¥'(–lP‰ß(Ä¥™bc5QRuen6j¢.l¼ œL¦CUy{ Ò~…à(j\^§=7Æcµ’M¯ÇÖÄâ \ô.æk4rPL³ é¬ÌÖŒŒAN¼íò ©Ç»è" 29à¬Sêȱ‚犬‚ UåT<!,ÄaÌ3w¢}Ùs4l#ˆ?9—š9™ƒ:ù=î#yHÜ-ù6[qoW`ã@³ªÊª²QˆÔÀé}í¼I)—êu2èM=€ ¢´‡chÝðg½ÐÏnÙ]/‹Ñ9˜ôÒæÀäß5„ÀMÇŠxÜÄñ¢O’­4 ×îC0[·-ÙdÈV‚·Zx+ASñ‡Ñ®›X(éXÆ’e:V¼q•bÓŠhbǧëÖX¡Å-ކ0ÃRl¢¯¢òWⱄQ g¶x7" $Ýñi¹4m+œƒ î§Ös$ÉÛy¬ü˜)ã 6%”ì p£ïó§Mæ©p/ÂS]½R:úV € 4]ïî.þ.µJmꇎÏ÷¿¾½J³AMªMˆ” …£àŒ¤ìcš'1É2·“~b€°ŸÐù ÆŽ²Ãdu„2œ—hi#©Þ}ã®Oʇ c¹!Z%·AâH]Ê»1ŽHÊÆñƒà¢ˆwy]3J2Ëj2-9YînU{dY™¢•XȺ´«d€ ¯à×…·YˆŒw¡ßÑš4E*H¤ Vónw~x,p.½sRªªF¦ 6Ùæplé¡§.#RõŠ‹Ï!e%‚Ô‘E+ë¢Ì–D®¡§sõ˜@¢°•°B¨&wð´Úš‚5ŃÙéq– ¥–#]Š q»L¬WbyÂmÉÔmV]·$&$ŃÛ=¸e….›6ïB)*ÅšÇ`¾’X cZV/ù´QÓK3‘ÍU¥^FšÎc“à‡×馭UTMe#âdìí¸ ’eݹÆÊ}CJ ¥$0/¸f2 m¹æOú›Ø“=Iá²²ƒ‡¯Çã\…Ñ™2y"Z9r:îH‘ò·j¹{0ä ÜÆ@iHVP­´]¯ÆîIƒˆü‰T0.µAù1Y%æ=†Ö÷žHUK¡£¼(YØWæ°IXsð+7Á_Çn2ÎVÌl¥¨e”¼†Û<«$e^@O×’HÀ¬Œè8Éxÿï"þš0dô)| I¦TúC9 \\}¯~q’µcV¡Y 騀"ݡ٠ùm#˜Ë$ŠÅ”ód`›¢Äì3FA¥*6@‘Ú‚¢±G”À¸Óg’8å«íÉÕNÑÖo6eà†x ”÷30H,Xa OJ¹óöa!uCÀ(•tpɺ펷zV¶ùä×NûHì›ÉlVÒˆŠ$Mý¡KáÐM2 JSwÜ;³’àÚD¶ÖªjÔRá:•©»Ì¸»ø³(ÿùU™¹†\•µç,`Èì‹å OÆeQÈ?ohÀâ$ŸD£ÀÇõÉ\„@ÛÿøÁ™wäÇb¡?\Aÿ»Õ#†ý¨”¤­@Q¢Ú±N‡¯Ü‰ePc2+Q Òœ 2 ÕŽÁßä2]µ°rvˆÀäÙ QF •o4ʲžÒ ¿Bp¼ê΢J(k±*3Ñ•V¢ê ÈkpŸIÝüý÷l£ÔÅ*a A:Rõ .8v `œsÖXu;™ ¬ø–Ä¥öZBK³÷û ƒ•Oâ ¶ÞŒêò>ÎT…P ±`¨ßÀ,?·ÎÀcþ?t–[v%–9Í«-f6Ž#3I/É£OÅý¯Þ’Tì(«•·Ö7qëe/d9«ŽK‘gaÚ½<ŠZ@$‘Ä)…ƃµiÇbCcQ;îÔªôeTM!ñ’ KQþÁɸhRêbšªzUëV nÆ"ÌÍãô§[ÈÇGçÊw#u§ÉŠ*—b.VyCcNØ++Ÿ´0ó’!ÞHǪÁò9aËutd‘!å ü\ï$ùQ¼fWt³ÇoZ“Ü¸È —%fhgŽÖfɉ?r°K#~.ÿ ‹Ë^eq}ø´û› ËFœ¹ó.%Lq0[.åuã¾×œÐ%Ç‚õ§%‘9D)*¨•êPP÷Jnã³NόټàÌ,¤§H!ZÕD qÒ…ÔJÓ™ø¹ €!Ä[‘ßÚ§iLQØå±È·Ž¦!ã—#ŽT1£-ªˆIs ¬-2·VÞX!cÄšl~Trý÷2¯¨Ðç³ ÛbË~¦D‰é•¥x¶ž8ŒyÃùÚÄLqù]däQ€LO)a‡'œ*€¹&Zˆ|HÀ•;UEÒ¤¹AAäÅ`ÝØˆæF3¥e%*kDÜ‚ Øï‹Á¼hXËƒßØ@$ï¶ìÏÁ‰<€ ýsrî*—FÆ_#„ '.u&ñ>É+8܈ä%%U¼ýSÁµ³–ÉÜ [ ¹n5eIv€—2 ,äš1¸îV´KûÕܶFð Êý㉹÷-ØŒ;ò¸“EÝ!£, e§вˆÛ­ è èjB‚…dV¢é ºoÝ™ˆs°™|WWIIOÁ ¨™äJ CŸ¹»bÃt¶ÂÍ‹ÉI,…Ù¯D¥»‚o¨®¥PØ —‹æ0ãÑ1Y ,„¿>Gw>yÙw}P‚ÿȽ÷¥PÞ•X'· ÷ƒºÁ<•Ùlm¼`W‰’3mòXÂÜMÍ_pþC,]Š_ÈC´ŠÉ¾FE>\JÒÍ· rƒ¬ïŽNP‰W誩Qk’—.A íhSˆRê‚•4 Ó*"åÀ2\ò „Cyv7ëÇWé¥é)ޤÇm¤¹I„¦íàî ,Ò9 ˆèЕcS0ÛˆRÛùJ('Áò7%ŽÀn|~÷ÿ¨Ü–f–D’kÈä¯lµ‰$‘95‚4ÄËK8gÇÕ/ÿ/´Ò›…–POF–EJÈ\ßkù ›1Ù2ñ‹m—!¿˜\÷i==^ŒµÓ¢„ÕB~ $»a¥™ù·Ìiu0…Ô_Ã}e$X¦ÀòIhì6 -Ö süq™HÄdв:Äa+JgLãŒ,œC4¯²ÀxÌOÔo é…€Øl‡JÇ’â0«ƒZ+ }»µ”npÙ%šFicüN€WavéY#–ýö‰ãø²!·5¤™J;Ä…ÊÜfªfÔÛúú)ç!à(ÍÖ»r²1©jzèÌ'ü7Šs¸¥VÔƒ‰Ž½ÙwYa™âñ+zIèëUHÕIÔ¤ ÀÉwæŒ9êoUBH'ÒÀ™Òö¾ÏmÛ\ÉË}¹NÅBí¾ß£³ÿ“°åÿךÿÔöO÷JÌÇ|E7áû‘ƒ]ÈöœBx‹Å …<œ“©ÍÆ*ñ’*9Œ°ë~ÐÊÄ/Z÷!ÿ#I.ÊaBLÕm’w˜úõ‹sÙ‘§¹;Y‘VE‘íK#¹íì+Ëå—µ##eZ?¬lË69J´Œe”é+ËWMUTB’1}½®@’Òç´3=@f)ü0‚™wm$Ý¿8ÝñÐY¢Ýy!Ú'îù‘B™ûÉÝ$*|%½ŒXÆÞ¿‘·©—”G"Pù*‡ˆ/} n«à+ÏÚ+<¤¸"ÈxdÞîC€·‹‹¨uîmÉc“ö¯+¯˜ê®Ð݈ $Ú@Ar+L%‰ ˜F!I#™¡š&.)¡›m“‹.Ñ_q´R) ê©ôZ­‹ItÁmHPv³‚ÐàÜ4G1‚•³¨(øû“Ý틪^SÄGàsRKx#ÈTyRHú–ý†fr¸Z©¸é¼æñ“ÿ.´Üw»Îëõdbv#ÑßÈõTs([¶ÙK¦6ga-ˆq!I;H€Ùm¡¬Ow*—°í^@£Í–É0x%È^nhÒK Y–_ñùLªÏÛ .ëyTëù*¡aà:%DTJÕY”Á$¼»v‡h.|©ÕB¤ü6*IƒÅË|Zûíczbñ¾^@rv‹“šóXk°,S%Uüuä Q± QvPOì©m÷ß}¶dßõ¹ïÿ€¦2JýÈ«\¹ vöA'nY;Á Õ$•¶v£È+]¨Žl°™Fùlæf"çùka¡1Ê©óed“ŠU£žFØF¬]Vp§„ÀÓ• qO[¢ª¥eTÒ”©N »8»-qc3aˆPꈥI4ÔtørK}L™Á/©!N©ß}Üc)Ñ$NEÊYäU_õ*'&ŒKø202´gÐé–&t‹µ}¤Ud­Ä“Íc'¼´Y÷šk%êß=„ó&·vÔÂ{s<²ªZ^á™Óu•ÒxeÞepõU¹Õ‘–Ø& ×Ò]Ð1…œ´®“̪)ZB°|Öîå2£]aô½^D—¢`þŒerÆ*t”­E)À7tì}Ÿ}ãqÕ³¢Ö((ÁÃÌÿicŽÊ0‘aRêÛ#ÅÈuBKʪ*À‡ä ãÌ?O´lv¤Œ€ædC#¡°È›H°ØL–z£vÌ(ÄUZ¤ºÊ ;öW‹–@v^,L»ÆÑw¨¤ÿS‹ Hwõâ6âea0f2÷„H#ù Ü´!%(&¸Ã–2SÚ@ÑJ}hHÔÜ1î nHým¶(+2;+ÃrK_ŸÏ~ž×[šbýgH¬ä,Åa{3±øõR1$‘ñ@Â!d!ØD±óÞS(=úú#OAb……¤VÅ ».²ÊÎI!÷³¶Ë?±v+ý»íê¼RÈä(Äa‚ÝŠá^ß:ÑI$q¡Qf•ëÄÀ™Ú#–®Ä­óÑ€B…ÄÎæ)‘n"Ø%Æ2/`Œò,’ óòvX®Ãº.ómèUL…uª¢©ÕMEÀ*A 53}Ao|§Ÿ¦šTÅJ:Êlåš@>~³3¨(MCËœTBò Hšß)P®í*Â5³(þ˜8µ2B€æÝ&h°â{qÈG0w€?üØ÷|œÌL“·7!.OnF±jw³4ÍÈK$²2²Èdj‰#xã2I#ããc¼v¥š ÀF ¤ìÃŽÑ¢:—3HIY\ ª9¤fCµ†#AZ»×ýËÑ]*(¦¥…‰ A’\<} Àúõ¾%EÔÓ§R IäqÏÆÒkÛÿ홃Ì„"]ã,Ó Þ9âkÝehé°0¿"¾¬–ø# =±ª" ¸ ƺ·-˜ý‰äÙE61ž«Èûþ9O â"ÁefoV3Nšs þUq”I"F™ô±lÔ©$òH*¿¾[êƒV]Ãfk¶îêâ8üÝðc§¿Æ¨R?“MÅîÞ\A½ì¼!þèÙGý›0`À¹ä||’vßaçcé]ž™;…@’îx¯‚a¾Çm·ÿìØŒ†)S²jFÍ·Ôl챮߽È>ŸVबw,I* 'oIØ€®çmýÒİpv{[sïû82¢TH#Ú;ì>˜×yäŽG`îBöÐEÁ8á^ç&,Id/Çb ‘à–ÝMnEg+ H¦2Â@ÀžH´!ÛüoçÇ/ñ·ùÁe.ÜÁʲŸ%¹2“»¿‚?´+í¸%‰Üøðç¸]ú_¶Îw?mö?½Áb6>mà Çú×xµÃ¶ò࿹h(]þƒûc+? cØx@]Z@QwPÜ<€ß¥<¸øaû;?Um!­…R?ê=Àϲ˜ÆÑÔ(ÏýYñŒqÕ™erUÑN$^%‡[î[sÜfØ«~ÀvbP€”ä(ô+ê¢ÅÃÀ)ešÚÐ"¢¬u· (ÜUb¥x˹±Zà.ã^@ÆÓ8µËŒ¹Ò³—©xMØ.Ÿ¦Þã^ŸZ-¦©#£¿;79™fI˜8)¹‘ãwlR1ÛU·-æ2‡°îV>ÞçcË™!˜mùû/ú„ôýWý¹Ž(J žçlS(rfT…¸®Báü‘ÎÍb€jón+׳pc÷︰¿oÛº¯(L±ÿà E²’'!™~Ì›s%ÉõauG%Õ¹À…^e½*Öå_é!Zã½·jIcE1µz4ÊWºM„+ê¼{6î7¼~ ·ooo Õ2"ñ-¦ò™„Ì\HÓÜvU ýƒm¢ÝL6K(ÁRCq¥%ÌsrÛCàGMSæ³.`$Ø^a·¹ykwÇÔ-œLÊ $²ž@9lvßb’ÀlA;J ׆>FìUvßÈ 6Ŷý1ñãu îÇdƒ±û*Ãrn¤Ôn[r_pǩدsÜžD°+ıØù FÇq¶çÎçdžá4§‡µû7~ß·86C}¯ã ¿éˆŒ –>lG–íÈò; éM+!ú»ÒÇëîÜùò7ðwÿÏ„r_'m”û>;ò'}¾£÷°ŸüoéØÚ$(ñàl7ýø;6ÿ¿þ¯üþˆÚ´‡2#ìqI؃ìÌãrÞ>þ>?tŽÅÿ¨£)‹íïDHüT¦/c>Ð#F°áŒ…•P;’¼15å¯SÆçmOè½ÇpDjàý˜† İ Eđܜù>ƒ†ËËÕyéH•½Åÿ¨ÉŒH„ûÅÑð#!—ÿDžÑÖ “@ï2FïN¶ç¹(µVü¢’c×Õ‹­ ä»ÄÜ¢–G`å‚928%ŠU…Ç 68‰ñ2ø¢¥H>»îŽ :mæX;ÈØn÷8㺂T3uSS< )¥‰$?ßguXÛ“;×+SDKHÀE†Yi^HÒN¢XIqÖâ•É‘Ý46Wª”~ 3(”Wá¹-ø‡åŽ/&øÛ­•”%€ß†Ûñ"xX;HÁÜ4B°·#¼‘¬­ƒ`%µ$³G@JÐå«rÈÙhn~&Rì†6åÏ’¬½ÓaW~ÜésþèæÝá‡$èÂïÇ*…½nøŠ;€b»€/Ø–€|f €ÌTæà;ØñåÚÜŽÖÒ©¯Y¥5¶¢kU{±ÊÑC;<"W*ñ÷Do3#(ic VZÅÄj¶‡#?F+¾rTA"?¤‹.ÜXqmÒØ×äe–EcÆ•UTiôš7:‡&Y~­‹s!XZ# õ‚*£0àŒ’9¯3«™™&eZ¥{«ÞénûÅt›Fëž”ëK“õO_ẵ¢t/N3Ú«í“ ùN—kœŸD:Ô®¨ZÕX XêÎ{Yâúu—»Ò,–; Zb5æk¤ŒOs=D»Ìu>­šÊæNEú@ €åɾìØèzvB…|¸ZÒ \•,àsaËpÎfÝ‹'=Îa™UƒÐñR>Èc“Êo,™Ö¡óTøÕ¹:2]¿¦EÐ{™]]Ò›Ù&ëfF-O­×-_ÓØëUßBa*Ïo•¿žÅM›ÃÇœÄäè'Ÿ¯~êôÿGzcÔn¦õ£¤?ƒ«øî¢gz}ßõ^¥ën²Îfééû¾ÜzM¢½¾`º{3­µ>{F×Ö]NêxNš·à´ èºkê-I‰:þsz‹· ;€ñ¹1[„å‡Ê„ù°ií  \Í[£¿ÚðÑ’<‹]–í‹-xc®ñG 0"9°ID´ÊìŸ*_«H,ŽÉ+MV;hЧA$S]çúGÑÜÇU4Ý#ÔìÆˆÓùn¢hÜeÕ¿ÓZòîšÁÛÖ8|Áå‡)CŸšý,÷ÙEJ«’‚Yas X§yrX"÷vÈåÆËÂ]”ÈÓ¯”Ÿw9„†Xßsë«éÙš¹Œª*ÕV¢¢\˜qf‰äx‡<ïQ¢š9‡MR 4m¯'þ˜”i .ªžìOz*CÀ^|‰&”÷#Nɺˆòl¼cBõfÆ(g”G6a̦e1r]é @,ÛD¤T‚=„‰°>î¼ý?ÒSg:cfhþ>4?m£’ 5į1ã0x–)Åjѱþ05.´’Ž»õ9Mñ/W·cÌ=NûÛu¦ F„‡1–ÔšbýטE457;aÍg:‡âkSËÔHE0‚ÇH2 Œò_óˆ8Û•Ëå—¦ºèu-À,äÈóaæ¯Ñi¥f¤±äc¸¶‘ÚµikˆCÉ#©“µ»!3 Œ• ÉòÃYÁ ÅX†H¤CÙ\2#ÆxcYÌ”¶ÿ—JzSðæ([Žnx 82-ÄÆ•å¬g~a$áV{¨‘’½’*Í]esZ) ˜»%9H¼ƒ Ë<¯Û°xÅ4\w˜w‘ŠQw c1˶DO rY ÍZ¹zu*¥j.X‚à„4^AŒÏQE:å4ÒÉd8pܘîÝÀ¶5 nA Á™X—ã&ÎÇœé'-bNötYcü¸ð!ë¼ìC\»GÚH¸»ÊŸ1!˜!j(äVºˆÑdH«ëuÔÄ„öàd‘ÈQ¤D"»È¼˜ ça’±WÚ¼‰2ùõ”ŠD~nª!àë)hŸdËYBI$rýdÅ¡*d)•x¶ÓT»¸75Ì@™µˆöÆ`•iÔDC;Ik‹øoçÅBÚöUÌH…ŽêüV@&›¶ËŽá+ßò¯*ÿ·jNá/EÑÛ¦ÁÌ×U’YV£± É“¬ÝaV¼ÿ™÷ Fj"ù1ÈÌÒj8ÀwIPȱ¢YE#œSM[<ÈJQ³I£Zïü¼R–ï{Ïë'P=½ûaêgYúg„ÑÙ¼ßNtºj ðk Ùzt*áá·Œ­fÅ nj\æQ"·!§„·OS°ÁLùú¡vpc¨×ÊŠFš´…jô9 \‚Þ©™3ßú^NŽd-5¥$†É2÷ ûÙ¸´Ðôe÷~Y•daΩ‘ÚURe;…y'aÛrPX‰ ¨¯7Ñ/Gnîyˆb!¹lµYÀxÐ,#vß™…>›Éš6üé4€J*O_ýÛkíîGUôÏHjœ’нÀtCPu#¨}¿u›ª:w7'Uuާ§›¥­º»ÓòºoÛŽÒšKG‰¨ëUƒÕجÝU>_)ÓýA=¾gN}Ýõß%ÔÞŠê kG§3tGÝ/U=Àt“¥Z'OáóTúÓ¼K²º‚>–j-a®,ç-âµd=KÓºW-“×XªzKNÿÃ,½¬v‘Öñw²^€õkV²w€ÌÃîÞvÁsÑò÷–±=·0ÆbÎ. Ž]†)dL½4X’:Ï ï`,ˆdum÷zóŽR+oöãmÐP"™ hcFqÛ´+üs$ñî{%dì<•–Å»E–ŽGŽYI^Þú§®:©§:ÒýBÄéŒ&¡é×^ú«Òˆ(èÛ¹ ž*¾#FÓÇ/—¡‰³”ÈIažýçÄb¢–SÛŠ”k–X e‹³aÛ¶Õk1³¿}¸ ¢ÈexÝã•P.1¤•'¾¥ñù^Ä1Fä÷Hê5ói¨º‹ÔÌéfØÚGÒ °yÔ2tòÆši§N §—v›òdpæIl0•.5„„²‘fdPÌñ««N霤-Û ¼·°@+’iê*>çÑ`t{&S¸ÙÚaËrÜW–P¼-IS~ÙvƒTÔ£ÆÌ'ˆQýXÃÛ¢"Çò«ºwÚ;1!”³ª10Ný¬DÄV‰e®áÍÁUÛb¹þŸ˜ˆ7#¹`B ¾Û\9Å™6QÇÓuN¡_,ºB’‚‰Ü_Žò×~KôÜ­*Áb 'CµØ´†ßŒW[!ÈW‚Õ¤ÉãOŤ$dy."?Åæ°’Y‘ÇdCZé‘ ŽÝA³ Úyè›$.Œ›»möC {1€j±’´T‹ḣcsr ¦#(U¤1wöàŠÌR›fHÇ5.wQ-¸b$z§Ê]÷ ¿•yâ%cwÞïqT$“MæÚw$ÕÈȉ°õ.•ŸÌæ…CUAZbBAH"ör,à³Ãu ­:ŸÂ0$ËÙšäË8ç|K@,dä]À!$Ýæ,$fÙš9b ÎêU³•—·X-ˆ˜zÃW°Ü"‹ƒý ÙÑÐòâ§²9÷9ŠDŸŽ7ĺïe.èÚ1ÿWµY e~߉e”»  J®9ÍeH\¢)1ñÍ}ÕÚv %ˆ¨HãF… .Çöš)áî™pöç“5Ÿ„y¤•UÞ2\ÖX$–; „ݤ$7¼`QL0€nÁã̓—`À‰çˆes(`Ž$›`­ e ññ*í,pDîVÔ@D¹½YÑ‘EŽ@TƱ…u:¼k°ŽÌJëòi hh#®^rî±.¹•t.FÓ$ìfc ° XL®ŸCvNuf‡zÑ/ÉúÖwhÒ5h!C¼7UǼQ3š6˜(ÇA?+çjyÉ£V-/Œ\‚¼ór?ç”ìvæÛÈÿ1xÆœµØº{œ‘ØÉ!2 /¿¼*€Ò6Í.b-¤ƒ‹+l^Fç*<$î@äëËã¢4ŸŽIv!j}Ez¤=l“e¥"DÈ;iÅÓœ¨Á¤RÄÅd”ïZòï« â¥SõJŸK"!È>{¤íÉ*HîŠÏÔàîÆq´­N9Yòª¢ÿr ÔEbĎ״>î,dÆÌøB$z{ðÿ§“‰6‹Ñ ª’þö#¦(.5Aܰf©;\ øçš  ƒ•xþ=¦ce­E~&Š"I6=^$3'q“g›à×!åfå,½¯Ê©  À¬Udü•ö#ÏS¤1–lï.ôð™ñ‘´±´L,·+}ÇŽHÖ?•jHš·õ!#§$/N8?¨‚ðZW¦º»î—¸ %ÐÝyÖM5W#Õž’ë½kK[RélµzAGQiÊusÑc=¾êüŽn«õ:¶ŒÀÚŠ~£ÓÕ"TuËÁÄÏ,˜J¼ŸRêÙœ®itÑQZB€H°„ø—=„—ÇE‘ÈP­—BÔ„¨Ã’àtïÈ/Éc¹|\/ø9\»ÍL§òò”NÅeŒÂQÏË+´à»*¯s%x¤5Ⱦ=ØósÎ6Q‚C« @ì;ë˜!d„¸ìÇXž9Ь‹Bô7¸qúâ÷IaÅõKKÝé×¹orzä}&ê éøGO§Ýé^zƒÔ]p؆¯z6r]HÖ"±¡tK‘Ç[ ¥±rõ&4ÕXüî6„{Yuþähàý¦Yþ—ÙÅuÞ×S}¤õoY<‹©u®•ëqÚ¾wEtÝ+å°:{¯ëtB g.F÷Qs´Ä¹ÓÔ±úsE!׳RõÂOûcöï±{lþ–@ˆí‡à†~ø¶ÃFÅ¥%¡µ5•¹Zgsñ•b‰Õ\÷e‘iJÈ.n£nWj܇¨[Wšf`ä+–’72Æ€w#%Û” øVjü‘ìV ÙŲ°4¯#1;uuÖ ˜Xþ®Â½Ã’ÂWŸq2…;Ë·ƒnc´‹½X‡qÀÄá>艱ÜŽ4ÜDæOŒÑÆGuVFW\}{¦2«Ã›aIÔ§!™«W/MUk/ê A“pÍ"ߦ9Ìí h¬¤  $D¼÷qã»bK¤4êJ÷%kÏVJröRl$¢Ä18Jò)‘dĬd‘òpv-»ÃÜŒt"1™8çnÀ£<ÅHf˜ˆˆ%äÓ«n+S0“±Øm˜vºNÛPϘžœ]æŠgü ‘"I f«ØŸ´c€¤µê¬µªÃψÚû9c+S 4Xª×PUµjiZ ­®—~‘ dE’Y-T hC ੘Î/7]–ȦĦ 3†ywµÁ2 ãe*9TP¤j¥JU@F¦&D àp{aˆ&­Óík*GpOµd–S*ËQ"•#ÚTiŸ…«HñZV{Keã¨äT™v††–BLÊì±æhÉæUçÜÙ¦œkã¼Ù„±;z.ua¥ñ ¢jYnJ{€;IõàyE'é&ë/Ë‹*¨·; â8¨à Ú6BŒãh@É f ðƒ1äÉ’nÙPKäê*¥.«)LÄÚ`¾Îßvç3Høu”špÄ¡g}þ­äáÐcäC(í´\䘘æ_±G@9p@TsÏÆ«ee]–ò;ªQyJL|ŒqÈŽšɉW“´ŽjX|JõA¡{•Ägõ«ò+G)}žWˆHBž1ŽÁY‘ÃD±<ÅmLÄI³c„ÑË*«É,LŒ„G…Evëª̤سRhøïߕШ›ýÙ‘—4&N}–Òà9gÙÃM…¡Ï`æÄÐ5%·p&îÓw™k0Á#Jh(50d>uŠ…ë"$BHå‚9°ŽYd@Î ¢b«a$C áêDzG[Á9é[ê?ta“4œžEŠ9Ì`?DÜkÕ‘ ¨Ç|…w4m¬„:1o:lЇ36ùi­UÇM“Jò O—ʈÜMŽ["9-ä*ÅÀÕŽE@$…*èÿ¸Or«LõŸ/¦µD½ÂÓн0ÒW±FÅi={Ñî‰]ëv''«ñýiÐ:O¨Xù:´UÓúMpÿ“Ò¶}9¨qˤõD´®çæ–ÎõZ¹|ÍJaJmJfÒÌg~ä3-n‹%ÓéÔË¡jJIPTï:Cßû ÅÏ—¤«+¾ù©\0›“6=]›¸ßU%,òc'Ød‚¶A•d+C¾Ý~‘¢J 9Ƀ³D…þ!‘b&ü¦¥„’)³ñŽúKìÁ‡ÎÜ¿ºïp·ý¦ûNë}.£tG¦úƒ¬þÚtÞ¶µFîÔQÖ=\÷'­úy„Õ:3¤èæœÖXlõêwî íëçÕ¹©1÷kÇð«TÂ]ÌØ³:­>á"ë_µ­®ôOOtÖ›ê×I5&¤êƒ/©-küWRô怗Qd°GOØÄRÁiœ?1A<š›QæÝÉÄ^Æc¤¯%ßY\®])Zƒå)šÂÛKKpØÔ:U% %‹9"Ïn×!‹H Ó‰^¥Â =™Ÿö>H+Ϻ˜‘"žWFÉ ³KFÐgHÂìvž%T\lè«ÂGœ²©fB^\£wÁ=Àcnä#eµQA«ABÚ®y1_S‹VK°1¿À©,_Xk÷e ?6‡‹É²Ç öÛ%e‚Þ‡žªt FéÅb…v&¸'d­/'ˆGGãûGJŃ©ƒ1,jõÕej¹zu TP °]ˆ ñæÏÏ7™@EZˆ ô…) pÁ¯¶àù1 #ÏãFPäÚ'kḵS#€ˆᔾòE9“µzr½Ìrö†äÈ$é::³ ëG&ñp˜Õ¥nÜaȌʊÒ@᪎ݴ¬Ý¹i ËêaÒ’én'‹±ÉÚÝ"1°``.­DŒ8-´Ëˆá–,kÈÚ=¹‘‡-ÃÅÆF“Éd p “ňys¹®§™§˜ª„«Ò•Ãi ivfs#Ûr¹:5(ÓRé‡)¾ö;Ÿ#7!¤þ.©§¦ÒòÙ·´! ![[³ÉÛ6£¬°/ÌÙýWúrO©»ô©¾£ù³) ®Wøèг—A'8ûá#ˆD²v«î`†× ¨m•º9ª±IÕLhí¤›ë´F2ÅXžhÀñ3qñò$Ú$‡úeå?ŸF€ˆA!yîÞ6í¹RÞí·5.I⥙” êyŽ¥]†’Úé(0•$›HÖíˆåòYzŠª‡ ¨B^ÌÉp@#Ø¿fÅtÌtçøŒMܑʴßÇÄò¤mR$.$§q‰ …ÒBr v—%Æ ;r”>…’ %ðgHûe™|öU&W‰i;“.F âW`=[]uÛG>€>4ay?DݬÚ(Ù“‡†ªÍD‘Wh×ÕZe‚6QÄ •¤dF +xi#ž¸F‘Ÿ !ÈEýqudí1™›©^•EUS¨)d‚Ì›|¡„KïŒüºhU ¦¼_k]¯,y{69ŽäÆxOB€,©F°Ì–ÚT®ÓºÇ,ªM„É·mJbdp¼­A¨0ºc˜Ïꌾ3Oiì%iry¼æbHñøü=88‹6²¶¦u‚„Uݹÿ Û†F2qõ*XâeP¯ #~p1Žš5ÔBUÀ$“Cl|Žçè^¾ôGª990½1êÏOú‹¥lÕÜNÔ˜ìåúø¡-j‘xP÷ä©$×+@÷ÝsqØŽ(ûo9Ôº×LhJ˜«úãPbtl¾w¥qW5ª¸¨òZ›ŸêXµ7]ÊjëýÅjú:Ãl>S>54º!ò8_®qÙ_Å3 –Q_ô­ „È DÏ0Dtú u¦»SÙ$É#`JA·-Ïqõ˜óhüÅÅÀqí«EÄòž*¯âS_½¹i+‰`öÑERT‘;2±²4˜«ˆ’ cVãÈ* & ŽÑUElœ¬Bã×Ä›ô³Þ-žžëSžÔwEÉôQâ:ºO¨Úv|¯T/ë*ÍG'§5æ¶×9œÕµi5¿…©}°élV‚›Lv¢¶1Ö£p-ÇVzO«4ž ÜîŸPë~4×}éçKôÍn¡õ—-CÑËCé¥î¢ç1•ô ÕNÕ42ñ.O-­oiØîuFöŸÒÙ­  5wK+j\ÎRi£ªÔRu~¤1 ¹2v&NÒÑÄb*éé Ò+Ó* ¸Î]·{Åñy­ê\MGƒÑù æ&–¥Ô˜íG”ÓºnÖF$ÏgðÚHáUäðÔäxìäiéöÔx™» ïÜë´RÙŸºKFÉâ|§`‹#Øür€°ˆÁZ’05©1ì]äÄoòÛ z'«¯îÛ^¢Õ:{¨—ô÷M°ê;§ok}aÓþ¡hœE=;Ôýoí‹Pôê·SóúÃXc1Z“ ƒÎ¾ŽcWçu6œÉéüö™ÉG…»§oiÜGÕ± 'cÅLª â6s#©‘ÒX#ß“4`ÈØÚü†ExÚg¾·es?šª P Ú »=îñbÙ3%Âɨ6\AßLJ78æwˆ)ä ,Ï'ýEX î§7,TË 1{rÏÛ[QZ0Ç t¨åÀA`¦)cdg.’BªáÑCK͈ÚTM…б§Ç¬…oBÌÒ‘ë¥Áå–i_ˆ¥p#‹°VR­ ’:HíØÞ UcÚѥء%1Ä‘‘ÂQ?huPÆ7Zè‘§åxâ'·ˆ–´¢É˜á(Þ¯ KMÉynÖ“¶ö†3©ÉA>¸±¤aŠ«ÿêY# ®êNn74›eü1ä‚vlÂ>(A ðaé4p²æÁ¬#?ò¿¸Œ(}†EP¡cøÒ>25xK<õÙKD-Šª1gó*¡—©Rœ(0Õp ¸!ظ Î5ä¨&­dRRJ’§‚ÂH6<_Ò¼ƒ0'/G‹vY™Å¾A¤'äîÝ–îHIâ'þì„ ©ujŒ·J²* ®5‘™[p–ãÙ’BQ¢+\ˆÚ•àY`aÀ­„>ªn°ÿPì.—¿îKXÔÓØL—Cz)Ò\&{EkGÍHÖz¯Ô\¯TµGíÉŽ\U,«bzUS¨”±º*JÕ­æ/>UjÜföŸDf5dCE{¿÷«%Äts[¡ù?p:ç¨øÝ3§ïft÷Z:k‹Ð:htÏ%Õ}]—êK5¶‘Çë9eÅiìUºÝ-½ŠÈ ?Ö4†L¹ÊèêèÐdõúà°YàúRÕp[¹¶ÝÆ:!Òhß@µÉ:„Ç‚åöÚ.Ùé%¤²lŒŽ([0 ýÆ9/Él5v1©‹ãÏ [3ȱ›N]!xàw£«KÛÓ-U.^†ä“™f‚¼€ÌˆÄªŒ¨0ÿsE× ­j{ }PH¿Ô»¬º¿AõŸTôÛ¥]8³•öaо¢u³ÝvQjMA z®nõgÜGKbÐÉRÀÍñîk\µn®kÜvUÖ‚®Ký9Ñù:R¾wRçtŸÓ-{z¶g¥³QÀñ×ÊakäÒ)ÝÖ,‚­ˆã³Ã–ï ºð±]jPy,»ºwV­šÌ¢š•©.\¥;!„ÌÜï¶1g:}*M@†!šJ¤Äµ­»·ð <œ“œÓ‚}âv%.Øt°Ì9sRËVÃ-Ç&„Èî:X¬MŒ®N¶-&X¤¹!QÊ#²¢W‰˜$‚T‚¤Ek,˜)Ÿµ"ͨcrC4j’&ëÉ«",³)P’°Cܶ#,‚ßÇ#L9 >‰¬£Tâñ±[±`Oz„ï³3¡q$‰z­ýù8lä;uRôktª¬ P¥j‚Ê`ClÍk´;`=ZªRB¡*ZA¶ä¸ƒKN;ÓÃç)Œr$…^PÌÍ÷~( ƒö•”îϳBI›•éöSJîNL{–i"«VÄ–%%&ˆB×ÊÄ`‘¡[ÜŒoe¸D¬6ظ,DPwaÉÈÿõ;úŒkJÕΛʼ¢€9æÍ_Í„vˆ¬»@tŒƒ(< ÀŽrU̪­4©pVÊ›ÞðÐø5[§åÓEjej{€ XXL_|°z+ŸÇA“‚î>¼S4ñ*%+W©K@ÔHZüxç¾æi„ÕZR4€¿Hm›`÷·8]âWOióÛù™£^È·O¸ª©ùEs ;ÎGÍ[ª«V M’Ó¼Ó†WÜL1TF ²+üecº¡+ýÞ ]ÕŠòFýzÝ—§L1ÆÌ,f7x'f°Ö©ŽOa–(ä¿·6bëOZ£•¡·¢V/¨Ø\v/NLeÑ%j0Wq FŠ^!ʰ“,Ê‹^8Ü iì‚ø/B3É]j!4é©Gñ5‰oþl ÿ[lØ-’¨Š5U­lôЗ3‹Ðɓ˒†ä£m&û¨Rþ>ͱ<¼‘ÄÐb6P@ý‘é¾ ª/†ZFW܃.îv*<•¹‘çh"õ3ZUþ3"B, U)AÆÔjVÊÈ ?8$´„†€Êœ@r>§` ¬ ÊHÄ3ÆkÈÆMšJ±Ö|Éq9IXqäÜ[š‡]½ü.eø rxå»wp` ߋˆOżb¥‹;3G#‹buôBBî>£waÜR9·%n¼—v _ÇèùÕ{Š0ÊXlð_>9ù!w½ƒo¸ßÁõMÀ`˜ûÎ@ŽF°â²D°“Áìk\BC7:Ò:«°¢[ÁÓµÔü"Ȫ´r£rá‘b®X:¼$%–ÎÊ9˜‰R?¼Prô†[3È_¨}Ž™íx·#syb—øÞJƒ8ƒÀÿ™!ºJyÅÛÚá]8°?½€_°€7'~'Ыª…{v ´%ç‘”*Öghà #~!“ˆŽ')im±/Uð}¡Ê;¡M‚¥ePìv*³5Œ¿‘JLãÛšD©Vk‰‹ÐûZë|^¢‹¸èòÚ ­Ç¤Ÿ!aJ®$ŠY$£:VgYêMÃù8à_³#“Ì#1Ik¤°ù€pÁˆ'hh3#Æ1ç34je”„U“UˆØß\:~[ý¯Mãhм։ûJìÃuð³Èy¸ ìe n<}ŠƒêhÅ€}†à€WpÍ/0îC)ÜìœQ™ƒ$®À­/Ô,NV¤«“¹ed”¡ªß –Þvü¤ç-dYǪ·Äï° êIV4û:ˆèeŒ‚pò–I'¢>Av\’J¦o¸¾Ô™‚É ÖO0¼ÅU *PRÖSÈs,E»ívÅù|ÝÒB~($}Ïì#ÞAy³$›s‰C»³Ex8ð|òÿ(¶²à©¶À£cಅPT;rbª<}½ ›«8¨e=Ñ–sA„·nÌÀ|“ ZV†Ê´fG”ƒTOé™:«§Ì¢»ãòæ8×0WÝç€s«U7³ÆY¯)îÖãõ‰AùRW;HÈæKA@»ÅÃg‰Ú1ãh@¨&$Ë÷gyžÒåð/Õ繩ó !B¶Ûgž«Èi߸ZI wiIÆLº–ÉŽ1q ]ýš×#Þ¿;<÷s7·hHD†W^•R‘¥ŠeUŠh~ÖèïÚaÀ’WÑÃ/~¦[5~ê®õlÿW_”ä‹#¬'k1K3|hdu…nCÎÝk âkFµ"‰œ)ìÑâow>ü¢Vž–OÛåi’eíÇ ÿš.‘,{”©øŠ¼•a ÈZV>¶uw§”Ê!`…”Ódȉ;¶ö l?¦Ìæ H„»ÈC}¹¹úv¡[mÂñßm‹7å²€vò ú†úßfܸ¨Cx]”o¾ÅJ°^ x'q±þŽàÿçÉlqò`»€TîùÉ-³±ÜylOc• A<™ƒD…!Y‡†"=œlÄþˆú…Ø ‚LÇwÃŒÈÁÉ;r;F Ûÿ³àm³à’FÃÏÿW¤°î«ÿScäç‰ÿãr<íãÀõå@uU`;6Ào¿ù?½¶#Ç-Øùûã׈ý;¶.QX¶Þ@?V ¯#à°#ËO¨‚”˜ »ÙÏîÞpwP~ÒßÛÝùÇÇ^äëçúŠÚŠIZ)=æÒ‡ò3»,µ=ŸûXÅÜ­*ñË+,’ãØÉk)QkšÝŸiÞÊÕ@¥¼YwÝþÁ¼œ ÁhO*Ã’ÄÓ…Ž•R>6A‰­=MºÛþ¡³Ç-Qžôå‘ Ùä®Õ=±{r«jK›™)¤VRxl]?Õã.$µ„kòeŽU·fçXÃÉZ’h8žE9¬iP‘ÝÜâ£ã¸ÿæÀpÞ»®’–éÙv•MâAñÝ€ ÍŽ8þ¢£øÊÛú€u1€”Ã͇_kã©Qp`‚A°ƒ‘ 90 ò!®ÓÈ%x£c”ŠÃ âoâ^E”;É'ÞDåãÄ'xȈVÃ-XQ¢IÖ=þUTv£XDZºúÖICH®¢9‰EhäB’<“+S¸p–:s‘ÖÚ÷#–Ìj¼ÖG¤—úk¥7¦Ìdóy òÖ±£Z{?ZUªV-hÄèä-Ñ“¹W%=y$ZZödŠw'óH“ËYaïnÉÞà$L«,RaÄvQYz+¨3 Fùü¢º{f,¶™¦—sÆe´ 6Gô%Ú”•¹Ó˸ʢ žé‹®ªÆ Zt¤¥Øîû9m»à¶O©~ˆ¦)•(* ¼»—f÷g†%âý³ôKФö͇Ò3cú4˜q§ßJÕÔÚª¥¹1ã)mÖMZ¹ß÷u‹³äëÅnþFm@ÙÝŽÍ™ašXÛ›Õ_k$ëºÓMÖ1ëÜn¹ÑZSQè};¨ºyÖ®t¯#CHjì†-©p)ÿ µ¦“‚Õ ¶GKéë–¢°“ÈeÃcʱHQZÚ+IJfò*Žöl•ÿŽñsûqŒÎg5•¿¹å_ä ³øÒ3P«6£ÏÁ(?Îe9÷¤”9½u"@UùÀ'HÚQ]”Ú¢BV¯ •~va0œ_ú}vÌ?¦"ÎüNÆ"LcRzÓí­÷7$?p{Žø#õ S¦tn„ùkðÔÓR|ÎVæ{-=l]kO•ÔY»7ó¹lƒ,5¼®S!rîJùùY»–k°‘€‘Ñ{Ší»ÏÆGúÕcºp ‹ã ÅØMB<—íå.]0‹Yw–Š8VkRÞUŽU  %•‹$°–Xå徦¨D,x¸úçÇ$[2£(@yrSP";+£Ž(‚m9Ü,8¯5îl oGò9Eå²É¢U¯I.À´±`ãm¤¹Ûsy±˜«ñ’¦ ¸˜$ö’×óƒ_Hcüù¢BòÑ@DrM*ÄZwäeTXëC ÊÛÉ.Y½ùX¯r#:§úN$`1Ì­ó…àýù$š7Ü…d‘¹ü~E÷c;AÆ7°çpkd›XŘPÈIB6I"Ó³=U”@ŒÒÉ2V•&’iž½•ŒM†Ä¿7"ÐiìM¨Õ‘†s6Še¬nËbIšדvűTÍ@‹QD«X×+vŠIxÌòaÌôìÅZõkS¯ðÓSO¤@Ñó/¹ÜÜÜcN[?J t—GZ rA.T’K¼Î8îÌIý_,˜%UŠ>ÝkBBb˜ˆàŽXÄ 1˜UÄL‹nÝi’+¬ËR ¤¤àÝÃ;¹›21” GâDW ƒ ¯.j«üœ•á•.(ŠÞ^E™_~æVÍ÷€ÛÈY²°ºÉ Ï~W0G9ãE4¬Ò¨™ùGRÈ@ù?Ç[‰BÞ´·XÜFèìÅcš$xd­&ÁUʘê´R¶Õ,ª„Òï°J,#ù,²òôE5J§–h ˜ÃÌÆ2æëüzªª”i€—ÒK ïØ;¾ñ7Ö&ïmôíöÒ»…Þ4uRÉ,Í.OB°î\d´¥CI#6ü_Š)^ãwV$‰ž6—ä°Ya )dƒ$üd©)8ÕVŠU’4»C P©È´iÇBQÎd0•Y"ŽWa%šBImÏaèJT‘wqœ±*ÆêÈèÒ-ydï¤LB+TÚìFAÇØ¢Ø#!îjÒ ÃK¸“ [q3ÎüÆ3’.@°Y¯°úaøÙšH£^è =e°°2ð¶p?;ž£MI9-/§¿` ˆmñ¹W·Wv•ïãöxÞ6â^X„@†]¥DÂ?,…ù"§•Èm¶2ªä+àì&*Ç÷¸GP­çnT®2®ÇcxÜ)¯/m2M¿ÇäÓ.óm4øÐy¥,¡br ‘µ>¤ÁüþVFÜ¡s9ï+‚ò«÷Šmfe}ÝgBµ%ªŠÙ #Ôr3‹AIJE7(’AdÃùú¼¶K<œ°Q)Ô¥)` 4Lòñ- /grò©Âåå.È©‰ÉHë#öãâ(Ï˾JsŠ9e+fU¡™v3 VŒÇ r€4‹à—q,r<ŒùlÑIü¬–‰FõÙmQ©$â›7’ž `HÛ¹aÕ9åíÅ.Ó‘á³È&'‘ìd‹O[>æ8ë²pöMˆy£rË û;*‚¯´ŒÒúGiËoƒ”ôÔDzú—NÈÔÉüMD+â3½ƒüÄ·†=Ëà ;­!))êÝÚÃfîØô ¥âú³²šåQKþœSe2 ¯4±*²ãŦcY LÀÞmŠ“ ˆÖãˆÊeLFB…¾SF¶->Æ lò^KÌl‰=c‘¼ËV × Å”+£Lï¼RI$MX³;wâŒ<øè•FB6:ÏÆ­„ Ú@ÛNw˜OÙrÈ‘ÅÞ{1£VžCÈrAb¯~˜ø•Pä!nÙM%ßiµÀrÍö1³†ÛÜînËòm.{c*ŠREE,(#ZÐñ2 2J­AWi5ÉjGÉqDëÈî§ÎK"«ÊQxº\$£Œ¼Ê¬R[Y"Ù&ž_RÂL¸ø j¨î˼lY»Hò)Žç–â¯p'ŒrÜâʳ¸šÙ2!~>”³3*¼ÒñŽ!f’T‡ŠBñ ¦iö Mk?$·c¶FžÈ¨Þ\zŽ“`à‹lC’-ãÛA‚Ïãò·ï¾ Kƒ¾î++ JÝÁФR:ñ6À® ŠCµl‰7|³|@ÚfŒvûlÌ$0Ã\Hg3ˆc±Zã©ùÅøm°©Å1²³úK•”QM»GÙ`ÑÄ0üyBj£0*áD³bkÊd±ºåBsÏÜÃ/Üå!% L½Å—ƒÄg†yÁ%„u{ek×µX¶6¤C"ƒi0X9 E¶ã»lÂ.ÅG¿´ý£ó½°nèÿ8¿ŸpÉÞŽÕ•¤¬b³ˆþË>ÁêV1,1UyE™æ”I4W`oC½ì§ÛWL³6rúC@e+ÊÚkThý?‹Íõ7ªº»Kt÷Iëa0Õš¤ZOXk|ö”èî/=^w£rŸL0úI×aêülM:”`áAfÝTHéÚ·PDµ»b¬ÒUP]+üewV1´@&)q€øº‰¤EŽ÷òWÈ(™†æ@§%iâ#ó”'ø¢@DÖ‰±¸§®A³}æ«T®ª‰N¢$Æ”†w½ÏolÊu1–¢)é$%Ë0mšO낾¬öãÑíaÓmÒœŽžÌc4§KN—~šI¤õνÑZ³AO£p§0VtÏP´v¤ÃëüUöÔ×´ÖnÊjNî­Ó9|öŸÕM™ÃêÝ,Ž*ûnè¬3¤-¿í.ƒj|·é^6}G«.dtî°Ó˜<þª/ê+ùÛ:‹XçeÆê½Jùœž¶ÊjKÚ›'š¿ŸÔ²å³Ó6D Nk(Àn¦¥½Ïl4e„êXÉÀ“4€#$Šc«9 šHÕ} vŒ0ï3+¸î¸˜ð²¡dw`Œ­ ¨•Dæ",jˆ<‚e>µnåËËbÅ›3*ªÃ$ÓX²•¹$(óï$kÌB(]XNåöSÄê+Gw^dÌ ‘öª²¬±³+ÍÿJ°JQr7T#á®° «‰Ü®]Yj¤HQKÈÍË€Ö;Þ`Vbº«Õ]HN¶PH""f-l:J¼èç„ÅZ)2 áÉœ- ëÛ{¿jÀíqŽ[”QTXa±#\[{òhm3DEËi$ï;ØVILË•‰“¶æ4î+†*­+ªF½E’ÊRUµz£Jçñ@ó×`¼]Î>+ –6îK‘ ¬–$ȳ˜Ï¤ˆ!Íe•0±ªd,w†ìdY$•–3æ[‚ì%©Q?7‡ºVr,„ˆ—mZ¾i£ùrZv?%SvæwÎ[øHl÷,Ìðj …UÔg0ϰU»¿Éáɲؓœ?‘"‰¾“ßì‡ÄL~-`kìþŒehš…¨)…À€íÝ›yÛs¾5EU£)Þ·ç„$ vžM·‚ÛMß"QjkcâK4^:nÍðëU’Í,³H=ñ^JÊ"áB@–»- DQ™e‘E˜ –×pEbqP\:ÃŽ‘C-ä\ÉÌ+(@^¹‘>ë˰ôk¾ó$±¨‘±pL£ #\Ã:4s$˜yc'‘pÅÉœÌe†wrðG ‘;²Ç#Šèc¹ÅLÅ´¨–³mxF ÄˆD€6,CnöÞØ§Y'Ò€0wkÁ/wÚû6 ¸ ‡×=,ÔÚ+?ùp:š®wNfjãò×ðäÆå#5²á¿‚±C'§íÉ ²J1™*ö)†c•.ÍëK¥ÞÛúwÒ}7‘Ò:b×PçÒ·´Í šÖYêgP0¸m/ŒÆÍ‰Çà´¥ i¬3õô•X§\]HtäXîÅ(iÔ…c­V¬ke²táªß½V4XXE³f(O6ü0rHÑÿxâá™àË»F}8sy„²åòü;]á.O!K’´wÌÒ™I‰Ç…’†<°©‹2Õµ*?=™èÇ1^¥` ê..Â;’ñ&|šËõM‘KA! ³øìÍ»ʺíÒ¯âªuHØè·Iht?¦×´'Wú£¢ïi®™ÐvôÌ7´æ¬ÇÙ°-Å[[+lË•ÍÁŽÄÁ™½j,m`<ÅÓ#6¢Ð:®ÕK¹ EÓLvc¥3¹æ_!“§WPb$Áeþd·-Hs3߯Í4/w:.ÚïÈlDâr%ômG‰—–k5ÉdB«5ë±9•bÁ Ü;«)±ŠYABë–6™$x†`ÔYÎqIw)îB0ËÚ™Ô)%Q¤y¦6öÊš¶¡-V¯œY©=¤j JI¼"D<Ýæäõ îi¨kwC!ò6ã¹áÌ –^väNÀSlF[3N¯K%‘ "›¸ðÁ-ªêŽÊ½¹&£UÝšYÑÁþ>kâ#4Ò¹Eˆo6¢ÎFcXó–fTb¿ËM0/\1FkFYyymÇ^j:êjчù(,NæzMZÕêUË[€¸1!áËîØ1Gª"•$!H$¥ 8"MÌXxûòNÍ„^©bܲ!yqb~²ðˆ³¨¸Jˆ€9†N U¿­]Ï£k8âßQÄìUý+– ¾I ; €>Oªt¹[òZ[jÄ÷à0Û{2Ib'Ûz« ­9¶7Üœ\rººÿÓÌÉxÔ™–/$ú‡"U’HÞ6É[€²‚X˜ØIdH"Fœ…„ŠA†¶Uq¬ðÊÜZ·K«Sà¤).ŠiL»›45›r.,^aC©"’ª†N¥khpŸH1í.ûØvKi,âìWj‘n±ˆ» ÕHàl®´Œcß’•mŠŠÄ2‡Y^™ „ÉÀ:—Q,5’_àg»ÃÚ»KâróZÒåºýŠ×¹Ý9¡µ.Jö ¹Œ½£2V´=Ž”h,ýlvÃu')¤°:‚µˆ5{Og¦žùpYþ‘tó\ê ­uƒ¥ÞÓó}×½;Ó˜:1é/S}Ìôë¤:Þ–››©ú†z§k ½gйùâÑZwªvôNžÖº~][œL |¾Z™š¿·M-Ó}KÃõNÅÝ[™ë—Oúc¡úÃz´Ù|V?5?H0³§õv—l4X¼îŠÕÖYmQ;a³G1ŽÔRÔ:w/»…‚Õ¸ ocÝ0ÇÔÀàqš·ªT´ LoD(kÞ—UÕ 4·Zr~Ü´ÆŽÒ½(ÕÝE½oGM©ëjœFžéÇM+j;*Õ=5ÓSÃh=1Õ:g?:Þ6ЄPêi ë*uiÈ‚ H ƒ$¤“bU*äˆ`î"̘y$›K^Y±iµ¾±Ó9Òz›]ê»ðctæ˜ÂßÎæòO½z8軳Iuç3[}á…hÓ­;v ž5 û--êO¼}btÕ Mú7Ô]Ö KšöàúoOõ“Jtß5Qúyc§-¯Î/Nû†ÒØ|ÕŠSg«é{:#ÔÝÔ5¾©Ðuõ֞њNîRâ­ÆG¦ZwPh[Ó]&K[é-scP¶k©¯ÍmâÇj‹mz¾5qù nœÀJc‹BU‚U¿Jõ¢¿~fˆIè=£ý¥é=7fÎkUõª]OÖN‡CK[õ Qi³¨°zCÛ§Q©u3@hš¥4^’à jÌUfêf¨Ìa¯u'W•ßQkìüø¼=¼^ÜÊ3Š4Å" S¨‚‰Ú6Üã=™a­Uu(‡›0ÒÍÃA=†&QëÖ¦“NèªÚ©P׺Ikn¡ÓÑ)Ãi̾¢ƒFôâ¾)sÚ†[:»Rhý=bÄ63¸Ü>™ÓXܾCXjéžÎ¦5gn8+þ Þå:xî«j-q£²M§´¯_5‡K´‡ñ•´çK­bô¦žÒøýQZ×Tò]~êMôî˜Ï4³ÙÄ4vs8ŒægS Ú{Nii¬Í6=Z誙Œ.«ƒ\u¥šÇ§µv…›Wô¿)„Åfr½?ÖíŒ}Y¢òtµœÖ88 ¸Øº÷ñ9Ì>3Ô}—!ªú}®4mì•Û6Fö=˜hõ%a¥z‰ÕÝ«gÖZã[É©±y>ŸjÍC Ž éZÚ[Qãñ™¾«tï^¶=æÄÒIjë¼l”úƒÂKÔéëæK–*ËEz}D(š R=):Xü¿07Úä…—lNL‘Hø ºƒ˜.’ kv°±Æ®/Þ^’Èd´ÍZuÇTsÝÀô¯Hé-#¥4Ö©¹«Þßú¯î+ ¹ü޼ê–NÃú¤ššÎVl¿û ¢ò„k>zi²70Ñú?êÑ[Z"ßQ²Úw©šcK“cz˧rz“¥*¾t^WTC£­^Ã¥]crÆZË«e®õ=t?ŒhóØÌµœ *Ä-ìû§?Ít—7ÔZó1£“¦º³HI›¿¦mÜéEº­íÿ@ÐÌO‹Ò¸;Wq8î›õO7‹¡‰âÊYÌá±9-]‘±fÆ¢“?Á{ 馔Óý:Âim{ÕÝ)¥=£zYéÝU§°ú¿ §jç×=&qïÓÒƒ‘ËØ¹ò1º“ù¼5ý)f›4.é<µi!–(¥T!ÉF  Ò@2tÔO³‰™°V@7§`6h‡bDâGŒ÷CS/«zÓº£Ni^±ë^¡ô‚¥-U§¨Å–N¢hý{©úoTéÞ i­Y¨ô¶éŽwO`s:KKên\×z?'¬sž ÔƒMj KÛu aã3,h§ºåãEfM‘ß~µVµÁ¥‘¤ŠÌVk²øçïz¥š ÙÖ—éΨéÝŒBæ[¤º»ÕïqyûÙdÓ8<¦£ëSz|Ý0T}Ó} úqŠÒu´¦Fþ¥\>‹ÇiäuNzæ2ùL¾BµÔŒ†PÍÅÊ*~è’yC#Æ’­°â”¯vÚHÒõqU¢6ãP6åE}æ>wI $‹<7æïŒ¹“D©?¼–aãKýýÝùÃÒF¥™8•)$ÁÞHœ;*lfF¥n¥_ãn¯'-è½Ò~[g‹•`‹m¹¼®UÖß2QaU+",eoîÃ5õp±š$Ì„«¢eN¬E@UPø1<ŠñÄ®wÆòzÒ–¯“‘£ºxìæG'JV窓«Mi–ÂÖ,k$«bI„#™HD®22ÄÀa䛊~Øm›9–^bŠ©¤V™PL»@2Áìåküɪ§!$‚ > À1fßöØg/ìOÚn^Ö«·S¡Ý8Ò­«463@\+§ý?Ò Œ¥‡ÍÛÔX}A§æÃhêÙ 6°Æeç£n®^µ×¨[O鏋´˜¨‘¸iìoMfÇ^}ÅÙë }EÔ˜?p¯èü}ZÓƒNiÙôe ….ŠÓèüšnÖ¹{Lg*æ:I—¿¨èÜšÎw'1ÚÈÇ8UêF2:g2-,RÇÉd‘–JѱNä'¶"żÒSŠE‡+Q“)'q»‰+#YjAŒgrhH“Ÿ åtK /¦Cæ¾OŠÓ†§YÀWùè %ÿ–÷ù‹Ü1€ÃvðÂØ6:ÈP!ª;m 1~Ö'‘€þgý4ú ’Âɦ±º«¬3¬:wœé']±º[Qij±û馭×ÿ¨ú³Ju¦\ΆÌÍê}_Õ¾°äò™®·IõJ½SÖ¸|S Š›OTÓ–sª⤘*Uc޽j”Ö­X¢®ÑÅ^´C Ø É,1ªEJMŸ!¼(>£x Ö˜—VÍ^ˆ†Y i%wdÖ3IF¤Á7‚¼¤[Žøå˜R§­†fö@¡Ê\’äµb‘~HXBœùXîË‚ñC”yh鸎L(Š¿ò&¦W0šº%ÒÌý@0v1Ë>ØÏšê?‘¤ N’å¶c mo}´–mÉ=’Ví£ÃŒ:¦æ.Ø•„&Íñìwa‡ 3uÄe”Êô+3jŒJ‘&ºB"¨Þ Ʋ† Éø=à\LöÐYÆ¡¡;íä'R8¼¦gHö®\:mñÎäšT^IQÙNr°nRSÃÐÚjÖ"µZ×jxWñO©1œ2ÕŽHì\„F¯Ú’h¨äL\«)l[Ù‰\ªƒRJHºRäÀv”³›‡ˆ°ÎS¨SRB%I,>•$–;ØÀ$“·‘ ×÷åcôIâ9CaäîAýíãõê/¬äá¦3 ¼¯ý8!8ÁåÜN öØ,„ì9;Îe Þ:”,޹ë\_C!$2ÂLj>9„ÙXÛ‡!aª²þ[òÍ õ©sTçîÓ± ¬µ‰ë³±šxFFy̸ÚHAçuco‰%>/‡†+‹1 iôŒÂj!EHd¨(ܘ)6iðMâï‚ëê”×MHЧPk&ì/$å¦[^m/Y“—þë!"F¥.N*°vä $§æJVZaÝ F3¢Èå” 6yqÜo¿þ{Dy]¼‡ã±ðNÞª–;?§\VÆä­×ƒhPCT((çk5„@@[¿)#àG+ÊTV¯•‘P¿@ëPX³fì! 4ÛïY!xål*1„ªC¾ëÎX㯱ôŠ&`²zzý&²êª ]=+%@O´nã‹â4ú:tÒ‚…¶€w#{‹þ–ÆïPQŽ­»9’AŽ›"¬UÄ,uØDǸgTÈŸ!’½¤klì`¬§ˆÆ€@Ø@°·.Ð[+”W–S"Ô·)K9j'l©\»bå‰-_•9c±=˜f~ì¬1ñ³rוàŽ8ÂØÅ”ùK/o4\WŽV‘‚K«Ü…£äÈfvÝA–BÁ’»X‚¶­‡ø·á/ð—¼§¸j…3N$)Ò’ß(d–c}ì ¸| ­S]E©Ã,•ó.ò#w/ÚN;m”ÄËF• ¼­Gæ*ÍZåjJÉe£šjëMñ—cA‰zŸ!8ÚKÛ@eini•v'›c ª®Ëœ§?)yð¾RCˆRâít)³Éõ™"5)Å‘Ò4Evx‰*Í a=¶u5ˆí—µ³ü\ÀoÞ¼¤¦M(ˆ°ŽÉ*Ò”UŒÈ†Â»Õb‚V†<›F§ø©Ù,âÀáUÆVŸ¨…TjRˆME• û;á†b @J™“«H0srîyglH„šgfßšäYŒl3˜é´í½­6 Z°¨É­EÕ«[˜L¦0³gLo³c2ñ/reËÖ(!…è¤,±T²ÎÒÂEñ(1|dw._ÜŠŽ^=—€æ²«HˆÜ |@°îœf8##|Æs'4ô“,°ò*€æ9­‚ xÝ–)~GÄ>äWÊɼU,bÆÍ2¢GðÈoš©™þmGgKë ‚×±øa]{¡îIBné7`ðƒíŽùµ¦Éåü~r@&à eñ†À˜ÆË 0®÷ÒÂXQŒj(–Ÿ"ÏhÍgNî»PÍHãb3Zzà4…‚›ÃC)©#x«nP,µƒØŸ…o·®cþÒ‘ÉÆ6”f{NâR¦ªÑ@³#PTÒ¼±ä­HµÜZ6æîL¯#¾àòAÞ¼²ö•»Ž 'X¿÷m*Ë[%[q„¾ÇÔ©eQ¨zª‚/ñ ¦p%˜ÁâÒ9…0dÓ¸?(’àö³wycŽ©“L?1>?:PØ™äŒä¨wã‹°¼WâÁ‰(²Õ°¢[tãq:º6B³I;#3{éž=ãω»u7㒠ܬsWŸd‹¢XmÆXÕµÛ3fy²4{ö¹K0æBB¬KTEX¤(‚EXBxîl4ëüdnÁ1X32Ç ½¿Xs"¤’$ƒq—’6˜G]ãiJË$Á;òÔ&JHâŽ:ö?‡T‰›kÅ&®ÑñVÚ~rJIž67Ä e\%8v@UšY˜p {v•ô£–‘©j–ÌÃ/‹ghLdVË…ã)«'‚ýÕ‡Ib)B†m1?ibÇj&‘> uLAÐ è̃4¶ê¤2K[h²7vê×z°‰%ã¹20úJü AÐìMò…»"Ýø•dƒâ]Œ‡ÉHλz¶ãh +̲\±À!tF”Z•±WåmZlÎïj•ÀøÊh*3Ç*‡'UXõÌ7¬ƒ¹G2A:PƒßHYäüÀn¶îÃÜc’ê:W›®ãÔ$€ì”ÇŽ~í8ÖQ#̨«9‘¤‘b’'î„-<òÃZ’ÝXÔ6B Q¯T¦[ܸ¿DDMÔ&ÌÎÿU‘9À‘ÌÁ™ù§šEˆ“PÇ·ÏS0*ámˆµ)Û(cŽ)jV5ã†0G›‰Ç ˆ´&±“v¯"·¤Æ¯ {®ü˜ÈÄ2 —’aÜ ärÄí• ýD³r³Œ" ÔCI0GˆP1>à^±,í±ÛØÎÝ¢k§²šijcä®ÓÓ‰nÏ‹rDZ³!¡ülë$Ê¡&…ø !¬%–Eã'^˜ê…FÝ0.²¼‰ÍìZ#”ÅÁxBG…š0²× Þ¸NRÝŠÒÇçHᕳ9dã ‰‰_wŒ"‰.Ví‰IŒ–~>k˜•êòù¤ÜXʃsí:‘§ú§ zošöí_ýaêGY:eÑúYn³c«küü½$Ó:÷9Wªz¯§¸~êÑ Ö·´˜˜z…QO¥bÖ},±ÁXÍëètŽ˜ê]Z¦O0ª`¤¤iÒuHsÀ¹ þd÷Oé´³ˆ ­D}LÃhý›Ø`ª:g«qË#óIK „mYÐ/v[-F5¢OÇ-¶ˆ‹0kº¦fZtËTž zq€À;³¯(¢~úǰ¦ÁbY³nòO´d¶eªæ»©{¬ë܇S±°{`Ò6×¥º³Gè|Ö­Ç{˜ª½4Çê¿Í¹¯fÔßPt/L¶#Ò $§×9lWX¥¨lÏ¥[!BݤkŸõPÓÚ#¥Ú©öúo¢bÅëMî^c³:“ÜN'Nô·S×öý©0ZzÞ™èßU¦™¸:ɬz޹™²ý7Óôôž—¹ŸÇé½_c¹:ØJÖòc‡ú’ zFåÐÀ¨m'³ðZòØÚ:-ôŸeò ¼ÍØ}šÝgt¶ONÇ å>FÒÆa’IXDÄ–QV’9D°M‘xceÅÙðçãì©(ÈThärcx¤E{Ò7E?q …ÐŽÝJü¡ÈFDö[º¢¦½ÌæœÐÙ¹±y汿ÊÿšXhfpò^¡°øÜ¥(æž½Lö1¦Z²Ì¶g¯Nر Êé(r'icfâÂ5H¢J‚±¸LĘÃY˜þqùËcy`xá'×WÓ³3zuTRJŒ°b`4]ØÍ±Ïç²ôèfM€KË‚yˆ`Î$x=1–Ï´ëŠJ†LoÆ‘¥–×?$¼pK±Þ•æ_hC}ÑdZéĪH±»¬‘ºcª cÞh•RF†¿i•‹µx%ÜËJºH˜Ë%ˆ¿ ȺJÛ¾~BÈΟÍt´MgxäXŠÂ³"ˆÌÆÕˆzRÂ;ö.ïÿÄü|ÖÍ%ÄåAò?à9%à…xÎꦎi‘žJ´Ú2ÇZÈ6cíy™Î瘩O,”©4ŠL¥Ù –É`À´cn[)”U K¬²‚²CB”âpXŽ Ü/¨4ÖKN¼äVw#šÄo3ª$jÁ@±¹ðùˆ÷ç‰Z|o*6Fª›Æ¢@îѤj±G+¤†2köây{3Mñ—¹J½†ZYš&uÊ;]Š0Æ>­2 ¸$Ø2µKSF½À®²‰¡íH"™™¡h÷Ý2-¦:Ç Yx+zÆQL §Œ‘òŒ7e£Yå "ˆ÷Ú³Îü¯S‰¾\²¬™Zᨴˆ dk+1A*ª_L9‹Žy‚÷-l`ÍREꦂB@Ôb@&mõã—I‘¦ÈS`€w ‹$ðt›ËF_m«äl m-xU'Œ$ žË3+FUÜoÔR#޲ÒÉb J™Y£1±Õq÷_ÖÌ÷@zB½@À¾ƒ­”“[èýÙ.ª¯û' «½5{™mAþÝÍiÌ„Ç^+GJÔE\NÖXl%é?»ËqÖÔö´Wèt¶^–׃WûEÀë=O…Ïgú±–Îa°:ý»¨õ®±lF «cRäÚ¿5Ô ^‚¡†ÈZn¦dô6bÌ+õ ­ Æ…C¥@9Qm X wðÄò%O%Vª>*!Ørà<‘Ü4Žñ‹á·5wÜ»(°Å·}œ°ÒËbá×¶—e€¹nÞ!»j¬¡UŒ½Îâ ÜÅ1‘øñHÛxÒ¸˜!þ…UÅ;qýocTó%ï_¤VtNCVèøµž¯ÏWÓýhÍ>ˆÃét½©´£t!”Òúò×P*cs±ÐÁéÍ/®1£LÍ‘ÒùýMjý㑇¦Uu¦6®NíñÞítŒY\¦šÌ×Éjme.SMâ´¯K:U¢rÙ¤å Þ™ÁÔÝY˪µN+c…ÁÍüݳ._K´xÐ+,9,ë íây ½Ò¢R’’¸ $˜pfbч,ÓðˆÒĈ‚˜—~æ 8·d:¢ªqd ª$Yf„&F…,,;à “V<—q¬Q¶ÿÄ«’—‹+ …™6 ÌÁD€ª‡þ‡lx€F~Çy)[m$•çÜW÷‹ÑQ‹]ABþ·Îàêéì6§Ôy?ÓüÍØt7?©u†‡ÂůªZJ9ŒVnÖ°éö¹Ò9 u >j¾ }+›ŸU¦އPɹSÝ×K²k«"Ó˜.­j㣺‰«ºIvm)Ó Ù|vC¨ Yêݬ4Æ?'G«€ÍhŒÄ¨uNcLé»U'Åáíj uTÖ´íþ%•bTFâá´Ý¬'É øÂ*ì™``má‰Û‘ÎöŒáü)(VpÃy•áh9Û¼RXÈKnvþR[ýШØxå¤íÈ¡¤ˆ,i1”‘kvQ¥+4êŠÑâ«ØqNÖ?¿Q–ô´µšzÞßmakj¼6 ÕZƒL¶„ÅuO/¨0šSdqzc§y,ŽCuv¡Ÿá$µhásÛØ¼Þ;_9ªôźív†ŸËáöȈöŠ÷™Ó«m]§º›Z^žÝÁuc®=-¯ž»‰ÍÚéý™ú¤u_U5+ú†!dÍ›#Ñ»©™|n2„ØYq¸vèg¿Ü•†œšªåRšœ ÁsÅøí³âÌ_Ë) bŇûv7’ì;œ[°¼XvÝeŽNÜœ{’H¥XË¥'1-Òµùv¸²)Ç2ÅYSuwßxÙ‚ ß»XSL¸V„`²>8˜ç ”?BÌ ]3ë6Œêä7mhØõj׊¦/) G¥r¸38ŒÍ1œÓÙÛ5%Óz¢ŽFœ‹4–py{}ˆ¹UÉâñ9ˆ§­.vè}Íj¾ˆ^鮤¯ÓœËãtïZêW»w«ºó¢0ëΡt+§ Ç›ï—Ò,š=}ŠËÅbI³q¤ø[TbmÅ%õ ²N¢–H2A1ó YÉ·ÅhÉ×RªSHP]1©BMåˉËí‹]Ú˜îY Vf¸$øe™Š ŒÈ‹åÏrÎDö=?:©ù~ö¼ÎY¹BÓ¬¼w„FÒ¢ÀÓpñLËÆ¼~,„²N=({ªèfz®ŸÊi]Õë«zeÒ¾±é†Ò:OWæÎg@u¾Ö¡‡¤ùºg³0k ´†«j¿ÊOBM"4îPå‰Ä´sL-ÖÞôô6/Cg5§M“Ô$Ác¡[zg ¹Í©*ç#êÂt³Q᳸¬öž‚¦ iÜÉ’ ¾>íèîÜÊDm¤g$yŠúžU.MD0g’„´Ý¹lZœ†a`ÓQ2ÅV$"L&;mÜ™¹å­|jý°ê ÷дÕëËiT „À[LˆzJ‡cè÷Ç}¥ +8FÃ,jê•òŠ> °Jª¢…jà¦TÈ׈4ûÝÕv2鶘ê¾gg)–Ô<é§]º‚Æfôî©Ò˜½vÝÆæ¹£‰Õ9½4´áíãN;%tï_'„–íš1w/A§«=átÛOj.œé¬, ¤Úî:S£º¤jº®šdºsÕ"ê§WpÝOÉc5žœ¥{'¤­`:]rP-UƒZÉÐÕ™œ^kHgp0#Õ2ÅÂj ˜Ä F$î8r' œ•vqIB÷<T{oý±g•Ø)™ü"I!Ep‹BxÈÝÀ¼¬Nþz0MR² Í!i¸«@ƒvBÏ$1§Æ;LOb8D­‹F™)Gš¦BW·ÂVh¶ôߨ¹;Ø%Íɘ­¦ªë­ÑZïB Æ’¹’‹OWà%Ö:gO”°R±ÁM –)ÆÂ(ïÔKhÑÿvâ°”;vÑLjò|¶ŽxU¥Ü<¦Sã÷_ä8>³#†‰®Ni Nºe*H$%Zœ¸âÀsý›ª‚Ò²‚ƒ¦Ìûöö|nÐÐú²ý:ÖèâÅ+‘¬µ;Ô g†EFÈ%· Èi͸zÓ2œšL¯3ÉöÇOõ±*Çý½ÃH­g vƒ³@/CP36Íñ’S^”‚;ô{ö𔳰àôV!~µ¹öÆPN(‰$²3œÁš!ñU‚ó“™1DÁ;qeSÖö+VáswÚ†:Yg CP¤\9§ì7 «íÝXAdt?Ʋ_XÎ¥U¢…SJÊJô’ÿ”2Ìáðhtì©E4ª©JÖt»(–I %®.]ÞcÝ+4­X£mV;Qbž xÎÿeV°“I ’‹­1@2)nÎu-ÃÛ–»¬:̲‡$G+J CíacÄ¥Þ¼ÓFž)Ø’7§ØÚÉò×a4ÕFO÷mÝJ/ò7&10,A,83G`;qE! 5ùOBãEäX¸%‚¡ [‘‡cöÙ§†ZE‰à7îM„!æFEy†#ÑÊUÔºTÖ¤¡Ô„ÆI ‚IrûööV’SQh S$ýIK&8àòdR:vŠŽ1ÂtP^UZcýUhË2‹rf+£°áq2³z[ÍÅš8‡2d‘eyU!u–šu²ÆññÝ¡ "ž `¹ ¥ž]áé0ŒŸÓ‰bŒ–ÖyZI"eÞ+Š&aâ%²Ojí"ØÚÊÖã +^OÜÆŸÁû³Ñ^Ô2Z~zÙ]yÒ¬WP4î½›PT­Š±ª5¦×X-%Ó zfÖ!®ÞÏêWLõ¾¬À\‹9øq:o1KPã$h¢³4kf©Ñ@]FJIfx»{aée—P„#Ô  ˆ.š‘v–w¹#2ޱ—e;’o"‘8ì”ÆÂ}f+ÙÔ0þX 86L¼¾3²Ë+F#Y{Ê ¬±3(¬A_‘ÇË(ZÕj£b² .B(TTnŸ{èév¶Âfµ.¥Äf:Šn¤eôMáš–\êîªãpø¼†n}s…Ñ:Òù½aƒÂÁÄe2™õŸ}ô>:›äry xöZûËè6‘Óts”µ•}^5Âëm;_OauŽS6Xd¯btqÖ:£ ¤ušéyÕº›—ÓüRïi¼¦sV`³È(É©°œ%jRÊ” ”ÚÌà(lbæKÿ;“¯¬'á¬+bbH°hf<>ǵ–fŽ8 eŠ–DzÜ£¬Õ¥‘„%–Ä^ff«9ß*-¼´­¬Tø²ëI)!D® &E "E¼}€$”v`<œ¦à[¬Óü<+ÈÔig,S?xºSœ·¨µGO´×Võ¬XmUŽÄêÿG´ÞC7¯´6™ê®CJ¿M5&»À6=°š®ŽŸÔÙ¼&ÕI0É’ÃäiÅÎÑ>çºQ¯/t÷ Zö#WõNéÌŽ;>”×3â(j ž‚¥ÔizzýO]+S¦vµ¶ŸÓwZìzU5\”ı¾c ^ …Jíe,öUkÐ*!Î6r¥‘½Ã9pñ†©•ª”)_ d&H.Àðò †îØ>…BòyH²¬%û«9ؼ»4O2Ì› P˜d±ªcíVjëZOY@AÈÑ:4B@­S—qpe.$ŽK&?¥i{kø¡ °>bê»uÿÜF+ 0tí¥Ówõ~OYkf2Þ3™¯‹·¥:{ ÓZ[\u–ãÙ¡´_LszçC×Ö–b4äÓ¿îêG,X´µ7©îC«Ý1ÆË•Žþ±ÂãÛ ÔGI²pd©äh|m{Ÿ‚Íü&––ÜtfFÍãéØÊÒJFL5¬|GQ¦]±î¶ã˜Ëª‘¬´BS3·,8íŠ[áÓ¨)’!žÁƒŸ&;3rA+Œ)exÇ6“<0¬&pAžS¥w²ùLÉ’{®ÔD±Ð—pùm÷¬Ñ<®T Hã}àË4=Íêvy(±VÕ4ØX­V6ÞrƲ¿ºž–d©ÃcKåæ¿nƺéVUÖZcª1¥”‹«½OÀô§ ©4~kWôÅ*u ›e3µâÄf´…læŽÔóMƒÁÉ«´ÌzŸ¨}sô§»î’æqú j;Ù=!¨5¯§§*é}q­éiê³ëÜŸLôÕí[ª4nÊi} …ÕÚ»‘Áè\޾ÊéŒv¥ÎA‘Óí“È]ÄÛíGñ¹T? Ûô’ Y˜âHÊWg4”Ò7ûK°—7~ú¸Å¨‘÷‰UW÷ÜSVc¼ƒi‰àëbf˜nfŽHÞÎ}*üFûydbHç8Âü^¼rD’-C3Cv¼DŒsÊUZ9 $¼ªZ¨ô×ÞJ:¨µ–ˆžÄúG¨Z_ZugC×Ò™¸58½Cs¤K,ù9°]H±¦¨túæO'J½—Çj\¦¯Ó1ý"ÄÏ$÷ô§ºŽŽê‹]6À^Ôi†Ö½OÐ=8Öt…œn{!GcªZf¾³ÓZ#UkŒ^ ôë ­rµs§º}›Ô=[¯š”zƒLá/.F„W`ŒöUdU$¨‚JgQ ?ý¸‘ËVH'ᬉd¸%ØzG?¤‹‹ôn*‹Üy0. ¬²~Ži$–OŽÒ1øï89/”~ò-VVõ.Óš;+¨+üìi£$ 4O©Ú#dš´O–CÄMUbÅÊÂôBK)<>+o.ûÇ,2y¥.+ƒÜ˜¿pÉ(1Çfc bü)[ÕPCF5š=ýX~˜Ø–¶—¹2C=®ÅÉåJµŒì‘DTc- «-›Èäï<¼£ °êš”(Ó¬”¤9-$4?µüÙ„²TQR»TÔS¥DÚ‡M¬@‡pq=2Õ2± øˆsŽf–Ds,nÒsCQÌºŠ¹Ü%¬èD™ßD^1œÁd°6«×¸ðÉ$‘¥˜–&®Å¥Ù• 5·SPâJ ]{S4¶JƼoQ«d¯c©ÕÃdç±m¥f†f¢a“²e V±Z7 ¹)H ÆO41BÙŸduQl.¡ª¬?»ˆ^h9óNÿF1<.2Н&9S”^2 7KëO5›^a4ë¥ I,”ÉØ˜/»xõ ŸVg-•MJEIZ\¨Í‹îR7·0\wZÒÅ)¡‚1Ú)Úu®±µ€$&ó4ZtXu[Ëç\§ñÒ#;¯l£†XKýÛ·ÊPÿN2üx\EŠBª‰Ú¯¦lq½)²5UË2È&OýÃÉÁ2N'Dbr³È²EiÌ"Dk“¯z¹øTP\±Å;l¼QTˆ´€0Þ’*“¸uTþ1,Ò(z™¸ÁtV(R-§y“»ž;vÀè—’Ñk8yÚ~xÝ[9n§ºÌÛw92s¼«ÈY‰æ2~æQåÏɈ|z[Y”‚Jò¬É³,(ÖRxãã[²³:A$ÐFøÒë-*U^Õ<·rÚ§®sJÊ¡·Y<+ "pŠž,Ë0a$I’²Y@$ÅÈ Q¢!=y·ââL¯±˜ÒGh¶3M §WüªK>>2ÒÛN9¹$Ú'WEÔ–./6–yðæø@‚ Ê@¸p!É FóÅñµò™Q{b$‰x€³EÂîMuGdö §k ­y­ ¨I$T Zr g}˜Ê¬ÅJx´Ü•xÄZ1·Í¦…+á×l„2I2l~yÉÖxÚ'¨:ÛÕSìÿý‰Òžà:ñÔ¬æ…è·^ªjëZK3¨:¡ƒËc´¢êtÌlÞ>—Kn^9¬¥,®+<™±ôq”§Ç<Ò5½¾’i,>˜Ôš¿EußJi M†Åj[ÃQô÷§4Î’ÓY©qé¥óš¢æ[¨ôíÛƒ5N øLM¨u#Z¥TœjÝ5ŠŽJµíbNw,+?„°—¹IQmPIfc-8Ôr•œŠ B½ rîÄ)„]±sžË$’ÃÅBL§Ÿ}Ñ¢´£¾eHgT¸ö#Tï˜Ý¬êŠÁ$€DõY…›0¹G ¤ËÙ6’F‘" VU‰%³pwp¸Õ¬ Ùmª±­ÚÜÿJtvž“SçdÕñQõ3¬=$‘ Åc䶺۠ºK«úÿ¨£øa«ƒ¡…è_P?>ÖyA™‹Œ§OK75ìl~w]/©’ÉR½¤ºÏ‹§†:~|Þ¡ÌtãŠÓ8=)¬îT¡¤º…˜’Þ¯L•] ¨ò·ªâªc+áæÖô²R.KQhŒ>HòÚ¬ÞT8ø©!@~BH><í6ˆœ¦`ü¥Ap"K6ÐKn÷÷{`ÖÙ;! ö!c’FRË/q冤’¯ÞÂ4wã»Â¿q*7&rÅ“ÀmÐ…¤Éñؼrs”4]ão„k•bcOOŽÖZš™dHLû€Ñ:«©Rôž?P´îªêoàïkm%OMÑÕÒé(ÙuSé:÷skWºq[°sßDè¼> ÄR°t½ŒÁ—nñÆ8Ä|6E,u¸´ƒÅÆõkB&^a]‹¾=¥PD´óŽÑ´#ÕÔªP¬t–ˆt’X†p]ˆv¾áØŠ—ItΕ§J˜(v“w˜I´‚F$˜m9šÔ5ìZÇ%† »Eç´+³3]ùÉ|«¨þ^=¦ãòÜ÷S@ëŠ{1 ˆ_´w«´‘5sý<©ÝB¡â|ih–´uyW·VÐÃ,ékötîVÔªÏ7ÚfíÄó<®•ö“´ª&˜70Q âc‚BVb½wèu~Æ"Œ5²QÜÉÜ4f«,+ËÈ©˜D&Y™Œ‘ÊTíÒ[w¬v!¯¼¢s¼ÊjÕM*iU:D‡Ó`.KHy7köÁ:YL²©Ó+Z‚êKj’\¢þøg±9< ÐSÉ×­™*¥ŽÝk·2ÜžYæ^VÖ,D~4ë%‰£¾ åqí^\–eQö°Ñx´rqVc ÚQ$“D…Q¿«£]£ƒ¼o#óý:ª‚-AŽ)±' Í8ÙïdÚ zÎ(ç&;ÕÃT¦ÂÌ.} Q#Y""IY@Dú).êäQ_œíJ)XâÊ/dÊåszU¥ƒ«H‹ˆbc€×»60fiŠU—M:ˆ j!Ê]ïµÄF6üÆË u +öÝX¯õ é] ’É2J„¬@“SÓ”5XÑ"Þ<¬Å¤-%f4±.ÊkÈ9$abU±â9l¢®Õ%E’„0—«i–ÔkÅ…&.ðHÏØJËÊHáMÑžIܺv’Æ1Ycš@2¬ÛÈUn)™´*À™q»óᯜIfÆö=»}vyÛùvìBÈà« '‘!h;ŠÏ?y ¨ó(2Ì]¯Ãqc! 7åéiuØËÍL²'4o$ÊäîÂx—µ*V9;8e1e 3Jåý)c LI•™¥Ü$‚IxðY±¨Ig66§2Gr ñðo(Vø!Bˆ”8nE{inJ¤!׌žãÿ;„Õšy²km1øa °ÔŸ•¤‘ôíï‰i`v= ,Ü~XȰáA ]VIX´|¥î3äfwå†U?‘ãQ>v $ð}`Û‘ã&8awn SC $Ñrß¹*¼PM•]ËCQI¡Ì®X’š)Þº ¦Z¶žšÊË^œ–bY;+,ÕüŽäl¤r͈b犪ž¨òõûܹë„ÿ€Ý±ªÿáDýZ|‰ëƯ‡ø š³¤nãvÿƒ¶lÍ™–î~ ÉEkKZí"·.Z6ÄB|Õó4(i+BÔîR•¿s«»¸ú“²Ö*ZF”ê!DXk¼ ¼m‹Ôm°BxCP)Ê­há’b¬ŠÅ„ðT3 eTO™Vۈ܌{Ä[?&]ÙÕD`»ÆctWu‘2<Ð0Ë _(Tà‹k‘r™v³OuÓ¯]]ÈklÏ·žtã7Ó­ ®u—Néê.¥uC+€Ïu“Xh,‡ûoXžžÃ„Ó70ÚOJÓÕ´õŽÃkýa>¡}g.Ku´¶‹Ö·v©½äkjÞÙ3ÞéôE0:ƒBè-'ª2}MÑú³ª—ôf¼ÑšÃ@fcÄjΜWÇÒéÖ¥Åeò¸‹G#&S;òVþFªÔ±ô¡]C)$¥`áÒ£¨$H½ ±¾/NJ°)¤ÁL±¶C¸w³\qô5í¹;˜Ô9`Uû¼$,þѤK $@,sH¯&¢«Ü¢Ê¯öÛù’ñˆ¼iÁÝ{ |«1Œ+¸TI!”Ë)äljE4­I,Ÿv¨_ë×T:!Òkº·[toLæzµŸ×Ø~œto£Z«³³õGQgØe¬ã¿Ý¹žéÔÓù7¥ñš×ZjjÉ…ÈÐÆa4~B| Ø®]‚?]¸ýÈé|î;Ú.¡ÑÔF£ÒÞï5#§33d£ÃÉ¥ñZ‹§÷5Ý\¥Üt˜ü„·î44þKJÉ6y&•®[³B©”3Ù"£ê):R¢!L¢.Ã}ž†O0ZJ’êN­M)g¤´Þ N,ÛÛ*AhcàÂÀW=Å^ØÙeWÉ,ñW3:½Ž;ä#²«bJÅ·umÊ^àfåÝ]¤í<¯'e; Ê ˜ãŒ ‘$¦j²\äɤ«–º¸RY€"9L‘ÍÝ£S .¶d@^,É_#"2¹cd^eO YzÓw¥ú¯¢3ÓZM}Ô>¾j¼î“Ñ«Z†^Ÿhêi #–׊þ¡ÕÇKëk8¡32i?CLå2ÃMó,RÄÖµv=*Тk„À±‡R@`Ͻ…÷ŒÈ¥Rª“MAi;$w&É‹âÁ<q‘IFh«°’2d ‰Ø™6_ý¥°b—(›Ö°§`O…†!Ò(Ã0 Ä«4- Y6V&™¢b9újÛ ¤§;ŒºM­5¾Âg-k~æzS¬´¦´Õº/Ri<†J]IŒšÎžÉKPêM¬&Òú2®±ÑºŠ¢G—¡š‡Lad’¬ècÅÖ¸¯)E\È[‹ò $E8#»H£†ÑŸï–X5x˜óQ©†Û V3éS©EtÒ´ÛæpHô¼qmœˆœ2Ò¤…1),H ‹±k ´—âIç˜×Š(D’YŸâÄ€?k{¤¨’r®ÄÑ.K‰ŠI¥1ähÉNâ¬Ûý™¬Uä™±Hý˜™\^Åwy¯7[)]¬Öƒ³Ò–¾ÅKÜ}F1txåq’¼ÅöÊc62tŒ# ¢óc³¬}æ«ÒXd†d"Ý|2²H3øØw3ƒ¿žÞë¸]·såNÞu,ñÊ­ ¤BÒIÔIb8#gú†<’Èd©æµT*J@ ³†y-±XmémSV–­b$­hìØ–T½Uš$¥Nd…£½,Â#ÅÞ¶Š\‘~X˰EEÄ««ŽÁgók%œ^4MZ9>;È’Ô¤‹,+Ì«Å5¥'nÊ5c`±ÇÊD{p‚ÃM*·w}âëªQ£—sÿ¸ wJO×ü´bŽŽ+×2¦Î@rDÀ.Ï>@àcé²@úžE r*¥×‘ I;'rI nàbOãû~É!~Ä“±$}‡ <–$±ýq]¼ ‚vm˜s?»—ד} Ø2ò Çqáb]ÝÔíõb•)·ýª©$ï¹ðvR@IõÍàóy‚Ë g‡Ü°c -'ñÎëÄnxìI7n¼l7 äú@äFûqF-±SňQÿw&+äx÷Çöþ½ÎF?EBvÙø0-¹Ü¨Ù¸ü®ûyÜx;%A´€|ÿÎ ´æÀq·ïµññ“ÛÔƒþ&ûý‘åˆÆÞûz–Üdãh—SRý·i*FÒV*²´by®‘ŠQ±A(Y–378$/R§a$æxAÙeâ žŠ·f’mn"Ò½[öñ¼½G÷Ý yûòêú‹R³ÖÒzÜ÷=ë8™fÆhÄ>]y ³áB±Ü*vû˜Êÿ|'Éß°Î¥rýÝã´{>=w}7NË_ÐÌEÀ"߬‰-´ò=HÿÕÖHXöd¢ì[ÃØ{4[Uÿ»´¥#ǵôž#2[%»qøÂLë*ÍòÇr§Èxš\Ü2‚µr$‘C$ÒCÍ‚ÀàÏËù%Uó*ÜE)Û¶–(—ÁœÖÕR‘?2Ì&yE˜m*M,Ë´g¶W•â .9¤ŠLi!¤Ý1Dò£nd©@ªÈ½ÅnÕ{\–$dݾ0r0pµ3 E™RDª4˜ s;s|b*% hêS³Ží·&ø/ôšdl–O´Ñ \SM÷œ6’4þ完åDÕä­KÛ·ЫAŽ{AêJºû­zÚžèu†¯¥ÔM©uƲÑ:·¤}»{1ÊÁj–™Ð§«蘺§WGtû4îGã+jˆ×‚Òø¬D56°%™`µK+Í´µäxÕ%,±IFy/pHŽ2ý!!åWŸÃØ«;«Õ=Xª#KŠGji$ÇDŒý§fšÃ‹ 2°\©¹ž²½)5øÍõ[7]U\‚LC°ÄC>äoƒy>§G+@RS…<:ÛKû´Üòñ=íg; z¤º=Óî»uOêí5¬Û¨š‡«véiÜÎo«:³'˜ÊfµËuSOÚÇ·³º{©9­‹§^•5y#­% *Ë3[«¦um?nî¬ÑÝrÎâ:•­pýnÃu?Qç:oÓ-[¥õõÒ÷O-æsºO¦ZƒM[Ð?Éhš*ÑØ½ŒÓØZºnÅx3õ^#7‘ÍdmMlÛ©ZÂCÎ+U—œ®~Ô©÷x6üSˆüR¶òÛp°»=­±8¨ÚÉØ‡ÈÁ°FŽU4j£–t- ‰œleúKñ¤gâ¬Í_!÷à}eWúr¡ÒV”•6rÓ{lZØÔ:Ý»€_æH2KKßߟ¦¾sBb:oÓΖtÛLO’ŸMô÷Hâ4> ç,ÏœËKˆÒø,>>c-ižîg+>;—͉^\”í-Û¤‹qÝ‚@Š89™X…—µ¹*T·É%ѦpxGqÇiõ;z‘æu^_P—'42EQ§–>0¥eA$qÃ3‡„Ž6–43x2T¶†(Æxÿqä‰J¢‚À®º²Ìf?7Ü’—ëõq5Û×QÓòÕ2´iÑVŸH.ÊØ„±»·¼œÎWFb©¨—õ[bYüÜ0ìø/ô$ÏTTAƒR5Hå|ŠŽ\¼×…JIۦûYÖ×yÚ½Š¨½áÓâ°™šÈ°ÍÏ”`ÎðYròV•K˜ÞÌÎÒK5¥U)bi>:à G ðz—-§§Æ½`/^gš8ììsX8ÊÔ&yÚúÉ•à(Yë@L†.§êçR¦Õ'+#¡\ŸCÛ$òç#†1øQUƒC$•$~c#œüMZ´ W¤]‰ €C³x@Û²ù¬ªiS§X(©>¡È)— ÎÜ\q‰VѬ c»&Õ­•™¢YOwœ|Sf`ö,²òáZFíÝ$Å6üÇ ÜsFŒ’’êÀ£F½þJž07{wxÙ€1Ã}ùŠ’ÄØwwRi·Üm_Ô¸«Ú]7ˆŠ}}”ÖºÓ@g0¸ú—GÇ®s¸?‘Åa±˜jëhÝNÓ·&Ñ=$Õ:¾Ouî†éþ–ê®_)©z#õ#'Wz¡¯:¡¬5L·Nòú«HÞ£s«z·[ÿÒK¤jë|žté¢bôžñÌùïeË}9KÕe§ò:gÜ·¸¿s52½3¡u¦"mKîS©ºÛªz³ ‘ÑÚ“OdtžGý›”×VñúPØÅ6®Ö)Þ–Þ_8Ö®œX©,û;#Dy÷˜µi;¬7`äº×°@l€޲ª½¯O#.ÄþMËvÉYqƵ™’0½ÀǸ‡—ksÇ ÛÖº•' éD*¤-Ae‚I! D'éx?\^ž¡™V‚V€Ä)‰%˜Ýɸñó D{ ך£º{ܺÃtM:G¤ºS)™é.GWkí=þàÔRc¯CgDú'P ³·1˜]O¤ä¥jþ*ô«1«riÃÙö‰§nC¥ £Ô mƒ“Iûë7¸lNCM¾~–¥ëgFú×Ñ[ØœeßãÚßuQu¼¹ó9þ¡G§"ÊRÅèÝ#Óí%Ý0m]kEèÌf/ ]fIIµNnåy-޽ûXJõ©GÁûé‘—Ek2G¯šK«Xþ¯æ}ÌG„Ó¿ñ‹^_—[ÚÔZßLkÔt +ú_]h[׺9«jAR¹ÈôÂÐÆáÚ õãœ^Dd!R&.¤! Èñ ãxI—}›¸›%YäS%õS^Ð õ¿2¦áã%%å#4Q· û.üUà—a#ÂÏIJ´R7©Œ†YHM#LÓ}!É(‚X’,bì6ÅC7_Z—ñ T €À°@àrqB3^´¾gAê ½Í6++×ÌZñ¸<¾œÒYÝ!”Òx¶BûpÊhù±±ãu'Dt|9ü†{H錒zZ†,fnk£%ŒN<ý=ì‚ÑÚÏJOÕO’XÛÏ\žóéý†J±çúÚzÓab£‚ÃRÇAR¦hÿ·èËhÍ\jG_Œ’¯|ýD@F`‘704LB£¿; aWwG+£Ø‚-¬Kg·‘€Š¼Ç§Ì€~2’,O1›mÙË;)ü›‹$pñæ£Ó2e@šRÃÔe½ù61»âÑžÌ% |@A.C,%Àì7iÇÍ;éÉ‚ÈäúnßSrBÏP1æ4¾w3‰Òg[çqžä¨kQ”ËkQg>SSj®œÝÔ˜LvŠL”‡Ähý)Jµº>}û3Î5Ÿ²zÝYÕÿïγõO9­µœÚ§LKžËã´îŸÒpdºu¥ºC×¾•Ç¡N3OT¯B¼ìÞã:•Ô=AªªG_!¨ruëié©iì>+Nõ«l¯ÛçÛe†5TFPé"º£dûýÞ9SÎ ¶Û+¥b}<챈¶@¬@༔°ß—‘]kãÊ[øFsPW;Å=+&‡jEƵƒŸžæ.üG2S5H,¤=ž` O'¶)×¶ogºÛvnî ÒØžžÐ¿ÿ°ý,¥>†é–”Й úW™£¨kßÕ9¼]s”ÔZ’ýüV2YVKpi–š³YŸRg®gëÉZ6Q–vPby NRU)ÛdÝE·+<7 ÆÆE7/éÎ?Œþ5y©) ”ŒNPæÑJ)é%°v·pðU ‰m~8q»:Èè’HV8AbäŠÜïï$£iª+E7ãÝõQËÓ¡HÓ¤–F£òÅW,v{nØÏVºë+â-@¬€ðAô‘i[Å“¯ŠµžÐXŒeK‹M¥Åb)©¨V‚8ãik¼C¶aÜÈ•ã–$*vÜé!.™Ê_xïI>.z°ðŠB­,·Ç~ÔȈÚP$mšKm*1hÖ Q]¤æ±”(Њµg‚8áB±]ÐÅfîäÈÜRäö\:[ãëi:¯¨öä°cŠþ IŒÆŸ…ÿ3òcõ2bºíø±mö^JU€äºø©F„ÒZÔ¢„êRwmF'´¸¾ #9ÓIjÔ+!@7 ¸v72A‰`-ÕçTgvS´™iþÑ”‘Þe’Hâ4€¤öáxâ¬\R(­Rס…}G¾‘§)ãC‰ #BOÑRVxª4¾#¼@¶ór©ÿCbv­Üµ’Èß½~@æõÉlpXÊGR øY5Mù¤Vwi«†6e“³”Úïm¬ÅݤT%ä-!YIe/ ûDlˆþ³³mRHv57˜z?I4© ·¥NÁ ‡¹~6$5U¥UV´ÊW¤ìÅšåÃ>ྻ3˜ˆû2• ‘ñí€å¨ÿ¦Ñ0ç,(ÄbÙ#Ê&í¿:Gî Ù­^ºjýu¯!×y «5Fz{Ómª°øÊ–õJ5n€Ö½dÔPõ[Jä­rQ©®i¾¶jýê±…½JÔùJE^YÔ]d܆1°ddŠ8’5hQ@aØhÙ‹>òJJÔ2ò'ÄÈmY“fÁ/ÇË$'f!öŠ?âû•!–^ЙˆL4ªiB7ßÔkP§˜HEY,L–{¢÷bF•Z”IZb53É·g³ýoŠi_Ú~¢ÑºïLu¥ÿ€ÖZÅŠØê»J6{L^Âf:_o§Yš™zØœŽ*sa®M«°Y^SUò¬Ô55ŠzoKbõƪº‹w˜ÁæÚXšxz=:g,læ&ú±+ ™&âg£ÕSÝ’yi3LßÖFUY(ë&ñJÒyi¤íM'qQ#&EG$¢/¬Ò©ìKLGuþF0Þ³™”Ó¤¤°Ô Ö}ïgâñÔ3H*IL@7,‹ ±v?6eÿNÍ-oUê̽«Z*Å,Ö¢÷­ðyit4ÿñ3«ºùŠÖ8Ãc56]ôÔx5¾Z¦6¶˜Ó˜=G- ˜ÉµV{9tÚ³4¿§žÎdéÇS4ž´Æjm/Ž\M1K?“Óx ö™×@Âi¾œát2éw.#RA¢u~™Y0_È&OQ醺ÈUÉ]¯CR$´ñ²Õ¿gãžÞìË÷ œ?òøÊ‡fwŠE⬀MqY–ùSë›hnìÊ¡J!;ò Tb®ÆVÃý«`8y„jU¹z••” t ¤¡A`êPbî,d¸ö‡^~¹  )W ¤$X†¾Ã¸ ¶*gV½¦tó¯:ûUj~¬]ÔÙ,>k¤tú3ƒÓÚ[PeôÅœ.Ëä5>K©S>Kv8ò×ú‰_/£ñVhYp«ƒé¦“‡'Vl´6ìM ÓÏ2y¡µö¨êæKTdtÇHéàsÔ¥ÃׯSUuÏ¡ãé~÷ßžI祜Ñ:†Äiˆ'i…l¥ ¦Âì¬÷h÷Xó•=áf(U£ˆDÅ^^õtÝâŽF(öhr6%?˜⳩óöÑ{Œ’—–IJsušfÝßoÅ4¡çpV£A·Åå>´TéyJª+RN£%AD\$1&#flPœýt¤!5H-ÆÜ=í%±ó[ìQ­Ý5’Ïu/I^Ëbu@3z³Pãô–´›Qu!íÿÜ'GºõO5ªrzƒZæ­¶¢ÕmÒëzsPR„®—Ñê8uÅa±ÕòX̆î¥ö©ó8\š‡©ºRÞ OãôõŠ[§õÖK„Ös­Úƒ­õõ.Miík…ÒŽùy²:NjQÃå2ùf"<޽…¿YjýÙGäüd‘ Ú?ÓBFñ”góÂV&*Jã¹~Fø·ˆ‡cë'wEåÛd”ÈD±ˆæü­ça¼rTºÀ.%Ýq˺„U”.+< EÁÔ“ó.’[pâÁÔó¥JZD E¶Æ(žŸö—­h^Çcu_Stng@bºýÔrtñX-–ÃëFê²Ilc1sêZ’öŸ}§2r÷â¥[ G-›Æãsy‰Øº°ãN§ýý9”ÒR¥iËGOk_n}Hέœ.§“R^ÔžÝt—DôÆ6¾ ïjYz}ŠÒÙË} Àäjj îÌëý#wRê”Òš‹v-?“Æý72"Ç.ý¿°aÊJäDèO'ºï'ÇÿºÆ4‘,›[Â=bIc”ŽHY•”‘ÝãFi–hŸð»I¢Z”^J-$0)» ôã¥dý%H¨¢‚ N¢ãN’Ø´DÛ üG0ì€P)HH ÔÂG‡Ü€pÌ2<²,ÑÍ×aŠX¤Q$nÅ$UuˆÃ»;×…¸á‹Ãn"ÆôµºräI7Ç3ämĺå™Õ*äñ³>íö´UPÁâØ±õ[iT¯R³•bC;È!Rï³Y’Y ø±¹RBI¨®äc<2X"úœiýa›ÀB”±—b†š)ÊOVJ$-Û°‰bUeíÛÙr«)Ôdz¯êyìº«Òøt˜,Räé Û±xä=Û‘ zt*•Õ:’RS¥,L†³…o±Î ØÞ™ÒÆ]Æ]«’¿Væ>É–Í¥dçqdXáUÇ Ò¾:U ýE),™VK/ˆ ]U þá€IÀ³c£÷_uQ+……oý­pÅ»vb <ÒŸ‹"˜vÛ™7RõŠ’Zô#Þ2_ KÜäO6…w“„JV6Aùåþb„ÖvQÃÍæ²Yû)w(RwX^ûI DªÆMÂDLO FüÒò5¤‡ïXw·²å²Y´WEj˦°Sé>¡%‹ÆÃg8Õ[5”]J’H%nAû_cõÇ%,à¬h "!v>Î 1*²¼lë$´×hñ"7Nê:¡+qŒöÈ*áÜ·5ÞÓ0M‹G9ÿÞÃI™Wù¸õŒE \1‰Ø6ìà¬\Éùº,L›ìY%)#ìÙ@%§xª2z\s·Û‚+)t`Å $ ;ÌÿØ!hÙVÀüxfî㣠ÊÄ©H:I2ÒC~ïl ,Ešß@‘Ô:³ªÚòŽ€¥§:SS €×ýxéVzQÔ½CNý}¹œÝ¬âu›Xë­1ŽÔW²8=–µkLâªÒÓy žÑÇ\t Më¬6½Ääu.¡ÅTê†é懾qpàùbq½6Ö8­c‡ÉâÍüM•’kùL4ToÝÉ$á*É5 0Òí×™NûY·%Ipbdâ{’E%t%–»³šª~Yï*e•…pG§Çuœ¼ÚF‚Yb’A {…˜o ØÁlØR*Ï )¬½ÕoP/*””|Ìl‡wÜø0—ãs$ƒñAåï¾ã›î1LzuínŸu7Nkú]r×9ŒnÖNÕMBt~µ'¥ÕŠš¬j¬¦ÕÔ4}my«å©“ÕrdpùÜî~î¥Ò´ñ¸ìu<šàMÊ3Ý$Ü…? Á¤ó³QßçÌì–ÔÅ%ÒŒ28\¤"t1» §•;00íÆÕKØÁÙ‹¶>PydfV§wh¶ô¥ˆ™8¤dü_!%Y‡5šR.â‘)$aeßã•ßG)G,’Š Ò¢IÈ*îIò]»ñŠ«f˜!U¢H,Ñ0<·!˜sƒ‡LRÅŒ^¹–ÅYå¹­¨•$š0k¨Y À¾"µ € PÊ®¾;§b…ê·àÉÙ{1Û½=›;~YkYYxª&çãH,·9%dhç’~91æVætÜÕ§=u­5„œ´•LŠ& Y’ÐòòN!Þ'ú¤nÄ…º¡¨bn&jä´“â„%˜vÌ¡T«MEHòëÙ¦³ËÚ„)[%5k*‰HESêO){CĆ÷7Á9¬²M5Ôºb÷)—kÿÀa ÞªöŽ¡Ç ü¶"><«¹ä±vt6šâÀ“Î;‹Ï¾Ëèd';‡äI3켎Æu^ãH‹µ¦PÏ”SΘY@'©›ÔW5È-]1;¥x©ÀÐÂ"ÄY¬ÂNÀIÆgžv¬ rºñ®ñí ]æì²9DG1"ªEÂ9B±Ý^6Øü‡ñ}@eóè®N\¾^5­"X’vc ØÀƒõÀüÅtU®µ…Cp7 ’[ël4»¬¨ì¥ZFI•¢yœ¤DÀÊJ…/A¢¢[hM~ì.WLa\–r$B¬ÊsˆÊ#SËdhÞRÓüRìɆäv Ó}ëí³dÅÜe(É“˜š?«£ò$°‚]ëÉ#±R?ÉmÌyTarKhäW]ŸòLïÝw"i¸ï#§™˜ ­N?Ðë¬Ç[¨†q¨3íÁµË@gkÎ*öp`´ÿL=»È?WÇJ*W%£%Õ˜)+°f‹ï 0«h¨2TÇM€¼¬ä2ªª+;;ŽI6ÿS»–*eMÑs»!³`üì*³ÕQ$%ª‰<Lj™”˜–naw&@»îi’{Öd?çámÉÂHÙOÐY%eVì!ÝwfpB¤Dî›`áC"ŸYJI æ@¸ùXÛûo‰H. ±r@ûØa äâ%aöA®Ñ¤Ìˆã€•'½ÜVg?c adz¬Qt£UëN·v1K ¿ôË‘éPfÉJ™Iõ]î¨hÍWZ3Eꆧ…‡§ò=ì´wVÊe,V¬i½6Yc³Æ) l#“Šq?÷ìdˆÆ?º'ê)îXë¸6Þ•Ìn±ÈïÞ%FÛG!y8+‡yB˜ä!%L ˆ%¦ M¸ÀõEJB²BTK%A@d¤»EŸ˜í»XŠ¿ Ô ¤ˆfÿpÿ>㦺cÜϵœ~·éoMº£ºßÓÅ×½B×=Ô9Nµ§L¯â1CÖ¹usAuGsCj·±‡Íê+¸Úù½1’£%ý)ÅÜxjg,ÜÈ»z‡ÚßQúõ»Û¥<îSõ¯¬:gªúTêF™ðS;Õþ®e*åµÕyáÉË‹Óe«ÖÆU°ðY—'F‘’I¬ŸAü"¬q¿â¢GÄp%–ªBÎZD¯'Ù«,›<¾+]BZüb‘9:ºÇ´‡‰mŽñ°iñØFFüÔo‹o¼<”ùÎ:}0 ­jF•%L4}77b^ãuE „§^¤©J:½JÁäÀ½ÈÅEêÇBu‡[=ÈôãWj<ŽoFt«¡ºSg:s¨ºsÔ ®•×ÖúñÔ «é{dLZV“‚é÷K©j\&š³.BÄy‰ú³š§Ÿ¬‹€¥4Õsí®]©Ó -Ó „êGO}µ{ºÖ]]èö-Õ¯öž Íôc_iŒ­¯ö®¡Ô™'©š ö†ÖÚ»5§hÙ·û9==…Æ_šÄrÝåÖŽ®ü¤Ø<ŽŠ ¬»¢÷°ûÐMm5E<òÜ% ^Ó¨Ês^G”ŽEˆ/Ò³df0)-•@mØšéwáÕU:^]JÔ•,,‘êlL Y¶8tué'J’,‚K]Ï–>ØtÇUu/VâòVú›Ñèú;‘£m*ãpõº§‰êºeª^k7¥Èã´f‰‹5)"‰èÝ[1ÊÙì¬4rÖo{Ïu¢IñúsÛ÷OúÝwJkeÔÙÚÏ©5º}•ÒÚw&!–ÓZ77sFêå6º³&.–—ÖìS55Ojj5-9²Š7ñwH(¦Ðîªvû"¿(—uü±Ã$¥{G͘ì‘Y‰õ–f7îU™—¸x·8ÚIìøj¡ 'Uúâ¦&j<ÒC¾…åÅJu¨I× …9‰aýñE:ÆqY H—)x€ãµþ¯`qÒ,ž©Ìé*pj^‘×è˜Ã ¸œ†¯¯±Úúp”©Çñ#«”ÆéÍ7F¥|tܨâ«-^h‘ï:),ócňHŠH¬$&-ј4Ëøþæû Ä)œùàóõâ`2")rQˆ!! *Ù•wQ,ÀŽò¾J0&NãÒL…Õ˜Ï+Ñ,Mhûd¬EÁ¬&ì•o±ìÖUj’®äoe4ÓB\¨% (†h 7=åñŠ X 3ªÀÀ¶üØÞ=ñÕÅ•œS?6“ù\còe&C(µWmÈ<{ÿ”ÉIMZ÷›e·$žOõ ò lä¹Ýƒßüm»}NßçTVX'ã©,vp&>UíwÓxÁ­Sj>kÚxgVyxÔ—oDFꎡî8d¤ŽD¤eåT]‰Œ’¬À­ '¶›µrÜv":žJ¶etÕKI B’]Pc‹wò7¹,†vŽY+Jõ DšÉgˆœõ?/öÞt«N*„«Ú1JnE¤ ”w—$â$Sõ]¢}0P¸jî®E¶U ›7Ŭ‹™Ø3³;žó—žZÒÄ ê6g#Jí)+SD¹µßñyC‚jêbV=¹Y{Øè÷ã|sŽÉSº¶–ŸÖ;RZTkÔš9í­Éš`ë#U®Êf߉FH£f+ˆU*YyzÌžŸ™Jˆ(H*¨‚ ‡,UÁr ±h%¤6/V~ÌS¨î”¡I>ÉpÒ±ÛÆ,·Ÿð<6ÀWbÁ·ÙÇèþÀåÿî¦$õÊdGX±aubeˆÝºŒüˆíöYŠÆÌ¿,hG´W׺§1ž©¬»K·(d £Ïä1’eºýZºôëùã<7£ÖµUÌŽn®jZЋTâˆzæh¤šT \6]CZ +@Ž·Q‚[+Ó³–¥- á­0²IQ`— xîð[ 3žËUBQ%5£H¹>ë‹Cá˜aÉK}¸î…vùß}‡€CÆÀŸÐàê¤fÓy±ÚæÍ¶æ8·$†<\Øì7ùßЃþ)g¶b ÇArRnÐ/·oþgnBI¨£òw[aWÉÑÈõ#1“ÇÞÇZ«A!³^ÅYea,rv•§”¶ä+Åqv5`Œ ª‚Àz¥/4*ÓQÒ’K³Iì×|YW¨å•IIJ–VP@L^î8ðÓ‚gMË:6»[œWM£b°†‰,(¤øŒ Ö Â]öR%öP—Rà“–ÊÌ ö%~ͱ'ö¤‘¿ì±õ_pZç#§è- •«?9¤°ÂXÜÈÿ-Uà’Ìh;°ìyäáç3²¸)ë~ïU2ክ|[8†6fe™c<±_%V;ci‚²U“tqÏÕ•zfmy…© J”T®XHÜÜo¸Ähõµ:HJ–·HH#Kn€|¸$ŽR$ê‰OnW"½!7‰ :,ÒA,òF‘‰bšÀj ­¥±±ø€I:P›YÍ `ŠÐÑUŸÃ™m*ö1—Ý·‘»½Ã"ì°ˆ}2ùÙ³™ rb«^Õ¨V¼‚fˆª•tYc}æì¤ «=-Ä“vc¶ƒ*7°:®ö›–Ô¸ø µ%ÖŒX[ó î’ÓŠOmËšËï õ£„W!I&kåë+§§.ë @,¦D’ßÓâxŒ Mzc6H÷BP¬lVÄ®µ'‹Oë@õ[2 &J˜ØÌ€²§õk³f»‚6ðBÉ*†·øAÞ-©55½C>:K1Uè‹H#Ygd‘e5͈™#% ¨W ð…-ßdž•7Qù>›™§TTª”„€}I ± Ûv‰ó°0C5ÔrÕ)”¥D¤–Ó0§Üÿ´yÙí‹#2¬R˜¢«*î*HngmË΃uV'À 6nó²c¯2£;&*"@Ò³]ƒBŽZ'ꨲxc¸pÀè,z£—Þ.i7]·IÕ@Œl[öv L9ð›‹Ä8#Ògê~Rj³Àô±Å%†Xe$X Ê„‰˜ˆFYmî¡Ãhƒ·ªSÓsb XC§P%•-ªnäó&d_ž¥—øZuti'L;3^ÏÈ糌br "U…`^,dhÓ·U–E*ÄÄ#o»±ò”Ö€É-èYìŠûžÿQ5ETDê?·5‘7NäïÐ T¡Ÿ–ë»DÈ öÌ›Žà,w%’ŽY34ÜÀ(ÅDÎæ%¨*;-bM÷¬ü[ ’øùèOìn¹‹ÜÇúŠî“Ôÿn­²ÏÈ·ì:r`Y˜3q † ÜYˆ]ïëÑG/û‚þ1ú@´c?F?ÏÌJOòýÏ©-$€Áçü§K¸$ýCrÛ±¹6ÜxÆû Æàî»úò®ìIÛsä?R@oÞÍÇmÃm¶ß]‡ï áXùÿ°xRÇÉ$€eb<øô±¹”ïõÜí$xv;~ÈÜ7í@óå½s—ü°oW$¸$}ö³_ l£‰bw'öIÛÎßãˆñÿvày'mý#¶„¬T¾áKo¿øÙ8í°`wðGÿY9ïÈymös°b6Qÿpóäï¿€vßמIm¶RwÜ.£o×ÿÉßþ <ê½*ÒHÏŽßÞÞ0îççKlîÆÝÁmØø³íò9$ê/¾²QDoﳬ(8äNPŀм]}Öq$„FGÀ•¿•›x-p}»ËõÊd<Ù ‘Èe=Ðä$y”ãîFAc¤Šõ×Y5’>"µR`7’,üÁ".I"Ye›·JPá$VŠ8QÿO #… %nÝh•ëäyM"qYˆý7ޕ׶¥ÖhãXÖBÌ‘ú«sc6ãåÁgþˆøŒ6?úYtè"«{›÷µ²ïÜc×<#™£’A<É0nñ1Ybâhc¼€Ä›Ö¦&Œfíû¨÷½Ï1°f^¶é©%Žs]`,’ÍÓfT ©NJÏȹîpƒwþ¥«ðd–û KÚǮاøFd=ËS$w¾Ð÷˜ðH¼jdMÂGhã–^èB_”l¼dÆYZý3Aù†öQG­VwP¢¨ ŒÍ ñL&m̰4ÏÛ©ka6JVË›F‹êúeéh™{ì}í*Šæ¨¬A—µÉfí„“¦ »‰—½Ïˆdrßa…}?/új`åç,^î}íÕ2¼ìb«Z'³³mš2ý-˜ó€j‡w†6S+¬²…q/ýJ$äË÷¨±k@oñþ~ :v¦m–çéÄÝ׺¿„³–1.Á6Û¥†èD›·õùíý”ë.íõï¼sCÍX²‰$gˆ~IÑÇ'ʦ I”Eù•¸ºñ0ƒþ›8½x~õÛfwfPÐr÷ù/GoøTPÿpà#%›“rå·¤¯únD‰ï;Þü‚7†HRN¦tè”øäµRŽzN²‚ä4%ܺŸò§(Ù‡ú”|™óñÀ¸XÃ÷¾øsÐKø”‚qðÏiw7™ eñ8ñ~ã3%Z9d,E¹Ç0t‰Œ]ç´Ð!«æìc|²ueUd@rí"ïÆÄ€ñ¨æmæ¶¶€ŸPÿM¶Rñ§½|1!B¯ø‰Ó'S Z7$¯•XZÓ™LcaateäÏÏþœ÷ä‘eO|~÷ë1™¥×êK„&W^ÜŠÑÉÑé‡ăf6ìܧêPX¡ Äÿ4im€‹àY°ÿÀ™Ÿ2›ÒfEÜùúÚ17,Áïô‰¥GWUGv…6¶¶}j¶Ç{j›®)Šd(YˆT¬é!BÜ̬¡•ȯ4c÷:ºŒï•Véa.þ¡ÿ§>Z6Vú}ïñŒ‰_\ô™ÕU8•G ÑÜG¿³²¯Õ—Òßý;³‚%E÷ÛïqÛPÇZô„»$îBýÁÑp{ʹäÁK#)BKÿR¤ß*¢û|DÝ“Ç$»´ÌK0èD)þ:v ý.Kø·›3âj\îÎY÷^3G4~ 7+/˜K£Ü|xùRŽdúÂøI&‰!  9ƒšÀEPä´u–ÎÍ@‹4®‡kPõÿO=Mä§¿o{»:ªÿ»:.P‹iâÙº*ˆ`fÚ^x¬£¹Y>Á-þŸzÑÙL>ÿ=íÕáØ"1©z-(Òqò:/#·…’IÙãòžXÕÓê„´e6.°òÜŽ^Ò;1f=¥5ÑÝAÚÀŸ³ýKœKÙ£ˆ¨’_ú†S#¸ÛœLViÜ̬`k/)•#ÛiUÌfà‰cŠ˜âŽ8íã÷•XwæQϞ帠‰JAaȈž/3Gæ(·Û#[k•6õÁz¯P?Ô;Ýšñ‘“`ú*IhæYY†„ÐÈ˳uHâå.%Ëmì¬á_õ÷AÃ’syt§FžGŒLó¤HôÄ%cIwãͶ@¼Ègõ-ÂÔ2 €ÈŽ_í8_Á*Mz{sÛÛ÷"O’wg‘UT$'yP1dy6 ÑŸúw‘Þ“.ίؼƒ`´ X–4•j8ÆÌ!ï81@›m« ñªÁ&öÖ7pûáâË+¼‹š£ó#K$f)£l÷›«GŽj¡ö`†ö#ÖÐÒÊ¿ê×¥îIÂOMúK+B© E$Lß ´âÒ Y^^RÊ®éi戨D?Ô´ÎN«–àIÓûo|?ðEØæx¸bÉg~ Øq݈ fAÍš^+Þ“îävد‰¼\òm²‡ê«ëÂVfÛ‘cÄLÅù0‚0»…y·Ö¬Û.Fß)ûЍ:{ëÌAš/õë q:5Ž’ôºeV…8#Žh 2¦É½„GÀ1>´äö/î‚ý@º§µsX«ôW¦?ni;’ìßÉ+ ø´NhXKý@¨è‹e*‚÷xüËsìôZÛæ)–)‰ÛHŸ±íßE³3;7%+A$bà*ö–E²çƒDÊuï°rø† bµ}”v¹#vÂ8mÔØE›Xâ´q©û|E=ê’ƒ,Ç´vô=od~ãË_õ× ›sNÉ/@ºjðº:A Wí EFCFIç+<Ác{…'Ù¹QÇ·ïûUÌ&öóÓÉwí¿ök™BAfFil³¼£H©h†?ƒªìÌ4°Þ\¹—kwÂþTÊ«Ó'{·nâóf¾í$ò(ÌïÊNBVó †+k3&ÛÇ2„r–7Ž\gæ }$LRVU2J9B4 4¦b9§qwàÍÚuxa?ŽõOêm— Ÿd>éTHý@³@ó‚X ¾Øô †­"´,ý½‘ƒìcóÄ ¢"BWÙ/ºØC¢ÿ¨ ¦9;ñ°ŸÚ¶„vãjF±Ùî'S£úÅ+wj€9D )w<Ë/ýG—b? TXfº\ɘw›âc¡­ÉŠS0 `LÜpñ‚šØI~ü(=Ð$Å#(X¨_–ã›F$cÉ8îG!4ÆÈG¥ÉvÁVG”±ãñ‘{o²F!R8¤rHXT_®.÷ Ó“¨= [Ù_»I¹v½üRiÑÊ^i2xäh׃‡ˆuvñ̃k FÌCđͳúe½”û½=ƒ[ß®"5Š+¼S{<ÑöA0'ÿ†˜œv8´cŒ›Ï n›P¬Oú‡.á_†ªðJKHïÜËí0[ ø=`øôÙ·v¸äù¾ ‰bVØÈvQ4‡®Ì|M$¨€³¼û/ÎxÎÓÈ{ôFwõá<ò2™I%%T*B¬Åe0 <‰nÄ ømÂÀ\=Õ ‹³/xã¼a÷ñ¦ã&8ã{0Ñìˆä挩ÿÚP„ÃreŽÅH*?f~óREý|h¢¼¦æì›M’¼à,´›_DŸY•"e°–Ñfy™A„¸ÿPåÌ~¨³0K¹gZîß®ìžQ!…j[ ’ö3¿ÞÌ``¤,JÛÈeŒ¤‘ìä¨@YRxäãºFK8‚ÜÀ4ŒòbaX³ò%.·v‹)挈ê¾Df0GF?Z§vÆÍù%&27ÉìóÞsÃߎˆäZ–i½’iy¬LÈ‹ó»Ç×è¢7/ÀV;²öL^µZÓåÈýžûÅ…aßOOŠÏ*·²]: ».ÛÿÔ(ãã°‘AigÛiæ—Èô‡úƒ*媹ݟL¶ï$¼FãtjÎ?HHyVÀ93˜gø#¼óJÅ{¡d 7—°U L`+Fñ¨Ûûì Š|wØHNdžt• <ÌfDàË ”gý¥Ÿ34p)x`󪣻i…Èöô3Ͻæv•ß—Nϳ{"ÓèL‘ȼèWÜ)I]CAvŠ7"üµ/³ÿz ¥ã÷ËÓFY–XϲœJÃ3¹sGÿPBV®$äP«#Gi™Úybbž?ꨃ–«k€7ã˜ìòøC¢Õx¯Jîx–hk~o¹ÁAîN€¡d•f(†8ßbM“¼‰¤ßòs? `¥O¤w%*À4gi¦ü+€‘†˜"¯žÛ›˜€±7 Ú°Lr¡æöƒïX8t÷ÏÒ¹‰í»4ÞÌ1°8wØÅ×K‹¦ñØÝZfXc”ôÈö‰ï…›˜÷­ÑÃXsá^Ð#‰C$$<‰ëLå•7JÓ aó+¤Uì´‰¿m“þ¡Ê_-Y».xÛ’fKÄOEªHP­Di$êrÛ>áü ª³’¬û"±32³ ^ëŽrÈWfü·Ïx÷6X¬¸ð±r>³0ç+Hǽ#ð:$áŒÏívò)”>òÎè½Ju&   2 H催Çß|7´ïD±Ow^ßÂﺼþÚ²ó4h»‘É?â2,ÆBO}eu{í+6àz—þ£Ëÿ±Ù´È’äÚpÇ¡ÕÓZ‘žòúwa%øc.vU”è¼®ªÄŸîUIâIêZ<ƒ§ä™™$Å(áë=˜D¹;ƒ1 Ýä~Òªn7 ;übSø-Ô+rÆ÷‡ ³{QÿP•W†x>Þ—Œ[WœûgÍ "m ²ÛuUŽjÎ@Ǻ÷ xƒF#;¯$jŸê²î¾ì½¶¼jÛüFöá¨kĘSF\ÊéU&Xí"©îÉk½1š(GbD?ÔyoþÞa%ƒ €IH2ókþëø%PîÑµŠˆ$6ä»’|¶ »o´‹ˆØ‰VpA%ÿ®fE \ï$HŒåÖ¾üð¶7¹i™&Uô>Õ?Ôj·î·Û<†6%ŒþÞõ8Òׯº¬Ç]Ü”ì%À”"J7õ“íwýG׃/ºOk²²ˆÃ9è³üËÈJ¿îv ò¹×¯}KƒbªþV¯oýE–ûUä²ö“êì14ôZíÿzŒrO 1—?ã‰K(cØæ[º^BÌV•”LÒÈFËf)yÔ gš6›e}f 9•ÕÒxË1^a¥AÆ4H¼E$ájð3vmÅ»[&}€¯¿ú[ÿRœ}Ï{Tn1²Uwè~»N,²sŽI#ÿp2Å4L]+ÙGd§ Šë Ë´¥…ö·þ¦¥ƒ§¹¿iJ;å$膼™Mg d¨¼3±‘¸i7æe2‘2Ì»vÊÿÔ9B—øY„ħOÞþÒ ýñÑ+<Ö£;êŽÂÜv%ýÚÅndpÝÁ73}„r"¹PjË&ÄC!d†žEþÖfY0áB%,€9,²lÑðU0´+ÛG'‹Dþ`Ù·1Bä¦"mÌäÆWÕq>Ø?Ôù§ýÌû?š*½ÑN¢ çé( 3®Ç0!†TWHæÞÀe=³ª\l#OsÎg€%&èßRct‰ÁNI’H²ÇÂ9Õ˜4Áw™¦>K'ýC•ôÿ+2~ûú¢KC\.z%sz´™ÁT˜†o&üyi³ Ü»¢¨âYû‚DpŽBÎ'&q",ozHþÒÆÖ9 '|9~N’°âŸp$ÍÅ bh·íI/ccxɂ͎å¦6bâk[ûjÿTdŠFÜ_³èSØ/ÑÞ¦([‡fV•/3ïE‚ü6‚7’0@>™Om_êžÇ¸e 8†HGú£ ÿ˜U¾kölYt@ÈÌŒŒ£©†R ˜ØƒÙo´€Ê½¨-¥³*O‡*±bŒ®ÇêòíÆñ+’"h¶ÝRa­¿,TÀ›£aê¸GíßýQöÝgöO2óîFƒêÔSY”HâW–5¤ñÀÖk,0Øà$^iòbDŸòH¹=½©òsZýeöV X̺#ªîòˆ ß"‚°¨"ÜhXÌî´¤nȨòÄif7òÜÜ@Þ)èÕÀo‰Iïóí³²Ia>¥ÛÎáÓh—uî!guäKÿSÜ̈ñùÝ­Œˆ†lròWôànÈC#s…”Yäi 0¤ÆÒí²U¡»H,Ó±·Q]cö÷þ§ê„·Uý”w.SG¥:½Ýž,<Š‹]ÎÕ¤ØühùF‡ðçüÿS¶RÇ©¾É’G‹¦úÄ#5Êr²Œ2!³µÂ±Ť$¥\Ä®Ô9BÏN»'á››ê Žó1lOø=r?îQ~Ê&nðÞãeOª·vW`Ö6€ÏÄì„پÓ¶ôÈcë,…9‚Gän&"viLE¤¨?Hgv#aüU®6§c\²:týMÛo‘ÔeÓ0U2XlW¢’YŸÿpóGþÜíç„þåGŸn~Þ±ÿ?ÔÍ£*Ý@öU £{€&Ò@Cq=ãÂ8ÖT~d=´1GaÙ?µÉÚ3¡7w=;wc|/áˆ:è›ÖÀhv'—ßl^zî"g?Ý4¥] 38üÌÎWviW“]uo«Çc£ƒKŽH¬lcá¼|#@¬ÊãÌGºÇ‹ÈÅX á<{­–æ6ô‹¥ê@„‚ö-´k"N÷›îA†eoø0@–šì´oh™¡ˆ¢m»Ç¦ê:ÅBéob-`Æø«î$/d)6+^‰}+ÛmžTØçœl6أײ@H®<¡Ï0Ok<>tŒÙ UDΧ%Ûv{ŸÜ "™Uü˜ûJË$âÈ¡FYÎý¸™ãeŠÛå;fZqŽÄ§ÖKDÏ iS6 VD‰¶ábŸ‘KÏX ©X?,² Ó/õŽ%TÒ^Ťœ4Œò°û‡E•ÑÏbWÛ¡N½Ñ]Íi]ce™ 8„Ksïøiþ¢À}´/±=˜EÏnµû#·ÿ¥»tÊáXž2;÷\Ze`ª]ÈBOâa”i’ìÆfÛƒ?ÝšÕFHNòþe¼`÷Ý€!ÛpÒHÊÏÍÚ>Ü­ÜQÅäì·'R?…ŒU×¼/rDiV#´(ÍW¶Ïáš$i=d!R·ÉšéÓïõ+6ö*Èyò‚>¹{ŒŒ¨“Š*Àç A@ƒÅˆ\'á™EVg ýD?OÓ¯bò7oÿ~áù1PZÜ¡$è"Æ« Ÿ"`"ž%³ÉÈ'¤:Ö@_ã1“ðÇ)îö=àvÃÍìiwõ÷O±¿slƒV‰ø¬Ð…XÙ‚~N ¥ˆ_rÆ"û©Àž¼ÿŠ5ìíé1L–Œ¶ÅÊ”x92±MÜ4ÚÎ8«ODl®¥/zºŠè/õ¾0ö8ä,í)ÿÔ¸`ÅÜ,ÎÞß÷šJ£ñ+¨ÞxYböo^]þ¢Êü_¥~ÇÚ#T,=Â{ƒ¡åý:mÂI¾ðï(–¡ÜI<êæßÇ2%Ù5ÔRÀÿ/²lÊØ?/³³a#¤æÁ!è\À†ÄýƒžÂE=Ð@“˜h¤f–â»,›m6õØq²À-TvT —ÒVÌr¸´@"sU¢SÜðGþ!$ ²~;D@Á¢?ÔT‹þû%‘ æÌª=Ãõê%*á ÑF#è0 $…ž‰B‚xà‚W*R4úŠq.:5쟵Ç ÷ ×$‰¦ L¯$g¡®ì“'âžv´7šGý}Dõ̃“¢½ÂAøb`4=Îüù²þ›v? ¿ùˆh÷ýîqq L‘y»«ÆÌ “¼ËºyŠqWäU媳ѷfôðeæB1Ý@ +ÌgدÖx5…Œò–{ÖÚÛ0>€Í¥Ôd‡#¢ËeÙYcÿÔZ£~ÛFEH’Ãt=G*oºÃeÕÙ qPÀÈLèßû_ýE ¯ÿ€Ÿf(8Ä6ÜX•$H˳GÃþ òLÜ$Š å«JdsaÐöË»‘pé®Ì "³ÃÜžÓÎØ_ÁóLÄÒ&?¬}}î7ýOæh"Hÿù‡Lx $€VÀáA'³u·~ã|B8õæcBf)ÙŒ¯ I(Žã‹WÜ*GȳIWsüdÄÛ”˜Ên:_ýC“ þÑòr'亟,¡Ÿbë7>¬d0Q4jÁ”#ˆcu/ééoõ T™GA}¥"Ú£êG©¯Üq d=$VÜ+¬²¸…¡±#Œþ7ÓÉg®íÍÁ2ì{5Ÿ—Âþš.I¥w}bm?qöíƒçÈ„nÂFó‘‰`B€••‡%Y@K.AþF0²UÙ‰' b#Å€å$…€À# kˆ–]£2d4d…ˆñ†þàè4Çú†BÜà´Æ‰¥Pɹ>¡ÄU <½(HÃ=I$•£Ú@£MI¦¿Ô0EÅ}»{VrÛ¬Š}Ék—B ¥¤˜,4Màž¾ÑÚ¦YVwgœË*†—ñ¾›¿Çw ~ MçËqÃpÆ7…±Ú9<þÞÁµ˜f”w^9#`ÁA’@‹†EcÜ:Õwg+ý][¡–·¤ŸLÙÞIA‰dŒ¡˜$o:L‡v怘ûŠ»)­¸¯$_ùHvõ_æÃ¨|{´>Û}²LW»"mîgU dn.+ˆå—¦éÆÜj» ÚX Vzà`7'ýDD\_Û¶ ª‘EÚܾ£¼ ÛÎFƒAo½x ¡b“v{-¿oÓ'®ôôSñ­½"ZÀ¹k<Ž0Gͬ_ Æ.ÄZvã¸Áä°ÈXu©ŽMü±r‹³ç.5®7ä–Pqà úC³<º–@ƒ¶ÄöÚ5Œ‚ªÿ• ¢zê8bäNnr LwúˆD®Íí“Û£Ë(¾Þå²ä·*ë+¼ˆŠ4YŠ'nnèX– #i‹QãÔ<¯íkÛ¹P¯»GîW'Ù6ø¡Q´PbÈ U´rDä´²‰ÿÈÝꎚݭî"æqàÙµ°Ó¬[I&³l[{bÂ>Ͳ¸àÂPU9lïºndä7å3åËm—Œ41ß¶„‘Ž@™#“ñŽ l…G‚ÊÑþ깪{qn;¤nøEpÓ(á!ú€ ³*x@FÄГýBLÎ?ôƒÒÁHï'oÜΛ(EXâyF-%6R@¤_*e’ Z8R8_ÑkØ÷Hºï õ¯ºŽ¤õÛDé~ŸdúÙ®z[™ÓkJkJÞ½\fˆéf;Gdg¹0Ô6rµæ– ]ý—æo³=O©eótéR£¬©+ÖIAHh‰Ø ìH#Ó²5rÕj.¨H @L(r –A¼@røúU‰Ø²íõP6<˜–Ÿ'rs··¥…òy<€«°p|Ÿ?ý‚O¶>Nþ£š('`9 }Š·ïˆßr¼FÍàxØ †þœ ¹]Žä2[’ÏŸõça±ý÷‚Ÿó]ÇfŸò©,ÎÁ¾¼QËnMãÈ;ãüøŽûzÁmÎò!;¨âö»nüvî#%ŒÕXy+‘™å áºÁîûkºX½aÑ­[Nâ­çz€šJîéŸEõgò“Á©ôîKRXÖùgT¥Óš²M~–;)¦/Ñ´i¾a(%åŠ+…£ºS¤ô&”Ïi=<50ê™ò¹QœÉj\ÞSVj Þg_?“Ô—­Ï““.1´èS¡%ikÔÁÔÇãqØ*xÜutá /²®‹³ß§¦n§M¡l:ZVÏUuݼ&¾™°—°ð˜›y‹11âíEVzðS­1ÉNœ…Z°ºB•NžjUR‚R•/Ò•R5£r”êAN“(AW¨€V¢A¶¶O¬šêøˆ¤5©5´©J %W 0¢ÎÎÀAÀo×.»[ѳ¹]qÒý#¥ñúã7ˆÁu·5Ò¼ãSêÖ m#¦@tr]{K3rÞ§ÍZ–†+-Õ¹ª™¨ fÂѲîÍ,kr–_¡pÔÔ:Ljî­â´¾_3ÒÜÇFòù\–ˆÅá0x§X³9ÍQ/T0¶¨ãp÷òøü&Oçb5>ªÒšzõ{M‘ÉT"佦tÿ+ÓùKºÇ­“eô±Î65'Xµ”¹||úвVËXƒ!=·³™h$´±•‘q·28þF•ëPJ_ÃtßNáuTDùœŽs¢ªtûÍfíå寧⾙ ®e¾fwÌfîC—PeÝä·˜lNm’Øø*ÕòA(øI§P·¨|†PJÙÉRœ¨© YC†@¦APË亱R…zõP‚¤éPÌêVIRƒ0f’‹'ÔT«ÍÓs±f_íº¢ÄYŠ€I°^GvU-õy#Ë%T‘°”±õwa¾äø?ƒ°^AUá¾Ä©;O¹Û’’ )eÛñ¶ç}ØnB¨ðCoì6ÝЩ¿”ã¶ãŽë÷rvm‹/›ù ßš¨%”F:Pà @*°’å¯ÞwØÕ Ë`WöG" …#‰ãÇŠ§ƒÜAŸ×¬ˆ£QËŽþ ’ ©ÿ´’8¿ú‰ÛÈ?¿Nˆ÷%dEªØ²®åXû@#o DªŸÚú÷ÄTíáK’ÄNæFà©,ÃÏÎ<¾< —Ãb¤°pKq_*AÛbG€H<·^ nÛexÇ»mÛ6å¹bÄ÷ð¨XGèË}€yaž³Å4qvìr¶†+Ï­e¬S,ñ SMVËYd²Lu¤ª+)¶-ÖX±ÖÉ,Y â{@óƲ;2 ÁF Û)ì9¦Û…,xŸÐä î&e˜ã,À¼„ŠAˆãËûFÛ•;Øl@,Tƒëd)P€ÆÅ˜’»HÛrÌxî@¬§`7Q¶Èd*…¤R›ÉãÉFûÜ#°nM·"eÛy°NyÄI$9i-a<‹n÷÷Û ˆ†ûîwcåa°µ›´þž# p<@Üø;/'›€x€J‚ÃvØ<ä¶ÀH'`óäÀ†R|ºîŒ<î#c°ßô<ÎûqÜzO$òîlAn,ÿTàž WíÉw ¨fåȲ*ÂÔx,@݉>NøG(Ýw ðW—°ØyPy’<¶*7*ÛŸÐ:ìÀ³)d;~Žà¶à öò÷%GQý̳‡•’Ãn?oî0ÜŒìçö²rf‚®ì‡}Ï/þ„m·ö-þ>Ûn¼a?`}‡hûa¾(ˆO!°>|x]ÊýHQ¹âçoŸØo!7BK¿ëé²É;ý€#÷¶ì6þ!ôø‰‹$›vnA—‘nëôr1$(ðØ^*ÃüÉHÝGèî*À«nA 9C°ä»Üñ0±^.á‹‘ël.ß^ KWÝ›üØùbwØØ7/ IUߎ ~ËxåäoõæIIJ‚7;§†]Æï·+ZÊCñ1Å¿\kF±ØíÅŠíËîXx*Éàþ¶R»úñQˆUb‘`7c°,UB•ŸöòXïö^^ŸhÀñ_s'T’?¸‘Åwcà1!·c·¯"ÇVܺ¶Ì6'ˆ>#ýKvÈ@wØø¼*Ã.‘Ï6¿wúo­Ç‘mÀã1šRNœm–z•ÿ b¥ZÂÇ­oõtRi5:ê¸õµ|=­F‘¢iDÅǵôÏ뎡ã?Ô_¦ý(Xä¥:ŸÙ‡¸¡_ÐcˆL`ê'N:éíJàõZå>εößTµV(cEȱK‚ÃÅ-£°1>Àõm XN†Û×:jß´­1îe=ÐctýŠ[]K½=mR5Ρ7âÖÓúsƒÖ ¹&Ö)”Èç3¸môÔÚ?ûji3}ÕùOxÝ?÷#GN®•Ñ~Þº½ÑXI,dÓPämõW¨]êjhÕp­F ø)ú/O 1')¶R[s,g£cMR¡œÊŸŒ ØêIrL»ÎâOkx‹T¤Ll-µÄìÛ½±ó§©¾åúãÑ~þ=ÕiΣj ¥ýŽu¯#ÓÑÌUmgAõ3Ktr]3K«¹^¨&SMdµvK3­rÙ]jšatæ©Ñ0iú8ݵò2ÕÌÚÎZN«õ¿_7¸ôæEj[Ú¥žá¥ê=½w¢Ÿ³.rƒt;Ô­ ¹,äÕç»I°9 Õ#h±¦’Ý´Mi¢SNX~¿ö®5žäú]¥5¾—Æûr÷ƒÕ¬/XºÍj,ÝŽ¤éLm5c©Ú/§ê5ÓNå°}^Êi:¹ ŽwRgðv4D:ƒUãqºwS5ÜUì=…ê¿·Œ¾²ëg´.¢é9t¾FûeÎêÛóa.^ÌÅ»ŠÔ]=Êôߊӵéâ®c0xŒ©¾•¿ Ø— ZÒÛ9zˆ ̧Ôå…÷Ô-³4_Ô"ï…ü²Áš IØ-»ƒ;\â¨õO¬=cêŸX=ôa:gÕQÑü°þŽé\¶œÆiú:Fî7«jÔ½7Ô=hž~¨Í©4Π¿{¥˜L'Di&ÒúJ}'¨rçºpꊒ5j‡¨ë:‡«ºþýoéÞDôú‡¹>°t*PtÙÆÒÍÜ·¥:“§2Y Žš¯•ȃ k´ùÏv½ mW1AZzmË4Û¬^к™‘×¾äµ/Bõn„Ò¸ßz]2Ó2ëݽjš†Ö[BßÓ8,惫-Æâ¨ÜÅê­U’én§µ¥dÑš¦Ö‘ÓÕ3ÚWGjé5%øSPéŒÄ§ª¾Ñå¿Ói,èÐÓzoFû^ê·J5 £+–€ÙÒ]+Å\ÄÒÀã§Æa5 ¶C# éÛ´jÃMáDS8°ÿ;UB뇹ƒêwCéiHæâÖdËÝÜ“^1ê¾½êY½äOí§]XÖÁt¯ zûÔýiÓ¼v—^jL¦»ÔòhΖèÌ=ýq¦µŽŽ—®¸ý]©õƒ 56RÝì.›ÅTÈR«¿b0eÿyrÕ_é‰ÓtØËúkGu…úƒÑMÔ§¥€ùšw7|û¯ÑþÛº¦úJžO%/ûfލµs3¨0 ~mM>b<¾FÓ¦f+uÕÞ‚u.p4½Íû~¹ÓŠý@Ìt‡=ÐŽ¢`ú¥oTbtö¤Ò²æ)j¾Ÿjêy­'‡Ô÷!Ôý7ÔtlCž·§N3Té½Q©ñÓgðYŒËÖçý†ZÀ{Ñ~Ê:Sª1–gÒÙŽŒæoë­s&G-Óιèî¾kIkÇj™éÞ×ú¯Ke¶%zºvS,—ÉŒWË¡ñ†¢JŽâbH€,÷ 1 ¤ú`mL¶«{Áð1ôkŽñ¨$øìF\ñ_±ç²Û}Ä|@ó¾Þ=-•öoÑrÛrÜ"¯ÛvbÔ·+³þ•^h!ïÃL ˆKs$‘+ˆ×º°Ìc†YX7jñ@n'%C† ™€uØq€6«#1ÜìG-ÁQ¶Þ ;k–K·,ÕÄžqLL vfÚ#èn7Â8 öðA^#ˆ#qõÛ™ä‚<âInSÄ3~3¸1ª€ÇÀ óòÿÂ0ñá‡ì<°%ƒ ŤK+‰^+à?~<Ý鉫¾Èah£ÝÕ‹ðy¨<¤R‘˜¾Ò.è$.Â6"FFàT§}ß®øNKGÛ°gçï~1‘ ì6s°m†î ûlÀ’À($’v î Kí + ÈÅNÊNÑR;îòÊ€7Òî3Æ;ŒÎ¬Š‘‚8Tr6û….¥¼¿Ÿ«7U¹ýˆVÛ`7Ûcþ6•É>>»y AVÜm²vin0€-m€°{$;mG`ä»H@ÝJoän üËŸ°þâ[Àz[')·’GØrPR %xÈ; (ÿ$:A`v6{µ¸%bÙH]ˆm”®à°ýÿ–)Ëvoë<_Žàˆø’ÃŽÇ`?{Ù6#Æà®Ä’IýzQ¿o¹lO†¿ù >¡·#fƒ·†úÿƒú;s?åXÀŸ2H˜ùÝ<“¿èíº}Aq±Øþ÷Üzq6ÅT‡íø ;H;øPvqÜM¼8È’”d^MTb±:þÏ2¯ÿØ=T+þß5þ³Ö¯­5¾OLb†Fæ9?„ÎkYŽœé\/Q©É•ÆÙÔôññÑÙÈë;5·~™Ã^——kÇ3ÍñY¥£|”áRäoZÁŽEe+Úß@zƒÒûéþð£J½-£5•½©õþ/Ò¾–èŠm‘ŠõiR¶L¶—Ïj,pŸ)J,í³(ÅPò¶s|û¾Õú•k0—êet- }ÔÇ!§+gµÔšS©OŸÔ<Œ1I‚ÍSÍOÐ|cãñ3I©p-ÍgôÖ°½~ ~ g‡¨guerh¨ºJÎ%CHÓU)zo&D’ fÿ{)€Qgúª©Ò«O RTµë¦¯œ%,ÄÄê——¤‹Û’ËâpØû™\¶Jž7F¬—/äoO^½:t¡RÓ]žÄŒ‘ÅV5û5–=¤Xªù,b3Ø ô'Âfq¹H*d2Xk3cîU¸"Êâ-ËÊãä’) ü¼mؤ¯vÞZ³Fñ̈PB³>к‰¨pš·OÛÔZ6…-OƒÈP­o•×Û4®`u/þbqYÄËAc§ÒZÉÒ{¶õ[“C‰ ÀÕµW øî…l=^§Ÿ­˜¯Ð¸ZQgkj ˜¬c9^=5%Πê-K©pôŸ!¢oIÇϦ2¸œKxéžC'&6Í\Ù½=k‹ÀÙG'Ó–“¯©&šà¤d†$]‹…1& §mUÔê}\Ý-JDPJ‰SØþX¾v-Q¥VköîW¯RœrÏfÄòªAWFiešV‘R(âEf—}”,I ¿¨¢ê×Ktd˜ØuoQtŽ›|Ö}GˆLæ Æc¤Èà+KJ;YÌx·:›xÊÓe±‘MvÕãlD’@lD LµíG¨Tõ}ÌÞT`³NôOéþ{Rkz8äîôÇKèÛzºKáÎÅgQÑÔX|¦¤ª–q—¾såe¶ù,6bÆBí¢n±èçS›¨z^h{ùÓžÝõ—C²uÅÜüµM3qjdÄã4æ\jJSAZ¯ok+¦Û#E!9JÀ¼ÑåUªTœÀª’’JÃSeÒ“¨/ÜÙ™‹N4'=Ô•N¢¿iÕ º¢†ÓØø2ÞêßJñÙûÚg!Ô]GRã ¦GkQâëäè²iÕÕó 5dœX†“’-G"°AüG“#â²Ê[©Ö>“dpú‹?K©Z2ÞJ×­>¨ÌA©1’bôý{J’T±–¿ò4 °Š["Ê®… =VÝ=ìË€Ó·OÚÕGÚÀá0½89löb®#{í·Iô Ž¦Õ˜  9 E0Äç­Ù~ÖR¤xìäRETåi×j’=AíCžÃiý7k?¨íÁnÆ õþ¤Íj¼–{R¾3IÑîéý=¤éfñù7_NØÎ3Ï•ÅØÆQ‚X7¤KÙÔ,ÓO¦“Oþ¦£©(Ö¯† PI¨/¨„RV›¹jÓëŸÌWà(êæP3±ÝÁ=Û{—êÁg1Úo7¬tÞ/På[˜Ì%ìÎ:¦Nãåçž¾!jSžT–wÈÚ¯=zA•¹¡–( ’!ôÙêWNÌF,km,ÙAËa°T?Ž72ùL »´sT1ðwÙìÛÅ_Çäjd!ƒ“Ö¹BÝvã%ijlÝBŠÆƒ¥6_Mdèèè:q¦çÔ7uv°·{3 zq­í䱺{Utç;§uMuþbm]g~¶™Ö8m[g3Ãç+O:ÓFð¾Íõ6š\þ k§µ´¾¨¡>Æ&¼9,4Zc ˆë§UúɤñX~;&>þ"åm}ŽÒ9¼üŠž•<ÜøÙóä"¥Å ‰ÒlÜj:AÙ˰,]®­$A ˆž£ÕÆ¥œì $-P$$ìÄ6äâåãz§Ó<Î#9œÄëÝ)’Âi™I™«žÇMÁHÐcÊ\ŽÇ Rï‹ÆÏeb¤zêâµ®Í糚W©ð™=G¥ÅuÔX,~Z•¼¾¯':‹”¡ µª-b>NäRÌŠœz§Ú“Úæ¼×º{Y K›Ó˜][¨^½„–†NÖ«Òy‡Ãá/âtU+˜+:EC¤1=9šódt‚áiçó£&åòùÌ•Êu ý3èö¶ÒÚÿ¨uOLXÂhº=s£„³†—%&oSž¹u_Nõ>õ¼þ*Ζ;K¶”:m1UÅfµXÔ/—)%ŒÂL}êêRɦž´fu¯RÒPÄ€P­Zt­*P)€’ÊI HÑÎuUTj™ „’ ýD( ¤é’ 3m°c¯Ôžž]ÍÒÓÕµ¶–³œÈœŠcpfhË“¿ü-Éñ¹oLOÞŸøÜ…[4®Ãö`š)^6Û½üþŸhë̹¬cCr{ujH¹ ‹8úÖ._‚¼©'lËN[6­ý¤xkמIB¢9ZUÓoš÷sKÚÌC§[ O¥™-gW?s&sø¼¿ItLÝ;Ÿ¦±É‡»…ÍéIZ!¨)e,f°±‹Œ£v;fä¥m5б•0Z_)KEÍÓL'¨éO@PÄBpræ5Å©hW’|\´«â¥À×ÑÙmQ†½‚’¤Ôm]Í-‘]T”ÁTò£ÿx»R-é/«þà.‚Â>i.Þ¥QøT¥D¤‘m$—€°\ðòQk %&6Žb=M‚“’ÓÓjÌuõÉÓ’­Ý-R•Kö3ôçŸ un͈š‚LÒäNRXÞCf³E4¤S×’¾Ò¤ðÊÒHÊråÍ0r]J•*ÞªÿMº'L°= Éå1zo9«z+í²Nç²X<ÈÎjŽÂtûlfœ¹wNÞÎSGe¥§ŽÉ[dz[ÈÑ‘©<ö¬ËXÛÓ KJôóEiüÌÖmåpúz…‰¦ØšÊówy'”+Ë'äUráHe!€`=UQ4€šÊƒ{ª|0LÃêìF6eëæª,¢µM“©ÃÄ£Òæ÷W,]Ìì/‚Û¹ƒºìw#üAòw‡€|x’«¹$·èŽCÎä…òI;+lI$)RóĨWw;É$\B(Üì¤2ñ'ÓQû7û}C[}Nûlwò Ù#o%¶¥Ç?¸þãê9ÆÀTÀ†x?±ôû¶ØH÷³p7 ·7Ü|øòmËÖyC¾Ò7 §ìT凸mõßüù'üëÇ‹º©vHößsÌ’ƒ`½ëÞ˜]^A„` kEÜwö ±ò fr ]ŠyâT7Ž@ñó°³r]Õí(Q¶Û8SäÛÀm·^'q¸#}½{×½>3ÜÄ…þâ;îß³¿¼l'o>}7‰“¹´ƒÃÄêȈ»ðvc “yQ›uX—ƒ$ey=ëÞ–6GA)½ëÞ¢¸(ïÿ/ñ†L€L™Ÿ|4m7r¿ÞÀ¾ÿݰñ¸ ($ªñäïä8³ Y‰K÷;“¿0{¢Ø¼¯#ï^õ,L’ D'òÌs3#2ýB²© K3#“º‡î[—>Dîv?¼«žCmÁû°Ý˜€PðNÇ—>?ðçz÷¥†ÃSNR#3(p²p ¹n{l å°È þ?ó¾#Y¢3›/ûÊï†»× YÜv"—»fÛMf%úËef?héW_^õïN$#iQÜ€|»ýpô“vøl€sIXñA+ãoI.Ì‚QTnBÉØoãhÇùÛñ’ $¹Þ½êXXJJeb»0&GRÌÜ¿j¯¸ ·†ç—G÷Ä.7.¤Gù!ƒnH$ì÷°>àÿŸ^õïP`V_`ãË ¹Æ]¸`ÖD@?úÛÏ?$Æþ@ýþÓ$í׈‘"·ƒïäìûl9(Ù‰;±÷¯zsù)-ÚßÜá$–óüm'ú’» Á;·æ>à·6ÿãõป8mÀ* ñ` w;î‘À€H'f#~?Sï^ôä·Ô©‘$ßbÂN…^!‡€ ^#~Cÿ¯rÿc÷é§—‹’Òü°ÿ¹ @(VCÇû8¿’NÀz÷¯zI„ûþxXØ-±fØn¦5Ü€X‡@ÇÉa¹‘¹Ün=`}šMö"4$/ÿÿ¬ÿcaþxï¹>õïU/æ>ßÂǘ¨íž?õo·‚¿ä¹ý[ìÏŸ>”›÷ nÛ¥¶b;…•NìâXr#–Û‘û;ìG½{Ô”4ÓA\oOïœ,bV!Â÷7Pû·>C0yú²‚|‘¿¤“#×’ùgûÁaÄn<«(;rrï»o¹}ëÞ¢°ÉCEÔ¥ð°Žç%‘Šã,»øóõ܈ l^I=*5ßvTˆÑË*ìíä}Kéˆ;©ÿ¢^õïRA$™ØŸ¸ÂÂ#w2׈±<ËlÞÄ ¹1ðIð7e€¸Ž^ãQy'™,ÌG‘Ç~@ñÛô»ì6Éõï^õf,±3E ¹E> ìíÌ,Cx#q·¼øô¸Ô¹ HR]£R»ŽAAóȯ"¬J‚w^'ϯz÷¨.ÃÏèpÎyÂø¨<#bàóÝNÄÈ9m¸ÿò'ü’}<w;¢î#ç¹ÝØŽL¤å·-ÇvoÙßõ°½ëÞ–,7>Oç„óØ·€J·’ÛûÛ°^$n ˶@#ÏéÅs(Uâ€ó–>\Gí‚û'»±ÛmÛìÅŸ^õïU¦Þ´‹q†ÆD|øòmÎàrØòÙ˜€7å¿~Ü´Ÿð=yÉŽPžÀòUa“³Üž[y'b7ýú÷¯z›ÏOÜ|H’÷ذ ~pŒ9•$rn;’8}×~^wJª‘ávØó`B‚Fà¶ãÿÊÛm¼ùýlÿݶã>=ëÞ™(÷üÎ"ç“ûÿôƬµãg‘H*d1´‘nË»)$mÁ/È;HX‡súqa ›ïË’ù?²O¥þ¿A@ÿêß×½{ÒP}?ü€Â‹aJLe“pwåÜÊ „âÜ÷Q¿Ôo°?°Ã`M¹(Q±>yw;³l/`àÁÿǯz÷¦]½ÿ¾³ ÉŠŽÛlû€voÙo¿ìŸHùìx(˜oíà'ñà Õ»[•Ø Ûs¹QëÞ½ê ùl'<þÿ`}0â³Eßö®Ç}ÎÅ#l€“ÅO-¶n¢Nàì2f(aVPÝï®ãu+ã‘ò7'qàìTÿFÛz÷¯zŽvâƒÀâ¬ÊFÀûˆ$ûØßìϬ°Wbvt,”ÅŠÿÔŸØ#bw$¶ÞõïK mî?1…rþѰ†çˆ ¸ã¸¹Û“±€HGb6ðw#Ue ª7öìŽM°;þÆå¶½ëÞ¬Fþß®…iÛH-ܳœ8B³ex±À}»`m°`{ÿ’FþvÛǤ™fmÁØn¥x€mÛr§pvòwØz÷ªžHì?3ý†, Ëoùã‘1†<‰+° ²ð'aûßq¶äAØlʱ ,û»r G’?DqU~TlOùõï^ôø`K¨=™»FØyråXä!ƒûüø_$°ØnöñéàÂÌQ|!$Fà I? <’|xÛo^õïNç“ûÿôÄì$ïã§Ø"ì»2î7]Ê‚œöl?ÆÛ€ ßÎãǦc‘ØlîÿR9 ‚6yßþ݈ xƒëÞ½ê*ùO‚L3žpá!œD«7#¹ß‹•Ø©ðAÛ?¯ÐØz˱TgyqJ'—O;ˆ<ïãoz÷«.ó;ö!¾˜‚TJK›;}ÖÂøHŽîy–àNà7fÿy ÁnDxÿ*¬?Õ‰ÛríÃ—é ¨c·×ÀÿµUAÿ;Ÿ>½ëÞ_÷?ü oäâ%EˆxÒ>ú_êøNÂHÑöòÅÓÎÄ’HÙTrr7$(ìv<@ôú(p íÇ‘P¥CqâYA ‰vÛyßÞ½é×açô8˜%Ô0áÄã\È{î`S¶ãô ‘ãƒþwßö¥&HÌ ²’0ó¹7ð¿¦>B!I>õïLÀR¹û=£ÆPBK£ÿµU;.ûùظÜ6(ÁËG±PmÔž_²Ûr;°Ü'·ýÀÞ½êµE2Eõ ,{¸TóUPIeòb6$ï¹`Nþò7عdK#)س¯‚-›f-º·†ÿÂñØx%·'×½{ÕôÀÒˆþ¢= …NVA¶´¥»2 akàÈBÆ Èa&䱿/±m‡ß¶Û‡»„+8ö“¶í¿Ž'n[ï¶äø>6'Á'^õïQ:¼l@üðy*ý±ég•Ú1÷ ä1w?äX…>@ä?¢ÛÓ¤–XÜí÷bÀ]>ãb7òvøUýÄû×½Vn|ŸÏ –rL«ì‚00  RÈî6É^D’¿ãcãrOëÒWb€ªoçv ŽÃÈ#r~ÇrNßã×½{Ò»ö¨–$,< (’L¨~Â) yfP®Û ·; ›üIÜ•eI$SãÇØníÿüî¿ùR|ú÷¯z‰0{pì܇íß$~Èßf »xÜ6,‡ü+x'ÉÜ·Ÿs¸$¶ yãý¥‡×rþƒîÄ‚P)]™Náˆí°ú·ùòO¼xó–%7RA“¹¿·”‘—rNå‰ ¶ä’ '÷ëÞ½ébH¹ñúŒÿÙopenmolar-1.0.15-gd81f9e5/src/openmolar/resources/gp17-1/0000755000175000017500000000000013024000134022420 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/resources/gp17-1/back.png0000644000175000017500000032124712160120250024041 0ustar neilneil00000000000000‰PNG  IHDR}tÁ ž±gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿ ½§“ pHYsHHFÉk>€IDATxÚì½}X[÷•ïû`Þ’±-a[…n2`”—ÆŽ<~émŒÉÌ¥uÎ s›Ásš ßsì3Ç$3ON<µsô©{l·ÎøÞ&NçØ3'p2S“Ì3¸'4LklœS×rÜÆ±œ4 1K ñŽîÒÞì½µ÷Ö–ëó<~Œ´/ë·~¿½÷Òïe-•×ëõ"´¶¶¢¼¼<ÒÅAA, ¢aK%źQAADô!£ ‚ b@FAAÄ2€Œ>‚ ‚ ˆe}AAË2ú‚ ‚ –dôAA,Èè#‚ ‚XÑGA± £ ‚ b@FAAÄ2 %Ô Î)/œÓÒázW¦ª05ô¹çbÝ6‚ ‚ ˆ„#=I@Þ–JOôé¡ÍÝ…nôM{1à‘"E•„é9ù4AA„8ÚTŸÑ'gKiSUЧ‡V.-ïAA,"nô Nx±æ¾ëvAA$$îi/²|,â冼¼ŒÉY/’³V.‚J‚ ‚ –3^™+#^.-ïAA,Èè#‚ ‚XÑGA± yOßÊTRT>[‘|ñAA,úô$¤'iÉ¡çU]¸pÁJ†©9`zΗ%wÓÎX· ‚ bÙpÿÓßarô>’U*¤‡hø©¼^oHF_Ÿ{Ž/AAÄmª %ÚЬ>ÚÓGA± £ ‚ b@FAAÄ2€Œ>‚ ‚ ˆe}AAË2ú‚ ‚ –!;gŽs;¬æ«!婪= Q ‚ ‚ d¹ÔtCö~Åéu†<”UîYt9cbôYÍWñ~ý™òÑGAñM㩸ÞÚ(,1bwõ>–Ï=ñ @oÈà{¯o)¯à› :~ ïÜø=/-æ“þìÑWqòü%8ìýxóð‹pØûa4mCUíAè yp»œ8{¬×[[ØïYö~?Pƒ“ç/Ôm1·£¹þ4l]VMÛØ6ÔUWâ…co°òs1·¶ÀbnW¬'£iÛò1ú¸f:€ ‚ ˆÄ¥ñÔ ` £æ†3h³šÛaÚU!Z·°.F΂b#ï™ÂEé=l1·ÇÔèKèƒ{?Ü.JMÛgÕÁaµ…}¡—š¶ÃírñÒ9ìýìžBn¥¦í(,6ÂaïGsÃvªÖ쟪–+ËÖiAsýi”š¶Ã3ê¤brövZÙ«ðÝzC†ìýl9\™…:à¶WX®Î‡æú3’éƒéçì±:è y(5mÇÙ£¯ÂírJê‡K¸ùÄÚ#¥±ï¥t*6V¤Ú.¦O)¹¥úJL†xFê^Ž9¹¶ u'uO+ƒ['£k±²‚éYx„s/»O­×j¾*9n‚å'ˆDÅÁÙÓöܲÿ¸0ß5ž:Á…'Ï_’4/55ÂhÚ°¤j1·ó~œqa>»]N?PƒçžxuÕ•°uZxù·”WÈÖýÒ3exóð‹0íòÍ(n)¯àµ1‰éL_4hk:‡Ý5ûanmaM3X±_öR”UV¡­é/XYêl JMÛ9³z}3k Öh|ËÙÅ¥þ_â¿ ˜¼¥¼‚º¥½b{ ÂÕ­Ó=o¦—šQXbÕÏBóIµGJ'b߇º§BØv)}ŠÉj_-u„º vO„‚XY¡ôu8ò;ìý²ýËÌ’Ë-éÈw%ù "‘`îS’{ó¸Ë¶Jèí² 4„w·pwÍ~z«—šÎ±Ë´Ì¿`0i›ΰ3ö‰nô%ôLà{ XÍWáubïá#¸ÔÔ«ù*Ü£NÉiX©2¬æ«°uÍÿ((6†-,1²¿BªjbÈ¿9TéA©º•"Õ^‡½§NÀjnGUíËAÓ‹áuñ>ë ùðŒÎÿ¢’ÒO¸ùB•/T ÇJ¨õ+Ádˆg”èG®mBÝÉÝ¡êGª¬`å0×Ûšƒ¾8B{—šQà_Î27¡ä'ˆD¡¬²Š7ÖC=°)†­Ó£B ½!­÷zk ô†|öûù4ù¬QÚÛeAÌ ûþ]›ETrg •„Ÿéãî ¼Ôt[üÓ°ÌL@Uˆeó³EO×ìÃñ5Šä`fªj´«§N°¿ ¸XÌí쀫ÛaïG³`¹]Nv Z ¹ö2§¦¸TCÕOaq)šëO³Ÿ­æ«Ðqn")ý„›OJ>½!OT'bß«5Zɽ¢ÁöÓPn)¹”Ô(•Y,˜îvÊÜRu©³5ìßüÙÂÀ² KŒAef®ïv9ñæáCº—vVî‘ìß²Ê*öïæ†3²2ˆ÷PòD¢°»zO½Žý§6Ãír¢°Ä(ú ©¬Â#,ævMÛð±7ðæáqöhô†<öàÈ¡·êqöè«8~ j/{€Ï0ä.²÷ðœ=ú*[7“Ï=ê iÅ0Ix£‹¹µ/{ƒ}QèšÎ)š™¹ÞÚÂZð…%Fv_à;‘#¶÷LˆÞ‡ÆS'ÐÖtîQvWcï+?”¬»ªö L娫®ô¥å̸pÓz«^²½ŒQ©Öh±»f?ûR U?j¦ò ö…¥7䣪vï˜~ÂÍ'%_YåQè yß»G]¢:]Èøáé\¹Åê—ë×DD8æ¤Ú&¦;‹ù*¬ævÑ{BJ?…%F47œauÊ䑺¿‚陹îuage•d»¤ä—ê_†-åhn8ƒÝ.'oiKˆÔsDi~‚HÔ-ö¾r{__)¶´+v]*Ñ´Í? èóÂ=@ÂÀ5¹ˆ¥åÖ#µ¥Ãj¾Ê³•×ëõ†’¡Ï=‡ÏÜ‚*m¥×MbGì…ט>ŠT[™ò”ô“öìѺÅR1A± ‰‰ÑWU{ïÜøý‚÷ó5žz»kö¡¹þ ëbázk‹¸—‹w|\,ÝõÖžqÆMü˜ß¯?‡½Ÿ5*ö~¼_F´,æ;9ù.5=έëRÓ9žìby˜ý Ì÷jzC>.5ƒÅÜ‹¹]´,¥òpõwãdVJöKMçX=I]gÊʤ´¿„×…e4žzîQ{ò‹[†ð·ÄÊÖ-Öï\˜ò˜~k3“¶ªöåE5® ‚ ˆÅÅhÚ†wnü~Ñ—¦’¿ÿýï?” Îi/F§C:û5®|pe•{ðEÏgPA…•kô0_ü7LOM²ŽUßKÖÞóTªyÇŠmç¡‚ϸøJу°uZ`¾øo²÷cdؼ²>þuT*_ø–•kô°Þð¹ùý­›˜žšÄ½Á;ðÎÍA­å•€•ûýôä$[&ž/¢ûÃC°ý·sλÃP©[§©ii¢yŽüÇ=xèÑÍÐò£ÓÃÖeE{ËÏáºw÷‡ò»¿°šÛye)‘G¨¿ßßú- E¢¹þ Œ[¶óN2zœžšÄï?ù-’““yíâ^gôÊ•éÛ´¿RÓÒÑÛiååaôeë´"G§Ç½+×葚–ޝ}½, Þiéì5ì2=È+[¨£¯ùÚº¬l¿3ßsePk´¾>×éÑÞòsôý¾s^ÏS“¼63i·”WÀÜúo¬LA!Ez² ºôÐæî~yðmèTk4pºPPRŠRÓv –ô¸ß»G]l^®°‚’Rì®Ù½!_´,&¬˜Z£áùbÒÝéïõÉ%(Ÿ+÷{¦Náp&”­Ó‚‰q7Ô ~J*Ï ÇÞ@o—…ç –ÛnYJåêo§?Ê€ÿIÜ:ïßBf¶Vò:£W®LJûK¨F_Ü2½‹Õ˽&L+§#1ôvYdà–755)+?_NrÔKAD‡„6úØh¶×[[PX\ «¹Íõ§±S欭©§N`gå—ð;õ;ƒõ…äjgcmŠ•å‘x!3e?¶ýI(Ÿ+÷{£i›/Ö'Ç‘1ÿ²qŸ¨ß.©F…ÅF^<ù`20ß»G]’å‹Éó~ý^˜Q[§/´ga‰‘'‡°¿ˆÄ ¡gúö~¸].ÖIîÙcuAól ×[[ÐÜp& ”A—H=wÚšÎ!3[‹RÓvž£onù½V6ò÷ûRÓvû^¼Í gØh.f8¿RÓv¸].žœ{?¬æ«°uZÐ\šýÜxêuÑ1Þ¯?ƒÞ. lì¬Üƒ§köá¥gÊ 7ä!G¿¶.+ûk˜K[Ó9”UVI–A!E8Ï[§Å?3ƒ€p~j/vaq)Þ<ü¢lD²Ê*´5ã͸øb‰_eÿæ—ÍÌÐõñf}„y|ñµ·Ëæ ‹¹…%FÎìe.55†üŒ•’GªÍbØ:-ÐófR}²H­-”pëkk:‡Ý5ûY#8R+QRòì®Þ‡ãµÏ£¬r,ævè yPk´hn8ÓƒHLÞèsØûØ}ïá#Pk´p»œ°uYqöè«ìÃäÐ[õ€ãj §N`gåôvù¦±Ÿ®Ù'ZA™çNa‰/{Ãw½öyl)¯©^!zC>  ØÈ›‘CoÈCUíA˜/¶àøÉ¶\c$X‡½§N@oÈcC4ÊÉë»Ö½!V»ül‘° &ô£’6H•c4mƒ{Ô%Ð˼,Rí‘ê)=غ¬ìµpë»ÔÔèÏïD[Ó9Î6i¸ßÛº¬¢åKÉ£Öha4mÃ¥¦s°šÛÙôB9â5ü(!OÂ}…%FÞ¯ä7¿8¿_Á?¨ƒý2ºî_±uZàvùö?Ë ‚`ˆÄs'3[ˋ̧ßL˼¡$¬—YÖ}ºfލQ$;³«ªö L»*ÐxꄃI>Oa‰»«÷áÍÃ/ÊêÉír²ûËšëÏÀb¾Êî}Sgkxõ1³yÂ2Âmƒ°œÂâR4ןf?[ÍW¡ó÷™T{¤Ê ¦‡pë»Ôt[vù~ è y°˜ÛQ¥@á÷båËɳ»zêª+±¥¼jVT2ú“„7úİuZ؇©‡½×[[x¿ª÷¾òC€Ûå‚Îw—S¶ ‚ !¡>w<£N¼ôLÔ-v –ë­-ìzæù$ü¾°ÄÈ{ñšÊ+Ø=}rè yhn«³5¢Þñ¥ò[Ìí¬×ø…Ö­´¼pó ±†#—0”¾”Ô¬.©²ÃÕQ¨rȵ[©ÀöbAâÀ€ðgÖñêïí²°ŽNϭý:CÞ<übT ?¡œLö‚b#Þ<übH†ŸT_-—ìbºŒ×v‡r/sÞOáÜ3Jö\Ë.¡<+"YF¸}±Xûv¡zŽB¹¢56—*Éßÿþ÷¿Jç´£Ó!ùsŽ{?†ìý0ú½ž×UW¢¬rêª+áv¹0=5‰¶¦sX‘–óŘ[ÿ ÿú÷o¢·ÓН}½ {?Ì­-ø×¿öžÏ𵯗û\‘–†Â#OÀÙ£uìg¦nsk þûÉÿ µFÃ~/––)ohà ¼ý£ïÃPô ëQžI«7äá—çðÎɲmâÊa¾ØÂ+÷ø\ùà<Ü£.^LO¡\§Nàk_/Ãôä$N¾´;¾UɦeÊW©Tèû´“ÕƒZ£ÕaýÂv[Ìíxóð‹h®?{Ïg¸òÁyØ:-pÞFßï;Êꜹ‘¦í8~ ;¾UPæ×¾^&ª®,îQލau.×î¯}½L´ÿ½fi40·¶`Ç·*qåƒóØñ­J8ìýèí´bEZ:ö~|zë&v|«ÓS“øÝ¯/á¡Ç6£¬rO§N ªö RÓÒa1·ãÓ[7ñŸ^;Àç_­ñ…ç¶CØv¹¶ª³5¼ñ¤7äó÷‡øã=5xèÑMh”kÂ>hkjÄÊ5zÜv éïßÄCn xV0³ÊmMç`·}†¶¦F47œÁêµëñÛÿÙ @tüÈ=W¹g,ævœ=ú*þõïß úŒcž FÓvÅã©O¨kFJž€ïG—ð9'l“ðó•Îãk_/ x¦ Û̽'ïÁ|±E´Âg”T›„eKÕ%|¿0}˃_ûz™ì3Bîý#5V…} ¨X™ö~öï³G_•|/ u#|û_nlŠõåR"=Y]zhsw =Ó'D­­Ó½!VóUØ:-ÈÌÖòÒMÛ°³²Šý¬7äãHC,œ_Uµ±¥¼e•ó!rNž¿„6ÀinÞÓ?‚ÕŸÆÖiÅÜŽ-åhæ,é1å=¶c'¶”WÀhÚV­Ñ¢¬² UµÙ:™|…ÅF^Z[§…%Fz«^tú+—©¼×/¶àúŘ^ï¹r‰éAL_L;¹õKµÛhÚÆ–É­K¬l®Îåà–)¦1Yk·T;¸–E–Ô}ι¿2õ†<¼pì XÍWqü@MÀr 3ËǤ[—V¿±+& ·íÁÚ*6ž¤à>•ÔËè¯âÏþ\qKáý#Ô¿ð>”kÂk{_9‚æ†3hnðý-Õ·êl-½U‹¹{Ñ´ ¿¹ð öz°ñ#÷\ ÷žÑòqòü%˜[[dŸqÌs!”ñÇ<+¤ôìYÁ…û,Ó‹X×>Ý5ûeÛ >ÄÞ)Â4Rm–-U—XÂ1ìÁè™ ù&ödVNž¿·Ë%Z&·mÌßRï%¹÷­P.¦ÿåÞcJžéË¥eôi´hkjÄîê}ÐòÑÛeá½Ðªj_Ff¶ÇkŸgo|µFµF«hÚ]j3ð™X’‚†¦uØûñæáa5_ ¨G˜–ûY[§[vùâqš[[Ø€Ù⺠ԃ˜¾„òk·”n¥ÊÓ·ð:S¦˜Béa»•ä­ª=ð0bârãs2ûKªjâ…coð›sË—ÂbngšÛº,((6JÊÂÕ§œ¼rãIÈÙ£uì}¢¤ÞpêXêï¡n¶ìª@o§Vs;¶ìªí;±kn—“]ö—Ò»ZãWêl ïG_Néñ£ô¹Ê=ÃÈÄì¹ 6^B råÊ=+„Ï"9½02Ùº¬Ø]½Ot™—Ûæ`È=ûäú˜ûþ VsM8ùåÞMžQ§â2•¼—„Ï%2 ïÃPßË%eôé y°ù ½RÓ6\omá=(šÎÀ|Ñ7ÈäŒ<½!}3³ruÕ•A½ö>ÔUWb§ÿ‡Ñ´mäÎ02å}|¥ýN,-ó`ddcò9ì}¼´ŒLÇÔHìUœ—K­Ñ¢°ÄÈ.е“+)} ë—j·\]²¹:Ÿ×uÕ•’/01=„#‹\Ÿˆ¡4@½ÕÜŽºjßrÄNÎ ¦Z£e_àj‡N½¶¦FŸUÍÏÖ‘%Xáxr½µ… nϬ¡èïÚ¯šƒÖ±œáê†ÃêlßÒ½œž…×έcT0{C#¡wa=rÏ•pï‹ÿ`Æ¿Ô3Ž)7”ñÇq¦¹¶ ŸEbzÊTX\êÿ±Þ°WØf)YÄÞ)RãGªl©ºÄêŽÁ`z㾤äåÖ£´/YÄÞKB¹ÅÞÂþ—{)}¦/'T^¯7¤Í-}î9 xæb-7¡·Ë‰³Çê°»zß’ÛϨXÌí°ú—¼‰ÅE›ªÂúŒ$t:gc-Ê’g9Žóh¶YXv"ë—ÞK‘A›ªB‰69¤<)±šˆ.îQß Mº±âæ×¬Û唜Å$ˆDGoÈâøPO¢µYXv"ë—ÞK±ƒfú‚X6ÐLAK…pfú~OŸœÜ`(uæ(刓ë`79¸TC=ýÈÈ$朙qºÛxêÄ‚6Ø“+1¥ú‚+ÇõÖIçÉJÚªDgÂýD uˆŒ…Œ¯`uÊ}Oœ•·-šù”–!ç4X®?”ô‹‡ÄbNs¹Ï#%>( ¸œ!=Ϥœ +ùNɵp+3Ž¢ "Úè“s€«¥Î2õ†|4ž:ÁûŽë`79¸&Ãq*É=²Ï•qº[jÚ!oAÇÔåä Ç©j$rŠÊÈaë´ ¹á ëkJ©|L:¥I¹rDÂ!¶ _ÁúJJràZÛ¢•/”2¤î©|̘PÒ/Á‹Õ!|5žz=ä2Þ<ü" ŠÐòpöè«Au$Ö±±/׿hŒS1"á(š B!¡÷ôq÷Cq7³6ž:ë­-Ø]³õµwöè«ÈÌÖàð[õ|’Ý5ûÙ°Â<ÂÏÌ‹š¹iÛšÎaïá#!ÉÁýÜÖÔ·Ë !zC>¦§&ñ~ý¿óÎm¬Ÿ#æ×±Ñ´{_9‚ãjÌE7š¶È&…PÀçd™)«ªö «ãjXTn——šy²1rMOMaEj*èœ+;àóCWXlÄÞWް2‰•­¤ÝBl]VXÍWa1·ÃírÂb¾Š²Ê=ì÷¥~‡¨L™{^8öFÀX`òë y²÷‹êKL[§ûwmFUíË(«Üƒãjxåò;®Þ¾èþ/=SƶQ¬"1¾˜¿™¾r»\}aë´ðd™¯[ã÷ÕåsöÊmSóÃÛ_ÌgÍê5˜™šfû·4A÷ qáöáoÿçEì}å‡0š¶ñt²eW…ì=324·Ë‰Â#; {èÔÛhn8#{Ùº,l¿rLjp\Š ©þ`î©q%5æ…÷.÷Þ‘ó·)uÏŸ=ú*’’“17;Ë+ƒë”K]u%Ž44¡®º¦](,1²mŽgæ9€7n¥Æ½\ßKÝsÂûà?ó˜ç«P§Â²Î}•[DŸ‹bÏ 9{;­<™Î­ã}–ëáû“y‰EBÏô‰9À•rƸ¥¼e²GÔ!¤ÐÁ¤XÌ,×Á®”Ü2…N'…&W¤¦…í`4P¶>˜[[ÐÖÔ(ép”ùŽqf)·ìÌ©êЗv^ÛÄdg> =G±*9'ÏÜ2¥œƒJ9Äfô%%‡ÐQw°òCqr»ÐñÌ16#¿˜snrà<ÏB­?¶c§¨#åú*vrÎßJœ¥+íP6 Û(uï1ΡìýØYY%yÏo)¯Àóß}M¢Œ~XÍí¼q(çŒ_l<;g¤ÒIìžöó9˜s{1½3úà:l–/õLçÊ(u¯reâ~–ë©÷'‘X$´Ñ'æWΣÐ9%ƒÐÁ¤œƒPöoŽƒÝ`rxFù•˜áâñ‡ ×Á(W¶Â߯6£i[–¨Ã×QëÜ“¹.æ3'žR²K9c^¨cÕPaÊ” Rú óÐUâ|T©“ÛHŒ/.á8)'Îò„âlݧ«@GÊSS“¼2øé¥û&géÁä Åa³Ò¾å:/gf6CŒ¿Ô½¯ÁuÎr¨œ3~±ñÌÕ/sÏ„âœ_é=ì™·P§òrÏŒ`ï2¡LÂÏr}£ÔÑ?ß$´Ñ'æWΣ˜sJ ÐÁ¤”ãdîƒë`WJa™\§“‘t0*•Ç=‚ëì˜ß&q'Ëâ‘圪êÖ‚:•sŒN»m–m‚– R±åôïkßQ·”óÑpœÜ.t|sŒ-9p–n[¸ÎÖ¥œ¡ëÖÂrL¬ÄYºÒþÅa³°b²I!%ƒXCþ˜­uÕ•Ø]³—Vο˜~…Ž„C!Ø='D©s{©ñ£D©g”Ô»L(“˜ŒR}#|¦-ôLÄrÙ¢[§æ‹-¼ýTñâSL¶Pò67œiWšÎàHCSLÛªì{܆Ö!ç£ñ ¹l!ˆð gZü±,]¶,{¿hø™Ìl­"‹-›R KŒ0íª@o—…=”’(–ãÖàÈù(AK z¦- h¦ ˆeÍô±T ™>‚ ‚ B”„6úB‰>ÁÒ°X,F´PË Å¿ØI^¥ˆé:}®ž”¦ §Ÿ#*E¤¢¥„Ò_Áê\ʧw ‚ „7ú”DŸFiX +ZH¨å1žæƒyœg<ã‡E@èi>}°=c!I¢•"œ¨R(L‘ˆFAA,Œäïÿûß%ƒsÚ‹Ñé¶F ‡½öžÏ`(zîQ'îák_/àóJ~öhV¤¥¡éïß„ÛåÄJæ‹-ì÷…%>¼ÇÔÀPô ÚšÎ\{óð‹h®?{ÏgøÚ×Ëxå–>3LOMâw¿¾„‡ÛŒ²Ê=¢r¹G]lÝg¾Š¯}½ Ó““8ùÒ~è¿’ï÷о]q€ÏK}YåÔUWÂírazjmMç°"-æ‹-Ðò1dïgÿgŒ0·Ë‰_žkÀ;'ˆ!{?Úšaë´àæå èíÆŠ´4QÝ õsü@ ®|pîQÏÁêÉÿ²_´¸:`Œ¡,FÓvѺ„ú8{´+×èqئ¿=º‰W Bã©hk:»í3´55¢¹á ¶ìª€­ËŠ_¼óx¿þ4¯.)ý8ï£ï÷ýäöû]“×aµÿýä…Z£A㩼¾ßñ­y—ÂzUÐ1É„LS©Tèû´ÿú÷oJ¦åŽ®±&ìÇ`mcêdôaný7üëß¿‰ÞN+ïºØ˜]LÒ“UÈ^¡Âðd|< Â%=Y]zhsw =Ó(‹>!eð9­Tgk‚zÃWâíœAi´ÆëºT‡Pêä½ÔË!å]ÿ?Ô“ÕÒÈLyzC>ÛÆ‹½Ðó¼’(\ýåÚûÊ47œAsÃì}åˆhybšÎHÖ%¥&Ê…ïüüñ1ÁCªï¥tÁ-W¬ÞP£~õ¯$ƒT©¨r‘R‚ ˆÅ!á>¥Ñ'ä¾vM̺\ä`ñ£…pe•òR/G¨žúƒéG R{¼”Dé&—ÛådÝ鈕'AL—\‡¥áD% æíßÖi‘õt/U¯Tô‹À6(‹úÁEi„¹¶IE# ‚ bGÂ} Á¢OÈ}ì7M°È ‹-Dè=T/õ\ļëw[oIF¨Ò”÷~a{äü *â ¦Ó³GëØ°OÌ^ÊHD…Ó]Ai»æËšà!½C‰.Äê 'ê‡\?†C*êsýÝ¿;÷‡y‚ –*ä§/Á‰÷ÈDpÈÓýâA~ú‚X*„ã§/%ÖB £°„<¤':äéžXê¨STHY2ëJÄrÅ9•øÀh¦ ˆeÍôņm2´©ªX‹A â7C3±Eä ‚ ‚ D!£ ‚ b@FAAÄ2 ¡>¹8ŸJÝBD">i(qN…>˸ñmC‰ù*•6ÒñmÑOJÎhÇœ]Œ˜¶buŠÕ«D–HôU,ÚÌ­;\Èm AÄâ“ðFŸTlQ¥1CŸ4”8§Âø£ÜÏ¡È!ß4Òñm¹òE"Æl´cÎF:^±Rýˆµ+˜,‘ê«Ån³°íá¢ôþ$‚ "GÂÇÞåÆ ûU.v­Z£Å½…ÅFÑx¯RqyäâœJÅkÆHeä0·¶ÈÆIeøôÖoa¾ØaÖ¶óAc OOMá—çêEãÎNONJÊ;=5óÅXÍíAãïJõs–i£0&®Ñ´ÇÔÄ¡•‹5|ü@ ~ÙØ€¶¦FŠ„ùb šëÏÈ–!W8^äÒÊõý§·~‹øá+¸üówÙø³\”Ä"vØû%c§¦¥óÆ‚0Ö­T{„ã_X7¯\¾æ†3±t•Ä –ŠÍ¼XD"ö®ÃÞæ†3°šÛ¡ÎÖ"G§)¯Z£õ…·ë²ŠFUQk´¸Ôt.$>Rå…*W´Ð¥'!=™Nï‰Íqæ¹dYÆÞå"ûU7TË–A*Þ«\\^@:ΩX™Âø£ÂÏJ⤠áÆ@•‹oË´¥ ¸T2îl0y‡¾´‹–+cV·b:Æ¡•Óƒ/ư¯<&äšÒ2¤d%†®\ßsuÃÄŸË,q°ÁÁêŽw±öqëcþv߈ÅÒ 'X.6s"á°÷ÃíòùVd %›9ç^ïí´†$ÓBf|:kKDâ°¤œ3‹Å~Æ ƲepØûqöè«(,1¼”Æ,åÆ9 Vf°üJëô哎*Œ;мÁbâ*i£X}[vU ñÔëp:±÷ðغæ_~bñ’™¶ðô¥°Œ`2‡CWØ÷P²ÉÄÆŸ=ÒÐT?¡ô•ªÚ—q©©1 .©ñ.UW·\É•Ã-Olü„›9žQk4~£Ý7#zè­z¾YÕë­-Ø]ã‹}ÝxêÜ.'Œ¦í°uYàv9¡3äAoÈÇÏ~rIÉÉ(,öÅgÒê yØûÊœ=Zç ©è¿ÎExÍÖe…ÕoX3zöÛí<˜qb¾Ø£iªj²×§§¦°"5Uµqü@ v×ìÇÙ£¯bï+?„Ñ´×¶XÌÒ±p–ÔLŸXìWaÜPa,[.R1NƒÅØ‹s*V&“–ÙÄ.ü¬´N¥zPV©¼ºu†°ËURƒ8X¼d±X¿¡”±ÝëûÏnßâÅŸt_qƺ+?”ú‚Ý7RcWIœ`¹ØÌ‰w 6ØŒ²Øì(wv6Øu1}r¯9ï‹Î|se›åÎX ‘šù%"1¡ˆD†0íª@sÃihеHDœ‰ˆs;¬~#îìÑ:¨5ÖˆjNáL±ðšÃÞË?ºuTÕÄþ]›qúâGR#BñcµÐ¨áD*×Ï–°®…Daü„ #M0ߋɸÐhñä_Lª-‘‘)#VÑ7€ÐƵT›) ADlIx?}BßQB?YmMçàv9Yßa{?z¶.+šëOÃaïð;%V&ã?kÈÞ’¯*áé9ÆÑ.×wÖÞWŽàø|ÿh¶0>³Ì­-<]LYšÕk035Íúà*5m¨€h]L}Œ¿®/º?ÅKÏ”õí¥3䡬rë'Ìbn‡Ûå„Å|Uô{&=غ¬¾Ê„ºÊÏÕI[Sc@™ ÌéF®Ìs;¯Ïõ†ü€Ïr~ÉÄò3é°§1¥ô$5vÄdk'ך˜lb}Í`b÷^½¶N ^8ö_´Æ÷ƒ­Ó‚ý»6£ªöå€{MxÿˆG¦­Ü²•¶ƒ ‚X8 môq£¼_†m ®ºUµ¡ÎÖâ…co ®º‡N½æ†3hn8ƒRÓvè ù8ôV=ލa_ZλÃèïþ”õGUV¹Uµa5_Ea±mM¼káb4mÃîê}¨«®d#0®˜¶qýbí}凬Ï,s«ï%jÚås4ÌÈWñgξÜO@©i;¯¦\a] L9¥¦í˜š˜`õ¶Wse•Ul¹Uœ´B„ú=£ ¦-rzë_©2d\™ðú|wÍþ€ÏŒŽ…uq£¦H¥_‘š&©'¹±#”Õ$×Ü~a h1Ù„}Í–/qTÕäÕ»³² ×/úfãL"Á™¶¿yøEyã“Û©ñ¨ÎÖàxíóìiWáÖ"qYŠg"Ièå]%Ñä"0׸û¦¦&Ù¿Å"@H]“ƒ)_*Š…’H"\ªj_f#=÷Õ½yøEXÍW%£I(Š Œœ!Vn$àF­*[,†’ˆ!âºà÷¹Ø+K*??N¯˜žäúS(«’èRzÓ•\n½[vUÀÜÚs«Ïˆܨbí‘*ßÖeÅîê}ì2¯\J#¼AÊIh£/Üh s;êª+±“3K¡[gðGÅ÷c5ÍÖi º9ÝçßJÜ÷•°r‘D¸}t1ò]ûU³lD©ºä"LHùöRº9_*½’¨bý½»z¯L±¾Ó…°ÏÅÆ€ÜX’JLO±#—O*úÓ/‘Šâ!¬W­Ñ¢°Ä½!_t¬:ì}lÛ•D©ŽÇÂâRl)¯€ÃÞç_¾ îûMÉ=FA(cÙúéãîµ#[§Å7[%3+ìóPÇÀR3n—gÕawõ¾%{ús)ûé#byŽŸ¾„ÞÓ·ô†<À”H| KŒA aŸ‡:–ú˜qºPP\ADb²lgú‚X~ÐLAKŠÈAAAˆ’ÐF_¤"0$â%ºÃBô!Œ€Í(búе¹'¥c½BJ®`ò,Df‡½§N°ÿ"}øAL6¥mŠ·¾ ‚X®$¼Ñ·èÀ|òÂb#ÔÙšX7)l„QB‰®±ú‚}  öi”ȳ™ÕÙ”š¶Ãír!3[‹ÂâÈîËGÁÆV´Ç ‘8¨STЦ*û§NQ-8_¸¤¨ ¸>mª Ü*ÃÍ·Ø:MKVžO›ºð| Ñ)y–ÜA¹bÿm]6JYeA*šãÒB.Jƒ0ªƒ0ãŒV*òÅ@¬]Rí`¢600˜ÏReHµ¯¹áŒ¢ú¸Ñ0”DŸÊpöhvVVùuÝu#”¨*ÜzC>kh„ñ!X_XÌí²ý+'«0úÈÙ£u¼È*Lô’P"n0¨5ZMÛ|Ž ý‡Z¤"fˆµSX¶0JH©i{@D¹ûŽ;„^Ùåä#–ùê$ž! ‡sÊËî¹ 7_¸¨W„¶GªÓ9 ç”o[|¸ùÂ%\Ý䦫°>Sù|Ïo†f”o!:%"OBÏô áFèp»\¼ÈmMl:£iŽ44ÁâÁn)¯à¹ú`¢,¾hLè´½‡ÀhÚ†æ†3¼zõ†|œ<‰u:+Õ©_˜V•@X¿T©v<¶c'|–*C¬}ÿôÿU\Ÿ0Öò è ù¢z“aï+GØ{_9"šF®¸úÊ4ô¥=hÿsë/a_p¿ UV¦nÆÈû,%‡œÜbH•!Õ²™(!Lø:F×§/~«`©VjlqÇ ÞÏ+_*A=–”ѧ$BƒRÿr=„i”Du¦UÙ ‘ ¤ÊkŸ\T’P#%pu"%ƒÛå„Ûå”LjT•`r(i‡’½‰¡Ê*Œ>"Ye!r+)Cz,Ì—-……ùq¬<¾ÜÉÈ0¡D·!‚ ÂgI} Ð.¡Du¦U•@IaÔ±(ÁÊ`‹J"U÷À7ú„˜ÞÅd8{´UµQU{gÖ…$§PŸB™të !õ¨ã%TY…ÑG„‘UB‘#X¤ ¹2”Ê-Œ.ÂÈ¡¤<¹/¡êŽ ‚X8ä§o„¥a©GtXlHŸD¨Ÿ¾ØP¢MkÿY¸ùÂ%T¿gÜýg¨S¾E>ûÖÂÕM¾:)¬½yáæ[ˆN y("G %JÃRè°Ø> ‚ B9dô-½!Oñ«PÒÁ!}Dx8ìý¬{#Ó® ÙÐ{Ü%~‚ ›„ÞÓç°÷ã}ÎÉ?f“Ð,wïãúâ}‘ƒ¡:Çé¬Ô>¬pß.ŒbòDÚ °YBÕ #ûBÚ©t AL׌cq¥m‰—1Eć½n—/Öò›‡_ 8œÃkß›‘ _$ú/I$Y‰Ä$¡G“ÃÞæ†3ìKŒqƒ"tËuÒ\¥¦íðŒ:qöh›&œ‡[8NgY””/Nm9ÄœKµ'„ë|™qZJëY gÐB]3ŽÅ –¸ÉQ2!D­Ñ`Ky^8öOà;Iÿ~ýÔUW²Ñ]˜§Nà¥gÊý‡A‘#á—wË*«Ð\:À—×O×…†pó¿ÇÂL:®S[[§…çtVÊI-óO6Ÿ3èCoÕm·üªÚ—ysm¼pì `Ë“rx+t¶Ëmÿñ5¼r^8öF€c^<çÁÇÔøÊå¸Þ¶5^œ/;ìýPk´<ÇÊVóUEŽªÿ½ÿÝ–áv¹xŽ”•:Vs|,Õ'¥¦í¢i¥t}öXÜ.',櫼1+æT:GÉBÇ㌞¸c`wÍ~ž3saz±ñÀÕ›°îÞNkÀu"ºp—vÿŒŒsïªÚƒ>‡ßÅF´55²~É™vŸ;q&’¬Db’Ð3} …%Æ€_Ÿ{¬æ«¼Y ½!/{VóU?PÃ3 ƒ9?ûÊœw:+æpV,ÏñÚç±»f¿¢¶qË:Ì5•WàúÅ\¿ØSy…¬Ã[1g» ÂräÒ2m*,1âÐ[õ¼eÓxt¾|½µ…÷ƒ`KyÔÙÅŽªsá¼rÃq¬,åTYLÏ´Rº6f…N¥Ãu”,t&.·.nz9'ӌޤE õJD³GëXÃOÊ?#ùU$ˆ¥Á’0úªjh…%FÖÿ³Ÿ©ªö ^8öšëOË–+çÔ–qþÌu:+ö`æ±uY±»zŸâeQnùÂò–]èí´ÂjnÇ–]²f9g»ÂräÒ Û$õ}¼8_îí²À´‹¯‹PU3)‡êXYÌ©²”ž¥œ+AÉÞÅP%‹éŸ»¯R¬l±kÌg¡Þ„u+Ñ+®·¶°>M…ÏIæð×÷&ùU$ˆÄgI}9ÓÕò`õ;ó}óð‹<'³Á Ο…ˆ9œæ),.Å–ò 8ì}¬! Ü2c˜¨³µlìU¹³ÐÙ.ƒ°¹´Ü6?PàT8Þœ/[Ìí'Ãq ,t¤¼ÇÊJú$˜®ÅÒÈÕ®£dqgâZÔUWŠF¨á¦“K¨7aÝRz%"‹Ñ´ 'Ï_‘†&Þ2ºÞ‡“ç/á…coàHCô†<ihBYåz«‡ÞªÇÓ5ÑstODt!çÌDÜBΗcK¨úO„þ"ç̱œ3Kç rÎLsfbIAΗcK¨ú§þ"‚ˆoÈè#âr¾[BÕ?õ!ÅÝI/Ü3Êfo&fž/\&fÒJ·Îpó…K¸ºqN{0VëÂÍ·‘‡–w ‚X6Ðò.AK…p–w—ÌA†P"DŠp¢DÈ!'¿Ò‹}!ÐUNdë µ‘î ¥ã)õ-´ŒpÇ}8§dÅú=”è%AÄⳤŒ¾P"DŠp£DÈ!åÎEiÔ&],¢DD²ÎPÛé¾e’Ò×–]0·¶ÀÜêsÖLA,Œ„6ú”F?FàæçF5€°¢DØ:-á…‘Äê– ‰$Œú!Œ¾‹(B”èVAªÜzÅBF…Ò¡Œ§`Y””Ïm³Ø8Ï#CL'rãVJÇ×~Õv¿ËEûÖGÁÆLa‰zC¾hÛ ‚ ˆÐXò.[â1J€­Óâ‹KKV!Á¬0íª@sÃihеH niÜ.'ΫÃîê}¡ôÂ…\¶±T ˆ"Äc”€ÂcÄ^bˉÂ#L»*ÐÛeÁÞÃG^`´‡Æ4îQ ŠIGA‘bÉÏôA0ÐL!‡:E…|µò]O}î96*F(3.w'½pL({êÓ“°:MYŒ]ìØ^H[¢%S,Ú­~‰–õLߥ¦s’.0äö)IÁ݇ôé­ßbå{ú‘¹&<µJ¹áä ¥ÍbõqˆÕÏ´7TÝ.'šÎ@ç?°«ýWÌR~f¶O×ßÃ'§«…p©é y†*œ¾søÝþ0ººÔtÎï^g>?wŒÉé×aïçùßÛ]½OÑ8ˆäý@ %%É÷"Uœ~|þïPò)5® =9´²#Ñ–hÉ‹¶D«_•„>ÈÁe¡…0Îvö~||µçtv!Ntê€WI›ÅÚÌ.WO¡ÊØxêu”š¶cÈÞæ†ð]‘,[§Íõ§QjÚϨgÖ…\F¤,›[[UáöÃß_Œ‹skK@~fŒÓ¯ÃÞ·Ë…RÓvè yh<õº"Ã8Aá#ágú¸ÎbÅ K9ŸevÔUWâHCêª+aÚUÂ#ëd—ù_ [§ûwmFUíË¢Ž{™ï„‡™¼ŒÛªÚ—E!3Ît­æ«eŠ9È ÖÆ)®˜]Fv®cc®ŒŒ_1§ÂŒï:£i{º“Aè XÊ ¯­Ë*y­¹áŒ"çÊÜY%á¡)GÅÍõ§yÎw×ìgýˆ9Æf>÷vZú”¡­év×ìg (½!çPš9|"”I¬MÁ‡sÛNß@YešëOófÚÜ.W@859ýŠQPRàXúÐ[õ÷ƒ­ËŠË?ƒýŸË¶_¨s±ûŠ ‚'¡gú„ÎbÅ Ë9ŸÀº¶Ðò`õ;»•rÏÂEoÈÇé‹Áê/KÎñ.×.“—q`+å yKyÔÙš€2¥äk‡œ]îuÆ(঑k×wvISÌ!´”^©kÿø£ï”ÁèS(¿Þ‡޽«ù*ލaë—sT,åüWè„Y¬ aŸ2\jj„Õ|îQ'ÚšÎ8”–’IÌ2W9GÅáö·Ï¸.Tö>XÍWy3~RúåÂäkkjÄP§ÝB݉µ?˜Î¥ú€ ‚'¡>¡³X9G°rÎgÛš±»Ú7ãÒÛe i/ór–rˆ+æ —ëÀVNf±2¥ä†Ò¡Ý`iäœýrg÷|3”˪ÜvNxƒ]ã–Ám¯Ð©4ñá…co ¹þ´l¿p-¦wϨ3  )Ǿ=q¾3fI]èPZN&)GÈžQgHŽŠ•öCUíAžQ]XbDUíAÞŒž”~¹0ù^8ö;&„Ž¥åpKµ_LçÁyG‡½§N°ÿc^¨+¥\òÿ8XLùÅäS"3 ¯´}¡ê‚+ A‘'¡¾`Îzu>«7äù–‰JŒ(5mÃõÖE{Œö>žÃg)‡¸Bg¸âe‰;Å+SÎA®\;‚9ЕsšÌIµ©¼ÇÔàìÑWÙ™—PB‹Šseß §Ï ÷›‡_ Ú/@ Ãhá¸bœ0 ËêSsk ö>ÂL;+«à°÷…ä•Èl_°áîÙT²_™ ˆÐ!—-E"åPšë¨9u“H¸l±˜Ûanõ-³;ì}èí´ÂT^Áî º7”»Ÿ”™nîgfo«Ô¾ßãjxû?_8öoß0³Ï—;“+”ƒ1ì¸û1ëª+áv9ñøÿ¶ _tê?u-¾o”‘¯ìOþ n×}ß6 ÁL±½¦Üýʱp¾ª ŒNç,œS¾Wèê”o‘ð̡ϭì=š¯NÂúLåó3¿šYp[¢%S,Ú­~‰ÂqÙ’Ð3}ïDÊ¡4×Qqa‰‘ ¾Ãì_²÷³³ÛÌ^Q±}­Â4Â=  zC>Nž¿ÄÎx ?3e1pëîÿ”Ú7ÌEJ.Rû‚ÅÚÉÈWP\Ê~æîÁÛ³)µ_y)“¯N’ý·˜èÓãG"zPOD”ñíI;¸ ¿}zC^X¾‰èÀÝ÷¨¤_ÅŒ±=  Ì>Pá~X9cˆ¹&Ü«*·oXNá~L.Rû‚¥äîÁ e¿2A‘#á]¶AÄ#FÓ64ן–ܓʸáaö;êšÎáRÓ9è ù°˜Ûaáì~–«C¸WÕ=êb½ˆí¯“Ãaï Ø©7ä¡ÑÜŽé©)¬HMUÜN¬?Hf¦Þ‡fÿžMÆ-SŽp¿òR&ž–sŠ—w‰Ä%á÷ô-$ ÃbF` #˜|J£Š„Z7’ãß/R„ EI9×[[àuFïןÁÓ5ûب!;+÷@oÈÃ¥¦s²ÑC”D;Q‚°œp#Wˆé$R‘,„e12 #v0×ô†|^tn{ýÆ+‰†ëßPì3=âqïíé‹Ï~‰–Ýž¾…FaX¬ áœzãʧ4ªH8õ0' Šxóð‹sn$”`å0#ŒN³…XÍWáv9aë²âzk ®û÷Dµ55Ê[‘:=(,'ÜÈB"ÉB* ‡ÃÞóÅ–y·D.'O½†Û)_€„rô†<žSxág‚ ˆpIh£O%€{*ì¥gÊXs;^z¦ ¯þ_ÏÀírÂírâø6„Xáç³GëPW]`X2ÔÙZv–‰øN£1§Ô>¾ÒÆFKà–í‹‘ÕbngåcòÿõŸþï<ù…„R_l)¯À ÇÞ`å“ëø^~·Ë‰÷ëÏ ®º§NðdgdyçäÅ›‡_dõðæáÙS€buÔUWòäfÊaûáXÜ.',æ«’ýÌÝUXbdgJvVîÁÀ=ŽTcz¶™É#”ûø^$Ž`ˆÉÁ-S8þ¤Æ®˜,Rc—ß._áF£i»9ÿºÿô§R¸r?P0vƒµYxÇK½!§gág‚ ˆpIh£O,J€T‚-å(û“=aG`Ä#,äÔ ì„“ÿÿ³ç%£2«Gid®N„é…'ÅN2²se‘ŠÄ¡$2…0ÚóYoÈЛ˜îJMÛÑÛea]œ¸G}cA±QöÔa–Æ·é|wÍ~žŽ¤NBråv QxòSn¼qu!6þÄÚ ±$Xô ±(\Ü.'Ì>,ö>˜[[ÐÖÔ(y:Sx¢Ti›…(ÇA„8 mô‰E ˆF@<’€Üé;©“orÑ0‚¹)7*ƒ°Rî>έc ?±ô„ÁNre£m(‰L¡¹º'Çn—zCÔÙZôvZfN„eغ¬Ø]½OtyVªÍbQ0Äžü”ë¦L%(„‘f*É+…ƒAçw†ÌÚby÷¾r„Ý{*Ö·Â{OI›¹m’*— ‚PNBŸÞÕû÷57œ:[ÃFž c‹ÀÀœ>3𶉖!<}HŸ¾+«Üsk {òMêÔ›°n©“oL~!Ïg$¸|§ñl[x‡‚Ö#¡—ë­-°˜ÛQXld_úbéÅNJ ”“E‰LmˆP¢71Ô .55²[¤Ê(,.Å–ò ´5ƒÛå乓\Ù”žBT¢áøcŒ pNNÚ:-°uYTÙR^—ž)à ÇÞ@o—ôžOÆ‘/3ÛÊm“ðÞSÒf£iï>Rª+‚ç”—=<*áæ FŸ;¼Ã iK´dŠE[¢¥ƒD%áOï.'b•N.l–E;ñD"œÞ%‚PB8§wz¦o¹ÁÊ ¢îU‚¡7ä4³²$`¢zAË šé#bÙ@3}A,–Ÿ>‚ ‚ B oô]oma}ĉás({—üò•«€ßBßcÌ å… UÆ¥¦sA13Ñ”ÊÀMj^‚ ‚ ¢GBïéc¢5ì®ÙÆS'`lh HÓxêu˜Ê+`5_EsÃEbyhÁÜÚ¶Ëj¾º ç¬be0‘D¬æv¼pì Y=”š¶+–EÄj¾ŠÝÕûâ:,±üP¯}I„ ‚Á=ãM¨pm\ÚèóE 8‡¶¦s0‰ø­cf±7,ŒcWÆ ;~ ‡ÞªÇÙ£u°uYPXìó7ÖxêÜ.'t†< ùãî®Ù½!ŸuáQXbdg²z§^ç•Áàv9q©©f4Æ©/S‡Ñ´{_9ÂFPÁ‰R±»fk r¿Û²«‚W§˜k ÆX6·¶°íê…‘qzj _tŠ—ž)cåÊ`1·ãìÑWQö'·ë>,æv6ïŠÔTTÕ È#Ô;A,“³^ Œ'æ› ˆØ3“À„6úO`g‘Œ¦m¸ÞÚÂú|ã˜É%†Ñ´5«jÂj¾ ½!Cö~œ< uÕ•¨ª=u¶/{uÕ•8têm47œaãîrË``"8–Ñxêª8õí®Þ‡ºêJ6‚CUíAìßµY¶ÍÜ uÕ•(«ÜË(ò~ý™€:ÅŒ¾Kþè L$±4ŒJMÛ151Á¶[LÀçÏ­ ¸”5¹³„ÂH L1D4™™ƒâÀòAK‰„ÞÓÇDãØ]½§Nàì±:—²×™Ù=&-{Tèå?”hRÑ%¤ÊˆD)Ä¢xFA#eHE‘Š"´[Ì!±Ò½J£œAz¦ÏhÚæóÖŸ­aýŽ9ìý(äc¦ò ?P‡½/{…%Æ/ÿbÑ6˜¶N‹¢¨be0,4‚ÃõÖÖx-,1È$Œ(¬N±H"{ÔÙZž^¤¢j„E„É«$ÊI¨‘"‚ ‚Pùé#bÙ@~ú‚X*Ÿ>‚ ‚ B2ú‚ ‚ –dôAA,Èè#‚ ‚XÑGA± Hh—-A,=òÕIXŸ©ü÷èo†fU>‡½mþÙ™Ù>Gè\Ÿb0Ø…\j:‡!{?vVîaÝ+qË×òXFÜï™kFÓv\omÁÓ5ûØòÊ*÷ ñÔ ^=UµÙÈ;FÓ662W~až•{ØôDó0¸]NÖI=Ó¡¼»«÷±yÄÊ’j÷;¦ì÷ëϰmfô €ðÃ8¦—ÓœÜb: ¦‚Hh¦ "ö~¸].ÖßäÙcuAó ¬³x!o~Q´üÞN+.ùî÷¥¦í(,ö…‚dü]>œPjÚ·ËÅ““ µhë´ ¹þ4JMÛáu¢ñÔë¢y˜ô$ó°m9V!¥¦í8{ôU¸]Nž¼:C›Gª,©öqËh®÷hžQ'«Àçó3)) æÖÖˆ“ÓA0¹ÅtL‘ÐLAqcbúô$LÎz11ëóOO¼_½]Ø:-ØY¹O×ìÃKÏ”AoÈCŽ~-l]VÞŒ8ì}Ø]³êlM€CrµF£i ‹Kñæáe–—UV¡eð9PgŒî÷¾²µlýÜFa®#u©<€ÏÒóf$ûp©©Qtf3XYJÙ]½ÇkŸgã~ë yøÍ…_ðâ‰Ëé ˜Üb:„Ükz¦Ïaï—Œ¥,\^¹`JëŒT;žŒù%l1·‡U³²Ðö.5}*©7˜îÄ®+ÕE09‚Õ ],6É*îNz18á…zEì >‡½VóUxFØ{øž®Ù‡½‡`ï+?ä-Gz«û¿÷#—n¶.+Î}gÕ‰ÎÊÕk5_…­ËÂ~_PlT<.ô†\jj„Õ|•' 9¹ÅtªToÏ$¼ÑǪ—B­ &–×bn—}`(­3ÄäS"K0˜e‰¶¦sPgkBÊËÔ-%[¨åH‘ˆú V/SO°1&¼®T×ÁäÖ#VîBu±Ø¬NSÁ=ã…v… )±·ùPXbDUíATÕ„Z£Å›‡_DsÿÑá3&‚õeaq)½U޽ë}ê›ÅÊ­—kD>]³Oñ¸`~TÕÄ ÇÞPtÿÉå),.e÷Ô€Õ|:Ûyz›o²e‰´¯°ÄˆC§Þ†ÛåäÉ´»zšëÏ@oÈÃõ‹-ز«‚Õ»’Orr‹é4½D¼±¤–wëª+q¤¡ uÕ•0íª@a‰VóU”š¶ãg?9ޤäd±÷•#|Óû/=S£i;û]ã©p»œÐò0äßл»fïkë´`ÿ®Í¨ª}™Ý4-–ÎbnÇÙ£¯bï+?„Õ|•—æøöåPU{Ð÷²p¹ØÈ{_9")‹Þ/Y.?P`þ—,‡—+§°ms;[ŸÑ´¶. Ü.'¦§¦pÿîû?g¯í}廡¹ªö ލÁ¡·êEõ°õ)5Ö.ÿü]èÖ`1·³ºû¢ûSÉ1&¼n*¯•›AL®®ô†|É>\‘šÊ+—¹Æ=(ÏLÎú¢E:§½q·´Ë`ë´@­Ñ'ØÃ[Ê+ØïL娫®à;DÀ…o{ï+?ý¾°ÄÈ.¿2å)1üô†<4ž:¶¦spº‚Æ–G­Ñ²1Î}ióQUë{¦0òºG]ØYY´,©ö©5Zì®Ùæ†3¨ª=È~·³rÊ*«ðæá≛ù”“[L§áè â%eô©³5ì> æWXföüé*£iL»æºzC>^8öûàæ ½!Cö~œ< uÕ•¼£ÞCoÕãÍÃ/¢°Ø‹¹[Ê+Ð\&ລ¼êl /Ma±zC>ö¾r/=SÆKÏ•‘‘¥°Øˆ¶¦F6ÿÞW~(ZnYåö”`UíAìßµ×[[Øý9pòü%üÃÿd¯\Ð6£ivWïC]u%k•š¶ãòÏßå]ÃÖiÕÃRÓ§ÜXKÏPóê)5mÇÔÄ„ä^7q áX“C¨ó½¯üP²¹{›L»*`õ˜‰`ðÍx»Ç‹¢ì$8§¼ðÌ…tº7ÒMÛöˆ½pì Îß¾ÿ½UÏ~wòü¥€rÊ*÷ˆêßhÚ&š^î{±òãHLn®¼\„y¤Ú¨¤-RòJ•¬}bzgNØruÍÈ#†° )¹¥t*§‚HzyWˆZ£E[S#vWûf=z»æÝ$”l2!3[‹ãµÏ³{™Ô ÔmÐe©½OÌ/Xî¯x.Â4îQÔMÀµªÚ—dË/÷½pŸJo—¦]¼ï'ÆÝ’m“Ó‡ð“×aïW¤‡¥ O®.„cmm~H:M^“[L©vHÕÇ-÷þ°‰Â€g¹¾Ù=mª 3^À=ãµXA Ç’2úô†<ßòU‰¥¦m¸ÞÚ¾ü>»} fÿ¾9#Ùâ°÷ÁÖiA]ueÀ4¾ÃÞ‡ºêJì¬Ü£i;ëÃUä"LÃ̼?PÓ¥¹á OF®,buˆÕ-,Ûbng7d3íÑ­3H¶M¨‡¯´É´I‹ºêJvSµ˜ŒKMŸrcmå"Ý».”[JŽ`ºÖÃ-÷¡G7ÁbnéPH¬ÈW'AÍÙÈ'üLA(CåõzCúÉÜçžÃ€g.Ör'4¶N šÎÀ´«Í gp¤¡)Ö"%4¤Ï¥E43kSUXŸ‘„NçlX²©STÈW/©ßÊA„ˆ{Æ‹>wìí mª %Úäò,©=}‰Ba‰¦]èí²`ïá# /p™Cú$‹”¤øóH¡šé#"®Ð¦ª  Á_(¿¸:ÓÎ/k‚ –Î)oØÏHB3}A$<Î)/œStPƒ "ÒÐæ‚ ‚ ˆe}AAËZÞ%"®HKV!=„m*´L¡ 2ú‚ˆ+rÓUQsÙB±œ¡å]‚ âÇ„ï„îä,ò ‚2ú‚ˆ{’U*Üôbp uî\‚ ˆyÚèsØûa1·Ç¼.©X²J‹[¯ÃÞñ6/´ÌPÂxÉÕL‡ÂëReEsLDCÿ„2V§©àžñB»BŠÀF oôYÍW¥.u¶F4f¯ÅÜŽ¶Ä/5·¶(ª—©'’mŽD™ÁäÖ%¦Ç`:^—“[ªŸ"¥«h•OÈ39ë[ÒuNÓÒ.AD¸,©ƒn——ša¾Ø£iJMÛÑÖtn—…%Fv¦æÐ©·¡ÖøÔ[Ìí8{ôUì}凰š¯âzk v×ìCYå?P÷¨ PU{VóU¸].غ,(,6bï+GÐxêÜ.'t†< ÙûÙüzC¾d¹pü@OfùPW]‰# M¨«®„iW KŒ¸üów¡[g€Åܷˉé©)|Ñý)^z¦ FÓvì}åˆdÛÙ˜t§Nðä`®‹•ÉMËm‹Ñ´MR~aný¶. [׊ÔTž™k:CÊ*÷´…i;s]Nn[—?ûÉq$%'³}Ä`1·£¹þ4öþ€v—òꬪ=ÈkO[S#O~ºö1f¼€ÝãEQvœS^ xæB:èAAøXRONµF‹²Ê*TÕd—àÔÙZz«s;ö>£išÎðòm)¯€:[‹¹[Ê+Ð\¶N ô†|ih‚Ûåä¥7š¶ageŸ1¸¥¼…ÅF^~©rÀÖiAa‰‡Þªç-[ª³5þzó`5_…­Ó‚ô 5¯žÇvìdå²pf¹ÄÚn4mcÓ1ß< mM²eÚ:-¢ma >1ùÅòpëçÖ%Ô#s1–„m^¦ aqÑòqòü%v†’i—°N[§…Õ—ÛåâÕé¼;Ì»&Öv"r xæ›á[ÓÕ¦ª0ãõ<'‚ BcI}{?Þ<ü"¬æ«¬1¢Öh|ÿgkØÙ=1¸3V[Ê+àu±y¹×ªj_Ff¶ÇkŸçlÂürßs¿ã¢ÖhÑÖÔˆÝÕ¾Y¨Þ. Öæˆ¤óµ…»Ì(Öv¦Lár¤Øþ9n™RmkS°ö‹Õ/ÔãýaGÐ~”BL%›L¢}ĤÓ°Nn{<£|£jj’w-˜¾ˆ…‘¯N‚š³‘Oø™ ‚PÆ’2ú€ùÍö¡î»2š¶±3m™ÙZMÛ`ë´àø^YÍ g`¾Ø‚-»* 7ä±ûíö>^~©r™ïÄÊÖò|Kž%F”š¶ázk V®Ñ±×,æv||¥-¬¶3uÖUWbwõ>Ù2Åd+‹+°<º¸z|èÑM°˜Ûy‡B¸maò2׃éâ³Û·x}ÄÅbnG]u%vŠ,ÁrëäêKX§nw-XÛ ‚ "Py½ÞÖIúÜsðÌÅZî¨cë´ ¹á L»*ÐÜpGšb-±@,ævXýKÍDü’¯NŠšsfmª ë3’Ðéœ K6mª %ÚÂ…±äpNyÃ~†D’pžGKê G$),1´«½]ì=|dá1GoÈLÛc-AAÄšé#"®ˆfì]šé#b¡ÐLAD„˜œõb2öÏS‚ ˆ%Ç’;ÈAAABFAAÄ2€–w ‚ˆ+´©*hW(÷Ã×ç¦=ÆAJ £ ˆ¸B»B’Ë2ú‚ ”AË»AÄ=Ž Ÿa79ë é´.A1}AÄ=É*îNz18á…:„¥_‚ bž„6úö~XÌí1¯+X|X9¸¡Ç‚ÕË„ ‹d›Zf0ù•ÖL‡ Ñq¤Úš(u.EV§©àžñB»B »K oôYÍW¥.u¶F4¦­ÅÜŽ¶ !æÖEõ2õD²Í‘(3˜üºÄôL‡ Õq¤ÚnRc‡PÎä¬oI×9MK»AᲤr¸]N\jj„ùb Œ¦m(5mG[Ó9¸]N–ÙY—C§Þ†Z£à{1Ÿ=ú*ö¾òCXÍWq½µ»kö¡¬rލ{Ô¨ª=«ù*Ü.l]±÷•#h3^Àîñ¢(; Î)/`~ã|¨{¨Œ¦mìL[f¶FÓ6Ø:-8~ †WVsØ/¶`Ë® è yì~;‡½—_ª\æ;±²õ†<ß’g‰¥¦m¸ÞÚ‚•ktì5‹¹_i «íLuÕ•Ø]½O¶L1™ÅÊâÊ,°.®zt,ævÞ¡n[˜¼R×¥ú“ÛÞpÛÊ`1·£®º;E–`¹²pëUgeóêä^ ¥n‚ ‚ˆ*¯×Ò:IŸ{ž¥ï ÕÖiAsØvU ¹á Ž44ÅZ$"FXÌí°ú—¨‰è“¯N iÏÞo†f§Õ¦ª°># ÎÙ°dÓ¦ªP¢M޵Š‚ˆ!Î)oØÏHÎóhIäˆ$…%F˜vU ·Ë‚½‡ÄZ"†è y€i{¬Å ‚ ˆA3}A,h¦ ˆ…’È3}KnOAA}AAË2ú‚ ‚ –tƒ ˆ¸BŸž„ÕiÊýðÅÃÞ‚ ˆD€Œ>‚ âŠôdße‚ "²Ðò.AqcÂç1`rÖ ç…`#‚2ú‚ˆ{’U*Üôbp õ š$‚‡„6úö~XÌí¢×¸!»R~8õËÉ%W¦\¾Hë(XÛäP¢[n½L˜²H·-y¸rEC'DtY¦‚{Æ í (ì.ADx$¼Ñg5_½fnmYPÙs;Ú‚êlhìW)¹‚•)מp“QIÛäP¢[¦^¦®h´-y¸íކNˆè29ë[ÒuNÓÒ.AD¸,¹ƒÇÔÜ£.@㩸ÞÚ‚Ý5ûPV¹€ïßxêÜ.'Œ¦íØûÊ‘€´mMp»œÐòPV¹uÕ•8ÒЄºêJ˜vU °ÄˆË?ºu¸].غ,(,6²eÙ:-x陲€ò™2‡ìýr1ùöïÚŒªÚ—QV¹GRþ³G_ÅÞW~£i[@šãjØöWÕ„Õ|•'£­Ë")·l«ùj@¹\Ý2ÈéÆbn‡ÛåÄôÔ¾èþ4@'n——ša¾Ø£iJMÛy}ã°÷á…coÞ<ü"½U¯¨¯õ†ü€>f>OOM¡óæu$%'³}Æín±gÆ Ø=^e'Á9åÅ€g.¤Ø¼A„%õä´uZPXbÄ¡·êyKx'Ï_B[S#/­Ñ´ Gš`ñÏ> ÓVÕÄ–ò ÖPgk`ë´@oȃÕ|¶N Ò3Ô¼òvVV±Ÿõ†|^ùØ2õ†|I¹ô†|œ¾ø¬ævØ:-°˜Û±¥¼Íõgxé¶”WÀhÚÆ'£¯n·ËÐæ•U¬…ÅFÑò·”W@­ (—«[.rºaêzlÇNQ¨5Z”ùebú€Û7¦ò \¿Ø‚ë[`*¯ìk1] û˜+‹°Ï„ýMÄž9äføÖtµ©*Ìx÷ ÍøA„Ê’2ú„3P\Äök©5ZÉåY±´mMØ]í›Eêí²`m~ ªöedfkq¼öy6¯Z£‘,?X]€Ï¨á¶g Çà‘jó–ò ¸G]Pk4׸2Þvˆæ V®rºá§ Ô‰ÃÞ7¿«ù*OLº-»*`nm¹µ[vÍË(”Gª-R}P²ÉÐgD|’¯N‚š³‘Oø™ ‚PÆ’2ú˜™¯ãj 7䱟ëª+±»zŸ¢¼LZf?sH@oÈó-–QjÚ†ë­-X¹Fhn8óEŸQ"gä1e:ì}’r9ì}¨«®ÄÎÊ=0š¶±³h™ÙZI¹¹i„:`àÊøÐ£›X9¤ÊWZn0Ý0mþøJ›¤^˜ÃbºSk´(,1BoȇZ£åÉ'ìë`ºâÊòÙí[¼>ö7AA,5T^¯7¤u’>÷‚ ‚ ˆeä "®ˆæé]‚ ˆå ÍôAA,Èè#"îqLø<LÎzÉ AD˜$´Ñǯj:¹¼ra¹”Ö©¤¬pÓs£F„"ù‚›^iþP"UˆÕ®>ÂõÖ–GØ'¿\û¥Òò$«T¸;éÅà„ê‚ "Þ賚¯M§ÎÖ„ø’Êk1·£MæE¯´N%e…›ÞÜÚ²`9+©¼×/¶àúŘÊ+Dek·P7buJµÕhÚÆ–Ç­GX.s1n„í—’C,Öò MÛd“Óå–ò —Jæ ¦ë“ç/ÁÜÚ"*·ýλÃusu%¦"/`÷x‘¯N‚v…Š"A„ÉÒ2ú4Z´55bwµoV¥·ËÂÆl-ÙdBf¶ÇkŸg_äjj6è2œÔž+[§…7´…cd‰!Lë°÷ãÍÃ/Âj¾Ê«C¬Láìž”<[vUÀÜÚsk ¶ì—GØn1݈Õ)×V1=J•ËÕ+·ýUµ/‹¦—Ò“Ù”ô0œ®Õ +S0¹¦¦&EëV2æˆy^‡½uÕ•ØY¹FÓ6v†‘;«È-ëã+m š–1ô†<^ÝÂtÌŒÔñ5"ûçåQk´(,1BoȇZ£•”…‹”n„uʵU¬a¹Ì5áA¦ýÍ g$ûˆ›N )Ù”È,L#§k‹¹Õµ˜\ÜöëÖëk¡N–2ùê$¨9ù„Ÿ ‚ e¨¼^oH?™ûÜs´¼Ǹ]Nœ=V‡ÝÕûØYN"2XÌí°ú—°‰èMçÌÚTÖg$…,=œçA,-œSÞ°Ÿ!‘$œçÑ’:ÈAø–* ŠdðE½!Xài`‚ ‚ˆ4ÓGD\¡MUA‚/¾>·òçÍô±Ph¦ "B8§(êAD4XR9‚ ‚ qÈè#‚ ‚XÑGA± £ ‚ b@FAAÄ2€Œ>‚ ‚ ˆe}AAË2ú‚ ‚ – ëœ9T¯ýA)ô3— ˆe = ‚ ‚ – ;ÓG¡š‚_ì]Z! byB3}AAË€„é[ ¦&§155 s¹c-A ĽB…™ô$Ü ;†39ÖÍ B@ÎJ5 -5é驱'n!£Àبãž Ÿ‘79é©iLNNÇZ,‚ "Ìx 0›–„!÷\ØùÓGi„ â ûÀ]ÞçôôT¤§­@zú ¤§¥"++ZMf¬ÅŒ9ËÎ蛃sdãž ÿ¿ÉX‹DAD™˜˜ÂÄÄà䟕•Ž,µïßêU¤,³#ý mô9ìýhk:ÈÌÖ¢¬² j6 ݸgΑQŒz`ëìÂÚ EË»öËf”l2ÁÖiÁ×¾^&šæþ°÷‡((6J~÷»__âåÿݯ/a]~!Ö>Pˆk¿lÆÖ?ÞÍ^»ó¹ £÷G`ïù”ýN»FÏËÙßF†'+÷`Â=†ßüªðØ×˰r>@Î} –™…¯íxéê¬yî|nV'\ùî;ÐyÓÌ~fÚ%×ÞÞ. z;-uÀ„{ ¿»ré™™(yÜ„tuVHºã¶IØn¦ìIÏ«?az®^åä$‚ –&cc›|ÖsÇ?¨ÆšÕÙÈR§ÇZ¼¨“Ð&®ÃÞ·Ë…RÓvÀÙcu쵩ÉiܱáS« ŸuõahpãžI´o-«óæu\ûU3î;Ðõ[³d÷‡èí´È~ÇÍÏ”wÍo MzÆð;Ž!ríWÍðzç0îñ  Äˆ‚#ÖåóÒ‚#Æ=6 ´üó?B»F‚#Zþé,&Üc2 ӋɳrŽÕIo—“ž1^×~ÕŒÞ. ¯]Rí½ó¹ ×~ÙŒ‚#&=ch;ÿ.O¦¦8…•ktp;Øk¡èŽÛ&í=®ý²™MÛvþ]¤gf¢ ÄˆÞ.+:o^ç¥çê5˜œAÄò`llö»¸u»7?îAoßo†p‰’Ð3}B¼^ ñ§o¡§« ýÝ6<¶£ [ÿx7þ®î%¬\£GöÊ|Ù×0›_iÃã;žà3.þñX&·!gŽ•kdÈß]¹Ì›A”B(ÏÊ5z<¶c'.7×}½¨üµ¼ôïx¿ûuofSª½éj5+pö±·Ë‚uù(Ù´%›¶„¥;)î|nCFf&¾öõ2Üù܆¯}}'V®ÑKæ‘““ ‚XžLLLÁ>pö»X©õÍþ-µ%à„7úö>X®_…Û=ÿn/V¤g¢èá­¸Óß‹–:ËBö—‡?ûÉñ#îrÓ9<¶c'û|Ké©xñØß"É;ƒø¯¯àÿ¬yÉɾNO™AVÊ6mzˆÍŸ“1 ÷€ÚTà‘‡ Øëþ±ÚÔ"<ôU=¼®^lÿãç0>ø4¼£ŸcÖÙ‹ÿ|ø% |nãå_¹*›W>ŒôÁ `Ó¦‡Ð1‰ÔÙ"6ÍÊŒIôXoñò¬Ì˜ÄØ€šT4êñ¿¸YY¸p¶šÔ"<ôUæ\½ØôG;°éñ‡ðîßý-þøßýG”>ñø|é“Фzžù¼£Ÿãᇠðøãaeú|ÙØï‡PòÐ:X?º†Û­?æ'ŸÂŽo>ã/kšT?8uL`lද,/ð°ñ6ͯÎö@³¢mÐaÎÙ‹Ç{cöÛúýo°J—‹ïüàU¤«ÕèIŸ@êLüA|äêÅ—Î!Ì9=xôQ_zÍ ¿^s²ðøãxÅ­CÇvÜnýglúÆSØñ­g¢;PcìRÒ»€«q"dDÈZ¡Âš4VÍä¥Ú¬*ªC{ĉvã¯èŸñLôÄŒRÉ ¢×Hˆ;;3‡ññù=ù3³³÷ÍÐyüߎzÂ.ÿ¾ÓûN7zû†«_‰¯¬_½$Œ¿„6úææ¼Ðåýùß*1;ë{ˆ7ýý›ÈY£à›A ;“£Ñdb¸¿ _ÉÓ!+u ©3ÃøêW×á+ëWÖææ 'g~¿Wvv&†’]6¬/(Bù³ÏNüðчPºy+`•NîŽÛ(°ý›Ïàôkß…ñ‰­Èðï%ãæÆúüB\ùEû¹Çz 9º\Q™žâ”ùÑå (}Â'OŽ.=·Ùk9º\V!;¾ù ^ÿA`{¿ío¯ÿÚÈÐ î ¢üÛÏ¡tóV\ø—wX£/G—‹Þn¾ýwÝŸ ô‰mþ²6Ì—uâ5ÀÍËóºËÑ墻ã•>‚õ°ã›ÏàÝŸþ-+KÑÆ‡a5_l~ò)XÍ×ðåç=óe?ûžì#CŒ8QþìsØøÄ6´¾÷Nt¾¸~ljpq"A0$œÁ·ÌHNIBVvﻕ+Óy<“ŸÄÔÔ <ã“!‚33³°ÜÅ ã>kü‰ëà=!¾ÙÙ9 ݹ‹þÞ!xÜ3¬ÁÇðe_/Ò3Õ˜ðŒäõ¸îáÞŸbËÎ2hüÇ·ÿãw¬7®±ÆÓ{?=‰‘¡AlÿVeØrv˜¯áÙÿükL­¼|]¾€ÍO>…Íßx ›ž,gÓZn\Ã@/c¨È€YY(}b+êýÆå*].6?ûTPy¬7®áOÿâ%dde^ŸQúч°ùÁó–>±Ö×dÓäèrÑúÞ;¸ùáL¸ÝØî7ø˜k¥OlÃé×þðïjö‘µúŸÿ »›sYOoÝDJÊ ¤«ÕØñ­J\ùàŒwzî1Œø O¦ÆØd ÀürŽ{ÜØQñ –2ôŠ!â Ñô*Jff23Óxߎz066Ñ1< =x0ÆŸ}à.4ºU˜U¯dW •×ë i¨ô¹ç0à ÏÇU$pŽŒbp`8$?zêÌ4äädceN6ÒÒVÄLö¸Â+û1Žˆ_É¥ ´´;³¼Û»HË»q¢Ý8ÁËû/ÞI¸™¾Ñk¼‰;59í_ÊSlºg€/&€µV­Ñ*Ê ´©*”hCsŸ03}㞠ܱcLáÔlJrrVecÍš•V>‘(ÄËcˆ*1ìfa‹išˆORÓV@¯_ ½~%<žI8nܽçÂÌŒ|ÔžÙÙ9ØûáÅZÃdd&†»—„0ú†ïáŽ}XQÚ´´X»vÖ¬YÉù–8>tŸšCŸíKè<q¹ÜwFŸ½o÷†²i4šL<ð@.RÓRƒ”F›H%‹G\ë:~…[›‘„5éÊý`YFf§%bHü¹E“Ní&"zMNNºµ«–{ÝøïtKfÁìì ù¹ˆ'âÆèS²/%% ksW!wÝjñ4øC†T¶t¡¾¤{‚g)Ü©i+Ÿ¯GÆÐ} 91#± íÞ°S“ÓÈ/Z7>ýâBŠÙÙ9Ø~ß/kð©3ÓðàƒyÒ±„X "’ŒLùÆÄÔœcÓ 4‚P†ôÓB§[‰ÂÂuÈÌ^uõÀöûþ ç‹˜}ŒÁ7.ãQ§ÓâÁ‡ò©æûÁq ¢ÇúÉ‚êràVûÿä…$ã^ã~/ü,†õÆ5|ôáEõŽ 9Ф<†{Cƒøõ/γŸ?º|÷†yù?º<_owÇm\xï^q9ƒ¶)šÜ¼\W¡02ä@·52í¹çŒZ»ïùCÖuw(¿–íãŠÉJ9qE–Wç”÷¦€Œ”Ä ´üH,ó:±¤%⌌T|õ«¬^%}pcÜ37†_̾¾žYƒoíÚUÈ`­èa ŸÁâÙÜ­Ênß‘¡A|ùy·hìÚ‘!¾Qéû|K²¬Þ\ùà<6l|T¶ÎîŽÛ¸yùW¸74›Ly|Y¸úÁyÖȳ޸æ3B9ù™0i¶n\ùEŠJÅ„g ï¿}ZT%^0†¬2¢õF{DË»ç„-P·õ6~«Àx—Dføuw|‚ß~x?~eèíÆÕΣhã#¼ï™übå$DŽЦª0>d%Édó%‰7äCË^¯Q" ½ k°nmŽäõx1ü’¿ÿýï?” Îi/F#°¼øm8ïI^à\¬•YÎÄÈÐ ŠJ}/à ÷~ÓúþíŸÏbdØ@…Ö÷þ 7/_ÀЗ_àæåV\ùà©©ÈPgÁzã.ŸÃ_ ÿÁbŸö BÉ@oÈGŽ. ¯ÿ×/|€›^À¦'ŸB+§,FV¦Zþù,îûfËÞýéßâêç14àkgÃë¯áÖÕ1îqcó“ó±{:>™ï³/póC_Ÿ}µôQ|tùZ~æë›+œÇCmÆÌô4~ö“ãxtû7X=uÜhÇ埿‹!»ùãú…üùýù6afzŠÍÇö%GßïýÝIŸnW¤¢ãƵ€ëÝÖÛh®?Ë?—ý~Ü=†ß\ðéîþÐ ®ü"°.lÿ«T*ÜéûÜ'«_/Lߎ+7&ÆÝèý_VlØøêO¼†ü‡J024ˆ].F†±A`&*Y+TÈÌæMÍy1> Ly,Á5Ç„òçQj²¯ìûSá=ÃR“UÈI•·:é=Lâ,•{cj¢Ïµ:+V¤À%±Umfz³³³Ðh³""Gz² ºôÐæîb6ÓwÇ>$yJ7%% %%ÌûÞSªu6£åÏ>ÇÎÐ¥«³P}ðoÐmý»köaCé#¸ÚòsÑüê,lúÆ.<õìsìrYŽn-z6ÎŒß@oº;n£ô‰­¸ÂY>-ö9ŸØŠÝZÀ_ýø-Üü°`|b+6l|˜—îÁÇ6!G—‹ýßû[ß@o7º;nÃøÄV\ùà|€Œë Šx˸÷ü³Ü¿Uº\üé_¼„ë-ÔŸøo x ·›•mÜífÓïÿÞÐmýd^‡ß~Ž]ö-5mEÑÆ‡ñeo7Vér±ï{?¸Û/{»Ñcý¥&¾˜2žzö9tûõ¶¡ôìÿÞÐcý_övc}ÁTüF†ý˜éﳎOðtÍ~lØø>º|›Ÿ|Ší›Ò'¶Âz£ÖíØøÄV^þÝZìûÞÑÓq j56=ùÊ¿ýº;ncã[a½q Ö×°ñ‰­¼¾¼ÊÑwù·ŸC)§/ÿ’Ó—óõäâ/ü:ü3¬ê,l~²åßþº­·±Ñ´Ö®ÁúÑ5l4ÍËXþìwPjÚŠ‡Ý„UúyÝôv£Çz;@ŸåÏ>Ǧ_ŽÌz¡ `mº YÉÀPFK¨ŸˆD'ô1¼jU6üª)7î ;qÇ>³ÅÄèsŽŒbhpDòz~þÚ€ý{JÄ»?=‰ÿ>'ÈP«}ÿgª‘¡Î ’ß÷~z=ÖOü³\ó0ÆLxæi‡˜Lrd¨}r­ò//{æ!”Š”ýÔ³ÏñŒõExêÙçðԳϱß1{ýžzö9üé_¼„+¿hbÇ.·ü o–5]­Fº: 9zߌѻw=·ö´{)0}ÆÔ7áqãÝŸþ-Û7ŸØ†Ž×ÐqãJŸØ&¢SµÌ÷~ú·°uÜÂÈÐ JŸØŠ/{{Ðã7ôÃWJß¼¾胑“éã{ŽA¼÷Ó“°ù—\K7oE‡ù:Ì×PºY¼ìtÿçèr%õ)&ƒ˜±¬Œ8y{•_šôb•?|vÖ fŒÏÆI;ˆ%C¹j!â–ŒŒTäçë%¯ ŽÀ92ÙÝ蛚œ†½OÚzà\ä¬ Ñ“5çžĈc5¢B…Y2föø ÝÁé×¾‹MOþ›¦hãÃÈÈTc ·é"†ä†c ·§_û.vT<p}•.Ý·ñûoŠæeËÎ7R·‹”),ßÖñ N¿ö]¼ûw'±éOñÊèíÁé|WZŸVéù:,òçmxýX¥Ó£hã#HW«1ÐÛ ëˆÃÇ rt¿hã#èíFÉ×D¯+é› µë 6 G·–5¾äòÝrøóùäd~l(×wŽNîŽÛºÃöåöoòõÞÝq§_û.çèwdh÷ƒl]ë ‹£ÏåýàÈÑå¢ÇzŸÞâ÷ÿ† =S›xßoØø22³púµ¿–móR{ŬMW!ƒ³‘Oø™ˆs–Ú€ŒL¯ #n„ÍÊÊÀW k$¯Ûû1î™Xô橼^oHMìsÏaÀþFÄϺ>—<¸ñÀ¹!/éûDzÂ+ûQ_övãÊç±Ñ¿ºï{?޾ Œ»Ýx¿þ4v|ó¬/(Š‚òt[oÃÖq åœVaÆÝc7,šl qˆCFŒÜŒ$è¢äœ9k… kÒT°…÷ ËZ¡B¡Zú·rœh7Nðòþ‹wn¦/Aôšpâzþ`lèSöܹwo_HDËÈLÃW‹[Tmª %ÚÐ"’-êLßû¤Á§ÓiÃ3øˆEc]Ál|b¾ü¼O×ìB Ê 7Ö?PƒðÍ981îqc]Á†E5ø‚>ýæÅ“ð¦ ðíñÓë´¢×Æ=“‹¾¿oÑfú¦&§ñY×ç¢Ç•Õ™i(ÞX~+¼’@T%ñ©¥ø”*Ñšà ãJœÀ7›¦Áßà¸òç‘z… :šé[¼¢Æ+4Ë}Bd…¶D(3} Ÿ}f‡g|JôÚ”"5mEÈâ†3Ó·haØî ‰|))I(Ú°>ü‚b$Ť²¥ËRèÛ±éÈDÝ âêF4 ?_Ï> ÙfïDáƒ_Y9ey×92 爸?>ƒA‡Ô´ÔK\”ž %²F°2ƒöã^y"Qod¡Ç]¢=ÂhÄR!òwsjê Ö‹ìõ,ÚiÞE1úÄ71j4™q»¯§ã¶âaé™™ŠN 3‘8䯇"œ<¢m]Hô ‚P YFË€ÄêäÄ’–Hd´+ÕÈÎʽ&e'Eš¨/ïŽz099-zÍ`Ð-¨ì ÷>ºÜŠŽí(*}EÁÍË0îÃú qøâ›V¿\‡ uZÿåŸ`5·cû·*±J—‹žŽOPþíï áİã[•¸ðÞ;˜p¡hã£ø¼î1¬Ôçbó7ÊÑÓqW~Ñ„‘¡AlÿÖ3ÈÑ­Åûoÿ7<ýü6œšåÆ5ìøæ3ØüäSèî¸Í¦Ù°ña´¾÷ÆÝcX©ËÅý¡A^Zìõééü¯o°ù.¼÷¬þ´¥›·â£[ÑñÑ5m|=·1îÃÌô FïߟÛõE~÷&Tÿ—:\i9«ùv|ëlþÆSèé¸ÖyãccØPú>ïÁøØrt¹<÷.DˆÄõÛ#®…#–"Ë~ÈÑ~¾„b‘ôj0¬F×ÿú"àûÉÉi8GF¡Í Ñe]ˆD}¦oèÎ=Ñï×®]–f.é™Ê#p0Ñ%þòÇoIÎŒmØøö}ïGè鸅§ž}¥OlÃæo”³×Ù f_n”‘»¾8%ˆÜ ‰#G¿V4mù³¾(=¶ ¥þ|¶nÖ‘ð•Î##‹ÓæŽÛ¼<™Y¨9ø7è鸧«÷£hãÃøå¹·}ùýQ˜“0cÊ€IDATq]´ña6Dù·}ÈàKlè];H÷!Ý|RSWHžæ•ŠRI¢:Ó76êÁ˜D :D£Cadhï¿}ë ‹pÏ¿WNIfÿÚ|tƒùýlLt1˜²ƒí¡ e\°´ããü÷˜6Dˆ`¢W¤gª‘‘åkûôôü,«0Ê…#öÐcˆ.4 Ò4‘èD ët+á 4ð›)+;3juGu¦Ojc¢N§Øáùò‘Šü³f§_û.v|³EFº: §_û®hT].º;>ÁGœ™8&³ËK¿Z'…˜Ä1â¸#šv•NžŽÛø”©cÃÆ‡}Q8#ØÈú\äˆäá²r. `[õ´¯ˆ>dq I"$''a•Dä±h航Ÿ¾Ž[Ÿ‰ºiyøáÂ…}‹…£§ã6z¬â•Dሉ ‰HŒ›èQ8«ê¬(ùé‹ Ç…#ª%'ˆ^Nä}ý†ã§OÈÔÔ´èÞ¾ää$l|ô«ŠÊˆ«ˆΑQQƒ/''+n]´È‘£ËEQ飱ƒ ˆ8#!^jïÞX<‰SSW@« Œ¡>;;ÕÙ¾¨}R{ù4uˆ%Å9:=Šü2ˆH’x"± ¶X¦ "¤Ü·HÙO‘ ª3}bäDù82ᇞ¿‹G\ë:N„‹1‚!á–v‰èÃî›é¢»¯/*F߸gBtiwUN6’SB[e‘÷ó-HCKê["® L¯ &nLHNN’\â÷LD¥Î¨}SΘ33Ó¢Ò‚ ˆX@/6‚X*ÄænÎÌ?ã0J}Q›émÜ1K ze. âàÔ.mHÓâ“aS“SQ©/JFŸ¸…š•Cô° €T²xĵ®ãZ8‚ˆ ·ŸnåèzÍ’8Ì‘ð3}ii+"SxtR¢A*[ºPßq H4 BEl‰7Z'x£bô‰∘ÑG,è±@D—h0Á±TˆíÝœœ® ‰j6.™™´Ÿ –d-«“KZb9!q˜Clm¡¤DºÀh:$W- H˜Ðk‹ÏŠ$ÒígŽàúf©¢)¸"f½Àø ÂeÁ²ïfÚÏ—P$€^Ç=ÈÊÎŒh™7ú¤ å]"Ö¬JUA—¾C(Dý™²(†VÉØôÂcTÆ# ð¾ ˆ˜@÷Fˆx}!Ù‹E›÷ £˜‡ Dt¡¶X¦‰D'öc8uŢͿ-žÑG,±»AqK¹j!ˆ³xæåB¡ý|!C""Ë⌨܌¤–á-#Koù8á ‡Mt ½F‡e¬Wšé#ˆ(°4÷ó©š ¤H¼{#ÆÇ z2úˆE&ñ Dì™ô›©Y/Ʀåǰł4M‰FB}#CôtÜŽµ¢|tùÂâVæówdh÷7WŸ7?ôµaÂ=†Öy7?¼€ ÷ï»Öy‡WXo´³y "$©ç”÷¦€Œ”Å;M,h?`ÙwWb}ûù|FÊ'±–N”Ž×bZ¿’qÝÓq›gœùŒè[ìgëv@ë¿üŠ6>‚‘¡A\i9x÷ïþë(BŽ.ï×ÿ76Ï—½Ý¸òÁym|$¦íÂY¨‘©yÇš³^`p|#Ss˜õΟÃô,¿·¦g½ž˜-G)Ós^ŒEÔ?^lŸ”ÚTÆg¬ ™l¾øb™¿D£F‚é5ÁÄ]¶Mœƒ wáæ‡a½ÑŽ ¥ hã#¸yùÆÝcX_¸#ŽAÜDõËuÈPgð>Þ{î1m|åÏ~7?l…õÆ5lØø0 KÅÍ˾®õE¸7äÀˆ¿Œ«œ‡åÆ5ìøæ3ØüäS€†?ðÉâqódk}ï6mŽ~-Zß{ãî1lØøž~~¿/ÏØ>ú°]CÑÆ‡ñԳϱù/¼÷¬œü=Ö[xêÙçPâØñ­J¼ÿÿ O?ÿŸï¿íû»§ã¬ækØñ­g£[‹ÖyãccØPúv×ìg?çèr±é>ù'Ünž!ýeo7 h£OŸÌçê—¿‡‘¡A ø?3üúÓ¾2¬Ÿ`dh#s.+WÑÆ‡c=T¢ÂÔ06ã…z…Ï*qN9~GëƒãsЮPalÆ‹áÙ9ŒÏz±*5 ³ðÂ>>‡‚¬d^9C^d$ûÊrNyÙrDyMÎî/²–Ȭؔß0›²d¼?EÿYœÀO{‚ 8,¿ý|@¢Ìô)$C…Mߨ…§ž}ÝVŸá’®ÎBõÁ¿A·õì®Ù‡ ÁÕ~ÎË·aã#Ø÷½¡§ãå(ö9tû—:32Õ¾2:nãéš}ذñaüògõèî¸ ã[qåƒó€Þ¬/(BõÁ¿á-y2åüÕßÂÍ[EÆþ¿ùº9VFV6ûëæ.³غÙüãn7Ä(5mÅ¿1UjÚŠŒÌLôtÜF©i+®üâü|ßû«›òo?‡RÓVÖà€{þÙSÆð÷¸‘®V³××l`ÿf–ƒ×s¾{êY_™9ú\À_þø-|äŸM,}bÛ’5øf½€{Ú 7gÆoÂo°¨W¨›‘mª YÉÈH’%¢f¬JSah’?ÃçžöbpÜ÷]ïØ,Ʀ½èwÏ¢×=‹Á‰9ô»gÑ=: æ,ëø¬Îv¦ppbŸºfÙÏc3^|êšðŒ`tt:4 ¬ÍP!+Åg±†ú€ ‘4ú¤6#C¼÷Ó“èéø„5º2üKF¦šÝ#C…].[†ÍzK¶Œé™)6¯ñ‰­g÷Äeœ73²|u2ÜÄ»w=Ö[q̧Ÿm7áã•324(ª’qÏ|žRÓVöïtuk‰±¾ åß~åßöÍ2m|„ÍëéøÍõ§øöûm|O×ì‡Õ,¿”=2䪗¥Â´¶kHÍÎñ—$Óý¦æ€±i/2$Ö+3’UA—v“¡B:cÓ^¬W'#k…Š]NU©P¢MÁØ´þ¥gmªŠg4iSU fcû‚šðbUšïï¬*_h·Y2:å$Ü~>ÞÑôšF_ˆ424ˆÇ Ϙ •‘¡AÜrÈ–‘³Z‡ŒL5z{žé37l|½=h8ñ^^æûÓ¯};*ž .ÿÐ Ï0ãæg>gdfáôkß•4d‹6>Œt|mÐéöõ‰QúÄ64¼þÞû46}£œ•³áõ×púµ¿ÆŽo Úä7O¿ö×AÛ¼”HOöù™Ë͘¿µÔ+|ûÑßl݀Ƿ·O½B…õê$8§ÄynFî fµ¦æ˜S¬¾ÏÉIóÿ'CœñY€;™§MM¬%ßµ*ža,üLÄz‰ aH¨¼^oHýÕçžÃ€GzöalÔÛï¿øþ¡‡¾‚l!CN™ƒã•ý'Ä^ªÜôМþ†ÊØ´o†1øzÇæPåû{djÎ)ßì^¾Ú·Oo|Ö‹Ù9`Uº 9©óF¢›SŽkÊ‹{Só{þÜsì,WnFÜ3^ä¦'¡×=‹u2ý³|ê†'ç0;ç3òÖ¤ùÒ@VŠïóØŒ—Í/Oø}NìÝp3+‘2k… º4lc¡Žñå ÔÉaå]ZxyÿÅ;4Ó]F\oÀa16 öyº09ü壧÷N@²Â¿‚¬ìLÉb´©*”hC{-©ƒK²V¨ØCXƒrR“x‡1Ò3¤5§Mª šÔù›z½šo 1K³Œ!Â5à²Rø¡±’•¢di— „$Ì+>¥%ˆèßFÍò'!fùˆÄeñGÔ½)ß $ç,û.¢Y¾„‚ô Þ>‚H (ôZd˜žõbšÂéDB°DCÑ#Æ ‹ÿƒddÈ!Ńûýȃu³"WV°4yÑÝq÷†|þÅòßįý.V€ùÈÂô܈Ý·qá_ÞÁ¯?8/[w좗Ðcˆ.4 Ò4‘è,ï1¼lŒ¾žŽÛ¸yùÒ33EOåŽ ¢Çê‹Fqoh6ë-Ùò”¤’ž©ÆØý{¸yù‚ÏÈÉ?2äÀÕγžÕÙC˜Þzãàz»qåƒ&m|ž1Ö¥ŠX¹ÜhAK„;ÀAQ&~—wìçëé¸+¿hÂÈÐ ¶«¥›ÿ0 "‚‰º133 À‹,í*_º£œù‚a ·ÿß_`#fp#j0Ñ7Fî¡áÄpoh÷ýé×¾‹ýßûN¿ö]”nÞŠu…`³ÞBa飸ջÿ+RÓ03=‡½Wæ'ËqåM¬³e† ·;`v0ã²…ñ­Ç¥õ_ÞÕ| ðµÍpØûñ“¿>ÀFä˜pû#€Ü¸†¢Ò‡ýú:§Ÿß+4aÂïzß÷~Ì–³ã[Ï`Ó7žÂûõ§1ÐÛõðtÍ~Kz±ÐЈ¤×è@zeIø™¾ýZüåßB‡¹]4"â©gŸCéÛðУ›’’:ŸNbÉ3G—ë‹^Ññ z{¢opÓýÕßâÅÚõùïëöûÁû_ÚºY_yÅ¥(}b+zlVér¢r0¬/(â-áþhÖ[¼¿Uº\üé_¼„žŽ[hxý¼%\&dÚ_þø-LMLøêãDäHWs"€0ú2mEF¦«tk±ï{?ƸÛ/{»Ñcý„Ý6”>‚Í~¿}ËÚÏGÄr#ñCË3ô—„7ú˜h>§Æ9Ęð¸}é¬Òé2Ô¾è«t¹¼HLô aý÷8夫³pór«/æ¬.Ÿwc]¡?T§ÓÓÕꀨ O=û²a}Ažzö9^L^f¯ßSß~ú/áÊMì5nTŽ©É ¤«Õ¼ˆ#LŽ[¸Ç‰šÁ ½6îqóÚÏD÷xêÛßAzfê_?"«ë¸åÄ’†FØbAš&ˆD'AŒ>é‡M·õœ~í»ØôäŽÈ‘£ËEwÇ'øôÖÍùtCÊ"wø"`ˆG·èî¸Ó¯}›9ñkWéôø¼ë 6 ¨ôXo\Ã*ؘ¸Ÿ~|3h½ÛD²X¥Ë…­ãœþÁwñîßäÅÑ-òGò8óƒïJæqøôÅÈçË狦ÑðúkX¥Ó£hã#HWûf/™ö_i9ëv”>±uAÑO‚ ¢íç#Pw ˆÏˆ ýóõtÜFOÇ'(ÿöwUi Ý·a³ÞÝuDüóŽúföfggáñL²×fff155PÄÌ ?ÃÏm¸ÝÞŠ’Mˆk¿üø¿ÿŸÿŠä¤$¤¥ù¼ gd¦!%% ™™éHNæ <~Ô$hSÃÈá&¸=“˜Å¬@ÿ““Ó˜ ¼·&&¦055ð}jj ÒÓù ÊÌð©MM[´ÔÈÌLCrŠLE¹{&f½¸3^ô ¥„Ҋȱ( GTKN½&œ¸^ÉavD‰ê)"‡Brt¹(ÚøHÌê_¥ËJ]´ú\.kÐÍÎÌbrj““S˜œœYxáÖ>Pˆ‘áGð™ÕНÿ»—Ë#™6%9 ™êtdf¤#5-™™éÈÌL÷_¯ÇÂÈÔF¦ÂÈF3FG=˜œœÆÔԴϘ›ƒkÔzAr¸§4,%9Éß/iÈÈLCvv&’“#<É£®ŽFµÝÝì(!Y)À=uäHÖææ`ýú5QhMäqã³Ïì±cÑÉÍÍÁúu«eÓÌÎÎá“Û¶X‹š|µh=²²3¢XíçÞèÓ#‡³,¹”êw¹<õÀ㙈ŠaŒ’M[P²iKÐt3³sp¹<<Ã0%9 ÙÙ™ÈÖd";;ii+UöÅÆã™Ä訓S3ðx&DgOcÉŒßàä™™iÐdgbåÊ,dd¦-¬‚8y˜E‚qϤ¤ÁM&Dfâã‹ùNžšŒwY£ƒ’Jñvï'©© mŽ$  å%ôF »}(a 3³s¹?†‘û¾Y§ÌÌ4ä¬ÌÆÊœ¬Ä3ƒ ¿‘û£°Ùî(++Žðx&áñLâÎà23Ò°2' kVk‘œ’ Û|£ÄݻΘÔ;7Ý%ðˆá…èV‘å€oë„üÁ3ž˜Ïìx 5ï†åi>ÈFu€¥õ‹‘10ìÃÈY™…5:-²eö)$ãK Ÿ<ã“ðŒOÂ18‚Õk´ÈÕç,KãojjÃw]1©{f&AŒ>,­gS(d*˜ŸMã=ÎX*ïIâÈ®‰?£€Ç3k¢3˜–š‚ܵ«°f6Ö"-ˆÉ%´Ô53;‡ÁÁÜvbõ-Ö¯_½ðB£H¤Ÿ£w‡ccðñ~Ïó5=¹ gúRR’ý‡ÖäGÝRø Ò¢¾´GVWŒY~?瀥dHH¶qj}}X-6 ÇfI-2íXz}ÅÖ^ŒŽŽË'^"ÏÒÙÙÙ˜-í&3³sËâù$„9ŒˆÖZ&÷ADŠø2úºjYê,§åÆøûì3{üµ[Áð‹;™#ÈäÔ >ûÌŽ»±%êÜ¿?†™/ÍÅâIHx—ïž5ßa'ùÂb¶[JdgEáÔîò4‚BË»qˆØROF2 OWn£;&æ0†¡Xá;Üçs]aH ×qÿ’Žƒƒ#uyðÕ¯e¯_F² ¹*ÅéïŒ{1>»°'¼cp$êíZ ,å9r¤¥?d0¾L âHÝ“»äª… }qÈäd 3¹d ¡·’•¿3ãŠ;ƒ#pzŸŸ«hãt,YNË\žñIü¯ÿÕ‡‚ÂuQï—ä$ŸeÅé'½À~àŒz09ûYšÉ©idÇZˆøo¬¹Ùú%A”%Ëut¡¤¤$Gçä.!J|-ï”/ÜŸò=§çwìßYÃã™Äg¿ÿ##c /,\ü:[n®+&§fÐÍ]†_Ä_°#“¾Ê¦f½›ŽlŃŽû‹×ÁÿÝréËVà4x9ýŒ$ ÷K‘!~Œ>ÚϲÑ/„$©TpM#S^¤/±9Û™Ù9Øl_bÀ>kQ$YŽ/À™Ù9ôÚ¾Äì"»IRÎ)/îM)‘›Æžšš^6Ëô Âÿ8^޳Yó†äYn?#…ÒC2!±<ÍEÄÑGí×¢f…/¶©:E…¥zöéÎàúú±C±eøåsÀc1Ѧª0>ë ƒÉ­ ñ´—/Þ ª™Ù9ÌÌ,¿å]¥ûÍ–ãÀHñº|!bzC¸ìþpôŒÓßýúRÄô <ã“ørñNõNùjŒEpÃììlÌœ1'üçJ¼¥ÑBI¡ ®I¢2ÓuâКSHœ}Ê:24ˆžŽOTSwÇmܼü+Ü„ÍzkÁ’ûÊ»€ôLµ¢¸¼Lz¥NZg Oz¡OWA¢ÂÝÉÈ ÂûÃôv.̰èí²àcÆHY`YLyÏŸÇа«ô tj½ß~x_öö„W¡U —™6G‹®ßš‘ž‘‰•kbkZÈààÈ¢¼ìf½ÀÐ$°6C…¬`h"2cÝ1x?겇B¼ÏÅ»|ÑB‰QBK»áñ=}‰k- ñ±,B4îÃÍ/Âz£6>‚¢ÒGpóòŒ»Ç°¾`F†qohÕ/×!Ch}Ç033Ç}øÿþú6l|O?¿­ï½ËkØñÍg°ùɧøŒ´«¿h½¡Aìøæ3(}b+n^n…õ£kذñatwÜö•7=ƒä)xêÙçpá½w`õ—“£_ËÖ¹aã#ø¼ãî1äèr±ùɧ/Þð"'Õ·Î¥Nñ䘘Ò#¼Î;áÃï®\F×o¯£°¸%Füî×m˜ð¸±.¿#ÃC¸?ìÀŸ½ø]¤ûuÚÖÔˆ 333øW÷ ЍøÎ^\n:‡Îßšñ‡´_ûzŸÁtí—͸?ìÀþÑn”ºÜŠŽ×°¡ôan|ÍoŸÆîç÷ÃÖñ ¬ækØþ­g£ËÅ»gN£ç³>¶]L›µkôl»~ö“ã˜ð¸;+«ÐÛiÁ“•{ð³ŸGå¨ ÐoË?EÅwö¢ ØˆŸý丯Æ’%¥í u6}cžzö9tûgÓ3³P}ðoÐÝñ v×ìÆãêçÙ<åÏ>ã[ñࣛ£ËÅþïýÝŸ` ·Ý·a|b+®pÒ@Ž.õã·Ðq㚯Î'ËQþìsèî¸=_Þc›¶nôtÜF)§œ¢cÿßøê)ö9”>±›Ÿ| 33³ŠOîêÓU<Oø9R¤«³ðµObgel]V¿NÕø³¿<[—ÿþÏQX\Šßüª™Í³³² %›ðÕ‡ÃÊ5züù¡ ·Ë‚;ŸÛ`ë²¢äq/=¬\£Ç_9é›ÑÔÉ-ïÞ]n¶ß@·_§L_nØø0ö}ïGèéøåßž×)ÆcÓ7žâÕ™£ËÅ_úû‘?›Ÿ,Gù³ßa—‘KM[‘‘©F·õ6JM[qõ¾ú¾òÕb¶]Ü6 ¾;ŸÛ|:8|„5ü‚é·äq Џó¹ ëò ðgy#ÃC€””é °¸”'öï¿8r_iã•ÍÈÆ\Ÿðx‚Ê"ì»’ÇMX_ô¸å%Òµ*ž'üwï:ãòE=džÕréKK >7Bá×Â#º'wi?ŸKÊèrཟžDõŒø÷Ée¨Õ¾ÿ3Õììžj_šUº\Œs^ÐÆ'¶¤|{ñ˜:mÖ[l\ÆÇç—K9ådde!G—ËKÕûÃ4ýÃ)ôvZXÃ##Ó;=SÍÎîIê43éê,¬\£ÇÄø¼NK7¤cê«“Ëç½_`äÞX NÕ:€òg¿ƒ´Ì,4¼þÜs rÒûú‘é·{ŽA__v|ÂëKîX(5mõ7ɶKމq7Û¶qo,0m ÖV®¾æ¿óH¦—“GLÜò'=cŠeöÝàà=$±Œ³+Gü<ßXË1Ę&;SQºåºßq¡$æ~¾Ä&¾…™ÇÌ! ±—¿«t¹èî¸ßߺÉû~ÃÆ‡‘‘©Æ@oÒ3ù†MwÇmœ~í»ØìŸ9ºç_6ÎÑåb•NîŽÛøôã›l9éå@ŽNžŽÛøèò…¸ º~Ø‘á!ä¬Ñ)J¿r¶.+>»ý1ïû‚b#Ò3Õø²¯i]غ¬øÇcuxlGY@Âò Џ?:…îÎ.Ivûu W?8Ž®¡ô‰­X¥ŸL?>Ιq ➃?~6l|Ä7l=¬ÜããüexFÆËÿã=ü޳·¯ Øˆ/ûzñ³ŸGΫƒ·PÈÌLCqq~Xuv[oÃÖ!Ò †ßÌì,>ùDüÈÏmv dÓöóµ_5£Ø¿,ú燄%offR8AÉ=ž‰˜ÇŠå’³R‚‚u)+šaزV¨0îÂÍÏï‡%[V ¯ŽÞoåµ¹9X¿>Âzyÿ¹ÆÆÝMO<°~ýjäêWʦÇgݱ5!ÙP´Ù gSá•üQƦ½èuË<C¬zll=½w¾/|ð+È’Ñ6U…mhûºâã G±J— ”>•²åfúÆgÏÝ {Ék4™HM]”dßæÙ`á´&'§1åßcèŸÉqt(¬\£GA‰1 }MbÀ>V¬ÞØøHXòÊíßYû@!Ö>PÈû\ü¸ ƒ}6Tüû½AË^››ƒÔÔHM[!ò0 |’LMÎ`rjc£¸F=1[¹ïFA„ÊŸõ¢w,°­‘x„OMNc8‚K»MfÔî‹Ø¨é±e¸´ ([~#w-áQƒG|OÅ2úB$G§WäŠ%<îè-ï>þøC!çÉ êñL`ÔåÁÈýш+×èÃvErgp«×hùÒâ²JŸË[ê …P—áK6magþ‚±.ÄYžÔ´¤¦¥ ;;ë°S“3¸{׉áaç¢ÏÞ¿?†•+³^P‰ä¡“œœ,¤¥­ˆ¨ÑO³·‰ W´Qgz±£Ó,”,‘'¶F_‚-íF“™™Ù¨=X•œ>SJff:23Ó‘»v&'§pwØ…ááû1}) ؇QX¥E…Ão6Jm•ß4®L¸Ô´¬[¿«Wk100„‘ûnEù"g|2®>Ÿ3f'VFè”{vvfÄý³Å•¿7΋V\à””d¬Y­‰”˜GI´ˆ¸ê³"ÔêAY¾æCHÐL_œÍe¹´´Ô¨•»Þ°¹ks0xç^ÀìRnº 鑌™%Å´«æ&¡ÑŠ.‹Â‡ÆtÒ4Ò¢°¯kͪ4ägE¨Ü¬d<´ú+v.Z;jYŒEµ8O`ç´÷:&¿{×…Ù™Y aŸ|ÆŠ_F66ôLœÎEëänfFÖ¯[½ 2¢7Ò”•¼aCˆ?8 ðèXôöæês°~ݪHŠ#ÈU‹dôÅ Ñ<¹«4`x¸$''ù¿Uèû|#þ“œéÉ*¨i„ÝÁúUÑÚ⃹—US“Qi—6=Y+8FrYkW"+E…Ïû^XTÓ“Èb¼/‚±(>Àw‡ˆÔÜ3£i?c±?Á¨ÏhžÜU²|JÌ­WÈÎZàf"!ˆC—-Ë“hÞÌ‹õ`MNNBaÑ:äçë‘Õ Ú¸\îEÙP?995÷ J}‚…Êš5Z¬]»já!žÝV8ïEÔsv¶ïÉ=Q½T‰æ*ÄB÷uÅz–o±™œŽžCñŒD6Àã³»â’Ø}´ŸG4M§-ò†Ù5k´øêƒ_AÊ"‡×Y_qÑ4ÎS#½Ç…ÃÚܤ¤Dß@YÔÓÃ!<2†#x€#-mrVf/¼ b?ÛžnÇ£èÓpÙmæ_àk.Z‘?RR’E¨/ï·òÒ„fúâ„hÎReDuyWü±™™†üÊ¢ CCÑ;P´2šQ x›#ü´MNNFnnNÔdg˜‰Ã0bãžIŒF°ßrr¢{X%Z…Âe"Š?t4Ù´¤ QšX:‘1h?_0Èè‹&—ÀÒ®êÌt<Ã/šDí䮘ãò£[£zñÈݻΈ–·’3Ëñˆˆ¥á,þÆšŠRŒâhï5^ŠDk¥!º1p‰x"NŒ¾0£H4¾Å^Ú’™™CΓÃ%ÚK¼Ñê«Å0Γ““ŸŒ'|nZ"·´›š¶‚7+åÉh-á…K´–›‚+áöó-°Øh:Vâš&nYÞæCÈĦ§©“xDréIH´Üµ„‚n99ÑÛÅÅ㞈¸aÆ®.WtüÞñºQ¼?–ÌiI…:r Þhµ«èS.!àè6š1ŠÓ£¸‡u)Íý²bË»ôš^š$°yŒ 9p僟³Ÿ?ú°5båvwÜ–¹>ˆÖ÷Þaÿ»ÇpohP6+ãå ßÍÎÌbÂ=†ËMçð»__„[ÙlÕýaz»,ìßb×ï|þiDt"ŽòÇÂä.Ú2qѨ”ÍYõ"-uÅzæw±‰ôÒn4p0DÓÐ •hŽyZR Ù¹èíõLè“»,´ŸO nô âÊMèñ[æöˆ”›ž™é‹±+Á½!ÆÝn–>Š•º\´¾÷Or Çz+hÙÖ×¾s{&Ðvþ]”ávà7¿jV&gF&V®Ñ£·Ë‚})àúýaìÝÑÉBIIN‚nÍÊE©kt4:Ë KÁ­N4ö Å+wïF6]fFRE¢Û,æžÕè!þÆŠæÉÝ…Œùy¿F”Å>¹K,Mß9s„]µlþÆS¸ò‹&m|˜ýnÜ=†›¶Âzã6l|E¥â£Ë0áÃú‚"Ür`dhÕ/×áêça¹q ;¾ù 6?ù`àslÖ[(,}”ÉÛ°ñ<ýü~QÖñ>_xïX9er?ÀøØÞý»“¨9ø7€žÎ.@A±ÅFÜùܘpáwW.£ë·×QX\Š‚#®ý²÷‡øÃ?Ú½غ¬˜ð¸‘©Ñbvf–—>## Íõ§1ÐÛõ°»F¼ ‹Á°CÃ÷£îÏ-ZK°Ñ:¹›’’Œä%a8,ÒL¢â¥Ý‘ˆV»zøÒnffZDOßGsv-(ÝFóän|Î:Çç~> z3À }rw9Zÿ dI˜÷ë 6ð–v3ÔYØôr<õìsì’kF¦ÕÿÝ·ñtÍ>lØø0~ù³ztw܆ñ‰­¸òÁyѲ7l|û¿÷#tw|Âû~dh6ë-Üü°#CóјúþêÇoáæ‡­°u³ŸÇÝ>c¤áo`Ç·*ø6IOŒ»‘‘9ï˜wí…€tu¾¶ãI쬬‚­Ë X¹F¿8r]¿5³éwVV¡äqL»*xé³9Î~‹JÁ¦o”Ǻ«m¶/R/aî3%z‡88K» þ‹—™Ä±QOD1ÀJíâÄŽ©Ñ' Z'w£åˆ|©23;µË´Ÿoá$–„ÑWþìwp“³WndÈ÷~z=Ö[„@†Úwj1#S µïá==3Åæ1>±U²ü uVÀrïú‚"”?ûþô?¿„ÞÑ|#ŽAŒÏž1|ÙÛƒíϰKÑ““Ó((6â˾^@o—-ÿt€oy¶éN¡·Ó‚‘á!¿ü™ì5!ÂôÌÉÂòoé™Y¨ýÏ@]áòܵÑ÷ø–Ì#M´h/æáЍžƒ†#î¦E½¨³±³‹ÝDú^ŽÚÉÝ8+‰@td/…h¬ duŘ¥ÐÛ€ß|F`ø "C…™½y9«uÅ@oŠ6>R}–×Xco“YðÍ ^ùEN¿ö]lÿæ3¼ÏEƺ‚"M[qóà cOd?nÂÏ~r÷‡¨ü/°åÝv =Sœ5:€­Ë Û±:<¶£ŒM³r¶.+R32xé“““0 àJËyôX?ñ‰­²úX R’“““‘(¶`ˆÆ …ÇàbºKˆjä—8y‘OMMãþýÈ.ñçhçô9ƒg|’7S \Qt²C#á\µD€hžÜÏev"Z¨¼^oH#½Ï=‡ôæè±Ql¿ÿ"àû‡ú ²³…>Ââ÷&[,zz02¢ì´no—½ôàW­ÉäW%zl_FÍà^»v ëWG·ý MÎáÎ8ÿË/ú’¾ù²R€ÕiIøÜ­ü€GJrŒûöíf­ Ôü¿a܉ðþÁ¿jXD£ÏËûaø® }ýŽÐ‹SÀW7ÂŽÆ‘pF_Џsƒc _{tÃbi"²x%?D±i/z¹ÏV?66ŽžÞ;ß>ødÉ<´©*”hC[XË»‰L(Ëm+×èQPbTœ>-->'rÃg_$fåøûù¦Â.'ìòî"<·¢×56„ÏÎÎâ~„t¯^½ø‘L5†±SQœ^2þ"‰hÜs.ž_.JÄÞ…<+‡ÈØFržiÕ„ÇœR²9€ç}˜øRSŸðÿ4Ÿ-7p·µé3µÈÐf¡½µçOGaÑ£²Žon¼«g?ñ«Mú˜SôY­ï¥V¦|†nN;ÂûLɘ™˜X¥Nmpn òNédfR…½T|ç®ÂwÛ{]ŠŠbg„a TH°wìÆÆD‡L›Om(»s—,)úƒR†€©°s—ÄóùKDÇô]={ k+6ãî-+Z,×ÑÜxƒÔš¯añSkÐÜxÃ#£Fý±#lŽ«çêá¤0C›…Å+éò~Wƒ.{›MÃI àêÙzX®ÐÙ=šoÀI `td1qôð1Ù62t³DÛsRÈÐf¡ÛÞ.{«ù§hP½ ~Mw8ÇÑ ñY„‘Üöce Q㬠®ÉýýÅlwÅcp ˆÎ˜ÈXŽ£±å>ÆF•éÃŒ)¸;Œ§~î£Ãî¡èw ?ÈSfÌH [¦”`føFz¤•L9Hœ>ÿP2¾35ÀÔ„È%LN_pÜã.·Ú ›Ðb¡>†Â¢XþÌzÜõ*/[ÆÁ]¯¢dÃ&X-רôk¡ÍBùö×Qµ÷-,^¹†Îî±²³ó Qì{L¾þQÜhøt´Ý†ÞÑcÝ‹ßFAѬ(]ƒo½ (alZ¹Ýö´[[X§OÙ¡á_Þu޹©ûUt,”[µ¤Œ¸00*r­ùyùu +fëx\<xÏ×àÿtlµÞCï rmJ F‚gw 5{Ç. ×®Zô ƒ‰’«DªÅ?”ZÞXç;g×ÔDDÏô%%kä•ɨ!•™‚ÉÜÑåþ¼ÛnÉ~Žì¼c¸=ôœŒI)Ò¢ÐI)NêÐ2_æØ˜hÄĨ?—klLtÐwZr ÖîC¥€¡8O÷;ûÐäeO. ñ±aÙÝÊexxDR—/PüÙÀ¡ÔÃ3˜»Ï½"òUjç®~ŒFJåü®_jzÑ1}Iš8)ù¿ð ‹ ½µw½Š¥ë‘©ÍBsã Þ&‹æÆ8¸ëUÞla—{Y6C›…L­Í7ðÅçW1ã-“5homAb²øƒ/C«C‹»n{¨äòM²bñrÁ½-DÊ R€=ÝЉë2è²2ƒZ_ WØýÎà:|€¼ J£äl›/”ÚH25R~…E3èDêL ‰ç „Ðeä˜û RÓ˜™¹àŒVKã ´X®£dà A©¯¹ñ¬–k(Ù°)(õqi·6Ãrå"Ö¸ë¶Û{qû¶2Y)fee";g¦5÷*ÿêË6Å~ÅtR÷‡çæLº‹5è»B`VVfg ÏSpÆø~gÚÛ;IMKMFaavPëô·÷ccchj¼%»Ÿr2rp3px/’‘,­Aß횟? 3”2w‰þ c@¯ßhñ¯:™ÌÊÊ@ölÿ³¶(û|Uïònÿ€_5·+b^ÞCY¼ Xãø<þrF\h 0^\´¾©‘#x'ª hýœíóF¦6 ùzy;ý¥ËnÊÒõìk%ÅÇ«4‡*àòSÂá€h]»à|7::ºqûŽMQ‡f+rM==Aïg 8”X†U* ±¥]åbÔ§ §^‡Pxçn$Æ¢FŒgª^"Þ;XñÌ_­® ­N– K ŒËx¯•ܹ‘_f•ì¡\‚½¼;<4Š;wlŠÎž2dee¨"íšM|¤<þ¥Ýp¢d ¸±±qôäÈ(ó´AR’R™‹&’;w¹ß_âKM"Þé‹T”Ò}€ÔTy\üczÞ”L[,Y±±qØ:ºqO¡„ìBÒR“Z¢ó…¿WXoÏ@ÐgaSS“À&%6s *víyéq ¥cLýeæé˜3G‰P˜à Ô¬«$½&Çô|âô…™q.ä$J¬®'$Ä!?%|ûsüù*ޤD£o\9[ÓR¢‘Ç‹îq}ãˆÒ߯øøX¦OÎQèîîG¿]½Hðv ‰†¾(Û½ë8¼7Þ¯î #> ÝÃÁ³cÆŒÀ~0)‘Kv|\Ùåy)”œéSʉØ¥ÎEÄʵ&Mˆ>âÀøÐ4 |zJ<4qQ“«Ä%ûÍI¡‰Â˜‚W &6 )±þ…°—QÃÊœ«´”¤ÄEÉVf™¹¯ß¡¡ô÷;Ø J]KBbcc0÷á$'2Ó¼Îä 1>CÃ#s:ÄgvB|l@ñ|J1ª˜6‹Ä؆<\IMQ@œ8H·J%ÏCDîÜ%îCP 3}a€RpiwÒqbÓø‹%Öu¥b/ûú(\½úE¸»,ÖáSɲKÙ3&±SV ½E%ã~¥W4]ŸÚPËõ,†R:®xqŒ‘wË<‹Õ„ºç¶§(c îªTfÚ^™/Y_Ÿr¢ÁÀäoècccÓê(…ھѱ1tvö½ÞÉlàPËØøÆûwy:ÍòÅÆÆLä¾V!N%gúÈf¿i‹z¯ø)Œ’¿à5óðQ?jú<¥P›Ã¶ž ×9c†&  JŠØ\BÜ^8QÃîso()̬ö¾{@&÷‚YÞ Ç ”úÊ)—cúA…ayMM$''¢ 6Â¥û(q£Wb–/#}r"Èjž1Ebl•ÖvTrÓìùE¥´\Ó8b¿Ä—š~§/Ä `ttJé“ˬTJ½P§bVP¢Hm$¨<%œr;wÕÝoï7u²DòÙH”Ô}‹¤mø£ j1h&ù žNÒ qx(W‡T/©‰]‰<»*Ú±+$¸N˜ïf¨—“Éšï—JÆV*±éˆ9§/Äô÷;[ÚMLT¯²¼%w03ÄÆNîæŽÝ“áD­³{ }ýEÎI°2pÄÆÆDÆÆ/28Ó‰ÔÔ ËµqJÉ»ŠÈÔ( ™Ü *Äé 1c >&œâ/Öx–Nån>_Ú>;wµ3Ó‘••¾Ø=1DNJçýàÏòÍ| 1“üqÀœœ€¾¾àΔ…r7­R9¦Õˆš6&‰¡äÎ]&7;ñ¥¦'*ºËO††G ÔÂYð·á+w[ T¾t:ÕwîÆÆÆ cFŠúœ= ††GÐÝÝôzg̘\,_äàû»:ˆÄäddj³ü®«¹ñ®žýDQ{U»s7Ä_¬P,íÊuj¤º®ä¹ 'Ç šnÞF[ûýp›"›Îξ ;?±1ј‘K»¡Š-ª³Ûb¨yy·À©XÝÌÎÝÈó¥"Ïbµan?Ÿ$ }Óv(Ù° í¼Y-×P²aªö¾§ƒNõU²aê“@aÑB”lxWÏÖÃrå" ‹ ¹ñœÔFGFË¿üÙ2œøèçX÷â·QX´§ŽåòE¬xf=¯\ã—½ý ÞT'»SÕå¾dÎ슬\‹Ò)âÂͽ{]Cn®.ܦø¤ó~ðgùfÌH Ú¥q8‡&¹,çû»<Ò¯Pu«’3®·s—t"z¦/C«Ã†ï¼«åªö¾Å[ÖmomA†6 [Þø œÔ °h¶¼ñ47^G’&‹V– dÃ&47Þ@ɆM0,Y†¹-òhG¿d ‹ ÝÚŒ–ÆÐ/YÆ.'ûÃÐаbc¡V]51B1£¬ |©mªÎò ±wöâömeC&Kçý^E·Ú|‘ô2]®y@ýqmJî¢V$ ‰RÉ=Eˆh§¯ÛnC‹ÛaÛðWpáw5ìgN…$ ç6蘘µIÒ¤ S›…n» Ç>Ü«åºí¼z»Ü¯»ï;Ί~É2¿íUòƪöÀd†Ñ±qÅ5ú’5‰ˆ„étŠm²wö¢SÁã€Üè»{‚ÞDZjrD=ü‚¶«ÖËCTÉÝ¢j#èç>ÈΉRç"66±1ÑÄ—šæ¨wŽ[ZÎÿ®çOGR²‹8Ë­…E páw5¨Úû2$büºìHÔ¤ C›…Lmêo`†6 IÉ)8¸ëUvù˜[çùd Ú[[PP´Ðo{•܉°Óâ;€²Bä.íJu}:Å6@[{'RS“U·äE9‡‚®{Çp7À˜FM/±û>’w¿*µ[T¨z”;Jl4 ÄM &êºËÀº·x¼WX´í­-HÔ¤°K±…E PX´P¾ýuÀ?¾ûï¸-oüD´ æ8¨pë/JJ”ç®r_²PHP»þ1::†ŽŽ.ÕÅ÷)±c ú*°sœ $*$¹$ÅäœIyßåáé$̬rçG©»I*ï7!4D¼Ó'Ev^ôK–ánk3ÖUl™|…“DÉ¥]¥’½+A(fú&³CM³ôk½Ì«&¡æ¡áÅœ¾H#áJý(MHˆSpPÓ¯ù÷±²;wÕ=ÃɃLî)†:îð ¡_², Ø;%àÎpÙǼºÇœ.Œ „9e˜Œ/igg/n÷*û‹OˆÃÌ‘`Ä÷숔É7mÊ,)&%'Jî² É®foP-ÈšÙ>_—ËÝöY³qÃÓ`R6(ËÆ^\É»Yº Ìô#·±rÏúÈð"”\ INJˆQ (É”vúÔwç®3ÈþÙx|‚æK)w[¸ÛEa@áU¤Y¤``Ôp7Ž!Ål,ÈËvëdy7Îé‚Ã1„þ~ Ý=¡“Ž´÷#s–Vñv|š±±1ܺ׃i’úØ'Jg¯Q­~è4DÉÐ’HÚ¼4qSƒ qúB„’7îHXÞQd'¦ÉÞØ††•‘Õ‰‰f…Qåô!)9ÌLCöÐ(::ºIC&dtl÷ï÷á?ff” §g ¢7E¨yL%wî¦ù±”Jïdç.Ay"h‘?²RfúÈg"œÜA|VlL422R'õôp*´¼2á˜ûg\|B,æäê;G‡ØÄä(=«$[Gw¸MP“:/>.9¥v‹ªGFJ!WGj•ZjWûæÄ3Uâô…¥d'Z“N팎‡$(FFê¤ëPj©k²;Š˜™†9!Ø]Û‚ÙXo ô;§T”œùTjvIm8ÔÎèØ¸b)÷’H<Á qúB€’™8’“‚éô)s[èèè ÉrÝd+€Þ5ªÑA˜¥›1#³²2±atl\ÑÀ~_WX‡­GÑþE*c~;ò¿Ëjý¡3ÝPr™=>>#¹ˆ›ªÄé Jj`Å«DbCŠPÍòÅÆDcæÌɧÖRj÷\°â.gg?€…oàJæˆöÆððHØÚV;J9} J„ø³‰ƒ<Þï'³®7Äé JÆI©'nFœPÍò±K»“xz(*—œ09ã8dgÏTÌN |ièH,Ÿø¸ä”<×ê˜é‹œx>%wîU›PIˆ÷¯8Äé J.簾;GðÕ,€ Íò)ãœ{³ÍŒŒEgû‘all,ìñ„jF©$Je"ló€ Pj67>>.}©È³8R N_PjçnpüÁÿ’µµw†d–/!>6(³ J=•Ô Æ¦)”Ê=ìí ³uô™– !ÿ»¬öp†é„Rß»D•¯B‹º¦b;wÒDC#sä©Qà–;3AVbH˜H呞ž„¹â3HÔˆ ÖÉ=DSâ¢çGžÑÖqZ@nÌGú¡K÷}üý!:w:³fe"/%)±¾Óœ¸ÜcÓꛬ¤(ÌL¤mŒïE¦{{ÅÏ…7fÍJF·ûAL©üY¿Vj #žc3cF :\‰D COòéù"¥6)U¯?¦{@¹óDPÎÝÈ9] ™éS˜é(Ê<6:Ž[·:BÒV°6pÊ-Ã+w™œœ ¨SÊ”p÷ï÷™´ÃVÆCT©»SzvIçDÑÍ~¹s— ÄéS%ƒsƒ—â(¸w±¶öNES;qñÇáóÕK¥lVjç\ÄgÃûØßïT>ÛÈT ØnJîܘÙ%•Ðܹ߯ˆ¼»dÊOIˆÓ§0JÎôiT±;ŽOggoÈ6oÄÆD#+Hºuý h§¦&+Ro|B¼b6÷+èpèw(ª 8•7NáçÔ¯* 6ÆÆ”K4A? ÊCœ>%qJÁå]•eãp8‡ÐÞÖ²öfÎLGL¬;>n’?•Š©Qòá7vG’»ác\AGCîµqñ| U«ÔònðVƒ†Lî… âô)ÈèØ˜b;5jsøCøò˯C¶ÓßY¾°-í*8¯ CéÿAç}²´+¿òBËxˆ’»êA©»êÐJ$¨ á© J.Ÿ¨)žotl·nw„ÄQ`àÍò倓¼éz9=JÞЃ9ó Õ%cù’“D—Õ5qÀÌ„h ¸³]Ìò²£}tL9mÊ`/*µ¬N6ø‡’;wI<Aùv*ˆ’ñ|‰‰Í ÍJʌЯï9{:C¸u»”ËØY‰â’(=ã1A‹å›è‡2çŠÄ6‰366†û÷•‹ýÌÒe =#Åãý”8@›aYNŸKäø(d{‘Üéïw„,¦U޽RŒŽ}cƒÜ»äñN£äÎݤ$åV‘ YÞU —²;wÕÏåp á‹/¿VÄáóFvÎLþ,ß$ŸcccŠ=•þ¥¦Ð&¥–›îßïS, !>VÔá J~/eÏFËYÚUpóLøwîFV<Ÿ¢;w#áG'ñþCJDÏôuÛm¸zö@Ñ’bdçx-›¡Õ…Ô>5æÜ½ç~ÃûÆÙ;{ÑÖÖ©˜³@T°9-59~f£ðÕC¥ÜP©»‘Î}gÃx 8ºÌ%!;wÕf&„’ˆžéë²wÀIQ˜Wˆ?ü)Ú[[DË57Þ`ÃPÒ§  HpvîúïðÑñ{6ܺա¨Ã'FlL4æäßq§ÈÒ®(£Aˆ!»Âz{c~à´ Ô¢¾éﳯþÙ«†»åÒ?FÚyPßwn*Ñ3}¤Ñ@¿d2´Y¨?våÛ_‡“ÀÕ³õ°\¹ˆÂ¢hn¼'5€Ú,ôØ;`¾|+žYÅ+×(c”KÙ_oééÅêöF_¿·nu„LxYHVV†§#„û„RËðJîÜeHJNPl)ÖéRd¦RÉ»3H ûl[llLÈùK¸wîFœT‹‚(u."F®…R"z¦ wi7I“‚E+KP²ašo dÃ&–,Cv^!šoÀ°dΟ<®¨=J:F¡þ2  ¹å.¾øâë°9|i©ÉÈš•©Hݪݹ;q:‡Ð¯`¼àŒá‰åã¢äy÷ùý“éó»~¢/©dleDìÜ<=â™2ßÐd¿n» '>ú9²ó ÐmŸÈëtPìÿ K–)j’¶ØÍd àÖý^Øí=!iO²¿“XÖ•sO!;wÅ…Ñ“¾Q2–/!>)A™™Tï“hhxdÒ×ÕÐðHØwîh”üY;wÕû›jD¼Óg¾|Í7ýPJ6lbßï²w Q“‚ m2µY¨o¼Ú,$%kÐÞÚ‚‚¢…ŠÚ¥¤f]p–ܤ¿dÝݸ¿ãr5០ž“›¥˜5¦ tE(fúbb”;?“5^acccŠ.í†sG¨¿¯ø÷ÀT2ž’lð§sX±º#ýG'A"Úé+,Z€|÷÷3´:÷·¼ñP.ŽÁ}ÿõÓ78æ£ç º,Íð8@#ѱ F¼ßècþ=º»Ðßï@Ow?+¥‘C·'n“þ7ì%¤nVV2¤ä78íùÓ_nÙžA¿låÚìë¸ñ¸ Œòí‡Ç{Þúæ«[‘”ýÀfëQ´þàlà˜<ÉI Šmâr:‡áçîu! ®BÈq4H<ßÓzçnä®)AD;}jÆÛMŸ–"ñÿŠïv¡{Ø…Fb€‘À78ƒÓ1‡sHÒVçp‹ ¬@ã’1#Ù93e•íp6¦·;)Ü ÀVæ\H‘œœ€ÖÏYç˜Kô}524ÜY%—vÕ°#ìȼü•L•8%wî*èœ(µs—HE¤ NŸ(©ÏŸ}öÚ±Æ÷ÅDG³»FGÇÆx7•¡ÁaE—v‚Irrrs³o'²$b$L€öq?g‹¹¼¿WQg#xK»êž~ B ذBqdJ …Oe”ÚDY÷u禑teD JNÙsQR`5œ$''`îÃ"&VùxÂá!eœàPȵ@jjRHÚ™,¶ŽnÅêNNJ@’ŠvJÇ+K5îá8ûÿÀTJâGÉ~OE”ܹ3Íg½ ’„?J*á¾ÿNUg,ÄÆD#77˷ä‡J=Õä„J°f¬úÊŠ1ÏTG,ƒ’R“-Uòi¬ŒMEϧà$”’ωÔ•ÿ$“{aƒ8} 04¨Üެ©LlL4žû`Èôí”|F„F–‚µÛy_¹X¾Ø˜hÌH¿6_¨tÄe>D•t¾SRÈò®? +x.âÈ"^d:/˜8} ªåÝ©DrrBH>@¹Ø& ´3}JÆRóȽ}  §‡ò»¹Ì˜‘Ä SúAÙ»ÄÑð§‚Ë»‘“cêçÔqú€,ïúÃê J hO¥LÎI^ËJÆòêÔæSzçäDHB`¹³•Â×ì6y¼ó Ʀ1ÈÎ]‚7ÈO³`ÁÆó)»swª‘1#E^ — ==¦ÊÎݘyš¡fll ==ŠÕ¯¶ aÃïƒR?Hûs7òâùåäZT¿s—xÿaEåW‡4ñÑH—û°sôQ tŒÁ¡‚,‘À¬Y™ÈÉyÀÿƒtΜQ#Ð(p®fe&";%À%ÇúŸ™ˆ{#Π÷tÑ#ÈJ lŒ::z‘“(µ ;gfúi[L”oÁkµ3<4‚@óã)õ£”ìÜõþe¾¯Ù¹q¸ä'këô Œº0â ‚ŽXíÝNÜRn e*ƒüüÙHHMFç`ðŸÀòjtáN·27ÞÔ˜xtr 8Ã.Å®¹XÇb†äÆ-y³½à Ùƒ9©©°ûYRLRDgFƒ{&$Ä)–W•ž!òß^%%BäìÜ%L dÎ]ÕïÜe‰ð__JÄ:}#ã®É$¥.œk×Ö7ˆÈÐ? i©Éx0W‡è„8yéÈ„é>áp(wžF£c10ºÚxl¼b}ÑŒºüê Sòþý^tQÊ=ز2Ó0Põ. §/¸(éôŠ’öøÚ¹qR- £äÎ]ò@ðFÄ:}j%Ø©«¦ ±1ÑÈÊÊDÖ¬Œp›@᜗!¾é*™~,ÐJîØÔ“g7ðâòüðy”Ü-:åvî*ìK*u.bcc£æY×ÈôÑ•Ãå¢B“=ž©ágH¡ ‘ÌÌ™éÈÉž’ r™ì®T)±sWÉÀíÑQÿ7» ô;Û лƒC6=žDJí¦†.e(Qê\$ELîãéñS#Äé "JewˆTÒR“‘5+C•J-u…c眒AôþÄ1·q%wìÀŒEëÉI èëSæ~hlžRKŠ$箌Ž+¶s79bœ>B¸ Nßdáü`!K»4Š9{Aüq¨Ôòn¨rî ‰‰VLƒmxxD¶Øëðð:ï÷)ÚO5jó…’@f_ðíܸx¾]Ú@–v >!N_Q287PóÌž¥ôÊRÂÔ÷ääDÅfš‡†ä;}÷tøuŠ1‡ƒÑÑq¿vÌ’»êAIñ~2ÓA„!ž N_P™ŽÂ̱1ј93ÌLGB„hu)yžÂۯಲÃ9äÓ‘wc¾ß©\ž]@‰ ÊL?(­[çp!Íi% ’s×?ÆÌŠ;wÉ”_8!N_qPÓÃ鋉ƌŒT¤¦&###ò’Ý+¹s7\‰Î•ÜÁ+7GqO¥hš¯34avÁ,cF¿ßæ^åÆb¨g©~,óÞµ ¢C!{\Ž($Hd· ùã=( *kuË]ú‚.bc¢×çœLC®©êœMÑnÉ%¢¾n» WÏ~HLNÁ¢•%HÒH;!í­ÍÈÎ+ýì¿;½q2µY¢ŸwÙ;Ðm·¡°hûúêÙS€ m[± £cã¤ðÇOj=¹ 3fêØ:z:mhºj²o®üé§ñø“«@ô¸³5Gy6¬,{žWWO§ yó uýé§1;7³ÊÇÅßײíÀ½[Vô÷t£­å ö½ô™:öX©6£]£¸ÑP䤬ú«õÈÐNô«›3Üópåì)d?Tˆìü´[[Ùùìx?ùìzz,m°\¾È¾¾rö¯\ƒ.[ºí(Ô/\À•s§°ø©5hn¼kãu$$§`ñSüsî¤på\=’4è/C’&Å}î:PX´pþßO"çOxŒ3®Ÿÿá4[s.©üéüY 9Øñ–}0ÿ!<þøÃhi¼Ëu$j4XüÔ$j4œëõ[~Å3둨Ñx¼?C«Ãâ•k0HQ¸rö5–³õ0c”Wˆì¼tÛm°ßiâ3=®…Ö›f´6™‘œ‚ÇW¬Ä ÓÁ³™{î¥;Kdëè’U.P2ÒLC1èw"Õ6%—wU3à\L_äìÜ%„“ˆÆè²wÀIQÈ×? 8QyÈkùSÇ~%ú¾ÙtNG·Ý&yl·Ý†Ë5ÞëAŠBAÑ£¸ÛÚÓéßcÖ¬LüáÿþÒgê7߀º_Æ 5±“±§Ó†‹ŸÔ¢õ¦pó3ûYÝ¿þÒ㸼ù88äÍ7ðìéé´¡µÉ̾fêêé´áæg&\t;CŽü‰ó¿øI-\®q¶Î¼ùÌÎÍg?gÚŒvÁøÔ“ÈÏŸ ½>_\ªÃüóðزe8ñÑÏá¤&tغl6ú<Mœ‡n{/_Äùºã€ õ¿>h¶ÜÀcb\ºí6\8yÍ–€ÆËÝïwÀÚx-×hºˆöÖf\øÝqä-Äcõ¿æŸÓ?܇ mºíìgÝö´pêùìüˆŽó36é3u¸ø{ú³3Ç?Fbr2òæÐzÓ‚¦«—xeóæðÐཱུçWƒýB Rïšëv_¯ú…ÈÐêØÏºmî÷‹¢ h!ûÃä㊠mzì6A=64^¦¯Yæø¶æFkáÞ-+.þ¾yó r àÌñ=læž{)Î!ŸyŠ{{0¤`LkB|,Ò#pVY-È­õ—ÔÔHÉþ ÆÆÆ› æÒ.™åSÚŽðÄó>Ó'ÆùßGû­´·6cñSkpåÜ)dj³šñîÞjag‘¸\=w ‹V– gPλ¦%Ïm‚Á¸L²­D…E ýP>>þÙ>äÍý-}%ÏmÂðð2Óbp¯ù:þì/Öbhp÷S“ñg«ÖàO8ÃÎÐôÃ9c¦–qé¶Ûð§óg±ì›kYÇŽ[žÁép°$Ãç8eß\‹¦«&ôtÚðg±ÿöþOðø“«ÐzÓŒŒ™ZÄ'&²åSS’¡IMÁ¬¬ Ä'ÄaÞ¼gGoXQ²ÐÞÚ‚Lm;nÝö{¸zöV¸gæÄ¸zö–?S†ÆË è¶u C—…EO­Aý±#homÁ†ï¼Â+¿xe ®ž;…Bý~) Í– ‡-Ñ=«×mïÀO­áÍÌ67^Gv~ K–Á°„Þ) ÍnÇÙp#+î¬,—{·¬HJNÆãO®Â½[V<þäÓ˜1S‡žNþ„˜ØhvÖ±Ûv‹V®á͈úC‹å²ó ¡7.ƒ^p ^={ +ž)ƒåòEö‡J|\âcyŽw†‘™±^/réé¡0S"žÎ(ºcfÌÞ,_L4ÂNNùyã•ùÐHÉHF‡‚w×Ä(RâäÛ7>Š8ìѦ&Bއ—ROï ôÅ%ýÖÀà0Rº.2“ã  Ú¤kÏ©Zœ­ ™=6 Fhïˆwúºí°ºgàÖUlF’&Njí·¬8ñÑÏåÛ_Tî}ËÃá;uì=µwo5®ž«Ç–ׂ¤”üáwÇý²Åé˜Ø=‡Ü‚Œ^CvöL€kð>¢†:ñØ¢ùpõßB~~æÎ}1#Ýè½›‰YYôòÜ7ôßÀWækHKKFŠû—tZ)'55£ƒ}èüš¶;%%iiÉøâO‘’š„Øè1X¯›Pú×ãŸ/GÛ~†®[_bÓÖ-°}}m7hçnÈ„´hdçÌ”îÅÏ®¡«ýï=zVnâ<üÓ«ÛÜcBáê¹S(Ù° zã2X®\Ä¢§Öˆ.ÃÏ~¨W8ËœõN8}™Ú,”lxW.â_ö¾…'V®Á“Ϭ÷ynºl÷ØÙ¾Gæfã‰Ççâ“nFj\>æÌÄX¯O¬YŽô'ú¿¾û‘¡ÍÂÝõ?Ð~«q£ùxüñ¹¸Ú׊öÆz(<úèBô}©±îñêA†v J6lBã勨Úû­,Á Ž}Ýö{h±\GKãu,¾ï¶o†V‡Lí,ɾ\9GÑ cWÏžB{Ùº¨(pCŸ‹Ç{ÀÃøÆÃ³Ðxå"®ò+<±r .,tÛLϴΘ¡q—……Ù“®#TÄEGA­øs¨dé#áîªw[”J@®h­ J9šA°ÚKÚ„dä?0ùï›Ò¨ÒqüaÐq޹0¨Lêvʼnx§/;¯%6±¯?þp2ݳ+ƒ Ùx=Þâ^JlomÁ Û¹IJIqïEd–s57Þ@¦6 ÙåãüÉöý–Ækȉ\ñÌzT½÷RR’ššŒoô¸ö‡g¯Æ‹mXð¸?ü Z f~øA^ÑÃ]ˆzº%ÏÑ}¯zoz¿n³ϭG’FäϦg¾rfbÃK/áà®@¿¤ºY: tu ;¯%^=Æ8ý²6^Ç A¿¸çáÊÙSÐ/¦g§2µ:47Þ@‰»\¦VÇÎÖ yòÙõ¨Úû–g½L÷¾ÅÆV–<· E‹—¡þدX§/C›ÅÆ:©47Þ`gü²ó ±Æ]OåÞ]¸rnÂÆ ]Z,×çÀ–]QºøS@AÑBXLôu²è©5HLnÀÝVwŒ¢`»í6tÛ;P²á-Y†úcGxNS~¢ë×3ö‰ÔÓ~’vèݳzã2÷سými¼Ž"άf·Ý61ÛÈØòÜ ôXýúÈŒétdpÔ+5¿ª|ª—W„ÄóEŠ)dywêñNŸí­-HÔhà¤øN[·½fÓEÞ’íº¿ €~°ÎÐfa†6 w½ XôT‰×v,¦‹hw?ü×UlA¢&ú%ËPõí¸dj³°è¹5¢Çê—,cNú¸bT½·Ë}Ü,Éã$q–Ë øÖw¾Ç:UgOáêÙSX´r =µ†7Ëi¹Ü€öVÚ©ðå&i4(Z²ŒuÈ2´³P²AÚ¾ÆË±á;¯°ÎÇŒ³§D—ÕÅ(Z²Œé#S›…úcGpõì)8Ï¡ÊÔfAo\Æž¿u›½œ;z¬¯hOáʹS¬“ž¤IÁŠgËp¾î8JžÛ„ýûð§pR´Óé/Ëå‹ãÈØ7è x³yÜòƒŠw}‰ÕS´d¹û²¶b ;¶ô9¦—n¯œÕ¡½µÝö¶ìrÖ ¦ã(¯ž;'51VÜëvú:€äîOP)ÄáSªcê Œñ|år¹üŠÛÔ8ÚÒ¨ýX¿üÚãý¹sôX¢Œh\^_ªuZiÝpMâS•9Õš ˜”8@ +姬E¤uT™¾È4ƒ8}JÛáéô 8ÑÒzÏ£hþܽ þ§ÇGa~ºr]½{7l¨å♨z¬UbœJÌ "Ïá#¦Äé äž3u!ç–@˜o:!„yi˜¢1} ÅdïÝö\=W€#_üT O8[ŒöÖdçñ7•Õ tC™8QZìÜ]¿FƒEr®(wý±#‚ã7¡Û-Dž¡Í~Ó’KÝöXLY¹¥+gO¡ÛÞÁ«g͆Mô†)›[@³{Çybr sDð»l¸znB¤ž•uâ¼Ï|¶hå R¸rÖ-ž¾d5)èv‹°¸Ûârõì)Ì~¨Ùù…¢õ.zj ‡{åÜ'´¼[ç’Ñå–í¶w°»Ý©VGtÑS%¬¾§p|„±ÈNj€ÕȤe™äÇí;3†Nj€• [üÔD}æËyÊLÌq¦6‹ÝÁÏ\NÅ Ü çÀã\?·‰'^ï p“ É©n» –Ë l\ðÕs§°è)?ãÎà ñéYÈLß”…\åÓ‚0žæis… :Úm·±bÚp¢ê Ï*„è¢@¿³ó X I¶~Çë¨<è~ß-xîÞI_ _'E±‚ßL™Ëužx~Bð»ÛÞóuÇéÝê 7tÑB⃜>uÛ&ÍÛ[›qþd ]Î1ÀsV»íìqw[[XÉ%îûE 1Û­¢ÀŽwÛ;Øz„âélݶXL ¬ƒÅ”eÆ~†VÇ:KÝö4š.òÊqƧh¡G;'*b†V‡‚¢…8ñÑA8©tÙm8_wÍ|¡x.'*a†6 ùúGùljÌs9öá>d úÎØ‘¡Í¢í¨dêë ëÝö:©œøè Z¯£‹3¶Ìõ'6†ÂsýPø¹æ[[yì˜LˆðwÛ;pþäoÑâFÍ€y™>™6O: ê±Vµq„sþäoq÷V3Ú[›±è©5XñÌzüÓ«[‘á†oomaÓ2¸S:Ví} k6øÞAÍ¢[LÙ+Æy+(Zèóx†ÅO•àʹS¬£X¨_È>ô™™½$†­“+ˆ¾håT•‰ õ ‘W€?ü)IìÒo±\—íï¹SXñl/_dÞ}•¥Ë;X'Šé÷ÿíÈfè²°ø©¿àB—í®ž­ÇìüB,~ªWÏžbSnr¡…êuœMÎqó=S:;¯À£ïí­ÍüR{®œ«Gv^­,Aãå‹(,ZˆóuÇÙs3 9ãP(¸f˜1afðºí÷èquÏî1ãR 2.„ÈAµN_ý±#<ý=µBýSrnÃì¤(hä‹'›{‚“`Þ¸bÚëÊ·°QwoYq¢òç샲üû´0|ÕÞ·xƒ“€ÓAy\¨û-Z¯³r9NNKã ¶þ / dà HÒ¤ðÄÄ3µYìò£wiÁô’ ›<âËV<»–Ë ²úÚeï@—͆56á[ßy-×DË5[nð2ÉÐ} Ûgbß-ÊAjÀëáÕ³§XárV<©7¿ßÕa½rîè—³e¹i%Çæ¡´[›Ù×VË5žàüŠg׋.Ñf?”Ïj\ús\¦.‹twrúžWÀ¾ÐÒxwÝ-ÄÇîC¾àÉÎ£Åæ×<·I4»w¬˜r‹}ÄàÍŒI‹å:2tü4’+žYyK»a¾™X-×a•qM† ÕÎô¨Ý3 "ÝÃãȈÆÈ¸ Ãã]¾W?Ƹ½µ™Méa¿½–ËYG†ánk fè|çgn4‰ ž{Ã|Y Â-˜Ô/)–åø±‚èç>Á Ãå¥ëyŸs…Å×U|[ô}ÆÔ/)Æ¡7`Bpp †»Žò¼ÁЧ'º³#]՞•³Ÿ°NebÊ„xz»µ™'J?Cû ®œûĽt+N¢&EÆe¨ÚK âgh³P²a Ï™ŠOÒ¤„êÝÇY¼—¡ÍBÑOáx±ú?·†Ò»³ú–,c7oHÁÊíox¼ÇÍJ$F’F½q–Lí,ÑÍzã²Èsü,ªg~ãoŸÃ®_þÚk™n» ]öÑØ %¸rö”ǯ%oƒg¹|Ùyô¯Ú+‘˜Lgìðw™ÃøVY._Ä 5 k£JTàиøD%FtÓ³’¢03¿Ñ;B·88æÂÌ„hÄp|>–wS’ñÑh•+ά’S)Dž>ŸŠN0eVªca…Ùe_òÜ ’Ë»¡gVÍL_ý±#¼is¼<¬b¿T»ì°Z®…Ìé³\¾Èsú¤®%F Àbºˆu/~õ¿>‚’ç6Ñ;°*²q>¡ànk Ο<Žo}ç{!ks*0Eo‘Èà§ÇE¡cp)±Q<‡@ LâðöÖfÞîìû¶»ˆOàù7EÆe>—Û•"dNßØØ¸×Ï‹–#_ÿ(ûº¹ñ:–?[ƾNJö®ƒ¸~ÏÖÃrå" ‹ _ÿ(®žýNŠBv^[ÃʆòïíD’{Ù ¹ñZ,×°fÃ&Tî} +ž-Cý±#pR(,Zˆu/nA¥Ûùd‚Oýú«É”¡…ýë^ü6ŒMfOô%Ñm{’&I=¯ª÷vá[O;cÿì§(ÿþ¨çÔ­_¼ WÎÕÃr¹…ú…¬´Àº·°K'ÙbÝ‹[8£àBý±_±šJWÎÕc@‹åš['‹Â•³§Üc´%^@ÕÞ·Ø Þ-oü„=~ù3ëeåË%L/Âñx§[uMbi×€xŒ2E}®éH†6 Ë9>ûO‡…ÅÎ+ÃÅ—LB¶‘Ãáôúyv^ ‹°x¯…¦b$iR°he J6lbc3’’SP±ýu´4ÞÀºò-((ZÀ rJQP´[^ÿ š¯£ÝÚŒì¼T|ÿutÛ:ÐÞÚŒ–ÆÐ—áüïèzôÆe¼Ýw´\ÀÄëì¼\=÷ ®žû„w²õKŠa¹r–+¡_RŒ»­Íh±\gëNÔЛk6lbƒ“é¶ÜR E ±xe ÏvFGéÞýWÎÕc;ކYÚMÔh°xå÷]G{k 2´³°åŸ`@{k š¯C¿¤˜§yRÈ Ð7ÓhŒÆ\€}Ð…¬Äh¤ÄF¡s0D7Èi4ÆÁ ò–v „à“¤IAaÑBö/ã-f<0“÷žPöÈ982û‚îô%%'†Ìx!Ýöûp¬–k¬ò8£”Ÿ˜¬ag÷ÄŽãþ I))ÈÐfÁétðÊ:¯åhM´¶Ó†¿ÿ6üý÷РøÕ/^ËåX.7@¿xo˼޸ Ýö|ü³Ÿ¢¥ñ:ºí6^kž{‰É)¨|o·‡Êº°_ü÷løøÃŸÂʸ:(vöÑé xÌŽ¸é†kŸ‚OçÐ82è:MlÆ@Çö…:N–’üî1з¾wÚ*”è1@‡ÆøÂé!W}Ë•¤™ WÎ}"»Ïž(s uÛ;|î öU¦ÛÞÁnæ°\¾ès‡ùrƒG™.{º8õ¯6tÛm~]×Ýv›Ï><‰ zAwúbbÄ«ô5Ó,˜ ]îf‰Â¢HJNÁÁ]¯Šn}/,Z€öÖT¾÷2tY(,Z€Äd Ú[[˜œ"«ì¼T½÷ªÞ{ EœÝ{‰šdç"S; ‰š-D¢FƒöÖf¶în›&Õòwø?y–+´³Èßâ¿í­Í8¸ëU¬ì²cèæŒQ¡»|ÕÞ·è×úHJflð½¤N (MVb49|Â×òÞ¾¥ñîÞjAû­6›Ýv[Pœ›@àêôqi¶\÷é”-éȱIÉš lhkì"õÏéS†.›oxeD.Í.w?èl(ÇEe}Ú[›qáäqž@wsãu\=wJÖxøÏ×ÒxWÏžB¢ç>†Þy-L¨(*ù}‹±ÑQ¯e††Ä?O¾ÓôÝ»pã³/<ÞKKKÆÜ¹Ên§¹ñFÈ6hÈÂåõe@ º7v¬xf=f{Í ØH´»7zè/ÃùºãØòÆO‚2\!îF›WÁdŠîÚe˜•…™‰òÊÛ½K[ž%o÷®—ŽûÙ>¬+߂ʟ¾…Aj€Ž}}j ê͉…ui·4ÞÀùßÕ ýV J6¼À¾ÏÆÍ>»žÐ-|¿þؘ/_Ä w|mKãu\9{ ƒî8å.&Nùû;q÷V Îÿî8ºìXñÌzdºõíJ6lâÕsõ\=œÔV<³ž•’YÁ‰ß­t˘ :¼û“;¶ñòEè  h!êý Nÿ¼öÅ-¬Ê Eaó›ï²ÇÖ~tŽAÎ+ÄÚ· ÅË·dÃ&T½»‹—fluR õtô¸Åä—•ªwévœ [Þ˜h§¥ñ:o¼MÙMløS”»¥L¸'¹þØX._dc˜›o ö£Ÿcí‹ßæ=ƒ¸å2t´3H  ÀûÍÐl¹Ž '£½Õ}ÎW®Á©cGÐÈmÃ]†É¬RòÜ ¸rŽ?¶-×Ñb¹A_c‚ë„W~õì)8) +8eîúœ…o<¾¶¯o£ÛnC¡~!ÖUlá»ø©5¬ÓÇ\«Ýö¬xv=Šãê¹S´MîøïC»^…“À7_‚ØØ8”lxa"†ÜãÎÄÄ=Šu/nÆÁ]¯²}°Zn dÃ&I EPÁ­ ˆ¸%].ÖÖ{èpz¼¿à‰G¼ÖÈî]EbúĶ÷õ9üªCÍ_°p:(ÌÎ+ ’ÃÙyÐ/^†»·ZXuû°¢’/jG]ö$j4Xó/»ø©5±´?ùÀcö/C—…×|«;´ƒ7ëŽ fÞèxÜAŠbghþñ]~IÉ)(ßþ:šo`]Å-`ão3´YøÇw?àéÄÑíÝ€aÉ2œ?y%Ͻý’eÈÎ+ ã“ÝïÓeiǬbûK×Iš,^Y‚’ /°a*úØò7þ¹åÛßðG¡Ë.ÄOñcÛ­ÍÈÔÍÂæ7ßeCK ô é:ݳ”íÖf4[®Co¤Ç«ÝÚŒì|¦Ïeê Ý,¼v VË —Á|¥æ+ ( ÇiæÄ@sÇX¿dï$V®°h6¿ñÑ™´ m^ûà#v¶®¥ñŠ–,ãÅIgh³èã-×é±}Š?¶P²ážÍÜë™E/(ü÷È£‹©›ÅŽg» n\H¦vþáÝ`1]D’FƒEOÑñßL­ÅG]Ä^[-îk™©¯ h!6¿ñ.+âMÇ•Óöehu<èé@ÆLW‡€¨Ã—”œ ˆ=Š8}RS’Gè‚•$Xþ m›®)œèËP²áY›e¦:Ä­ ?c.tŽËþ 5¾”ºmâñrl6 ‡xÜ,÷ýAÀ3/ÞØƒ›”¬ñIa>ãÆì :8íM8>üøÝeï é²uàã™c®=)ÈÐêmi¼AÇ£=÷B¸;&°ë:Ãj½6Ú­ô&„¢%Ÿp²†ŒÆ˜¸éåϬGv^!Ú[›ÑmïðH‡6Â~¿›0 ¥ñ†ûúQæºn·¶ ñJCh®OµÜ¬dÌô}ÝÞ‰®®~÷}eãT”‘CÊÐîîþÈsúÔrñLT=Öª6nJ‘…ôxù»s­¡]â-pÏú8©¯ÉîCM†6 ú…“¯ÈO&óÍÈÎ/DÑ’bܽÕÌËŬÆè¸éd»ã¦³ó I‹J_?ÝöÉ™ÉéÌ€H<Ÿ_ (2Ó·­íèíöL<^P0©ŠtF"b–OÝ–EJT?Ëf3BÕtðwïw¦À'òD™Ut‚Ãú}VÑ8¿sáGf<ß—Ííï§g¤ 7?ÛgªÙ½ )©âëûý~îâ%ÈA W8a*î+¬{˜þ¡92î5ê5á¶œ@€\šÊAãÚÛ'¾)IÉ$Š9}é³yÝÝý!Í3G L"èfl¢£¢Ð;âB×°+af?˜Æc‘7ËG ¨ƒ±±qÑX>HŸ¡Üj¨bN_LL4Ò3<ã]FÇÆa·÷¥ :U‚)Ž|,í^I+c¹|‘Ýr·µõ¿>‚ónÎ@à¶!G]Ýrù¢‡Ú>“2§Ûnó/&¥N³%¸ãèw 'Îà*•>Hfó~JPžô¸( ޹%}>9+µ“^+Ð{³³RN ®„K—H °.©ÃdÛågŠ5¹)ÛÄúêÏи&5ÞAA=Ü4 ¾îyÂôyJÞ'¹Ï ±©Ïg{A~É%)âz{)ŒŠL€%%'(¶sPÐ餗x;;{‚R—ݫ嚒]ðŠ…#€:H  þ×GPì{qŸ¨:„‚¢G‘¡Í‰ʃ¶1‘ÎÈWꢻîìúGyï3阺ì°rnÆÍ–‰”:™ºàn°áŠÃúCsãu|vîTÐÒ4¦#ã´ã=à×Ò®2нÉ=h™L8ٔ‘N¥&•jWVv­[$MX·ŒÔaòÇÇ¿º,&ï)Û˜ú„õ¶ø‘jŒ¡ÙFÌ_=Σ Q…ùÉHþ©×¤m¸î1ÑhÚ99ñ|Lª5æcþõ'“ŠÍô58Éçy€·‡@ŸWÒvøŽç³IøA™3g׊ìÞ0>]á½?44ŠÎÎ^Ìœ™ÔöØ4AW.¢ h ôâêÙOàt§,b'Ë¿·“ˆt ÐéoÜǬٰ •{ßbE'·¼þ^ÚšEO­AÕ{oà S: ŠøÎs3OÒ¤ð])w›—P _èNgD§*p§Ê©zÏfˆ#ìÙ~«-–ë(Ð/Ä©cG0HQî@›ÿ·ò ©\ª?ɦȩÚûV<[&:^õ¿¦ÓŽŒ ¿·.— ƒÔ²ó Ýé:PþýHÒ¤x¤*bë¼_µ÷-v<š-7`m¼F§ZÚûÊ·¿Î;fII)ÆFFÑxå" ‹ ä¹M¨?ö+Ö¦Ø8ú׎ÅtËŸ] mö‰`S ”'ÜnÖ˜ °º j”n–·Ñ#t– S° Ó©µ4ÞpgÜzv-¤pìßbÝ‹ßüß~ŽÿÇÎK*Õ³[ø”û{0:: Û×·ñ¿°…îTYWÏÖÃÂ|§6l©_Óe3´Y¼ï®öÖf^=Ü”kô}q/¥YÅö7ØïòŠgÖ³ÚnL]ÿä®kí‹[08À¿ç1é×xˆ-ÓeOÁrù" Ý÷G1˜ñíëÛø§|úGÙûBý¯9©Ûžú ú=÷13´YÈÐÍbÓ­Y-×x÷1'5ÀÇæÆî¶FÑ×Óå¾O Ë­[Èœnºµ mêý+^ª6æu†6‹½N˜×Ú,ÜmmÁ?ý`+=Flj6zÌZ,×á¤(öX1œ‚gËšç6ÑÎâÙSpRÈÎ/dõÿæû¯³bÞ‡v½ŠÍoü‡v½Š¢%ËWˆÏþãSÌx@ë±£÷.ç9Ĥ\+,zk_ÜŒª½o±ÐÜ~̹š¡ËBNý'L-G_7îþ=Š’ ÿ•wÚ[[°á;¯Ž}¸åÛ_÷HSè9Q¨§Ÿ-Í7h{Ýiéç¬ûyEÉü]]ý¢ú|11ÑÈ ²_$DÑ™>ÈèÀ½{÷ƒÛ7‘Êf;ýœ”œ‚Ší¯£¥ñÖ•oAAÑœ¯;>qL ÿ˜vk32µYØòúOà`Sè0ikî¶6#;¯åß]eù m ©ã²ó põÜ'¸zöž i"×N÷¯t&õP‹åº»B”ÿ É)ñÂ"wyÎ/£5‚9b´Þ´°K¹%î4RsÝå'Ò;]ǺŠÍlz'&“^F¨ÝÊ¿ÝÚBÍö×¥³¸Sðüû`ld”NëôÜ 6mxzã2Ì}tº;ílÙ«gëÝã´€—¢IyÂíò¨ËŒpÐ94ŽÌúW³&6 cÇ«dÓ§ý„IŸÆIÙuv"µWaÑB6íó]åf10,YÆ:8ÞR­Àš /À°dyô dh³ØThIš,ZY‚5^`C9˜´kÞ>€NÁÅ­G˜rM¿¤–Ëa¹|ú%Åh³ºSzqÒ¸‰ÕÐ6¸÷<6•Ú<ïqtÙ5X³a“×ïùš › 7Ò÷» Ý,lyã]´¸W~Ú[ù©ÛJ˜”`î±Ð/Y†¤dÇýÇ’ ´³À7÷±EHJÖpÎ }Ÿ<ò¸hºµAª¶’ç^@Ñ’‰”iÂ4kâ©Ù6±ú‹ÂtkB’Dž-ÌûÛß@‹å:ÖUlA~!.pžƒ‰nñnFÔ¹½µñ ¾70)ך¯¡ÝÚ‚ ÷yf”aR±ejg‰~72´³ÜãumâZv;lEK–±×_Ñ’eìóÇ rýqǺT¨_€-¯»Ó¶¶°Ïò`-ÝËallÜË,Ÿ²§/sæ ÄÄx6344Š{÷º‚ÚV—½ÿlZ,×X§ƒQ OLÖˆ¦ãt:xiœŽ‰ÝÆzã2Þk_´·¶`Ãß¾ó=Þ°ÛÞF§3⦷IÔ¤ CÇO•ãD/)€¸q"r‘Jï$–® ?¥Ï’e¢v3ýcìà–éíìÀ±÷Á*#õ?©üeûSAVb4oó†ðu¸á§OãÄò×ʹv½¥Z+›¤IA¦{)îØ‡ûØå8à¦ëê²{¦\Ó/Y†»l®Õe‚\Ë<êJÔL¤Rëæ¥p³yM¥Ö-‘îÍ×pï‡ÂÔm4âßt§H?˜q´Z®‰œCþ¹aj•J·æÏýJ˜šyNÈI·@pÞl¼z÷sPäzJҤೳõXþÌzdjgánk Èš-{ì3´YtRHÒ${Œ©bç6I“ÌŽW·ÍF_Ë×XAmúú»áñ¼1®?&­µñšèw0S›%û9lì=’³|ÚY(Þ¾âNŸ·éÊ{÷º‚ž— ìÍð#F{ 3\ùÞ[ìëDN #F˜µê½·|ÆÁeç ê½·PõÞ.-)æ·i³¡Û6‘Þ†K;ÍNÕ{Ò©‰¼A§ÆIÁÁ]¯"QðÏ›§G¡žž‘ÌÔe¡¹ñ:¾¤êR¨_ÀKã$ö~Br õî±Ùë;÷ç\; õ©¥˜±ï²M¤ÊÐf¡Ùr_^»ŠŒ™Z´[é²DÔ“à¡så¹)Øx¯w½ªXnm&µÕ×>óøŒÙÅ~§Üi×üÝ\%L¹Æ8 IÉ)HÒ¤ @¿‰ /›ÏúlÈÐê|¦_ë¶w¸ËJßcé{…gª1úðS·1djutJ0ÎX‰ßߺíèr§ cŽûòsé{¥×tkLûº,´Xn°q|™Zþk..¸Ÿvz̘Y8_›¸ã,†X<_†6 í·èU¬|ýX._DÊŒ Ÿç”?æœû¿à¼1×k—ýžßéì˜Ôm×í¸ Ÿ?ÂnuqΟèùâ<Ë3´Yî}AØÐá%žoxx6{¯èg™3ÓE'È‚bâÌ\ÆÆÆÑ|ó–Glh’0oþCŠwT.íÖfœ¯;Ž¢ÅŸPw[^§ãÔ9¤N«"­ªß¹; ™¹GœYÜrIqfœæH#òäZTr’Ã~¿SÆ€vk .ÔGÑâe8_wœÓ¢ŽMÎþÖftÛm“OÑçÅé³¶ÞC¿HŽ„„8Î{Èo§/qæ8}ÐÛÝÛÖ»¢ŸÍš•‰œœ™~שfÓEÜ½Õ ýâelú•Ü.¨ÓªHë‚+€OTbà”l:8i؈ӧ$‘çð…ÜjÕš¡d&‹ûÙY´¸Ùù!Nw§’Ó+åôÝëè’œåËÍŸ-©mì U;}€tj6@eéÙHêµiÓÕÏò…Ù •Œ@Ð,'N_pˆ<§OE'8ì÷<Ep;~$¾Þ^ ·îˆÇe¦¤&#îƒ5§ª4lbÌÊÖJN_Þ¾Õôø¾©®pÂT&r¯0e-çŠ33ËÂ÷å/g£7þÌ_]6VèÜÝîÍ–ë8uìþÀÙõ*k\Ü›ç¸ÿ 5½ 7wÛ:PŒÖ:evùûÕ¾ÈX Ç«Û>Ñ­©ê}ü-—/ú/4ï —fsãuœúõüA°U.¾Äšýuøfæn ‘»…‹p¼-&ç@Å7+§smí¢ŸÅÄD#'7´z´!uúââ0+G+úÙèØ8ZZÚ06JR´,*¾™)E|4'ÿoÒø9Æ´8­ŽX®;ŽB·Ì ó¾ÜãiÁÚzŸå¹Â±rĘšÝ¢Ìþ/··6ãüÉ-Ä c'>’'*ßb¡…ƒ™q1yoNk·½NŠÂì‡ pìßúåøµˆ‹µ×e·ÁIQÈ×?ŠÚ,œ÷âØ2Ú…ú…í­Í¸pòøÄØ èlQ{)f)¸"Ìr™Åà^ïíVþw,ÒG[{§hæ ˜•£U4û†1o¾ùæ›þÐ;âBÿHàO¢¤äD¸ÆÇá E¨¿ŸBFF¢£Ã$É0 ²aCÕc­jã¦4Ú„(d'Ç`F|´¬?Û üs…ä˜(ôLâvç«ÿDã•‹øcýI RH™‘ì¼Búý˨(|üá>\8yöö¯qéÔI<òØ"ŒŽ ãßþi2u³Ðèž!¼ÛÚŒØøx4^¾ˆÿ[y±qñlqÕÞ·p­áœŠÕ•ë¶Ó¶uÿöK$&kWˆª½oñêtùS€c?Û‡öÖDGEáÞVœýí1ØÛ¾Æ7[ €Ì=!hsdd_|~¹sçcñÊ5lY±òõî×qqñ´Nç­Üǖλmˆ‹‹ÇèÈþï/†ÏÎÕãnk yl1m¿©gCgû×x„S·½½Ýø³¿x¹sç¡þ؃ øS\8Y{;ÝŸ?ü)î¶6ÃåÇ­ÿlDÝ¿þ=né{¬Àp·Ý{Ûhsæ`À@O7ÛÇzAÿþõŸö°ç·ñòEö3'åÀ¿¼÷´Ù¹ÈÔeáÔ±#¨e?£pìgîs/ëÚʃˆ§ë>õë#¨ýhâ5ŒŽŒà‹kW‘;w?%û_Á wy§ƒBÕÞ· Í™ƒýßxl1FG†ñ¯ÿô2t³Üb÷ yÇ0mžøè â8mr9´ëU,Z¹‡v½ §ƒÂèÈþãįÑm»ÇJÈ0ÿ2ãé¤(\:uuÿöKôØ;pÅ}®cããqþäqöÿìøÅÇcÐá˜ø~´µá-’¼Þÿõý=pRHuÇêa¿'NÊ*æ<¸]'5€?ÖŸÄ¿»Ï¿ Q8öá>œ¯;Î^+Šã^Þ‡µõ.ÎaÑb™3Ó‘5{r-‰1QÐú±é ñLì-’’D?£CøòË;ª™ñ#þ© 9·‘C÷0}?wRA*6Xã7Ëå 1—Árå",W.¢È8±3hÎ~¨ÐCd–ŽÝî)›¡ÍÂk>bg°„¢µ Œ(óÜGyˆ%³¢óaÛLm¾õï¡¥ñ:*÷îb—…™Y·|÷8)Ší¡EvO±âÅõÒw _²Œ—£@¿O…»íh45àê¹zÖN1z¦OÙy…Ÿé—,sKTùdno¤wR}ŒåŠŒËxÂÑÚ,løûWè±oÿ\Y®³ Z3¶°h!ôÆböÚšÐ#œhóymÒc(5»ˆ@s’FƒE+ÝãÝxƒafÎ~É2dçrÆ9ì¹Å´­â×{És›`p‹i3"Ëÿøî¸zŽž!7,Y†BNR1Qf® ³¢pâù|9|IÉ !_Öe‹Ó¹ùÙ’ñ}jsüÔ‡:z„©‹Ú®°è¨(ôޏÐ5ìò!̬Ë‘YýbZTÖj¹ýbO9ˆAÇÄæ6Fd–ûžL&ý’eh¼|—/JÊMp…—iÁu:þ~xë;ßÃù“5ty®µÀ6oq[y󊘜‚yo7O0?1%ÅëRø‰²ŽŸ¸Ð²¸8}·Ý·°sv^Ö½Hg9Ž¡×Ïd2³e\ôØqëãþ`b=×<· ßú{ñ±×ùí3×V‹å:ïÚž/§Är D ¹ÛnñJ'7ïA§øø%IˆiËAª-)QfF9ørøbb¢‘›Ÿ[ěӟ‡ü¹zuüÌæ¯›;ºílª!5Áˆ=#¹¯zäÖ"õø/a'=. ƒc.¤ÄF!¨É8B0ÆŒ¨,ãx1dhuhn¼Ž.{‡‡80-Ð..tÛmïÀÁ]¯²3ŒIšdçðl Qf1ñõBýB$&'{+gj³`m¼Žƒo¾Š?ü)¹sÖÒ¢êÍ8øæhûܯ½ù6Ïl‹å:ÚZ¾¤ãúÜ÷_7‰ÆË Ð/Y&K0ßbj`Û(yn;bBË\¡æ—ÎËvè™<ÆN)fŸŸÉd.Ô/Ä]Ž }aÑB$i<ÉÐf¡¥ñ:îú>þÙO±È}~ ‹¤E°YÁbM ïÜÑâ×wý`¢Î¶·¶xÄ@*ÐÌPfD˜¯œ;Åd–?†½´°óÄ8.`…—{vö%ʬ$Nç¾lnóêðåÏ}0äq|\B*Ù":HŽAX¿üZ2olL4ò ²‘––ìñYsã ´X®a͆MÁ1&R--7ÐÒx +J×Ãé &}áµ4^gó.ŠYÖÒxÃýù ÁƒPvÙ§3Â9bâÌ#ãô,@§aãÂgön¹‡d‹JNõdpRtÐÿŠgʧ¬6‘j‰\S¸;wÛ[[ØÔfJNñÀ€·ïØ%7m0_R²ïœÆr D²%6¬£zcGþÜ%¿Ñ±q|ùåײœ¸r®W.¢ h ôâêÙOà¤(dç°¿HÊ¿·“—‡÷Ô±#°\¾ˆϬÇÝÖ,rÇŸ\=W¢%Å8²ݶ¬xv==µõ¿>‹é¢èë«çêáÀèÈz{ÐÕqNŠB¡~!ÖVlAÕ{»Øüœ›ßx—µa¢m·\n@¡~!û+ ã3öl{kÜ1:WΞ‚Å¬Ëüâf>·\¾ˆo}ç{€?ü)Ê·¿îSL LŠ1`t!;9Ô¨ ƒã;Tr÷1ƒ Ù*îð&Š>€^âž׋J¾ò÷îuÁÖÙ+ù¹_ „my— ãøyKArï^¾üòkÑTnl=)AœÌ’gRr *¶¿Ž–ÆXW¾E p¾î8{L»•Ðü»ãXW±çëŽã|Ýq¬­Ø€^òø‡w?€åòEÜe ÝAµwAº%Ïm‚Þ¸B¶×–€IDAT §ûa¹ÜËå^Œ •ÜGY:‡Æ‘™@¯éjb£0`pLmV† mV<»>ÜfÓŽááX[ïùtør ²Uáð*qú€ Ç/ÁËZw_Ÿ7›n¡»»_ôó.{>þÙ>:¨”4 Ð;“¸³{ N§ƒý?$ë¤(žSÆÔÑmë€ÓÁ/Ï}-|¨IA†N§ƒbër W»íøøgL²x`4=%o£•-žÊí­ÍÐ/)fwòé—ˆì†U?¯UbœJÌPY‰Ñ¼ÍÂ×£‚1ö7ö7ÐxašÅð5\ݶ¯âËr¹röÙ熹J‰ñk!z{)|ÕÜ.šK—!Á½w!%5Ùš•E5N@;~…ó’”sç»øò˯átxjý17E9Aä›È 2=Qykž{kž{µnqÌ–Æ8ô­aT (_PD—z‹ÒÍÐêÐb¹/D‚§éàìfT½·KtçZ·Íæ@æÖm¿‡ƒ»~Àö²}tÇ ÒŸ¿ŠEO­A¢†ÖîÊÐÎB’F<èyº£‚g=`BüV-ô ŽaðG 9Qæ`l`k4]”UŽ+È,&JÜÜ8±¡„@ÌìÞ­;6Éø=€–e¡ýuÌð1„}#‡ccãh»}O2O/—Y³2‘••ØXÿ‚=ØÄÁlÌàÆØÊÝÖfœ?yEnm¬-œ˜¾€ 0HQ8QyËŸY¯Þ˜°Ç·¨Ø8˜îÛÈá z#‡<«y9&ÑÑú_ÿ –Ë XÎÆÓ?È®ž;…’ç^ÀÕsõ°\¦ãnK6¼àÎNp NjÙy…èv§GûóuÿmÍ_ @¿§Žý Nj…E ±îÅ-pR¸z¶Þ¿»Í7à¤0ïñ%ˆEɆM¨?vfw©®BTt4²ó ±®b îúýù3ëY±ß°öû]¸¿ÑŠu,¤ŒÃÞÙ›½×gÙôŒääÎò² TŸ{W.ŒŽMNn–ÏA»w¯ ³mm“Ù‚|2´:=”ºfç¢hÉ2ܽՂÿ§bK5ø¾Ê:‘j>‚o¦±Ã ¥…|¯C¿„ ^W±NÇ…“ôÿ“4)XÄÄçrf½5”oÍ×±¶b3 ‹ÀlºÀ~^X´€' œ¤IÁ¢•%X³á·ðí 0,Y†G}Ø5®Xm .™œØ`’¡ Iš,^YB;«nÛ=¿^)qæG]ä!¾Ünæ:|íÖfdç¢üo°K²¾D™AæÅnYæsf#cSX>BÄ366Ž{]øÏ/îøtø˜\ºÞtˆÃMØwïz#sf:RR“qÛÚ§½¾Ñ±qÜ»×…N{fjgø?óçåÀh ý’bEcí2´:uu«Ú«PµqÓ†{ƒ.Ü þ¸`Á ɺÀ~—ÔĪD·½ƒvÏè1$¹5Ê’’ùz}\¸"²õøŒM Ñz>æŠ:üáO€ñ€.[NTþÜÃþD‰z…1ÈBñåA/âÂc*ñž/Qf€‚Ö ê½·°åŸÈ9•‚$ÌÌ^WW¿×e\&ˆږs…¨Ó埇‡ç=m–o‘HÆù³˜­¸}«‘˜?9GÿÔ…œ[Âd)`Åz›‘¨ÑàDåA”lØ„’ ›pÂ,Œ» ”.÷20Wøö‹kŸ¹íXÈŠÕ®ð"V;Q×Dì/Àˆ:"S;Ëà í¶Û¼Ú/%Î,ˬç §H×gmFÕ»»Ø6}‰23‚ÌWÎ}øú«/ÙYË m2µ:Z(øì)´·¶à ‰ï#ÈÀéÂ×íìÌž‡O›•‡U¿'†*cú¤Á½v»¬X?†„„XÌœ9©Ò;ƒƒ ʬ<ê´*ÒºAâùT×lH-gcúÔ;“*&D×#;¯ÐkY"Ê™fx>yŒ£««÷»û1<<*û¸”Ôdääf…-ÃFDŠ3ûC|Bró³10ÓöÛ^5û††FÑÖÖ‰¶¶N$'' -MƒŒŒ$G€GN˜†LÑ{´?ø¿‘CþMš0ÿ[8>Á7Nçzû( 8%Ó¦I‘‡¬ì™HÏH w7ü&¢fú„tuö¢³£K–ó'$!!i©Ä'Ä!99iuÞwÔiU¤uÁÀ'*1p*7ÍCI§ÌôùOä9}j¹’Ão ™é›``À §sC#£pú5£Ç‡™Y™Èœ™î0 fú„dÎLGæÌô€œ¿¡¡Q؇ø;q’“œœˆØØ$'' && qˆ_rdB𘢷¿iA÷ð82â£12îÂð ‰ ‚830…™Žßðð†‡G166ç ½ù3™Å¾ÚkÝÝvºÎüùïeì6ä|×女›®Çî½=¶|§MVÙîN2fòwï5^½„Ùåþô‡O?¹Ú£\ twú×B`¨éñ0…žD¾S×7X8G]˜™nBŽæù+)±@oB4Z)_ǨiD~ANÝ´blllÒNé)HIÕL g!â>‹é îíüÃŽØo[°â›kÐÕÙƒ¾ž€–~{:mhm2{8} Ù˜ËçÎááǼ繽cmEk“äø.ó w½‘Q &1}}ÏZošiÛçdÕ%·]¦Þ•eÏ©üñ“Z4}fBé /áLM5þì/ÖbÐAáÐ_ÇßïÞç÷¸£/„È'y$ ñÞ3y¶A4±Q _éþ~ùNŸ+ˆŽF¿O§@ LGâ6#™3g„mƒ†’D´Ó'†µÉŒ×6~ãrlÜö}üþãÅ¥O?ÅCßx _[[PöwÛ5ÿçþú^ÃÙš£húÌ„?û‹µxüÉUl=wo·âg;_AÞ<J_x ƒÔþtþ,n~v ùóôXYö<þíŸöàëI‰•ãÖ¹ï{߯Óë¿…ùOEËqËÜüÌäa/ܻӊÏ/œE·­ƒеÎÔTcÐAattöö¯y}ê+ŒŽŽàâïkY{œîݶbVn>ëÔ :(¤ÏÔáñ'WaÐé@gæíowìfÿßzÓÂù¿úà :(ÌÎÍCw§=6üõ˯"Q“³)C«cÛÉ›gÀ½ÛVɾÔýê0Ï>ÂÔfÄí£Q£´ãG Á‚qôRÒ4ªÊ“«ª×éó]N.vWÕÀlºMZ:¾ù­ÿŠ¿ùï¯ànËU¬\[‚ö–h½ù'Ì{ˆ{·¬°Þ´`þFüñ“Z^=3fê𷯽…Ö›f´ èã+Vâé²°Þ´àÞ-+fçæá¯ÿá5twÚÙã„å„u¾òÓŸ£õ¦E²·Ì¼'ŒhúÌ„¦ÏL˜÷„Ñ£¯ùóô<à鲘ÿ„/xŒ×o}€ØØ8{òçéñøŠ§yõ2Î⌙:™P8[sËþb-ï½Äd þú^ƒõ¦¥ÿõo‘?O?~RËÚý÷»÷áóóg<ú$ÕnÿûS—1C.裠‰Âý¡ð®ßõtÚØë°éê%üé§Ã=D<›Byl°Ûêé´y=^8Ö=6œ­9Êþ R¾å¼¤Ú¤p¶æ¨W厕¯~„b,ƒÕF$÷Á[ýé)˜•3ßÐçã}>fåh§¼ÃLA§O“–MZ:t9s`k»ƒý;^†Åt¶¶;XþÍgq¿í+Ük¹†ÿò·Ì™‰ˆC²& ÿŒ¿<›”œŒDM f¸cÓz:m¨ù?ÐÚdFw§ƒNJ´}a91îݶú,wï¶óŸ0âæg&ÜüÌ„ù"NžB¸}àÚ+V× ÓÁ³çéõßBBr þõýŸÈúâß»eEݯcÞK1Ëãǵ ¿D‰LBÇYØ'áùð×>BärÐ…ŒxzvO Œ¹€p&ì`Â?îݲâŸÔª"Ö41)Yò> ·?¡À[[­7ÍøÜ‡}ó3“G}N½ê>S‡3Ç?öz¼TƒÔÎÿÖ›¯6Ê+9ý“9çrE?”¾ö˜1JIM†6+9¹Yxx^.<ñró³¡ÍÊœ’K¸Þ˜rË»BlmwX'P“FcjRÓ¡IKÇ¢'ŸÂ©£‡a¿óŸÐ—cÁ`llƒýíèj‡6+ qãHIMư3}÷ï!%Uƒ ­†%F\®?cÞÁLÝLöS.5]Ã{?1)ݨúɰtõ$k<Ë ËÌœ¥CîÃ…¤0sÖÄ—;1)±±Qˆ‹AJj2bc\l;Ùåâ?~{QQ㈋c?gìµ·YQhxŒ÷‹&1)qqQ<{®ž­C³ù]ºæç!Y“ˆÿøíQ4^þWý%{l\| “âñÛþ'$iRð‡tÚ&f¹71)ÞÃθxz3 cSÕO~„•ëþÊ£¬T_RR“qáwÇxö¦©IQ˜Á‘l™!ˆ¡¾N—ï¦ÄE!-! )ÑÇô1×é'GÿÃδ[oâÁü<üòxþå޾ÿ.þvÇnüþh%Ì—.àÉuÿ/Œ«þ_™?G³ù¾ù|~ùÎN^XÄWæÏñ‡ÿtÙ:ðäºÿ™ºYøí?ˆ¿úoßÁÆÇxuY.]àµõäºÿÂÖË-—©›åÑÞoÿù´Y›‘“_ˆ¿úo[Ùþ;ðއý Â~Û¸ræ÷p ;ÿatÛï¡«£»cÚ¬Í}b¾ãÂ:ÿã·Gᤠ{0ݶÞg¿|g'`dò¸wÅÇE!1) ‰±ˆ‹BLô.ŸþæKPhxß|¾_™?ÇoÿùCDEGÃ5>݃Ùì}ÌIõãÂïŽaíßTàèûï"1)ö6+þ÷÷þñ|9ï~'üLl|¹ý`l÷÷ºxrÝá{±óÀ´]hx”-Ûl¾æõÜeþ\ò\}r´Šw]0ýÈÐ=€±‘Qv< â“£UpRxØð(þê¿mõyܵ6óêŽçÁ×ÿ‘­ËIõóÎ_»õ+Ññ»þÇüùÚõXZRÊÖW[ù!¾nþyßøþæ{ÿ_^¿Šö/þˆŒÑ8¼{/¨¾^ŒËñÒw£úÀ^\ª¯ÃÚŠÍXUö¼Çë©JD;}c1»‰Cøúµ*ûŽó©¼ôÃݼ×L9†˜˜h,yj%–<µðÆÿù?÷A,ª=É+ûÖá_zØ$VŽyMÙSXNX†êëň£U±ùs”,ǵ#îƒX´œÿk—ù\Ì^)ÛDûµÜóWô·wþ<ž[7Ó>sŒ˜M²R}áÖA˜Zäj¢‘,¢ß._o+=> ÙIÑ@oàS…T÷mtµÅ£â{ÿ‹é6nù;ÀÊußÄ=ë5öÿT÷mddÄã@íIì,/ÃÆ-Ç›?÷A$'ó¾×T÷mä=ü Þ:üKìÙZ}Å<ù—OcMÙZX›Ìhûò žü˧q©î_±¶b3¯-]N&ºÚâ=Ûܶݣ½´´XÌ~r Œ«K‘?÷AÖ¦G |ûÛ¬Mf¶Î•‡DÛÈš5/ýp?v–—ᵡ¶ênœ¯…޸ܣO]mñÀh¯?·ü;žÆ?ÿ3~g'û™ñÏÿ ú'аqÛvlY½ØcÌ®ö·£«­ ðW/ þ|çLÙ‡çå¡«­Éãs®mT÷mÉs%¼.Ø~lÛ ª¯—Ïß|‹Ÿ\‚µå›±³¼ ùsßñ°Mx~ Æå¼º…ãùêÿþßl]xçïé²¼ñcê~ªt%.ýþßðüßÿÿØú4É1xbùRW—Ò qjc1k³Õ=»¸ïøiœ¨<k“fS––”¢¶òДvú¦ÜòîT‚êïCÞ<ƒ*–‚w–®.…©¾¦ú:,]]ÊûÌÖvÇãÿÜ÷4ii¢ŸQý}í””béêR´6Y`15x´%ÕóïÆmßGrj:öl{‘׎”ýܶý½¢m0vkRÓØo}öÇ[_¹¯ÅÈŸoÀÆmÛ±qÛväÏ7x„õø‚;q Äêeé‘ùÌÛùô6®Âc|Õãí ûÐ÷;³©¶¶Û¼Ï˜ööl­àÙë FÃUXžiãtÍQö=Æaܸm;t9sðØŠ§ak»-zèº'>_aÁ¸.Ä΃¯ÏåÔÉEx]0ý¸øI­äxzo{âJ]srΟðZ»v¤ú …/{§2†@ üYÞmšÄò®T_/¿³kË74;o65¸—Ó¶‡el&k¿û¤”W˜†iØA-L6C—30.XûÕØ'5@Âtj‚Ìô„iƒ’3}J™é#1}0 lmw`65(Ú7-Ç+Y§œÍÔÌs¢„ܺOTb_3ã*ìw¼Í¦TØË;.ãào¿ÂÕv°lTò¼‡ âôÂ$`r€+‰©¾.¬Ç+U§ÙÔ€3 8¤Á<'JÙȵµ¶êë|0ã*ìó¾µÉŒÚʃЗÃÑß‹Ãoï É8Ò¯pµ •>ïá"æÍ7ß|ÓŸzG\è o$[ÛXoZ1/ù²×Všxýi«©Dõõ¢úÀ{ìqLR¿¶ úÀ{ЗÓ_ܪCíJý"³µÝÕGñ2óžÞ¸zãräÏ3ˆ–ë§7¥úîOy‹é¨¾^XoZp©¾—ÜåÏÔT³Ž™°~¦/Úœ9¨­<$Ùo.ûw¼ MZôî/³=Ÿ;.‚Zá »R}´¾—0ç÷ª²Ø¸m;oéÈ`,fËX›Ìì1T_/[/W ÖÚdFþ|^û RDÛ̳ nýL}bÇKJqéÓ:\ú´Æ’Röø}ÇOãLMµÏ¾ ëôv¼Ð&aÙÛ¶ciI©‡.÷8±úy ]ÎXÜã)”ÚðuN„ã ÆF]N®×qÒåäbßñÓì}Vئ°=!ùó Kæ¶¶Û°˜.ðž/ºœ9øî;ïÃbº€=[+xט¯kSêÚYZRÊʘp¯K©11‹ñtÙFŸc v]{»~™:¥Úë£øõ‘Ž×>¨„ÙÔ€—vì†ÁXÌ>·äÚÈœ÷üyI["‘ˆvúÄ8Ssk+¶@“šÎÞ” Æböb¸ôi¤窲¨­<È{¹À ÆblܶÆÕþ 7jÒÒ°´¤ß}ç}TØ;érb6zë»?å™_øÓ<]ö<ìm&±úýíµÉ Mj:V¹5®Œ«K=¦ÐóçéÙ²JÄ"“AL×[Îo.\qXF$—©ÏQbs¹LF,Ø—P²7A\9e}7!Ž35ÕX[¾ºœ\´Þ4{ÌÀø:'þˆþÊë'_„ZLdXjÜÚÉ:“\áinÛfS6nÛŽï¾ó>ïþîëÚ³‹‹ðº_BËÂñ«Chƒ°N¹âÝá t¦œÓwº¦šž±êïõp&¨¾^˜ê뼊6 mq¿ÌçÀ=ŽûëÍzÓ,YN®¾ú.·¼Þ¸­7éÙHú¡Ó ³éòæ$뷵݆©¾gjªEù û#Oî’æK–?ß0¥Óá"_"¹€´8°°®à°P Ö—(q m“ –²[®X³°¬˜X²¯cz¶ËêvôôÆb\òq_/¹¢¿\Ñhoý¡Š ‹‰_s‘#vMÏnÒmíßñ²‡èµ¯kÓÛµ#<¿bcâMY®·ÐaÞÄ’Ã-éD´d‹PøótÍQwlÙöóÛ¶Ãbº€äÔt:ÝJß„ÓÁL-[L&r2nÛNßèRÓØ¼¼{¶V°SŦzzjžÛ®µÉŒÚªCøî;ïóþϵïðÛ;Ù%M¡X©X9±Ï½Ùè­ïrËﮪÁž­èœÄL€ðÓea½iöZõ½È›gÀR÷r‘·þ~{'›¹úÀ^hsæ@—“;íE\ Ê£Éæ>a\]ŠÚªCØ]U²¶‰Xpð‘#B ã>™ë2„¸#ÁF˜öâ̦ú:|÷÷Ù_QÚš£øüüÄÅÇciI)^Y¿ ß}ç}´Þ4{­gmùfÞL™±¤{¶VÀÖvß}ç}Pý}¸T?'˜?ß0ñ«8•ïà\ª¯ƒÙÔ€üyÖÉ«7.÷(ç ¡Þú.·¼ð×¶&- §kªñÒw£úÀ^¯õoܶ{¶V°ÓßÞú“7_Ï:—ÌlžØ¶yk“Ö›f2ÛG˜räÏ7À¸º­7ÍxiÇî¶MÄ‚ƒêH÷É\—‘ Ä 6*MDÏô‚?¨e¦@ & g&@ ˆBœ>@ð9™"!@˜~§@ ¨Š„˜(¤ÇËÿ 5r2 DB60ý N@PY‰tœŠÜ¿p`m2cËêÅìæ§ê{ñÊúU›¡„ï32;ËËp¢ò›C•hR„P@œ> zlƒô污1z‡ÃŸR—“‹ƒŸ^ÅÔ ™=À~· €¼LD“’@ „âôÕ…ûC.t º ‰ ý’®Ö&³,Å~2I‚RD´ÓÊ`i[ÛTØËþI¥’²ÉWÊ!Ïœ‹üöüYú Õ¸ûÄ,UP(?¡Øž®9ÊjÚÚîàüÉ߆4€žÑ#ôu~ “ã„(P£.¤ÇE!V>Ÿ­í6«ê/•=@;;Gv& ²¼K BAD‹33ÁÒR¹tƒÝÕ×cI)lm·Q[yˆÍ*áË&9*à¦ú:Þò·=€^RÓ¸ûdm2£¶ò ÖVlÅt—uC‰ö˜~šêë`15à»ï¼[Û|~á ´³sBrM —÷!Si 34F/éöŽ¸Â²yƒ‹ÁXìq}1™n¼•hs&YáÒ’R,-ù’~‘3‡Ìøʼnh§™a¢úza0.g3H\ª¯ÃÚŠÍXUö<ïµ.'gjŽ‚êëEþ|›ðµA“–îq¬7ÄÊŽ áD%KÐ`,†ÙÔª¯Úœ9°·Ýá•g2SøJdÎôSÌî¿zé;¨?v¶¶;lÿÄìc²pÀþ/cmÅÉq¨­:ijS8ÆÖ›f¶O«Êžçå’d3®£¶gkÖVlAmåAžÜ×ÂóÄ´{øí!:&ãccl{p¦æ(ÖVl©¾Nt¦[×™šj쮪ÁÎò2W—"¾ŸŸ?ôtìyb2¦øs-éÅî4rÄáSŠQÐæp¡ 5½Ã.´;Ƒы¦ÌÓ`,Æîª˜ÝÁÑ@Mõõ±Ë}ü€êt6ŸîK;vÃ`,FmÕ!É l€^Ò1Õ×áLM5V¢l\|V•mdˆÛ¶ciI)òçxå­Mô2ÏkTŠ:-¶¶Û°˜.ÐßîÔqbvÿñÔï ËÉžã§aª¯cöÛXRŠKŸÖáÒ§uœDÏú~õ¿ÞíwŒ™>1˜.g¾ûÎû°˜.`ÏÖ É%V¡Ü×bç  gD^|u¯=8]S ‹é¨þ^^Š9±¾‹Ч? ã'9×’ðœ/-)źŠÍ’ Ô “§Ý1ެ$zv/=> £.€ ÿfŽÉ ‰•/I£á¬gz\ ÄFÁ/ùn“ê1 T"(Ðã&3¦Âd™3} š´tèræðfÍý½¼2Õôr©&5÷Àö”?ŸÎ#ËÄôqã–uô÷aÿŽ—ÙÙ3©º}Íî1í1˜M ’v3ï{‹5\ººûw¼ øî;ïÃzÓ"Zßððä0c,V¿µÉŒÛ¶ƒêëeg{„ã.õZxž¤8]s”]>ÓåÌÙÔ½DNE[ÛŒÅlý™šj´Þ4ãñ'W‹ž'n?…×’œ }BpÉÕD{}‰äj¢e/S÷»Ø´q(š8ÿÒ<5õޱ»«=.P›¬Ä(¿fŽÿhÔq“Sa²DþÝSƒ±˜  ¾fª½+”Íeã¶í8ãv:¤Ê2K¥:÷Òì›Wž±kÏÖ QGêR}öl­Àž­¨>°×«ÝfSX.6kËéÙ¨üùèrr½ÎLigçø¦OLð9=ƒFÛ°ÇËœ÷tì,/cÛÚÉ}íí< Û3Õ×᥻é©mÛñtÙF|~þŒdßÅè˜5›wžä^K¾Æ†@ 5år¹üú q›G»c<Üv8ÈÙ(T_/¿³kË7‡%h\h§\» Ó‹\Mt@3(rHBvRô¤gÀ&Ëüô˜€f¥=.PüMèΕú3­ü…¤`Ìf:6^o7™1%¸ø{-Slywº¢Ë™H,mr¡úû7϶]‚B;åÚM aò§o  “¹{T—3ë*6˨14vʵ›0½èt¡w$¼3q0!N@PCc. Ÿ@ ‚ΔÜÈA @àCfú‚ªÐ%FãùâdáÞ”iHIÞܦԷA/’l%"âôU‘ƒ°§Z#„©qú‚ê± ŽC—¡1ÇÔឨ<G/ž.{>¢6$EÒ,Y$ÙªÝÑ@ssÅô'SÇdŽW#§kŽúLÉ)˜> zb¢¢pÈ…ŽA4qáwøöïxš´4èËÙ =B¸±µÝÅt! c™Üî“©c²6¨nzÓH'¢gúBý‹‚NNMWDú„IeƤ‹¤ÙAIHˆÂmjéqáÏEjm2C“šÎþò§úèÜÏŒHõõÂ`\Ž—~¸;ÜÃF˜¢ì,/Ãîªì,/ƒqu)òç`1]€Þ¸Ö&3^Y¿Š½«ìÅ¥ú:¬­Ø ]N®ä5ʼ?2<Œ¯›¿àÕÁ|ÎÔ#œõ¶Áµaã¶ïãtM5LŸÖÁ`,†Þ¸‡ßþ^úáa0cÏÖ 6½åîªɶ¤ú¼¶|3¯~ª¯Î¾4Ïàñd[ª¯—M¿ik»ƒ—ßy¬¯cë`ìÙZ`"…ª·1ˆ"z¦/”¿(¬MfÔV„Þ¸Žþ^~{gPëg.F‹©ýòš¡1:#AïHø3Pý}lÎh¼”†c1vWÕÀ<Åf:ê‚II§¿¼ÀK ©ËÉe¯Ak“fS––”¢¶òéktã¶íXZRŠÇV<Í«€h= Ö&3`ßñÓ úú6½±ÆÕ¥d–@p3êÚ.¤F£wØ…vǸ_鯂ÁXÌ[.@Ëù¾23õ‚RhÒÒq¦¦kË7ãLM5ZošÙ|æš´4ödf¨ÚÑâïíåÖ@²ágŽþ^ãmmwpøí±ÏZá±Ì(¦o6‹õYXÿk>ÂéšjìÙö"vWÕxô“iO“šÆ>×ý}Ø¿ãež\;|A$Ñ3}\¸¿^„¿<Ï}ßñÓ8SS @ÜÛ¯­:$éÍëræà»ï¼‹éöl­`ë¢ËÉžã§Ù‡‚ðµ˜-KKJñâ«»°´¤ÿí‡?ƺŠÍ<'“@˜Î´;Æ‘•D¯é¦ÇGaÔP£áñË›¯Çž­ìòO¤.õ"]Îz s¾zc1.Õ׉:qc1;CÆÌz«ÓljÀççÏøU3c·³¼L²nfbEh#sìž­ìgRmyë3·þÚªC0}Z‡¥~NžmÚ&f—µÉŒÓ5G•?áAdJÌô1ˆýºa~y00^¼˜·H{óÌôîÆmÛAõõbÿŽ—±¶b o··^©×b¶i„ZmRÚm¡dUÙóŽžÁXÌÆ¿öA¥×ãï¹d;®ƒc“?.PÇh§ÛŸò (ŽMïˆ ðÃÖÉ7™1eظm;˜ÅË¥%¥XZò%°Î 0q ¯E©kT—3‡©cà–ñvMûjcßñÓ¢Ÿ31ìÆÕ¥¨­:äµ-©>‹Õ/¾°+þeVîäôKÌ.MjdMÐL)§Á`,FmåAì,/cO2ózmùfßǺ½y½q9û¾.gj+¡¶ê4©ixºìyv™ggyë8šM 0——±SíÂ×R¶èræ ÚÔíÚN ı &Eèq24æÂm*°YÕPË­:6½Ã.ôûßÇ@›Ì˜N5òç`\]ŠÖ›f¼´#ò6>åÏ7 ¾!ÜføE”Ëåòëê»Mûõ+e:Áñ{M |“«‰ö+fïöQÙeÓã£M²x„ˆ'=> óÓcü:fJÎô… ]Î@0;È}M |è²@ ¼Cfú´Ìô„©B 3}áˆ&@ (qú‚ªHB®&Zö_¨±µÝ‘”lRºN9åäHHË(ѧ`"§O—êë•Ï«Ÿ‘ù;vÁgÆ¡‚„³©µ30cÄôÕW»r¯iÇÎW»r®•©¨°Aœ> *Òã¢-û/Ô(‘ H“š&KSLNÛrò„ ËÈm?\øê“µÉŒÚªC0(C-V ¹jƒuí0öäÏ3@“šÆÚ"Æ™š£¸ýåMÉσ s®4©ièé´ùlWεgª¯óëõ6B;'SG$óæ›o¾éϽ#.ô« @˜š¤ÇG!5ŽŸ`×68Ml†Æ\ FĘ‰Ï¿ö#Æ81†®»s(ð{˜­íìmwX`gyV•=åe úú02<„35G‘?π߭‘}?†½íLõÿŽßüb?Z›,xüÉU¼:¿¸ö~wäÿàDåAÔVB[ËWl™ê{qøíˆKH€&-ö¶;¢p¦æ( Æåسµ+ž-Þ­8ò8¨þ>^öæØüùÑ2¾ÚèüÂܾŒËa65`ÿŽ—=Ê‹•£Oª+që‹›uîÙZœ‚¹ÐåÌ‘´Wد}ßÛª¯3´:VBCXFÌ^a.ÜÏj~±ß£þý;^†µÉŒ¨¨(Üþ¢ ¿ùÅ~ŸõÚÚîÀT_‡Ù÷?¡IKCþ|C@v2ý5}Z‡üù P}`/¬Mf˜Nÿ;êýŠwÕVÂþé2¬MfŒ»Æqó³Ë¼1?üöN̘©CO§ 5¿ØÏ;ïÜv©þ>Þ¹ñum}qí3ürÏë¸w»q 8SS-zýqí3˜>­åÑon9sݹq—óÚÖåÌñ¸Þ˜s—Ó§u²¾ÂëöLM5[‡ZeYc¢ Môï‡/™é#ª'&* ÷‡\ètA#pÃM°r‚2Ÿ sžü¼¦bó„2ïq³ ‰•ñÕ>ÛG‘¾H•++6FéèDëäæe³W,«“7vGUXFh¯·\ªÂã…õsÛæªõ•£U—“‹ƒŸ^ÅÔ YÖ—LÛLæuNÞükìR} ÆböóÒ¿þ[1釻Q[Ekоôà ­<±k{nä\[ó-å›?׿TB»Ä®7¦¿ùó ²¿ÂzÄÎùT ¢¾PÆ¡»-±x©øom3y‡OÈL¬˜—Ó5GÙ/7v#TçãR}¬xÂÔà„(P£.¤ÇE!V]>/'¨.'­îTQ¶¶;Ø¿ãeXL`k»ƒÛ¾äÔtìÙö¢×ëV*ç©Tv![Û<¡Âc—–”Š–ñÕ>·-n_¼•++6FÚ,É:…öK!çû/e¯Ü\ªrÚ“ïVˆµÉ쵬¿õð¸ÆZoša\ÍÏ,%6æT_/¨>þõåíÚ äÚò÷ú—ªSh—·kÓ;½Õ3•ˆx§/ر5¡jK,ž@êb“jÛÚdFmåAèËáèïÅá·wÔn caª¯cÓæ0ö…ò|XÜήðFE˜š Ñ˱½* -Q2'¨T^S:h:› HNS±2þ •?UNY±1z`Öl¯uJÙË© KrËÈÉ'+u¼T®Z_ùnmm·±Ó¥INn\9e[>øÑç]cfSòçØÿ_ü¤ÖcÌ¿½“Nq¶m;ïâ-§®ÜkK“’ ³©§kŽú}ýË9ÿÞ®7zRà¶_ßn=L‘–[×­ÓÇd¼Ð»×ø©¾^ŒËñÒw£úÀ^\ª¯ÃÚŠÍXUö<ïµ.'gjŽ‚êëe‘ÛÚîàµA“–îq,ÓVmåAXoZ°qÛ÷±tu)N×T»c ŠÙ/Œõ¦ùó ¢6`´Sý}y«ì…Þ¸c±‡½Ü¶™ºlmwpøíamÅ6Ÿ STßMõuøî;ïcÿŽ—Ù<‚¶¿ý#¼ôÃÃT_ÇëÐN“ûÆÙÓ—³N·ýåeØ]Uƒåe0®.Eþ|>?éèØñó÷jRÓak»ƒUey¹“ ‘0#Ǩ ¸=0Ž‚ÔhôÓùU¹Ÿ“Œa:2­uú„±ÀÄš¿X|‡&5¯}P ³©/íØMçÄ­:ä«P}`/{<7Ã[ŒËÓeEã0äÄÔâñ(ܶt9sðÝwÞ‡Åt{¶VÀ,#"fÇžm/bmÅÖ&áçLÜ·?\N×TÃbºª¿×cw“ýn›ÈXË‹çñv…v.-)źŠÍÄá›´;Æ‘•D¯é¦ÇGaÔP£ê›ñ#µ3eœ>@<@*F“–Fÿ›šÆsäÄOX›Ì¢ëÿܘ…6ëWõHÅpu4©i¢örÛæ~Æœ~÷÷Q[yÐk ÃÒ’RXoZ°¶|3»Ìë­¿b1§k޲!3ý-E ñ°7Ü]òJ$Æ4qÇÛÖv‡·ÑM(,ÖO¹äÔ,j-ŽŠ9û;Žþ#¹ïÉùLÎç€ôyžl#ñûÀ%¢cúÂÔCÓç‹PÇô™M 0Õ×ÁèþñÔÚdáżЕ·˜.`ã¶í¼÷i‡ï=Xoš=â{ÕÄž­lüo$ oF÷î»ï¼ƒ±˜í°ó¾µÉŒê{±¶b ÆÒ×'y~¥Îm¸aìZ[¾T¨¾^~g'^Ú±ºœ9²Âbí›ØqT½ZÃýï­~±òþ|LœO9eý鯚¾Äôqf *ÄÄ™½qæ¶–¯S0T/z:íxäÑE¢âÅ{¶VàZÃ9|ÝüOä•qø6nû>þô‡ÓXñl™¤ ¯˜x/W$˜pla[){ªìÅ™š£h³~…35Õ¨­:„¥«KQó‹ýmËFöG¤™‹PøW(6Íôsdx?c»¨(0ÕßçÑ6W˜—Ù¨—’–S}V<[†ó'cųe´¤I“q ‰°µÝÁ×®bųeŸþp<¶«Êž÷ÒŠe›êëxÂÌÂ~Q‚Ó¿¯®Â™šjvƒw<¿½SRÄ[XVJ<™kî½ß‰Û_6á÷ÕU<1gá8ú+p H‹’ërr=Æ„`¶˜¼ŽS^JÐ\® 3#-GÔ™+Æ,Ö_©ïC8!âÌ!â¹MãöQÙáÀÖvÓØÛîài÷r)¡á_Ýå!òºgۋФ¥¡¶êlmwðñÏöða–æn¶bàn„’²GlÛ¯þ×Û²7É=fÛ’°©_¬¿B––”"Ï’"& ,Ö¶”¨nþ|ƒHî\úq k“›^ùسµ;ËËx¡ÁXŒÚʃ²6¡ÉµGˆvvzºam2Cï^‚eÚÆõÇ)¸õŒÅ0‹aª¯cŦ¥0‹QëžaÒ –‹½7ÃÚòÍ2SbÇ×VÒiÉ4©i¼ÍsB»í73®bý©­:DÏ4 DŒÅÆLj,˜1F\|¼ø8 ú!´™Çœ9쬷F½á¥ù»Yjã¶í’Îw“Ÿ·±ã"5^¯‘ëVNŸ½õ×[½‘FDoäH'² B$#æ°©}#(Ö&3j«Á¸ºµU‡T½‡ ~ÙÈÑ3}jù…O ‚/òç`\]ŠÖ›f¼´c÷ä+$ü$¢>0=° ŽC—¡1ÇÈ,?!rán¨ BMDoäD$Õßú½½+¯´Pg¤ C…ûC.t º ñCÎ…@ D¼ÓGõõAo\mÎTx/hu›M ¼€_ák){,^¶ž&}0x ! Ô¨ éqQPc6±ˆÁÎÚ¬•‘„@ (CD;}BòæëЖ¯¬_…Ó5Gqøí°6™am2ãðÛ;Ù²fwú²WÖ¯bßçW}`/›¶†ùŒyÍ-'ÄÚdÆ–Õ‹yÇ Ë2"©-øxøíØY^ƳOxÜž­سµbJm'ä24FÇïöªP^ì¡¿?H¥~T2"ÎfSCP~Trë#ÓˆwúqÍ35Õ°s~ 3â¡/ýp7j«èí÷ÂT:\QGáqBOæµ.'—WNˆ.'?½‹©ARxS ®¥ð¸©$ I øË¨ hs¸«‰Fz\TØÕ¨¾^œ¨<„åeìL÷¢Üã̦¼²~û#PX7k‡&•Övþ¨äÂý¡È­Û[}Þ~À„©GÄ;}Œ¸æwßyŸUÜf`$ª¯WryELKI®cå­œµÉìU<“+D* Gf÷Ó™vÇ8²’è5Ýôø(Œºj4|3~RJþBM89Y;„¼eíøüüÞJ.b™2„Y;äf!S—ˆwú.Õ×¹—H„§ËžgSÝ0⡇ßÞÉ*®s—O…c„'™_ÀÌk[Ûm^9!¶¶ÛØY^ÆÚˆ<2éi˜¶4©é¬imÕ!˜>­c(…Ç1¶MaHÁ_r5ÑÐpù„¯CÜìÁÎÚÁEøWhŸœúäd!S‹ˆg&Sµ‹3ÛÚî`ÏÖ Ö‘ûî;ïcÿŽ—ñtÙFv¦Îlj€ÅtÁ#½÷¸Û¶³e‡[—=[+°¶b j+‚êïƒqu)ÖUlö(Ã|–?ßàѾ°ìkT²ÇŒÅ0®.…õ¦Y5Éä ‚wg&N@PjwúA L»ŒaêÑ1èBïqÊ!ا@ ¨Š¡1†ˆÏG A'â7rB(ñ%¼ìMDY*ËO(²ù‚˜­íŽjí•B {ådhò§Ý`ÚÈœ7îõ€Õ{ ¦NÆN"!y§@ üÀ—ð²&5Mt—½·,?¡Èæã/Ö&3j«Á`\îa³íõF°íõ•¡)q –ÌyËŸg€&5g뙚£¬Fc ˜êëØë[N–*‚úˆyóÍ7ßôç€ÞúU¨ŠO ¾HŒ‰Bj\:‡¿‡ÙÚî ­å+äÌÕß‹žN;â±gkr 梧ÓÓ§u¢°Ç˨­<„¶–¯pþäqX›ÌˆKH@þ|öïx™}­IK‡©¾¿ùÅ~´µ|…ÇŸ\…ê{qøíly³©Wï#.ÂïVáȾÃÞvãrVðùLÍQ´Y¿Â™šjÔVÂÒÕ¥¨ùÅ~ÑzðÚ¬ùÅ~P}½˜¡Õ±å›£¢¢pû‹&ž½Âã™c̦~ûGøÍ/öóÞç–¥úûØñ«­<„ßüb?Z›,¢õRý}¼þ3e`gyV•=åe úú02<„35G¡ËÉ•=¾½»ù÷ÕU8SSUeÏ{”eÆÁtúßQìW<['[Û˜êëð/ûþ'4ii’ã$Öw±ófú´ùó úÀ^ö:³˜ðÍç+¼Žÿw&+®m{¶VàüÉã úûS0¦Oëp¦¦Ö&3z»ï£ãë[cHPžÄ˜(hý›»#3}à'BáeÀS àgý‘ÊòüÖåä²e}eóáÖ+&ú šÔt¼öA%̦¼´c7 Æbüê½-Y¯¯¬D\›[ñ4Ï^^mÖåäbßñÓlîp±²Üñãf(žæöŸ £oªË™‹{T®½bu2ÐÇÓe©¾^Q[™qÈÉ{˜gk0Ɖ+¾-VVØwa¦m&!óZãÖ|eŽaúÏsÓeÒ<Ú“ÊÅÔû­¿…ÈüDÄé#? /{C,ëx¹4¶¬·l>Âz¥DŸ5iô2ž&•®†‡‡|Ö È‹ÕâÚ À«ÍŒ-l–$/e…ФìWMZ:ÎÔT»ösÑzÓÌž¡½R}¥úûX{©þ¾€m dœ§Lª¬¿õ@ëM3Œ«K=Žá s‹ÕE2BM-ˆÓG !@*ËXÞ[©l>R0›|9—ÚÙ9’õ ³yëÃççÏøe³ÙÔÀf*òUV,C‘/»¸öYÝŽžÞXŒKõu¢câ­Na$1[™qøàGÿgëdlj›ÑIîuà« cËÅßײ0·ÿ¾ê’ÊÅÔûñÏö‘ÜÍg&Ó"ÎzIJ“¨f#„qu)j«awUM¸M"D!âÌ@Pºœ9g°ÚÉŸo€qu)ZošñÒŽÝá6‡@*d¦@ LÈL@˜*2ÓGbú@ ¦Äé#@˜˜>@˜¢äj¢¡‰ ·”`*„…§@ ¦(šØ(¤Ç§@ Ðå]@ „iqú@ ¦Äé#@˜§@ a@œ>@ „iqú@ ¦Äé#@˜§@ a@œ>@ „iÉÈA TEBLcä—ïv…Ûd@ˆ"Úé³µÝÁ™š£ìëµå›¡IK÷»[یŲ¡úzQ[uÚœ9XººTv›§kŽbUÙól›ºœ9ÐåÌ éx)ÙžXÿ¬MfhÒÒCÞWBä’•…ìdù‹´†Ûd@ˆ"zy×ÖvT_ôÆåÐæÌAõ÷ü®C“šæ·3R}à=èËao»ƒÚªC²3Õ×±mötÚx«Ò˜M Š·'Ö?‹©Õö‚êë Y_ SÛà8`hÌEfö!@"z¦OŠê{q©¾k+6C—“Ë:ãr¼ôÃÝ8üöNXoš‘?ÏcI),¦ ظm»ÏãÀÚdŒÅ0‹Ù×fS¿ý#¼ôÃÃbºÀÖ³ªìyìÙZ úûè:nZðoïÿ ‰IÐæÌÁª²ç{¶V°e6nÛÎÚµgk^û T_/N×TÃôi ÆbèËqøíá¿þãܽeå½/´y­Í™{Ûž}Ü~3¶ˆc ýÓ‹a\]Jfù“"&* ÷‡\ F]~ÍNw˜1#` 8}¶¶Û°˜.ž.Ûk“fS––”¢¶ò^úáa0cmùfì,/c3¸ÆQ1›ûŽŸÆÎò2lܶ]ô8ª¿š´4öuþ|ûÿ¥%¥Ð¤¦ñÚÏŸg@þ|6nÛŽ-«³eç/Z íìÖɲ6™¡ËÉÅK?ÜWÖ¯í«&-«Ê6"¾ÕöBo\Ž¥%¥X¼r ¨¾^ÞûBÛ'2žgjªyöqíåÚÌljÊC@N`ýÛ¸m{¸/Âà„(ܦƑ…بp[903¤L§q8ç  &® 6nû>N×Tc϶ñ7ßû‘G¶¶;¢Ç´³X[ymËT_Çγ]LûÜ×Þà:“Ì1ŒÜ¿ý#äÏ7ðl”z_h»/û¸ãÅ}ßÑß+ëxA)†ÆèÙªÞÒã‰×Gˆ Òã£G®×©Âm*òDE¼Ó'Ä`,Fmj¬MfèËEËÔV¢g«V—bÆLÚZ¾d¹åeX[¾ÙkÆ’RìÙZ[Û|÷÷½¶ÏÔ»gkÏÓ¤¤Âlj€Ö½ùAXÎ`,†©¾;ËËxElmwD9©÷t9sPmj€6g4BûDÆ‹;ÜM.ö@”QÐæp¡ 5½Ã.´;ÆÉ/!"HóoSAÝL§/Êårùðq›G»#ò;®6¬MfÔV‚qu)j«awUM¸M"ÂB®&š÷ ¼Mã„(hÜëºÂ×þìÞMBvR4šzÇÂÝMÂ4@x-"µ)¤ÇGa~ºúVˆðÝ»S‰üùW—¢õ¦/íØ=ù „)B®&šuðÄ^‡[ÛTØ‹ê{ÙØW1NTBõ½¼ áñ“ÝÙnk»CÇܺ9íc‡>#§Ä ƒñ·=©K)üa:Aœ>±´¤·mçm!ê‚‘ŠÊ›gÀþ/‹:~ûw¼ MZ»“^ƒ;Y©)n]L¸ 0!›$#ÛˆL·=fãœØk5àϘÓ âô‚ŸhÒÒ°´¤ß}ç}TØËûÌÚd†&5Õ5®.õª‘™7_/ùYõ½xeý*œ®9 ³©¯¬_å1³¶ªl#»¹ŒêëʼnÊCØY^ÆÚÇH0ÕüŸ¬=Âúw–—á•õ«pøí¢uH!<¿½;ËËØ×f·f'@ËSqû#lK¬>¡½b¯½‰·òÂt8} b³òBY'±Œ=ŒÔÔ™šjØË¿ \©35ÕèÕ±ìAùó Ô¤Ò2T_’SÓ‘?Ož­ƒÁXŒ?~ò;6¶cÿŽ—ñÚ•hG¨¶ò lmw°¶b3–®.Åéšj˜ÜÇ1;É¿ý#DÇÄ`|l #ÃÃøÏϯ€êë…Á¸/ýp7+…°¶b3t9¹8üöðÒÌî²³Þ´àßþi¢cb?ÏÀËÕ ÀãxF°Õ`\ëM3¨¾^Œ #.>ž•7`^ _Uö<GÄ tfêÔæÌ½í¯¼_ýaf±™€mfÜôÆå¬ÎfÛÚîàµA“–.Ë^_ã"Cª¯×ãÜ1ìÙZÁ¦ËûßÛ¿ƒ…ÅOñleΑÅt·m—´‡‘àúú³©7s³´¤¯¬_…ï¾ó>ZošŸ€üùP}}RfSÌåe¬l‚­íލc¡Ë™ƒjSoYp?ݲÌR¡_ݸ†±±QV¾@îñÂv…¯…Ç3ž­¼v˜ã´9sÚAêƒÞ¸zãrÙÙ äâë—¢7üÉ ÀmgxЉڪCÈŸg`eAä+ÄÂP&"‰ÞÚã²ÿÔ€.'—§!)Ô_äjEKJEõ9…õùÒí½ß)©))¦s ð575îߺœ9¬™œêýÇ©\û„ýeàêŒ ÇLjLÄ4'}é› Ûbàj¥2Ÿ‡0ˆè™>1¿½Ó#£ð¡T¶ëM ï왚jìr2DHePÊtÁýEzñ“Z$$&aÿŽ—Ù_äÜã„¿ª™ ÂLzc1´d–ô»"NÛL“–Æ“ê/rµ"_Ú±Ö›öX±èrôC‡‡‡dÙ&·¦IKÇ™šj·Q5Zoš}Ê ÉµoéêRìßñ2OmT©1“Ò,›Å Dß”ÉÄh¥Ó‘ˆžéø¬7Í Ä~Je‹ø¿`¹¿íwÛÈË!–AÁ[æn;LÖæFÆ8ŒûŽŸfu¹¿ª™cóçxõ/-)źŠÍ>—• ‚20‘.gO+’IÅÇÌ´‰Í®™M Ø)ІqhgçÀÚdÕ”d~lzÓÛÔåÌ¡—;ç 7ã’;ƒ‘|Ù§IKw§Ìå݃˜ü៟?ãQ§Ô˜0}áöÓ×ø‰µU[E§;d´R™Ïƒ¹ &RÑÄF!=^ÞwU Ç%ÄÈ?NŽ.§Zìˆ"~¦›»¤)ö‹P*[÷3o»º|eˆË À]âðG[Žk¿£¿WòW¿ÜÌ ar03øb¯™Ø5]Îì;~šwœ0_4SVª î}MX—Ð1„õ Ù¸m;˜¤ôÍ/YÛ™rÂåÚGõÑ÷*¡Ã©Ë™ã1ËÆµSjLÄÞëŸðÛâ&Áû|º’«‰–íÔô»XË@ËJŒâimú—§Zìˆ"Þé»T_ÇΆ1Y7„ ädÌ`àfèàf¿`~UËÍT!Ì ?ß i·!ÜÌÌM›Á›iCãG? ‚:Q»~¨û¤´Q Bx™9äB2tS’‘ƒ@ðd~zL@3e'̺ã _3lj±#ÔŒ“Dí¿° ‚:¸T_‡YsBo îx8ª¿7è;AO)O27ÞŽ‰¿ ¦0½˜lT¨‘kƒµÉ Ó§´Þ³¢#öžÜ²fÓUîf&1’Sé8pßM¦ÀFŽ`B2t_˜M h½iÆÌÙ9¬P[u~0CtY(ël1i5ˆûcCõ½ÐæÌ6gªì•|OnYFÉAMX›Ì¨>°zãr8ú{Q}à½p›DP Äé#?8SskË7ÃzÓ‚35Gqø úzy»ø÷l­ EÖûzYaáê{ñÊúU8]sf·Ž&SVÈž­tî ZÜc¹0»h_Y¿ ‡ßÞ)Z–‘|âˈI3ÇP}½8Qy;ËËP}`¯Oû¹pë÷fçž­ìgÂö¤ÆŒÛwìÄú,fƒÙÔ€WÖ¯òHöªìy¬*{ž·éOì=9e ÆbvöT-ØÚî°:¯kË7{l""L_ˆÓG ~Àl¤bùŠK‰%‹!#öu,W:J¬¬˜}Á“fê×åäzµ3PAg„˜…ÒU_Z)˜_µÐz“¶ÅT_'ªsH˜¾§@ ü@N¦œ¥«Kaª¯ƒ©žÖ…ãÂM¹Èý—ÁÛCڛв0žÍÛÌ“˜˜ôþ/³¹v—®.Ek“S–®.õ[J¬m¡ 3·=ocæ³;™2Œ¬ŒÔ{þ–USÌÜÆmÛ¡ËÉu'˜C23XÈF@ðMZºÏ‡(#N̪s¥—Ö–o†ÁX S}v–—y8 LYFŒXx¬7Äʲ²N>6…p¥ ÄĤ}INiݳ]Rvr射퉯O>ä¨ü‘®2‹ñÊúUФ¥³¶ß³6™a½i–U–éËÓ*Ê~´gk¬7-°µÝ ®gK˜žÉ0m†d‹i'ª¯‡ßÙ‰µå›‰V¦ö˜1»y#Ù©"’-Á±#Ô"ÙB–w Á Æb$§zŸí#âÄ|t9s|ŠÆGꘉe!Ô ™é#Ó"ÎL xBfú‚cG¨!3}@ QˆÓG 0 ˆh§ïR}̦V úÀ^öoÃÕº"”`ê’*ξž¨ê«ÑN!Á´Ñ—ø©¿c Û˜ó"”ß`®KaÎ1c›š_ ÙD´Ógq«Ú3zIT_ôÆåîô8ig4©i¢9…©{˜×ÁNS4Y„ižÔj§Á²ÑWš¥@Æd²¶1ç%žšÔ4žgjŽÊÒs¤ÝÒ¤¦¡§ÓöôVaêsÈ…vǸ¬¿ûC®I×;"ÿ89{ÔbG$óæ›o¾éϽ#.ôøµ÷C1†‡†0c¦c1z:íhkù 9sAõ÷¢§Óޏ„DìÙZ¨¨h|qí €(ìßñ2j+¡­å+œ?yÖ&3â?߀ý;^†µÉŒ¨¨(Üþ¢ ¿ùÅ~´µ|…ÇŸ\…ê{qøílY€v4¸õ=þä*P}½øýÑ*Ù÷cØÛîˆBõ½8SsmÖ¯p¦¦µU‡°tu)j~±ß£Nn{5¿Øª¯3´º€í<üöð›_ìgßç–£úû°gkr 梶ò~ó‹ýhm²àñ'WyØBõ÷yôv–—aUÙóØY^ª¯#ÃC8Ssºœ\˜êë|ÚÐÚR¿¯®Â™šj¬*{žW®¶ê-púßQìW<ûø=&íô™êëð/ûþ'4ii¢ã"ì«Øy1}Z‡üù P}`/{=YL øæó’ã|¦æ(Ϧ=[+pþäqPý}XUö<¾¸ö~¹çuܻ݊ÞîûèøúVÄíjT#‰1QH‹Bç:îa‚ F]è‘÷Gº&}ÜÐd×+ÃßP‹¡&1& ÚDÿæî"z¦oiI)ÖUlf…Ò‚¨ºœ9°¸mINMgÛö–& €ûXºÕ×ëa#Ó眼‡yö12&Œm?½‹©Ágº')›åæµ&•³eÒ2í;~T_;Î̬ S0íÃüEK±´¤ßúûW¼Šê ‡ˆvú„0ªã·m÷:+"–¾Ç³ÌDš"_©}¼¥3bêhLjqP‡‡‡¼ÖÉà+¦K®ÜHÞÊmÜö}$§¦c϶Eã¥ÆP“–Ž35ÕX[¾ºœ\´Þ4³ç@˜òI¬>ª¿µ‘êï“´Ñ›}œ;k“Ùgº'¹uµÞ4Ã(H]å蟈1ÖCrc!L)§Ï_t9s`65°ÁóÌëÏÏŸá•3‹Ù™,föÊ̆oŽ¥vvŽdÌ,‘T:£@ì4›°ÓÉ[¹ÚªC0}Jç¾dR@y³…k“ÕíèéŸT_'Ú©ú˜÷¹©§¸62}þàGÿgßdÆ„>W·e‹œº.þ¾ùó ¼¾z«GØwMJ*̦|ü³}¼M<@ gžÈIn˜MÆÕ¥¨­:„ÝU5á6‰0!âÌaªˆ8sl¸&(.gà#R¸ÉŸo€qu)ZošñÒŽÝá6‡@ „)™é šØ(ÄNë…u!8 ŽCcòoaÁ˜écÂ7˜O\NוµéÆ[rm`þõU‡0ÔÄŸc}Ùz©¾ToÐ6ùk›”“ßÉŒ‰R퉋/;‚q~BÝWaÛ¾âï¥û]ŒdÈL_„«‰–'@ HÓîÇm*´R Œ¾£ØCÐT_'Û铪ÃL¸†Þ¸ÜgÂÐŽeÒ9eB2¾ûÎûAWÆ6z3˜záxNf|å 5&Jàíœy³#Xç'”}ëw aIr¿‹ÓˆÖé‹T´‰ÑHŒ!N0YúýÔÏ †NŸ­íìmwX±t:‹bÚÜ÷4iéh·~…[_Üd5= Æå0›$µ¤4)ytO#Ô`\Ζ•£E*´‘ió‹kŸÁôi„:§gŽW³ú¡¦OëxÇ1ýÆïVŠê”Ž ñì=SS k“½÷;qûË&ŒËei„ŠFƒ“Û?¡†jmå!<þä*Œ aß+[°âÙ2Ù¢_\û  O>[æõx1-W¹e½³/þ¿öÞ66®ëÌóü—(Q´*dÅ‘Yi»–\SƒôŠ`c·ÒÅ^ÒŒ( n3€¹€Ci}>ˆÖ·…P‚¹¬¼ j¬E£!¦—r'Û*„N'L[̰6J'ÛšֈZ2垔챫”R$ê…û¡x®N:÷­Xd½ý€ VÕ¹ç<çÜ[·Î=çyþϯ~¿yã ~úƒw²´K/üåñ }Wf¨Õù©Þ[“qþ#³ÿ!KÃÕ¬/fú¤ñØšåõ­ÓfŸë4puã¥~Ë™ŠÓé#„B£ê,êôuš{ª÷fizz-G3MJF¨SOa£•¦% ×9õ¾ÉÚ›B#U§S:=9–e¯là\#Ô µj{¡Î.,^™Áâ•„:»Lû¯jˆ ž~ö€£ãu6›é•êÊZ3ù83íÒŽž—µíٳ󯶣^Ûfm‰J³ë[­G½vu×·:^fš§ä1œôBÈPuuzŽ:ÍÆ;›+W²¦§U:dMJF¨ª~¦ó6ÍuNuíêtJEY§öZi„:íŸÚ^ë‘.Ü\^ÂRd­Š®¦ÜUCTð̳ïv̬Êê4O›…lµK­ÛÓŸ3T3=R][ºc¬¾#j]ºëÅì&z8é#„-`§1)—Q5Í4=­4!Í4)uõ9Õ"µkÓIÿí´âjˆ’b%—è]®ôB!&PC”””l!„B,híì²ôs$¤TàJ!„ˆxl-#rWýl«u8!—¼Î¹DFêÚ>Zvö«í‰cgg²|¾¢‘Óò[¡¢Aóq½ØÕŸ±Êg¿Üô•9Êíá¤B „V‰F0ïð̬§Dfg\•wc›U;¢;ûuíykë°~÷˜žËÐKôÖÖáÓâÚò[qìϵÏùƬù°OÔQ1f7×°U_Ý^Ë•·w !Ä%áÑóXœAwÿ1CŒY¼ö1?u©dMÍAcõdpô»X¹¾„é‰KˆÇÖŒ²º:ç§ÒÂÇõÜŠ­e´e‡œÉ`äD¿¡Á=T2`¨GÏœÅȉ~e.Ô>E# ~Ï4ý $>þMƒ8zæ¬QOÝþ§ð`ý>"Wf µúivíÈýM%¸¿¾Žßþæ¼úb‚¡vô¼†¹©°Qo4²`Œ…èÿÊõ%üïïco͈F®f¼ÿ·o½‰½5Od•ÿÛÿm»ªªŒ~Èã¥Úlu>ÔsJ&2ìm µgcùµ<¶Gϼ¥ÈÕ¬qWeà—ïÏÁ·ßŸ1îÂ~³ëEµQd¹Ðõñþú:öTW@–]ºq“0Ýõ £Ý•娑!äâé“|{ÂÇ•å(Žùz^3ìV¯IùºÑ]¢¯rÝêwSׇJ‚+}„â'b´V‚·þ@#.¼7—±*¡ û aÚ¦ƒA[Ád§ÈB¶N¥´/Ûçêÿ(C”WØÖõõ¿ÐŠK[µ#ãTdZé4juõ¾°MVm²Å“Ílô¢Áê9ÖsÙGPiVËËâÆ:Qo»ëEg£™òs/Æ­Žií2Çv*À­ bËø¸tåçX’ìÓõÅîúøºû›ÖáFà»á¤B\àDŒÖJðV|f&p« ëÞ·CÔm&üëDPZ`&Êk%®lÖŽ[™vŠˆ±™(²áhÕ^õëιU;VåsõÖÙh'†lÖÝ89àn=Ò…Èì "³i½?b2jwíëú´r} Ý}njɲYN¾ËNú!ĹˆÑÊD# êëÁaiÕH«´ñØj–ˆíÊrÔÒa=]—C}=¦œJ TQ^aÛÏ~<½%±\§"Ó:‘^+¼Ÿ©Õ–w"b¬;ÇÝ}Ç Þùë –)¢^õëιյcVÞ¬=«ëÅì31ä_¾?ú§yÆV±›šƒð³®Íxl5£ÏfפÕõ×t°­]ˆÇV7·p­³í¾KåÅ™ Å™ É¥&Î,ûÛ‘Òce9š^±²XuUϱÛs^Î×H*™Àø¹!t÷CSs°Ðæ”<¹ˆ33ƒBv ¢MIiÑÔ´¬¨çØí9/çk$u;‰gÚ!Ù>¸ÒW¸ÒGH~(µ•>BÉLÃF!„B´p{—B\ œÇ…„F®,ÎÎ u;­Vª‘„r”°èC>ÆÆ¬-yœ¬Hvªï"Úx»úœ‹Mv¶lÅÞxl-CY§[˜OÛöGü_ ç ØáJ!„¸`«0€t@Àôäšá­­+t—rBÎà ²`äcl¬Ú2{]¨¾[Ïö‘OœØ²{½µuh µ#•Lb_­Móç›§»vœfkٮ뮩úÖ·¾õ-7$îoàö}Wn€D¡¾fjªèÓGÈV¹} ÷£š*j÷xðѽÜïañØnÅÖ2Ò…GÏc|x{öîESs0ãujSWmzb ±¿Æó_îÀ…¿<ŽT2È•45ñØFNôãþú:þîòæ§.#¶òkÌO…1=9†Ö#]¨Þ[F6‡ïç¢Qÿȉ~|þ@CVÛrYá@¯–‘×õIׇ‹§Obe9ŠÄÇaæÿüwø/«7áñxPUU…`¨=kLDF]ߦ¾sÑQ[¢.ùuäÊLF;2² óSa|ö)?>ý(Ž©ï\Äó_îÈ꣙}üêã8=9f´}‘+3XŠ,dõWí‡Ùõ,dœõµS;W®/áoÞ8ƒŸþàÜ\^Âó_îÀøð¾ÿ‹Æë~õ‹Í,í¶çX¥zo ü|ð«køã羄ÿî¹CY}±ê£\ÿÿËCø»Ë“ø÷ÞÀ­ØüFDfgð\ø_á­«3²{ÜŠ­e­@\«,ãûß¹hØnfW9QSåA}»µ;®ôBÈp’¡CÍ ² ÈÒ­]xö`‹e6YÆ]ÛjY]–9ãƒY³><÷Âa# Æs/6=ÐgnøÞ_ ;nKl%Š×"š9BgÃÑ3g1=9†éÉôß:fRQíq“ÁBwŽtç@¼vk§hWÎ<¢ËDâä:µÃ¬/fç_®ß,“‰œ•dš•Æ,«‹Yû„>}áã{H=àj)![ÅÍ*ßvá$Cà< €U6µŒ“ jY'Y>¶šÉÀüøì¾­¯ßÛR[º±6³!•LX~î6“Š;¬úá$ãˆ[;åÌ#g'§Œ\Æâµ¹f«p’aF®?[ÃøðëÆŠžŒx̯9«K®™l*Nú @ü.%o)‚¡6LO\ÂP_‚¡¶Œ×[Íf`F4²€¨I†µmµl0Ô†éÍ,-&zpNÊø Gp}ÝÈ‚q}{ª«/¨:€ßú‰£¶ê§.££çåǯ ¦™#TƇ‡ Áãñá¡ôÊŸCÕq”íñ]e°p{}¸K yäáÃFæ‘ðèùôª×æk1ÁrbÇÊr+×£¦Áfu8µ9[˘dªY9ì®ùÜS]ó˜UÔé#„T å Óç&cC9gwØI8ޤaFB)sÜdl(çì; Ç‘” \é#ƒ¿fjÜ=‘"'q‰uç·°rXé#„€+}„X²¯‡éïÊ;\MúòA<¶†ÅÙ|µ?íÃ4·ég¦ ÉŠ÷ÅÖà¾ZŸqŒZŸSÇù\„u…vu‹È°°CøŸÉö˜õe;mÿ;—hdþ@CÎÛ)¬ìuŒ…ˆ¸Óq§XrqCÉBqA<¶†éÉ1CfBH¡¨±‘Ù™´óÄ%´„ÚqçvãÃCu¹ÎE„VØgWW±Ü ;t"Âf}Ùdñi§“8Q>¶[XÙ)ò ñ Ã­mŠ%?g&E±ËB‰3¦®‘Ù¼ðç=xÿGïá…?ïA<¶†›ËKس·ñØ>øÕ5´vþø‡¿ŸÃ?÷%tô¼œ%xëDdX™õÖù™É¡U˨âІ ô«ÇñŸ÷dôC™ŽÇÖ²êN%ºÓcxþ˸ïžQŸNW=Nž4ŒœèϨãù/wd‰ôÞŠ­aÏÞCDxäD?ÞÿÑ{HÝNf¬8¹_¶ˆ®{r?&Ïÿ/"Ö²øôê?-;3žžCàÀrVŽ\™Adö?dˆ)ËâÊÞ:ŸVXÙJ Z=€G[N7ÆBDü³õþ¬ëS–¯g7bÉ:±ñù©ËÆyÿlýçv„Ì‹|žÔzU1jÝu¢~^ªPœ™Bvˆ¦æ æ”UºxlK‘«Æ*‡?ЀWν…¥ÈUŒœè7Vv"êðsºÎÆ ]UˆVwÌÈÀ7ÐÝܶOjݪ€n¨³ ‹Wf°xe¡Î.sfð®@­Ãª¬è_SsƒoOdè¹å"¾ è…ÿÓOþ¯,kYø°3^œ1¶3·"¬,êµW6EÖ‰+ëÆW-g6Æv×§*(«X²:ö*r;rY«qãe&4®ŠUW œôBHôœÊÊÑÔDïÀ)CÚ#[C4²€ÞSxåÜ[˜ž¸d[¯™È­~–EhÕ2­]YǬ\_Bwß1G[£jÝñØ.ž>‰¥ÈUÄckh=Ò…›ËKXÚÔ}3ÁU“Që°*«öÏì}Y|Y0»ˆ–ßw"˜¬3¾y=ŠÐ‘L!`·ÂÊÐ;ðš!®­e¼þô£¸¥-²=vçÂìrÓw+܈%«c¯þoUVµK?µmõóJƒ“>BÉ;q] K‘ õõàâé“YbÊ"Ïj<¶ª÷«EC}=¦mCmðn Ñî«õeÓt°­]ˆÇV32R8E¬“o­Þ:_VÛfÇɨuX••Ç`äDÆçjÛB|¹wàƇ‡,mÓÝ õõh'ÅjYÕ.uüÔ¶ÕÏ+ J¶Š¡ÙWÅèÝ2ãÃ;°šr~?¢d ÑAñåÂA±ñÜ¡d !„âŠ/Šï,%½½­!ç­JŽ©sò b‰]ç¬ì¤ù¸\ëÙÜŒ!„bì o]Z6CÜ剟8¾%ÔŽú@£ßÎÉf—J.šOj;Ũ©åf !„R8JzÒ¤#yZ;»ðʹ·=ŸñÙÊrÞZ:6>CGº,…PŸmnѾ=W_ìÀÜÔeD# xõÅŽŒU¶ŽžÞ¬¨¼T2NŒa¨¯ÇXI\œÁÔߌb~êrFÀcçÔW_Lë2©Ç›¡7><„¡¾CVèR0$#^}±?ÿéO2êWëÑõ]µYF7Vå )'ggvô:—£·ºâo·;±Óö8µ5ßm¹Ý‰ÙÊΊÓë'ímµŽ\®ó\¢duí¸óJŒÌuBÉOújÔCáÝ´‘@BWk~*¼)\™‰NHÕ&íË©ª$ëÝúçXV@¦v’v•Œª¹d§AÔÚÙ…/ýë¯8Ònvþö×ÿd©³¤Ž™~!å†Û¬[EÎâ‘ v»;mS[óÙ–Û˜­îÜȸ¹~òÑÞVw‰Üîä¸Í:cÖŽ›l¹¶Y ”M Çøð6\^¾p–"WQ¯|a„®ÖáM¥o+¬žzN¥CÌkk¿Ž¦æ åqfKNWëx sSaŒ |g'§2ÚP·¶uõ›i7%?ýØø[§³¤'ãFH)"Vî»ûa~*ŒT2h䪑kwzââ±5t÷3Þ~Gϼ¥M!_ñÙȉ~¼rî-iw”Á·'2ê÷ Ÿã`¨+×£H%¨4Àh4~å:Å ¿8æè™³Y}9Ñ ó{®ëW} ·6ó ‹úå²>Ä®ªªœìI%˜› of™h3BÕ²:[W®/a)rÕpÝQËËcÚÔ̰g|x+×£h:ÄÑ3gãﯯcOu5zNaäD¿ÑÞàèw3ìŒF²Ê[3uü­®] ãï£ãú:RÉOÑjÇüÔe¤’ ã­apô»˜žË:WVȱ#'ú áh»s Û'_ãÏ4ý $>þ(klë h=Ò•1ŽfçN=×¢=1æ¿ýÍxõÅCíÆož| Ém ÛÌÆëâé“Yß¿r¦äWúgg =*ƽ²5VœžmnÁȉ~ãBêèy9ãóÅÙŒœèÇøðë8¬|¸ÓCR?—µ‘dý¢ú§Žê´ÓVÒ¡×(Òk9ÕnêëAýÓGzS¢?긩ãJH©¢®b‹U|ùV—a µ³ ÞÚº¬s'Y.äUxµ=';*º j»¢¦ƒÁ,{ä]€`ë 9Ûc¶£!—5Ë!£Ö-éà¿ÔîRÈ;"jö•娑Q"•LXîÜè® «ñwrý貪´vváÙƒ]t™=¾÷Wö;2N±:f6Z;»ð¹ú?ÒŽmGÏ˶ÙA¬ÎµY¶]º15Ë„¢~ÿÊ’^é †Úpá½¹¬÷›šƒÆª_GÏËYO;òçfÇ˨3yk7jËH½#VÁü†¬ºÅÊ›Y_D=¢=õx³vÕãÔ]õ)S”7«_§³1PÕmÁRʘMB̲è2´éBxôÛHÝNàèé³X¹¾”U&]§ÏöÐ.;ƒÎ+ÛÌÞ—ß»û‡j?ûÙœì±ÚÑÐes°B®[Óÿþø*þñgŸa¿nGD qS·“®v^ÌvNœŒnÌE&–ìþfgöX_¿§=‡v˜eÀ0;V6¬ÆÖn‡Éù¹®s½+f– ¥õH.ž> ÆŠ_9Sò+}„²“8YýW³;ÈǪ+æn²\³ˆ•s';f;rµ]9[ˆj<ÞÏÔº¶Gf«Ù"tÈcú¥ý•,ûÕ³ìr›f;7N¯ 7דL,:t;2v»,v0tãauš­°!—ì+€y¶]j›v×JSsþ@£iÿË fä ƒ¿fj܉—“"'q‰uç·°ÈÈQŒYV–£éܹ°}•DpEèH¦'Ç,wiŠž{kRÉÆÏ ¡»ïXÉíF1#!Äïòa…l?Ř5@vi!ö45:Ò…›×£8zúìÖ+,p_xîÍIÝNkýVÊq¥R10÷.!¤\Èe¥>}„B!'}„’#ùÈf¡“žXÃû?úAÞòmç3{…ÛÌvYrÉl‘J&=¹MíµB!ôì~˜ƒ¾·á:€ÆJ.õç9k€.«„X¨Ûÿ¬ßÏø †úzpvr C}=éBSsÐÈ.!þ×±²Åñ#_BïÀkèèy9++‚@Í8!޵Êb`•5Dí³À®ræ 9‹‚°É,Ë‚ü¹j‡XÕú ò*—šÅÂ, ÃÊõ%Ç-̲‰Èòj¤¶.›ÆÑ3o`zâ’¡wîD?¾ØÚž•ÍC=¯7——²Î¥`~ê2ºû#2;cH–È™DDÔ±]¶ùóÈìŒe† «sfv=ó³«)LSÉdÆ*œÕ¸êx¶¹%+«ˆ?И1fVÙ[T›ÕïŽî»TÊp¥T ÞÝøªùo'ÿå"‘³Ýõo5k€UF€®¯ÿ…6ã„Ð8ó°´™‰À*ÓÀhÄ¥+?ÇRdÁ4+‚@ÍÁm—Å0Ïb–)Á®fYœ|nÖ?5§ºˆºÔeÅ0ËÂ`öÙ¿{óßfÕ!ÆRµÝhÀ+çÞÂRä*FNôíëìùÚåìŸÿS£¼h3•LšfdÑåSŸ› c)r©Û ÌonóÊ™DÌìQ³`ÈíÛe¨0;gv×£8Wª{@<¶Š¥ÈUcÅÏl\uÇÌO…qË"K‹nÌÔ¾Ûek±ª«á¤RÔˆ•¼{ÝiòmjÖ€xl OŸÄRäj–ŸÙgÞ:æ§ÂèîK¯¼Ü¼u%±²µÍа¯Ö‡‘oíªY Ìl¶ËÀ!ã¦rûN>7럼º—^ÌÞV•û dga°ûL®CMD¤d{åÜ[˜ž¸di7Îþpsy K‘ü“PVù;·YÇëÎ%ö«fb+]Í$be. ÆÛ ´éBdv‘Ù´À²ò9³ê· wàTÆdHO{N«zfãª;æ•soׂœUÄl̬ú.gk‘µ««Ôà¤RÔTy<øøÞ~wwÞ=…ßž·ËÖ<þþÙ§µü†ô–Qs-¡6,ÎÎ8ò9ŠÇVLn²"èëÒgFÐÕk–)Á®VYì>·ê_¨³Kʙޛa£ÓL :ÜdI¯n¦3¯\<}ÒȾbe·œ)¤fŸ7ËnÝñfç22;ƒ£§Ï¦Ã=½ˆÇVm3­èÆYn_ÍP¡fô0;gvírW™ÅÙéü¿œ•UÄÉõof³z¬ÓºJ…’Öé7-ÕG ˜›ºœåÓPŒÈ7}uÛÕx5õ¾=ž¬óç¶~êô‘r&™DÔ ÌèQ¼TœN_>#Òò“·B£Fê"©}¤ÜÅÓ'ñìÁ ê7‡â¦,²Œ¤t¹÷0ý\š¸_ø­]BŠ™|dQ3T459á+#Ê*zW¢k µ›Fh‰ev52Kj³ªCòôn€}ô”Î~9rI=^ŽTêî?nD‡ÐFà™El¥’ Ô ûÕH*³H9ù rI*?~n©dÑÈUÜŠ­i#ØŠqe–'6€Ø ¨Ý…Äú>¼óÏì+égUB¶•Öή-MÒü|µ?·íqRü”ÕÝS‘f½%£yœÖñ½¿vᦋ*ÓEƒ™EÔ©ÑU:Dt˜ø[§¶)¢°ämX5’Ê,RN=Ÿá£!êô³ú,ÛHˆ>¼óŸ"½¥ë«öàÁzPø¿RåÍEôX‡vZÞ­H¯Õͧ p¾ìÕzgg‰Q‹ë@ˆF‹zœˆG;©ß sÊ®[c³ñÈ—¨±NˆYmï«¢är_ L±8;ƒðèù’z.«IŸ."Í.BK`Õ¦«c}ýžq¬]„›j£Ú¦•ýj½wn'2ê1ûØEl™¡FR™EÊ­,G1>„h´ÑcÙVøÛ·ÞÄÞš'pí?^Á¿ý›°a·‘^µ ùþâ­«ÛÜ h@xô¼Q¯jÓôÄ%ÄckÆñ:÷ñá×±«ª >D} ÁRÙNtyåz4ÃÝÅÌUE+»«45,àæõ(÷¼Œ[šÈh«1O%Yc¬ë¯Î-ÈÌ¥H‡zNÔ1 5V¯UÕ]H=Î Õ}HÿVÌO…ÑÔÄâf_b'*mçV¥Š:«ÇÈ×mÚ΢ŸºŒÐ‘Òõq,éIŸ˜ ü\xo.« ðxR¢*|Ëuˆ2nëQoŒfï«ušÙov¼úÅõéúcÖ¦?Ðá›§Ž§(×ÑórÖ¤ÐÌN'í—3!c…MlE 1añú‹OŠIž‰õìHRÿ»ðáÁWýx2˜Xß@âþ½éèÓgžØe¬zw{pïáî>š?[e´ýó ñ3»à¯Ù…ÕÔ#||o}ìÝåÁß?ÂÏìâÄÐ%B$¨ßÔþàºãŽž9»ùµ–Õ÷Öή¬ï™S'ùú²#ñïî;†ðèyŒŸBÓÁ”œô’G¼»=hôîB£7ýÕ’W÷ë¸q;=!K=Hÿ½¯ÇÔG­Ñ» ¿ûC¶¿c²#&”»wf®n¿ž| öï-¾‰žÌrâ¡ã…È»«u*È+o ç[”W§µ=¶ ö~¦ÑȯÌä$Ò«ë‹Ìâ¦k € ßaµ|tsŒgšé…®£‘Ë€ˆú§¶ÂÁfõä"úì­«3ÆÏ®Ž¦ƒ-híìB<¶špa& ­Ú¦º™•µ³kÎn ÔãÔkÅŽÖÎ.üpb -6«f錗µýQ¿gNú«Š:[ µßù¦æ 𶔤¿zI‹3z!`ù‹"Ć9ç"ö¬~)ÍŽoú„ˆPøôÓz»V €ák°¯Ög>_ÌÕÅÆv‹3ËÛ¯@zòÒì«Bünz[õîCàëÒÿð_b·çñ¤MØ”ëùøÞâwŸß¸ýȘD6zwel÷6ûª ¡bß>üÃ#™>V.'ʈUFq3øâ“UÆö±hë™}»²l%D¥"½þ@ƒi)~(è\¼”t ‡ˆ®úqx{ª«3ÄŠu¬,G3"ÌtQ:·þ9fDªÊïõõàìä†úz ™áÄ,¢ÝÌ¢Ø=½˜ž¸”±*§‹f2‹¨Ir¿tâÒr¡ðYN£ !•E!Ezý†²ÈsJH±QÒú"ê¹;*ï4âÄj”ŽZîÂ{s޵bŸ?íÏs5cÏ¿ùP«a‡Ü†Ž¦æ "¢™)†œn?¸¹Š‘ý¶BÍr›:g!Ö,Ê ¿ÝCmFsB!„”%=铱+2#̬#™ê²êòÖù0?Fw_zuíæõ¨6´Ü*Rލaãµ.šI(Ð 5ËmZ <‹~‰:œF B2™œd\)Ô÷JÍÖ°ÕŒfuìD–|f‰ ¤Ò(‹IŸãü}”Ž.jÌhHo}6Ѳ©Ñ#&v"ÚMŦÃ.L(Û-GüéÐE|颼œF B2 ~-¡vÜÚôÕuB¾2G䂚­a«~Àº:v*KH>³DRi”|ôn¾)ר1ô:Ò…éɱ QæJa»£wI6å½»²ÅüTØð{¹ªº¿?Иá#;Ô׃T2îþc¬²H„G¿­õ³Í%[ƒøÎ›Ý㬲ƒ´éÊjO­CG61Ëò'ÿê~û›6Uœe ùëÿù/±·æ ã31i”í¢O2©(*.zw;(ר±¦æ BGºpSR4'„¸Gv•`™{Zö‘>ÈB€öÂ{s†«‡·Ö‡Á·',àèé´­X1ÓùÙê|wƒ¡¶ b1|{Âv[Yθ0?ÎòÖµ§27Nç ÝÌ¢"û`«¾Ïjû@fÆ á7-ë¤õɦO2!ÖpÒ§à4”­æ]Úoï”å!Äá*`3ëcI%ÙïÌMv] ¦ul5[ƒjf‚;·¶Ù0v*Kˆ@—aƒ>É„ØSÒ’-„RB]†´“Hò µ!²™mÂ[ç3t9eÙpdõ› œdxÐÕ!ˆÇÖ,ƒÆŒ¼®šl ‹³3ÆÄU“MO\2lǦóª¶Ù¶'’Ý‹ kýÔem–pd÷××±§ºZk«]–ú©ËðQÿt¿ÿô¬,Gu¬V–£X¹Õæý%¤R¡O!¤b`FBH¹@Ÿ>B!„¢…“>B!„ €“>B!„ €“>B!„ €“>B!„ €’-„¢ÂMÖ”»{] BHÅÂI!¤¨p#ANóÆI!„8Û»„¢&~7­ zïáë…ŸàÅck¦©ÈtåÔÿóiG¾ëÔµaÇâì æ”´k[±mN“ÂÍ­}º¶sÍÒ‘¯ìjFaŸ<~ù:ŸVõ¸íîüº%×ãU[ílßîïC9ÀI!ˆÇÖ=oüÓÝÄt7œ­Þ,sµu«ê&¯£ÊãÁÇ÷6ð»»ðîq¾õ»]ÄckXÚÌk…·¶þ@ƒQÞéqNˆF0?u9¯ušµaÅÊrÓ“cJùÊ·j[dvfËö©m;éK®cK=âÚPÇ/_çÓ¬·ýÑß\pzN­lubûv~Ênïâ€xl ©d¡Í<ŸÞÚº¬2âF.™ÙÑ4PÑÈ–"WÑ;pjKõlÕî|ö{ÿ^VSàÛãÁîÂÏù²êëÁÙÉ) õõ t¤ MÍA,E®¢%Ônü¯#YÀôÄ%Äckèî?†Ö#]˜› #reÆÈï+R¼]<}ƒoOdžGÏ#•Làþú:~û›ðꋆÚqôÌY„GÏcqvÝýDzÎú™üúæòV®GÑt0hÔ“J&PhȨG>f~*ŒT2häª~=_ !IDATQ&WÛFNôÈÌ,—÷ºƒ¡v¬\ö©c§Ž¹lÓ/þã=ó‚¡¶ŒúÕ:zNe÷É­ß!•L ©9h¬dŽ~Þ:Ÿ¥º±\¹¾„¥ÈUD# Yã§’J&²ú6?uÙÔ«cE{ÂÕîñá×±€ñsC†}·bkçN¾×ŒœèGwÿñ¬~ëΩ¸öÕ²f×–l«™íòØ­,GqüÈ—Ð;ðZÆ5ivÝU\é#d ŒœèG*™@*™À¹ýÆ“èȉþôg›7»ðèy¼úbæ¦.#YÀP_^}±ãÃCYŸë^Ч–77q\4²€‘ým¿úb‡qÓUÛíeÄûNìTûD Fâ~á·vuxkë°²…?Ѐ¥ÈU¬,G±¯ÖçèX Þ›CdvÞ::zzÑ;p ÑÈB]X¼2ƒÅ+3ÆÃ† wàZ;»ðÜ ‡á4âì䢛mG# híìÂôÄXÆ1"×î…÷æJ&Ué ïÍa~* ÷pOoFò¤zŒ®L®¶551øö„±R­+ µõÉm«c§"ÛÔÚÙeLªåúuuÈÇyk}|{ÑÈŽž>›Î<9fk§ÙXZ½Ÿq}iì2³ÅîX¹=ÝblTûüƬkE‡ÜoÝ95+ëäÚ’_ë®]ù;uéÊϱ´YÆêº«D8é#Ä!ñØ*–"WÓ?ì×Ó? òóÁçÿ@ö˜Ý‚úclu“r{£2'@úÆ.ošv7i;;íŽÏ…@ìν»àÛã)ʼßÞ:æ§ÂèîK¯–ܼžgǦWŒÅjÍÅÓ'­àÖ#]ˆÌÎ 2;ƒÖ#]–uxë|ð2&Û­ÊDQþìÎíDÆgñØz^þZF¾áèü9)“‹mº÷äò¢>Õy유ÖoW‡8WÞÚºŒ57væ‚Î.3[œkg·{Ô¿å÷tçÛ ³1rsÿ0++îW¹ö³\ᤇ45Ñ;p ½§ŒIUë‘.Ü\^ÂRdÿ$ ûÌîGAý1¶»I¹½QÊ â}ÝMZ¾©ÛÙ™ÏÕ=Á‡wáóO¤÷t}Õ<ØRŠkÅÏhHo‹6ÑjÃâìŒã{±z{xóz“? Þ:ššƒð³~ØýD# øåûóïCmÆÊ£ºÚ(V·†úz²^w÷Ãôä"WÒL ÁhC^ V1\m9ÑoŒUy¹9BŒ›tõ«u˜õÅi¿Ìlu‹UßÜ+ÛáÄnõüÈç=}¼C}=Ú‰§îœºiC3Õv³ë0[ÍøN¹ég%àÙØØpu]M=*ʧmB¶“hdãï7/1`lµ†:»2|\€ôDêìä”ñº%Ônø|‰rƒoO[¢Â—H.ÿÕþc† êqŒcCGºÐÚÙ…‹§OâpO¯± "¶he3Q‡8N´¡Ú=>–ÂÖ²n¥•&¦è§ág'í©Bʹˆq;Vu9íÚ±ëŸhÓ®]RpÒG!.p#Æ+D}Õ×j:!Û•åhNb¾²¯™è±N4Wg£³ÎF3!a3ñçŸýxÚT9[Ív*Ðk%l- b;îÕõÉû™Zëöœž+«:Ü«‚ßNÚÑõOmS×n®×()Ôé#„T ŤÓW¬,GÓ«GE¶êc&l½]º•ùÒÎGNúGÑïò:}„BvŒ¦æ`QNR·“xö`¶mÛ¥[iÖÞN×á¤ùh‡”.\é+AöVyPãbr_ Ñ„|ÕÇeï>î=t~}s¥R.p¥¯Bø|ÏìsîŽùŸn=(´É„8ÆÍM,†5„â„’äÈ—Jx¾UèÝÖ—U÷øÝôê뽇Ûº²W¬cžKñØÚŽ:!o§z¿šY¡œØ©k›BÊ’ŸômU%ÜR¾›úœªÚçKa¾ÊãÁÇ÷6ð»»ðîq¾=æ–bs¹N·ã~syiÛÆJ×Þv!gV(7vêÚ&„r§ê[ßúַܸ¿Û÷‹ãi;[íØ‚›Ž«©dwyÿþ¸[àAxô<æ§.#¶òkÌO…1=9†Ö#]¨Þ[ ­H¾²…ÇãÁêËøþw."vã×xþËžÇøðöìÝk8½F# ~ßÿÎEìÙ»þ@CF›óSa¬,G‘øø#¬þÓ2‚¡öŒzR·“¸xú$¦'Æ»ñk¼ÿ£÷°²ÍhÃ_µµÊß¾Ý|to¾=ìÛùÙoóèƒYŒc µuŠq_Š,˜Žùó_î0ʇ:»0?Æ÷¿s7——ðü—;Œ¾Úµ x0r¢_€?Ðóy9Ñ¿ Ob~*  óS— µcäD?žÿrGV_£‘£Ýñá×ñþÞCêv_@äÊ š³ìTû/Pm–û£–y´ñ×ñ›Ú2?uÙ¶.'ü7ÞÌgQ«kûöý $\ÜjªÒßîÇ=¬XñîNuM•ý¿ÝîÓÍ›”¾jg×wM•€.\‡wŒš*êkÜ­Ý•ôJŸŠNYÜL ] +¿û† »SÅsµM;å} Sí]V˜ß ™ÝÍ`¹Œ¹ZgâãgLèt¯D¦7íŠ ¹žç•å¨1©dÂÑøŠv½µuÚÌ ºct™¬2Èö‰2Öï[Ú¢ö_­+W umW2Þ]höU9ú×è-«ŸR!8½¾›}Uø|Mùì0”Õ·U§,n¦†®Ã[Wg€:U<·S3χz¿6€Ø 4zwÁ·Ç³£ÑÕÅ8æëë÷\¹Y¦7íæzžS·“F¢YIßi›vçÄÎ3C¹>tßÿ­RÈk›Bʲšôæjðf¨*ô7Šçr›vÊûfío% àÃ;ðù'ÒO"¾jl©;·*Rè1Wë¬:à8cÂÜÔå¬LnÚub»ÜÞ;}!ã\«ÙÒõ<Î@`צ.³‚Ósâ$ã‚\f+ýÏ•B_Û:ò0S,LŽë.’`šrûr "m”r Y±\ãÛ uú\²]Šînhôîª(É–Bùv´«f0XYŽbzr ¡#]˜žÃÙÉ©íc1ògõΕ¤Ò’-ÎïGùÐéÛêu!Žo µçíúuv÷CêvÒöÌ®;ª ½Ä7} S6ð̾]]+ë;¦{XNcŸJ&qôÌÙ¢3;FNôcðí ¤’ Gý/ÔûŒÕ5îö>³SP§oØ.EwbN¡Æ|;ÚU345:Ò…›×£8zzûHþI%˜› #reÁPZB혟ºŒT2¦æ ± 48ú]xë|žG*™Àýõuüö7àÕ; µ€ðèy,ÎΠ»ÿ˜á,`zââ±5t÷Cë‘®Œ6£‘£Î=ÕÕè8•Q?Ðh´ µcåz©dõGþÄû÷z°šzßv‘{S)}wzu}|x+×£h:4ì°kSøÕŽ¿Ž£gÞÀRäjNçzäD¿áš‘öù}ž7þ¥’ ÛcìlL%žÇÜfÞH·vêÍÚD!„ò§ä'}BÍ"³3y©×[[g›2&•L¢%ÔŽú@£ßF<¶†%%· 3ãßFK¨·6ûäÆÎhdóšÉ¤S›!„Rþ”¼O_GO/¦'.e$VN%˜› #reÁPZBí˜ß\Akj9G¿‹éÉ1,ÎΠ»ÿ˜‘žfåú–"WÑj7Vò‚¡v=£°|¶¹%ãuxô|FòkaßÅÓ'1øöDº½ÍÄÒÁP›‘<Ú¬Ó—­¡»ÿüF,E®"Y@*™@Ýþ§ð`ý~FyÂÊõ(šMû@!¥‚5BòE)¦ˆT)é•>ASs0cÛÔ[çCGO/zN«€ÞZßž@4²€£§Ï"jÃ÷þj8ó°³ ÓúÕµ`¨ g'§UVÌâ±U,E®b~*Œ[ÒÖªhïÂ{s˜Ÿ ¸ ïÍ!•L'…øºûÇȉ¯EÌúá4âÂ{s+†½§ÐÚÙ…®¯ÿEVy¹‡{z }ª!„R ÊbÒ×;p óSaãu<¶†‹§Ob)rÕðu“*om‘Hz}ýžqŒÈG¨C—๩9ˆÞSxåÜ[ÆÄN%[CêvÒx}çv+×—ÐÝw,cÒ&¯îE# ²í‡™ŸZ>=>¯a_­#ßÐG!„ò§,&}ÐÝw,ãµØÂµòÍ«:omV–£ØWësÕÞâì FNôc|øuÞÜOà†úzÐÝw,ã54lAkgâ±ÕŒ€Pg—Tßã9µÑȆúz2Ú~}?ûñ´¶ßÓ“cˆ\™Aë‘.Ëñ „ØSjdVö1€ŒÊ‚¹wKˆhdK‘«è8UhSl¡Ï Ù ÜæÄÌGîÝhdOŸÄ+çÞB0Ô†‘ý†îVH%HÝNš>˜E# ˆÌÎ ´ùÐxsy ¡Î.Û{‚•}ãÃCFÝ[„"PL=f'îS¼¿BPl>}̽[æø Àfp!¤p¨djЕð«-†²ÝÕÕYÁcÀöý??û{D# #¤È(›íÝJÀhȈR&„9€LtGÙò‚Ç€í cð!Å'}„’r™YU1ý×ßý—¬à1`{Èš…k8@ Çb±ª,d9DËÎÎóSa¤’ ÔŒò²ÃrGÏËYNÍ¢ûëëØS] F}þ@£¶=цB)&@FHùPÒ>}bKA ‹;”má­:;ëÊ«˪S³8æ¹#ññGYÙª¶Ü†?Ð`ê‡C!ÅÈ)JzÒç­­sVNãgcæ\¬:,›9hæÙV~=ò$•Rš,ÎÎàÿûÿ³ñ ¹8;ãJ¤9—à±SàDø8[Ë›h4!¤|(íI_ϱŠ<-Cd²oŽºŒò¶¬8æ—ïÏ;Êè!·Á­]BJŸhd7¯GñÔÓcõ~zr A‡[ B¿Ïm›óS—á­­säG}„²Óì„/±*ï䯗˜~Ä„3JÚ§BÜŸ¾Rñ%.g?búô‘BP>}\é#„CmØWënµÏ  Áu:6'Tš1!Ä®ôB*¦a#„” \é#„B!Z8é#„B©è [¼»=ØÍé6![æîCàÞCÊBˆ8é+Þ]ðU{ m!%O:#'}Í.ìßË{ !ÛÁjêRJû~ÃI!„” 5Uà%!ÛÄî?Ú‚­ÃMFB!„ €“>B!„ €“>B!„ €“>B!„ €“>BqI4²€ðèyüpb @:åY4²S]ñØZ¡»C©8é#„¬,G1=q -¡vܹÀøð¼µuð\×,`~êr¡»D©J^²%YÀRä*öÕúðÕþcˆÇÖ­!js]W<¶–Ó›R9xë|Æß½§<¾­,G‘ºœœ2VSÉ‚¡vô¼†¹©0"Wf µ!Y@*™Àýõuì©®FïÀ)ŒœèGwÿqŒ¿Ž£gÞ@0Ô†ðèy,ÎΠ»ÿ:z^.ôBJ”’^éã7!d§ñðʹ·°¹Š‘ýƶnâãà4âìäRÉ„Q>jÛœ^…·Î‡Žž^ôœB4²€ÞShíìÂs/Îj§µ³ ÁPV–£ˆFÐÚÙ…éÍídBÉ…’^é³zâOÌâ©»wàŸ¸ ![&[ÃÊr½§J&pñôIt÷Çúú=øö?Æ}Gà­óÁh@<¶†ñá×ÑÔÌòå¯Õ÷åºZ;» Ý}BH SÒ+}fOÜ@zP}êæ7!d«ø XŠ,`¨¯OŸÄá͇¿ú§XYŽbäD¿ånƒpAñà4 Y@<¶ o­C}=³@ú¾å­­ÃÊrûj} „\)é•>³'n ýtì­«3þð‰›²UŽž9›õž·¶ñØBGº0=™~( †Ú ÿâÁ·'Þ›Ë8îìäTúžÌúd¿dq,!„l…’_éÓ=q0V欞ºùÄMÉMÍA„Žtáæõ(Žž>»õ !$Ïx6666ܰšz„ï<*´Ý¶¬,G1=9fB©$÷7€p¿!¤¹[^!œôBH™Xß(*Ÿ#BHqÁI_H=àM™|POÞ„²SpÒWÜDB!„䃲Þ%„B!á¤B!¤àönð×ìBC=Å»øÝôv°¯Úßg¢Îòq¹²·ÊƒÏ×8‘þÝÝ Ü{˜öWlô:žHÜߺóùNŒ)ðxk>×ã¶2¦„øÝÌf«n3…Ó\Ç&×ã᤯ìßëqœ‘#±¾øÝôß¾=Çjûòq¹RSWêþ‰ûqoÓ±ÞUV€;¶üòc H“¾Ûʘ"àw3›­Nú 1¦¹ŽM®ÇÂí]B!„ €“>B!„ €Û»„â‚xl óS—¡#]hjZ–õ m2!„àJ!„¸"[C*™Ä³ƒ¸xú$V–£ÚrÑÈ‚19$„b ¤WúøÄM)Þº:´vvÁh@xô<ßž@*™ÀÜT‘+3†Ú, •L >Ѐ[±5,ÎΠ»ÿ:z^.´ù„ ¥¤WúøÄM)$òƒ¦·Î‡Žž^ôœB4²€ÞShíìBÓÁ ¢‘´vvazb¬Ð&B*˜’^éøÄí3=©bL WJ¶’Êd|xȘøÅck~MÍAÄckF™Ôí¤ñwkgW¡MÎ ¥òÝ,; Ù)Jz¥O†OÜ„bqvC}=€ÞSÆûñØšáJâ4 Y@<¶ omV–£ØWë+´é„ ¦äWú•úÄí–RzÂ-%[Iå µáÂ{sYïû Y€²ÛU(•ïf©ØIÈNQò+}|â&„B±§¤WúøÄM!„⌂¬ô…GÏãßüé=_èþB!„ìÑÈþÍŸ~#'ú Ò~ÉoïB!„{8é#„B©JÚ§¯TYM=Âî?8+û@ >ûÝÝ $î?t}\®¤îo`9á¬=Q^àæ¸»Î‹š²c*“ëq[SBünæŸBŒi®c“ëq„pÒWRrû!¿÷p÷vîˆ@b=7[s=.WvzLs=n+cJˆ€ßÍüSˆ1Íulr=ŽnïB!„TœôB!„TœôB!„TœôB!„TœôB!„TÞ]YŽ:ÎÊ!çÕ%„B)æ¦.ãVlͶ\*™,¨ôE# ˆF•å¤B!ÅHdvÆñ|¦dÒ×j/t¿ !„BòB¨³ MÍAÇåë ±Ó³±±áJåq5õÞ¡Ä7!¤ôØ[åoñ»¼‡BJ_µ;*WÇ0#!¤b¸÷pñ‡Ìf@©L½K!„RpÒG!„RpÒG!„RpÒG!„RpÒG!„R¸ŽÞýlµ»=é¹âjв„B!;…¿fjª€½îÔZžŸüä'®ô Ö÷¥ùü¡Ã…î;!„BHÅðéÿ€{·?E•ǃ—?Š3B!„”¹ˆ3Ó§B!¤à¤B!¤à¤B!¤à¤B!¤Èû¤¯Ñ» ¿»6_è~B!„”$¾j~ÿ«Ÿæ½^®ôB!„T®Å™}{<À>ó¹âgöx°g—Ïìã|’B!Ä-5»<ˆ–s)·}@.“¾j|ÕË2Õ»ÒÛ¼„B!$7ò=—*èÌì“O>Áìì,>ù䓌¿í>€7n_»v-ã3µ~¹¬8vvvÖø§¾íÚµ¬òròkµn³÷ÍÊéúF!„gè~Gåßê7nhçfŸ›ý.ëê1CÔm6óž¸ÎÈá„ÙÙYtvvÚ–;~ü8ž|òIcp8€7nàwÞ1>!þ~饗ðæ›oâСCÁàà 1ˆï¼óŽQ÷'Ÿ|‚¯}ík8tèQ÷Œc×®]ÃO~òÀàà >ùä<ùä“YåGFF2l¯Íú:88h”ѽÖl?!„Bì‘ç —.]ÊxOÌÄo»(cöù7ðä“Of”5æ7nÜȘ«¨ÈeGFFðµ¯}-«¼h@F»j}NçRn(èJߥK—ðÒK/áÉ'ŸÄ;#ÎÎNc ÄɃ/þîììÄ7¿ùM£±*§Î’ß|óM;v,c¢%+ÞˆÊ'Ÿ|’ÕÖØØ8Qnvv_ùÊWpüøq\»v _ùÊW088hLdÕ×Vc@!„wÈs û·ZL¬DÝçòo±ZŸ<Pç**ê¼A./vżåÚµk;>(è¤ïÍ7ßÄìì,.]ºdÌ®Ý"fÓòꀌÄÎÎÎŒm\àñ$QÄ8p/½ôRÆI¨'L¶á¥—^»ロ±*(Ûçd !„²5äßêwß}7kµL÷¹Óßb·s¹|gg'8€o~󛯼e§çô‰}ìÁÁA?~ï¾û®1Q»víqíÚµŒ¿UÌ>ûæ7¿‰7n`ppï¾ûnÖäNLÐT:¤}HÏØ_zé%:tHë+(ìyóÍ7M_[!„BÜ¡Îäßêk×®¡³³3£Œîsù·ØjΡÎUìË‹yÃØØ˜QÿNÏ êÓ—oäAëìì,ˆ „B![e;æR®%[Š«mTB!„J†bz„B!'}„B!'}„B!'}„B!ÀÿEz¼ù¨j’%tEXtdate:create2013-06-18T19:02:15+01:00)Þo%tEXtdate:modify2013-06-18T19:02:15+01:00ctfÓ'tEXtpdf:HiResBoundingBox637.276x883.89+0+0Np¿¢tEXtpdf:SpotColor-0All‘lŽtEXtpdf:VersionPDF-1.4 G:xIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/gp17-1/front.png0000644000175000017500000026504212160076021024277 0ustar neilneil00000000000000‰PNG  IHDR}tÁ ž±gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿ ½§“ pHYsHHFÉk>€IDATxÚìý{t÷•ç‹~AR| X² ÉB@Ô8!EØI·m0&“ID1=—‰|Çœ752£»FšÓ¢4sÝa·äkvÊ‘Ô-·çŒDgF̺ê'9M¶{5ÔKŒÙݦH{bÒ!lçá¢n Ð(‹HðMàþQ¨b¡PT Äþ¬Å%¡ð{ìßþýPµkÿ[ ƒH0CCChllLt±AAYÁVØR9©nAA±õÑGA‘ÑGA‘ÑGA‘ÑGA‘ÑGA‘ÑGA‘ÑGA‘ÑGA‘ÑGA‘ÑGA‘ä©Íà] »*®÷| VÀ”?ê¶AAd…9Ñm©Â\@_¨Îw§Þè[ bzA^ˆKý_üyØÚ‡ÎÖf;ø$ÎoƒsÂ.[G×¼ðl^x¶—NŸ KûüSFü)‘K*ð;N.ñÝ6†çŸzTr퇸½Rß?ÿÔ£xáÙ\9Û ¿Ï«X&©¶DËMÖXrFëŸxtwþx[„ vÛÎo “ÇïóâÒé“xþ©G#ú9ZÝJÇR´¾¥K¹1¨dL'z¼Å*ÃïóâÊÙN;ø$:[›ÃÖaGû}ˆ‰6ŽbýƤƺ%}\Âÿ‹uz­§[²\9FÓ£’q¥´þtFÉ=˜û^8&€~’Ò±”ì¶1¼ðlÀãvñ¿©K§OÂÚh!7ÂßšÇíâóŠëæ>Ÿ?ÞÆ—ÇåëlmæËNwÈè#RÎ@¯ºM=Ðßõ2µÅ+Öë0U›qéôI™t'Î]Ä™^+ô#ã‡ïþ&ìO‰\ry¸ï^±^‡¥± ¢üˆµ ͇1§{ÿ‡ïþ§^í΋þ®—Ë$Õa:©<›‘5Zÿ¨ÕÝ¡¶cè¹ÞžžË8Ôv,¢N½ÁˆË×ß“ìg¹º•Ž¥X}+×.%c0š±úIíx‹UžpÌ0Z-Nuý§º~€·+Ln¥¿Ûhã(ÖoLn¬«éóxä O×öÙv}P6­Ü}$š¹|ò}¨¼þtDé=øÔ«=8Ôv4ì;ç„]öÞqäÅ3’Sª¶¡AÔ66ñu›-u|½œn…ãÆÒØ„+ç:vÛ(ŸW\7W^¥ží«ƒMü÷fK]Ü÷ôdCF‘rÌ–:Õ»¹ö­Ìãv¡¥½¯\–L3>4ˆ–ö˜ªÍ`´:´´wàÔ«=[*0Zô†r0Z]˜¼Î ;޼xÎ {Üo†zƒšÃyÓ®8Ú¶$BV%ý£DwfKðî_î:Çøu¶¯Õö³ZY¥ú6jÆ`¢tÆ•µ™>¶ö‡Émil óÂ(S±dˆUF¬±oŸ«Ñ©Ê̹ñ¡A˜ªÔm>Œ¥Çh}˜ˆúSÒñ¯7Á”êÂÚéôI44·D¤õûØCmG#¾ó¸§`9ÈnvÛZÚ; 7ÑÒÞñÁ,7 ͇q¦× pØÆPÒ¯TÝgz­x¦í(/#÷oE•9êlS:‘Ò‡Z¢³µYòÇ-7qâÜE ô\F×0ZNœ»a»™ ˾‰‹ëà¾S#—Ty¦j3Žœ>Ã_±öá@èÍô@ÈÃïF&SUMă*šLÑÚ"ÅfeÖ?ñèŽóö™-u’^>²S€±t¤t,E“/Z»”ŒÁX:SÒ¦D7±>ÅcNɘŠ%ƒ’2¤ÆºœŒJQ£›Í-èí†ÙRÛõAj=*»_ªcéQ˜Oj\©©?QsÖŒ8òâwùëÜ‹øÅ`ØÚ³¥zƒ1¢>»m §B»hźç>û}^~Ù§sS5k\Ÿ8w1jÝð³ üËÔ66©ò2§2úˆ”Ãhu¨ml’‚äÞ0Ì–:˜-uð¸]±öáÊÙ—$=#·F®¬hFGp ÿ°µ?ô†z/?^£ÏãvÁTU£X¦hm‘b³²FëŸxtÇ{œf:½ÁÈ×=>´1Ž„¿-nJ}ò¦ŸÚ•ƒûJÉ“)ÑG¤ŒV‡ §àÈé3¸rö%<ÿÔ£èïºÀOÕˆ9Ôz“;ø$žêQØ®òofÑvƒÉÉk¾aÄÚQŽ¥± 6ÑÚžXerß±kU¾¡J&¥:V"k,9£õZÝq˜-ux¦í¨ìÛø‰sá°†êd7E(é7¥c)–|ríR2ã•CN&¥ã-Ü4×ç„=B§ÑÆ”RbýƤƺPF5}¯n¸ég¥Ë#Ôê‘Cj\m¶þT£tü«ÁãvɾqÓ´·d‚Ýí‚ ‚ ˆ, £vïx«|K{ü>/¿xú@óáˆõÜIŽC­ìÙKâëecØ ~ŸÃÖ~0Z-j6mìÈ“¨Ïãva|(|ýʰµzC9ô#_Oq© Í-ðÏù"v˜IÉ3#Ú%ÖÒÞ!+·ðº¸-rzàv¡qo­ÜRŒhúæÎ—ãd¶öÁl©ªK9Ù¤Úb¶Ô‡ér8t°n,Yì¶18l£¼ŽÅ»D…ËK„ùÄ}ÇÕMoRý'76䯓¸ q½ÑÆ —ÞTeæûN(§xœ9l£²º*GÜ6±nÅgʵCœ“Go0ÊêœkóœWñ8–ë©öÉé5Z;„픓=V~‚H6´‘ƒÈxj,õðû|ðû|¨ íèºr®e#j,õ¸rö¥ˆóšš,Î ;z.£ÆR…PT©ôBy¸6ÈÕMoRýk,ŠÇ“°Œþ® ’ñÊAÛ[è )9ÅãLNråÛ&¥[9] õ'•KMçý]/ƒÑjQc©‡Ã6q¸±šþjŸœ^cõG,Ù•ô'A$òôÙRÇßXÍ–:8'ìЇyަ0líßôÂ^î ÏÚÆ¦°]^rõ™ªÍhhnmh?¶!;¼Äí£ÕÂl©ƒ©ª&tÊüáéu8ò¢9'ìüîÃXõû}¾8Ž·Q.[Cs F¬}auFÓçyò¸§Â ç„]U}RHµ/š^£õ‡hãEI~‚Häé#¶þ9_Øg½¡<Â[°‡m#Öþ°ƒ>¹ëÛ¨¢PgJêãÂ> oú\= sÞˆSø¥äŒ%Z¹£é¡¶± · š+>øVX¢d竨2+>kŽ ½4ãváüñ¶¸Î‹VŸÜø¢t, ¶ö£"äÝTqbØÚ‡mþ9oØT§Òq«œDèVI>±Î…:tÞ´Ã64()—’þPÚ¾xûCj¼ÄÛŸ±ÑGl;LU5a‡e:l£(“𠘪ÍlÈ®„Ýü¹ë-íaž'½ÁÈ—ë÷yù)¦XõÕXêpéôɈéDa=Ñ +9yÔ¦cþ-—Í'ÖƒÞ`Té@X¿ZÙŲÉå{¦í¨â³æ„ql¹óÜÔ­>9½…¥‰26äÆSCs j›`9©B.wà0—Fè=S:Îb•£F·L©6,톇/vŸˆun¶ÔÁïó…tsXÖ SÒrí“Ók¬þˆ%»Úü±ÕÐô.±íà‚šŸ?Þ€õ®´´GãCƒpNØáŸó…ÖÊ]6$l9FX›ÐÙÚ ¼×D®>îÂÅe¬mlŠéYÖÍ9 'O´¼ÂtÂ븖±ôbÉ.'›8ŸÐ`VzÈ0·6qÄÚÿœOö@ÜXÈÕ'¥7qÿE‹RãIèÕⓄ𒃶¡Aœ8w‘OWfíã7 ©!Z9â¶EÓ­©ÚŒÞn^Nî{¥}"Ö9÷âÄ­••ú (é¹ö54–Ô«©þP3^”æ'ˆ­„Žl!‚ ‚È0â9²…¦w ‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²€ŒˆÈáq»øHÅ¥:44·Ä<Ñ\çTȵžnÔ66ñA»£•?líƒ©Ê Sµ™šÍÑÒÞÁ‡ÒŒaÑÊBAÖ=nƇñLÛQ¾¼·K¶.X·Ý6‡m4Ba}âr¹ú„rp'×û}^>°\œVx]X6W¾ÞPÎ˧T/l%麥ä'ˆdPÎäà£å ükªÎ¦I¢îUÂr¸ßŒø:w_ç¾3[ê%c±~¯R÷žxòprqi¤~ófK=ݯ"‰d„§ TíãC1]9×3ø‡Íq­§ý]à^rå{Ü.؆ù@¥~Ÿ/,­Çí‚Ã6VF¥¦*3ÿý@o7’Ë64µ€} ô\F¥ s^ôw½&+WŸ¸\q[„¡«®œëD™ÁˆK=®œ}‰gÄ¥-31 ~..ÛïóâÊÙN^>5z‰V·”ü‘ ˜< ò¶àî—¨{Õ¥Ó'QQeF™ÁˆK§OJ–?9áÀpÈ’ºÿÈýÆ¢ý^åî=ñä¦áþ/–‡îW‘\2ÂÓ'ŵžnLÞ´Ã9aÇæÃx¦í(^x¶zƒ;õ{à¼éˆxsNØ1yÓ®ø mÄÚ‡CmÇø›“ÙRÇßÌ2A¿¥hhnÁˆµÏ#USªåo@oÉSaoù±Ê•Ã9a‡>Ì+0…ak¿¬'”+Û64³¥½Ýau¨ÑK´º•ÊO™L<÷ª3½V!Wȸá`´Z˜-u0UÕàÒé“QïgR¿±h¿W¹{O´{–Òû•œµz‰V·Z½D&ˆ{•Ý6†kÎôZe×ÚmcÐÊeëå¦"·êÞo±4çû†-eZ›­ÑŒèﺀküs>j~ÓU.£ÕÁÒØÄ߬ô†r´´æ ŒV‡CmÇ0ÐÛ&sm#{¯mlâßÕê%VÝjôB™ŠÚ{Õ•³/A/XÏwêÕþ;á}æÈ‹ß•¼nª6‡­‘Ûª{O¼y¢ÉC÷+‚Ø:4Á`PÕöµ)Ó TËM7Õº\L/à]Iìî]‚ ˆd¡Ë× Z—«*OƬé#‚ ‚ ⇌>‚ ‚ ˆ,€Œ>‚ ‚ ˆ, £7rA¤©ˆ˜Á:¬4½p7p¬HÂHÑ"_ÈE$",+ZÝr:#–-–Þ£õ‡\Ô.”£éU¸¡€¢>S¢#9 eØÌFbûCž>‚ ˆ‘ŠˆñFËàÒÉEšG²ˆùB."‘\YÑê–Óa´ò”è]îº8º‡¸R:Œ¥×k?oªé³X:’Ó9°ýElP„2ú‚ 1£¥ý1öà¢<1[êÀhµ|9áe‡G¿8òâÉôrÑ2޼xF‘ ÀF$ ¦TLJ­ä"_ˆˆ| ©²¢ÕK‡RåÉåQÓÒý©ÃXzõ¸§ø³•öY4©Ñ9çÝ%)Èè#‚HÉŒ˜¡6Z†” Ñ"YHE¾ˆ‘(ZYñD¹P-I®?¤¢{ˆÛ!¥C5QH”¦Õ¦h:F’⮄dôAlr3ZÚ;ÂÖ©=ÓvT±JýâĹ‹|è²Í¦Ë É‚ƒ‹|!<ü9Zû¢•«ýb*)O*\œêúAÄÙâvHéPM?(I«MJt.\S(Õ~‚h#ADBI§ˆjÒ eŠdñ‹·G°#?_2ò…Tû¸Í rQ1„†‰¸ýr:Œ&ÛÏþ×õ˜z—%ÝCªbÆÒ«°mJú –ŽätNj¡ˆAd‘ƒØJ.>‰C­Gæb“Åùãmaaûˆí Eä ‚ ˆs@昙­ÆïóÂBǵQ O_šRÎ(·Ç½«AÞc¡/ÌA¡BÃið,±}©Ë×@·C£¸Î)|ùî.±¼DA®» ÕçË$ÝdRÕä¶1ºIäé#"Ó‰ÇÓGkúÒ”½Å*œ° ¯ 4Ðå+{˜zW‚ð,±ÿ×íШª“è«Ìç]]Çò:P˜«®\¾LÒM&µQM>aS¡‚ ">hz— ‚ " ÈOŸ0ŒÍ3mGàÒ!|€ðð:› 7”_P÷í_ó×¢…"‚H7Ê™0yÊ=ºA¨c›ÞSaôqalµƒÃ6Š+g;ail‚Ã6Ê}¶¡AÞèóû|°46ÁãžÂ@O7޼x†gÃZÊ¥6Âß8lc8qî"ûùú Ì–:˜ªÍðûØÐ9}ös(fJù…²L©6Õª!‚P “§nŸ ˆíEFLï liï %¤„†æ ô\ޏ.þÆl©Ãˆµ02 ‚ ‚ 2•Œ0úô#’ùùãm1ã zÜS° bÄÚÍ-aß™ªÕ…òû¼° òq£…"‚ ‚HW2bz—‹9ØÒÞ¿Ï‹K§O¢¥½ƒ÷Ê9'ìaÞ@á)ê·+ì€Ì–öt¶6óS³ÃÖ>Þ‹Ç…¿áNÊ/31ÐÛ-J‰ ‚ "“È£Oo0b §½Ý`Jµ8Ð|¦j3˜RoÀIb-í8¼ µ¢Ã*µå=z±Â ½ðlNœ»ˆÉWO.ÔAAD:C‡3§)Ÿ-SnO/øóϪu¹ªÎiãv•39ªÎMûéÌZ\ù&¼ëð®U*ÉåË$ÝdRÕä¶1ºIÙz8³Ú~&BÜ=.P6‚ ‚ B2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²€ŒØ½›¨Y`¾$ˆúâ_SžO˜vi]]ñæ[ lüO¾LÒM&µQM>qÝÉÖ A´{— ˆ¬ƒvï±Ðî]‚ ‚ "åÑGA‘ÑGA‘ÑGA‘ÐîÝ4EÍâÌ–ƒð,±›kÊ™0yÊjûׂ|ø.}a,P¾À› ߥ6ß”?ÿZLžåŒòw._&é&“Ú¨&Ÿ°©Ð Adô¥)jvØ †Lž&®Ýy…¹êêŒ7_Þbèßœøòe’n2©™¤‚ ">hz— ‚ " ÈOŸÇ툵ÿÜÒÞÁÿÿZO7æ¼8Ð|zƒ1"­Üõ2ƒfK=ƇñLÛQÀ°µ ͇ù4ÃÖ>˜ªÌ0U›áq»ÂÒrßë åÐŒe Ë!‚ ‚H5áéó¸]ðû|¨±Ô£ÆRÏ_¿tú$­5–zôw]€Çí K[f0b §[² SkÈ ôvÃn؆Ãê´ b w#¿íú œv€ßçE×ËpØF%Ë&‚ ‚H'2Âèbªª8'ì`Juhh> ³¥–ƒMaÞ6¥44·` çrÄõkµSªƒÇí˜-u±öƯÂl©Kµ:‚ ‚ ‘Ó»àqOÁa…Þ`£ÕÁ?ç£Õòß3Z]XZÛÐ œ7í8rúLD;«7”LÕf ‹ ÆáqçŸóbÄÚæaôû¼° ÂTm–-[øAADªÉ£ÏTm[Ëg¶Ô…MÇ:l£(3ÃÒrS¾œ&.ƒ›Ömiï@gk3˜RÖˆ¶öñ^<½Á»mŒ7úÊ F ôvó£œ|AAéDÆ}RTT×àüñ6¬ÑÕÐ|˜7äÖ˜;¼ µM€ñ¡5y¦js˜÷îPëQ~zØ64ˆç.òÞÃ2k~ñövä磶± /<Û€ç.bò¦Ï/.› @‚ ‚ Ò M0Tuâé”?€é…@ªåÞö|¶L¹=>½àÙ­Öå*>ÿÌ»äË-gr°·Xùϟάŕo»ïJº|ªˆ¹|™¤›Lj£š|Â6¦B7‰ Z—‹éÅ@BËÌÔö3AêàîqÉ@í}ÈÀAA„zÈè#‚ ‚ÈÈè#‚ ‚ÈÈè#‚ ‚È2z÷îvFÍfïêÆbô–ƒð¯)[œ¾´.*#Ž :jóqu.­«k£PÖLÑM&µQM¾ˆº“¬‚ ">h÷.AYíÞ%b+ Ý»AADÊ!£ ‚ " £ ‚ " £ ‚ "  Ý»qÀäi§Ð\^ €ßo¾xÉÓÌå‹¶ý«ApUªYì½´,¯oNÖ‚\ U¬GåàÇÛFµù„mL¶n’š± `Ó ¶£ ‚ Ò2ú⠜ɉ;†k<ùâ…Ù|S5ùØØ¯›{(ï.ÔÄÃ5Þ6ªÍ'lc²u“ ÔŒM`ó;Ô¶£ ‚ ÒšÞ%‚ ‚ÈÈè#‚ ‚È2bz×ãvaÄÚ°l‚©Ú,™îZO7æ¼8Ð|zƒQ2?j= F«Ku³`·ÁaEq©Ï´¯e#š†­}hh> ÛÛ³¥.áò,¯ñÑr0lºÝ³@AŽfKö]^âîÒÆôm9Cï¢A[AFÜ]=nü>*ªÌ¸tú$œöˆ4—NŸ£Õ¢ÆRþ® ð¸]ùk,õ(3Ñßõrª›Dç„=—Qc©ÇœWÎv†×K=LU/9L©ãCƒ±öÁTU³%2-­‡‡e[ Só°po‰®o-èvh S±¹† ‚PGF}Àhµ¨ml‰sÑßu!ì;ç„L© ͇a¶ÔÁr°)ÌS"¦¢zk–¡¡Ç¹¥½G^<5}mc&oÚQc©ßRoµ._ƒ»‹¬‘w9´Ð]jvTAêȈé]!RS»þ9­–ÿ,õ0ô¸§à°ÂnÛ’)±dkÚkÊŸ1‘3EÎt@o0âĹ‹èíÆ@Ïej;`c¼ìô.7î9¶Ã6š”q¼d½~LÞÖcË ¼«@a.—K†AÄVqFß•³†ŸÙRÛÐ ÿÙaE™`MÀ‹-í8àváÊÙ—RÝ ‚ÀqÎ ;ZÚ;à÷yqéôIj;ÆW!~Ÿ=Ý8òâØmc¸ÖÓgÚŽn™l…¹ìq)9[o„1yZËG±ÅdŒÑ7>4»m ¦ª‡¡sÂçM;š£¢ºç·` ¼†æÃü÷zC9Ƈùµ€ßq ä3LñeŠœé€Þ`Ä@O7z»Á”jq 4…ã•3z»q ¹û¢ã°Â9a—ÝØ´Y,Ðàç÷×ñ¨6wÓ…A©G UÝͧüL/d÷C½Z—×!Ëñæ‹]~ü‡3¶Lùû{xîæÆD9“×áÌñ¶Qm>a“­›d fl›?œ9Õ:¬Öåbz1°éÈ"™†Ú~&B›½7ªAís È AADüÑGA‘ÑGA‘ÑGA‘ÐF‚ ²ÚÈAÄV@9‚ ‚ ˆ”CFAAD@FAAD@FAAD@FAAD@FAAD <&‘TâMo|ßxcߪÍoìÛDÄN¶n2)ö1A±ý!OAAD@FAAD1Ó»~Ÿ½Ý(3Q{° ŒVÛÛ³¥0líƒÙRv ]CóaÙü´Üu½¡zƒ#Ö>þú¡Ö£ðÏù®•Œ|ÙÂëšCo0¦ZAAd)ãéëïz5–z̸]èíÀsÛ(ŸÆ64qK7ÐÛ »mŒO-¿íú œv¬±Ùßõ2¶QxÜ.ø}>ÔXêQf0¢¿ëå°k5–z˜ªÌ|Ù´=Ý©V!AAYLFxú8Ìl©ƒÙRÇ¿ÏÇsÑhhnÁ@Ïå0 fKF¬ý0U›1~}P6OEuMªUCA¡ˆŒ0úüs>0Z-ÿÙTmæÿïqOExöä0U›1,˜rY¯Ï ÛРd}vÛÌ–:è åa2”Œ|z{ ¶¡A8oÚqäô™T«‘ ‚ ˆ,&#¦w…Þ=»m WÎvòß™ªÍhiï@K{GÌrZÚ;0bíç?3¥ZxÜ.¬7‘ÑêøïÊ F ôvCo(+ƒ«ïĹ‹¼LBš‡¥=òâ˜-u|=AA© #<}`ilÂùãmð¸]8qîbÜåj=Êo°0U›Á”êÐÙÚ ¦T‹–öøç|€ÚÆ&¼ðlNœ»ˆÉ›ÓÉãCëý„ <á5ÎÒÒÞóÇÛPÛØ”j5A‘¥h‚Á`PM†)Ó tìV“)ÓáÌòº¡Ã™Ó—j].¦¼¾³5¿‚ ÔÃÝÿ“Úg !Ó»AAÄæ £ ‚ " £ ‚ " £ ‚ " ȘݻÙ·‰@ K‚¤Sþò•å[¬ý¿»„wUyñæó¯ùÕ´‘Ë—IºIE ‚ B2úÒ”xwú×âË·¼ÄrÆC¼ùÖ‚ñ·1St“Š6A„4½KA‘ÑGA‘ÑGA‘ÑGA‘ÑGA‘Ðî] /ÌÁƒÊcrrGЍÍ7åÀ¿“§A9£üƒË@U¬Á–ƒð,±ç¯”39`ò”Éê_ òñlãÕM&µQM>aS¡‚ ">Èè#…¹ˆ+»Ú|Ü9yy9ñåÔå Lž&)mäeΠ6f’n‚ ˆø é]‚ ‚ ˆ, #<}· #Ö>þó¡Ö£ðÏù®h> ½Á‘¶Ì`44æ¯9'ìF«ƒÇí‚ÙR¸ÖÓ…9oXYÂ}|9vÛ¶Q—êðLÛÑ0y¥¾“+K,ïPùãCƒ|^a½ÜgS•¦j3‡mpéôI0Z-j,õèïºÀiÜ÷`À=—Qc©ÇœWÎvòi侓+Kª· ½Ý°ÛÆÂÒrémCƒèÝh¯íú ß>¿Ï‹þ®—á°Jê‚ ‚ ˆì$#<}›å@óa ôtÃTm†ßç…Ç=Å{òÖPcJu¼ÌïóbÄÚ‡K½dyŒVÇÿ¿¥½CñwjhhnÁ@ÏeÞ3È1bíá¶c° òò›-u±öÃTmÆøõÁˆ<AAáé{ Û(fÜ.hná¯Ù†1bíç¯ Ó:l£pÞ´‡ ¼)ø}^ [ûail +Û?ç£ÕòŸ…†›zƒ'Î]„Ã6ŠóÇÛx\¬ï¢µMª¦j3†Ó³0lí‡Ã6 ÿœ7lê`UÛÐ ô¡)m)]A‘dŒ§ÏTmóœÙmcü5n:ÖTm–L –Æ&Œ_„Ã6Šç.†}g¶Ô…M¡:l£(3Á”jý!cК.niï€ßçÅ¥Ó'yïšÜwre ååÚÁ}×ÒÞÎÖf0¥¬A:líãëÑŒ°ÛÆxod™ÁˆÞnè åQõFADv’1F_4ZÚ;pþxjC¼ñ¡5nœÑS{° /4DíÁ&IO^Eu ÎoãópS½L©Ž7¼8ãIZ{7ÐÛ ¦TËo¾ˆö©Ú,Y–T;µã¯j=Ê{ôlCƒ8qî"/™µ¿x{;òóQÛØ„žmÀ‰s1)ðèIé‚ ‚ ˆìC Ux:å`z!j¹‰SÎä`o±òÙþŸÎ¬Å•o»ïJº|ªˆ¹|ðÙ2åï*Ó þâj]®â³á¼+Aþ áxu“ImT“OØÆTè&Tër1½Hh™™€Ú~&BÜ=.¨½´¦ ‚ ‚ˆ2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²€m±{—Ø<ÞÕ Çµù–Ö7þU³!ˆË¨Ëç]ÝX¨ÿÑrþ5e ÷…õÅ«›Lj£š|u'Y7AD|Ðî]‚ ²Ú½KÄV@»w ‚ ‚ ˆ”CFAAD@kú‚ ²„)y‹©–‚ ˆTAF_š¢fÝÍÒ:°¼Î®Mbò4ÈSè¿] €_¼_«A¡Š¥ÜZ(µùü«A¬< ÀìPÞF._&é&“Ú¨&Ÿ°©Ð ?ñlÖ!bû@F_š¢fq&†‹½™—39q…áÚ]¨‰+œ–Ú|\8-fGüa¸2E7™ÔF5ù„mL…n‚ ˆø 5}AAYyú‚ B%åL˜‚ ‚P “§‰ëÌÃxó©EMµžÉ//G|ÂÍGÉnW²ú+Yd”Ñ7líƒ©Ê Sµ· #Ö>€å`LÕfPt4†Þ`Œ¸^f0¢¡ù0ì¶18l£(.Õá™¶£ y ‚ "Ș5}· ¶¡A ôvóŸý>*ªÌ¸tú$œvE×k,õ(31ÐÓq½ÆRS•Î ;z.£ÆR…9/®œí”¼FA‘)dŒ§oÄÚ‡CmÇ`„Çí0Z-j› 7Ñßu§^í‰z])ŒVÇÿ¿¥½ø:…ׂ „ÈÍ4È¥ÕŒªÊ„΋†æÃõ3Jeõ¸]0[êâ’‹»'J•!‡Ý6½Á½Á6s“(âÑ)Adãé¶öÃa…Îv“ {Ó_÷¸§`Ĉµš[®;l£pØFá¼i‡Þ`ĉsá°âüñ6þF%¾F!Dn¦AŒÝ6q‹…sÂŽÞn˜-õõ‰g0”À”j# $¥rqé¤Êˆ—GŒóÇÛàŸóÎôZá¼éÀßþ÷óÈÉÍ…©ÊŒ#/žA×^.½¡Wξ„ÿð_OãÃß9yÙ¹{¨ßçÅêÊ väçó׸úô†r>ÙR#/žÀÞ[­½Ýa37œ®„òÆúl·a ç2„µ•Õ0yí¶±yb•OÛ‘ŒðôÙ†qäô´´w ¥½š[ð‹·G0>4ˆÎÖfáS®r×9ZÚ;ÂÞLJqþxÎoC×è F8lcèlmÆ¥Ó'ù)ñ5‚ 9„/œŒV‡†æÞiiï@mcLUfØmc¨mlŠðÒq³ ¯\ƈµŸÏ#6H¤f0œö°rvè å8Ók…ßç Ëo¶ÔñùÄuÔ66áÉ/~)LvaºÏ|¬\¹gz­°ÛF°÷YîEYñš<î†ôü ÿŸˆ´fK^¹:,y]è™ãÊ”KϽ™ÆºF!…p¦ÁãváÊÙ—ø“88ÏÀXr󈑚Á—ëŸóÑj#ê¬~‚âRηgz­²uKÉ®DVF«ã§'oÚa9ØsæfaÎ&£ø³PO\›„uF“—“Giù±Ý Ó› "ÈÍ4p'¸ vÛ<î)0¥Z8'ì(.Õ…•c¶ÔÁ9aGgk3µÆ>"J8ƒa¶Ô…•Ë•uþx[ؼßþê—°]DíÁ¦0¹†EkㄲÆÚ/ÞQ,«Ý6SµYræÆãžâó‹Ë“j°ÌÎÖf~6ÆnÃ;ÿ2!¯¥å§Sþ@Ô¿T“îò€& ª h9å`z:o«ùl™r',{•í“j]nܱW㉡ª6CU—ìÕLÑM&µQM>aS¡›DP­ËÅôb kâùr›@,›0ÐÛ-ëÕË$¸sSSušB2~kÂ|jIö=D ÙpoLjõdÈô.A?¦j3,›0yÓŽ#§·Ç2½Á¦… ‚ˆ yú‚È:²ÍÓG$òô‘§OŠt÷ôÑš>‚ ‚ ˆ,€¦w ‚ ˆ8j†rq¿Õ¨ÉB=-á_Sæ)^Zß|>µ¨™‘ó®nÈ“ ù–ÖÕÉ'¬'ÙíR“/ £ "Ap&Nœ»3-SªE¥¶¡A”Œ0U© G–¨ ©Þ‘©x–â[æo>µÄ»[6ò-¯1åÏJv»’Õ_É‚Œ>‚ ˆqå\'5CiÃnÕ³/áÈ‹ßeѲG©8l£0U³1hÅi„Q"j6ÉFõÐÊ1bíƒßçåϧó¸]8Õõ ôvGÈ!ŒNá¼içË¡H±½!£/MQsz¹w5È/rÕæ PáºÎ¥õ·]¾ºÊ«ro[jóÝ] by=ˆ‚\ vªÏ—IºÉ¤6ªÉ'lc*t“δ´wÀa…ÞPŽ· ¯\FgksX„‹Xá¹4â( ͇ÑÐÜSµý]øº8CŽ)ÕáĹ‹èlmæ½ý·³pÝúuX{.ݡ֣èlmÆ‘¿Ë—CÄö†Œ¾4EÍÙgXØØ…ø`FÕ%Ïûݪ:ù‡¾Ê|ÞÕu,¯…¹êÚÈåË$ÝdRÕä¶1ºÉ4”D±B%"Vd .:Sª£e^YY+#<½ŽÖñD–A»w ‚ ŒÚhreˆ£DHEõGÏRö°!f¤ %å±= súÒ”L‰:A9äu“Im¤ˆA™ÓGAAHBkú‚ B%Lžy Ý&kðg½Å›O-j<÷Këà7J%C¾< À¨Øæ_ ‚«&ÙíR“@ÚÏÑGA*)grâ^.’Œ0lj¦ýØ%"'lµ|ÌŽø—w$»]jòÉ Ã4½KA‘ÑGA‘Ðô.AD‚ÆÓµl‚©Ú5­Úsò¤âúú}^ ôv£Ì`DíÁ&þŒ¾Í´ÁãvI"ÍÉ-M¼í¡Xıõ§ "AxÜ.ø}>TT™qéôI8'ì’éì¶±0G \\_³¥>ìz×˨±ÔcÆíÂ@owBÚà°F•™)ÕnÚ(·‡‹Eì÷ùP\ª‹+±Zne9‘ާ "0Z-j› 7Ñßu§^íßç•›+ŽÑ+D{wÄÚÏÇõåÒqF¥ÙRÇ-•7Zl^çMz.Ããvñi£ÕÏÅúå Ãhq}¼xFq{(1Al=äé#‚Ø„S»ŒV‡†æ´´wÀnCK{j›`ª2‡Å×b·^¹:Œk?Ÿ'ljwÎLJ_Ö)Î L©§^íÝ6†#§ÏÀl©ã=ƒzC9^¹: ÛÐ _–8ö¯¸þ™Ýu¬z¦× »È[¨¤=RÈÅ"–Ó)WžT{ôßÎJê[(³R¹RA9“õ/Õ¤»|}A[•³¼æq»péôI8l£aqsÅñuå‹ß+ôî±^±NÙ¼R±y9¸ïâ‘MJ¾Xq}ã‰G,‹XJ§â6Q,b‚Ø€¦wÓ5<. ŽIRsP¦0íÒz|‡JªÍ·Øø7ž|™¤›Ljc¼À¦B7éÎøÐ ì¶1˜ªÌhiïà¯{Ü.ްЌ跡Ì`äcãÖˆÖê™-uè¹3~¯¥± ç·ÁãváĹ‹ªòrØmc°·6ã€À»e¶Ôa@ /³µzC9Ê6¨Š/¬V&Éü"]Iê4$Ÿe0ÿñ¬¤¾9„夛· ·˜®¤»|ÅÞ%" ¡Ø»Ømcp„¦5 å$#ÎõfgNvün5dC\òdOì]òôAd1zƒñz±½ £ "‹á¦F ‚ØþÐF‚ ‚ ˆ,€<}iJ²×-”39Ø[¬ü€[· 6·6#“ÖtÄ«›Ljc¼ëVR¡‚ ">Èè#‚ •Ä»Á"Þ|j‰wCA2äó®ã–/ÙíJV% šÞ%‚ ‚ÈÈè#‚ ‚ÈÈè#‚ ‚ÈÈè#‚ ‚ÈÈè#‚ ‚ÈÈè#‚ ‚ÈèÈ‚  Êz'&bëYZïê:–×S­¥Øl¦]jòaaÃ믪>Aße dô¥)ñØdßlÔæKÄÍ&StCAéíÞ%‚ ‚ÈÈè#‚ ‚È2bz×ãvaÄÚÇ>ÔzŒV¸ÖÓ…9/4†Þ`ØmcpØFQ\ªÃ3mG%Ë(3ÑÐ|~Ÿ½Ý(3Q{°)j¹Â2,›`ª6Ë–K±‘ºûç|1¯ ïvÛô#˜RmÄýW®|Û½ÁQ¦ÙRñ¡Aþ^?lí »{Ü.xÜ.˜-u’ß±ëÈ\2ÂÓçq»à÷ùPc©G™Áˆþ®——NŸ£Õ¢ÆRþ® ð¸]pNØ1Ðs5–z,Ìyqål'€)eÓù}>—ê`ª2ú»^F¥3nz»eËÊQQeÆ¥Ó'ᜰ‡ÉVc©çË%‚ØŽHÝc]ßG¬}`Jµ’÷_¹²¶QÉû¸'”×n؆#äuØFùÏâï‰ØˆuHd.aôIᜰƒ)Õ¡¡ù0Ì–:X6±7’§ZÚ;päÅ3F«ƒÙRF«…©Ú SµÎ ;Àl©CK{,›dËå`´ZÔ66áĹ‹èïºj5A¤”ŠêÕy8Ï~ÿ…Ô}š[0ÐsY• vÛÎoà Ï6`ØÚñ™£¿ëBXšžmà ÌlG¨›ÎÖf@gk3®õ°F8÷Œ$¦côyÜSpØF1ãvá@s üs>0Z-ÿ=gìé Fœ8wÛ(Îo‹:°Äe˜ªÍ²åŠán6BÙ¶Q8oÚS­*‚ ˆ-…»çXû1ÃÏ„„ߣ…ׄ÷Æñ¡A˜-u’÷_qù²baª6‡kJÐÊñÊÕaÞû'þ윰ÃnCmczXOdmcMsü³õ•«Ã±öƒ)ÕÂ9a‡Þ`dû{ÂŽâRé0ÍȈ5}ûƒniï»&tÓ;l£(3ù)Þ–öø}^\:}Rvp™-uüÛ¡Ý6ÛÐ Ž¼xF²\1WÎvò7))Ù‚ ¶+Ü=ï€Û…+g_b§oE÷A»mLòÞ8yÓί‰–ºÿ Ë–‹–öt¶6ƒ)Õ†]gJµ¼WÑ9a{‘çŒNî{ñgÿœO[ÛÛ™­pëýF¬ý8Ôz#Ö~LÞ´ã@óaÒaš‘1FŸÕ58¼ {“àçôtc ·L©b,ص46áüñ6xÜ.œ8w1j¹û–j·ÁTÅÞ”ì¶1Œ òSÅd±ÝÞó¢Ýc¥îvÛ”ºÿnÖà÷ö™ªÍ`Ju¼A(6&í­Í|ÄŸÍ–: „aße‚~€ ÷ôAD<è F@ày&ˆí}ADÖ¡7ù3X¥>Äv„Œ>‚ ‚H þ5åS§Â´KëˆkÚu- .ßZ†¬ÐÚL»Ôä[Z/Ÿš~NÈèKSâ°É¾Ù¨Í—ˆ›M¦è† ˆì„[¦ÏRž%õùük©][¶Ul¦]ÉΗ)ÐF‚ ²ÚÈAD¦ÏFŽŒ9œ™ ‚ ‚ˆ2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²2ú‚ ‚ ²€”‡acò4È#Ó“ ˆ$@8‚ÈfRnô=X “§IµAdÞ•íW“ ˆÄ¢ËWnŸ,­Ëëéýb™r£/ÞÀÔAA[‰šØ¶Ó LùÓÛ裉U‚ ˆáq»`·Åõ}¬¼©ÆãvÅwØÚ§*½Ý6†þ® ¸ÖÓ½)y¥ô)¾îq»ÂêQ+ëfó åÙŒŽ9ü>/ú».ðŸÇ‡ùrLJá÷yáq»Ðßuÿóû¼q˯DœLâz…2ú}^>ݰµ~Ÿ7¢Ìñ¡AØmc ÑS¼x–XGÕòz0#—‹ÑG‘ /LÕfxÜ.xÜ.œêú­ûè¹ Û…CmGÑÐ|8¢<ç„'Î]\:}‡ÚŽa$ä=‘*W,#÷`5[êqäÅ3üç2ƒ ͇a·ÁaEK{ÎoéW{xïœ0ßùãml{ç|ºàʹrö%yñ»0[ê€o'´´wȶYªœ7pØFyC­Ì`Čۡ§hýÇ©þ®—ÑÒþ \:}þ9_X[G¬}8rZZ¦Šê˜-u±öÁãvñƲÔ8UÒÏb™œv˜ªÍèﺀC­GÃärNØfK?†¹Ïœ\5–:”Œ)}9z°@ƒ)ºdâvòôAl܃땫Ãðû6ˆŒV‡†æþ!*„)ÕñFÔ‘Óg`¶Ôñ^½¡¯\æ=+âò,M¿>ˆñ냰46E-×9a‡Ý6†ÚÆ& „¦9Í–:œéµÂòˆµ´w ¶±‰7täæãð§^íÇí’¬j›ÂŒ-½Áˆç.ÂaÅùãm¼~Äm—®…˜ªÍaS‰Rå‹å·‘ÓÁæ–ˆò…ӚܦNǦ*³¤žb‹óí_£Õb ·;äÙ Ó«Çí 3¨=î)8l£±öc&$»Þ`äõMwÑúYˆX¦œÜ\´´wàL¯•÷jrrùç|`´Ú°þŽ ç„µMx¦íhX;’ ·QûšyS»}A[†Ðó±0·1%åq»péôI8l£JîÁÇ”jen\.¯¸¼ÚƒM° Â64ˆÚƒMQËÊX2Ùôº¨aÝá²±ù"¼>2õH•k·¡¥½'Î]Ä@ÏeÉ6‹Ë‹G×BZÚ;0bí—•WJ~q[Ú¿âRη=îugòý}\ˆ½”b˜RmØgSµ™×±ØÐS¢;¹~Ž&Sé»dåz÷Xpø´~* =޵ à^¢œÉn‡Ó ™·•¦w ‚ ¶³¥=—ÑÙÚñä<ñLUÙmc°·6ã€Àó&,Ñê`ª6ÃïóÅ|Xš-u(ÕÂ9a—œúXOK¿m eÖ>44†ÙRÛÐ :[›eËçÚ~þxô£¢z¸ºzº1ÐÛ ¦TË·QÜfqy‰Ðõ¡Ö£¼J²|‘üâ6rkk6EÔÅMUGkw¿m e#z#,ß9aðÊ2Zü>/ß_ãCƒ¼‘ÅéÔãvá€HîXºë šL»ô»ù©`Þ-ËÒØ„óÇÛàq»øå rr¥‚é…v±sºº| ¼«Aø×‚uìœ& ªòQNùiÝApTër1½ÈÈÝwÂõtrø}^\9׉C­GæÉ2%m&¢K‡Î ;lד®ãt•‹ã³eÊ}cì‘-ɳtùUGÊiàéó¸]ü›Uq)»~ Ö›)·†@ˆßçå×7h>öÆ­ŽakLUf~q©–ö~Á¬Þ` ÛYUf0Âl©ÇøÐ ži;Ê—Å-ö•+Çl©ã¹\{¹Å³ŒV‹Úƒì´—WŒP~®­œ¼BÙ¸´zC9_ŽP/Ümñuk_øÊ l§ðÿ±ÚNDtô#ÃäŸó¡Bp_Èt”´™ˆ7}*ôö ñ¸]üæ ’kû’ò5}­ãpå\ìíùRÛÊ/>‰Š*3Ê F\:}RQ· ¶¡AÞX¬±ÔÃïó…¥å¶÷ ˨±ÔÃTe–Ýê­ñqý]/K¶E2´ú»^–=æA,¿X^¡l~{ôø¨NÆÉ ¿°Xª­Rm’’A(«Xn%m'":ÜTi¬4¾LGI›‰ØDÛQÛØ”²—ðt•k;’rOŸ×zº1yÓ焚cÄÚ½Áˆú=pÞtð^5ŽS¯öÀïóª:ÜtÄÚ‡CmÇ` ^i¶ÔñFŠÒLCs F¬}aé¥ÊaJµ¨±Ôóƒ×㞊ðH¬'ÌTmFmc¿ˆW®MbùÅe54·À64Èïò’j£ÕÂl©ƒ©ª—NŸ”Ý'§± шÕv‚ ‚ ¶Ž´0ú¸­ãøs„ži; ¿Ï çM®œ} kØì¹HRƉó¦#¡©F%u ‡vjùç¼±öÅ\3 ,ƒ=+ˆ=s«¢Êó4sá4KK{l×qþx4Žû\©üÜq j¦zÄm•Ë+–!ÖíDµ ‚ ¶š ¯òxÝKÚ;-Œ>në¸nŠ`×§˜ªj¢–q­§Ï´…©ª/4Œ8S\ǰµ?Ê€; ½Ñ—Áyàži;ÊïHŠ·Î­¥½–ƒMèïºføè F „vTqžK)×¶Rùk,u¸tú$,›ÂŽ1c·ñF¬\Ÿ(‘!šÑ«íA‘Ndâf¯h¤…Ñ'‡sÂÎoçâ V.<Ãha΋žm£Õ¡¥ý1˶ âĹ‹¼AUfí‹é­nq7U›Ã Kc“¢0²… ˆïÈ–”ïÞ%‚ ‚ ¶2ú‚ ‚ ²2ú‚ ‚ ²€´ÞÈA‘Ip›ÌÄQz8®õtcaÎËŸS+½Ttî{qYruH•SÈ”`_ͧù37ÅõáÑs8ùÄåj= ÿœORF.JR™ÁˆÚƒì»rŽÄQ‹Hæê%Z¤¤XÑ“¸6sФÚJÛòôA$¹(={ £eiïïºÀ.réCÝý>ŠKuü¤ReE»..‡)Õ†EË×+ŽžsåìF#.*O™ÁÈG Gð€þ®—Qc©ÇL¨\~©GÂï8¤ò õì°JêG.z’íúÆI~H*J×V‚ØŽlkO_´·äXù¸SúG*ÂAéOCs z.‡Ý;œv0¥:þþã÷mf.•žƒÑêøh8¦j6–®\Y–ƒM’×[Ú;"Ê€©_ß”ö#ôªÅèž3®Ì–:>¶ªRg°*Í/¥¹6™-u±öÃTmÆøõÁhI›l+AdÛÚÓ'÷– »m #Ö>Ùx·É€“ ˆÌÄT¥Ç?ç£ÕòŸÅ®‹Ó÷w]5^äÊŠU‡.êŽÔ}No0âĹ‹pØFqþx[˜,\¾· š["ÊrÞ´GÈ"чËãŸóÅl£šhBRò„•íóÂ64È¿TGk+Al7¶µ§Oê-°¿ëƇq¨í(šK~öû¼X]YÁïoý/<Û³¥>,‡Ý6†žËð¸]8ÔvzC9®œ} G^ü.Ì–º°2''pÞ´ÃTeæË×i·ñõš-õìMÓçUì™$"½hiï@gk3˜RÖp1[ê¦P¶Q” <ùâôÑ++Vb„‡®‹# q¡[Ú;à÷yqéôIÞ3&™Hê÷žËü÷¶¡Á˜Q’ÄmŒ•?rÑ“Ê F ôv‡b­­±ÝØÖFŸç„vÛj›0ÐÓ S•9ìsCóa´´wÀaE¥+KK8qî"CˆÞPŽS¯öàüñ6j;†ÚÆ&~BX¦ÙR³¥–P¸2ñ÷œQg¶ÔáPëQt¶6ãȋ߅Ã6JAd0‡Z†yì+ªkxãÊTmæ_ø¤ÒÇšf”*+Úuµè F ôtc ·L©b”#ÁÇÒØ„óÇÛàq»pâÜEÕ2l&¿\ô¤ÚÆ&¼ðlNœ»ˆÉPm[ "“ÉŠˆý]ø}×þ-Ž[ìÌ}niïàwqÕXêá°¢¥½ç·áÔ«=|y\š–ö¼ðlo¤qù…ej=Šak?z»q¦× Û%['Wס¶cüg‚ Eä "Ó¡ˆ10[êÀ”jᜰ£¸Tñ`ßúì¶1üâ푨eÙmcèlmŽx+—9ÐÛ ÛõAÔl‚>4#®S 'C¬XÀAAJÉ O_¢zæ‚È<ÈÓGD¦§/«Öô% ½Á„¦‹ ‚ ‚ 22úâ@o0ÒzAY޾0h§Ÿð®§ZdB%j4SµzƒãCì!ËÜ™„ÃÖ>˜ªÌü¹‡[}Ba.;Ŷ$z,qe*\€µc0ÙÇ÷yñüôóiµ£ÕÅ5&Ôô¯-ý—‹dÕF‚ ˆ­D.$Y¼0¥Zų Ü¡îjòdlè´ |x9»m “7í¼Áçq»`äC¶é åèïºt99OÏòzpSkF=–åãI ]Ç“xZÚ;‚çxÂ22 ÿœ?z‹ÕeŽœ>öùPÛ1؆yÏ])™FK®Fƒ–ƒð¯±·8ñ~•Xã©ÆR/9–NuýΛþH2áX—Á¥2ƒzC9µ%ZPd'ñx`õÁŽ çMGØõŠj6Ô_"ÆÄV÷ïV“yA¤1â`G^<ƒ^öðß#/ž£Õ¡¡¹…7ö8˜RN½Ú»m GNŸÙR6Ee¶ÔáL¯öÐX\NK{j›ð™Ï°…פöK–‘IpG^mèÙjnØÚ ëæå½Tzƒ1jÜß­àÁ ükAèvh·É™_©prJÆ“ÔXâ< ± 7–¸©Ð™ÝÂÇ’¸Œd#¬¾\Ï/«»k?fBž@.ßfÆD"û7§ "H…óû¼üÿ=n®œ}‰÷Âpp±f™R­lÜ\F«ã=råH^.-§ëÔ" Y7líã îœÓA{“Éò:;åç] nz½Ÿ\¨ºXãIÉXâtíۋg, ËH„c‚ÓÝPÛÄ2ÇK"û7Ñ· qNØ1bíçøš+úQrù ¥ýª~Ü: 5‹…rú}>UÓÜMêĹ‹òÈ< ØpgG[d«¤¼DÊ¿}êú'Þñ@ć8˜ßçãÜWÎvâPÛQÞ#±Ù~–£7Ñoã§w¹øµ­Í8Ôz4ÕjI8ŒV¿Ï F«ƒmh0ì·[fíÃphï@ÇúZp/QYšïJÓ MMJ…·»r¶sKÆ“ÔX*³öAo(GÙÃ8'ìi?–¸1!Ö0ˆÂfÆD¢û7ÐáÌÛxæòY6¡¿ë‚bÈ9a‡íú ¿†Hi½B9û».ð;¬” Ähâàeò4ÐíÐD=.!#,^ù7«/µýC‡‰GB‡3g>±Æµðw¶U”39aý)hÀ„æýÄŸ:³–jµmk¶bL|¶lÃ7«§˜ò'Ï>¢0lÏøÐ ÎoÃùãmª×/˜ªÙ#Ä‹aåpÞ´£"´³Lí –“S¼>'· -ípÖDm†xË‹GþÍè Pß?B9㑎˜-u(.Õ…Mu ñ¸]I÷J•39¼ õ™ØZ¶zLl‡þ%£o›RÛØ„S¯öàÔ«=0U«Ûêï÷yᜰ+ž*0U™1ZdÌíæR+'Sª‹¹–„cØÚ¦TÇ{çì›4ü6S^<òoF_€úþÊÏx ˆtå™6yïzmcSÒ×󩇯DthMß6E¸ž¡¥½Cñƒ~|hßñ¥Øè«6cÄÚK§O‚)Õ©úQ‡ŽW ¸>‡m 'Î]ÀÕôò¦ÝLyñÈ¿Y}©í._<ã ‚Ø>К>bÛ¢fM‘]К>"P¶íO:‡a‹gMyú‚ "ŠwLÄ;ãóñþÆ‚ ˆØÑ§ÿœç·¡¿ëÌ¢@ϱèí†å ò‡ÀzY˜R漊ؘƒ5–zØ®b|hPq¾þ® °lR½³³¡ù0®õtãʹNUx>®£Ûvbz,äBÅK¼åÅ+¼úâï£xÇD¼cˆoÌoæ7FAD‡¦wUrêÕ [û0>4ˆgÚ”òèq»T?¨Í–:þ\!5^Kã†7G­÷Êv}~Ÿ÷‚Ÿ¾ñãÝÅ3&Ôôo´øîéÓGl[èœ>BŽ­:§Ï9agã0·ƒÃ6ªxCJ¢ã#Ÿ?Þ†S¯ö¨Êc·áoãZÚ"ôÉŽßì÷y1ÐÛñ¡Ayñ»0[êpþx,¡åÛ4“ÉãváÊÙ—Àhu8qîbRdÇÞØc\ô…9X^bi=ÜhP{—ÛDeil‚Ç=…É G̱ä÷yáŸóE}áR:6¢é/ñ¼Åcb çrØxöy¥^RwñÈ-Œ½ DïßLˆ½Kž>äjP¨N¯D—þÿ­z#'¶Ž¥u`y=ýßž9„žქ¿ëƇq¨í(jCxl×Y/•\:¡GÂïóFä±ÛÆø0~fK=޼xç·±éç|arÙmcè¹ÌÆ •-U×ÇÝȵ~ŸΛv˜ªÌ¼¡áœ°ã…gøº¶ÿœ5k:99mCƒ±öáÈé 9F¬}8Ôv ¶P”³¥#Ö>ÅK E®Fƒ–ƒð¯# ÂD!ì;½¡Wξ„#/~x£FÜ¿â±!þ^<žœ7íðû¼(3#ÆlM ÖÛJ áxÀ q\òŠêHȘHFÿn%dô)@·x° ó:7ÛY „ÿí-¢>Ì4>ZÀ“AZ½Áˆç.b ·=—q¨í˜R-à•«Ã¸ÖÓ F«CCs LÕfôw]@K(¯÷£{pÝú5j›0ÐÓfôÉå1[êp¨õ(:[›áœ°ó›’Ž|RB¶rœzµç·Ao(çeêlm–œò2[êÂ6âè å8qî":[›“¢G½Á‡mT6Çí 3²¹ðþ9/F¬}hiïà§…“iô=X Á”?Ý ò6ùžéqOñ:8ÐÌöºs»mŒ'G^ü.jCkv¹¸áÜ¿\ÿrSÞÜØÏõ¿p<yñ»pØFùï„ã/FŸÚ1ÁéÎn ›†Þì˜Hdÿ¦2úàY ³”AO" ÿZNÍ'’‚Çí‚sÂŽ–öø}^\:}‡ÚŽñßs» ¯œ} ¦jsØŽè••eþÿâ]ÝryÖ ÔŒÞ=1ŒVË—%.[LKû70líÇùö¯ãL¯•ÏÏÕ• ¸öù}ÞOͰµ°ë FØmc¼aÏ9˜›óL{Wƒ›ž]:Y@ØÏJvÿ{Ü®¨cCn<‰ÓÈ¿T!ø,¡î„d·1^Ù¿©€Œ>H­Û 2ƒ ï:˜< Êê¿L$Ùkd6‹Þ`Ä@O7z»Á”jq ù0Ì–: ô\Fgk3o˜p áõìaæ?ž…sÂ.éI‘Ê#„«‡õäE¦±ÛÆ`omމ;OQÈ@o7ëM:ؽÁ˜z³¥/<ÛF«ÃæÃ˜ M?2ZlCƒ8qî"ÿ0/³öa84w ‰FêZp/QYšïJÓ „?;Ì–: ”jeÇ ŸFпⱫÿv,÷ÛÆPfíƒÙRsü%ñxXcÎïó`7tp'ÔÚ̘HFÿn5´‘C´¦/3)gr0åg7rp.y"³Øª5}[µ‘#]IÅÂûT·)ÑQ{¤;¦üýh9ÏRz/#£oâŸóÑjU/„çòY6áÒ铊 nWgK{GØ¡¼jäìïº {Šº#Ö>˜ªÍ¿>˜ ñ”¯ü›Õ—Úþ‰w<ñÁm²).ÕŽûØãvÁãvEœ©(u]éîL‚Ûl¼¤ˆ+-í„ÙRÿœO°/S¶|sXa.»®j«¸ÖÓÉ›vÔXêT·Å9a‡ó¦=,ŸøšÇí‚s®úè¨xêÞ,â11":Ç“»¿ bñüôóßq/×ÃÖ>Õ2©é_ÿZú¯¦éÝmÊøÐ ÎoÃùãmªÚ0U›aª6ÃyÓ¡(½ó¦UìÑj NN.˜·RØmc˜¼i£ÕÁŠâÂ¥1U™¡7”«z©Jœ§gy}sgóÙmcXE™ g~Ÿ—7Ô8ü>oØgî{½ÁÈŸuéq»`·Á?ç ;Ô}|hÛXDùöÐ}+×ïóbâg6¶ Ÿ7¦ìÂz„ò9'ìpNØù—q„ÿŠ ñxàt6yÓŽ9ïÇã@BÆD¢ú7Uä~ë[ßú–š ÞÕ æV3¯¡Ù„ÇíB~Aþó·/às_iÆÎ2½â|3nLUfüs_>÷•fņŒãÝ1˜-õèïºS•ù…ªätØÆ`¨|TQ}ÃÖ>,ø|øõ/ßy±t’ȲÂÌ­‘Ÿ£Aa®÷–ƒ›*/QòoF_ñôO¼ãa;ÃDÇÔ^]YÆÏ2ŒO~æI44Æ|¾vÛ®œ} ÿðýKØQPÀŸ]ØßuWÎvòׄŸWWV`»>êë^üð•ïbÆí‚ÞPŽ·‹˜_:}Î ;vÀ?çÃùãmxpÏ^¼ÿÖu>ÙRóÇÛðŸoÀêò2^yá~ýËŸá¾ “üÁçµ30¹ò(ÛÖ.ÿœ/f;9 •Fý54Æ'*…©ÚŒ_ÿò}Ô66Ao0‚)Õb ·G^<ë÷/¡¥½ù…ð¸]pßþ- •ò ð©Ï<k?LÕæ„,‘B—¯AéŽpOÐÒ:°¸Ì®ñ`ar_ÿ^åɶëƒ`´:44ÆÎ2=~ýËŸa ·;t¯òBo0âÒ铘¼éàÛxåìK˜qÿ¿ùàg˜úÍô†r\9û>¾7×o‚ÂB~üŒ¾~÷­ƒ?úÿÂ\[ϧýýíßÂaÃ|¾o¿~Öï_BnnÞ~ýjLÏ w¯ÒÊqù[¼|ÿÒ߃Ÿÿd?ÿÉ0>¾çÙR¿ÏË·áãîaÄÚ‡†é‰gÚŽ†‡ü‚Bôw]@K{>¾71v–é¡7U‰OˆâëFëß¹Õ ¼I´ s5(+T绣éÝmÊøÐ`Ø4¢ÒCrLJa·áÈé3ЧŒLÕfŒXûùsàÔÜ`LJù7>¥õ9lc|X¿Ï‹þ®—%C‹qëg¼+AL' ¼DÉ¿Y}©í._<ãP‡Þ`ĉs1ÐÛžË8Ôv,t½§^íÁùãmhh> ç„vÛj›0ÐÓÍ{"^¹:Œk=Ý€-}à·ðFa(J ëECóa¾¼'¿ø%ø}^>O ØÃ¹Ç¯³‘X,M˜œpÀl©‹ˆ˜"ö‚ÄZs*lס¶c1ÛyäÅQy(Àþ® |8?€òr¨íïÝþv<î)Þ Zf0ÂTm†Þ`ä½^ÉâÁ ¦üèvh·‰™_½Áˆ#§Ï`üú οŒ#/~—¿^c©‡Ã6 çM;½j?°aHx–'—¾ä(}à¾Kc¶Q<ðž×—–ÑjQQ]ÃÆížp`oE%€ÈÙ »hvÄTU#èö€v®L!Å¥lß Ûðñ=OÌ{“pLÇW߯ÿ#ǧ¿ÍŒ‰Dõoª £ob¶Ôá•«ÃIË@Õ&†ÍÖÇhûPŒ§îD”—)úÚŒœ„:¸©µ–öÞƒÁ>”´ü÷;ýÅQÛØöyaÎVÞ•³/ÁTmVO*Omh(ÀŽ÷ÚPÜçóí_Ç™^«â W÷¯¸]±Ú©nóÑÁ+¼ÎL©6,\8Å­òòɱ¼Îzz¼«ÁM­÷ã¦@šcF4*¤¶± š‡}ïq»0Zþ1>4ˆ…9/4Æ»#ÿµNaÚÉ›vÔlB×Ë€K]èðô—pêÕ>ؘ‹6–¸i[»mŒ!¶ÁvýŸà÷},™WjLÇ>&¢…×Ü̘HTÿ¦ 2ú‚ „Þ`Ä@O7z»Á”jù˜ÌvÛì­Íüg³¥¥Z8'쨱ԳŸ{.£³µYró†Ü’½Áˆ~Ûʬ}ÐÊeó0ZLÕfø}ìò…þ® ¬î`SX¹ÑÖ˜š-u° ¢³ucY¸]±Ú©”K§O²Þ¼.Ö{uêÕØmca £Õ…mžz³¹¾ÇíÂ$zùÖ‚€{!ˆÊÒv†a!€½Åñ-gJµpØF1bíSªƒÙRÇê7ôwâÜÅÐx» »ídÄçÚÆ/óºèí†Çí‚&''¢Žñ¡A<¸goDZ½ÁÈêxÎ ËÁ&8lcð¸§"â ´4'ño·É}â1q¨íX„,ܘœlñމDöoª ˆAdÉŒÈÁM³¥r÷´ßçÅ•s8Ôz4aSûâv%»±êsNØa»>¸¥ò”39aý)hÀ„æýÄŸ:³¶¥mN4œ·ZèÙKg¶bL|¶lÃ7«§˜ò'Ï>¢ˆAi·N*•øç|¨¨2't-§¸]Én§ÙRÚ¹)½›Ôãv…­LåLoH}Þ,ÉÖ±Î6 ›îlõ˜ØêþMäé#"ë Ø»D"{úb±YO‘|„ž¾X§ ‚ ‚H h#AAÄÁÒ:È[¼ÍQÓ¿KeŒ>‚ ‚ˆÏRž¥TKAl%Û-^rF}պ܌<‡ ˆø¡õOA‰%#Œ¾ífiAA$ÚÈAA‘ÑGA‘ÑGA‘ÑGA‘Ñ—aØmcèﺀk=Ýü5Û»mLqÃÖ¾T7C‘ì\ÐîXùÕÔ«Îñ¡Á-Õ\ÝÂëjÚNÔŽµòÇC:I"û`ò4Ðå+û†Ý*ÈUžN ÈLÔôoAnú÷1}„sÂŽžË¨±Ôca΋+g;°\‡mTq9¶¡ÁT7…‡)ÕBo0F\·ÛÆ0ÃP’F*­œ¾œv ôvü…±-åêæô ¦MñêDíxQ#¼¤Ó˜$²r&Õº\EåÌÆcsw¡Fq>µá²ˆô@Mÿî.L£/÷[ßúÖ·Ôdð®1·J'§‚Õ•eüü'ÃøägžDCóaüÁç°bÛÐ þáû—à¾ý[|òÓOàŸûzñÃW¾‹·‹7bÎoÃÛ¯_…·†æÃèﺀ+g;±£  ,»ßç ËhpåìKø‡ï_âÓÚmca×üs>œ?ÞCå£ÐŒaeûç|’ùÏoƒF“ƒ_ÿò=˜ªÌauŽXûᜰóé¥d½túdÔ4ÂϽÝ|ZF« Ó§ÇWþôü>/(ÓGä·C˜Fo0Jê]˜F®î_ÿòg°] k·íú`X{8/nço1bíÇ@o7j6!¿ 0B'âüÜxù¿^ù?Àhµ²ú•j#£ÕaÆíŠè¯…°] ‘•ÑúýKuˆÇd²(+ÌÁÜZË[pgx;'øÔgžP•×ãvÁyÓpÞt¨6¤‡­}0U›ùr6cˆG“/Ñ妚²Â*ôÒ,¯÷–Ùg ._ƒÒÊô¿#n=çßY¦Oµšdñ¸]`´º¸òrcV)~ŸÖï_‚Ã6öÇÝoLJ±ó!=ò #t§¶.øîó,Àäi°¼„ aãfn5oí£Â\ Ê ÕùîÈÓ—Aè Fœ8wÛ(Îo ›NÓÊq¦× »mŒV‡†æ´´wðiœv˜ªÍ8õj{ãž°ÃnCmcSÅ$óë åxåêp˜GF|­¶± fKŸç•«Ã±öËæ¯mlBEUd-í¨mlBCóaYY£¥¦ëKª<©6píã×!§w®¿Ï'[·XS•Y²ÍL©§^íÝ6†#§ÏÀl©Ã@o¤Nô†òùÃÇR9._ÛXÔ± %¿Ü‰&ãþÛÙˆ:Äcr; çW çI×Ëý¾6ëy%‘¸4áo<ÝØìì„/¿ßçE×Ë°ÛÆPc©G¥Å¥:þÞd·aò¦ŒV'©;½¡ý]6ÕÞ\-qw)F…ÁŸ.dÄáÌ g¬µ´wÀïóâÒ铼Âhµ`´:è FxÜ.\9ûÿÆþ9_XYÂϵMõˆó3Z-ÿ‡Ô5)™•¤•ªS‰¬ribåêK‰Þ•ÔKï s^ÅuËÉÏé‘)Õ*~³ŽÖ?Î {T]IÉÏ•)×_R2®¬,GÔ!“ÛaŸ´´wØx(ú}^^_· §º~¶öÃv}fKjd–pžõ#/~¦ªš°<-í8¼-L§Î›Þ8Ä¡¶£ü Ïùãm|º–öÙrk,õè¹ Û–ß9aÇ Ï6Àl©Ç‘ϤZåÛškµƒmh· zƒWÎvÂyÓS•G^<ñ`½ó\¿ON8¢¦6>­.¬,Îhòû¼|ÿsŸË F44†ßçŸÜ,…0ŸxÌÆ‚3øZÚ¿Á?ûü>/z.ãĹ‹¼¾Žœ>#«;³¥#Ö>þs<sè Æ°üvÛÿÆ&®WxM8õ),[*¿Pfî_±Ìgz­QeÕŒQÓˆ? ÓŠõ%–I*¿ð;¹4Jô«nNÎ cZœWÜ'BÈ­‘·SN¿±ä·UÜŸr2*­7‘òƳ%im4i´:„y”xJ„žgNq>5~¥^r"~¸—Y`ãe®@Kû70líÇùö¯ãL¯5â³Øs¨õhÔô€ü ‚üŒƒ|ÿGŸ`óÅãå—ºÿr¿5¾üRmTÝ åˆ‡µ à^¢²4Þ• ¦Ø[œY¾32úˆ˜è F@4í$uMM~‚ØŽè F ôt³^¼RmTÏ6çPcD ó˜-uè¹á1-{Øáí•K+'‹Ý6{ =±5؆qâÜEÞ@)³öaØÚ‡™ÐñHµ›øMsÂÏzƒ!¯z¥½ÝQÓG{Ù0[êÂÊ’Bo0¢ß6†2kÿ¢kLLJR;Îc-Þ”Áhuðû¼²ºkh> Û…q¾°L/°»ˆÓÕåkà] ¿ ;Æ'ÝуAU>Ê)Óqì@"‚Hªu¹˜^ À»’™S4ñÂKd9Ø„Þî0ï·»m ÛhTOív¡Z—«ø=ïJ^vÛw9“£ÊÓóÓ™µT7u[kÌ:'ì°]T5¦?[¦Ü76½À”?yö‘._£ú( ÌòKAqcª6Ãr° “7íü‚w9ô£¬w‡ Ò³¥.´›×+ù½Çí’]£-§ ˆ¬#[=}„4™èéL§rp›«¤Ö¿ñAž>‚ ‚ RŠÔùv[u>#±} OAYyú!Lžy ] kÀ¿ÆŽ›‚\ U8ZÔŒ7©óî„oÇ”jù3ê¸âÜš6áùz\&ñ™DlÔÄL^Zß8Ò%Y²©õôÑî]‚ "«áŒ8µ,¯oM(?`ã¼;.Lb 6¢Ø´´wàØÁ'ÑÒþ Œ_g=~Á‘*ÂH:×$"‘ѧœíöbHÓ»A‘fxÜ.\:}’ËDž­X{° “8BG°pˆ#é(‰jDddôAD+²wSª ;pXI'V&"{ 5}Ad´¦ ˆL‡vïAA’ÑGA‘ÑGA‘Б-Aú‚ ˆáq»ÐßuÿãŽÚˆÆ°µÏk·m‰L[Q®°l¹:¤®o¥<ɦ0—]L¯ôO · ×zºÃ® [ûbêŽORå%ZïÙÐÿjúWÍAÝ©"cŒ>Û%D™ "`ïS>ÔXêQf0b@ôЖ‚ §µU!´8o:p­§;£Þ‚ ü>/®õt£³µý]°á´ÎoãÎuÞt`ÄÚ‡þ® xáÙ†0ÍùãmèlmFgk3ì¶1¼ðlì¶±ˆrí¶1œ?Þ‘ß9aÇ Ï6àÊÙN\9Û‰ÎÖf\9Û©HF¿Ï ¿ÏËÿ_˜†“9ZÎ ;Ž|RÒ%ÕÖL'W£ÁGËAÜ] ‚١λ'Æl©Ãˆµ0 ÇÆ!Öxö­¦ÆR½ÁˆS¯ö¤ZD‚ ²SµG^<³¥Ž‹Cj‰ÃiI! ½ÅhµüÿÅiÄ¡º¸´Bc’ÑjÁhuÐŒhiÿŠKu8ßþõ°4Re‰Ã|I¥‰%7Mɱ]Cƒ-¯³S~ÞÕÄLý•Œèí†ÞP.ù½Üx’Óo:ôÿÊʲ¤l™@¢û7ÙdœÑW\ªƒÃ6ŠK= Fàî&‚HZÚ;¦¾„!µÄá´8Ê6ðá³µÙ´R嬨³µšKÊ5ÐÛ ÛõAÔlŠ(O\–T˜/qšXòxÜS’òlÇÐ`kAÀ½D9“ÝMB¢WÕ66áZOwسNfíPëQÉ1"§ßtèÿ²‡ Ù÷[ѿɆ°‘udR6焽ݰlÂ@o7ÎôZeÓÚmcpØFÑÒÞ‘j±³‚r&{‹7|'Sþ,Ѐ Íû‰?ÿtf-Õ"*ùlÙÆÉv±úwz!€)òì£x°Ñ9}AiŒ©Ú ËÁ&LÞ´ãÈé3QÓê F 4 B$Ÿr&'êg"³ÙýKFADšSÛØ¤hí“Þ`Ü’c_‚Ødž™JAA¨&c<}Lžy MÔµà_c×êäª;%›[ã£6Ÿ5ˆµ §ª³{¸|jÚ,·Imz¹6ÊÉ$—~i}cG“9]¨M/ìO1R§ÜGK¯DGy (Oƒµ ûV$.+Qý¢VÏ©ê—xô,} Qc— Ò¥u£Û5ý»”Qö2Æè+gr‡±ñ®ù‡» 5a mcÁ-´U›o»ï {X£š…•\>5m–[ ¬6½\åd’KÏ.^L/§ µé…ý)Fmz%:bvh°·(Ó‹ì-ʉ(+Qý¢VÏ©ê—xô,÷HÔØ%ˆtÀ³€g)ÕR[Év‹—LÓ»€œ÷EïJÿSŠœÇFNµåÇSÇVê(Þ<É–3•ê9ž~TÓ‡ñŒÃDô A!MÆxú²•Ûsäåk *K•ÙèÜ¡‘þµ tù±½ŽÓ ¬»‹Ê긻´ñ`Vê}õ,pw1ˆÇvÆ–Gm›Õ¦_^½D^PÎÄw¤zïJKë¬ÇGÉTßò:ëAËÕ(7ª¦Š×`än>fb¼e¨‘S­ÔêYm?ª'jÇ! ~¬AÊ¡éÝ4g- >ÆßGËl0h5LùŠÎ-á] *Nÿ¨6—¯C—¯‰idpÓ¦J=>¿š]‡.Ÿ ‰“·eª•S­ÔêYm?re«'jÆa4ÿœ 21r•Ôåq»`Äddc®jÏ4šŒRõ+ùNŠakŸ¬ü>/z»ÑÒÞakfÜ.^¯Î ;l×y]û}Þ°ÏzƒãCƒ`´º¨W3yñÝ s³TD ñX*3ã+JP¢§lDMÿªÙè–*2ÿ.K‘&xÜ.ø}>ÔXêQf0b §[2O×¼‰i· Û(ÿÙnÃäM{ ¾X2Šë”jUzC9ú».D\÷û¼èïzvÛ®œíSªC™Áˆ+g_ôw]@™Áˆ2ƒý]">€Ã6†þ® ðû¼ ÑK²`Jµ¨±ÔÃïó¡¸TS•yKëËT=%ΓÇ~i§OKK+X^‘>7lnnó+AääkàÕ(÷èpù¤¸±¨A®„Yž¨ô·4ø½„¨ 2‡Ë¥_–9ÔwIÌÍi6~=Ê!À¶eué•è('_ßjæ–ð­æ`~n]uJÒ«Õsªú%=K¥GGó[tSõir1·Hxù‹‹+X] bqqËKkX] b~n`ýþ%¼ÿÖø7‡¿ŽŸüø°07‡÷ÿ×[¸÷¡›¿þùCÿ?³áG¯|ÿúÐWñ¿þ_{á%<òh~2`Åûÿë Tÿa-šÿÓ ,.®`e%À—ÿÆk}øÚÿûE¼ûÖ›°~ÿ"æ|¨þÃÏâk/¼Qÿçý;IùådäÒ ¿hï'°²€gúN„l?ÿ9F_¿Š` ÿœ|²÷>tcæÃßã¿þÕ÷`ý~~÷›xäÑýøÚ /¢¢ú3xãµ>Lþú7xèa`aÎë÷»ÐüŸÚÑýSøí ¦§\X˜÷áó_ùw˜Ÿ[ÀÚº–Æÿ'`ìŸÿ @øçù¹ì{ü)èÚ F÷¯+©ñ…ßJ¿'øÖsÀ¬)÷ÌÏ©8wR³ÕŸÁÏßþ öT|eŸ¨Ä»o½‰½ò]É1QõD-n¾?ŽæÿtÿgÇŸàßüû¯ãíÔ?€ˆ>S¢§t%?ò v$¥®\-á_ ªžÍHÈ豸°„Å…eäÜ_Ãb~KK«XZ^ÅÒÒJÔ|Sþæ×€’<`UÅ4—HJò€ rðÑräàwþô^£A¨'À°ý›èßÞ÷}üîö4¼¾Â)'šþÃ8ó{Üù?çgØ÷ø¿Æµö¡ékG09aG^a~þÎ5þú'>eÁ÷}ì{ü_c£Ç¾Çÿ5 K÷âîÊ«k‘_²#Ö~|æ‹¿Ç÷}|<» ço~pMÞÅÝ;>ÜqßÇæÏà³tsþ/P÷›ßcò¦Ï.ãÿõÍïáoÎu⟲DÈ.Ns ùyLNØñ‰OYø6pß¿óÏX ããÙeYÙææ((,Æ¿=ÚŽ¿9׉òÏñÓ@ÿÿèÆâÂ6}•×òòç>Û[?Eõµ€¿9× SU úÿG7¦]÷°¼¸ˆÿüí—PÈ”ðmXXÌáó/,²÷]ágço~]{«°koîÞñw|²ãQø4ô¯¿',jð‘Š5}N¯ú{Édz˸ã¾ÂÒßócCjL<°çQ~<,,æàŽû>VÒúÿbóáˆ>S¢§t§ `v„ ÀÜÜä䣤´8¡áƒvÝôŽÍoLYmô­­ð±×yÿüþ%|ìõã·¡åZ¡«*~ÌAðpy¾Ø|oZû0{σ=˜°´è翯þà ƒKïy0ø£+x¸¼³÷f$Ó3៙<ð>"\þXi„²./Ì+’­¨¸˜—­)á¯xöñó·ßÄÿ}ñ/qäôwx9‹˜6˜ªjÂÊÚ‘_V,-°2-ùçññ=¯îóvFJïÜ¿\Ûåô¯d+ö/Sùbóaüí?ê'jQQeFañ>œšD…`m–Üu)8£fçCe’ß3XòÏK~WQeÆ;ÿ<€¿9׉§ÿèîüΉ§œøƒÏ7Ȧ‰V†Ø ‹%›˜ŸþËœ7¨þC oðÍÞ›ÁgFê›>œšDÕZð·ÿý<à³!ùLU5ø/ °˜Ág>×€å…ù°ÏÛ¡Þ+ªÌ˜x߆¿9×ñ+ïvg}]!œ¶.)-F‰¶%¥Å(*.TTÎZ=U¡²4Þ• ª#¸ÒM0¨ðä×Sþ¦’'®ÖåÆ{·œÉÁ®œ5ÜñxñÑý¹˜Ó´7Bž¾Ý…U[ñ…Ó»jv9F›ÞÝ]¨ 3@ˆä±´„o5}afý ·s«AÜߢ5}lÑôn*™¼iÇä„=ÌXÊîüΉ›?O™ìÄ9½«ö9q#Žé]bë)(Øí%ØõÐSÁŸ-ÛSþ,ÐðÇûˆ?³ñË“×Ǻ|ª#e€mìé[_À;;‡ùßùP´¶œjqâ·̈-àÛ‘õ ëeúh™nÒ©‚F¾:*ªÌøðw“XòÏGLƒ¦;³÷<¼÷Ž ’Íòò*fîÎbæî,JJ‹¡ÛY ÝÎÒˆ)`±C'Ï…•#c<}JYY^ÅÌÝûðÎÎa}}óræåæ ˜)Dnn ò°ëŠºƒ7Ãî" Š’áéÛFO×D4%7‡Ý™zo9#“ƒÅ¸¼A Ô4Ñ»Ä천›¾¢$÷–˜§Ã #Ø:$¸äWQ’+q8³tókÀïæÙ™¤ÝE9xH…§ÏñqšÎTt)m˜Ÿ_äÿ¿¸¸Ìÿ»–€gnnv=¤Ãÿ£êAæ+ÊCž¾$Â{÷ïÅÆS\€R-ƒ‚‚(..DqqAJÛ´úÛR‚4‘—ÒäIU’§ÁC…¬,±£P÷|‚~Ä)VlDõÙoÒCÀ| TÙ½V5¥%9XÎB2úÒD*Q)uf62)”29(E‘S—f5ˆ {O(-Ô TÅ’u£/!}“&œD1JKŠDUoT¾¸¸‚ÅÅeþoaqEUÙëëÌÜÅûK^ìÙý ïRlü¥3oômÆØãŒ¼ÒÒbhµÅ©nJZ&·Œ*“š° 4¸enˆÅu@<äÆÅ’à,Ë•6ï-ÞN_QT”¢¢|¥üµùù%ÌÏ/`~~Q±è_n¹?Æ-÷ÇÐë@¹±LvçïRš;r 7úî¸gpÿžWÕ4®V[Œ;KQZZŒ‚$æ/…¹šˆ¸«A~™›La®Fr·¯ÜºÀ9äKŒÝ¥5éC€ós¥Ó¯€‰C}ó4@¡Ä[«?Ž\ P$‘~= Á¢Ì¡Á%;¤ –K_$££yk' s¥Ïg’+C.ýâZRbîÑóâZ©ô9@¾„‡eX•øiDêYç_ $FÏ%2XÉéH¶_hú•HwEñR•Žºû+[·Ù(#IsU””¢¤„]šµ²²¯×ùùEÌÍËÏ© Ïiýó>~6õ1ÊöìBÙî]©nN\d¤Ñ7?·€é©»ìy< ((Ø;KQö.i§v‹©(ÉE‰DÕ“óòëŠöi$§³Ò¯{ 5`$ÎrëHvåILMÈÉ$—þÞRw$~3…yl»¥ÓG–_”T0‘éýkA8ç¥ÛP!±v~ ˜”I¿»(Gò»Šµ6{Š4’F\réÕêyr~~‰!¿«@#Û/wUèùÞ²t¿°zŽL?¿”Õ3Ûï‘eÉéhwaŽäïÃ>›¯Î)¦v b3äç硬L‡²2VVÖpÿ¾{ýXY‰¾ˆ{}=€;î{ðÎÎa¡ %¥™5K˜QF«ìÅS¹Zm1zèìÜɹw3óη²D¾Š BO ”(ÅÒzPññ0« VÖÕ•°^!¥SVAìÈQ^öj€õx©a%D¾Š:Q†Ú¾\]b‡ÊÍÊP¬Ì{ÃP«Ô¡ÄEIPš~6ôÐ/Qè4ç $Oƒ€ÂÓ„ Åì.Ô@Í‹–RÏS"Ë0X—ÔE€IDATç`OQŽb½í éa]aÇÏ®¨Ó3·S©<œ‘Ïë9†\{ ÙµŒ1O¬•“›å¨ëG‚ ˆ­ ¤¤0düí‰iü-.,ã·7§0s÷~ªÅŽIZOﮯàžºïìFh!ÝCzüÁçð·ÿý<tEÅÅø7‡ÿ7¬øîàC(,.AÃ`Ös‹~6.ãÛ¯_Ň“·ðpÅ>|îËÿpûÆ€Eÿx÷mÇØ©ßá­«Üÿöšöag™>ôùq¼ýú?âÃßÝFåþǰ´0ÖŽ¿À‡“·Âò=÷'/ (I'Þ¯*JÁ Ü»¢ ^¬¨œ»‹ÅgïjPUz#“‹ÝE9(ÊÕ(ZèY ·ŒØ¹,Ç­¹ÖƒÀÌRz?Ý~ëcå¼·¤Ìª™Y»Tlô©Õ³o%ˆ»KUk Õ¤÷­Q¢¢ìõ;%œ,Ò{´éŒÃön;>À¬‡}¦Üv|€¡×~ˆ·|Uy!q ÀÙ™»˜¹Ë;-âevæ.nÝøÕ–êˆ“õÖ&eUÂfÖóÉËïÁmŽví*ŧ>e„¾L'™þç¡ÙGnº7Á!¶‚´4ú–pëæï°¸¾`jâ}>¾çÁîrò v ºúTþ+#rórñáäm|d0ô÷?ä=}{M•€‡+*£Ö[¹ÿ1Üvü”íæ¯ ½ö#ì|æ®%ËÓg`4ØS¤Qþð|¨PÙCŸcwQÿ§„½ÅêÒ ëQÔæâì.ÌÁn…ž»}¥9ØS¨Á…év゚ô²eÅ(Cp/úWZvzwOõíV¸—׳²ò¹´JÓ?T Q5n(fûD鲂H4JMç ÖÈ[ôÏcÚy oÿØŠÊýcia?¸¼%²Ý¾ñÞë 3‚gR|ÆÎýœŽ_n™ânÝøï½õ ‹ì=?3…Â0=³äææ`Ïž]¨4íA~~¸gåæÏlüÿÙMé¹Î/í¦w–àüÍï#¬äÒ£ékGee: eÈÍËEãsÏžùú1à? aãW¿QwMü]kÇ_DÏ÷\äµd@^ b[B[%¤°tÀ´ÿq?ù…?ÂÐßÿÛÿùöpíÿÏ|ý?ã×~ˆ%ÿ<ÖVW‘·c*÷?Î_«Üÿ8žùú1ô^ø/ϱoþe˜ÌC¯ýŽwßAý—ŸÅNýLOÞÆùö¯£ñ«_Ó_ü®ýà2¦w{©äŸ§o¼öCÜàò”íÆ@Ïej;†Ñׯâ¹?yðÚ÷^Ásÿû xï­!Üx÷TÖ<†ÛŽ_aÉ?õÕ5äîÈ×¾ú<ÞøûÂa{Ÿûʳxò _Â-Þpöc_Íã€éÉ[Ø[±Ï´ãå^ôχÊCeÍãøÒWŸÇ­àÚ.㙯ÃíÀaÃç¾ò,žøÂ—ø|·oüŠ×·4ËñîFºÞ ßAS‚Ù™»8úÍ¿Äí¿ÂmÇh|îkè½ð|î+Íüò.®œÛŽ_²:üʳøƒÏ„Û}ÿã;€%Á86v÷šýŠ’¶U)iåé“3ø8òòrðÈ#»QþÈäæE‰7—†÷ÅÅ5ö ñßZ°w˜Y bf1ˆ{Ü_”)Lï*po)ñ'Çü;Õ(þ“[ï&—^nïJ@]úåuv‡èÆ_÷–ƒø8Êá§÷–ƒ˜þ-±S¢ò:eÓˆÿ„¬ŵ%û%FáýÄÌR âoY¥žWÖåÒÕõK„žÙ¿h»±¥Ò{W£÷‹Ô_4‰ÇmºO×g¤Â-¡Æò4>÷•gQXR‚úÝøã?ùSܾñzÿêÛ¸íŸÎܩ߃ÿrá{¸a{gãó_±Ÿ¹)ÛÿòWßÃûo êªCåþÇñ¥çžG¥Ÿüôüwûö?2X>Àôämì,ÛcßüK,‰f¢¸©ÜÿòW¯âý·Ø²w–íÆ©®„MaîÛÿžø"k8MOÞÂí¿Âþ§žæ7<îêiì«yûŸzŽwßãÝw°ÿ©§QÄ”àÉ/4¢ñ¹¯á¶ãWh|îkØoy~úCõ³mû¯õjØ&ÈÊšÇq웉[!UÖ<Ž'¾Ð&ûFÙÏ‡é¶Æò4ŠŠÜv|€KäÔzÍSu¨Üÿ»>ÿƨyŠM7=y{+öáPÛ1ÜWpGÍSO£°ˆÁ­¿BÍSOcôÇW‘››ƒ¼õyüaíâßÿ—S˜½7‘]¦öû´òø¥§O‰Á÷è£F3éc1«á®Âu\BfUî6Pœ>ô ð¯á_Uþ\˜_ ?{-+ë=ìWŠÕ€8}ì¼w¯£Åõ iB*â„ê~Qxt×/ÊÓKGi‘«u% ^o[~Vá±.‘nÌzîbzò6Ÿ{Kóóø»ïý5>÷•f~½Ÿðx/n9· Iü™/SôYŠ _f v†<Ž\y‹"¯S´²¹5ëÏ} ï¿9„Þ ßÁ±oý%¿< `=!5O=Í.sZ˜Ç3mÇ0;s×z.ãáŠÊ˜²‹;+bJ°S¯GãW¿†÷ÞBïËgpô›ÉO ߟ¹‹k?øŸØkÚ‘WØÎKlB/\ÍSuügN_bÝHµaiQXÆÓüµ0xô_+³~y}=—óCì«z$-6w¤^l(EÎàcŠ 2Úà#âa¸(¶A"[ˆ÷çºS¿Î û[†¿ûÞ_ã‰/þ*kGS‚îoý †Å-Ǹü­?ã½i·àò·ÙÏ•ûÇ´ó.ûÏð¹/?YOÙnÜr|€_ÿò}I9ö…àcVî,MØVÐsa{Bý*é†H)Û騖“‰ëù„ìÚU*¹¶oyy‹ K[^RbïÞqÏ`æîlÄõGÙ‡ÊØ|+èPæèdÄ&Žô”*“š@ñv•W›9±w)ÇVAçóe¦™nôÀÌÌÇøðN¤MT¶{§ª)Þ´½+ç¶Ü™ˆ“¨Éà#ˆÌ€~š*!…Äv$•S¼[nôÉMíîÚYº¹sùeÐsƒ AP7ÛœíàåØsûŠ‹ò#®//¯bEÂ^J$[nôÉÅØ-ÕouÕ„éù“IO©2© Û@ƒ[é†H)4µKH ç퓳™Å–}rV«–Œ>‚ÈèaA¤4‰TS"weyeKëÝòsú¤v£äåæ ¿ _U9LJvh¥_ br~°§(*·mí³kùbß"&ç˜_ ¢d‡%Êëãòɵ™‘h³ããuuég¥Óï)ÒHêFN&¹ô÷–¸³™¾dPQ"šÂ÷–åÒkPÁD–ï_œóÒm0?¹D`~ |ÿGè¨$%y‘:² tZ˜«n‡ÞÕ t;4¸»PVƬ|Rý29€_BÏ»eûe~‰w(Éô1õ©76½ô&-ó‘·ŠùÕ &ýÊû%ºŽrQ²Cyúímà ˆíLQQäõÅ…å-­7 kú"PÌnuµD:’!¦< P”·ñof³UJÏŒÎÌ ) ‚ˆÅvYÏ'¤TÂÛ—ÑÓ»r“ѧ†Õ€ºÁî_ òB¢•²´®¼ŽÕ€tù±X”l‡t«*#Ò¬ÄÁfE¥^Qƪ =Ç“–Ö”åY 1¿Æþ)eQ…<ó«JIDŸD4訖Ìc;QT$=㹕›9RâÇ((رùB’FjGúôB¹`=ÄÞb…ÓÛ¡‡øâ:$§ÅÜ[ `=ܱ·8ö{Àýå ()f—¸¿Ä¾ÒØ;¶Ý AäåkÀ  Íî… rs€u…éWAÌ,¹`OQÌäQʆÊP¦ƒé…€ /cëyÚµ+ˆ½Œ²÷³Ù•î/)Óóý•~”š®so9€µ ÛÿJô<2—Ö‚(Ù[þ~TVþö…ž®‘ͬ¬¬"‹ì¤¤…a’YF_jÉ M1æªxî.ÊA®F™°kฺ”Àyc”¦Ÿ]fÝpJ×dŠ5(ÉÓ  ðÜpC±{ 5ÈU1šK0•¶‡coqß7ŠÒ3ìÚÁu…FÀìŠ:=¯¬«ëGn§R=ï)Ô OE.WnQŽòò‰d#DFRTX°ùBT²¥ž¾yŸ?é ÚŽäP3Ë·b=ìÈÙxšGË^”ËŠ.¿²9Ò]ùìÆ—_Ù"ûùµ òs4X\¯`*q5ää9åFÕÌRe\úèuäçh6=o÷–Š7­®³žÄ\(ßÀÄéYÉ”íÎÖ¨tù×÷žÂ< öæ„ú]‰GX ù*Œ¸\ ë±Md Éäí[±´àÇ_øvêwcÖsï¿õÿýezìÛÿiÌÎÜåȾ÷Ö¿àÉ/üfg¤Ó¾ÿÖ@èå÷‰/~ ;Ëvóifgîâý7…yvc_Íãaמøâ— "Ý“¡ëðÞ›o`oE%Š˜¼'H·3TžÝö>ÿ•g7Ò¿õv–íÆ®²Ýxï­ðô•û‡ãÝwðù/?˧}ò _Â}Qûv–íÆ“_ønÝø·o|€Ââ>Ûq=äʼá®,¯ ˆ]!EJÞ©iMŸrÖƒž8¥xW‚Цë„Ü] (~8{W‚¡ôÊê02¹Ø]˜ƒ¢\ ˜0¹¤Èž¥ |+ì¯|ª nͰ`f9½o ·|ì4ú½%eVÍÌRÞÕ`TÏ—°ÅB=+éßJw—ÈWáF¾³À…é}«A”¨({=Ìgëf]")lÕâµWÿ… ƒÊýcèµbÖsEÅìçE¿…Å ö>²³3wqûÆ|¾¶w°Ü¢ßÊý£rÿã|ÚÅùy˜j>Êvãí_ «³°˜©æÓ¡òK°·bîÏx°è÷‡å¹ï ]Ûÿi˜ö{+öñeÌÎÜÅwßÁÛ¯_EaHÞ%¾¼JÜ÷ÜÅ÷ÞÁ´ó`Ñ?¡×~„Û7>Àý™»X “¹³3w1úúUÜ µÑñîðºàË~¤Ó“·ðö­ìõ…y\빜êá‘6lÕÔ.¢5}™‰#õF„Òu|BÔQ°^>U2)\_QB¹Ô®çÚWª^ž’< J69úÙ2”˺O›^zV:íʱGÅFðPº~Ìîu|©¿çê˜vÞB!S‚'¿øGXÃèý·Þ@ãWŸGåþÇqûÆØ[±{+öáö°è÷‡~ñRÄ”`ßþÇàtü›öaoE%nÝø•ª2Þ{ó ÔùYÜx÷,-ø±¯†“·{+öá–ãTî ï¿5„½ûàxïTÖ<µÌ'¾Øˆ·_·b_È›¹!kxÙ÷gîòßé«Ï'³ËÒƒýÔ3þ@ŠíÌâ: fd¨ÙY °ÓoR;påŠYY—N¿,ãYÄ‘^«­]R^ÐÅ(žQö»ÍýÚ…S§ Š’“_nSNÏÑÒK«¸EÏRÓ¿+Q¼lRå/E™ÞV³c7šŽˆÚRÎÒ‚EÌFt…"¦$júYÏI£Oxý2=v•ía=q¶1Lÿî6ži;¦HqžE¿³3wá¼ñËPÙ»±·¢ðþ›C€Å…y¼÷æøÒsòÆ×¢7Þ}‡òruq2ï,ÛÍO?ï­Ø6õ+Å®²Ýøã?ùS¼=xoÿØŠÏ}¥9ÌP䨮S»©‚Œ¾4æ®ÂiÀôAÁˆÜOæþr0l'n,î¯Ãv|ÆbqpÎ˵!(‘>({³“*Ó«Õ©tÁ ù¨ãîbPY³+AÌ*Ð3—Bº_äó/®UëmRáú͈ô ›}w1A ùb¶ž Ke »Žãöð@™^6ý^Ó>4†<[½¾-yn…¼bÏ=ÏNÏÜåµh„åñÜE!SÂ_òÞ›oð^»e»q;Š—ð²Ýx{ðjØšBx¸¢2ÌKÇMë~é«Ïãò·ÿ … #[æý™»˜ž¼…/}õy,úçñwßûkI£H,dôD¼eÒ‘Flåp|¸Â„Þ¿b ¸½¦}xò ¤º ‡mŒ_;·×´&ÔøÜóè½ðÔ<õ´âò¸<õ_n†ãÝw0=y;$k%¾ôÜó¸ñî;xîO^à=“ï½ùFØF!æ§žÆÿùgÇñÇò§˜þÝ-þú Û;øPPn¥@æú/?¶yCÌ®²Ý}ý*FCë Ÿl.!¶M0¨ð\ŒSþ¦”½•ßqÏ`æîlÄõ'žü”jAS†Mù£­Ã7 =}©%=¥صzjpo)ˆ‡ 5˜”óV¦¸ ÁM|›¦´jSIf–ƒ‰ÿím©Ô‰É’­Ð¡Ì™)ƶœÞ 5i~~·'ïD|mzô()-ŽYŒ._ƒjº=äéKcäbéfAÅÓnÍ[IžF6Žl\ÍÞJ¶¼Âä¶hf)˜ðißmEzÿ„bÓlKƒ/ÅÑ—ÆL*<7/ òò%ûÇ2kÙRþöÿ·i"dLÔ%“†­'²òòiLÆ}¾Õ âø°Ë[i~-ıxŸÍÇþ?j­¡/¹©ËëÀÌ¢ò_Êr”õñÛÂÓ—^>€íÿ{KAUSõ)meR*K…§/ýÇ ‘þÐ("҆ƌ1úî¯%”[{ó«ñ­Û‰7ßj ÚݹyÈÓ—¸5}küI®é#Oßf$"P©0ÒoZá°áÁÝ{`·ñ×·øì¹Ù™»¸?ãÁ¾ým¾0,úçcK#ŒÀ±³l7jž|Z2°¬Eÿ<ï½ÃGð`#—<j«'ìs¤.¢‹÷Þzûö;Ëô|Ù´o¾½ìÃ^SìÔéE¹ÜNd„ÁGl-ÙÝëÙÝz"L;oáÃßÝÆÂü|XT­æþŒNÇ/“ÚÖ[7>ÀÛƒWc¦›D똹+™G\güݺñÞë <üȆQUXÌD#®ï¶#¾¯gglÚÔonâSŸyðÆk?Ä€ íkß{£¯_E^~>F_ÿG|8y~Ÿ×~ð?‘—ŸÖcvæ.f¦òG«°¶ºŠ¥?àý·ÞÀ¾ýã›ÿñ«˜™vazò6Ê­Bé»°‡:¾~Ÿ®ûvê7tâúíÿ7Þ}ÐhðÚ÷^ÁÛ¯_ÅAݳ38ÞÃøÐë(dJ 71ôÚp­ç2ô†rŒþøQ¢Û‰¹gñæ?¾†O}æ ¾ìÑ×­xò‹×on¢rÿcxäÑjŒ¾þ¨Üÿvä燵kôu+>]÷EÌÎx ßk ;”;VVÖ0ûñ|Äõj…b+ÌÕ Le®Œ™Þ$³};ós$cÛÞ_ bU&²G5òºÜ´ïî" Š$¿Ë¼«@ÄšÁ;‹AÉ »ò5ÐåG¦ÿXæ0á¢\öèéô‰ô>½°´Åµ ì¡Ê%œ‚‚‚ôò‡0ï.ÌA‘Ĩ—=–E…žåÊKg1€%‰5;eô,—~W¾Z‰ô¾• îËèY*ôž\z¨`"âR ˆ;‹ÒSßý"Ö‘ô"ÖÝE2c]E¿d.™u/#¹?s…%¬—ê¶ã—˜õÜ óôí«aÿ?빋ÆçžÇÛ?¶¢°˜ û,ö rS¶÷g×ô,η­Û7>€Ûù[ì·<š'åÏ ¼åø÷=wPÄ” ñ¹ç1+»°çr!ꄺÇ{á‘?„Tîõ_~ÙþuüÝmTÖ<ñYŠÅ?–üóøpòo1 ‹™°:ggîâÚ.coE%–üóX yÕöÀäE?[Îôïnñ>ŠÂÆqžF6­?,-—FÈsÿû x{ð*z_>ƒÖotJ®×«±<­ClôE´×?Ñׯ♶cxï­7àx÷Ùè¥,*iGµÓn+*ÊÞLžˆ2TÆŒ]Ýâô€ò¾\ 1¿”ŒÃ+Ç¢Šhló«JÙLŸ-D¤‚ú=1ÓTîEL ¦·PÈ0Ÿ7ØÅûö?†B¦Ó“·ù4Ó“·ÑûòìCܦŽB¦ûö?†éÉÛ¸üí?gË©y … ƒ'oÇœŽÜWóxÔ´EÅ nØÞÁ?õý·¿ÂÞŠJ¶“·bÆÚÝûH%n;>@O(ô\Q1‡íLO²>Þ¼Š'¾ÀšQO|¡Î¿â£ˆ(avæ.þ¯—¿ƒËÓ¨Üÿfgî¢ûÛŽËÓzíGhüêó¡ÿÿÏsÃöŸûh|îy4>÷<öí ·oü ³3<üˆ)¬üテCmGù´O|¡Q6‚I:“19ÜxSØY¶³3w±3J|C€ç—KÃ}7=y[QÄÂÙB+gÅJIÚEAj(gMS‡Ã;ý&Áï">P£÷aœ×Q–gKù\‹55fßÀ Æ'>Óéîîy¶ÖVÚ¢ðu ïøôíÐ;0„ßùç'péÕ·.^@$ÉýǸûþ¯ðó¿p,.;£®® ¸sþä¯ÿ+îßûÁçþå¿u{w1ŸS­v×ß|'¾ôeÌýì§Çâ¸ï#Üû¥ìƒ‘ÏáÈ#âú›o`smÕž œpø![‡H멈 èñ‘=Í#~YQ\$Œ ¸/([®ódV˜\EBÐÏ¡(HÈW›·‰å¿#WªÖJBdåƒ>®å¥Ý ßZë%‘8tE-‰~çœVäL²dÛ’•Êż„š×Èʵ† .yp0jùÜžr|lú††-Ù+t:õÚÄÔïµ^‰‹ñÌ;õÈ¡#˜øìï¡”ÏãúùO?‚/œyż촺¹¶‚ñ‰OckU6•~éO¾¡:—Þûú‡°µZk­;üÈ£9tD]¦=<ñü䯄û÷>‘GE)ŸÃÓÏÿi_ÁýÉ7nœÒ.i×GJš—¨7+¬Eâ‡ó6/í”';ÇÁ˜CaykŒà5c­$!ÍKÄŸ²"ÈË­ŽÒbõeäeôu 1k% é ¹d9ûä&ãŸáå]Ñ4éΔ$ô–Ïðâu "£ðÔÂt!FGÙK©×{OYúæ~öS²²vÿcYSœMÇÓ­µŒŒÁõÿòŸTKßȸ¼%ü@“Ú‡y?ù«i<¢Ñô¯¿ùöé|÷®¿ùFK–>šK{„p‰V ©%IÁ(|G#FcÖÞ†ÂäË»4Iз'à4;­ï¡ÛÅ{$I×ÎËr&;ŽtÙUa¸Ùøé&v?áx+ÐŽ;ƒÑ¦BY„ nOã~¥ogö á g¾ª~¡lå>ñ¯ÿð…3ÏÖ|ÖbøÝ—þ¸æÿ Ú>Fëúmq¢e0]ÛÀÁ`t.ºvÝ¿{×B¾]7ösø4=ØéF©*Á⊖©8H%Äó”Ë•¦Gü~D¢á%àÍqët²ÙÑéCÁC~‡ëÐ[9­;vï2¥ÏIÚ*®½´¼ÛÁftÚŸÏÁŽ҉ݻî·ôíJ‚qÀc»Èì(…B ÂŽ'|¡°›¯/¡j“‡|(@(„ßçC(D0@(ÔƒDÂ,Ô¸mèBUP,”Õÿ@¹\©/;Æ(à÷!º£¤G£!øv>G£!ø»kk¬%AÀêÊv[Ï °²Ó]'¢\®`s3c[}^¹;8°¿i67Ó(ó”NØ{ÊA=0¼¯Ó-î<¦ôyåöà ™LåreÇBÇCDd2…Ö+¦¤ÌWMol¡``GÁ#‘ŒªÊG7Qæ+(J(Ê(—+;ŸËm;UÕ—€L¶v~„‚$ò¸$Qû¬ƒ{èÒ\]ÙÆÊêVëQHD=£ôm§sXYÝît3ÚJÀï3Wú4”2Y päÑÈò¢ºQï‘ù ÙFYÂÊNÌOÆ|Dä _>Þ‰Ò0æ°Ÿ0⼟&!¥í v”¾Cq?±Ÿt®"™Æoµ“C1?Uˆ¯Y}]—ÝÝ­ô¹LXàÁƒMlmeÛª4´‚¬æä$ÒËòͲ·/h4„¾¾Äžµ4­¬l¢P(#›-ØfQu‚2_Ey#lÈ–šh$„Þ¾8úz_v é¶Ÿ“/ó ¸è^(ºx~;E$JÓ-ø7`u+‰D¤ÓMè*Ø]Þåd³Ï(|FTëëòCtaa}½q$’Qô÷§:Ý4ÛKËn†% Å2 Å2–—7ܱ6õöµ'‘Ø­ ml¤;¢´{iI°PôîýÈ*‘ˆ‰Ò§™€Å.”‹{d3ÚžõçsLés9…|©õJ\ÄÖ¶l\y°‰¾¾††÷¹ßú×ä^äe¥\K&[@&[@h9€¡¡}ØßïåF;Y]iï²®)î‘ùNC(ØüQÉóC;޽П\ÊðÄ1½€òÚ²åU,ç6XÜÂÁ±!ô¹É¯¬É,¦ydöð8­|¼‰WóÞµÆjñP|>3x¾‚íí|g:²C¡Pr½¥/—-vº mÇtiW7ùr›<?ü~$xçùžêx@Îî5ÜkécxÒêÕ*UAÄüü}Ìß½¡ê‚f¡‹²)ËøÇ\Ü3þ‹zÜàË'îqèÊ¥ÝPsUNOmÆq Yù ²s ä<:ÜîTúöHŽVé–å]#¶¶s˜››w½’ÑMcTDüã?.bc]˜w\š‚ `{Ûz.ín‚ï¢ù®@¢˜°¥]kxmiW€µ’„ሜ»}­äC³ƒ¸Séc@G/»‰ª âÎ5ä‹Ù«þ|XX\­Uü<ÎÆFÆ,ÃP(.{pd»py7 6-ãö—S·âúÈ :ÖJúvôÔxAаÐkqį¿ù†á÷[k«(æ»çm¼Ü…Ê„ «XXXmÿ‰ ®ål,í±¼¼ÞÑ·Ù ¿T¸‰n½'ƒJŸn bç_¼ˆ×,}Ã#Ÿþ³ÿ·ockm¥ÓÍàB¥ï'ý#Ãïþ·oãþÇóøÉ_ÿWÜ}ÿWn¦ãhóæ2ä¾Qüšà Q§úýчKjÞ`¯²±áž\©nà+Ý©ô‘dã`Ë»Öð¢OŸÞÿÙO±¹æŽç—ûvï6ñç»;÷ ” 9ô áú›o opHýmkuÅ|#ãGpâ_ÿq§{Òl¹ e™wll°ÓMQéÆå]…ª bqq‡ètS,Óé» qÙªQ7îÜ%YÚºsÙ»U‚Áø>À öìÆe×®×Yúš12~‡ù4~þ·o#‹£˜—oÚ‡ù4ú‡ðôóÚé&ÚB¹Y.Î.Åm¿nعۈ­í|Û7AØu?Íf ®³®ñewXèF«v$nZ¦7·ØAˆ`W4Ã~:né»ôê¿oøÝÈøá«]8ÇÝ÷‰Ã|s?û)?ò(î|·ÓݰnõŸ!¡-?Í‚Yce–—×ÑÛë¢¸Š„¸qÇ.ÏW uü¶lÚ¶nÃ0°‹èî EMÀê¢,äÉ•ã¢&*Íq¼¦èjI$ާÝs°ÅKÈW1I‘ôe €?'Ôôe¥(bð¶Ú®w•y›þþo߯û?û©úùþ½»xûÍÿˆ›±Ýûä‰ýe$ûÛ¿JÒñ»Ëçþåk>ßû%>÷‡»ß…£1P¿Ã<ªþ¦ü{⳿WóÙëK»S(š±¾žFÀïÃÈhÇÚPf¹6e¾Š öï÷N®Þr¹Â6pPÒK˜‰xó`ÙÚôk‚d=~›ÕãŠùòb­òh'$}éåui‹‚¸,<-õî\ 8òȧÑ70¬~õö›ÿ“SÇqà“‡Õïúщ¿WúO|z÷ÃŽ?òéÚ/º ¶‰ƒŒ+[H$£H¤Hr‚nL‡ÁìÆeo;ˆÇ›ûK2ì§ã–>F=í^ÚM&[Ê ù’k¸«‚ˆ……Œ¶Ñ7‚P³pòAðû† ðûÕï#Ñü~?ørE}ØT«x¾ÚñM%ÙlÁ¾}ÛÛ9ø\ºcЭ.Ý’„$T P»¼Ë #dªG§päwwßÖ>yûB>„í’eØÚqVˆ÷pˆ̽\õÏ÷•âîq1ŠlÊ›¼„Š(¡ÇÇa_þ¸šöïìÜí rôyÅ$õ Iùáá}H$¢ø}H… e³ÉKà ü*|•2BÅB…B™Œ¼s:_• }8‚>¹MzhËó¢ìtlÄP˜JyKyôõ&4åê}AŸNFRŒzü’ $A?°UÖÏEYÎK"Dx·½´ã²ÅK†>5“ÀÁDý¸”%ðÊ\IìúiçøÖVÙlëëiÛÆE•s“qÙÞÎáàAysÍPÄøbU®¯:…|Æs·h¿r¶º²…a›V–FìÇòý ÛÚæÖü»ÝhÕ&‰!—ËÕ¾hù9 âoz˜JQØÝ\§xkýñ"~PmäP|ƒ>^s¦}¥ð9lÖ—x,ˆxÜh^€z_‹ø9&éÄödÈø9bù¨óSäM}î5楯Ο¯–T§N’fä*¶v^¾âýaí,j¥|ae ‡âø}ÈUwÇ_O*¢ËíÈh·Ã!èáP%¤z¸:¥/Õëðum¥—|ÕXé;8¨I3.åãý;oDýÃI`8 áðf?ÞÄ/?®WHhÇE+çFãRDŠeD#! „ë_1qaIõÀðú^±Ùå%½“ƒ1÷´îÙ %´‘"T×ùóï’Öí„$E˜~i7âÆbäsk!/ªÊÍqeI½ß †}†÷#òUàãµ}AÎô>`Äûiò°f}êà@\ÖŽ×K"å¾ E|TÏù{9çw} …}ˆS¼$ÎnÕ·iäÐaò Æ=JC¥¬‹ÕUéžQyÍáÚ›A4fîCQ$„ _g*¢b ôa ?.‘€_ëi¬¯§M—‚K&| ¦ís‘°ò`£»yyQBÐGñ §A±ÆÒ¶³YùnÙ£"ÈÖcä±ôctt?øp ‹«†.µ€ô¡Ñl ³Ù‚šZIûÆKz#ç A“yh‡.dçŽÞÞ„íÎè—.£:Õ®ÁÁ^ŒØßRmÓ‘ N ö`p°WýpŠ“ßJ9ÑûõPoó›ãÊÊ–#]K&¢M-›ë!ËDøÍúÂüù:Sú\F&S»\p¿(ÁÏÉfù„–G%öRIÓÄ™ŠF/´õ’A6E #o››ËWlÇj 12Úýý),/­cKçÔ¿ÍKØâ%ŒÜiû¬”ßZØÆÐð>(Ö;3xQÂZ ðs†õõ>AÒ¹²zÞÁ0Ù¸ô+ÚͰœá÷‚(a$Jö ÙâEl–%IÈ7ÝH4„O}j~°T÷àÖZébæ}Ø(K$`‹7o¿v'£ò^ªJDJßRA‘„Ѩ5e¼<_±5óþýÉzGÿ=ˆ“;w[ͽÚi£h<E<¾»úïFÝãt æó¢úr4ÒDQ*ËŽ)}ƒ½H$êÃÓh›»&·ªè£Xãf´wìÞ•š~áÔ‰Ú×%Bô¾3~Sú †åòt~UfËÊ’©/…âaÔ¦P¨ã‡`|üüùÂßÞQ.H @V(b¢D&ÅNV¼DÙÚG¹Þˆr™'î¾ÆR»\8ó!à ÊAëǪÅï÷áSŸ­·"6G#”—‰FåµË€Ãa~#„ œâE3×iXµñ„Sø:Æ¡NnXÚËa;ìÆÉÑn ΰw(}{ šŸÑöÅ:DJE”Ëë—Í,}?‡¡ˆow“@ö} ûPlͽ¯/އC,V}×J‚T³ôܨý~ðqäOÿ²„ýakëé¦!\‚>:%Ú°¥²¥:”vš¶Mó¬à'”C®"˹(Hu¾yþ€džj¾ë ú0æP"œ\a¿¬´VÌmŒI^” TKè´sAl^Úuÿ.e»prç®Ý>‘{'Ç!Ä”ïÔÞ6wŒ¼(nÚp;LésúÀÌ‚êT9™Šdh…jtƒ])ŠÄçm^ÂJIÔù^Õ·1êÁC}¿5Å`˜CØÏùŽ­—%d*±R5Ÿ“—§7J’º¹Äb¶²›QÛN3´c´V’®HÄ؃1?†Â>DüÆ;Ö‰’š@֙ЄÕÏ`³òZÎ4Ä)Vye3hõÖºº²Ýb µhQHˆ·í”uª=­.í¶;ží-ÖáÔ8$M‚Û{Oi~HW$l–åjè"›®û—vÝ  ¤~|ZŒvdü>øýÆO`³ðfŒú—)ç}è¡Oàƒ~ƒAe¡í³ÞOpm}‘ƒ-1ñ@ãP>PâáÅäKÖFí4"¢±Æ’úñé ›78Ô‡÷äöÓÊ™ÔwQa€²¼~| ÛÛÙÖ+Ù¡·7¦º.ò˜Ùé+è¶²NY˜Hãà™ÑmJ‰SA YÌ<:R=%Äι¢8Iç-}móçóú»vÑhç®Ó(Š_ ÐçÞB¡ì¨µÄ1ËG–º‰HWl>ⱑ¶ÕªSiÿ:…S¾d$!Q»8´ßÌÀ0Fqƒ²š+¹Ó0ß),è®ú»J<%R•FꕾE (²uÓ–ÏU$Ìnï–/îÄ,™—¯ÒÅ‚Ì˯§1b¾å^®õ`¿l–ñ€¢¤ã¨øÕÔ˹ñdzPñ€"ˆ±/Áû”þm´ãb«ªÆ¥Õ×Àuû|ù~zSÎúó¹)lK6ç\–—D<Òz%]BÖÁÍ=FãÐݦs X+É«¹Š„µ’D½¢ÑiØ«–‹ÐûóÙ‰³»³Èn‰DÃC}¶cê”dw9§Þ¸Cm²ÀùÛdqu¹lÁV%ª·7ÞUòãZyZÛ¹ÛV¥Äþ|¼ƒ+lç.9k% ûvdâ=ÜN†o©È.Súº7T æ·ÕÆë$CÃûlw|7ÂÉ%^½ß¥]´êãDЧè[d}#mk}‰xýÒ®Ýò,:øòG‹S~d¿¯m/9{rÅ9å›íÜ%g8Â!¢qäÓöUñ½¥ ;Þ/½¥Ï,g«Œ9Øa²I/‹Åÿ¡ýXZZw°=2ÑJ ý)£rãÒê¤A0¤Ûð°äLúc©¢†›+ì=W¬@ÁÁ% ÚAfä«­…Dàù ¶·ó¶õ+à÷!Õç|¨–ªƒ/´8µÔÜ®œ½‚S²“]æŸÊè´ÒǨ¡¯UúDI‚ µþp…z‰}F‹Ò„¾ý),=Ø’óŒ:H6_Bßþ”I+Ì (I(‹»1™2Ù¢c² EBŽÔ­¯²*9 7£4UŠóú¸ÖÞ íôå€ýusÉ9AtÅF§–›¥ür .¸o@É!‹«Ñ8¸¤Ë ‡ðŒÒG@V_¶,9 × /6;®¶=J<`AòÖ ¥©Õªàؾ–vµñüèïOgϰ µ_N-½µ3H­SKv€{üAÀ†ÍK»í È\,–wÁF7îÜõœRbCƒR¾ÝðbÁh/Sú(CµÐìNԲŋزà‚eõ¸’ á^žþ*7ÚàãZωX¨ãñ„$݇áÖWœUú¾ˆuH¿rræ‰}Ai­/ˆŽÈ2êiÛUùªcçJDCh(mŠó&ˆ1dc#cëKT(0]’Ü«>’NîÜÝ«2ËU€Ù-ý¼#›ÈÚH5uæŠø¨ÁîyÚ( +% ±rk”;íI˜3¨S"ýœ³«?V¸×H¾ž{ñ¥o¯c´sw‹·gFŸ ݶIƬ/èØNX…ù"É&~+º.Ä{8ôï<“xXÑÈn~³ˆLÉ~YrRÀ`Œœ³å\ëô‚b~‹/hv²±n¯•¯ÑÒ®?`¿µ$›-vÜÒçäµÙm±[ÁIË|»”o…јm×%8¹%ß¹]r­]Èíp"¶ûÁåTXv:¶Û™=BËÔVg—ÝÁ˜îʵ« :ånâ• ¶è)­WâÔ»œ¥‰©Ý†G®¾½OÙàm.â7Nób ܬ¼6µ—– †»ƒ‹UcGÿªY»“OV€ŠÁZœŸ3ÈM(eQ.ŸHFñ`e«¶¼ÁÚ  ɸÏñ@ãò‚P{`ØÏÁ(sÉ.Ѫ û]Ú5.EaWÎÚ° AŸ<6úµÐbU2— Û)_+g^ܯÀ—«¨Vª†r“Ë[“3 ?DËA¼Çx×LÎ?W—cXÙ¸è±sÇ. §]kwý¼íNíÜmE–Ýh/rjç®g6Ó0l¥3J_¦^;ó!fð ¼—‘¯JuÙ8`0ìCÌ`„̲#•Ŧ»)÷9ôäi½— 7±ìqèiËËã¶^– —#‡bõõ¯•$¬”¤º%žˆ3(Ÿ¯šû­4+¯·ô GŒsî’dPn¾vŒ ,äEUQÔ*æûêä,s//*Afå×ËbݸlmgMå¼Q–ÇÅŠœ žØ]Ž„[25ÜeKÛgÚò€l úÈw-íÚÑÎFK¢QBEy3QØd,··rªOGEcÙ#Ç’„Mvj$µ± µ ª™åO/H¶°ËÄ¯i¨·ìX¶A‹&°W7q²•~_hwþJMBnmò’ºJ2dð.ö÷H€îúÉW%õ…‘&ž+/îúŠ'Cþº¤X¡ð ¯¯×ü<9M<Î}A_ýª…i·/›¼óþÃ}AU¼Üø47ÂSJßÖÚ* o`[k«èlZÞ¬ŒòÛò½»9t˜èÜÚº¶ÖVÐ70dK¿)}÷‹üœ¼”v€ðÍWå«¢$HøT8ØTé[/‰$`S”0k>»µ±ëb²6mñ6ËŽ$jë†z€lk}nTÞH¡äE9g¢Ÿ“-¤h3¦TDÙÂéç€AÂ@Çfí4‹ˆ¿\á÷‚(a$Jv×ÙâÅ9×ß9³Ù" ŲºT»E9Žeyyy‹7—Þ^Ò·c¤+U%"¥o© ÈGÂh”^ñãù Ö)s 7£±ù´8éwIB¡è`JH/d€°hÅ ú~å~@PG^PÙ¹­åpÍæ*Ø2q•عÏ'{8â—¶|u÷ºH„0 Q4›5w…"ïºÑ ’)%QUú’A®ù½BÚíÿ¦3É‘jHõ¿´Êrr¾M­à/N²«kîg?ÅOþúGøùß¾¿ÿÛëøùß¾Ýô˜ŸÿøoLÛ\[üä¯Dt~¥ünÝÍÏOJ£¼Ÿ“ýÐhŒƒa¹üˆè­Z¹ynBäwËHÛ¤ÜdŒ–·R²ˆpˆ8ˆÙÜ8áÔ>“BrëÏ®_*&Ux›µÓl£ÍHÔ‡X€ƒ@(‡­·^³¾-ë² (R¹)/Fåû÷'Ð…Æsð!T¬ŸN«†>»ƒ1ÀþýIÛëôNîܵºÙÇ£«i-áèjĤ¦'ÍxÊÒ½Cø~—^ý÷x뇉ÅpâKŒ»ïÿ ?ÿñÛGãˆÄbØZ[A1Ÿ +vŠEïsÿò‹€ù¹_JùœjÅ»þæ8ñ¥/cîg?E8Çýùp÷ý_âð#ŸF©Ã‘GÅõ7ßÀæÚ JyûœÅ›e¦P¬C¤TD¹|ˆÆÂ@£AÄÏa(âÃbžìMn_HöQ[Ì‹@¨ù:W‘ÐãçPªJÈUkËm2©ˆrŸ}ùÓ£,a?¡Å-èãê68 µöøÌ7=жÓÌ·¦"Jp€ŸP¹Š¼4Z4H_¶²²Uç˜ß”Çq© ‚$€^Ø/+­Fåv·ò¢ Z®¥ë5²µ;Ïn"J¼é ‘ˆÚn+Ëósjçî^^Úu§ò±½²ƒša;.°ô‘1rè&>û{(åó¸þ_þFÁ¾ò,Š;Ê×æÚ Æ'>­µ€/ýÉ7‰É¢»s¿Ä¾Al­ÖZëŽ<ò(FV—mÇ'>ƒŸüÕpÿÞG8òÈ£(rxúù?ÅòÇwkŽû£?ùwÇìËe[n‡Iv-,¤d*’j…" ײR‰ýÛ¶yÙáŸôa~0æÃp˜C8ÀÕí Œ6 HÈT$b‹Ï|N^žÞ0Ù„`ÇÛrÙ†XYfí4[Þ]+IHW$FU8óc(ìC$P»DR(”±ªÙ%­©HX-Ñù •O&¢†›Ò<§pw$óÐÍØØHÛ_®n7N=ðI`9wÝS›8ô÷ïÐ:×bމ[Ë Þ)<¥îÏýì§€Ã<Šû÷dE,²£|ÝŸ¿«ZøFÁõ7ßP-}ŠÏÞñƾ{Gy7ÿj|ö÷Ô﮿ùöéü¯¿ù†­–>£» ¤~|ZTŠì¡5¡Óý­ø[òr ´}7n¿‘%50ÞÅk†QÅX€n‰×¬f!uHýøôhÂ…ªˆ{ó÷ "Z9›ù.¦LbØ Ž·‚ÕyÀP©m…P0Ð1>…ªÃ¹©áÔÎ]«qáÚúhµãd65˜)ßîÃÏi^BQ ¿Ç¹+}äWFßÀ ¾pæYõóÄŽbvâK øÂWž­ù¬åÄ—¾lúþ·§ŸÿS¢ãì©`¿€7¦£‘pë•´§ë̹[­ øðÃ%GÃ$QôwØï-—-8Œ9AU> 9°¼Ë£·×Ö*‰(—+ŽíÜõ¤Y‡¨ ¢cаÇSö—ÕR=%ÄÖý;‰GÞ›¤+rX=Ù¢ù²áj‰.Ï«¾<Ÿ¤¹ 7x 9ƒ›JÑäù¹Q6._69E±*íæ-Ôt½¬yžhSX9vžF>^´å%¸Æw²(/}B‚šwWûlu\´ýM(æ›e³q1nwMù"…Bÿx÷> óËLÎ|Íä<ö©ý†åïå蔆•¢„õ²¤íù±«Û”G4§[7p_q.;^DÝ‚SK»€×Ç¡³ÚŸâž«qŠ‘)}mbË䉚Ι[ú(vÈ–ç"Ã Ë Aþ#¥"b'¼ÙE'Ht¬øtÑ–/)aƒfU ›;rQbj—w[-õ>—RÃÌF𚸉€¼icueËÔZc—œ‡†úLói}]Š‚ô·sž¯ØnaëD#œZÚkF.ëL̉€ßç`JH›pÓÒn›vîºÄ€æ  X+É®(¹ŠúËkK¼Léë0å²s†œ¹Áî[„….dZÞÛ˜8›-bue˱¶j‰FB9°¿õŠZÄn_>è·àË—HD°²j[:SK»UAÄÿÅGî^ Gs…‚ooÃæ1#ØÎ]묕$ìÛyÏ÷pÈU%ªÄn ƒ£¿”h–Ã*¿Á`°ÓÝÛرs× ;óõ ¶·smQöynl½¢ÛÛ9[ë qgîe¼ƒ/„ Ïëà|wnUø€wÈ7äÅ¥]—¨ ú`þ4ÁýÝSù;ŒS&ühÌ$¼@û6ÛÝÙŠ…22ÙørÛÛ9Ç,3f:tÀñÖVW¶mï{§wìjéTþݬCË»n#‘p÷¦§^â¼½s×%ÚŸ‡aJ_qR™pfW¬ý\ÛÓMYè‚Sá+~>úp‰¸|¡Pj»‚§çàÁAÇ–´C³½¥<¢9V7pt*ˆ²Ý8µòàF‚=:‹—‹ô 'W"áÝ u™Ñ&<£ô…ýqš°v Õýƒž"_® Vl©°ÏELÙMä#l¶›}ñ BñôôMˆ‡Ú(B,’+½a½bŽ Zòw#E/w^ÜMù§gc#m»%¬þE4i ~‡nNÙ\±­aNœÜ¹ë6‚!÷>þœZÚ<¸¼Ë4S[éЬ§ÅÞ ‡pÇœ%%K?5£ ûCÎ<,Æú¢H:Tw3hDä}Ør¸£Io£…ñZ‡‡déFFú >gïÆéÊî.j=ÛÛöGWè5 2ݘ½õDrjç®qÂEAws™“–WP“€[5r€ÚÝúrD²gcIлÓo^òe” Ù½Ïk®ñEÆe¦*«ÈÑöÎuîÞWŠ]Ör‚Ö ÈäéW¯Ôƒ ÊXiͱâo¥+øØ!(ì×ÊÁBn¯uσPOÀïÑO@.B.ç\†šaÉe ¶»D#¡–wRG#!Ûì ¥¶Zú:í>ÐNœX’/ îå¬Ý'µ±-“®`ƒð¾¸R’@zE#A ïü{«,a«lÿ=]‚„{ïn|ί”êcÍzÏ(}{§Âµü>øýÖ–©ÌqfÆôk´£ NÆÊr;ÉD‡ [NåvïØ€ýý­c¶º4܈vçßuÊÕm„‚Úñ²åöfß=Ò©å]oefØSú:H¹ìÌ…Ívîî’lÑzSæ;6£“ü>ìïO¹"Ÿž¯`}#c{{Sliè\@èvãæP-€ìËÙýv-{èRgJ_‡ÈdœÛµê•|¶€û-iÝbùPH&¢8xpÀµu{>@öå³ÃJ `÷~âv*aÝ4×ݼۚwÈÔîÜet'žQú¶ÖVŽF‰Yy#wNfâpó®4=UÁ9?1ˆ¶“ª[BXD#!ŒŒôw$véK´ ØØHÛ~~»bóÙïRÑ^œ â6BÚ¬.³âŠÎ¹¼8½sWr›0uxF;øù߯á‰OcùÞ]Œ:ŒÃ<Úé&µ„£[òm7á;w!·ÍÒg± NÆRtÉDû÷'ÑÛwÝÃO¨‰¨«ƒÕ¶3Pr±K–v bûjˆ|ñôø8ì ’G™Øä%TDùØ¡°ì;+¢‚¡&ù\óUI͇Ýä$t»é «›7b=@œ"”ÕJ‘ü1!÷ÎU%u·ï¾ Aí»SƒSò"°I“¤Ü"}A±|e9¹o3ŠÏ(} wç~R>‡¾!\ó ô A™[k«(æs9t'¾ôåN7µ!N*‰D¬ÓÝ#”ó™VèÊŠà$¿½½qìïOíZB]®ðÎäÙííµz­Ô ÌKv#ºÅª 8—•"äÂäŠT^PÙÑ”ãrœ!Ô¼%ÄK²‡CŒ`êE£!¤z8Ué‹8ô‡Éµ™•"ùª M½(‰ªÒ— rˆ÷ìô½æ«¿ÞrU`³ .ש춉HNη©ܵ-€‘CGpxâÓøùßF8G1/Çë:<ñô âéçÿ´ÓM$¢wFé y(™v;¬hѨõ7ú¶g i‰D##ý-/}·“ôvÎvÜðÛšvÍ©¥³våÂurõÁMD#îöksj¼Ý:Ñx#õžSú±8îÎý‡'> 8<á½eÞjUp,VÈCŽº|, ­,uïUËÇÖvï¿Ï9VIoçvïØ¬§\k7í²6wËÎÝš¥]—…jœ[qÚç”ùóyϘ…N|é Æ—Où÷Äg¯æ³û—v»¹Ú¿s×¹ Ù©„â j¸‹]h—…¥T~¸„±ƒƒ¶Ä¨s’b¡ìˆÕµ v®¹uÇ3 Ý´sש”yvà¤âÝÎ ß-ãbýq“—°/È%ðÝÒ¯pïìßÃ8¹¬é¿"¡*:îÓ×jL*·‡“±ƒ…ÅUG ؉;v“‰h ׊ñÉ©k/×7ƒn±òîV~œŠÝ xçÙà* .u?€4/a³ D(6¸¦ôu'£ìÇZðak'N[ù;µtG`æ…ÅU×>ôAèê¥Ýv±—­ÚzÜl‘urµ“áZœ[ÚuŸÉ/äP€xð{OçóÎòî^ÂIK_ÄV¥Ï¹ ®›$¢ÑpK]Ø‹;w͸7 Dv“êþQ˽œˆ|UB,ÀáPÜ|Õ\〲²¾7ð †}†ñ—ÞO?¦‚8¯×š”>éÙÔÄiÒôë^^0T÷‡8ôÄZ+K†;#~cY|¼Y4´¢EüÀX¬¾|¾ |œ7î³YùLñ›íp„«™GJ«ç42ŠõpûxÜûC¾ºsÓŽ‹Yy³±ï rØo gÚòe +%£q1–Ûv6¡¿~íËhs ÷rÆ„Ù5`6ÕqÑT·¾‘vl—»—ªÎË [¬ÚnN¿xwçîžÄàÖ¶V’°og Å{8䪊‚dhÜp+žQú\ o ù<ýE]ïËPH×¢µZÅHvI@Q”ñ‘MÜŠÆ‚DT¡(È Çövζ>›•'ñçã =&« v«í´»<” Lp×£P°¾‘ÆÐ`Ÿé1478­UOÿÂf&]^”Ü™‡k.ß`Ò.œ^zÍæœsµø­‡>Aå[ëb#ãdsÎ…PJÄ#zÝu?ßp„køÙ 0¥¯ÍÐú²Ý/Jðs²Yù@“ ¦Ü\•HíEAB¬§ùÓ½,B€MQÂhTÑ0Ì/¸M^£Tî^Úâ%l–%Iø°¶ÞxÉŽ¦Ïfå{û¦]à keù˜!“ú›ù]VD`}§ŽABKòý¢„O>€d*Ž‘¨ûó‚árgŸO@’pg%j©„õtH°ÍKØâ%ŒÇ›kŠ[㸱n®ô­•$6ËF£$äÿ—‰(¬ÁRAÜG ‰jiϧÀs ¼ƒ;F]«ð¹ÅŸOS…“Kìlç.CÁûwÛw‹°óLÕ*y*@ö¿ û9¢]BJ ⡈~®1Š’H¾Šß±‚‘Z´å"ÖÃam= ¡‰ D8ÄD‰Lò"û2 {šen¦„(¤ ¯¶c½ACß5-¡P‰(>û©üÓ‡?£|}}‰¦õo+r&l—⇩Ç2_5µ,åwæI³ö+ Gä1!TXP?çL0f/㤈e€pN-±~GwîîIÜgd´ +}„Ø5x6Õcå«X±š¡„k©ˆIÞxABÄÏa(ìS•¹fì ù0æLøõä*Ê"PªJøÍZ¶iùŠ(÷ÙÇ‘+Ue ûw,n}û+HA?‡FöOAPmâGÕã³¶]¿à 祬ˆ qxüŽ !Ð@ãÊW%ð¢lYË †9”tãn¶üps¨Î^çaBP~(”ªØÚj>OöàÔò±§6¸§Âµ0囡…]•m&ÎS•¤] K#’ÉÝ i^BœÔ µSõJI$~8oórUò‡ùÁM¬ š/o+˦¤ºÂ|ND,Àa£$a0Ì¡¯7ŽÕ”t§œ©ˆA|BÖK"†¿µ’¿oײÖߟDIâ0?ÿÀ°¼bÙ]-É>z¥&FåLEVõ/ÙL8°ß¸%s?H=éŠñîj³¡$Ùê¼²²ï$l|¹8TØ©eÅVƒ£;†ƒVAÜ]9!*¯)º‘çAjìÓîÊ—_Ú̯ÉxOPu#)jNÈ‹õQ h‘L7S’×ËkîS% ÙÑ”m9rÄÞ1ý1¥¯X‰·EêË¥ 8JjIR Q@´øs¶±D¦ð’öYAë¿ õ  ÙÆ–ºxgºÉ…Ô—, [â=º?D%ëƒåùÞÞ8FFöcyyÃô8RC39ŠeT±Îª8Lš€6”Áhćª `…Ï£;ö’’ãÔ¬ ˆŽ-+ÒX˜¼÷H5nqQ0ßÑÞŒ¶¬ƒ—w蛟“/å\ýýp«,a«ìŒä•è´<(¹o·þJÑ}mj.ïzÓŸÏÉ «—oÉ/—+X[Ûvü<$¾o@ãqu*cJ3?CR††ú_²éT.Öõõ µß+Ã:…¢ƒ)!™1¹¬s>›nSã:¼÷B³ô‘`Ó$ Ý¹›©HM—èÉÒ¼Tc¾o†¼ Q¯à”…FåëÅb¶ü\å%JøðÃdvÞ*ÍÊó¢ì›gô½úòâ ¤ys¤+ÍeT(”./ÒŒ‹¶|ÒÄzy·3|C9×wZ[~d´~¸ÔPž´rÖ–Ïæ H$v—×JtãbT¾ʸÜYÚÏïñ»®œò»s2¿t«i» 'Óà1Ÿ>†¦ôµ‘R‰Î|¿Eñð …zjB©«ù^H ÊKT¾QœÍðÁjóØ|¼Ã`ÂЖFCØ’@9,g %NiÆE[¾Ÿ ¢L°T@"çD"‚P0€2_E®JçGD"g}ÞaÚ%³òfgÝ,KØØHc1ÓùŽÝ‚èUÛµŠ†[Bµè(WÚ¹ë÷[·G ìåÌ‹xty·=Ø=¥|› Ýëú¾ðñJ[ÎÓߟ’ÿÑR¾ÝJÓ2V±Û±}¿Ò_p2v›ÛÛt›œº §–Û² Ò¤;cªƒsãË–vzÒšö…—°¹ã+2ö!L¸9®T•ìßøa ^ E|†9áíS'ð Ò×flÒ1­dødÌG”æìÀFû,l䈿´Øç2J¥4ö¥œ ïÃ'úɬz¸T(£'æSãÜÅÀ#6´ ?„±^»7Û\9¶Aèh’kÏÃ[>ÎÔÉÙ,wp·"¢­ã!¢cÊd¡ð2nÇïy¸,Èá©”qˆ‘FÇGm8¦°Ÿ3}N$C~ƒ(ò5ô¦é4 ÙÒ.IžÝ¾ìÖp†ažŒiO ´ˆŸ®?n‡)}mÂʃùã<Ù 9—°µeÇ’¤½Ø;w–Q(´ç­‡ûDÛÛBË]Xب`=½Ûæ÷Óö´8 d¶í·x. !¬§±ÖðKy$l´PšæÛå+xÿ£­ºïƒÝi,2¥P,ÛªLuÝÎ]—úó9¹SÞµ¾•ŒŽá¥ïAQD€ðÚÐ&SØä%ä)v´jË ñ5®Š,U%Cóîòj ”¸b]ÔÒ÷[#1$“”V$‡­|KK8ÔSÚ`åèÅ'‡Â­u}‡àºˆÁ”léÛ(‹£XriÄoL ‘°ÿrë/‡±Tm¾IÆ õù‘L8 hiyÛpž0KŸ³8¹s—4<]g])â X\Ù$h+žQúJ‚X0fUD  Æ«Ç 0•±‘ãÕô¤Zúzøü.²ô­¯§±°°fK]$L|"‰ì¶`Kþa1‹xØ’•|•|Á| ö[ú²|>´É©g{¹€¡Aû,FC#n¸éØ2ã^"—-ØjésjçnÂ Š†‹DgÆÁ•ÖV7CøìØä%ì ràE ¼à½¥_¶€Ò$yW¨È[òݘ¹P(caaµmçëïOÙôØ©1€`È™÷+'—oì Rmv?ÝÞÎ1…¯C8—s—)48µ¼k×}QO·‡jñCNuºY–ˆ7¸ ÏXú¼ŽSK)Ñù²fcZ¿ …2>üà7ŽôÓˆ€ß‡¡¡>ۺॻ ~ ço7²º²Õz%&4òGLÆ|àƒ"86–;µ ÙîL1Y‡²@n6i«êàR>(:¤|3>gH9<(Êùí=¨ó1¥¯d²Ómõ«%ÑÔ¯Ï̧O»¹ ÙUúÆã>ÃÝX³&K¿Ãý!å½{C»— ƒG|èÕ׿V’0¿Yćü¦ÆjÀÐ'ÎÌWˬ¼Ùk ÿÌÀ—/W‘L·Í2‘ÑÜ–@ü°&-í á‘Þúîå…r®—ýœ`„y|_¡>¨1­œõ嵈IƒÝáä´2mF4‘##¦¿Ç}H•EäêùòpûöÇŽ„)²ÓídJÈnݹk'wPƒx¼»ÅhHÑ^” 窒ç–v¦ôµ…r™7ÝVïoqÎ8µlHÃúzw~ý ­ç µV>pêAp8ì‰?à·äïÚiVV·«{²ýÚypCÁ¶Ä¦l¾âd x¶¼KŠ“›8BllG€µ0å«k%ao­¶xªµ[k«ØZ[UÿMR¾ÙoË÷>":÷æÚJÃϦHßâ Ñ†#¿|ERÿH¡É²Å‹ØIý%ïÒ]X “M¾Úf›hFFûeeGmý+cE·«ÛŠ%…d³v™±BÙNÚò¹œ+¢lEÍ›LO£Ø’T¹wÒÉY3y¾bhYµ²yJOÀïCoªõ@ÝnÃÎåØœCK»€s¾d–q‹5É€\ι€äNìÜív¾µ’„};«æñ‚DwOtžQúæ~öSü䯦ñóÿ þþo߯Ïü7MiTFQÚ~ò×?":¿^üùß&n»•ÀÌ ÷‹räõûE㉕HÄê¾ËU%äªÖÊdOÐõ²ˆ /a©Ðxò*¿nò6ó<þûíßàþ²ŒÛ¼„û„še³>÷õÆÑ×—P?/Dl–%,Ƭ– b]®b¿ËЏÛÎf(AåœË„í$-¯õÝ¡‘ó/!_• w›õY ÖJÒ4' Ê‹ÁšA¾c#_¾fãNJoo¼æ…€QcA™  o=&k±Ý~š ÌÚê ÃÍòÜpÄWóÙ t~m’ÞÁ!üÎ?ÿ\zõßã­þ‘X '¾ôe|ôþ¯ðó¿H4†H,†ÍµU”òrü²ŸüÕ°üñ]Œ|ò0>÷‡_ÌÏýPÊç±µ¶‚¾!\ó œøÒ—1û³Ÿ"‹cyþ#Ü}ÿ—8üȧQ*äpä‘Gñö›o`kmŬ—DŒFÉtú\UBÄÏtOÀâò6×¶A@8Ô|Âoï(F1B¯×ù*°Í‹ÐG]ø}¬ùNéç se¼‡CQ£ìXÙh ‹%çîÈN;WSD}ÈU$l>hå\%ôø8bƒ|UBØO^~8Âa­$aT—–J¬odêÊ7šë4ìßoGNbëmˆFBŽmæ(˶äSu*8S6èpÊ ÀuÖV#Ü¢ù»¥mÂ3–¾‘CG01u ¥|×ß|#‡ã _ùªª|m­=ÀáGÅÖŽïþäÇä%ž»ïÿûÕߎ<ò(FFßÀ`|â3ø?ÿêG¸ï#yäQ” 9œyþOqÿãÚ%à?ú“‡H,Ö¬Éêd*·˜¼ÞÏɾzBaã´cQ‚ =>²§sÄÏa(Ìoò°Íf ¸}g…µMìˆÄç|U/ʱ󢨈rŸ}\}ûŽ ZqÖJ"ú }+züô5”yžèXµ™?¦~çîz™¼QBÀg,#håÜôa0ÜXÉÒ*/á‡áG¼äÌ ò< êµÚÀ—Ïl®“’HD‰v`×b›vYè:½s—!“sèåÀ‰»Ý¾´»WðÔ:7s [«+8pèˆú¢|ÝŸ¿‹íµuÙöú›o¨–¾‘C‡vþoÆ‘GÅÝ÷©*ðö›oÔ|V¾#µôeZ¼¨ ¦ËoÚ»ZÒ¼D‘ÿQ®{¥$Õ=œ²Ù>üp |ðäó%d*VK±R9••‹F9"µ¬—%d*RRÕߟB__½¯Ö‡‚¬·|Û©XYÚteªvÊË©š=G•-­œiÇÉ˧+0Ì£¹½•5,ßh®“ÒÛKð2æa„jë;vºj箋Cµ84!ËCÎè><³¼Û70ˆ/|å«êç‰ÏþàÄ—¾ êoÊg-¾Óÿvæù?UÿýÇ}׈r™Î‚¤ç@Äük¶s—Ô’¤0®?‡ ˆØÚÊb}=­.}FvÊ5jS#ÃäË»z¢ÑFGú Ë*IÿîëájB·XyÆÍ—Rƒše–#”)ÍF—çcÑ0Ê×ÊVä¬Gës4LX¯Â€Aù´é’–Õy¥ðûlZÚm 'Ce‹eôö¶¶IÅ©¸prß›/+îe{QY_ÖHÈæxðš÷¿2¹d´/G™ŠT·ykŸäGÕàå’×”ËU% …åF4}±ÕtU†*ÃK(.ŒñmŠéž®è7kx{{Féó*­ìÜ•—ÝÌ„±h­¥vQY¨Ý¹Y*WÍðÁj÷7ê­1¼h¼ÓÓìâ“-7­—¯p>Œ2 Dœ«ÖçGn$³ß´oÝ‚$Ë^ù¿žfã¢% ›.Ÿš­Ôñ‚q¿ÌºUvp\ ;J†ÑÜFy£s&;Ç7Ö3†ßÓÈÔ û>Ê›º®¸Ûý©œTúÜÞw§©ˆäù¢ï¯j®9«y¦6“ #ˆl“ Qù ¨"<Ð@ã_­e³]šœA÷·7Dz¦ô9ÅÎdRvîZÉß*ßÌg¥^ zPl\^‹ XØ(áN¾Œ2_A6“oêT¼Å“íVU( tý6+ÿЧ jâ§u/'R=£WLd¤ÝÈQv•C#%±Ù¸h‰FCÔ7ÀM^Ä&…x‹—l‘s#Ì‚07*¯—P.[0KF#S3öïï@l¾6cG\7§–wYÎ]:ìXª7"êÀÒ.óçÛ;0¥Ïa yëáZš1;{Oýw4B€ LEµ*8–Î ÆÆ‘H6Hcfýȩ–r^dçÝf|ØÚù`ÚÞÎ9(ƒhÍR:ÜV㆚ấ]ûóF÷”>© BÛ’É{I‘#ex¨ýýÎûh9eùˆFíÊ‹Ü9ìz0ñ|Å0L‹]¸iGÜÁÍ vä‡v* „'Ò~¹ˆlΙÔìå‡.5^zj÷®×Ø‹ŠX»èïOad´¿õŠp*fY´¡C\ʆƒ Ÿ½8ZóçsšVãº9µKp&LÈ^ÅI¿ÊH˜íÜe˜Ã^Íœ@çÏÇ £¿?U€ÙIœRÎ}mŒY„±àXÃZ]Hl¬§ë»vìz'ĸê%§CVœx‡C±æ×ýDR>,äEävôøGRä÷‹òOÆ|5!šþÉP‘ˆ±«O¾"©þ¹CŽ*ÒÃìù Çd_ÕBªýÇzIƒݾ‡â~Ã0OFä*À½¼óIÇÅ}ˆ÷o2›Ýrw"tfés§Rììe¨>›nì­†Õ1£Ë»$þœV°Ã=ac#㨛ƒ7p„\êleYÐ) “ì¿Úxzo5͹‹ÎÜsØ’±…Ñ.ÚUxÆÒ7d[Ž;ÉÒOVà9!‚·>†Ìèh?†‡ûȰi¼6zD9ņÍ<2±–ÖB¿ªq2¢3síP¼µzógñI ×A¦Ò|·xooÌF&ûnÁPб[­à”ÿjG² x§,®®²¶áÍß-íèžQúÒ¼„¼Ï™‘’ÔÿØËüšs»÷þ€cèM`Ýb¬*#HjÊf Øp “?àÇ–À™ãkµá: þ 6ÊÎÌ·ùõ<‰(Õ1J¶·³¸ŸµfÕ ÙÕ—JXë”Ó¬CŽb¡d9ó…S;F™u‰Çüˆ=3]¬uuÏ(}%AܽT.£äÛå+ª¯Üh4„OŒ ¡'ª‰ÌN„ ÷ÍïÈ8%#!ÓÅN«HŽÍ·\EGÑmÉdkW(@ª¯µì^¤·§vîº*ç®ËCµÎù7[bg´Î&/b_Ð^sÓøûÕ µÞ .ºR÷Næ·Ü+ôõÆñЧ>amI¦{ò^Ù¹r06—UE¡X,;z{-ZùÚ€-.ÙœscѬ¿Ì®³‹SŠ7àÂÜÇZöÈ$ðƒCš—°ÉKç¸wž±ôy 'v^'à÷ad´¿-1øš±vîÎÆæ²jYrrÇ.`÷ï<‘¬* |Ù¹¥×û’¹' fùØZ¼ÔSAŠ"âÔù¼£ôm­­""sñrŽf29•bÇë$QtMŽN§Âêì…ÀÌ Vær;‚1w4­wtD§¬Ú$;w»8¹s×Ù8ƒ}ƒxúù?ít™•²â3<Ô‡‰‰qŒŒö»NáöÞÒnÒ!Eˆ6ÞÜÆFÚá`Ìv[ùÜzÍ+÷§âvàÔ2;[b' ÅkwX/xضøÁíÃsWk8ÇüÜ/0>ñÀá‰OwºI2šÉÔÍé×BÁÆÆ]­ì)8•1e/:µ“, *—ÀêÊ–£mqcŽvC«8trç.c—V²©4ÃÕ;wU\ðÆÔ叨\‹²\«õåSþ=ñÙß«ùÜé¥]§Ì÷n¦¿?…¾¾¸ó~%6Þ3œ§N9SG¢!dÚ5Η+D÷\¶àh&ŠþýIkYNÚLÜe`Gwî6˜m}Ä{ÁŸíÜetПðÒç%Ê%çvg¹‰¾Þ8É(úz®¶è™á”E¶S»J\f+Ëèím¾ g}ÃÙ0-$m Ã›–‡\¶ˆDœüËÑ»PÂÝ‚SQ¿{wîºåsK;: Sú`¯úô…‚ôõ%‰†íÙ…ÛAÊ|Å1¿3'wÒ6ÂI_B’M/<_ÁövÞ±6¸b‡G]±s׫îåêï+Ê´¹»^D.¿û{Q i!O~?Ò¦(\-‰(ø—kZI{ËÛä%ä -VÓ–&׌¶/+Eë„F0¡M×⃢Ù£¾Lé³Ý|@6[@¹Ä£ÌW<¹Üðû††‰†‘LD=iÍ3éŒÜA礲ÙlÙXB;|ùܦEO(pl©›v™Ð©ê®É¹ë’g² ¡a:ÉÍ<³)a5]aQ=Aä)oiAþÓ#Ù L«)(‹íÒä(ðL XB˜Òç‰D´Î·­X(¡*ˆ(JÕª .¹t2¼K2)·3 Áï÷# !ìqeÈ ;oìårőݮÞÄÑ¿?éØR¡Xnè¿UG}:½¶£·7öútÊ"×(ýŸûßÍp¾Å¡`#)ƒ=ìQî :ìÏxH風]¬JX)É6ã¾ © IAƒkü^^sŵù $¡T•sñ ‡ Ú©úßÄëŽ+jÞ ³ÙÝ屡°b¹\·Ëôãœñ2ÀP„CØ@FçD$’»V E©ë úЬ-/A6±½qɲÔ×/!Í[|}›"~C‘úö˜•û9 ”—ÇÓø†|(^o}, VŠÆå‡""~‡â}úÔïµK2a¿œj'ÍKH9µ.¥Æa9›-¯ G|†åÊÙ ÒûJ©yùCGìʹ"a«l0.Cs4]ays9Ë}PËÚ=÷xÜØ*)7ùÝúâ„3h‹—°Q–ð©Dóú— "ü HrŽC q´åG¢ÍeT$¬•$ø}0\~&¡¦Ž0YËÍX´s© í”'EΛe GÍëßÔD"±¢¯•væ‰$µgw‚ÈŠ·TÔŒ{„½z™nUâÎÐÂŒùœ¨¾œOö’‡¾Y+‰ªÛÉ!e…‡€|ewwñP„C?EÞØÙ-r_áɾ€n˜Ïˆõ’„;îX‡â~âgJ®ÜË;¿ÃâPÜg²Òa&'wïúèº;«×nF~Ÿ¼ Eä>“BsÛUÇHÔ' ¡œG£â~¢D&EΤÚqTNDr–€au’µÇÏÉ˼íÈjäµûƒÁ°»Økè:¥€ç&A€«¯ÔŒŠ([dz|dOψ_vì']îì ù0æä­ìä*Ê‚¼õd©%ø9€°ùäDؤo­=6(=>Žª}j;ˤí”À‹²"î#\ÈU$”E T•#ßÐ䍯QÙhCºDÍïÌà … dKµXÇmb0-ý!ºcH}ÒHýËô .óø»iùTÒG=¶±žæ»x›Ðí8=’Ð-¤6i4±œuõ Ž'í8’ŽŸÂåW‘¨åfT¾QïE1ƒ03íÂC/϶¸© ‡Eñê|ÌÒ··Ù\‡»°$È`´¶^/{ÉŸÏ%Í`4G‰ Kìì">`Ï*}äd OÃ&6%L` FWàÀ¥^•ä vÃâkmt’îZÞõØýÞ,©ÝЋ¥‚ìÀ˜iÆD(ƒ­º·_›ü€ê7ÓQ¼'6ƒáë%ûv6ÊÅ{8䪊‚Ô–ç´]t—Òç1Ò¼„œoo+XÎ7ÙZ§QN¶èTÄwʺ½Í—@“šÑtáÜð^—½×âf ë" {0â@G”¾r¹‚Pˆ ˜†4/¡H˜F›¯4/H…“»B®*5›O`圼H/®Q®ÑTÐyKßÞ·òY“_QcÒ†¿i_¿;šKß©ÈNéœOB€ƒš²Í w5ÎvA®·ÝȺÏ`0šãñK/W€„3u;ªôÅ“1¬­l9yŠöÓÆÉTX~ðy|Öw´ »™$ª Rš¹D¶l†K$À:É`¸vñ ˜äW RÅh舥¯P(!™ŒvâÔ¶ãΩíÎVy &As˜lÅÅ¡ZŠU‰*ædI³šÔø¸Úöj¾”DøËdçÓ꛼„\ÕŸešx¨Ú¾¬E¬®†¶ËóãAQ‚¿ládK»ÅáÀÙˆ£JŸß$i¨™v»—‰8Ô»çI(UÍ'ï¾ ‡ ¿þûEãú‚B~@ïÇö h,ïx‡X >ßî&/¡bàkhÊkÈW%ØE=>û‚´åëÛÉ‹À–ÉE7d¬Qù>™®É/ê}AŸÉ¸ˆTå7Ë’¡Og<À¦ö©)¯9,ÞS›Nù)_5vmèñ7—Š™œë¯e^”°i"g³”mfsw_ˆCP9…¦ÈƒS1½% óCÕÍ[pC€¡¯»žŠ°sÎn¬æÐ.:ÔžV( R +n©šèB‘hرþ8ªô™5¼P Hë°Gçz½— –eRAãcg`oPQÊ$]yãúc!ã‡E4)o”×µd|‘‡|°P¾^¹ÈU$S%®ß |¾Ay3™®ɯêdÐ8ç®™ÒgV>W`äªïáÐ2*/—pè7“s…r\L#_ScòU a?yùá°ke£²üý\gt6Z»ø„ ïs€¼‘C¹…˜_·õæEÙ'Â~ß»P<&‚~-4+¤÷z¥/Нr„âþR•vü틪eÂ~òg#@î›Y,oâpÚÒç¸Òg¦µnS*} ½Cøñ¸ôê¿Ç[?ü"±N|éËøèý_áç?þD¢qDb1l®­ ˜ÏþÏ¿úîü|ò~ÿ¿¸;÷ @1ŸÇæÚ ö áí7ßÀ|é˘ù)"ñ8–ç?ÂÝ÷‰Ã|¥BGŽ>Š·ÿËØÒÔÝP¥0~TD9XáD 8 ‡9,æuÊ… }!ÙÿŠ´|¾"+%A"²*ñ‚¿ðQÄ´\/‰†þ}Fôø¹†A±‰êðq([¨c½,šú»ÕÉAÄŽÈ‘«ÈÊx©*!W!Ç ¼a„tÃ~Ãòò¼(?ЂàjwÚå81-†a‘p€Ã8EÚÆùœ¨* fÇMÇõ’¨n>Žøˆ_ôòIÝY»/Èß3`v‹|i‡&uåzIR7l …}ˆF+ÉU$ÜË;±GŒ7֙ˉ̿&1Ö!öÀònØ0s¾P¦Zâ9tLC)ŸÇõ7ßÀÈ¡ÃøÂW¾ª*_[«pø‘O«Kºô'ÿ‘X p÷ý_¢oÇ:¨åÈ#bäÐaì-x‡'>£*ˆGy¥BgžÿSÜÿ¸v øþÇݺ¦*Òï„JW$ª7-@Þ%ÙCøŠ•æéÊŒù0áösDíZ+ËÙ0Hßø>ʈ$ºL(ÖhíóQVvS.»“¾eŒù0æpD7ÎtEÞMÛC¡”ÉåÉÊÒÎCÁÂ\g0ö2N] ÌŸ¯³ð|ÅÄŸ/ähŒ> Mqú’½qà ʹK¼ïÏÜžø4îß“1Eùºï®já9t×ß|CUGØù¿Gy?ù«iL|ö÷ÔïÞ~ó ô Õ”{û¿¼Ñ6KßhŒ^/7ÚùÙˆá0]ùѨµ´2ÄË|£Qº>IÒË(Öc¼‹—æV)±j;¤ âŠ,Ê™pÕçP mQúR} C¥o}}›XéëľòUõ³¢˜)~}ÊoF~~Ðà;ýogžÿSããvî°ãÇÇnŒŽÀ&%L` FWà¡K};ml4Jõî¥OYâÕ/ç–ËU¬¯§ÑߟjG3:ʃ’6ª÷îìlXóA‘<ÒºZžÂX²Y– NÍ6'lòÆùˆÍV+‹UÉ02;mùFþŒFå…¾v$2-V5IDU2Þ²R±N!g³(óE“¥ÌͲqÓò¼qX»Æå¬?C#ß»yâÝæ2´s×1<ôà`0íg³,b_È^ã¦ÒøûÀæf<_ÿàoÇÒ.ÐÆ4l}ý)¿ßgÚ©……]™—Á ‚=e)ac0º‚6^êJ¶(ÚH‚ šZù’½ñ¶µ¿­^4Ãû ­}årl¶³)ä°çƒM‚î€ 3cæxkT%9”Öpćx€ÃE˜°µõmC+ŸßïÃÀðþ¶õ¡­J_#k߃›–R³µw^4îl•—º°$èL6ŒŽÂüù.a½$bßNH¬xAÚõÙD ~“˜§Åb«kiÃßöõ§ aNѶ Ãû‘ÙÎ*xów—ñðÑOösÈEªû‡›pªQâ¹¹R>­6ÙEòuºImÄù.Ÿ@µ¡…Ñ>öÀ´f0¨Ö¥6&Hu*"––×  …z0<:ÐÖ>´]éóû}Âü¿©û-_(cáãŒ}r¨î·T‡H] Ü·WÞ•ZPl€^$m¢-§²._ÇzÚ‘yèÊÉßãqKó’š·ÙqxMd CÆå×îý•MÃì026DY[ë´]é€x"ŠT_é­\ÝokëiD£aôÔ.¯8žbˉè+àÎVy© ’…_\ÒÀ½xZ£ka×ÜÞas3‹ÍMãìûúSˆ'¢moSÇÂ¡ŽŽ ›®c/-­¡P ˆJÜ&Üy1º³U^ê ƒÑ6Xê5£#¾b±Œß¸hYW“$‰êŠXÈ‹X.ØcuËe †Ë¼ðûðÐoD4êˆ`Ø”¹íô"®Vú\ ß6Á½w¤å‡b~¬óâniïv´í0¥Ï›ÍØ“A™ÝÒ%]¾Ýb±Œù{P5 E÷©‡Ç‰†[>m*ÈáhŠ.§{GÅQ õþVD|ðëEWZü †›aþ| £34Sø†GûmQø¬Òñl—ãHõ&Ô*~[k«(æs”µ·€'¬| géîQïîÞ3:›€¶±'­|.¤™Â—ê‹c`h_GÛØ‘zFdžÁ—Q4°ê)ŠßÇ¿üo˜øÏâþüG80~Gy´ÓÍv{àBîø’ƒÁ Å{׋KZì’f0`gi7—+baqÕTá‹DCîtkÝ¡ôùý>Œ?tó4Rü~ƒáC¿…»ïÿ¥Bûñö›o`߀¼åY°µ¶‚b>‘C‡ñ_úr§»Å`´{XPÂÆ`t.ºÔ77³¦›6Yáè`[ƒ0›á ¥h®øÀââ*¸P/Æ'>ƒŸÿømD¢qóyDb1žø îÎýô'_ÆÛo¾Ñéî0 /à¢co0ÙKîX¿V±R”'ᡸ±²X£ùŠ„{9‘ú8˜Ý’S G|è“+!Êq$Šû'Ô.rà^^Ûö¡?LÓ¸¬UÅ}ˆ7ïÒýMTóÛx$%Ëòýt­¥ÏM àŸ>-~¿£cC…zLˤsU\ëÇè§žø´ý aþ|]ëwívîî=£ãì¥]»Œ=I¹\Á¯?XÂÚÚ¶i·)|€‹,} ‘hGþdÅï_œz pèáIÏùð¹õ? ¯/‰Ïþ¨~~ݱ´»nh{  F·À.WCfc3‹å›ªæ–F7*|€Ë,} ÊR¯Ù®^@öó»{÷>îÞ]6ÌãË`xö”¥„ ŒÁ`8G¹\Á½W±ø›µ† ß¾þ>õð']§ð.´ô)øý>Œ`É¿‚Íõ´i¹­­²™úz1:Úßú‰ÙsƒÁ&AwÀ†™Ápn½$…ªˆÕõm¬¬nc›—ÐäP^b:-j`¨¯cÙ6Hp­Ò§0:6„x"Š¥…&[¡«‚ˆ6±µ•ÁÐÐ~ èòö¶‚;'¡;[å¥.ì °æ2ÍhIDAT:“ ££0>†‹ØØÌ"¿•ÏË+Š>ŽC¦” û5›N?ŽŒÃ/F:Ý䆸^é€T_û“Ü_\A.“7/(T±¹¼‚ôú&Rýû00BCšßIËÔã§;®T•P•€„ÊDh~ã)VÁ¤XÄY‡s³òœIyãôø8„ ÊɰMfåË"Pëðˆ8ãò'ðsµå•‚(_`FÄ öüÈåe&©ŸÂ~UIö(êÎM+爟ƒß`óW±*Á¨™A“9[¬šŒ‹¿Á¸ȹYy†»×±^6Ê7–Ý\g´¦B1ºÍÍ,V×·q G¬±æ%{€Õ’„X€ƒ²O»7Ã?yh€®‘ïrîžPúà¡}!üÎð'qoa KË Ëæ«>^XÁÊÊ>s¨¤ˆ×Öçv¶€ï ‚j;û½œœÇ3àp(Nsœ`ú`Žø3x8ÏnW”‡Ayc h_ÀÁöø{9¹ªD\~­$a¥T_>b" 9L–×Ö&‡'0~ìŠ×‡GІ30”‘B¢Ýú pèù°^Ñòá^®V~Câã2V¶ü×öÁTÎ!ý!“q©PŽK‘f\ŒËÀx¬¾|®*a>G^~e2Íç:iH¦–0ŒÖ››lleÁó;÷óžÚ{YeçÑ’¯ÊŠß¡±AŒŽt6Ë žQú `x0…æW°Î7,[.WññÇ+È=XÅÀ@/úúH&£î5QB^\C©Ä7=fmmkkÛ…z°o_‰DÔ àRADÀTE £QH,Êö(Hˆšk k%y™q³ ŒF›?p75±³I•ÊM^ÄføT¢yýK~$ #Ñæí_΋ðûA”0k^¾"HX+Iðû€¡ˆ5£"jê &ºTvÚI&gÚò°ÅKØ,K8B çMÍeïiZke‚lòF#Íå¼;É”¾å‚f ÆÑÚjCeþ|Œ6‘NçQ,•±ÎïZõš°Q’p ÄäCJF±U‹ŸWð¤Ò§Ð¿?ÞT ¿YÞÀÊê6ªÕæKAår÷ïoàþý ~$’Q$“1$цA¡;EÀ'û—•(ndCake #f@6S‡Æ~jF(ÖRÃÚæŽ9‰TA‰ú¯HØäÉú¬(z+E‘¨< [¶T4‹Ïˆš:P·¥&ÇH»ås`KAb}ÜÚ‘it~ÚqÌUw|ïˇ}X+‹%T¬ýæzÀ †3ìK¬X,£Xâ‘Í‘ÏMsäšøñÛ‡{qhlwgî‘ÁmxZé€@À‡CcøÄÈ~UùòÕª€­Í,¶vLº€÷*=ˆFÃî #ëq…50ÀUŠùYåÍ!¤Ë‚á‡á0‡Å<™rÑâ—ÏWd·ˆ’C¶ºö ²…‹fµv½$û`öø9”ÅÖîb=>ku¬—% „È:Æ‹²"äã—S+òru©*m€è rˆ÷cÄ/+r‹²ÉÈ‹ÒÎ<$[:ä¹Ny/¦g<À †9¹\‚ ¢X*£XäQ,–©•<…p¨‡Fû04Ø‹ÁÊ™Ûñ¼Ò§vD£üÍ?HãÁ‡ëÔA›«U™L™LÒ6‡´æáœJÅÑh¸æ˜h4¿ßl^Þ!€ŒHž{1›L¡ŒèGº"!ÃÉJ\F—w³YÁ´¼Ð¬—$„ýò¶r¦å£BÙ¢„lF©ƒC&'›¬ Ëó–‹’ªeÙ²„¬•Mìá}H€dKD±yùå¢Å­+[å«JÈšlÌÈúýø(+"ÖlAVJ•ÏH>ˆ¹Î\UB´â«“‘Ô„Ê>dyQþ¾¶®¬èƒÔÃ!W1¯£¾<äv8¹Ù¼h¨œÅ*BN^ÞUä pÈæôåå1ŠVåqL€d‹D‰C¶d,g©‡CFòa9/©ÖÝŒ(—Ï™XK3~¿\_vwÜóU ¹œyùõ²„ˆÈTv¯£œÙÜ•|Èð²;ËÙYÁ×°|«d%²eQõ5Â9ÝÐÆš™ë -¤âÌüÄeË"²;›§²ðA"\&ÔÞ㌎“œ\¹f³Uù>CŠ|™$r’áÂY¾ävrïÆª>„«Û$"ŠEÙÇèÁÎF¯bQöUɿа‹P¨ýCûð™#û zgù¶{FéS;ðap°¿J —- VÊC̤[®7½³i$m²yd!/"W•—0Ë&_å8#øXínÜ_ïüÿƒ´HTMÊgÂ6uV§tƒ6™•ß(ïÞä6µR>ycÊÇyã>ôì$¹Î–×ËH9îCŒâ`+äÃFYÄVÈWWW… ³òÚvšÉ9k çfå· ÊÓÊÙ¬<St㢔ßÒ}O"#ø IùV©Ääñ͹;ºÄ7ÉïÿÚkN0¹¡½öhŽ€»;×T>\kØ =Ž«}¡mÓªÍ÷¿ß‡T_©¾â‰Î¯ò9ÁžSú´ÄQŒ Ç1ÂÆfëÙ¦;~ ƒÁ°ÊBž\á5EWK"±K‹Ö•˜æ8-[¼d¸¢cVûâd›ODUeOÞm!/"`Ÿ±ãìi¥OídÀ‡¡Á^ ö¢Z±Î#Éc}#K´ù£SÐ^Ì´åÍ.°¢@Wž7¹Çã mùF{%hË[½A¶R‡YyZ9wj\{ÆÅŠŒ ¯aÕz\´ø(²z/6¾æ[ÁmÒ õ –ˆ"žˆ"žŒ5ŒãÛ %ÔIºBé«épÀ‡þý ôïOàÈø0rùÒéJe¹| H:ÝDÚ ‡¶<íF[^èn€´åúòVoF­Ôáõq¼1. ƒaD$B<E0D$BDç›ßMtÒ§' #ÛÅ¡*rÙüU¤8‚  Tª T®Åd0 ƒÑ^";›*ƒ¡øý>CAC={Ö7Ï*]¯ôOD1ó5 ›ÎÔZ{22¼„dÃ?I’ïÞUŽ3"F;a1?‡d‡û%ŸˆúÐK¢„a/e(SÄA¤áŸ$ý¸_M¯=ƒánü~_W[ì¬Â”>‹¤tñû’‘—rHQ(}ÊqFŒÅ|žŠô½—ÈW%Düb1þI¼Ó­éN¶x (nÓLú‘ëM¯=ƒÁØ‹0¥ÏÅl”%¤+ì¡Ô ª¢leZvHé`4GbSŸÁ`0l…“$º[ëB^Ä2[îj ÌÒ×ä\ÇÀrQÄCI?òLñîe «%gî5GS~,E¤™¥±ÇI9¤S3»;ïC~Ž8¯8¬”$Õc0ìC˜pÁ«$@½Î­¶•š”i銤Þ¬ö¥¤‚ަÈWfés5´a/ö rjÞâ|EÂí4ÛZÊ`0¼Iª‡k蟮Gyî„ý :.]PÞ¹UîqÄY,Ò¼„ÕRkm%¦^v_­öÅ­°m ƒÁ`0]Sú ƒÁ`0º¶¼Û&ަü†&âÛiÁÔ¯È옿[«ÚR~Ì$,Y›ÌÊ/DC3»™¿mù4o¾Äú»ªò´2²£Ú±wÛ¸X‘³Qy+2¢ƒÁ`4†Yú<m¬²4/©¤Ð¤š) ôõ[9‡“2²zL»Ûi¥¤r¶2Ž4che:—Ñ^®œµæÏˆùÛ³¦Ç¿;}¹cmoÔ.’öÙÑv£:æoÏâÊùWñÖÅ ÈgÒ“ÃÛxJé[]ZÄêÒ¢úo’òÍ~#¹Àê"9¿ÜÍŠX)I¸›%wXMWäP/¤áF– "6ÊäçX)Iê9HY-‰ÄõÓö™¶|YÔc¬b¥§ûÐÉ™viç í<´Ò_†;™˜:Ž|&ƒ|&ƒ‰©ã†eÌ”A˜¹~­cmoÔ.’ö?<ÙrôõÏßžÅÕK01u…lWÎÿ‡ŽÉ‡ám<³¼ûÞõk˜›¹…X2‰ÑƒX[ZÄé³Ï7<æÆôeÓ2«K‹=ˆ«—.àkßù^Óó+åIê¶“€OÎÌAca‹ù°\q8N¦Ó§+bÂW€² !äç@MF»Ÿ„à ßÎ.(²‡ÿá„Üpš\© Lí¨ƒ¶´r •3í8ÒÎÚyhe®3ÜÉäÔ1ÌÍÜTÿýîôeܘ¾‚|&ÓgŸÇ½;³˜¿3‡w§/ãñSOá­‹äïnÏâó§ž2¬S_fü褪 MNS/œÿ!Þ{çZÍù;q¯…уxüÔSxå¹3xýåsˆ%“8}öyÌÎÜÂéˈ%Rˆ%“X]ZT/å¢<ôð$¾pæYPoHùLZU讜§Ï>÷®_C,™ÂüíYÌÍÜTß®&§ŽáÊùWkênNŽGJYP•ä8K$ÄÆb>|! M2ö!äˆË§yY¹ÈWÉ–úÊ‚„€ðsäñš– "ñ–üŸC©ÅeD«uд“V´r¦GÚyB;ú¹Îð7¦¯à…ó?D>›Ák/~/]šÆüíYU±ú™g‘Ϥ1g¯¿üíšl}™ñ£Žñ‡'ñÌ·^¹§Oá…ó?ÄÕKðîô̼s­æ|ŠBg„¢ž{úT]»´íéÒ4bÉÞÚQþÌÚ¥m»Yû®^º€ÇO [;q7¦¯à»?zùLß8õDÍ9Ö–±º´Pg|`0hñÌòîøÑIL8‰|&ƒ+ç_ÅøQùbÊg2€Õ¥LLÃêÒàkßùbÉYÁܱj™œ:†ñ£“êE41u\U'§Ž¡Mã…ï_Ľ;µKÀÚº¦*‚:+ÇFY¢ p ÈÖ'Ò‡óFY¢*ÿPÒ¯š&±B-$l”%b‹Ò¯¶T%¸>h8m;iå@+gÚqèç Í<´2×Þ!–L!–H¾0¿öâ×qõÒÌÍÜD>›1<Þ¨L,™”ÿŸHª÷äB6Ýô|Š{ŽVŠ%’MÛ¯­Ÿ¤íÚ§ÐH!U8ttSÇU‹!©[ƒ¡ÇS–>ÅÏabꘪˆ)Õ½Ûsª…O1û+ûøQÙÇâÐщ†õONÃÕ‹?À”æ"¼rþÕº7+mÝN£, Ò@„t‘Ê­¶‰æ<´õ?ÚG‘؉üN¸ jW´ít›œiç í<´Ú_†û™œ:†sOŸ<¹³Ú²º´ˆ÷®_Û]V½=k¸´©…¤ŒÙùÆNâÜÓ§š*wúvÀÔ'Õú>êtÒEÚ.…Óg¿‰ÓWK$UŸÇ©'NªËÍú6^9ÿ0þðæfnbuiOžyV}®14°4lm‚…l±^¾Ý![”ŒËE#_]],dKs9»=d KÃÆèÌîf(×mŠ/íýÉìz6B{±ÚVÌîIFhï…VûÒX6cæœÞÈi£,Q9µÓ–OW$À@/ tåÍ–äJ‚ñR&mùRƒkˆ¶<‰Œª¢<^Êÿ­ÔARžVÎÀžq±"#ƒÁ`ØSúÚ„•<º´‰›iËÓÆP³sm!ï\y€^®$2ÊWw#E¤ÛÆ —³ãÂ`0ŒÖ`JƒÁ`0{”’Kn U‘î8íªÕ^[Öj[I ©W»Šaµ/n…ùô1Œ®ƒùô1 ¯cŧm—c0 ƒÁè˜ÒÇ`0 ƒÑ0¥Á`0 £ ðÌFšX9 Ãû4ŠÈ`0 z<£ôµ3à!ƒÁ`Ðse0 «´3¨3»«1 †Nea0ŒNÁ|ú ƒÁ`0º¦ô1 ƒÁ`tžQúV—‘Ϥ;Ý ƒÁ`0 Oâ¥ïÆôeÌß™Ã[/`væV§›Ã`0 ƒá)<·‘cnæ& Ù4GâÊùW18zPýM±ŽÄé³Ïwº© £ËX]ZÄéË€h"…ÇOF,™jxÌüíYŒ4üí­‹ðØ‰“ê}N[ÿÀèA<~ꩺï•ß&§Žã½ë×ð…3ÏÞ¾ŒÇO=…+ç_­9Çé³Ïcui«K‹˜œ:†Ù™[˜›¹YÓ~+Çж÷ñSO!ŸIãÝé+ˆ%“x쉓ˆ%S5çÑóîôeŒ?<©ÊO_ïçO=UóŒÐ–oÖ§|&«—.ÔÔ³º´h(SÃ+xÆÒ§0~tSÇqcú2b‰ò™ `bê8Gâ…ï_ìt F—"¿xf01uðúwÎ5=F¯|(¼wý®^º€Õ¥EÃúïݞû; Žöû‰©ãx«K‹¸ziwedæú5ò½2ŸÉÔ´suis371{W/þSÇQȦqåü°| m{ൿŽÁуX[ZTëQÎc$ë™o`ô ®^¼`Z¾QŸ”±=ˆ‰©ãxýåo#ŸI›Ê”Áð žSú¢‰æfnªé„ÁÛƒÁ`¸…·.^Àk/~ßøâãxkG ùÆÇ+ÏÁþßÿOÌßÙU†´Ü˜¾ŒÇO®û>–LbrêNŸýfS¥ãñS§k,_09u ±dR­§¶nÅB·€ÏŸz Ï|ë%Ócb‰$&¦Ž›CÛÞÙ™[?:‰ÇNœÄé³Ï×Õc$Ÿ'Ï|±DªF1&-ßHó·g1¸c}œœ:†©'ñîôS™2^Á3Ë»Êr­öâTþý؉“5ŸÙÒ.ƒÁè«K ªµè™_B,™B>“Æü9¼þò·Õ¥AeUâ•çÎÔ-^9ÿ*>ê)Ü»3ké¼£18:8ôð¤¡RiÄàèAœ>ûÅÊ’%°«LhýÌŒxoÇ"6{ùLÆÐŸmvæV¢¤?¯²ù…3Ïâ•çε]ñi;}öyL=qWοÚT#=¦Y{W—qõ¶¬äæ3iÌÎÜR_èõ¼;}=qR•åìÌ-œÖÔûäÓÏ⵿NTÞp žÀÕ‹?P?ÏÍÜÄ€fÌhdÊ`¸ ¦ô1 †ÃÌßžU-~z”ÍZç™oý9 ŸÉÔ(€¬Îï(GJ9ý÷Šï³ÂÔ‰“Dþgʹӗ‘ÏfðäÓÍ-vÍŽ!mïé³ÏcêÄIœ{ú”\Vc¥Ó–}áû1sý¾öï©KËÓ—ñîôeU©Œ%SxòÌWqõÒÙ iRÞŒX2…©'UÅnpt §Ï>U9‚T¦ †›à$I’hXÈ‹X.°$è ûMù±\‘æ©n ƒáRAGS~ªc<·‘ƒÁ`0 ƒAg–wÇb>ÄQÙ|UÂB^¶F†}Ø";n§KÇ-äEä«bc1r]Z9Έ£)?RÁú6˜%‚§-?óa$ZßÖÛiÁÐbV~¹ ªòÖböB[>ÍKê¸èùÝUyÅö‡8l”%ìqumµk\håÜ©q±"g£òVddVžÁ`0ôxFé‹8ÇB3Â~´å¸@qçÿ>kÇ1ÜCÀ'Ï·tE"~Ñ`0 Ãí°å]PèüŽÒ¼¤þ‘bfm4kmýVÎᤌ¬ÓîvZi#©œ­Œ#ÍZ™‡vŒ ƒÁ`0ŒñŒ¥¯[¹›ðUQÂᙎž®ÈÎ|UB*ØÜÉs¹ ¢*+E²s¬”v̤VÍÕ’ˆ•¢„Gûš·‡¶Ï´åË‚„¥‚„€‹Y³äY©Ãé~ÑÊ™viç í<´Ò_ƒÁ`Ãî¬.GYj PŒÔẊŽÓ)‰¤çP¬1¤+Ÿ«%ÙOŒTA<œð!ÕÃA ÜX~8á“ûL!#+Kþ­ÖAÛNZ9ÐÊ™viç í<´2× ƒA»½z€T)¢ä” U ùÉžæÊæÒ¥µÁ°¬¼.õ¥y %A¶ø,õ•Ù‚æçÈ•ªå‚h¸™ÁˆŸ#Vt쮃¦´r •3í8ÒÎÚyÐÏu·±º´XËM i‡Fuдƒ´} 3å3M;•}ïú5[³WXiŸYy;dmU.NžÓj_í«NôY{n«tK†¦ô¹œª¸ka!e£,!ÕC§‘,äEâ‡óFY¢*ÿPÒ¯î¾&±B-$l”%b‹Ï¯¶T%¸>~$m;iå@+gÚqèç Í<´2×ÝÆêÒ¢šZLi ßFu0;s 7¦/Õ£”5úLÓŽX"i˜edþö,®^º€IM èVжÏìœ4rmUÖVåâƾY[ì«v÷Yßw«tK mæÓçr¬ø6‘Z’hBÌXmÍyhë'ñ_Ó“ ZÛ ÞJ´ít›œiç í<Ü«~|JVm>×+ç_Å{ׯáÉ3ÏâñSOÕ|V²Jä3i¼;}3ï\ÃäÔ1LLÇë/Ï|ëÏ19u¬®mÝùLžÇo>ú5¾ñÅÇ19u§Ï~³¦¾ÓgŸWËŒTÛ¡|ÃüíYõøg¾õ’é9çïÌáÇÿõ?ceñcä3iµüëß9·“Rí&Öv2(ÇÎÎÜÂë/ÿßÿ æoÿ ùLãG'UKÕ ç5mž¹UÓ>E±Ñ׫ôCiG#´}4’Ñ+ÏÁ×¾ó=rJ½¾ÑT¯E‘ýîÞÅé+jùÇNœÄ¡‡'K¤ðÂ÷/bvæžyñ%LNÃÕKêÚ¬oßÚý%ÃzõíhD3M8‰÷Þ¹†÷Þ¹†©'Må0{V­KŸn¤³6+íÐöѬ¬ÙØëÇèó§ê37+eÞ0+³ù ?—~¾õO{>³9¯¯G?7ŒÆR/;£ës¯Ã,}.Æ,P®]åWK"VKΕÏW̓÷ÚQuyZÙQ‡×Ç —s'ÆÅY´ß=vâdÍçBvWYX]ZÄë/[µ¨4ªÃŒX2‰X2…Áу ë#9žüœ©†Ë{FçŽ%“òÿIÕbÔLÍêmÖR=öÄI\9ÿϦñÌ‹²ÅÌHùlFí‡~ÜIë ‘]³²Ú~)ýgSˆ&RxåìWðÒ¥é¦ò¡+=ŠÕT.³ùnv>­|µ2kTR—ÙÜ1šÓݳô1 †C(ŠWž;£>ô&§Ž!–Hbþö,¢‰”ZæÜÓ§êŽW–Ïôg}ZGbvæþûOn4­O)«8±ë?“ž“Tçž>…'Ÿ~–êXm›õí80j¹^’óP›X"…X2e*£±V ­£UÙ5{øðW¿ÀÌ;×ðØ'M¾VÆJËÕK Ï¥Ÿï¤çkvÝÍ]³ë‡dÌö*œ$ƃØa!/vÄaÞ,M“ÚôPf)ªÌPÒ>ѧ¤È¢M€l–Z‹Ñ9RA#–‹"F">j«ÃýMù±\ٵǰ e#ÄÔ'qõÒ¼tiºÓMbìqhõ €-ïºE—a/Š2 r¦ydÎÒ(0ƒá6ÆNbꉓ¸wgϼøRë2Àžf.†Y˜:bùe´Ÿ0E(à ³sië éƒþœJ`Å×N‰“§|oV¾¬ô[9æÉ§Ÿí˜RB3GÌúhež´ é˜Y{Ï(} ƒášž5 n;gW/þ«K‹5AšÍêTÑêƒ7Cû|å¹3jÌ5’ µfAtg®_« īԕÜß*_© 0mXØì\f¢IM+A‚•€Î³37 ¿×—7 *lô¹Q€`†A‚Ž©ðp²Qú¶šþ§Ÿû¼afçVë' l­­gpt ?xçï1·ÓÆfÁ¿Æö•³_Á“g¾j:_öÃ@NÚ`×fÁ–Íê5šú±6’ÝúŸ_¶íšr#ÌÒ×&Ã>„ ÜÃVJ’i{%ª³åFÚòƒaö‡êË/äECÿI³òeÉpù=à SwÑ–ÏW%Ó]œF>wÊÓÊÈŽ:ÌÊÓʹSãbEÎf¾vÍ]·Bx¶Qp[å7­òÓ((2iÀd=Z²Úó›­mt.} ^íyŒäjƒ“Èm5Ð4)fA…Ún$S£ïµmmT¸QFç& lýØ'ñÚ‹_ÕâgÄüíY¢ye4ϼøf®Ë–¸FuõÃHNÚ`×$c®Ôk6ëË×ËŽçËMûîe˜¥¯Mìq‰úêþ ö ÄœšßUûgWù°†å>ºòf}øì)o¤ (Ж§•‘“ãB+çN‹9•·sgfgnáÜÓ§ðyEÂ(¯â“¶º´PóÛüíYÃÀÊú6Æ)œ{ú”iF’ ÒZôx•öýôo®ZÛ(P4Ð<Ðt3ÌÊ›n6ÞŠOžQÚ¶šV*ÛYÞX2…ñ£“3÷Õ¥uî‘ÿÖíøÃxìÄI¬.-ì,³Òó6’“v^4›KfcH37ŒÖµ›äºò ž ÎìuÌvâ6 άS$„4á+̈(åµõ¥‚œiymê|URâfmRÊ—…Ý<­© gOM8R9IymŸm¦Pb葖׎ƒö­Œšg&©ƒ¤|39[)O#gÒqÔÊY;Oš‹~’Ȉt®·Šƒ33gs†“ä3i¼þsxòég1~t²ÓÍi vÝ+Á™=eéS´|åß$å›ý¦øWÐÖÕ®äÌw³"VJîfÉítEBº"‡!a¹ b£L~Ž•’¤žƒ”Õ’H\?mŸiË—I=Æ*Vêpº_œiÇ‘vžÐÎC+ýÝK ŽÄÄŽ:ƒa7ùl‡žô„°`×Ná¥ï½ë×põâܘ¾Œw§/㩵QEiS¨›¡WòHÎoŸ¼ô ©±˜8';Hy蓞CñA ®¾)~b¤Ëu‡>¤z8„Fèà ŸÜg Ù±tH[m;iå@+gÚq¤'´óÐÊ\ßK(KZ † ŽÄÎØ“Ÿ¸]T#QÕÒãX̧þÑ´‰´¼ö‡žP±d kK‹xÿÇåKxã»®–ÿõ/þõÆÿŠ÷®ÿ5nL_ÆÒü‡¸1}W/]ÀcOœD0 ?0_ùÛøË¿x =¡ÆN"ŸI×Ôwõâüöï?ŽJ¹Œï~ã«è•ó¯šÖ«mc>›Ák/~W/^ÀÒÝñÛ¿ÿ8^{ñ똿=«žO߯ñ£“øî¿û*ò™4zë>ϼs­¦¬þøÓWð—ñîÝžÃoÿþã52}å¹3øÉ_ÿùlFÍêpcú2&§Žã•çÎàsxª®- ÚvµA‘§™l¦ÿâ5Ãcõmvæ^yî F?¤*2J;8ŽÃ¯oã/ÿâ5U¶fm?÷ô)<~ê)œ{úò™ *|Yí·~¼”óýú?Çoÿþãøî7¾Z÷ŒÒ38z°nþ)í®ð<þÿ¯ç1zø!l¯¯ídÀ8^×Ný¸˜+ŸÍÔ—~>ýúÿ€™w®àêæž‚~޵©Ñg­œGÖµ__¿Q[š¯Ý˜ÝËáÝWj±q;-Ôýå(зÓþn­Z÷gWù…¼hXÞÌ̬¼Y˜4/ÙR¾Q€^Úò$2RB‘˜…$±k\håÜ©q±"g£òvÎ]¯ Ï¾ Ð(»@£Œ úÌ$ÙÌê5Êœ Ïn Ïh`”5B_¦QÖ³sê³`˜eëЗi–=BIi§ÏrÑHæ234«W›©D[þŸ~îó5™Eµ]‰78zs;e£‰”¡ìµçÓfÅ0›‡fóï±'qh'Þž¶ýúv6³Œ"Fò3ˆBš±CÛ'’l8J¿ŒÚo$}–ýù¼˜¹ƒ)}mBq®×ÿU½íÂÄ`0`–}aui¯½øuÌÍÜ4Ⱥ`ž±C_FÂJ[ßcOœÄÌõk˜¹.¨mT¯Yæ³ÌzšùÌÕ¯ÿîôÙo"šHᕳ_1ÍFbtN}† ’ Fíµ#3©ï 6³H³¬7¦¯ì}ý;³uÖ$ý9çïÌáɧŸ­[²ÔÏÃFóÏ};I³¨èC¬‘ËÈ8c‡¶Íú>‘dÃ1êYýú¶4:Ÿ—2w0¥Á`0BŸ}A iv#Œ2wÐd_з±Yæ}Fš¬Fõë¿3Ë‚ažd7£IöˆÕ¥ê,F™o£zõY7Hd?8zó;ŠÞÄÔ1¼wýZ]Fý9õY1ŒÚi4_š¡o§Y#™e€¡ÍžbÔæFÙošYûÉĨ~ÚŒ#n€eä`0]‡3rB’¹ÃkÙ =V2rx.NƒÁ`t3ƒ£&»F½–}Á`´féc0]‡—-} ƒìqKß`؇0]ß †‡IWÈ2‹0 ƒ ¶‘ƒÁ`0FÉ8 ÝÅØ(3G³2FǼ¥ ñîN `íñZ§y%6Ý[&¡&Þ»~­&¥Óéõm]]ZÄ•ó¯âÊùWÕP´õ5;‰hÛMŠÙ­Ü­´ÍÊÜѷɨmÚñPR‘Z¥ÙÜw{f¯ãKŸ’LžÁ`0¼F,‘ÄöúªºCÉÌ …ÔnÒ0+cÄêÒ"®^º€ñ£“˜œ:†™ë×08:VsüÌõkxüÔSr6‰‹?À“g¾Š¹™›xýåsxæ[/Õ´áÞY'÷÷£ÊWLÏÑHfí¾zñøÚw¾@β¡(e§Ï>_76ÚÏ÷nÏÉáW–sÆONSÓ²) Ž"÷FmktŽÓWjæN…/ã­‹Ôþ+A‡õòzå¹3ò\Ù‰;gÔ63Œæã+ÏQë:}öyU>¯_·T§ØNËݨm¤ŒÄÔ'qïάº)…á.#û Ä’Iõ;eÇSú †ÌÒÇ`0¼ŽKŸg|ú¢‰”ªøÀ[æe0 ƒÁhŠg,} ƒaÌÒÇ`0¼NWXú ƒÁ`0ô0¥Á`0lBÉ“šÏ¤kr”¾;}ÿãû¶æµ—Ì®XfF1×Zí›]yWiêñRl7/µUK+!THrTÓcw¼Sú Ã&ä fiÌß™Ã{ׯá½ë×7¦¯ ›Þ®ÉŒÑ ³šìNCZ’OµÕ:ÛY]òh^j«ž™kÀ f¹ÉÃj>d3Z“nÃ3![Ã>„ —®K°Z’ýSA©Žø< ykÇ­”$” !?‡¡0ýq4}VÚØjy³>šµÉ¬|º"úF™É‚¶¼v<õŒÅ|TåIdòsè r(T%„ý\]]v ­œ;5.VälTÞŠŒÌÊ»•ñ£“˜¹…{wfñùSOaM×,ß®Qž×É©c¦¹v•¤žÇ?ü·w Ë?öÄIÃܦJnÖÓ—ÕWŠuì…ó?ÄÕKjΩÏ×:gV­GŸÿWß^}nT³\©Úþüæ£_×ÈHŸ£ubê¸až_Úz´ò0ê§ÑøèóÝ}nÖg£þ˜åöÕæVÚº¶´h8'ŒdÛ¨­ƒ£cuyqggn5úö“æôUP6ýÜûúw¾‡¿»~­¦Þù;sêÆM£9¨Ï¯Üèý<ÑÏñ×_þ6þ‡ÿÇ‹¸ÿñ|M}{ ÏXúö‡8ŒD}DûC»´Tùq#QŸåã”VØKÇÑôÙ®òf}4k“Yy3åØL´åµã©‡¶<‰ŒÂ~ /Èã`X—]ãB+çN‹97»¾Z•©[™˜:Ž{wf±º´ˆÇNœD>›ÆìÌM5}™>ßn£<¯ríj󔚕7Ëmª<¼c‰”ú æE9½ÖúŸ_6<§6穾…ôƺé±ÚܨF¹RµýÑËÈ(O¯QVÚzŒúÑ,0IŽÝf}6êO³Ü¾J[GÇÔókÓí§YÛÍh6ÿÌò&“äôUë0˜{ïN_n˜+Ùh6˯l4OŒrú*ýþñÄ9¡½Š÷îª]ˆ™%ÐŒ4/©¤ä«äeË}ýVÎᤌ¬ÓîvZi#©œ­Œ#ÍZ™‡vŒI'ÑØ=ˆX"…{·çÔ Bú|»ò¼’äÚmT¾YnS%Gj,‘Tƒó|ÙôœÍò«ÏJ’+U/#³~Ðä-nTOýqæãÓ,Ç.IŸµã±'Nbæú5Ì\¿V“Û×ý±úó4k»¶#y˜Í¿Fí'É髌 P;÷å 6s’1m4OZÉìU˜ÒçrîfE¬”$ÜÍ’/s¥+Ò ËE²c– "6ÊäçX)Iê9HY-‰ÄõÓö™¶|YÔc¬b¥§ûÐÉ™viç í<´Ò_·K&ñÞ;×0~tÒð÷Fy^ý¦ÏSjVÞ(·i#Çú£Ä¹mõõ«Ïj”ƒÖ¬?ZšåµR‰<ô2m–c—´Ïfý‰%S?:‰Áѱš¬J[W—LóÑêÏCÖv󼏿ŸÕœ¾Í çfù•µÍ,§/m}^Ã3qúަüHÉ|åÒ¼„Ûi€ì[D³LôwkUKÇÝN HóuÜå8³>§+bùª¤úI)ml$£å‚ˆý!!?gZ^éãí´€X€S¿3k“RþƒŒ€ŸC€“—ñ– ¢¡ï•" Åï«$Èu4+¯ŒájIÄCIÍxêùÝ]·Ô…¼ˆ±˜¯aù£)?Â~ W…©LSA#–‹"F"¾ººHê0m;›ÉY/‡fåiåL:ŽŠœõó„d\´ó°™Œhæz«°8} 7’ϤñúwÎáɧŸ5}Q`0Xœ¾=J€ªzvYP• >h› p‹ùˆ—ÖÃ>ŒÅ|ÄK}i^BI$’‡lYð~Ž|CÌrA$VÒE§¬ÖAÓNZ9ÐÊ™viç í<èç:ƒ±—Èg38ôð$SøŽÁ”>—SAµŒ e‰jç1 [ŸHÎe‰ªüCI?Æb>Ä‘µv© a£,+<$üjK@U‚ë3Åж“V´r¦G€~žÐÌC+sÁØK ŽÄÎ<ÛzE † ž ÙÒ­NÐëå´»ÍÂkØÙ&šóÐÖÿhyØ sBè.`W´ít›œiç í<´Ú_ƒÁ`Áî² ƒaV¢÷ki–M¢•ìnË, oIæ†FeÌd׬߭þÎ`x fés1fNòv•_È‹TÁoi˧y‰ÊŸ¶<@ïèO+#;êðú¸ôrîĸ¸%z¿¢…æjPY³:¬ÔoDZN Ïœ0sýZ]ì?=fefgn™Ê®Y††f¿»Mn F+øÿìÏþìÏhHW$d;àw3ö!LèKT€õ²ÜÆTC‚¯è7ÑÒqëe eû9 „É ¨Êq ÷öËcŸ­JHôpê\bìÂ>d«ö_{«K‹˜¹~ ù¯aéî‡øíßWοŠ×_>‡žPãG'‘Ϥñ\¾„7¾ûçX[ZÄàèÖ–qcú æoÏ‚ã8,üúvMfõÿÖgþYM]“SÇñúËçð—ñîÝž3<ö?~÷B,™ÄøÑɺ¶¨ù.¿;íêÅ umQ²üå_¼¦–}å¹3=üGÖÕýÊsgðÛ¿ÿ8*å2¾û¯bðc˜yç®^¼€ŸüõÏfT…ÎèX}-¯½øuSÙýúÿ€™w®aæúÿn(—f¿[‘ÛàèÁšq8ܘ¾ŒÉ©ãxå¹3øÜž2'mðýä]¶©ƒa ­¾°å]ƒÁ°m&£¬f e“0«¿Qv}Ö åØ¼ó÷˜›¹eØ6£ï̲_(õ}÷GïªùU•lFYŒ²M¤7Öë27e’h”ÝFvfr±CnJó™Œé¸4:Ÿ¾Þñ£“M-Ÿ -ly×ÅÐäf؇v·lØO¿ar»m&£¬«K‹xýåo«yG›ÕÑè7£ºNŸý&Þ¾‚WÎ~/]š6¬cþö¬aÛ̲04j‹Ò'3”ß{â$®œÿÈgÓxæÅ—0g®&‹‡B£L´ò×ÒL.vÉ­MŽ‹þÿúóÑf`a0¬Àžf.Fä8g쯽%A7Rä¬nO·þQD’q-fY Œ¢þ7Ë&a†¾.³¬rÙœ{ú>ê)ö5ÊÂ`ÄìÌ-µ>}¿õY”¬±DJý÷ÀÑºÌ f™$´eæoÏÖlê ‘]#¹Ø!7m¶ ý¸e¿h–ACßGÃ<“‘C‰?FB¾*©ŽíƒáƉáõ(å´Ç-äEä«’À–ö8#´™ íE‰G3öR$l:äOÉ2r´Ž²yâôÙçÛ~îùÛ³X]Zd1FWc%#‡g–wiv'jY-‰X-µï¸|U²m'¢Ÿk=sƒž€õp(‹†Â6ØFŽŽ@˜øƒÑ!GSÇ;rîñ£,kƒaÏ(}݈’K•Ñ^äÜ»²¶]¬¿p0{™Áу{6)=ƒ±Wa>} ƒÁ`0]³ô¹˜X€3Ì»jæ‡D[>äç wç+òæÒò%(¬Å8 fë¶|U„©ß£Q´FåiedGfåiåÜ©q±"g³ôtvÍ]ƒÁ`ÐÔ¾6q4å7|ÞN ¦¶±˜Ïð³l´å‡Âœa~T³6™•_.ˆXÈ×—õ;™Ò–Oóæ~’´åiedGfåiåÜ©q±"g3çb»æ.ƒÁ`0èaË» LéÑžæ%õ3‹Y{hë·r'edõ˜v·ÓJIåleiÆÐÊ<´cL:ÉêÒ"®œUý{wú²#¹[›åè5;†”÷®_k9\ˆÑñN·ÛŽãì¬G/}ßÝ”×ר-Vó![gF{ð”Ò§L$åß$å›ý¦DR§­Ë®J3îfE¬”$ÜÍRäV­HHW$,ÉŽY.ˆØ(“Ÿc¥$©ç eµ$×OÛgÚòeAR±Š•:œî@'gÚq¤'´óÐJÝF,‘ÄÄÔqä3D)Œ?Zg7ó»â?/òw wxﺜ£ñÆôe¼;}™èBlTFQÚ®^º@t~½’gÇ …„€ÏÜßÉŒ±˜8';Hy蓞C±Æ†“Qv!›ùyé9œð!ÕÃA !y8á“ûL!#Ò¶ØYm;iå@+gÚq¤'´óÐÊ\w±¤LXÉѪ„™¿=‹o|ñq¼þò9rŽÕo|ññ:+ÉìÌ-¼òÜõ·|&·.^À¹§OáÊùWÕcß»~ Óÿëyõ>¤­O ˜¬?ŸÖz7;s ßøâãª%F{üëß9‡|&¿¹rI=ç+ϼþò9œ{ú”Z¯Q_^yî ^yîL]& ¥ ÿý'7êäa&m»µmÖ—ÕËI9îïþOxíůã•çÎàÊùWñÚ‹_ǹ§O!ŸI[’›Ñxg&#ô²ÐŸã•çÎ ŸI#ŸI«ã@:³¾Þù;sê|2j¿ãlÖnýofr69ž»½ŒÄã§žÂüíY¼þò¹š ñÚ‹_W¿SpÀ[/àµ¿Ž·.î*xs371;s ùLZU蔺޻~ ³3·ðÖÅ xå¹3xëâõE_w;p²Ó<)eAvø' 쬔&]Z ËÊ éR_š—³[ä«dK}eABÀ'Ç)$e¹ úµò·ÿÐj4í¤•­œiÇ‘vžÐÎC€~®{…fùxõe•|¶F9\µyf²|¹Ê1Ú\®Jž\ýñúúõ4ÊÛ(On£ü¸f2Ñ·û±'K$›æ3Öž+–Há…ï_ÄìÌ-<óâK˜œ:†«—.X’[£\ÇÚñm–+ØlnCŸ³˜fþhÇYŸÙ(²2­äC6çFí&Í]l6þíDy¹VÜc¼†g”¾ñ£“˜:qùLWοŠñ£“xæ[/!Ÿ‘ß2V—01u «K €¯}ç{jº›¹™›=ˆ5Ý䜜:†ñ£“ªI{bê8Þºx÷îÌbrê Ù4^øþEÜ»S«àiëv%3 e ©:d!/?œ7ÊUù‡’~5£ ‰j© a£,[|~µ% *¡#™bh m'­håL;Žý<¡™‡VæºWh–W_Øugyíůcn榩A›/—ôx¥ ÚÿŸ>ûMD)¼rö+X]Z´œ'WŸ—&ï¬Y>c39)òŒ%’5÷m+rk|žúñµ" ý9{â$îÝžÃÜÌ-<öÄIªùc†Q½Fr1“••qnÔn£ÜÅfrîtŽb?'ì_)I†QÜŽg”>@öX[ZÄ¡‡w#±+üÞí9¬i|þ®œU5á+K,‡ŽN4¬rêæfnb@sÁ_9ÿjÝ @[·Ó(K‚‡äC5õQ-=ŽÅ|êM›hýœªÿÑ>?u{RAºtyvÔAÛN·É™vžÐÎC+sÝ‹4Ëo«Ïg«Ï­«Ï3K’/W9Æh9Ììx+ùbòäêÛ`”׬ Fí&ÉgL’‹×ªÜŒò&ëë5“)ÚsèsÓÎ}»”|ÈF¹ÍÚoÇ87jw³ÜÅ´ãæ$ûCòUù…Ö‹³<“{×ëX ÙbvŒY Úòc1Uh³òr¨ú9a–¶|£Ð ¿; *O"#9#‡ËE#_]]v ­œ;5.VälTÞŠŒœ ÙâÖÜ»ÌgËð>lþØþ^V$uŸþ¸Ñ=Ô ötî]¯³Q– }§J Òô.äEŠäç -/ïÞ¬o@Þd‰Í¬¼Yòc¥€¶|#/Úò$2* À/A’`˜w×®q¡•s§Æ —3mþiZ™îU:™Ï–á}Øüq–ª$»ÝNøæ%*m·À,} £ëp«¥Á`¸ ­¥o!/bˆClg]Wÿ™Yú ƒÁ`0öúå\/ÄåÓã½3 ÆÁ(cƒœÊ>¡Ý½ëµ¬"­´kvæ–éÿië²—ŽÑ*Léc0Œ¡Ífà¶ìÚÏ^Ë*Ò J›”>+ÿ§i«Sí%ÉÁ`4‚-ï2 †Mä3i¼;}3ï\ÃäÔ1LLWC¡o[#ZÉ*bÖÞfíkÔ¶X2…ÓWðäÓÏâÆôÜ»3‹ÏŸzªî|/œÿ!Þ¾‚WÎ~/]šVë3;žýx*ý%ÛF~“Fç É¡ÿͬ=íð‰d¸Ï(}´q¿ £¬.-6TV&§ŽáêÅÔe3=ˆ+3·00}ƒ£c»ew,RÚåFí9”㔥RÓsÔ£E{þÇO=eØÒúfgnaV—UD+}›­¶ovæž9ú’š¶K J¬=ßÕKd«ØNm}FÇÓ*F$ãùø©§põâÔlÚcg®_«ÉzBR#yéË+Ÿµçž¿=‹ù;³l©· aqú F×Áâô9G·e…˜¿=‹«—.`ꉓ¸zé‚êÓÇÚÃp§Á`0¥Û²BŒÄÔ'qïÎ,žyñ¥Ö+Ücía¸ féc0]³ô1 ¯cÅÒç™Ý»«K‹5;£ ƒÁ`0äxFé»1}ówæðÖÅ ¶G†g0 ƒÁØëxΧonæ& Ù´¼3êü«5»¥kàøÑÉ®q"f0 ƒÁ Á3–>…ñ£“˜˜:¾“Â'…|FŽC41uƒ£ñÂ÷/vº‰ £KY]ZÄ•ó¯ªïN_veÞÚVÛôÞõk†y`iòÔšß.µ‘¤íÌìTneYØI«2g´Žç”¾h"U“"gbêX§›Ä`0ä ÈSÇ‘ÏdM¤0þð¤+óÖ¶Ò&%$ȤÁ]}ÞÚFèóȶ+·n3´C)C#G·åV&‘…Ý´"óNñ»⿱˜ûU*Ï,ï*˵“%Où·‘\ùÌ–v F'ˆ%S˜œ:†¹™›?:‰ñ£“˜¹åº¼µêÚ¤Ïék–³öõïœC>“ÆÏÿÛuTùJMÛæïÌÕ¼”õÓ(¬RViãÚÒ¢¡|ôõå¾1}Ù0ÿðü¹ÙjNkë¹1}…¨Êüæ£_×ÈѬßnË­l„QÞ_«2ÿWÏü ®¿ù†*oý9ieΰ÷«¥ ƒáqÜ–·Vß&Ä9k•ºNþ›[W^Kzc½®]fy‡µõ*ʘ>WìüíYõû|&cšSÖ,ÿ°^¶ÚzµíTÚ1þð¤é8iÇ@/G³ñu[ne3ôy­ÊüïÞþ+Cy[•¹[X-É!ëÊ‚äÉOLéc0 ‡i%oík/~s37mÍ[«o“r>í¹NŸý&¢‰^9ûÃs7kÏ—ëÚE“wX9‡Q? Ù´i9³üÃzÙ6“_³q2“#éqfeÉÕÉÜÊFÇ´*s#yÛ!óNâç8l”%¬”$Äz¸N7‡¦ô1 F™œ:†ØNÞÔh¢>ßêìÌ-œÓå­]]Z¬É[;;s ÿý'7ˆêÓón¿)í¹®^º€™w®Õå¬5+¯gàÀh]»&§Žaþöl]žZmW—0{Ö0O­ò½þ³¶\#ô²5’Ÿ¶frÕÉøYY­\‹tNiÏÿŸÿ¿ßm:ì’¹‘¼­ÊÜ-ìqÈW%¤z8¼§ó±Œn&à0PËÍLÊ´åC~aƒ`ÞùŠ„ªD^¾$Ȧn=†oB´å«"¯÷!¤+O+#;ê0+O+çN‹9•·"#§–OÜš‘£ÛòÖ¶&Ûö²Wäý»µ[Ê‚låP·qc¹ b!ß>ýhOçÞ=šò›>Hô¤y ·ÓyPF¢äÍ¿[«Z:îvZ@š—¨A9Έ±˜Ï°ÏJ[-?æ ûhÖ&³òòD¯/ë1–myíxê¡-O"£TÃHć墈‘ˆ¯®.»Æ…VÎ+r6»ìš»{•nË[ÛN˜lÛË^”wU– '|Hó– "•žà<£ôu3eABÈOnGÖ*¤Šr¾*!Fh«. J]ýVÎAÓgÚòViw;­´‘TÎVÆ‘f ­ÌC;ÆÄË(Ëy ûa²m/{QÞËCùþ” rHW$ª{¢`JŸË¹›ðUQ~» !]‘¶ùª„T°¹Õq¹ ¢*+E²s(¦m€üa¾Z±R”ðh_óöÐö™¶|Y°Tðc1k«•:œî­œiÇ‘vžÐÎC+ýe0Œv¡_ÎõB\>=Þkq—ð™û;™1ó!À‡ãtJ"é9¿/Ò—e‹;©‚x8áCª‡ƒ@ènz8á“ûL!# ¥]uж“V´r¦GÚyB;­Ìu7Òɬ ú:ìʴЬmú¤çµ’Õ‰þ‘ô½Õsµ+ë…çÖf\yïú55Ë ÃûxüöÚ8Ùiž”² ;ü“.“ÅÆb>S'~=ƒaYy1sâדæåeÄ|•,®QY-h~Ž\©¢ñ­ù[ßueµšvÒÊVδãH;Ohç!@?×ÝF'³.ÕA“µ£•¶éã°‘œ×JV =Ng’Ðö½UY¶+ëE«çÖg\™Ólfx¶¼ërªâ®……”²¼œ†…¼HüpÞ(KHWÈ}¯JúÕs¤‚\S%CY6%µøüjK@*Èa¹ ºÚÜNÛNZ9ÐÊ™v•ºiæ Í<´2×݆6SÃ?ü·wðÌ·þ“SÇj²4˲AšuAŸyÃ(ã‚’!Ã,»i³l fÙ5´™9ôõÉJŸÕÂ,c‰rœVó·gñÕ'~§Ï~Ÿz ¯¿|®®¯úc”lW/þ_ûÎ÷¯½øu|í;ß3̆¡dÑP§F™/äþ×Ë@][õm»w{N †}cúJÝñÚ²3ׯմý…ï_4í§YFsQɸ2;sŸz SÇvú¿·üóH¡‰Vâ…û—{Ÿ »K‚4>N#QÕÒãX̧þÑ´‰VÁrªþGûüÔíI¹–DÚ:hÛé69ÓÎÚyhe®» mö„ÇNœTãši³ 4˲A“u&ã‚Qv }F̲%4Ê®aV¿™¬H3–µopt ?xçï1§Y¾ÔöÕ¨>el¦NœÄ{ï\Ã{ï\ÃÔ‰“¦Ù0™®Ý_ª;¿QÍd­o«¾?Ï|ë%\½tW/]¨SøôeõmoÔOš¹¨Íò…3ÏÖºîò"ñŸÛB@áÝ»+ƒÁ`x}–f™,h³.d\h–]èŽfYh²kÐd!ÍÊ oŸ’2Lß×Fõ=öÄIÜ»=‡¹™[xì‰æcÓèüJû›ÉZÛV£úò™tÓ¥Ôեź¶“Èv.2öly×Ål”%b++åÓ 00]—ºòf&í’`l§-oÖ€¾<­Œì¨Ã¬<­œ;5.€=ãbEF^cpô ®ÌÜB…çÑ ­>Ww² Lì,ÿ­.-Ö(BFÇé1ªÇèÜÓ—ë¬}W/]-< ²k¨ç¸øƒšŒ j½£Õl SÇÕ²FÙ5¬ÊªY?Ú·º´P“õAß×Áу¦õ)Ju,‘B,™B>›©­LGÇ0p`´iFŠF²Ö·Uߟ×_>§3~ýås5Ö>}Y}Û›ÍÒ¹¨0{ówf›æêex ÏdäèÆàÌŒÎÐ,83Ãû¸5#ƒÁ`b%#[Þe0 ƒÁè˜ÒÇ`0 ƒÑ0Ÿ>C³¤Í°eÙ/äên3ÚC»“—3 Æ^‡=Í\ ó%ë<Š'£ý„»8/ƒÁ`8g”¾…¼ˆ@‘¬¬6¢ÿJIBºB¯<Ñ—WòŒV$*e-ß`Ç$³ôuŽ4/a¹(R;É2ìC¶ô± ƒažQú¬†s( Ê fV«J°mG ³ôue÷.P»œÁ`0 /Ã6r0 ƒÁ`tLéc0 ƒÁè<³¼ëuÆb>Äõþy yÑtéÚ̧Ïlsmy³Ôf£ÍÊ›í²4 I[¾Ñ«ÑÎÚFåiedGfåiåÜ©q±"g³ÏvÍ]ƒÁ`ÐÔ¾6 p†5ÒÍ) ƒÁ`0­à)¥OI=8z«K‹Mó=6*£ü6{ãG'‰Î­­‹äüvQ$„(ÂWh­A¤»óUÉÐiÖ%ï*ÍîbÚsÐô™¶¼ÕcÚÝN+m$•³•q¤C+óÐŽ1aÔ2öaˆÉ”Ápš|Ur}lQÏ(}ï]¿†¹™[ˆ%“=ˆµ¥E51µ7¦/›–Q”¶«—.àkßù^Óó땼FuÛÉݬˆ€¨Š'È\0ÓJø˜ª„T°yȑ傈ª¬ÉαR¢˜¯–D¬%<Ú×¼=´}¦-_$,$|ÀXÌÚÃÐJN÷‹VδãH;Ohç¡•þ2šöÓ½œ1Œ½‹g”>…уxüÔSxå¹3xýåsˆ%“8}öyÌÎÜÂéˈ%Rˆ%“X]ZD>“¼uñîݙš‡'ñ…3Ïæfnò™´ªÐ]9ÿ*NŸ}ï]¿†X2…ùÛ³˜›¹‰‰©ã(dÓ˜œ:†+ç_­©Ûi>yi˜&dÍẊ傈Ãqr%1à |Î*ÖBƒVKò›éƒçp‡4/©Ç‘”@õ†• ÒÉÔŽ:hÛI+Z9ÓŽ#í<¡‡Væ:ƒÁ`0ÈñÌëôøÑIL8‰|&ƒ+ç_ÅøÑI<ó­—Ïd«K ˜˜:†Õ¥À×¾ó=Ä’)²‚7¸cÔ29u ãG'U ÞÄÔqUAœœ:†B6¾÷îÌÖ§­»¸Ú€ÓÍ( ªˆ—Ébc1ÊÙÃv0ìÃXÌGüpNóò2b¾*Å0, ²ÍÏ‘['– ¢áf#h»ë i'­håL;Ž´ó„vôsÁ`0äxF這ë×°¶´ˆCïúàÅ’IÀ½ÛsX[ZTýþ®œUµÆ)>{‡ŽN4¬rêæfnb@³Œ{åü«u¾{Úº¦*î.“‘²Q–ê¡ÓHò"ñÃy£,Q•(éWw/“X¡– 6ʱEéW[ª’¬P¹ÚvÒÊVδãÐÏšyhe®3 ƒN’$ª»ìB^týÃÕІíht Ù²‹![”ŒËE#_]],dKs9»=dËÑ”ËEѶì9nÆl~0 {iw'³{y#<çÓ×MÐú6Ñ–/ Æ)ãÌ–×ÌÊ—LæxU´§|£~Ñ–·Ã_Ì®q¡•s§Æ°g\¬ÈÈk¬.-âÆôeÀÔ'‰"èWþ?9uÌð÷Ù™›xüÔSî*ƒÁð ÌÒÇ`0º§,}³3·0sý&v6}}í;ß#Vüfgnanæ&ž|úYä³™:·å÷|&ƒg¾õq›˜¥ÁhÌÒÇ`0]F,™Äc'Nª^øþE²/ð{ׯáÉ3ÏbptLõ žœ:Žg¾õ’ú¹Âóè ‘Ïd0gãOÖüþä™gñúËçj~c0 ØëƒÁ`8€ÖÂ7{³3·ð؉“¸zñyãØK—¦1»>êôÙçñ؉“ø§Ÿû¼zÜäÔ1|þÔéšß•¥]ío ƒASú Ã^ùœªøå³õûÇNœTÿK¦L3ûœ>ûMD)¼rö+ª¯Éo ƒa[Þe0 yïú5ÌÎÜÂøÃ“j֞ɩc¸šHbþö,&¦Ž78zWfn©Ë»W/]­ƒOœTÃ+3·00}kK‹u¿1 F3ØFƒÑu°- ÃnØFQ‚Î2Œî`£Lž‚ŽÁ`0ÍñŒÒ·Q–X´~£‹(µï…™Á`0ºÏ(}{%x+ƒÁ`0 F'`Ž ƒá«;.Z9žÁ`0ì‚)} ƒá±DÒòîÚÙ™[jJ7ƒÁ°Ï,ï®.-"–H"–Luº) ƒaˆ>SÆü9ÌÍÜÄé³Ïã•çΨñúNŸ}¾.#G>“Æ»ÓW0óÎ5LNÃìÌ­š J/|ÿ"fgnáõ—¿g¾õ瘛¹©fú`9y F#UçÞ29u ±LÑs}a0ñLFŽ+ç_ÅÄÔqÌßžE!›ÆÄÔqÌ\¿†‰©c¸wGNm¤øÎ\9ÿ*³ô1 SÚ‘cþö,®^º€©'Nâê¥ 5V@§a9Œöà…ŒžQú Ã.:‘†í½ë×pïÎ,¦ž8‰ñ£“m;/SúŒöà¥Ïs>} ƒáE;q’ùÝ1ŒŽÂ^ÿŒÿ{wÚF¶Þü?’b;«µtMˆ/ÄØÄ‚kŸÌUŠó´‰R0ä>øÁñ>Ün ÎÃÍ ¢”›§@6ÆË}¸ñRbÚPç)Š¡ZHÀÐh¾Ä¬EEi¯ŒMKå`#·QH½’+ÇŽmM”™Œd|ÎxlYÖÿËÊÒ7gΜ™h>9s†ˆˆ¨0é#"""ªLúˆˆˆˆê@ÍŒéëp;àv)B±¹mK¹ÂÍ&­Mœj[€>Sv¹¥\¹mn—‚·x.­-'³ÍfEeãͶѬNfñï6U¤7vßÜcÖ²ñÆýYªÜ ÖJñ"mäv)8Õ¨àݦŠSÊ®²ìÚ/²í\­ýb¥ÍÛu쑼šIúÜ.Þñ$LÓäÄ¡,çzÿñÿkËٱͲñfÛhV'³x³¤Õ¬-dã+‘i#—£—ÙRË&"víÙv®Ö~ŽÆ~!"¢ýáåݰ¹#7­D惪ÿ'ªÒ ¿\}dË·²Žƒl#«Ëv=­ÔQ´­ìG™}hå8´cŸQy5ÓÓW¯’ky¸Àv^…¯Y,GÏlNœ¹mÞ†½çðYYÏc[Þ¼[Ç›O'fÑÞ™ôFoÞ«ø²eïúÈn³lü掊Ժ —èp[ë]²RÆAo—l;ËîGÙãDö8´²½DD$Žß¬Gœv©Ñ%±§:ܸÀ÷¹\’(º­7Fpˆ¥>NL4Aô5;à=¡`GpÞp_³£°ÍmdÇ¥DÙ2dë)Û²í,»eÙãÐʱNDDâØÓW\ °-ñ”ÍÛ*Ðè;›kûÿ3+6h¾µÉoƒ"Ÿù ¢Ñ© ·-v©os§ÐƒæTÄ“ª•õ¼ðS 6öyÑj2õ”mÙv–ݲljìqÈë´·Ì– ð)JDn£î;cÒwÄmç?õ°ˆz·©Â{B®j)—>9¿ÛT‘ÙR…ã¿ð8õux”=Ç…i—ME{|þ´ºoƒ‚•õ¼ÔÓ‡M¶ž²í ÛβûQ+[æ8‘9­ë´7+ão‰èxbÒwÄYÛ$ûœMÙDÉêx+ÑõÈ–/2~­”·aÿw‹Ê–![Ï£ÖβljìqÈq|DD‹ß²DDDDu@QUÁQâ-åòX©Âøn¯S¸W%óAÕ'uíp;¤z~z»mi¹ùÌ2TxÓ‰i+-GG‡·AÁ™“¬¼ÏãÌI'>†º½N¬¼ÏóßÕ,Ù|àå]"¢cÍÛ H­Ôž²bu¹ýBÙú4V±µÉ&Ás߯LŸ<#ªÑ©à—MâmófCÕï–?ìm”Y°g?ÒÑŤˆèóžP¤®ZèIŸÅåöCjèú§žÚSâãk3T¤7öWÏ&§\]3[;ØÜ©Î6Ê,0é;î˜ôa2Ï&û&.¼vŸï>'{Tz0ÉcÒw„iSjÐáÛÎæ™“Žì'7ÚøhH§–ñ2ò¸ØÎnÅØÖ¶öjW™ˆêHÍ$}ï6Uáç~'H´:1©ìrÚ:7v u£K¥ÉO5*ì髒ܶŠw›À™“¼Á½ZV?¨ÈÖØžtj¹l=><¸}¿ûöe¿Dls±Wº~³ÚU&¢:R3IŸÕËc5“ôÕ#ÑžM²Ÿv×âvœÖƒ,1öð¹=^\Bg·á±Q ]¿‰¹Ø+tvùñ2ƹ`?žOŒ«¤o¯»TÊ©Z©'‘˜ô€G÷îè‰_:µŒG÷~În?Ò©e=&·–Õ_Ÿ öW»ÊDtÌ1é;$n—Röª¹­ÂCéË1›_Éì—§l¼Ù<\Æ9¥DâsI™Íe%_i^­r¿Ò+Å˶‘e˜Å˶sµö‹•v6ë=±ëØ=Êf£SHÄfÐÙå/³—N-Ãíñ¢µ­½pé76ƒÓmíp7{°8Ÿ@Oà|µ«n«ZÙwµRO";0é;$nGÙ¹’*=‘Ãl~%³/)Ùx³y¸ŒsJ‰Äç’22ËJ2¾Ò¼Z²ñ²mdGfñ²í\­ýb¥Íæ"³ëØ=ªü>üá‡é]ï·¶µïzÿîã«KºDt´ñÖÄP®w§í&™±h2ã7wäË·²Žƒl#«Ëv=­ÔQ´­ìG™}hå8´cŸQy5•ô¥SËúx㸘Jñ{}¶8Ÿ^·hÙvJ®åñfCErM¼Ç#³U¸ëw彨2+ëy¼Û_Ç› U_‡¨ôF^¸|Ùm–ßÜQõe¬²RÆAo ×βûQö8‘=­l/‰«™¤o6:…çãxy‚éÈ}ÔJ*ÅhIÛóÇãBë/MòDÖo—Ã|< ™·.ð}.¶vÒ]‡Ö#:… 6îKôQ@¾f¼'ìÎÎëkv¶Y¢dKdW²õ”mÙv–ݲljìqhåX'""q57¦ït[;. |û¿½ŠG÷îÀíñ`èúM$b3xyw³nçã$©À³‰q¼^Hàl—¿¾: ˜‹½ä²}f|m*…ÙèÜ/瘋½BOà<Ö×2ðú-*û0¸”O±¹S¸9¤Ñ)v6w»t¸ÂOŸhm*ŒOÏ|PÑèTÛ»Ô·¹S˜Ï©ˆ'U+ëyágZ6:lìó2¢Õ2dê)Û²í,»eÙã?Ö‰ˆH\Í$}Ý~= ¢³»pgÜ£{wéÔz}ˆE§ÐéñãwßþnßPHð:»ýx[Ò[çôa.öJROà<žMŒc}-£Ï£ú~nß(z\’±ìƒ¶‡ôÍï6Õ²wsV²”Ë ŸœµI£Eã¿ð8õux”=Ç…¥Ö ÉŽhÏŸVwàmP°²žßsέj’­§l;ȶ³ì~ÔÊ–9NdŽC+Ç:ímcÇÚ\“V—Û™õ'ï–kjÇü§²ówÈö6r¾W2ª™¤bÑ)@O ¯ cñÜàõüœÞçM€ªõÆiseíî©X¾?Їç0Ì—Ýõ|LcÙÍ×,ŸÄˆö$id%+u’Ylù_¶8¥âÓœìó¯l²õˆåöc>cí1,‡}—wn[µ\×ÃÞÆZ»ž–¢ªr5_Ê奞-KÝ^§ô”-fËüôvÛ–ø·£ì‰Ù¬Nfñ+ëù²_,ÞÝ^ç¾ã3Ì¿`ÿì´K*^¤¼ Μt`å}gN:v•e×~‘mçjí+í\.ÞJ™ÅïW·×‰•÷y>m…ˆj–Ùwy%Lú‰•ə͖1;QÉÆ7:•²âšÕÉ,~c§üT.pŸPö¿7¿DQ.Q¨/ÒF.8éR°­ît*-Ë®ý"ÛÎÕÚ/VÚÙ¬Ô®cw¿˜ôQ­cÒGD$€IÕ:+I_Mé#"²ƒÕqUDDµŒ#§‰ˆˆˆê“>"""¢:P•¤/<6Šßüê „ÇF«½ýDDDD‡"›Áo~õîÿöjUÖ_3cúøx&¢úRénb""’W3Iß©Fnч„QÍ{·©"ͤˆÈ65“ôqVq""""ëxÁ”ˆˆˆ¨0é#"""ªLúˆˆˆˆê“>"ª ‰Ø ±ä²™]Ÿ¥SËãÒ©å]ïÙ]ÑQW37rQýztïhmkÇƒØ î>Ž µ­¹l¾½ƒÖ¶v ]¿Y6îeä ±´¶µãÑ|wGûÎÖòÜoµ›ˆˆhOLúˆèÈKÄ^á?L(Lî¾8ÿ1»}ÝþŠqp÷qDïùãqÛ˺~³ÚMDtèf£Sðú°¸0‡¹Ø+ôΣ³«Ïãl—ç‚ýE±ŠÞ‘ËfÊ–g”N-#Z†?ÐW±¬DlF™NáõB—¿ÆóÇ〞Àyø}z/þ¹`?±,Î'pa`èXü¸«jÒ·8Ÿ~*¿T‰ê—ñr+¼^Hà\°¡ï'ˆÍ`.öÊ4ÎøÝ‘Ëfqùê0žMŒÛZQ=z½@:µŒõµ †®ßÔ}5ð5ÿ …+·–»Ù‹\6ƒÅ…98ü×Ü¿ãÂÀæôd Ò©%œ»Ø·Ç‹éH¸¨¼\6ƒÙ§ðeà<~ŠNáÂÀÝû=>ÿE‹žp^þf‹ sz²³?Ná­!1|½P¨çt$Œ¡ë7ñlb]=˜NaíçÿÅ¿¼ü'œ öëÉß^?î¦#Oð¶äû¢œ\6[Õ}VÕ¤O+#‚IQýÚë¼H\xl_ ¡µ­ÝöòˆêÍtä rÙ,çèìö#<6г]~ø}˜Ž„‹b=j¯úû‹ý˜Ž„±¾–?ЧÿØ \ü”d]**ïùãq.öãÿn ~å/0 õÎk1ðÕÀ×úëÀÅþ]IYk[;Ö×2H§–ÑÚÖ·Ç«ÿ°{÷?+ =“Ï& ‰d%±è”p>SMUIúz竽ÝDTCÒ©e䲸=^ä²Y*\æ)[œOè'-A³»<¢zó6µŒ¿ü›»XœOà‡¿ÿõÝß(ôê­¯ßàtù›a„Ǿ ]ÿk<<ŽÓmíz´ãѽ;p{<€ØS8ÛUHä±™¢òÎvùñ2†»Ù«/ÿz!ƒ·ÿÂt$Œ\6«—£ýû<ÛåGìÇ©¢:¥SËxtïÁ~Ì~ì1,çÁíhmk×{#Í‚ý»’ÏJNWé»CQUUê9GK¹"""¢:À¤ˆˆˆ¨0é#"""ªLúˆˆˆˆê“>"""¢: =Oß/¸”B®¸”ã]¼DDDD‡¥µÉ&'Ð(wã.@yñâ…Ô”-òÀV¾°È/{¿ªö¶ÕŸÿã_±¹ö3œŠ‚&ÉÄóôÕÎÓGDDDDe1é#"""ªLúˆˆˆˆê“>"""¢:`{Ò×ávàMüeµ·‹ˆˆˆ¨&yüß¿ý³íå²§ˆˆˆ¨HOÎì=¡Ÿ™çŠŸŸPp¡àÌgÌ'‰ˆˆˆd59¤€Š¹”ì}€•¤¯A·A©Óà(\æ%""""kìÎ¥ªš™­®®"buuµèõ^Ÿ@2™Ô_Çãñ¢ÏJË7ÆjËF£Qý¿Ò÷ãñø®xc™Æ¿KË6{ß,Nôs"""Ú­\Ž`ŸÉdOŸ>Õ?ÓB{=88ˆ‘‘ôööâþýû…Bz#>}úT/{uuW®\Aoo¯^¶ÏçÓ—ÕÄãq¼xñ …°ººŠ–––]ñ÷ïß/ª³ö·Ù¶†B!=¦Ü߯¶*]‰1æ >,zOË´s»cöy2™DKKKQ¬ñE0ÔBÛZãk¯ƒÁ nݺ¥—¡õÊ•fÉ###.J¤ŒËjïkH©ÕÕÕ]ë‡Ïç+Š‹F£¸té®]»†x<ŽK—.! é‰léߥJ×ADDDâŒ9°û\­%VZL¹ÏùHiyÆóti®RªôœnŒ×®88ˆÞÞÞ²cµúŒŒŒ˜þMDDDö)ÍŒçêx<Ž`0XSîsc>R)ç(ÍUöbŒ×ò†ññq½|ãzCUÇôÙÍØhÁ`°*u """Ú¯ƒÈ¥¤§l9Êx•ˆˆˆ¨ image/svg+xml openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/action.png0000644000175000017500000000470112033133562024617 0ustar neilneil00000000000000‰PNG  IHDR szzôbKGDÿÿÿ ½§“ pHYs × ×B(›xtIMEÖ 9®ðP± NIDATXÃÅV{pTÕÿ{îÝ»›ÍfóÎn^dÃ+·0  ¦>!Šã£­¢Î”):Z”ªX™–)âTТ鍵 Êc#F4BHP0M²›l²¯d³I6»{w÷ÞÝÓ?ÜÄ4ÄŽN¿™oîs¾{~¿óïûÝüŸLX³¦!# æ4å™0#ÏÔÖÔtôîúú¥oõõZ*-½p Y;wî¶ÿdŒn_ÅΜé`Vk/Û»ï}ùÄÉeï¾÷e«µ—9ÓÁn_Å~L<~ú@¾)Ÿ%''“ôtnøù¼,+**¡(0öÍüI€›>0#oFG{{›L)Å[o¿)Ýÿà}Á·Þ~S¢”¢½½Mž‘7£ã'%ÐÔÔ´6#Ã((Š‚C‡iB’|ݡÇ4Š¢ #Ã(455­›[Z:£¤²ú¯U ÷WÔ,fÅåå·ýÇ164Ð’ò«Ëÿ'õõõo¸\™çy¬\±R5BãÊ+%žçár9äk¯­}U¥R÷ÞûË{Øñêöì-›Ÿ†J¥~lê]}Ö‚ÈŸ®Z´ØUTY¹ô¥äñ¢}}½, 2E‘™$ILQd Y__/{|ã†hM]]Ä3âa6ûs:¬¦nIdb3ó**ê–üld­m§Ø’å+XIeÕ W\„f‹™x<´w´+ƒ‘8V^VÎ{<˜-fÀcî1§(Ñ0´q:,­¯ãEV(¥¡H$¢ú݆G1<<Œœìl<ü›_ã™-[ˈ̈‚õNèÀ?wïþˆ§ü¯Ru™ÇÁç“Ö»†G·=öÈCê¹sfC¯×C𔇔àt9 º](ÌŸ…õüN÷`ÞÙÖÖ¾+"0Õæ—UU%èã[o½éFìÝ¿Ÿ)J¤ 3_üó6nÞܹp»Ñ?`…,‡!+2´Z-ÒS3 ×ëa³ÛÐÓcÁÖç^èl?Ù2ûŠ30Õ*kõ?õäÆì%µµÂÁ?ÄÒºZ F´žjÏïÇq1'“ï¢(¢ ¿ëÖ?ÂFGG®ùâôéV(..Öž;wÎÿ½JJjŠUZîlãá0ì‚ÝaG¢. y&>=v¡ph ø“ày9Y¹ðùüx`ÝCá(˜“çøÌp8Ä+ÑHÝù¶¶c@/EÀdÊò2‚EMÇ>Ë«ª¬OyÌ™=Í-Ç %Pž‚§µJʪl›ÿ°õÈþÝ»`sôƒã8*íg΢ñãOX0$]ËÑ>=ùi䲊˪j8ЧÔjͲ´Ô ‡ ªTå08ŽƒZTcÈí‰0iò#õz‚ ‚ À@åx|rìs8¬šîîîÐe•pr-¼aõ­¨]¼”ã … EРŽã DÜuÇí8Þrêõù¥!Üsç$?8B@8/@Vd„CáÈtðËÖÏSgeyâµqp :1::‚ä¤Pž‚ò£c\…ç·m+JKÓÒ“?{þÙ-úë—]ç í›8J!¨T‚‘¹’ŠŠ›¦ã\ª Hjšaž^Ÿ°`AI ‚Á¬ýý˜=s6¼>ïdÏïÃÌÂY¸mÕjÜs×HMIÅ€ÓŠ`(BDQ kŸ%óç‘.³eMbRêB­Fý®Çã‰^JˆRXZ:K¯Ñ^xŒ0I+Â+yžÏÈH‡Óe&Eg¢0 ! äÛ%5ê8¸‡Ü8yâ$²²siÌÂÆ§7cthdõù³m{02å'”aQO¾)&“éóÜT}õÕ/Yz-tÿ>J„g^{ùE¢KÐÁívÅz}¿Ý(Šðû8|è#Ì3:þ@›·üɺ¥%@@„N¿ÿµ(-_€ $e]ýò_ˆ*>¥fq WTT„ί¿®w¸Üϰ'© Àƒ!<Ï„LV;ÇQ¨DQ g›žÞ‚–Ö6s[{G¢¨V“÷öìà˽~xÐuÀx`Såçæ3½>ÌBñܼ/àCue5¤„®î¯F™JT™j¯]„/σÃî@ZzÒRS!Æ« Ë Bá ÜCÃøW—/½²#:è´?Ño±4ë’’tãcÞ'!ã_ž= @ ÊÀ®wÞs½òÚöŽžnsñü¢ÂŽ7^ ¶¶ž"ÕÕUìþµª»»z»kxdAqIZvvÀ¢ÃxøÑÇÁ¢,"ˆjšm4àæVÂá²#QŸ Ž@ê·XÎÐŒŒHçGÚ7bàrÌ9.VtÜ‘#G22ÀææãjkïÀÝÍÍÇÕþ€™Æ,^‘÷Å‹ÑÙÙ£1 ÿصv»ýÕÖæÏš6®ê1÷FC†Æ @¸¸+½”Râ²e˶;œvY§Å¢E ƒ¹yÙo/\XÒÆiawØ”5 ·Ð³ù‰_zyüÑOÂbé5[»»÷Çv%ùþ/;»º!Šjœÿê+ Éii)ó1Çv%43go¹åæî[WßL ¯š ¨/àC|\üd ìyo{vësµB9y…Ucׯ×ëŸhåÌÜÜò´tÃvA¤@ ø…Ï;ú޵§§€2%åበ" @÷Ž«Í3󢫧=]=Q£1 ‡ …ÜØ˜wâ2àëïí:«âI5µ[­n§s^8Åæ¢­sešOf @RnnNQõ5U ¬¬¬ï×ÿvྵ÷Þ86:–k¶˜qèƒÃËýþ€ €7F$2!ZÓŽu|â9Ý#Sc -=€Dñ±1 ð0 Kgt 8™>ñü>öoÙ¹3ùe2IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/add_user.png0000755000175000017500000000342112033133562025131 0ustar neilneil00000000000000‰PNG  IHDR szzôØIDATX…µ—[ŒuÇ?ÿÛÌœ™s™sën·§Ð.—!j%A1 ÔcѨ/„x‰šú$j$¾ƒú`D£‰ òâƒAßÀˆF£ÒDB0½h©µ7zÙÒ½œÝ={.3sfþ–T ÐÝ%ô—ÌËÌïò™ùÍw~óÎ9Ök•ú=ãûw(­?RäÅ”µÅË8·Ïö¯½î#ùºýŸ‰õÔÛ{oÞ|Íô£µÉ‰éqš2ú˳sT[M´§÷-œ¹{iîç6 ×ãTmì¹jçÍ»žØûµÝÓ?|ð“l½î*‚Z8g‰§&ooo»âWÕæqYšS›زóêV§ÓäØLÂÂì"ƒîyž“FôfhnÝr{…ŸÛ(Àš-¨6ölÙ~ÃΗ[§*Îè/.³pâK3p΀¨S˜`°¸òëÓ/>p÷FôšFwFƒ¬rìÀ XW0&¤£@J¤Èr¥nPñŽ_€†½ƒåEl>!„Ô¨°Ž.ÕQ¥*Ò„㯙oãÖÎ$ƒÁ!"¡ÔêI!ÑaS™DE T£ü*By¯¾ãÀù"OÏX[쇠¼6Qå&&j¡¢ÖêSPú嬩‚¥¹‡s!ÅSaµŒ6!*¨ Ã:l Ê-¼j“J#¤ÒðžÇ¤O)­ñÂ:‘^é•QA ÆD5Cµ!]%–‡/ @6JÿlÿÜäÕÓ”›M” ŒðJß#ˆA(ÿþ䃛^¼,½î# ½ùîwó,à ¤Ö«j ”@{i¼7Z|ÝyšþæÂñS‹ã$Åå9¸‚q>FkÞ‘çŸùÝ7«¼¬BÊŤ?XìÏÎ"]vL» ååp|ßã§ßNqXŸ W”Š´)ENBß1ÑCïEŽ~ teà‹yךq{¯7ùµÉ{üxòó( H‚¢°h­°Y²´|æ¥ï¥·þì9'ÜÖZ+¤ %\ÊsýÇϾUþ·$¯5÷4„”_DȽ&Œ¯QQ/ž¢ÔlXíœT’"Ëè9{^ç¡FùN~ü“Ïâú×—téòõÝ÷`ý•ú½U+Í7JQå«ÎÉRƒöqEF²ÒC—kÔ;“øQ@a™Þùò4Eeð gó“ä©d<Ì™g—\º;¯»Z©ß[¿rçö}Ÿ¾ë¶]ÏšåèÁãäc‡Pa|À2˜›%ëõ0%Ÿ¤?ÄæºTFX…ðBr—‘:Ë1¹È'Þwú¤Üõþ;nÝuËíïá੃õŠB!µBã„BÈÕ,@ íipQx cã>ãBR¸‚Ä¥·ùãÕúÞVoñáù5´6»þyx–z–áRBoBêi<„ò@œ3¤¢1½H7›Ã9G‘IÚW-“§1+i|l©‡ vÜâUO\÷Ä/Úß~tÁ(%´ê4:ϸÿ…Ÿ¾@˜pû«gúH¯ ³£C¥#´†,WŒF’¢ðè%Çxï'Ž65“ÑÉ…‘ÏÊ(¡;ìb3G͹ó+¦‚ûwKC C~ðØ÷·¯hl¾O{Í+::já$´·µiniSXÈsH3GšH±²tb†ß¾ð\dþÜ~m‚,Sç@p®¾°VqÅÖÍœ´‹È@ç¨TË(prþ8i)áÝþ¸¡`%í“ÊŒ¾QÖ Ý|#€ÍÓápöÈrؾ¶¦½*sçüF‚ˆÕ; ¤ `ujÇ»éï‰ó C¦ö³õK)ƒ^—Ä 99÷o<38îïO¶ýáIÊ™•N¨À÷½I þtHªîNû³ßÆ¿>Y|u³_™ 6mŸÄóÁ¹g-`AäŠÿ!HWâèÊ»—ü€°’3Ž^ø½=Ö¹×Iϯ)C[<ù´~\ž¿¾wêo·]è¼kWcÛµÓµÍW¶ýZ«¢ý¨$•™ƒs8[Pd£t4—tÌDFûUc žñ‘Rà®P/V^k¿T‘:(Im´³EnótT$éò8í¿|jÿ/ºé3Úh´Ñ¸B@©¸äº¶®1êܳ} œ½”_åËA¸ßøÆGhXc÷}Ûsüͬ^Š}ìÈõç—ÏŽ¤8-¶W§E«ÞüË¥bþ ˜íľ 1cîIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/agt_back.png0000755000175000017500000000307312033133562025101 0ustar neilneil00000000000000‰PNG  IHDR szzôIDATX…Å–Ïo\WÇ?çÜ÷cœñÛic»4 ¥¢Ð©&I#b»m*™Š°@BX°bQسfÅß‘[-”_ʯ ¡¶Ð44m³¨PÄIÓŒ™ñ¼{ïañÞsœÄãØl8ÒÑ{óÞ¼s¾÷{¾÷œ+fÆÿÓdòG—@,`e„2Õ½…µ[ˆHˆô‡]©ÒÊ”OzAäN@3Ã|dê‰iÌG6.0Öï}4žþtA’fèNÐF3¼7Ê2އ`{c¬‚[ãõÍNXÝ6‹F(#ôËÎ7M¯,˜øgV%Ûà­²=Û`Ñ>²Ö¶¿xì‘[SßyŠß¼ßóã¹ÐΕvËU×\igÂCOÎT@x0ˆdËÄT+i’:4½úÌK‡øw !Ëô‡DLÖW_츮}àe ¦1”‘aXžÛ³:ÿçùù{÷@…ˆS*L„bï$âJ`#00ª•ûe1÷…ÝÝ…áôeÈ#ˆN­`f;®¿ÙfFðưï‹C&» /á§ïCîÁ0UUP¡˜jc ·i†a1Þ  ÙT!åZY<õÙNwþû‡9ý.ä%ˆÞ„àabÏ™ÑngÙVÁë$ Îû°&¹/>6Þ]øÞaN½m´|‰ÖûÛD)û)ßÝÓÿÔ…<Ÿ¾Ñ×\bIÅÍ}&€"²&M¤––AqvYÕôÊa,žœmu¿u˜Ó]#7˜Õ] "BÀG³³E¸š›àFHYð‚>Ö¡Dzä Y¾ãotßëŒ?ôæ _’&yŒ†÷¡xbÚu¾1Ç©·ViyÊjë­å0ñùýLe‚kÖ9œ»í_^$ VH´v|4’­ÝnÝX^$ %>Xçñ wëÙ¯àô›]r •ØäN;1@#¼úA‰m•õSÇ ER•PÈ¿,a‰x“™½mûÏsKŸãÔŸ[¬æ÷KË·ÉóõË«‹ˆ˜(ðˆsbˆ¢©’h–2sù?Yøö—ùÅkË0(1 q=@•ÀîNÔÜ6£PïdWÔ*• ˜D*=âQD U%Œ›þøüÏÎ~½}ôÈTšýA ÑÑÛÊ &຅»° ¾¨ "UÙ¨hƒ¢}xóð¡³þËÙÁ‰ùNÒò¬ô©Ø]³¾ 1Š)eLÙÒÌÀ"Í31CbÝk|"xߺúÌ—ægϼvA—:â«=O¢rŸÜÄ`.k1¾OðQ¶ìAfP†8íƒÝôÁ&ƒÑV³¬×zy¹¬ú€Ô³Ü‡xéêñc‹38Þ-=[¨SV'†4YDÈœãÌï³ã—¯¤-ß²0¢¥ Ië%±\Ží±w]ꮸµµn–§å®=ûcvkc+6CÌ(ËpñÚÂñã3¯ž»0~ò¹Ž%Êí~À Bæx´ó·¸òøÜ‹LDCh³i7°ŠàH¬ Ÿ¨ø¤_zŸÇZRÑÚ0QÃ¥åçç÷¼ræ\û䉪ô‡1«Ô¬Š9Õ^Ë>2"Á6ì#J3CëQ¬÷ý³fb8 —_XœÏ_>Ûme ­± KâuÕ5-"b±w¯³¹kÝÆ”MpK­ ©™¸¾´¸¸ë•?uÓÔ‘·2b–biR©K”´hA´uàÒÄØÂ7šJî6åK62ñ•‹ÅË즩#KVÅ€8ETÉv× Øöad€êèo*‘àÃÅk/¾°8þëßu[-‡ÜvÄh)––ÙL§>ˆî „JêH;ùÈ­,Õ¨$†pñúÉ¥…É_ý¶·ç#åã3h"hª¨SD…|ßd5ÓwBýuð×Ô0Ùü£ª}EboßþêÒóÅÕ×{å¾Ïœ³!®*á¶V•ز©‡wt0MòXICn1Ø=ÄdÄx¯O,ƒax½{tîèDÏlèPQ©³I£`ò™iÖ®^ÃT«X[Lîd=ø6æ{Å„Ù0±¿Ó2ÄwH»Ó)E"cMÓÿp™!Hʉ&8›îµúH›$"éÕRíýøB105\ Ýäèá¿¡©®¸ún¢©>ÆO¼¦ix¸RˆÆ†xgdð~_Gû0a;‰{Þz:V]ÚíØ w\Ø?4 ÅâùJµªUŠù3 xS²½)F[b4‡ü(zU£²0N¢µÏ“0šúG£¢ÇY¿a݃hléebüC2ó3xHxŽIÆ[A8§=v€ãá4Ý$™ˆG.Z³úÚkÇ®Ûyý×wµw®^ð̓¯Ù¶Vù¤*oNò÷Dˆ¾•IVØž"E’´¬ºš^Á—ì ˜ y¿ÿã‰êÊ5}þÁAÐÊ$;zèÚB ¾½¦óÑø8‘Þí´„ãÄ,•LªQ’°mM3Ð4X,$ ôÎgKMï¾}àùO¿‚:§o¢0”}#‰ÚØÖãKM†ƒi‚á„\2éabòÁ=µønÕ ¸³„"MŒ|펿ÑÊ‘ùÖ¶÷ãÏN¡T+(Žƒãó·ØžçQ.ט9=M[GïV % ·Ü~ÿ–5»õÇ1‚ÛáTfÙé9ÚÎsÀp8ùA!_dëÁE¶ ^\j³ˆˆ¬Ýr‰D=òø;È…|–‰âZ¢àbØ.Ó3YffsÄ¢õÉDS{·XG㊋[¿ñ˜Z3c™L–\&ËB¶@¾dó¯qH6nUääI?áˆ#‡ Y ”08e,UåT%BsSŠ"ã/,@6CÀÐ}>DQD7lÒéÕªŽß§G¤T²±W\Ý|ÍmA9R5jŤ° “ÏÖ(W-ŽOÊ {¤g‚ÌÍ=NœŒñìžìZ³VÃ4T><]f¦š$ ã“e|™4LMá¯T$ÓpÐ4 Q ü(ŠL ¤£½g@®9E¥`ÌÙ¶àÊ&¦ca6eÓæ½TŒªÆ‘Ã'—™ÓÌ(ûWvôÁ!Ž¥ lM#“2a Ûõb¸D³ój•ºJ§¾Ùv‘$IVD‰B±„ªVLh ˆ±M²ª×ýäwåâ JЖ°í#Ü56¼õš‘ kRí ð¼ÅbÚËìS¼5óþã?Ü'×Ò3Ùªmm¸†…åXX–ƒcÙX–ãMÏNŒŸž™|úœ–ÒÐ}/>ýÀ=c7wëcÑ™ž¶ ®‚¶¿}fÏËïþxëNÀeùÅ× ÎrøY´¬øÙ‘Ã_iI„€ ~da‘ý‰Í‚ã 0^‚áøÍ·¯ÜäŒïßûyá϶~ ¹o㨀©*d (ÚPv êêAÙ…´ '*0§ƒáBÑæ‘›v|nr,¿~H]«íAU„€^d?ø•Å2ød¨ÁU@VAu@ GºÏÅÀ¹ô@_¨ç²áP"zž,‚,.–wqΚ6X.€ 8¦Q+œ<ô"¶}è‹0à›ç\b:,³~ýËáßÂi…‹OÁIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/agt_forward.png0000755000175000017500000000307412033133562025646 0ustar neilneil00000000000000‰PNG  IHDR szzôIDATX…Å—ÛWÆUçtÏìÎÎø¾ÆŽŘ_¸˜l6ÄANH „d$x@ˆðOðÄ#ÿ¶Ìå…„ ’‰B.„â(Ž%;±# $;Žcmïefºûœâ¡{.^O¼kDIç¡ëõ÷ª¯«ªÅÌøšÿòÏ®-rþ%¼ "‚ŽÄ+·¯¾xED†{f`flœvôòÈJ™Jæq õ§H¢€#z%áØCSôKîÀº§™X Jµb4B°]EgÊÒˆ÷Ñõ0«€ã€Õ>#c~߆w¿utv‘nÑ E¬Îý¯†EcË'·ÓJ…VC«Õt´ÊLCøÃÕ•rÓwöó™£;ú+y+”k“P©×Ú·¯/\FÒ·Ò‹Bß”¾)9JÒ´÷ï_üÑAœ]’0c UðɺÀ(!ÒÞµ'C‘©+ð‹+0÷ã#:°m)ïæíPÄ‘hj*ðsïs±ï×/Âq´wtjC¥›4r8ý<þìa<²9Ë»E;”cDBT„DaQÜ}ˆ†£½u¦N¢bª&Tál”pú*<ñìîÛ˜åݲÊJ°Ã(HµìÆÂˆ€ ¾­ZÝ÷Z1FBi¶R 3òWB @ƒ‘öàÔ›0÷ƒÃìÿD'+úE;«=$Q©Ð @¬B¬Ê‘TâQÌÕî$-I e,wonÌÎuº;‹.ØrQR“o$œøÞ!âÏ_Ë._ëvP·èü("†w­™´ù ëö[:[#}TòòHLý£†ÛŒ¯r?ÉB„TŒk-Ƕ^AìåD¬ 1JÁ©×<'¾}ûåùìÍ›¡CâŪ€à/Ýì±e×TóƒýŸB½¶L¥]"þë{š­•a¬ôÞ­ @Ì ×Ë¡›×!¬¶H­àäë'¾y€ð› ÙÛ ¡£‰.j­¿}ó¨±`PÔ$üöRv+vÞS”ã Áð@Ô!~å7!Í NÏ9ñµGˆg.gÿèÚ†D-CÀk¢ Šõ #XÀ¬ˆ1Ä~ü[‰CÄUFBY1+8ùjÎwŸy˜çÎ]Y¸Ö—yì†WU¬ŸMÀbSª*FtžQU×8"bv'—ÁÃxêÌ ~ýJoz€?ýê/?½½wß÷=@¹Ü¯0jBÝÕb`ÞɘOq5ö¤0D(c¤Õt¤D^>ýâíÛŸ>ð /^HÄp Aq"‚ ¢*¢¢“AÇÍ+t-²¸Qä®ófP˜ÐžvL'žæóήî³Çè‡w0ðϞ͉Nw4"-'lôN¶x'³‰Ó{ðj,½k¼âzÃh Áδ§Õt4νœ]ÿÂççʼ¼(f•pÓ‡v\üðÒ?‹¼_d¡Ñ¸Šu¹Û+5Ù¦Ýî´åD|GYô|ïúÒÞ=­'!E VÂLÃáϽ¸xã±£óe¯¨Àës¾lDÞëKåìÎWËh¯h‚L‹Ò©®$“J‘a,³ òÀß.¼u+=¨’K]E+ÁÎL9fŽäì ÙùÇæŠn>Þ¼±Œ¹”w¬ꡫ-‚9ÁšÂŒSUÄÕ“’­ÔÑJÉÙç³›OÎÍÀeUYõZ¿_'Žwsù ‚à;)âu¢fêi:¡qö…ìæSósù„› Œ?¬!ø!°D#Ù8E­|‰ÇDh¨8aúÌsÙÇ¿4_tó‹2˜#'˜¿³†­ >hÙéæ ª‘Û)Òt$AH"´÷ÇìæÓÇæ‹^qaþQ÷7Qµít{ó‚yT‰ÑeG³é˜9s.{ÿ™§æC.ˆÅ»r>!ë¼9@ˆ4vo‚`ˆ¦`^øðÖvv\SÒ—~¿ò¯¯<ö‹7$® 뚊Giºi+1Â’–•¸¤Ø¢PìþøKí]YþÊñ'c뇵"0ÐNŒ4¶Ïb1 &uU¨¦ tÃ^ûa6}@zy¸Lˆ)¸û'P3˜zh q(À;ö…ˆ·Ë¹ 6çÖmëLAý ÀÇ ˆ£Îy¿¶N®÷ÿ—öUqf±;¬ä¦IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/agt_home.png0000755000175000017500000000422412033133562025130 0ustar neilneil00000000000000‰PNG  IHDR szzô[IDATX…¥—yŒUÕÀg¹ïÞ;of¶a`±(‚T hÕºƒEd ŠZÄ­MlÒ4 M4µ­ÖƤj¤-¦ZkÓ´&•X‹X­Mk¬­R U$Z•h¬0@X™yëÝÎ9ýã-0, éINrr—ïû}Û9ßÎ9Žw(quGŽlrûÜíCÞ°%7Â9\µïø¬º­PL?Ìð>0î¹âñÊÇà‹yŒ›0ô†Nž5eêäSÇôôȶ¶6´— MbŠ…vlÛž½ûö{¿õÆû/÷n)=º5ïü_ZÌŸ4qrÇæ/ž}Í´sÎ͵æ‡`2‹É2¬µ4þB •DkÒ’ýlX·®òâ3¯¬ÜòIô@æ^è=a€¶àªo-¸ékÍ^°`dè·GU¬µˆšÆÏµJJI†ŠûùËŸV÷¾üì¦eÕlí Ç 0røÜûn¹ãÚŸœ=í\¢J„µ¦ié‰ ¥¹ÀçÍ×_MWþzí¥—~ù…Ã;®º÷Öï]ÿøñ“¨VÊG(>tfxž:*@Cv˜Ïóî;o²ò±µß-T^zü˜ùÜœ%‹¾=såä3§UÊÇT,„ ŠS¦LC>ï³á­ä<=(2ƒ sŽ Ÿgú¿Ç/þá­y‘]ûJã•n,|qõ¸—égcÇM oï„ǨF S'eþSðs›e¼ö¯Íär)åÎ9Jå2§Ló?™±åQ_\waìVíÐ1"ýÁÓ§vØ·¯óC0Î9ªQÊù3Nçú3R§sfNÁ:ÃÚW6‘óTó¿Ã!TEsÖyÓ&lýð¯K{šX8é¬Ë{g‰¡?.•K)›ë(N¹ü¢3¹qÑù@=gsgÀ²ê…õ(-‘uàDcí'Oq[ =¹Õ;4€Ÿ— Ù™?зçl­®ëŠ¥”8 ŽSæÏ>—›¯»k-ÆX¨GÅ8G§Ì5 ãɧ_EPJb­mîÎ9d¹ÂðîQÚ{!ð¨Î‹%aÛÉzNg$¥R*¤”Í '‹¯¹„[_F–¬µu¿Ì3ã•(aάéáxì·k°Ö‚°Öâ¬ÅJA8ÌÍË‹›¥Ñ8z§ú€IPJ¡”j*OSÃm·\Å7o˜E’fƒ,?bXG¹qå̯ ¥à¡$IÒAÆ Ê3I—F¥ãÔa¥TB`šÆ8–~g·.ù:Q”`­;ÂòÇsP,W¹â²é()øñƒOR(VÐJbŒÁƒC€#JOÑÎ3'9‘Ú )iÆËó4÷~ÿf®]p …Rç‚ÁåèœÃÁÏqP(V¸ìâ©´·ç¹û¾'Ø·¿5B)‰6£¥Ð¢µ¯¯Ý{vS,I’c ¾Ÿ£¿¿È–m»¢¦Ì:‡±¶9m=±n¬ú‹è/ÐÚbê¹ãœÃXS3H¹¡©­ušJ¹LWñý€ (•JÜ÷ÀïZ]ÃB²ùã^~ñتÚɧwÞ~=gL˪çÿÁókÞ r$iƘ®áÜsפiÆO—?Å®Ý}h-©V¢(¢EDq‚T#S-¤Þ¯µ‡’9´¨¹2Ë2Œ1!°¶î2!(J¬ßðžÖxžG©RE+Eïö]¼öÆFZó!QsÚ¸nŒ±XiS( ¤iJ–ed™Á ‰P^ŸFúÛ´ª"U€Jéf8ÖÔk˜Z¼µ’H B8œu¤Æ0jäP¦Ÿ=ž–Ð'I2ºÇŒ¨…­õˆÚ†¦u}ã•k]Œ vh'[>R¢ð™öÂaÊVjM…R!Ù…u¶®žúûƒÂÊå s¯<Ÿys.”„BÖ<)•ªýÓÜQÂiÒ$ÛntËV‰—ß•µ •×,CÏ«4’¬±­×vÈÚtÔž[ëÏzr:@)§ÊÕJ£< ë+{ЕØüI7<'•›¥dˆYócaZk|ßÃYGKKÀ¨Îauw*ÂÀÇótÓ;!(%IrZ×e‰†k|¬±X1äÏPï‚SîèlÍí|»¥µ½G¥(­Qªv´Î˜6‘#:pÖ‘C©!•BIÉ!­xZÕ,n”æ!3IRþ½q3år¥™Fú”JåMe{ê…ѧ?/7’ÖSoZ6¼C¯ðh"TÝmiZ«Y¥5ï„^=O¡qÎaL-»Ó4!IR²4Å9G.§±Ö’eÖ)â4¡¯Ô²¸üßß?‡ôinÌo*•­ ‡ï¼HÂ!¥$ k%çû>¾ï“Ëåð§{T7íííÑ8¶kQ³…CP,°mç÷Áö¯m©èGªÿ|xÍ1|@ó£Ù¾-^2:4óOÚúÕÎö¶±mAØái-qdiVˆª{ŠŸö”×íŠôšTµ½î^ºË|¡ì¹žˆkVˆl´¶KkÚp¸ÔÒoÚ‹óv¹ÕK“‘÷?>Õ£ÊÐEWIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/agt_reload.png0000755000175000017500000000373512033133562025454 0ustar neilneil00000000000000‰PNG  IHDR szzô¤IDATX…½—iŒ_UÀ÷Þ·ü—Ù:Ó…v:¥¥ mQJ¤€&€EP¶bÕJ”h”Hø€~1Ñù¤ jÐÖ%%PŒ‰ ‹ˆÚJEÔ‚$„‚,ÓN ”YÿÛ[ï½ÇSjÉꇉ'¹y'yçÝó{g»ï!"ÌçZ¿ö”Ͻûœ wÿ¯öóê\D¸zIï=ÏüãqÙðŽÓ¶×êDöšy–ªñòÎS—qÿ=;n:ç¬5÷,Vʼý¼TŒ§=º—½ŠŸ|÷ÖkÏ\»òGK®ÞÒϼDÊI>~Æè?é—¾ë ×]´·ç‘EwWÀúÛNQKoìQoØo(Wž½<¬„ôeS¯Ð[ÕÔC¨…P fWd Ô`JéYp…p¥‡Næº/[¾´˜9Dá-ÎYzCÍ>¾õ"wû½»ù4—ì½y¿¬ûöàQ%"\}þНdhÝ-”‰W ¥@«Ù«R¥@)ðÁ{Á;ÁZOUÕ¹›Öv2ÊÒamId/.ÙþÀŸw?ô¯ô²c#v45• ~ðú„6ÑNJ´v˜À¢‹6´¨#¸\ eyN‘YòÌ“u2:}¸Ä’%ŽNj)Ë’XÃ5ïYyéÖ5Ý¿ùÅ‹­MsºCí‡Ö4¢,QìˆbK9¢ÀbB ¨ƒ©ăˠhB6ÉZDY†KQæÉ‹´EÛÓh;ŠÒ)áÂáWlY[»ïþ’¾  z:cHcœ ²Hd!* *%:öP释0âÍ,ˆ1«1:%”)´³X|Öç¡™‚B‘ŠbaÇVæ¦ p´'Æ0íW©Ô3Ç@—¦¯?DuŸÑ2–Cm Ä}TAi EÒIèBûèNŸÃº-E ^I4V0=2ó»;ÆŠ¹)¨BžMS± pÐ…bÑŠÓ90ZIöþê@Uf”ÖÏ¢‚LÀÑx÷[¾opYí ΨöËs mòÒ\Qªžyvr׎ƒîŠãaˆÂ(Lq½uE×ùÃÏŸÞsãHqqq³ª¨BD´:R‚³Ð±Ðs›dw®‰߸yëyÊeôÊ‹,Ö%`1=6õÇ#îòe?¨÷ÖbÿüU¯¦o¨Ê(CZ  +®£âžªÛˆn“Œ·ôÑÀR-X6CùYÕóèßšÿëk®‹Pké~´€18fƯiÅh`©FL}`DWz§ €O_¼eݶÕw½ÄQmP½Cпšéhï=ÜxôÊ[taφQ ‹ÈàœĆ1¥ Id4T î­uœIÞ·gí{WOŸ}Ÿhï9&‚…§ÂÈSþîO<õðÖ%“Wä~ƒµå‘é§Bï} ìySBÃ$pÀÀ¨6Ñ(qï(AÏ3éúz%;i÷µ—_MлùQ:yr7w|içÃû¶ o«†‹"?³(Ë3ðœçLgݪ90Š/TB® @W:¿V‡ÎÛõ±›Ï¹pX2BfÓ ^1ýì‹ÛZ7Œº·ÿüõ•(Y˜åÙ†<ÏE,ˆ¥*H2@kÎ1&ŽR‰n=d_¹ø+ãû®9åüjº5ÁX÷A—ßë1²å‰É¯¾¡û¤UUF÷%I§7Ks‘$ œ4 Ë«qÉÔƒÎ^þùö¡›úVwéöÌ ‘֌LJɛi¼þ·'‡Õ…Õj†* Fk”Ò  U@é(½ÇΤIxÀá ÍvS¥\I$ Š¹Ç±Mcý ?ÍÍæo¤á×Ò哯4 âÀ`ŒÆ„†ÕñлF_|}ÊÅ¢<”`Å!X ¬/±%ôf}Au‘¢Ñlvr¤ Ò‰þûÖG6ÝÙ<üåÏ.ýä/kC·Û|*ˆ'ŠØÑ 4ï…Åï_d.èÙÐU‹ët›njt"9Mš´Ë&­N‹v§M+m35>ÅøÄ$y⦀Hõ8Ÿ¸´ºyïé§î\¹lÐ f)ÍK$³ˆòt\Éþ|Œ‘©ƒHìÈâC‡×§‹-KŠÂQ¤%E»Ä¶<åŒPN ~dˆ@2™ ðz‡º·˜8 ‘Ò¢2 Ó`àÞƒXÏA"ÁGàcÁ§s‚·‚ä x â@r`Hä˜f::y<½wxßk×ï{i„¨£PèŽBk˜THCáš Õ !‰Ðy„."LalŒ¶ÚG¡ Ñ:B)ƒR³Eª{4jFE×>N Ü5¾ó’sƒà€Ñ;N^9D–$èTã J|a—yIë D–¦h«‘FÀÄøø¿óÊô„D*PJ€V¨#M%”dö3È(%E| Y[x9KuÝ“s&·é_¼`6jÿð3—Õ‚'QÛ–-"KR4ŠF³•äÛýó(GnýK.ÇÞØ¹+Ù^_W7Á&n_¸l€Ìæh¯æî0_Ç“Îóïô wl’oœ>€”òvæóÐÜ×úVmIujͧÔ]µ´6óH§;W ¯ªÕN«oœo€ÿõkoæ‘ØwcIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/alert.png0000755000175000017500000000601012033133562024447 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡ ÏIDAThÕš[ŒU×yÇë²/ç2sf{€™ƒÁ\l(‚ ¦Œï!¶Á’/µHl§&N,Sì ;´MŸúЪOU¥*}²zK¤X‘ìJ)Q*[nê†Ú©ÁÁ$±Sã``îÃÌ9{ïµVÖÞÄ{€!U–ôiï3gŸµ¾ÿ÷ÿnkíÎ9~—‡ø»•bZ'm[TEÅkÒQNiLëü&ñW9í3ŸíÀ¼«8?pu4»æ±­ºoÓ!à%`ÆUX(¸é“À±ã–-]Ï´¯j»¬¯yó“·=Y‰xˆéùÛéf ½íºÖççnY¿8 Ý}D]KX´¦m'°dš×¦™PòÌÚÇîí ÷¤‚<Àº'7´47‹çðF» ¦g,k[0ëÙÙ~ŽìgA)Nõ ®o况³Ÿ$ã–i\È}e‚ƒP±ó–§oæÀ«dª†1d ˆ*ðîOYýTWÔÔÄs€š6íÕô1pëÜ;¿cgú*ÀXúÿû—œ~óNýçaNÿ{7v´#4dú†Àô°î… mÂ9 B^ºèÈÇ pÎñí—\ F¥xßWöþuÛéWþ“Å `NLó–!*-ÞÂkÉöÞEkü 2œÖB,á÷?ÏË_|y¨·7Ý(5‡.Çúi=g@ª©‹s`žZ»}k½hôòž˜þ˜ÊÚí4­º—êâuT—n ¶p­÷ÿ“cá`p†Ž³ánlv†g¹‚ãrb`E­½¶såöœúÑ˵k6a°õQÿT‘g3r,ØÔbÓÌóÿ“·éxt3ç„_ÎRnýmXvßöÌÃU»/&“HÂX”±ÒMÞ}Y2LÖ€5Ö»Q#…#pCB¾;¼”¡ô%0)ëk--ܼœž·Œ.·àl ²ˆnÀ^µqØ œq8Ö(—á½_ѺF2«Mo6÷\Š.—ÓJ8^¼{Ïö8yã{ȨŠé¼E³HNLFà˜ p‹Àj ƒcp4…ÿ:ÀƒOÏ×ÎpY-Æ”÷Yƒ»Û–ÍÙÒ¶¢Bß?Gİç,ÂY¤°> L6€µ¸ ¬2‹=zw<…2p¤A¼4`Îü`Sš°uªŠkéeª ”•/Þ¹û1Yÿñ+ˆ¸Š´\ay‹5a@¸ÉD Éd'ê$ÿ3Šm@ãÝMï~È–¯\‡„=@ËTA@QÈ>C²´¯Yp{kgƒî£¨ „s€Ö[Äfò*ìûàzD œöÊ“kp8!X˜Ò±¸¼2Mxb*M¤Ö^¦Â@MGê…ûÿø!†_{YnE!±Ò"A ÐÂ"5„v2vx›€ªúz' êEn¡xëc¶î˜ìf_Ÿf~Ó`ûÂKn’ÙGŒô ¡‰ÌV8‡Ò% J˜\©É D¥€0ô‰J_Ëœœ NYh®³`Yi~–òUÈŸ½ˆ$ÊUù™ tÕ`÷=;ïdøÍ×)77#0haQÚ ( ‹ÒVA‘LšÄHGœ§„óL sð³_ó…?œ@ì–N™ 5KÎgž¯®øÂªyô¿G½ž‚Â"r—Q"E ‹. DdáWàþ·gò"R c”×u"ˆqj GX~KÓŒ¤Á3|F‹–õ§2ð{¥Öx×úmËÚ¿Ÿ¨Ü„tEKƒ°©º¢ƒc¨÷û ‡!èìð¿.´dëõDt¡>ïk—«é$Ä~~š;iEiñ´³lü4éÙ䢔5<¿æáÕÍüú]¬ÕHé]Fã¢+Ê&ˆ#½¨ãutj)È}û ~êÝ0zÆz?x1ÇŸ´h ROâB¤ó×!@ °b}-L^À;×GÿpÞœÏS–rkmnÓW=ÒÁà«ÿ‚®¶ qHa±@‰89ˆèI1PË'QøŒòµ9pÈðžÜÌ: lþœ ±„CƒlúR'¿|gè“Ù»•â_/âB ¾yÇö5?}ù¢%•E–%rh õ~/êL‚lÆWS- ’EÐÇ?„whvÍâÈGø!Š@+ÿ\ ¼] ë»<¯ùÕgzÙto‹ÈRö¥‹Ð0ÞÎ6¸¯mñÌûÛ1ôö0ºTöЧ ä‘~ä0È*>õI÷«Ü¡ã„¾‚ø·³¬Ë4€_ÌYR‡¸äö•ð»³Ìå–Ÿp%|8Êò»ÊüÇkj£IÌ6¥xi* ”•߸ã‰%Ò>Œlª ÊqjÞëGÖAÖr僜«ß”Ä%8áhÞõ8sså1ÞÐÍÙ =@IBx&áU¹ÒÅQ³ß•úðÔ ÷=ØLÒà\äˆ^‚7ˆ`Sê¼i榖}Œf$¸C§àØAÈÞÏCé›ñPAz¥Â2Ð7<êgÎ,ämE¥e¡kè\ŸW陳P<*'Ræ­Èhš¡o4³Â’úÓÛ·u?ëÀêA D ZyÇ ¥_$T甚 üâoülZæ?>Ùë‹*þd"Ð^ù0OKŠ ñpžz#lÞ‘¤|“ ¼ññ{bÖð¥Î­KãÑ㠽ы4¨š7°,2Œ„ ü½s&Ú;à­×á“:·‚ïÝ×€ü„:Èó©:g€BñDÁÆih_™Q›©çfOŸ@8çøÇµ¢Sjñ“‡ˆ:Ócu¨@z‚âzÜçóE•òUI+y™Õ×àD·ß÷FFεs!h›øýBj KrÉÀXH 4²sÎÀ9hqô ùûï6z+%64€1ìX4OtÆÃu%¯4øì$dn ¥¼ËÒ[.È-¨c_™Tàˆ|܈Ï*³+~l,˜€mgR0 Îdþ¸Å(„‰°™À¥a. ±i†0—„dÖQ‘å}{iô}4$µwñý.®/ÏP;±¢£Þ—Á¹–Dà3œ«5…3‰‰ž5±t>{Øâ>ÿÚån=þ’ä×߸ÏÉÐU)âUHÿat€×½›;Ç÷o”DBœSTò›ûW1@¡¸˜¨øEFÁ¾› O..WÌ^”±@äÏÀú—?õ"‹ã¼<$~÷ÆÕügßÊø? 7Ü9ƒOýIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/back.png0000755000175000017500000000307312033133562024246 0ustar neilneil00000000000000‰PNG  IHDR szzôIDATX…Å–Ïo\WÇ?çÜ÷cœñÛic»4 ¥¢Ð©&I#b»m*™Š°@BX°bQسfÅß‘[-”_ʯ ¡¶Ð44m³¨PÄIÓŒ™ñ¼{ïañÞsœÄãØl8ÒÑ{óÞ¼s¾÷{¾÷œ+fÆÿÓdòG—@,`e„2Õ½…µ[ˆHˆô‡]©ÒÊ”OzAäN@3Ã|dê‰iÌG6.0Öï}4žþtA’fèNÐF3¼7Ê2އ`{c¬‚[ãõÍNXÝ6‹F(#ôËÎ7M¯,˜øgV%Ûà­²=Û`Ñ>²Ö¶¿xì‘[SßyŠß¼ßóã¹ÐΕvËU×\igÂCOÎT@x0ˆdËÄT+i’:4½úÌK‡øw !Ëô‡DLÖW_츮}àe ¦1”‘aXžÛ³:ÿçùù{÷@…ˆS*L„bï$âJ`#00ª•ûe1÷…ÝÝ…áôeÈ#ˆN­`f;®¿ÙfFðưï‹C&» /á§ïCîÁ0UUP¡˜jc ·i†a1Þ  ÙT!åZY<õÙNwþû‡9ý.ä%ˆÞ„àabÏ™ÑngÙVÁë$ Îû°&¹/>6Þ]øÞaN½m´|‰ÖûÛD)û)ßÝÓÿÔ…<Ÿ¾Ñ×\bIÅÍ}&€"²&M¤––AqvYÕôÊa,žœmu¿u˜Ó]#7˜Õ] "BÀG³³E¸š›àFHYð‚>Ö¡Dzä Y¾ãotßëŒ?ôæ _’&yŒ†÷¡xbÚu¾1Ç©·ViyÊjë­å0ñùýLe‚kÖ9œ»í_^$ VH´v|4’­ÝnÝX^$ %>Xçñ wëÙ¯àô›]r •ØäN;1@#¼úA‰m•õSÇ ER•PÈ¿,a‰x“™½mûÏsKŸãÔŸ[¬æ÷KË·ÉóõË«‹ˆ˜(ðˆsbˆ¢©’h–2sù?Yøö—ùÅkË0(1 q=@•ÀîNÔÜ6£PïdWÔ*• ˜D*=âQD U%Œ›þøüÏÎ~½}ôÈTšýA ÑÑÛÊ &຅»° ¾¨ "UÙ¨hƒ¢}xóð¡³þËÙÁ‰ùNÒò¬ô©Ø]³¾ 1Š)eLÙÒÌÀ"Í31CbÝk|"xߺúÌ—ægϼvA—:â«=O¢rŸÜÄ`.k1¾OðQ¶ìAfP†8íƒÝôÁ&ƒÑV³¬×zy¹¬ú€Ô³Ü‡xéêñc‹38Þ-=[¨SV'†4YDÈœãÌï³ã—¯¤-ß²0¢¥ Ië%±\Ží±w]ꮸµµn–§å®=ûcvkc+6CÌ(ËpñÚÂñã3¯ž»0~ò¹Ž%Êí~À Bæx´ó·¸òøÜ‹LDCh³i7°ŠàH¬ Ÿ¨ø¤_zŸÇZRÑÚ0QÃ¥åçç÷¼ræ\û䉪ô‡1«Ô¬Š9Õ^Ë>2"Á6ì#J3CëQ¬÷ý³fb8 —_XœÏ_>Ûme ­± KâuÕ5-"b±w¯³¹kÝÆ”MpK­ ©™¸¾´¸¸ë•?uÓÔ‘·2b–biR©K”´hA´uàÒÄØÂ7šJî6åK62ñ•‹ÅË즩#KVÅ€8ETÉv× Øöad€êèo*‘àÃÅk/¾°8þëßu[-‡ÜvÄh)––ÙL§>ˆî „JêH;ùÈ­,Õ¨$†pñúÉ¥…É_ý¶·ç#åã3h"hª¨SD…|ßd5ÓwBýuð×Ô0Ùü£ª}EboßþêÒóÅÕ×{å¾Ïœ³!®*á¶V•ز©‡wt0MòXICn1Ø=ÄdÄx¯O,ƒax½{tîèDÏlèPQ©³I£`ò™iÖ®^ÃT«X[Lîd=ø6æ{Å„Ù0±¿Ó2ÄwH»Ó)E"cMÓÿp™!Hʉ&8›îµú{ø•a-C9Päó§ ËAQ@ „ÇÊÐÏðËÖÍ–á/ã_†c;10|fØÀPÇ”ûDTšèZÌ Žã8VvV # csc†¯?0ìÛ¼áÓûO_á\ưŸá,Põ3PÐñO þ@_Ú3˜}gú®*e+ÅÀÆËÆðöÁ[ Ku†ƒ ; ±ö‡Å ® À4´œ™Y_ÆT†AÛ[›Wž—áù«ç ‡Vbøþúû=†• ¥ '.¡Y6 €˜Á ™Ÿßº-eø'ö‰—‰áûýï æ@GÆâˆV ÅÎ • ÿV0²3Úó™ó1ˆû‰3°(²0|fùÌðæå†›Ën2üyÿçÃl††Û@±ü-(% ™@¼Ÿ´HœáK, £*€©˰‡a=àå¡> E @ˆ”nÆ  tŸ)ƒ>4Ù°(ƒü|Aèk •A@¾*Ôé‘ðy ÞŽá= Óyé3ÃchVû€Ër (ýŸá;0;>cÈdx äñ#©ÐbA fb¨Ø/4S¶ñe ~´|ÐrH{NL. äòŸ»¿¼€,]òþVp±ÊÀp˜™7ƒ ˜W@ü‚Ø, @¨…!0"þX-x±aP­±êóÛ@Ë·2¬ƒúú8ÕY§ ûÐÿIÑ#ˆÑ(¯â×àôÑϰnùK¨Óþ€„ÊÀ$ÄÌ”ÂÐt€Ëç+ÀÖ}e8 Œ´c û –¿"Õr ÔÑ`Lþ¦Þ{Є†ŽAeØrp®þÊp X´^­O ÁN²å @èM²ÀàÝÌñ˜–ƒró" ~ ôé åW€$¤€ùü;9–ƒ@¡;à?01|D*4Ax-8]ßcØl¸\úb9J¹N lÍ0V†h µ ’Nˆñ!pº¾Ç°X´¾­È¥E €Â^çk³# 03‚Œ?Ä_™m°òÁ´œb@Øšåÿ€~:.Hƒ}0ø €–ßCªT¨b9ö~ÁW`åÃöÀÒ V´>¡¶å @Œx¢FˆÅ Uè+¢[G$€bÄ#Î ­‚@ÙëMšë@@ŒÝ; ï{•¥+°IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/chain-broken.png0000644000175000017500000000050512033133562025700 0ustar neilneil00000000000000‰PNG  IHDR (ýìÆbKGDÿÿÿ ½§“ pHYs  ÒÝ~ütIMEÑ 6 Ýûú÷ÒIDATxœ½R1 Â@œ[î[k«ø‚ØÄ:otyƒébe‘Æü"¶ñ'úáà|@ !ÜY’ ‰q`«ÙÝÙ]`d ’®`m#† |Ó "é¢(Âv›ÁÓ!TÕI’ô6!’.Ë2L§xž×É)¥†«'©,ŽHƧâCaÌÍI'€™ßÖA$]¯K03æóY§Áé¤Zk„áêMûÚ‘tçóe\E±Gžïàû‹×TZ_Q×÷ÞXÛˆ¶Ë6˜iºð‡/Òþ&LƒÛî(ÿGIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/chain.png0000644000175000017500000000045612033133562024427 0ustar neilneil00000000000000‰PNG  IHDR (ýìÆbKGDÿÿÿ ½§“ pHYs  ÒÝ~ütIMEÑ ,/¾}ƒ#»IDATxœc` 1`Dæ01±üÇ¥ðß¿?d©…3˜˜XþGDD0ôõõ2¼xñEÃþýŠ‹‹á™˜Xþ÷öö2¨©©2£¨={ö,ƒ¯¯†ƒ˜˜Xþoݺí? EøÅ‹—ÿ‘}Ç‚l‰´´4†™˜Xþçäd1¸»{Àåž>}ŠáRˆ¨¾GñÁ… iëƒyóæ2̘1…ÁÌÌîʧO1|ýú#`¾B¶¶V1š§"šá8€ãÛ ¨«IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/contract.svg0000644000175000017500000001042512214656430025177 0ustar neilneil00000000000000 image/svg+xml openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/database.png0000755000175000017500000002001612237312703025110 0ustar neilneil00000000000000‰PNG  IHDR@@ªiqÞÕIDATxœÕ{ip\×uæwîÛzoÝÆÜAà ¢J¦/¢-[²o3.W<•ÄU©©T¹Ÿï€_ø€ó¿Fÿ>¸À'GGGßϹF£Øºu+ZZZ IÒÛ®L’$ø|>ø|>D"‘úõR©L&“w/,$îž™™þË`0tÀ?ø€ä;m<ýbÀûÿ|n~î¿ßÍýýhoo„ï´M7Ô­J¥&''17?¯×›èéíû¶ÇëýF{klém×ûØ›ÉdþêÚµk‡B! ì@$ç¶e½hocŒA–e†ÉÉIŒ¡©¹eq˶mÿ Àÿél‹›oµ®·C€Ä$öŸ.]¼ôÙ•¬wÿþýèhï€e™°9w*»µú7=}[Û-‚TEa¸páfçæ±{hèD$Òògm±Ø¹·Rí[% ³Z­~ûå/¿;bxxDÔ`qYM¦kv¢ÖVçÊ;ñ ·>!„{\¯DMÕH$pòäIônÚTÚ¾cûŒG£ßþU¿v …Ÿ¾ôÒÑ­C{ö`ËÖ­0t}mËÞðpãûïxÛH —eY†eZ8zô(Â-Í>ðWñhäKoVåï"` X,¾øü/Ÿo?xÇAttv Z5Àˆœ—’ƒ‹ÖšÜ=|kàiÃÄ E¼ÁSŽÐÀA’$¼tô(¡Fn¿ã«­±ÈÞðýoB@œs~üɧžÜºoß>ôõö¡jTëÍ^U¢ áw‚oÐÅ-„ÜJ@ýè ¬¾º»•"‚,ËxîÙgÑ×ß¡Á¡ÏÆ[£ÿs#œo”ª©ßùù3?ßÚÑщ®®.KE5~ðë@oÀÁ­÷n…ˆ[4/6¸·Žˆa¶mãÞûîÃÓOÿ mmmm[öëñßÞt~áVhšúéëׯóÄË'ðþG>Ó0°Þêu ´z6RƺóFü¿+,lhý Hpžb50BȪ‚™©)\ÅG>ú±k¦n ÷ôt–kÜHÍ‚‹¿|ùøqìÙ·FÕ€mÛký½NÂ:° ¦^£„ÆçÝSA¿[B¬¿²J‚s_¬¹&Ö[ Ý=½8á®\Ý1°cçøú:;Ú×¼ú¿÷½ïݳ·Ã0M´¶¶B×uWöb«àÜKuX5—h$a?kÀ¾ÕNá%ßðwB„pnWQÅÎ;qáÜ9lݺõÏ>räžýÅ/ê*X¯Úó‰sçÏ¡³³fÕ„e[l䉨á¸~µ7X%f}@¤· ~úÝ»õëuÙ»$ÔÎ…LËDkk¯œz¶e÷ɲ|€gë 6¾«¯§§gè™§ŸÆ¾ýû¡UÁA ð:øU`«€o%åÍIxk44Jz͵Fë÷õx°J¦iðù¼˜›Ác}ø=kؽ{ ¶Í=¥r ª¦Â0Œº/×;¥1à5ö ëS×eÞ¬+Ü€±ö¤5¹àëjX£÷Ó‚?Äìì,¶oß>Ôø¹§·§ñ¼Ç²LØ– "˲@D`Ì^³òz2h5èQƒRÖÌÕ¸ è-j`½Ä7‚àE ¼[œTPù|ñxk[Ks‹'“Íè sn7¾1@D°, –iÕ‘¨+5ú|5K׈©Ÿƒê*®wá½…M¬ë Ö’ÂEíZ#h¸nÁÁÍ`š&YçÂ+ 45Ö4£¢©*ln£\)CÓ<ÆxÝÊD¾€µêB¬v‰È Õ7 ¡ÑʵþÞ¹ÇÝ<ÀÍĪ*8q ytuvBp^á\Ô­.ß¼q£ñÝ‹>¿šªb%›A¬5Á8cŽåÙj°ÛÐDcÏ@ ¾¿&h@Oµôk÷«QÝ¥b¥!x!« ¥_;fC:ÆÈÈææçR¥r©6šƒ|þüš©µi½¢ë}}}žé™´ÆÛ`q $œ˜À¹C1r]¡AêˆI r†§äS…p¬,POÖ&Io’­‚vUÁz¹à  áæõç¹à.‰ù|ù\Û·mÇ“O=9f™f}æFžk|s~ff&ðàžo|ãrFX Ù â b î jÊ ÇvܶÀÜkTK÷0G®üQc¤ak$amdàœ×]¨š7X¿ÑÚpc‚pˆœCVdLÞ¸X,†x[Î;¿HD$Ü*{<žÆ÷y’©”ç΃ÑÔÜ„ññëØ¶m‡Ó0×âp¦Æ„Uæ–$ Î:¹×As¤H äaÔ03LëÂáºNÝš AN <,î€w•à¶Ã²,\¼tÿîŸ@¹R€` <È;vìh|uiÙ¡\>Çßø»¿C_ï&Hм*G¢º WÔâ|c0D=s®;¬ækóFø5áˆ5ÁY¬wGãuð‚ œà$l®Ë¨ªŠ×^{ ­±nÁøÄMìØ±c'cLân÷' 4Ð¥ª Ξ?ß}ûOâå—ãÁ‡Þ Ë2º8r’cÆ@’“&³ cC/Ñ/¬Æ†UÂj$ Œ¬–É9®#È ×ÝÀ˜sO&À9AÌé¶UIÁòò®^½‚/ýç/!—+`n~Û·mëôûý>`€ ¥9 aa>Ë£—ñ™Ï|×_;¯×ãÈÚÑ4H’@ `¢f˜[{Ö‘äƘã6RCaæîR˜&¹¿ƒû±zð­¢zÝ MUPÖ+øåóÏãcý:»ºpitœÛ‡ÃAY–ë~Ï$YFCáMpòÔiÌÎÎáË_þ2 8óê«ðz< Z7tŸÛ@7V0·aŒIY“$0‰A’2cˆ ± ¹÷%rê¯ýžIuÀk‰¨ûTUE¹TÂOŸzï{ß{qèÐ!üú×/ Í‚[¼>ŸÝ¸fÁ²™,J& !·’…×ãÅO~ò3,Ì/à«_ý* ¼tô%(ªU‘ë.“Ö’Ó[1'82&9Üì‘Üœ`•,vkanW Zý­K2«ÁVc€ÏçÃââþå‰'ðž÷¼>úžxâ +¬¤Ó$U£šÓu½Z'àûßÿjåÒ¥‹óšGã^†\~íxò'?ÃôÔ4¾öµÿ¯×ƒ'ü/Èçrðz½NCÕ㹑ž5¨„ÔâfˆuI¯º…ã´ê"µçÜc@bn—Ìjø{Šª@S5œ:yÏþâ|ú?|G~?þÑ¡›6|^/ óØ´©ãׯÏT«U£N@c_L&“¹ÝƒƒX\˜c„žÞ>{ù$^=ý*¾øÅ/âÈ‘#xæéŸáåãÇ!ðjZ½ïwÔÀRêc€¯ýë þùßÇ™3¯‚s× I‘Á\E¬ZÛ‘jMTÏ&kÀYÝÅÔÈaµàØì1hšš×ƒ¥ÅEüø‰'ð«_>G>øA|å+_Ákg^ÅOú34µD hH./ahp’$!“ÉØ4ΉžÞÞXÕ0š$IÂÛoÇ/õ+ܼ9ήnøÂÍPTó·‹½{öàsŸý,&§¦ñÃþ3þéÿþ½›6appímíÅY+ä|Õ5ØjïЪ;¸q„nW¸š,B8I†Äd…B—/_Æ…óçQ­ê¸ï¾wá‘GÁää$¾ð…¿“dÜ{ß»Íf\^B*•D{[;1ŸXDWww_£Ñå=ú¨ƒÞ‰Œ=ØØõqìݻ㘚šÆÔäM´¶¶as?öìƯ_x§NŸÁ#8‚ÏþóH¥Òxî¹gqô…À9GWw7úû7££«¡@ÈýÄQÖsw¶:7ИÔ3Nbà\À¨êH¥S˜œœÄÄø2éb±y䟇ªihnnF4EKK¡Pþ€ª¢ÖÝ€Û6Ы:J¥r¹R©’É$ ù<“·bÏÞ=Ø»w¡0ÆÇÇqòä)ŒOL`%—‡×ëÃwŒD¸tñ:œËå–@–¹‘ÕïõAŽßüë1¼ÿÈÃx衇ðÜsÏ"ÖC2™Â‰—a÷î! ìÄøõqKeœ>sW¯]Cgg'¶oÛŠÇ@ù|333˜žžÂüü¦&o¢T*Á4Mض"g™»6ó$Ë2¼^/B¡Zc1 ïßîînÄb­`Œ°´´ŒË—.crj ét]‡ms¨ªŠ-[6#›Ébfv ­­qàˆÇ[qßáÃ8á"¦çæðyàõùd€ê®_OÊÿøOþþüsŸûÜ×_zé70,a[øèGþóó øå¯~EUQ(N§5¡\® »²‚ææfD"ƒAø|^ø¼>„ÂADš›‰DÑ܆Ïç‡$1H’äÌ8ÕW–…3o‚,;_”pÎaT ä EdW2Ȥ³XÉåP.—Q©è(–ŠÈfW°¼œD¡P@sSŒdEAGG;ôJ­±>øÁáÔ©“¸93¯Çƒ–æ&Ä¢‘ï}Ï{–J¥äš øÿ÷8|øp"‚CQd*:¾ùÍïàSŸú$ýЇðüóÏ!  ©© ‰…T*E˜F‹‹‰: MSAPªè¨.-biy¶m£¢WÁ¹ Æ$Èsç7·mgÄG€"Kðz<p–¸lÎÁÜÏmt]G&›Åbb+++ðh*ˆ€x<ŽP8„L:-›7ã¡w¿§NžÂ™×ÏaûŽ˜ž¼ÛvîÀÔôÔR¥RYM„”À®^½:S*–J›6mÂòb­ñV$ã‡?|€ÀÇ?þqÄ¢QTu===زuºº:àózL.áÆÄ8&''‘L.£T.ƒÛ6dY†æÑàóû¡i 8]7/–PÈÏQ(P®TaÚ$I‚߀Çã…ª¨ Ã@>ŸÇüÂÆ'Æ1=9 ½RB{[ ;vlÇÎÐ4r++8tÏ!<øàCxñ…påêúúû‘L.ƒ¡·¯gÏž»&„0‰ˆɵ@ €¥3™ÒâòReûöíþóç/`vf ]=¨”JxñÅ—Ð×׃?öFGGqòÔ)0úû7£«»™t©T K‹ ,& ÇÑÞÞ¶¶8šššá÷ùÁA0Èçv}¼ŒIP>Ÿ²$£PÈ#•J#±˜@"‘@:†iÐ4 ]݈Ec…BŽ"2)tttàÁ‡þ¹lßùÖwТ%E¹TÂÂü…¹Y´¶¶! bìúΜy?þ>ýG„“'Obtt@GGºº»P*–°²²‚ìJ333˜˜˜Á£iðù|PTµžÙÉŠ`[\Ø€lÛùÀR×uX– Æ|>Zc1´´´ C’e”JE$“ˇÂxä@gg'ž|ò)¼zæ5ŒÜqª¦!•J"±0h¤»nÛ…lnËËË+5¼5j lÛ.Ÿ;wnþž{îêÂÜü&''a˜ÚílÞ¼—._—ÿËÅÝwÝÇ}###¸pé®\¾‚|>ǃîžnômêƒeY¨è:*å2Êå2t]‡i°Œj}ªËI~˜ûaƒ EQFàõzáóùàõù¡ªŽŸWÊ: …,ÓB[[ïº÷^Äãβ×ÿú›ÿL&‹ûï¿¡Pãã×±²’EÐïÇàîAD£Qœ»pS“7çÝØÇðºdYf–eñ+W.^½z×#·ãÀaTõ —–11~¦i‰Ý·ÝF]ÇoŸ—F¯ÐȸïÞCþ÷û°´´„±±kbvvNä+Ƙ¯×#‚ñ8©²â ë3Âõ©’ú¬91g6ȲmTuår ¹•,ˆMMM80<Œþþ~p!pöõsøî?~7nNBàö‘ÄZc8wî,t½‚–æz{º04´ËÉFG/gçdYV…–mÛ$K’Dñxœ°B>ÏF/_>?3=c)²,ºç.‘Ïç —Íe1>~ ¥RAìØ…ª®ciyYœ;7oŠÞînìÚµCC{p÷Ý÷ \*ñ…„ã¿Ù•Q,äÉ0MîŽäVQ×'ýÁ1FPU@[ÑÑÞ^ÿhr~~G¾„ññHe2¨T*P›6õ¡µ5†3¯žçmííh‡p×Ýw£P,àæÔ4Î}ý¢aéH$"¹'yddŒ1’$‰ …f¦§'ÆÆ®^"&í5ª:î?|ܶqõÚ|^æ[ÉŠxkŒ*]T*„ˆYÉáõ³0v}BD£jokC¼µ•÷Œô2'óÜ2-ªéºÓ4„ÎWB!I)ŠMÓ„ªªˆÈâ…BQ,/'éÆ×L¥°’Ï¡R®Àv'HËå2ššÂ€°qþÜëhjnA4ÒǃûÞu¥b §NŸ†æóñ×Ïœ9ÞÛÛk´µµA–e²,‹äÛn» >ŸdY¦r¹Ì›Âáü+§NþzphÏî /Kº®ãÈà MÓpåÊø|>$“ILMOqnsFÉd D ^¯G0I‚aZbq9IÙ\žTEŠªÖfˆ¸¬(PeÇ×eI"à–i Ã4a&,nƒaš6LÓ€a˜¨V wò•¡Z5(“É:ï‡iè¢jhÔÛ· ̓`À‡{î½z¹Œ§Ÿyý[·áÄñ½ˆË###v<cŒt]‡|Ï=÷À¶m¨ª Û¶Eoo¯~ìØ±ó§Nž8uÿÝuñÒ(„Åñއߋæ–ñúk¯CUUÆL.ƒbe%‡¹¹Yèz…,‹ I’IS5®(24ÍE‘aÙ¹|NTʦEΤ¬ pwY•¡*Іðy¼`’MDÓ¶aÚ& …–––°˜Hˆb1/4M£h4Žx[Âá&ÁmmñvÜu÷˜™¡ßþöZãíȤ’å«£—yøðáìîÝ»M¿ßïd›†º~ýºÄ9—MÓÔ$Iò …¦³gÏv¿øâ‹÷îûtÿ–öl:–¦0Ý{H„Ãaœ~õ´H,,„a˜”Ídx2•D~%G\„BaÑÖÖ†®®NÄbq45‡¡©¡WuÊ ¨V pnç|µKfŒTU¡€Ï˃ a£P*!•LQbaææ‘J&Q5ªäõxFE,ÖŠ`0Á$‰ÑàÐ ¶lن߼tó ðúƒ FøõsÏ>×Þÿévuthhèâ¡C‡&¶lÙ2 “D”Póq„ À®P#A ¹$mÛnÎd2­×¯_ï~å•Sý7·mß±s“æñy¯]ƒª(¢©©‰{< ‡‚¢-·»»;ÑÞÞ.B¡1Æ`Y–(—Ë¢R)³JE']×™iš6ç\À…L’$¨ªBªªÁëñ2ŸÏ+4ÍÃÀ$*—Ê,•Zóóó˜_X L&ËÊNÂÒéŒPEêîé²SÉå%Ó¨ŽŒŒLìÛ·oª««kÞçó¥dá,…•\ð«– ׆d€í2C®"H’$Fáõzy,«^¹r%þüùd¹<×åQ•X¡XR‰÷x< ÆìR¹"¦¦giq)É}^/óù½ðûBÓT®¨ªÔÜ!UQlƈc pÁ™mÙ̶m¡Wu©ªWE*¡b©Dår¥b™ôª.ézUA“nZEÊd2L¯T¸ÌOÌÏ.ôõõÍ OoÞ¼y!.˲œq­^r-_­¯á–Às÷¸FBý+ "@Àîïï7£ÑhyË–-¹k×®-MLŒÇ+åR,•\ Y–¡rnK’$sGã², I‘Iˆr¹‚•\^ŠE2 CØ6— j_ qâ\ÆH’%‰{}>æóù$I–IÕTfÚ&³m ÅR ÉåeiiqÑ4 ½‹F2ýý›–v-nÞ¼y1‹-y½Þ eä]Ë—]ðæ:5¬“5º 4ÄŸBˆ°iš¡b±Ø²¼¼Ü233Ý|ãÆÍæ¹¹ù¦r¥âóú|þxkœµwtP4¡pHx4$^.—D±Xd†a3Î-ÁI!ˆˆ—eIö¨‚ÁIŠÌ,ÃD±\¦l&#---Qb!ÁÓé¤!ʱX4×ßߟݼys¦³³3ÙÒÒ’òù|YÆØŠ ¼è–šÏ×do7* ‘€H]ƒcŒ eYr¹Ìårád2\XXÌÍÍùÓé´¿Z5TÍãQ›››åH$ÊZZš™×룪aiÖÁ“`€` &$Æ$MS%Á9VVVD:b©tÚ.æó–•ööörwww¾£££‰D²Á`0§iZŽ1–w—€×d‹å߈€F{Å-µémP†sî5Mӧ뺿X,ús¹œ7N«©TÊ›ÍfÕB¡ T«U‰s®I!‘lÛ60÷“•Ú÷U¶‚dY>ŸÏljj2#‘H5ê‘H¤ …Ê~¿¿¤iZA’¤]Ð%Wê5¹×€×À7ºùªìßàßÛVWI\EÔ\Cu ©‘¢ЄÛ¶UÓ4=ÕjU1 C«V«j¹\–u]Wt]—MÓ„eY ç\rCŒ1RUªªrMÓ¸ÏçãÇôx<¦¦i†¢(†¢(:c¬&érƒ•u·Ô€[.ðšÜë’oÿfÔHh$£æd4¢lPdªBâœ+œsI! !˜[$·N§ÇD$ˆÈfŒ "2‰¨” ·Ô´U+×îÕ|¼Vĺr+È·ðŽë‰ØˆŒÆ"o@R ¨Üð[¶®ÎÚV“jÍz5PV-Ûxl7Üç ¿çëêÜÜÛøOÚ`_#cýþJãs¯5¶Vøºb¯Û7Ê[`­Ôßxm{;ÿ;¼¡ýÿ¾ý?}%¹uTÕIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/down.png0000755000175000017500000000314312033133562024313 0ustar neilneil00000000000000‰PNG  IHDR szzô*IDATX…•—ïTWÇ?Ï9çÞù±»ÙBK_(*¨¨Û*f´4ñú,&F_4ýCL|囚øJ}a4&&&›Ð†bc´€¬(X­?ÚB€Â.ìÌîÎܹ÷¸‹8AD ¡Æø47,µ½;0ÕÒfXž³¹ ,NèÜh—"˜Äz S#ÝÝ­r Àl T ^èÜYÝ¡0ÃÌHwLajÕTyÿ>Tr+÷º%¢›¦Œ×7bù.™i¬[=¦4Ýèª2©M“Ëz`y¹‡ZD»Oé<ʪy35 Á¬Ê/îóä°–âFŒJ‘_>¢Fa°gÆÏ¦ÎF¶òŒð‚E/ôh;±º Þ®¬¨Ä¡̃‰xÄ"@d°™£íýÖÓ;?xõݵBӴ焈w¨w íÎÍt÷\ozb݃Jíš²r͸¹²ß“ÿYxgÚ;'Þ•€Þaj,->Nÿ©žmí· v5BÖW@03òBïmk^üÁ\¸¡L§kઑíÅìêåø^)ÛT ᡽¢¼å{L÷,¦‡8‡x! u¬yv_wÌÜzû™åæç¤ï ƒ:NV~~úÚ¶C¸üå—ó‹ÿB­_5¼¶š£½>tû„A*HÙ÷‚” cDú‚C T„D…úv¡vî÷kKß8ñÕµ¬¸Z3ŽA¨ÂQB\úw»uö'9y@È\ "›ö2 Pcºž0SóÔNiøõ¹¹þZ¾ l¶|P¨©¢YŽ:B9„¨'¿½¿Ú:û³‹Ì¨Ñó {i¡Ât³ON½Ù¾}|îX¾–_Æ[>È´ —g<ñÒ (↾½ I-t®ÜèµÎþòóŸi‰'˜¹JÜ3]s„Óg;=2×ë®[þ°ÓÚaåwZ&â8ÚDê;ÿ¸[oþfùƒM2ñôFÍÓLékçÚ·Ž|éh¯[\v[X¾#çó¸!O¸âÝ{Özã•«œ<4CZKH“@ýÌÚ7Ÿýâ\Þ-â“Ü8&½” ®‚H\ç=·íõÓÿäÛ¦hœ¿p÷æ³Ïϳõ˜OzÝy$¨¾|Ë;]ûz?Ý}æWüéíÏ:\dñ’[Æüþñ¨“¢ê†8¹å½|×” ÝíQäáÿ-å O¢8IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/eraser.png0000644000175000017500000000377712033133562024637 0ustar neilneil00000000000000‰PNG  IHDR szzôsBIT|dˆtEXtSoftwarewww.inkscape.org›î<‘IDATX…å—mŒTÕÇçÞsïÌìì³;»3¼,Ëî"Ö‚P¡­®!€Åˆ¬ÖÖh M_ÒbФ66RCÓ„øAik4%M¨%­B+Ñj¬BÐåevA̾û6»ÜÙÙ—{çÞ{úawqtëK⇞ä|<çÿû?ÏsÎyŽPJñUí+Uÿ2Äèoª¯\ý»Û«Ö !Š„bÒ…J©/< T¼öË…¯&ßÝ]Hµr÷nº¥kíÂÄ"ÀüÔµ_PXáÞ_uò™ïeN5zÞ™fåŸ9©ìÓï«SÏo±Ÿh˜» ˆú•öŸ·…(}æîyO瞟ÖϘþM)”‡>vÞð= Ï£¯0ì5¾¾#»ëí÷Ø~°ã9 «&ˆ~f€±¼†VÍ/ùùmßúç ·¬–aj.žïâŒxm—,.*ça*—cíÎÛ¯¾ÔñæÞ;Ž´õ¨”rÆs÷™]ÿjŵ¯i¸óî…W/6¥ã ³dRjÄ%\(àS`À-JH˜Ì||ͬª[sÕ”èÁÆÅå‘¿ !†þ§Œ»¾nZù‚ûnZøÂ­wÝ_^cšº'mÀ!7äÌ8\‡¬pHÛxv8˜ŽƒtH¦Gàh3‰3'økÅôì1GëüÃÑŽë'À¸ë»¿1wÓmkVÿè–o/  Y”1L!“Ç9Ÿ$r¶1ÜÏ97ÏÙžkå•3‹ÒñDõ{Uó«[l~+Vò½ûÄžmÅÚñ·Jñ&ˆNÈ{SÍTçô™yîõÐËMg) àû¾°m{Êé––”nY¡iÓ¥¦¡é:š!ÚèË­|¥†aàU_KVÕO_²2å=¾.L%/‡È Ž-NäÎŒ°³u#0$•R¶M£ò à —ËEû»»§”–•µ…Ãå¾ï—hš6 0æ^ƒR¦y®§»»Äùð}K¦/D5_]òs×L- Öè¹GyäOûZß’@J)åM<B†ëbš¦èëí­I§Ó™™3gžÓ•ï Æz ¥Rʼòý¡žÞÞJ¥¤­¤î{—„ÝÖuš—ÎÈ¥L£åÖ'[–séú•R¹‰Çþ"€!%ža‡ÁÎçÃáiS§ÆãqÍWªT)E0L¥Ói-eY MÓR¢ÙY_÷ÕŰŸž–ðzªdþµý·[^jÝóq×—!„aš¸žG  ã8º®cYV,ŸÏ{U³fY¡PHOYVĶmMJ‰¯JJdÁV(p”àßµÕù‘€ì|àÙ¶û­¯çJ®/Èd2Ïó”aÂ3M¢Ñ(–e¡K‰”¥”nYV©ÂBhº®£Æ”ÂËf÷BqÿP‘iŸI‡¶n}µeÇX¡YWr=qè'Nœ8nÛvuYYÙ´X,f躎b´ß’cÁPˆââbá{žPcµà¹.ÿÚõ7Ùâù}[ßé¹ãµæÞ}@·R*ýØcMúÖë@Á¶íÌáÇßljjj ƒKâñx8ê…B)%º”ƒA‡…ïRŠd2éïzþù®÷:Ïÿñ™7šIç½®±;“ ‹ ‰"”±uëÖýxéÒ¥÷Ì™3'))†iR\\ì•––êŽmc;{÷î:xð`ãÎ;3<<|žIr=)À„Â@y"‘˜uï½÷n™={öܺººH$ñ¢Ñ¨>00 ¶oßÞ½ÿþ'8ð2U¸ûYÅ/˜¢3úØ•¯^½zÅâÅ‹½jÕªŠL&ãïÛ·ïä¶mÛJ¥R]@?SŸ·µ†Oÿ`0óæÍ/nذá÷À×r@~ŸšI›Ò i)aôžKa×÷ÿ¿ÿÿ#;iÝÆÚ)‘IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/exit.png0000644000175000017500000000357312033133562024321 0ustar neilneil00000000000000‰PNG  IHDR szzôsBIT|dˆtEXtSoftwarewww.inkscape.org›î< IDATX…Å—IleÇï«êÍnÛé¶ãqÛ11mÅ K4ÉD€fÄ¢DB9pä€ „R a D‰¸À+B‚’d2ec&[J<΂ÛYìv§»Ý]Õݵ̡ª«[s‹æ“J_-¯Þÿ_ÿ÷¾÷½×u9(²˜Æ0÷wT€)`â¨ëž¿ÃÞ®XìøßzˆCCDtý¾¢—-‹‹7orzf†œaìÓ‰¿nÙÂøÆ\™Ÿg>“¡jYk¾,"h"(¥ÐüC)…&œ+¥P¾Më¬+E"çÑ¡!\×åë‹'t`||p«é4ùáaR¯¾Š‰¬…ŽJDPþ=%‚øÏ¤åœÆûÕ*¥3gÈÍÎ2>8È×/Žë@8¬i¤3R¯½†¯Ænpêê"ÜÝM(‘@ëê²mÌL)ÐVVpVVµ¤u…ˆ?ñùË—Yçá„u×u©Ú6®mcùZÁã##$wíBÅVììï¯Ç¸XäÆéÓ$  Ô fÇ\× `‹ˆ¦5Ç<£÷©§è]3/ZG¤½ÑçŸçÆä$29I»RupÄqP­ÿÂ.Á' @|x˜þýû 5„űm–æç¹37Çݹ9Ú"CCtÓ=0€ò7=òÅÍ›¹öÕWôW*×qPJ˜Ç šÏ#¡J=_~í·ßø×§Ÿ²)b}<ÎH,†R ¹qƒÜ÷ßs+¡oÿ~z·l }Ý:xá¦>úˆ-‰„§€ë¢DL`û·Nž¤º¼Œ]*Ñ¿o_^5MþññÇœ;r„?··ó@{;€kš¸†kD,‹d©„õÅ\ÿòKªå²G"‘`ýsÏ‘ËfÁ4ÓDDLÕ‚\Ž¥~ cd„uÛ·_~ê“O¨^¸Àc==„,Ë5M"Dq ÃsîÏ‘ÉIòß|¼ŸÚ³‡tw7ød•H€( À“³ZeèÅë²ÿú+7Oœ`$ó€K%à ùì³ô¿ñ}¯¿Na×.Œ\×4¡TÃÀ:s†ÂÌLàçÑ—_æòü¼§@ƒêª–µŠÖ‘JN&ƒ„;þÁìèìôØ—J‰øÎóMO>ÉÕ;w TòHåÏ?ǵmb]]dÃaœLY•®”ÓuÛ¶Žï^¹Bxf†h 8¦‰4TËp,F®P€¸i‚iâÌÏSM§»è† TÓi”vcÇ jyWôÔ]ŽC5ÆZZòä­4×…JÊe¤\ˆiâÌÍf½©÷,k j!PŠŽ‡^Xøýw’¡·¶ {y÷Þ=ÜbÑm•JðõR*A>›Íb]º˜üiëV2Õ*J© tÛ¶Ñ”BjUË"B\׃ÝLͽ¯lR.#†QßüªÅ!+¶í-C?7€å‡@S cz:°ß8>N±AÆí¶u(P5€‹¡±±Àfñòeá0J«)¶ø« Ø@ Û6 µühÙÛW)°¸AO¥ê¦§Y‰¬VÀvœ Ñ0ÖîúT «¯oÍ£UƒFÐÚ¡õõ¡††›ÌÌL@kŠ/oåúu*Ù¬÷PÓxüý÷)ø;X#‰F¢w.]"¢iÍ!Pж‚ÝÕÈfQé4ºR« ‘eÛuç"¤ œïÞ±o_ÐýÔìJŸ}Æ­äæùóœ?vŒ‘¶¶&ððÞ½èããŸs‡1{ʉ`ù!Ðk ¨Z_'BéôiObýÓO°ûí·ù·®“8y2 aÏÎ"ï¼C¾ZeO(D[4Úyå•|öÛo)Ÿ=ËXooЦ­ Ak¢åŽÃÌdÅbìx÷]‡Sîé©ÇY)ú¢QÚtÝk^6l ýɽù&* ´¸ÈÏGŽð—dÒo! ×B ‡›bìærÜ}ï=z&&hëé ÷nœ;)^»FåÊäêU"š†6:ŠJ¥mÚÔÔQ•ùçÁƒl×4ÚC¡Üm AS4ÌöÔ /½Dä­·|æO2]§#•‚†åµÖøÏwß1yô(é:õÎØoJV€µ{ù•ÔáÃÌž=ËÆˆ%ÿØÈf9wèêÂö&„5­Ü·k&à8¸°æz×”BDè8žÅsç¸ÝÛ‹%66F÷Ö­€Wá2ÓÓTfg‰.,0‹1ÐÝÝóÆ„ªm•P*¦e…‹¦I´³sMðZÒµ)ŃËËÈO?¡~ùÓqÈY Mcs8ì­ñd²¸¸ˆ^ZÂôþ¾*:0u»Px\Ãë„“(×EüÖ¹&Ymïsü¿"Çu‰*E›_ÙÄ¿'®[¬ûþlÛf~q‘« Ü.¦t`âf>Üʶ͂_ï×°]—ÅR‰?òy€ ùÿžÿÅÖ=š°ókèIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/expand.svg0000644000175000017500000001040112214656247024641 0ustar neilneil00000000000000 image/svg+xml openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/gohome.png0000755000175000017500000000445212033133562024626 0ustar neilneil00000000000000‰PNG  IHDR szzôñIDATX…¥—}pTÕÆçÞ»{w³_Ùd IH IP[0¢TÐBk±VZDŠ R*h­uÔŽí¨¥q”¢#ÊÔ”¡S­þQg¬U N§¨T"( E£†¯,Éf³ÉݽŸ§äS,Vé;sç¼÷Î9ïyÎsžóž÷ )%çkWά_…P¿ùÖÛÿ8ßbÆ¥SQ„"@ xB „¡ HB€"³ç°ê1ױ꥔(B äÅAxô¯MÒïÈïýïRzD£”ó^$³©·¬\]:göœË€ýçË€vc®Ñõá7//\ºü6ºº;§ìil|¸ø«ûª LP¬ô‘«ïLÜqçÝ´¶¶ÑՕ≿göœk¦ŸðõUÔÈ\×þe·ß]¶ü6Nœ8I$BUUÚÛ;x¸a=W~óªj·¯³ ðÙ jù˜’~‘!†ZÄçDxÏëݹú®û‹—,ãLò ¥¥%èºN  ‡Èôö2ï;óiïh/hþhÿ´ÀK@×¹§–èºþ¥ÌÕÉýõþ‡«Î»v>]gH§»Ù¼y3yÁ<Ú;Úyä‘G˜P]M0döÕß"kÙCïíº-øþ"ÿk –DüÞ«=öŒRy=­-'•H`šOlx’wwïcÇŽ·Ø´i®ã‰Dhm9ÅW¯eÅšŸ‡4'Óij7“ùB–„TgÛÃëŸUêêêèL&‰F£"‘(±".ªŨbi“ç0ïÛsQ5×óèìã ¯@qó¨[Åè¢Ñ¤”t§º˜2íF©Tß|õfOèÀ‘‘ œ àÁD~¨á¡Ç7Q^^†Ñ›!F?ƒÚ¶\âábjj&1vlå%㩨¨  õ ¤»SÔL®¥´¬J¼÷Î79Rk>0ò.x¼$»§aãHÄãärÑh„¼¼Ð¹4ô¥Ì0 zzzˆÇ¼»§‘u¬•YO¿UJo«2‚ ¥E?kظ•1%ÅØ¶MAA]×ÿ¯É|>Á`Ã裺ºš j§‰=o½6ß´9-ï‹—N}aÒÄñ o]s/ÉÓm8ŽM<^@8A àI)%Òõp½«[€@ ûŸ¥”H@UúoV!Š¢d2RDbqt¿Ÿ§ýgÒ¹_« ,¸üºÕu´·ŠÖ–c*¸$È 1Íšª"€ÞÞ ¦™Å2M\ÇÆ2sØ–‰m™X–…e™ärYlËÄql4UEUU\Ç"âØ6§O§åä1âñBoÊ%—9öí}Cîî*/+{>Q[TV6†íÛwòÊ+¯°téRvîÜISSÛ¶m# ’L&I&“è®ãâ"Q… NSVVFII Ùl–uëÖáy×^û]Ö¯_ϬYW²jÕrŽ?ëz[€Ûa ÔÖÖ £›±c+èéI³{÷nV¬XÁÁƒ9pàãÆCÓ4r¹º® …ðt¤ëá¸.ÉŽ"‘cÆŒÁ0 šššÐü~tÝÏÞ½{˜:u UU•H)q]©jDûÍ£ ƒ¾ ‡ýèz>uµ²há"êê.¤ª²Šªª*|>………†A,EÑ4¤'q]Ë´((ˆ#„  1{öl )..¦¶¶Ž™3g‰ž'm€ç^|-—ëíÏÐvú4û÷ý›ÎŽ^ZZ:P5oHÕ®ë j®ôžDÓ4¤ôðœá~͇ÓÑ–â¢Úém>Aw*=,TéÙC ØÖߟdŽ²Ò .þÆRê.þè*¬®øPÇq°Û¶AJ\$°, ÛŽ5qÂEhÑnþÜ}ïZª/˜ŒçØ–ƒë:ÎgØGç§GqðÔó4=¡b|ã£?@: ´~<×ö¤'AÏõøû믳ðÆûYràÀ§ÛÉøö°ëcÉØòj {*–éà86®kQ¥ÙÃe.~-„a¦ÈôdèÍöa».Òs‡­á‰AßFhx̹âzr¹^¤âáy.fÎDÕúŒ>\ÛUÁó¼ý”x qÃ0P}*‹nXIa~)Y§@%ˆ•í±l`X+ZÃÖE,¾î§ácèèù„yÓ×0yœþÞ#g`Ú&fÎÄ•ê1PòÛ¸nÿ€™3 hyL¨)àÝOÿÌŽÆ-øµ³¦,aBüŒlˆaµÖå¯ýkËõM!2h>ÞĪë7‚ꂧ𵊹¨š„K_¦Íߟß-ËBOõÑãëASTÂyq|ØñÎVÖ=³’ˆ^Œm{9ÞÄÕÓN2}âBcü¤ýd»ÏèÖÐõ|:)<ûâ½´´´¢]n]ð+ªbóé˦ˆÆÂøH¥RHD¿ñðôÉ®ÚtWFi- Ô§FÖ„Ë8˶lz-Ð<`Ð÷*àÑUà}@È´½÷=°ÊxzÃË%÷=¸rTk[óÁ³Ex.ëá+g=#Çz Ÿ-‹‘çì³Ö6ð ÙiYö¡§ÉBjIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/home.png0000755000175000017500000000725012033133562024277 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡oIDAThµši]ÅuǽÜ{ß{³ÖÑ-È’H€ˆX,d X,‰‘±p¨§œøC\Ž‹Âì¸ Ç6$„r 6CÇDØ8&–A Hm³¼ínÝo™÷f‘‘œ©S3ï¾¾·ÿÿsNŸsºïçã•6±n”«™vÊ=‚´’‰×`{ÁßçÐ{Ù5™>…v‚ʷ㕼ûç×ħ!0\2b­ÓwX “'öx'ϘÓ3ÿÐysz&OÜÞÞÑîû™pDåˆþx×ÎOúß}ëÝnýäͽŸ¤¿ŒÉ¾е¹ìîOç"Pñ€"¦ÔeøøÜé3sw₎?yYç¬ÙsioïÆóp0ü¹B'!ý{xï-løå‹{÷_o¼¸sGü˜fê³>Ù0cÎÿ™=—1^ð¹ÃÚoXñÅ3Oøã“–ÓÕ9 “Ò$ÆZ‹s®v ¤RhÏC*Éž=;xéÅgyæ‰ÿxaÛÖä2ô>Ur÷Íâ` xâü…Ýûþö¼5g¯>í¬óD{Ka¹„µ£Ïµ?5qΡµ&ÈdéëßÅ3Oþ$þù#Ï=X*Lùv†Î­Ã½qÐPbùE ëüûKÿìúY3gÌ'*1Æ „8 ÅÇ+JiüL†··üž¹ëîM[^On2îÙõºï€Zœqî1˦<²ú’ks&qÕ…:^ë !ˆã”iS;èîláµÍ;|}@ÐïI©pRðȽwî~ã¿ãÕ‰{ê¥X‡_ÄEszgÛÛO]ya®œĘ!ä¨ Gû,„ Œ¦Mé`õŠ£èêÈ"„ã7¯n%xõ… "µÏÚó9ý¼‹'íÚ~×÷2âK«B÷ðÎ1 ´Š+´¶ãĕ͓NR( 6 øpa”0뉬Y½„®Ž,©±¬:c!Ë‹6rœ$Â0$“i儳N=ö©û×øÚ˜bv~aÁq‡^2iòLöBCŠL ~,”Ø#›ÉÕkN!— ˆâ¤žjMµB¯:sJ¿=ý[´VH)ê`÷GÀ9‡JRþhÑ’ömo>yc«¸â•‚û§´‰@Êîe3ç÷žîû­òýM¹~8áZ*G,Y4—k/_N&ðˆã´rkã.vœsú"¤„‡ %å5àà @™–Ö.¦Î™°ò£Mû¯Ô ´Š+¤òÿtÒ!‹¼R¾›”!€cBP,E,[z×­;ÏSÄI-l!Æ9ÊQÂÊå‹ÐJpσÏUÂ@ œk&1•¦ÎšÝ¾ýÍß]ÜDÀRœ•›¨ÎôýV ƒýàì Rʦϵ°9óÔÅ\wå ¤ÄÉ{0ç¥0æŒS¡”ä?~ŠÐ´VMÀka£ Q&“ë"Ó%Ook'Ý{5€cpI¶k´¸\ÆFy¨®ép25ð_<{)×_u6Î9’ÄŒÖ]Œ*ÖB±rÚIG¢”àŽ;g0_ÆF¢‘Lô2亳‡‡{ë+dáxJ©0€MËMà H)qÎF —\x×_u.ij0ÆŽ6c{Š¥eK¢•âÛ·?Èà`ß×MÖ¯ý]#!ã/Û¦è;X/ÛÔ•>~y¡CR,æ Ã(ŠðI£(¢T*Ñ?gíŧqÃUç’$)©1¸ƒü±Î‘/–Yºäp¾ùõKÉd4ýƒ£Î_Ór©€>NÇ ÚÔÕB:a:…Çtç$i“¦)I’¦i]MšE1ÅRÈuWžËuW®"ŠRcÁñ™Ô9ÈË·x>ßùæ5tw¶Q(”0ÆTæ®þ®iÇ©~4×IÛ*Hº„t !±ÎÔ]Õ¨•ŸGkÕ”Hju4(2*~A#ýáìn¥Ô!J{H¤”M$j7+)«©š«pÎÑP9‡Æ…QL©TÆ:[õ„aD%õ”jm…˜¬Î=Z „%d·!u^£ü¼pþ{BºÅRH;º„H%ë;ªáVt…ìБ‹uŽ8Jø‹ë/bÝš•õî*D[rUÒÕ=tíYÖ6Ÿ›:ç@*+²›‹{îŒuq÷÷mˤó_Q"½@z9Tí¥@Ô¢ ¢’NPª™¨”²^¯¬±qØl¤’Mý†k-a”ÔCM)‰’ª.Ã7NDÒ·Të‘ "Ië9>‚IŒÇÖã˜$Iˆ¢ˆ$Iª}¿Ày­$Q»?~º˜=zM¼ñïúÇEÀ;òæÝé[?™Ò3¾R"É#Ið}¿N`4/h­›Ro£õk·­5ð•V9"Ž"Âk%IJìØùþ†ÌÂ5ÉÆ[ß çþ_p,úÚç»ã·îîé™»@ù­([$£¾ï5ÙŸÆ Ÿá–¯÷û‰%!K\îcû'üª?³àr)3ïa Ñ«ßút¼ãþz~G¸ù‡Ó'M;µ½{žˆñ•%ð¾ïø>~àãyCDTC7Y“Zj_ÇDqJb‰ÓôíÚʶ=ûžÌñçé+ßú`øÆ÷’oé·&·”¶|cf»¾®÷~&›C‹„@ƒïkßÃ÷|¼ª7ö÷Ú©¶»J’˜(Љã”È8ŒÓ” ƒ|°íõâûEý½rËÜÛ”cP$)˜J ~Phÿó7­šb>þ›¹½3ŽŸÚ;—l®- ž†ÀÓxZãtNCœ¤¤)¤VP*æÙþáf6ïøøù]º÷ÖtÃm|;yPônǺd‚_Þ¾fºW¸|^ïŒÅÓ{gÑÙ=?ðÁY¬‰ÁÙzª®¼©—H塤&N"úvï䃶š7·ôë¦óGI®÷ ‰”iR±zj©ý¿ó@Ó+n› Ã]Ë'ºsfv·8cB×쉦ÒÖÖÖ>J{Pߥ9¬IH“ˆÁÁ½ìÙû‰ý ¯ÿ÷ûŠ/í‘?µÁäÜÓ™?(Ÿ†€·üVP ´ÄI…ó4V HK3DÜ¿ ç¢Ã;|9¯U»é9i'{BdœÀ%†rÉŠ VìŒÝ[%‘}Ýù¯¡s;¤5ˆ4E˜ª¥úûÿÓûqÙݸ„ƒEwß5ãþˆñÊÿ㩾|’$ø^IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/kaddressbook.png0000755000175000017500000000757612033133562026035 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡EIDAThÕ™°]UuÇ?kïsν÷½—ä½ü ‰!H00ÓÚ6 Ò"RLÓ2uÔþRhë`eªb¡Ú:-P:u±vüÕ™þQ«3ØJÛ1µT«Ð „ øHÞË—äå½û뜽×êûÜ— y§Ú=÷Î=çž}öY?¿û»Ö3ãÿóp?m^îÈ~œÉï}ïûÈó‚<Ï)­Â±ûØyì;¶‘€F¥×íã0¶tŒ3Ï>“O¾ï¬Ó®ùÎ[÷â8'xoø¬A^ä<ù8:ñ$†ãØ‘#T1òÌÞg_ž/"'Ž‘hÿ|Çæi‰©‰Iœœ²,ÇgMâìwéßO–ÄA™çþ—§ÀÉùS?῾¸õÇZbÿSÏ Î!®I‘w(tav†Ãyš!"§Váå)0"ÜûÙË^Ò­3GÛø FGvÒb7è4R´ˆ1bÄ$ü¼öÿ …Ð×?ûº—tûúw26v˜¥cã4³C„J¡‰iÀi[Ä%ëÏãy©0jª'Ü:Ïâÿã40Ô5CÕ0Ó÷"É2·þÕmîÃú!¢*Ñ[·þ:Ù.÷Ýwyáq>Ã;AjÔ6 CÑh„¨B$V%eUQUjFæY‘Ójµ(²‚¢QœRJ13®¸âŠ[‡††nèt:E£ÑV«eÍf“f³I«Õ¢ÑhH£Ñ´¢‘ç¼IÑ,hæ9E£‡Ž0¹o¿=òè#UY–ýN·ÓUh,ty6Þj6E㢋.ÊW®\I»Ó¦ßëSU•ôú=«Ê’^·/Ý^×úý¾ë÷ûôû}ʲ²™ÙÚ3m]<ºû_î¾{ã)=`f´Ûíßéõz׿á <óì³´††pÎ!€Y¤×ëÑé´Á@Äã|ºæœø¬È‰e3²¨ÚZ¾|Ùh (˜¬™iwp"Œsè𡔜jhT*„2 ¡¤R#†Š#Ñ 3jŒ®ZMkzš½{vŸ?oÅéõzq¨Õâò7þ*Gá×¶l™?°ê25Ô3”¨‘~¿Œ‡ö_ÿÆ·¸öêßMa#âçÒ$sÎcf¸úOÃ^„4o8“W»ýà`CØ0¯<®*KÔŒ²ìÑëõæU3bŒ„‰123;‹ˆÐï÷yô{Òí÷yüñïq|f–™ã3>|Øo¿ç«>¼ŸÏ|æÓ|ÿ‰ï3=;ËìL›^¯GY–ôÊŠN7y¥ÛëcäÑUyàæ;Ð)C=ølþTÍ:½YˆŸe)Qk¢¨Îm²CC-Ê~Å“O>Ɇõç²k×.Î]¿ž² äyÁ³»Ÿáºw¿çÀD¸çží¬Y»ŽÊªdM âèôºdÎó½ÇcÓE›ØñÐ6_|b÷euâXu~f¦§œ†@žå„*5þðΧPInÏ…/@C`Æsé—%ˆ™cÕšUüåÍ·r¨ÛaQ×]ÿG`Aõú&™ó Ž 7mà^óD# ʨ¦Æ0¿GM–W!7Ĩµ09q°fX4L@LPQb0–/_F ÒëU¼ãºëxç¶wqßöeº=‹!+„#"™Gp8/ÊTG¾ ¦tÊ>ë×®KVš.XuJÙp³3Ó€d¡ 4‹‚2DÔ"b`821rqdâÉ‹œ<ËÉŠŒÂç µ ‡•‘áÂó•ü"­¼â¶[oæñ'Ï©£hyNž{¼sdÞ‘9AD L˜“X¡ ] B`~ ²N¯‹€UEÑlPÅ~º"ƲeËÀE—ÇÄð€F­ãúU Þ3Ó |à¦÷sãM7 f|ëÛàòH,+.^„Ó$¤¸9»#^@.Ik$ãÆÆ×ø¹ËÖ1ú软g×î§9kÕ4ZMÜIˆ•U½ ‰)¼‡,àÈȲN* ê ¥F¨„óD €Ã sã ïç™ç÷3ÚæwÜI¬’¨V ê/éÜI­ˆ8|},s¬ö ÙÃÒ2â«1Þ²hš¿ÿÜç®ocÏÓOøÂ?|áØœQ1ÄHô HRÀÌØ·oçeîÜj”RMó¢KF‹Z‹ù³›oáªßúm¾r×]hŒ™™"ËZ:tŸùš; p"õ/•nUñʵkÓºÞaä„Xѽìí\xþ«îôÞ¹n·]^}õÕw>üàwïzb×÷r!*&&A#âãœ{«ªO!b hŒ¨Úœð¢ÉйþûþïðÑÛnfñÈ0oyÛ›yø£pȼhâ@ QS%†H ‘Põ醊ªêÏå@fÎ 4ò‚‡º+¯|ιxkÁÈdN Ìá,aX&u™,°zõjAMÃ,íšXòˆÃ03zU$JÁÑ£|ä£O;µ·ßþ×\øîó醒•+^Aô‚h]œÔ<ß;0q8ç“ìV_ËAÅPï‰ßþ;–¿ço÷nÿ÷íç„BŒ±5ub¦Q•„¹J$Ïó$¨9Ô’°ƒ/ª¨A¬•Ñ`¬_w|ï 0Ù™à×ý1e(qˆ"’*0‘9žïÅ#î…tb¬ZÄèÅÌ.(èL ;>ñ¾%-Ø„\zé¥ÌÌÌIÄggc½ˆÁö?³´«Ê ê| >W3.\HÔ>7]H™9Þsý°ë‘'ˆS‘78|çs\ôRïZ¢†e‚©RÆÈ+ÏYÀçÿä~qËÛˆ:Â%Û÷õÖ.8kñçw+W®ì™:6‘ÀФjá ‰'Vª‹­ãÖj:PG!sï…~wš<õkÏ^Ë'oÿ~Œfsˆ‰É}dY–jƒAüÕ67 ”e`Ýš5 ƒ(œS¼Î\½êE¸ ŠÕ™l5B¨B4%hD5Ö5ñJçì^À)ƒßÇ5ÄJɳŸƒ“ ‡½P:œ¸´g6û\ ÌWÇa¥L2r,C M]‹u«×q÷Ý_s,i±ùâKhŽ á¼w¤:A5&7ÏX°@±VD‚¡åü5±lÙ²…~ÕŸ=:55|É%¯CÅ3:6LèTdY†dïjBže(Šs1·qÆô‘£´Ë6íã]ŽOÇåŽåK—‚xENÞ,Á9e¯$„e )¾- æ"N2z•gϳÏñŠ•¯`Á°gû½_å‘GwžÒ ""rÁÆwŸÿê Wµu™ššÂç##Ã,X´ˆáá!ZœÆp“VÑ¢54D#o1ÔjÒiRd9îØÉøsÏ1y`’n§S!bUY¹V³á–,Yê­¯½d3«VŸEYuéwUY2Û9NèÇf§©ú%³3mÚ³ÇiW],(G¦ŽR~LíÜùðÒS*@¢Ô.¸_6ì˜(E&V‰‰'jBLäWTÄÄpêH=’h Ôô¸8W‰Ñ0‹+p~‘¬È¹£3Ug&æHà µ ”šó™ 1ñS}>„pÓ| P+Álâµ›Éõ«`C GüÈP‹FÑF«%ÍÌe®Õr­¼À .ó™C¼/¼ò,w♣[¶Lsçèv»ÙÁÃS#U¿¢JUÅ*XÐ^ÔXF ½n·$TeÙëöµŒ}ëö:Ö™íj¯Ýc¶Ý¦Wöd߯™œœðǦ§ÅÌŽŸJìÚmÛP#´š-ÚY>ý¹Ï¶€PM`¨>oÃõÃõõFý=¹÷kÃôP¨êãÒÌz•)m³X*6£j¥Eë«Ñ·ÚU¨ª{¾ö5˳‚›>xJã'œâ‡œ™9šfõo¡Š‰xL=ˆ7U5o¨#ŠW‚€#u'M ‹˜™™¨¡ÁÔ@T­bPÌbˆÑLUƒšš†]æUL¬ OÝù nÿøí§TàT]ÓX[ìEÊ–Ú͸ġ'Nµ•œál@Èëéõ±ÕuÓ æ53ÁœCTŠÄT&&ÎC@ œóÄÓôFOóŠi®´¨³KêbÄ‘Šw?µÁ¦4h¶Í­b˜ &)KÓcfiL]úÔºì9?Ê8ÍÌ®cðÒ-q«Aâ…³ÁuÅuR‰’î%½jrâpÞ9ÄÕçÞÏ of<»÷9Úñ0ëÏ]ÿRøéŽT9Ö®_Ï/¿bÞy?™÷Ä?á1þü¾ÔD°Tkx??åxɯYVÆÏlý¨ã!ØsðHëvIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/karm.png0000755000175000017500000000772312033133562024306 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡gAMAÙܲÚŠIDATxœí™YŒ\Çu†¿ª»ô½·÷žéY4w“"-q1Ñ’à5 Y 86#2„ ˆìì1„ ½P Lœ8D‰ÚZ"R hRcn#r$Jœ!gHÎôôôz—ªÊÃíI´äÈvœ²ìÿ·‰ßö>ú¨Ü»wïˆmÛ\×u]w,“É !|!„1Æ¥T¸>999ãyÞån·;ýàƒ^Ôÿ)#GŽ g2™žçÝžÍfo÷}Ìó¼~ÏóŠRJWJi´ÖBkÇq\Ÿ››[ÐZÏ,,,Lþìg?{mffæÄ“O>9ó¿JàÈ‘#k|ß¿¯R©Ü[©Tv—Ëåb¿öÀÆÞzë­Æììì‰ãÇ>xðà¡'NLÿºÏùÐ}ôÑ=_üâ¿Q­Vï,f³ÙÕ÷šÍ&óóóÌÎÎrãúu–êu¢0d¹Ñ P(àº.…B¾¾>n¹å†††(‹7“i¾ôÒK‡Ÿx≿{úé§_ø#ðÄOLŒŽŽ~oddä¡¡!Ç÷}¤”Ôj5¦ÎŸçì¹³\™½B³ÕBJ‰’LÆÃ²mlÛ¶m,)ÑZ#€$I°m‹r©ÌÚuëØ²e Õj!I’pãÆ }øðáƒûöíû«óçÏ¿þ[8xðàkÖ¬ylýúõC+À8qâgÏž¡Ùjäò+ ¥2ù\ž àûqÒX®361NÚt’ TBF4uj ‹tÚ-ªU¶oßÁðð0ZkŒ1\ºt©öÃþð{û÷ïßÿ›û÷ïüž{îùV.—CÒšÉS§xõÕW •¦o`ˆá[¨V«Tû*” ²ç:8¶M7 i6 TÑÚ ´&NÂ0¢†t»)A­×ç瘻z…¡¡An¿};žçaŒ¡ÑhpèСøö·¿ý- õa 8ûöíûû/ùËض‚f³É /<ÏÌ•yª£ãŒŽ­ald˜¡j?Å\€eÛ€Áhƒ1ƒA+ƒ1Û¶‘B ¤@ ìØlµ˜¾xËÍP,÷Ój.siú"KµEn»í6*• Æ”R=zôð#<òÇׯ_oÞ Öºùƾ}ûÜÿýcÐZS«-rôèQÚ lÚ¶“Û¶mãÖë¨àX6Q’E ‰Rhm@Ë’X¶@"M!cÁ¹sç8ö (—Ë T«¸ŸþA²¹çÏžAJ‰çyh­Û4>>¾ùé§Ÿþ7@ ‡~ø_ûÚ×¾Ç1J)ZÍ&Ç_z'×Ï–ïàÖëªV0Úíˆ8Q)°- Ƕ±mÛ²°,‰”K¤%Òk)p¤àôéÓ¼üÒq¦¦¦XX¬cÛ>##ÔòÒ²ð‚<}Õ*.LaI‰ã8cß"„Я¾úê³ïK`Ïž=kyä‘<¥*I8sönq€›¶°fdÏuh´BâDaYDZql ˲°-‰%WÀ‚ ½ø§~êµIŽ{‘ÙÙYü Ï-£kÙ´i#•¾ ‰Ò¸ŽmI×£¯¿Ê[oN“ÉdÒ™6oÞ|ÇÉ“'^½zuuó“+_ÿú×ÿÂ÷ýR·Û%Žc®\½Šô‹¬Y»‘ÁþJijËm”ÖX–ì–HKb½+Êïýn;yò$ÿùÂsLOOãºãÙµs;7®ÁC¢5Ý0F AƱ)•Ëx…>fggI’˜n·KÞ<ð—ï¼ذaÃèŽ;þ¨ÙlÇ1ÝN‡N¬]G!çÇŠF«ÂàØÙ ‹ïû8½/Eš2B¼UxñØ1ž{î9¦¦¦ÈdÖ¯ßÂÞ½Ÿ`Ãú1’$Mia¤°¤¤¾ÜÂØ9bcÓn·ÃV«Å®]»þ`Æ »ßCà®»îúBÅn·‹RŠN·K¶P%ð=´2´Ú]d/×Ѽ|üE&_;E³ÙIJ,\[`½ø8ŽùéOʱ_ä̙Ӹn–-[¶sç]»&Ѥ‹^€ ÷_ÀÂRƒZ½…ïeÈ•ªtº!J©•Yp>÷¹ÏÝ»2† p÷ÝwßÙjµˆ¢KJ„å+–q3.QH!Éf³üû3OñПþ kÖ®eÛ¶³}ÇN¶n½•6044D¥RÁ²,´ÖLOOsòäI&_;EÿÀ»wßɧ>uÃØ;B€éÍ‚V»ËÜ:BJ|ÏCë"¤…V Q”¦ÒÆ÷е'—Ë­Ãc Úh\¯À›o¾Áâyú«ƒlÞ¼Ñ[-BXŒŒ­enþ:o¿ý Ï?ÿ###¬[·ŽÍ›·°aÃ6mÚÄøø8Õj•5k&˜šzƒOìÚËg>ûIú)ÅÒèkšíÅz ­5“'N·Óa|ízJÙžçÑét¤QhÒ²~†Œë«t TŸh’D!ˆÐ¶…cIlÛ¢T*P*øØ¦uïíK4$‰A©w´ÓŠtr¾G»’¨ôµ0IºÚ{Á6Ƭ>KönŠB¡Ð›‹m ínˆç:ä?´ÒhmV݃2eVªÉ›´¡÷]6:ÕHÚ¨tw/ä|,)hwB,$cÈårض-Œ1b…€’RvÊåòªî×k–íTg pE²|lÛ¦T*Q«Õ¢8ŽcH‹cxþüù7òù<ýýý$I‚GBÖMÕc½Ù¦¶ÜÄ’’B. xØR¬P‰B+M¢ Z§Q6¼ãºùD’D“(•Τ×¶Èe=rA£aa©I»‚À18R#„$ŽcÊå2¾ï333s5Š¢Îj ;vì)%ƒƒƒxžG’¤9—ËHÊY m`©ÑâÚB(Œñ\›|àøÇZmx¥‰•Nª›<ѨD£1HÇ!ëgü ¶mÑê†\[¬Ójw1Æ÷%¹Lc¥®ëR­V‰ã˜W^yeèÆ8zôèssssKÙl¶4::ÊÛo¿®t!(eÛa±ÒhuQZSвsžç`Yií3+‰²rmÒ’gH+Œ°Â½~!M§Dºˆ¥F›F«M'ŒÑÆÐWÈs!ŒÒö2Š"FFFPJQ«ÕÂgŸ}öe L×P¯×k›vïÞ½])E.—caa!lŽC>›!dˆU¯ôÅ a‘$ Hë²eõôÿŠ÷”©|×=!Æ@œ(Zíˆúr‹Z£M»Å ®m1XöÉ{vÚ‚Æ1KKK aŒÁ²,>|ìÇ?þñ?s€ZÕ_{ò“Ÿñ<¯ ¥d~~žR©D¡PÀql,˦թ7Óž@J‰ëظ®CƱqœ´/pl›¥¥%Ξ=ÃÞ½{ÓÒ™¤éÇŠ(Iˆã„(NPZc[’B6C6c£UBœ$4  Žc:qw¿ò•¯|gzzú_{ÞÑÕõz}¾Ñh8÷Üsϧ———èïïgyy™8Ž ‚ÇqÈ*Å,ÙÀë—T¢ˆE+Â0A875Å¡C‡Ø¾ka¬iwcÂ(&ŠRÐRB6ÈÐ_Î3PÎág씨R,..Òét¢ÕjÑl6)‹<öØcÿôì³Ïþ30 $ï!˜S§N½>88¸~÷îÝ›—––hµZôõõ­ž !ð¼4­2ŽM.ð(æ²~?ã`Ûi£#¥À÷}FGGĶ,\G¦‹?çQÎô³ä³×FJRŠååenܸçyär9®]»F»Ý¦R©pðàÁã?þøß¯õÐ7KxÛqœýà?øÛûî»ïÓ7nÜ ÛíR(¨T*(¥ˆã˜\.G±XÄqœ¨úÞâ8¦^¯Óh4°mÇq¨Õj,..bÛ6år™£GN>üðÃßïv»/ï9¾ùTBk­—Ÿy晟W*•‘;wnJ’„Z­Æµk×ÐZÆšÍ&ív;íxGdýw¦”" CKKK,//£Tºž–––¸|ù2ÍfÏóÈçóüèG?zñ»ßýîãQf`U˜¦ã~À8>°î«_ýêŸó›ß|°P(äYi9ƒ  R©P*•Èf³!ÞÙÅ…x8B {E)µz„hŒ¡ÓéÐjµ¨Õj´zG“¾ïS,i6›ÝzòÉ'瀷îÍ@ÕÑ¢ NLL|ö¡‡ú³;ï¼so’$ÔëõÕèÇqŒmÛd³ÙU‚Ïóˆã˜0 q]×M;»0 i·Ût»]ÚívïœÔÆ÷}‚ ŸÏ#¥äøñã§8ð/.\8¼\¹9ò†¤jµ¬Û³gÏî½÷Þ?ܺuëíRJ«ÑhÐl6i6›4 Æ*°v»M£Ñ Óéày•J…\.G>Ÿ'r¹Ü/¹RJONNž{ê©§þãØ±cÏ÷€Ï‹Üt˜õëX±,i 7±~ýúß»ãŽ;>µmÛ¶ÅbqÄ#VJÝŠ·Z-ívß÷©T*äóy ……B\.G6›Å²,¯ž>}úÌ /¼pljjj’4Uæ€ë¼OÊü¦ ÕM>éŒT-ËZ3>>¾ellìÖÁÁÁµÙlvÄuÝbÇÙ0 Ý•™ðIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/kdmconfig.png0000755000175000017500000001010512033133562025301 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡ IDAThí™yåWUÇ?çþö·w÷ë×ÓÛ,™™$„ID‘ $( ‹±£¢¥”B @Y.Uš²JK,ªRK«"“€Ja‰q)IÃ0@˜Ùf’ÌLz¦»§gzúõòú­¿íÞë¯3d›a" Uœª[ïÕ{÷÷Þ÷{ιç|ï½b­å‡ÙÔÀ÷k?"ðƒ¶zî…N,ß08ŽB kŒ]Тd8ÁËàÑÀÁ—‚—a¬Edø½AQ”o.ÞKŽeø¹Å¢A)UQ"£bÁº±¦¨§yø–ã­gẠÔn¬¿¦\ ?Y)|Ç #¢ä^Gø+ ;ŸO,ÂÓçkc¢ÞXËŸ©ø…ÃŽ¨GQwŽ÷ëÖšï‰ï{F`úwgozùUè’ݱ°ºÈ‘¹SœZjíÞ6[{àxן8±úzkùŽÈ¹É– Ôú¤EÐV×wŒNjßÎ˯ñ]Ÿ¥…cm-1ÐéÕ»*W·ÒþÏ,vš¿ê)gp®ß=/ñ÷5~îåW]ü¡?¼î¸éê?a¢QÃuÖXúý”BÉoìݳívkmÉ`}ôœ$ËÀF´L …!7šÉêÄ×¼äµ×¼îÀö]÷6ŠÊGDȦ›˜)¿m¶Òø@n5çrÍy LŒÕ~³¾­Ì¡Íƒ|ü‘¿ä艓¬œic´eÐKÙl÷‰"o¦P𯷹­Æä­§°¼x;ÈÏZk·[c°V˜Ïw bpDí¼hlæ-¶?`éÿCÿþ)NöVÙL{äVÓÉbz週 ôÀÄÖ’y–3…Ê7ŒŽÍÎÔ÷=úÄ"ÏŸ ÝŽ9½Ô¦ßMQ"$‰f½ÝC|p+ù[½öÄdzÕÚ%µÉ‘?+×ǯÑy^ênlÐÛháGQßõý/vZßZÎ'z: äÉ«zIÇyø±ÿáÐწ$mNZhk¡— Xï­SñÂÑ)'|™ÀíÏ‹€R2Ñ jÍG7ѹAkA<ð« ÊšnÐE÷’º»¸óâ]W^ùµ¼bO½Q/qèH““G戻]D©ÂÄE;¯ËÒ«Ž>xtÿñl׋ƒ¹‹Î´›¬öº°U‰†^ ¢¨âPÎ3‚\3‹?vŽœ/…¤Çé Ï :·CàB¸MQžñ©íÙã¡[^¹>ØÿÑ+®ÝWÿóßÛÏ ¿t~±€Õ£ Fk:këøQ´}ö{?ÙÌÆÐF¯Òm5ÚD…P‡)ñ˜Ÿí씀¼l ï9Qž3"œÊ’|^D]&ÂÐû„uEiÂ¥8îŽ:D Ã`bf¬Qß}é ͸í«Ë€ÑgÎ…ñ¼e4MõçÂÐgjªF±ìãE /RøeEyT¥HA—zƒeµ4èw‰Ûí:Ï·À NPÂ-7ð*“xÕ)Tq·6ëæÁ(q¡Õ +•G„P@Q/,£J#¨bíˆ* J#ÏŸ€1öÞ4Í¿P-R-„.ÊÇ<åRðŽ®.·§æYŠ8¢ÔYýã„%ÜÒ8^¹W™À«NâLãU§Zk#¯&Ñú#J¤;V¨x! ß‚'.â¸A´ézÁÍ®áúÑó'Ðþèšmoöolži÷”@ή%åBëG>ýþ.?ÝxÐÚ”ïê"‹òBÜÂ(nq ·XÇ+Oà•'ñ+Såñã½ñýh§xh©Ûü`?Oxšl³G„µ´û+ÝõCÍÞ:ÍÞúsbüžZHùSK­S•,ØëÖ5N,ä¹Â锸ãÖG¿VÛy@gö%®/8N@ž¤€B%œ¨ŠÕ†$JãxÅ2~¨r«ü¯‡AyØuúí…n“I'$ÊsÚ *vcû©¹oƱdX«þúùF u몶جÛJ)Ùv…³½{Ý¶ÎÆFÿ óhX*.yA€rÏGùE”_Ä +8a ¯X¦Tu(×d©T/ª¢tŒƒê':£­ ÎÌ4á‹.çð®ÿ±r$³V¯j!Çüß"PÿÆ«*ÛÝiq…v¯Í‰£†T'ôµéâuƒõÎ?Ù+<?ôŸ­ÍŽÞ– ÄõB”!~„ ‡BIðjµãÑâÝÙ¶ûÿ€\¤8îøo*¢p3ËâÚNwÖ¡7`Êk¹á›š&ý„cåœjô9 ÔÞS/7zy{qÚ½²±§@º ÀZƒR"«K½WjòÇÒ+ß©üAÿWºAÙ/u6úÄ:ÇE¹>Ê÷ðpÊ•Aqùë¿?þùw\⦽›ê^ñ§vI83îF¸¢c°1¸~D‚‘£iû@ŽsSó9ƒý0pâ™Xå©’â»j»\Ïù ¸\­èô®†#8Œã²Ý+2[jù¡“tx¼sšeÓÃ`I°.泩57ßr¼uﳌ¾¿þ®=»¦oŽj*8±²LfsOá~Ù!¨(FFŠŒW+œ\Ycs=Æ$ 3ƒM,Ú¤ 7ÐÿùŠÛdQÅmxÕ)¼‘í4ª1o~ä·©¬>ÌjÜǵà£(‰¢Œ¢¢<ê•J9œÚX¢k5)–ÌZkHŒ%Æ)h‘ÿm‚}ï­Ç[™ Pzwí’W¾ôŠýÍ;ná–‡þ”Öƒ-:ÙÏwPÞ°î£`£Ûc£ÛÅQаêb Xm1™Eg & ͤƒ¬*¼%D¢ÙQm³pÿ¼ú®§ÿé>/Ƴà‰Â³à#X£YÛX+øÊaD\ -XCßzV㈢&Î;ÙäàvÀóÜkl˜ð±G?Ì\{ž‘ñ"U7Dù ¾à¸‚rÁŠ%±cÁ‹ÑCYõQª€E¨FV3Æ«k,|ë^V–X»ó;Œf}¶Çp­Å·à‹ÂEá`£Ak¬îÀ´µä21–ŽÉ±"ÄbY°é5g ˆÃkN&ˬY¥X )†D‘€ñ5¹›c]£‹%·–Ü 9ÖÏI7ߨAÿ«?Iqâ"ŒÄ¬m&H{™“óË(/$Ú¾[Oä•é<׎V¨‡!y*Ëpó Ç ÊUX;$ uFnrr““aI•¥,ŠK‚¡„Ú{¶ ¹E5!Cì&¼|ö¶OŒ£UN&) A ;±g Èi.hýCå/L’Ì]Š?:KqÇŽ€(D†mF¤½.wÇûør¾;:=Þ$üâxÌ8 ý8!· ”€µXk°:Ã$}tÒ#»äyJ¤sºÖ b™oâ» 2YlxäýGAx¤Z+m«+ à4'„û?RãØºgBœÈÅ«i,]Ò~‘‘]Ó•ÊPë‹Ð_]¥½t’?,ð@êñ­…œ§ÞPíòÞmfB¡o†‡.Oî¾Ä“£²”P§ô6–é®-±;ˆØnƒ™wîªV\çµamöõ#cý•œÁzÂrmƒÆt•~“Ù m5‚ ”B9†ƒF™ÿÌ>ònë¬44â¸(7 »¬Ÿ§8V£6Q£ÝlÓ^>3ìAq} AJ¤SVrŸë>ÿºžrÓx“_›HH섵¬ar‹ãEl`øVºÉ¢“1¥‚‰õN|•Ãw¦t‘ÿ>(ßs?&u1äd[ÇV,N˜óÈmU’¯^ÏÇnþeNrf%&M'¨ ü"â†('„tÑ^Ù$é'ˆã å…(¯€òÄñPŽCäû¤Þ_ê„\4™örrcÀh0k XƒÉN¬Ì1Ð9ÇršL’øË®¹+>æ¾>zÏÄ+Š]ˆU§.k²½ÚÀÉt® ©Î9sÿ4»÷îàžÇ7YYMJj^ q+. °Va¬Ân¥Ý“ vf«Êè•v1y‚‹bSyÜÓžãÇ£6±VǬA|ké®/ÑOû,æ‰öD:wÿ~-MÿÅÈï|Röûÿ…p)J®jÞßõü‹ÚWí¾||¶±£âEë݇‡ŽÏóØÜ Ù@c¥€[P^€(ÏG”‡ÅÁXAk0ÚžÝØÛ­‰Î±&C%LÖmp%d¾YƒÞÒ˜¹…nÒå¡Õ…õû6O>˜v¾ØÔùWdÀá{ZvíYRâiãen@í*O„SÕ)w,òjÓÝ»Þy“8; 8.“{§¨O××ÇG[—8U `¬ J¬aH 7èT“§“gX“ƒN1Ù›'¤¹arñö¹·Ä·}½’e ¹°ðÍ–ÍΫ…ÎgÑÔÏ﬽îh0>åæÚ°÷Å3l¿lÆ l®!‰-IjVD¶£µÃ”ÖÚ’%–¸§t4iªÉã&§uüàÃúØ'®Ø-_Ã{òÐû)¿uׯ³±^ðý@d.ºÂ«Ö\'¬`Ñè<Á|\G &Ë1y†+W4jk8Êà:Ï3„¡¥\±m“;=fö”pͲþN4BTÛ¶7ö^¸cÞ{ H¢ιN´¶ì‚ï’|uOÅ IVçȳífD{S“&ynÑù–w†¥«l=¼…g Ókž$^k’6Œîu²º¥ßš_——°;|‚áIr{®S¡çAÀ輞µO#N€Fl4œYìà\Œ±("ÂÖ~yÆ)õwɈrh¯¬“%',¢{kÄiå{!%·>.¥g 쉞@¡Ÿ×§PÜ:ñÑÖÂ}Ÿ×YtNÖï²¶bIS¬`r0[‘0zøªõÖxÊ{£+ÄÝœÖJ@>h¡³~Òšÿæ?Ú§n¡Ï5'“]¬¤õ³ëà™vÁ°ö¿çE®¾®¿>w­r‚}Êõ.7NþtrÉþFcï¢R„ÅŒ\óH4é7€vZ­–õU—c úêÕ«öc §N"Žcëœyž†!yž[ßí—eiYBª«i¥”>Ikë®éˆS§ij¹ŽmŒ¡ÙlRÅw€K.£Æ´„6yh–eôz=ë´ZkÒ4% Cˆk6®Yɦ &MSúý¾}f·Ûµ×„e¹7Žc|ß'˲ÇßyçKòÌ'žxbFzè!Ñ_.--Yª$‰ãú¾o#’€ÃpßwÐêt:– Ñ8°'̺†!o¾ùæ7Ý}â8@ÏÌ̸jµ[[[ÖŽÓ4µÑÈÞ]b6¢996¸¾X–\g•½ä™bfApòäɱgÞyçCý~ßÄql³¡Øµ/N­µ¶%…ëÀr/|–¥Ã0´N)@î¦åyëÜ¢N§³‡Ià³< %hOÌÇ-ÜD0 bVJ)«I(B»IJòYزÂÍÆEQì[FÈžZœjô@%Bø¾Ïîî.ÜqÇ|úé§ÔëunܸÁîî®5“C‡±´´ÄñãÇÙÜÜäøñãDQd÷p’_´Ö$I2æø®t»]Ò4ejjŠ$Iì÷£]{ô}Ÿçž{ŽK—.ýð~ÔçÏïùõ¼O7Q„5Å—ª!g.ü7ó¿{Š¿}™â½¿ßóÀ_gÕ€xí'?±&¶-Þ,‚ •Æjµvæ;¬¶ŽQ~õ{œùÖý̾]í´F¡a!í4ð/(’?=Ï÷¾ÿ(3õ€2¯`|Ÿ¸_BÙ'$')=ò¼‡Îr(s¼² ¬”P–T§sýgÿÆß}}š—ÿù+ °€5¡‰"Êç AÀ—~{_~û™½þk N]…KGa34œ¨ÀV $Þúf›ðè_ßÃò"ä@Àð\i q*ƒnò}ˆ“áwZÁÇ|†OÞþ)_9üOt»]ë'“£0™ÈäÆÁ`@­VÜþþ|è€v;=C¨IaðZ%Yá“kèp~~ø…¨¼Ò ßïÛˆ7Y‰Šœ{|Àõz§Î#:ÐÊ‘. ÀÌPBr d.Š˜‹ŠÑ# àçoßæ®•ß„„hT1Ô¼öKŒ§ðrÅZüÝ6_\ì'xéüÍÒ—ÙÙÙavvÖF$wÉßÚµ1 cÆúý> DÓ-^x»KaRJ(åþ/çg—yõæMZ­Ö˜/üJrÈÉ“'YÓGøá» ¿ÿ…)ÂÈgª•Ô"¨…p´U¦AŇª?ä'qµuŽFCЦ2PÄ@/•ÃÜoÀ­Ùßb- ›ðÚéßáå½nsÆAÓ“Iò$Á$IÂüü“ÚÐnÃQE>™‘•RDQDš¦|ôÑGLMM177G†¶+r7áÅì”Ûa‰ És’$±MËåË—QJ±´´4ÖðL*Ì2à0Æh·­“ËÈ÷}ºÝ.Ýn—f³I«Õ²“Û»Zs'"¼\ecèv»ÌÎÎrúôiËR§Ó±S<)Ïd@|ÀÕž‹\˜40N‡^¯G£Ñ R©Œ™ƒônÛèÎKÅ®””/q[ÁDx·¼ß€[cäynd¼!¨Ñõ±²VØ(Š‚`ØÔH¸•ûEr¯;SrG.Cn)2H´/€ 'ö%Nš,éÖ¤¯•|0 xä‘Gh·Ûcm¡D¦F£A«ÕâÂ… Öî]Ÿp'Ønï Ø?É€¬=Åœëxnôð}ßöÂîpKBÜÖÖFƒk×®±¾¾nAçyÎââ"O=õ|ðÁX¾pÍÇ‹º=±4ü“‰Ófb7‘Eadc™»aN&bãîð7ÏsüqªÕ*‹‹‹{4uáÂΞ=k'p’Ð&MÉe_aýs}`ÀsCžû‚B& "´8³ËÄåË—Y^^¶ùCü R©ÐétxðÁI’dlîy¸s&qø}MHæB#DKŸLFSkk‹îxQ>çyÎ}÷ÝÇ«¯¾J½^·BЦxàæææÆt2¬º@ÄO乓N,ÁC·Z-±åj­V³Î#`Äþ%z¸Ã(±Í<Ï9wîÏ<ó Ÿ·^|ñEëG“¯Ÿ\b¶‡²u—»îºë.ÔK/½ C]µZýÆc=öà=ùä“þÊÊ ½^Ï:¯€pWHvÓúÝêyÕjÕ2¶×â8æ…^`vvö§ €çŸ~È€Ð_à»÷<Àü¥'$«S;VJ‡À …É]Ÿ¼ê>Ç>ð>†††ñ±Qr¹wÜyKWœéV§†œ{¨„*7•¦Æ>~í§næ½W^Á–­[ Èd2I*•b||œL&Ãm_ÿ&ÇŸvWÝ»óÀŇB°9on†0öÑÔëì{žUõ_`*¸µ”Ë|äºÏÞÆ%ïXÍæÍ›1„ ™Lâû>¶mÏç©F!—^ú.6šÛ÷ËwZ^jH _Ü'£F•Êp*ª‰ «Ï §¾S)æ®ø—›îà¼Ug²eË\×¥©©©ÀqÇ!‹Q.)UÊ\|ÑEŒLäŒÏ?q‘í¥ ÀÓnžLÝ”Š}ê¦;XyÆ)lܸ‘X,F:&•J5,`š&®ëb˜ù|žb±Äê W3²·Ìúß<¾*æ§ËÀº?€”Y™¼/Š¢ ¾øõ{8õäålذßóhmkãÉ'ŸdÍš5|ûÎo3o`€-›7sýu×qíµ×ÒÜÜÌYgÅÔT†l6ÇÛ/\MQ¹<ÿÔC+c^Úýó7 Àâ•fQÉÜ/ ã­_úÏïqÄá‹X¿ažëO$H$T*~÷òËŒ‘Ïæ)UÊ<üÈ#LOO#ꆉǓär9¶oßÎßýÍUø‰8߸ñŸŒ·t{ÀÇÞˆBodºEeσ±˜wÊÍߺ…óç²m[Íç}ß'cÛ6¹\žÝ»wÓÑÖÇå—¾¤Å+ë׳hp!—_~}}}h­©V«LMOsögà¶ô±î'¼%æÆÛ•áx9¦ 6F^×JÐÃ3£ ôk¬Šr#÷/<æTÿ37ÞBT)P(ð}×u¬#„8¨57г¬¹ÿû×ë7Ó¦X,R©T¨T*”Ëeº{ûظq+ûë÷¢£â&åu+`û €ýÍx¡ÌŽ£ëî%µ"Šä›zI­¨Ô#€i²cçNšRq¾rÇ}tÌ9|®(Œ< µ5ð ·¯¾â#\vù{øáƒ÷I‰k;¸qŸDÌȦç‹$zαÚ[[·/¿àªsÎK<óÔùJ9Ÿô<ÓR¸1“ž®N,ÛB)IØv Ã0PRR,ª~Db€®ë"x=ZktÝÒµxP‹%JiªA€ãºõgÅöí9¢P¡-Ú²Îö6>~þð™OU6mx9o?;å´ÓW mÝóâ¾5wî¼g-Ë"÷pœ8{'§2D)E__™L†0 è뛃e™H) Ã˲R6”<Ø}¦8ŽƒaT*FGGQJáº.ìÞ½!¦iÑÛ;‡r¹H©T¢Z £½™ÌeéTSûy«/zjÓ†—_™‰"ªçõ)LÓäÆÿ™ññqJ¥·|å«Üºv-/½ø"ccc¼úêFlÛ¢Z­R®”Ý=Êää$BˆšÂJ£Ñ j®‘H&‰¢ˆ‰¶m355ÅÚµkfÞ¼yüÓõ׳fÍ6oÞ‚iš¬[÷sòùi²Ù|ÝHö¯‘C4ÂàòË̶¶V<Ï­s½M†LOOím• CCC´··!„ \*aÛ6…d%GA1ŸÇ4 <ßG*E¥TªElÓdç¶!R©Éd’X,†‚b±H6›% C:;:Èf³ŒÑÓÓG[[ ¦)p— 0M{_âXwÜu÷þ`Û¶mã8qæÏ? ×u°,‹žž>æÏŸÏ±ÇK#!‹ÅbØ¥¹lßu©†¸ŽƒÔ5¿6MÇõñ>©d’T:Ý Üþþ~âñ8Ë–-£»«‹ùóçc[6+NXëú$!®kS­J,«ÆŒ­­-œøý°f”¨†>¦iàºB˜ôõõÒÚÚŒÖÏs{Mjš&ñx§ìZ ´m´RX¦…a(­‰ÅbøûCÇqX8¸îîn0 ƒ={ˆ'â8®‡e¹ø~@µj`YªjF0kòùÉýŸ‹Zk)¥2#%10X¿~““{©VCò¹ÃÃà ¿&‰ Ã( QZƒÐh QÖØVI¢("’acÏE/½ø™L†|¾@¥\eÛö토§§ˆRII]79 @µ: ‚ڴʪÓ¤··‡¦TšÌx/ÖħœOfr„ö®öYý”RH¥QRJ Z×ò%­ˆB‰eY†@)‘jô“RÒÓÝC2ÑLÊo'•l✳ގaG,<Œr¹Œ %*R5úe6YJ*,B@&¬X~_Ýʪwº<¶á“œ~iãëaÛ&Q$4EQÛ©åVhB)@,æ`Û&ÅR!ô,JÙ1V¬8™;†YvªÅÃ/|‚w}ðxF^qhëHS­VQ²6 Z«HÊ:‡7¨ƒh­Ð Ö~ívÆ+¿fÝ®¹É ½qºÓG‘,Ÿ†’ï«ÆñJ) àT¨e´¸1©#¢ @"æž»ÿ›ææf/^ÜHî‚r•/~þ‹XC¬Î’¬Ò¿¨™dt4ýSpæ™'£Tm|­JÍŽ'V$åê×¢©ˆ2ªrÌ©]XÉ·0=&)IEg›‡4ó¤[r”Je,Ó' ú…4Žc#Põ\Fc ÓqH$D‘$ «(¥ÃÚ:¨N8»‡¦®^öŽTéH+úÒ) Á$©¾"Õ Š"$’!Zƒ>Àà–œ @#„ÂÀÒšé\†tlV`ÓÕçC¯@II¹\azç8##;X¼d1Jéº ÕÒ ©iÔVU5”LMNòž+¯dÛ¶- ’É$†a°w*C‹s$M²î¡R*\Y`rg@.ŸÅ»D êfP*š@`jÇNa*7f²jÕYµÙ/µÑJT’©$år )Z×f@iÖ¢îëûú(¥PZEŠ(ªùt¥RÁu=Î?ÿ\\×#f'pm4(­)W ˜–¨­Uÿ4Å„žµ¯‚Ñì³Â=,ì|+Çu • B$ÃZç:-Ö|RAíx$Š@×”ÖZ¥4F œ4h”’(U¡”Â÷=–,YJ*‘D¿XÿuJÑs[g`îi„Å©Ü._ËÄÖ>øáÆÃIÇ®ìªÊ²ùÊÎ'ªežNÞÅ…']Ï¢îÓ)JiX()©ªZ)"©€]FQÍm´ÖH)ëD І&ŠBÈÚ4êš»ÉH"•Â4-|'ÉæÑu<þÛ›ÝN!`ÅîaÉ‚cX¹äñìVŠÁ$ZKiÙz–˘§œ3Шk;w×ÿüòý{FJ¼úÜA5`Kæ't¶ÆÜ®Eìœø-‘¨°: ¥BÉ Á@aEaã`×¶m¢(Bë981‡HFd³Y|Ï#s˜$½V Õ1¾|ï{yò±ß’ËXdvVÉŒØÉ ëwý„¶Iûs©„…¢móe!De& 1,m£«RÈUÿbÏxöš¡ {iëlÁ6- Ó!Žcûø Œå_æÞÇÿƒu/Þ²ó9p6~<ãÆpœ3tlÆ\d"#‰0Yçq)5Õ B*™¢­¥›˜éSÜóè<ð½d}ºç¶’H»ä'«"Æ®Ý#Ä[âéÕ (º1÷s-ky®ÆŠ¢ —ŸªR™d† ”òí})ö K<·Ìw¾{7„APEò-ÊA™Áôe”+Ó„Q•ŽŽŽZW¥Õ~Û´º8Q{EŠñ±= °~òNžûÝ´µv0¸p1›“alSž ‘nõÙ½%˲0œYÏcO>Dÿ¼…­Kþþ=“c·ÎŒ.Î{÷àLýšt³ÿ…‰-*ÙˆxsŒ0PtÌMb&C6?Ÿ¡µ+ŽãÚ˜~^ù™M±\"‘ðøèG?ŠçyÁìÔdÿ"„ÀqöŽç¸ûÑÏ9C¤Ü.âÉ8‹Žìcú1v¼º—Φ´0ƒþ£›Øºa?îK@Oosçv¼ Ž?¢qÐÔa¤ä[»Ü£«•ˆ Tr!ÅRU7÷y¡m¨Xv²Œk9dK%Ú:º3ùñæçdØ~Ü·SRÊ™ óëmˆ˜Ú9ö‚YŒ¶Už–¸¾éÆTÒsrX¦RŒ°‰JEËYˆ4·$±SÝ]í'¿‚Ùg£—¼ãC+ Å©÷îÙºLE†òœDî¤åg¯K77•6l~æ’]£;ú£–.>nhÙ²ëlË›mk­ )emSüG´¦15=||®°·EGf¹­½w}!Ÿ÷§s)!d$r­M¯>ýÜÏiýSWF¶F·å¯Õ¼k÷ΩÆwµw3ÀJ|ÛÛ.2ÞÆE`×û%·^·³~õë@ ª®¼¬×#8ñj§Ïõ C¥~UoÿÆ-3„ÿ£57Üõow|÷˱gŸùM‚ñýýc¿ÐÌ V<ìå`_Fö/ú€û[vÿ¾?þÅ7wجµÚOIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/logo.png0000644000175000017500000001161212033133562024301 0ustar neilneil00000000000000‰PNG  IHDR@@ªiqÞsRGB®ÎébKGDÿÿÿ ½§“ pHYs¸¸W½ê„tIMEÙ;õ®¤J IDATxÚí›ipSç¹Çg•,É‹d0Ûl†‚1K -„[–‰ -!¤“­mr›éôÎd:é$퇒¶$Ó™6·Фäv²µLq/- Ó ¤i›”Rb06YÀ˜¸`V¼ÈÚ¥£³Ü²’1¶åÜÞé=3K²tÞ÷ù¿Ïú –eYü _"ÿâ×ÿðY-”«¥}V–)Z ‚`?ÅbÄb1úúúhkk£££ƒ¾¾>‚Á ¢("Ë2ùùù”••QVVƤI“ÈËËÃét¢(J éûþS\‰{÷±¿ßO @Ó4[€Á±, ˲$ ÇCAAUUU¬\¹’©S§^Ò›ÒuöövÞxã :dŸîÀ _oÉÁ>gš&š¦Q^^ÎÆ¹ùæ›)**ºa`7* 644ð«_ýŠ@ €a¶&\ÆÓIJLQBrxU7`a:F"ˆ©ÅAqÀ÷SÚáv»Y±b÷ßÿ?‡œ={–úúzQU5½[,,0 $—%,JQ9ª·5,¢³Àþ\j)l ôP7Zà"šÿÉ`'z¸Ë4²Ñ4üü|}ôQ-Zô‰´aT¤Û³g;vì@×u[…-ËËDõM¤pÆ—=c¯9Íá§ýži`é¡3‡ˆœiȺOzÛS¦Lá©§žÂét~vH$غu+ÀápdlÈÂ5¡÷¤¨EX¦žRùë8àç?ß‚L^é,Ü?‡ä*ººÖ ÷6µ]#¶µ!òÌ3ÏP]]="† }“ºº:EÑVãâqø&{êï×Ûô;ÄH'Ï?ÿ<†a ë:’$ÑÝÝͳÏ>K( ¯tE5kSaqÐ}‰X†FoóN=gm°òòòؼy3eeeÃîkØZ@vîÜÉÁƒEÑŽÇÅ îÁQ<ÈÍéÑ^—Os×]wát:1 Ó4‰Åbø|>žxâ dEE”dâ—[ð¿ÿf* H RkZ’‚oÞ†~ßcÚZð /Œ¨®€––víÚE^^ž½°wÎ:Å“±†°Óë/±ÎV\™ÚÚZÂá°m^ñxœh4ŠÏçã{ßûªª""ñË­øßAqöû˜k…$…1‹¾ŽèpcY¢(ÒÖÖÆ/ùËÑWƒé4tçΘ¦Ù©LœãªÈ?L3çÄC%Bí‡Y¾âKX–…ahš†išH’d×&Là‰'ž ¢¢Uuí8Éåw_"rþz¤Ç! QRðͻ۪ªòÎ;ïÐÒÒ2ä>å¡T¿¹¹™ææfTUM!«8ñÎ]– 9g]É@'V<Ä‚ ‡Ã‚@<G’$DQDE$I²,ÆÇw¿û]b±/^äýcÇh<úWüÇ£¨žb¼sïD-,Å2’v(V‹ÊÈ+½™èÅl¿±wï^ªªª®IÍGä¿õ­oÑ××gÛ~ñ-qø&Q"Øò6bÏ 6?ý ’$Ù¶Ÿ<óo¦–eEQ>úˆ]»vñ[É;Ï”Ïã;-C8Î?=‡©'SG×Ù²e ¥¥¥¹™À;ï¼c O?ºjá„TQ3š Ì4‰_9…¯x v'BÖég:ZQQUUU‘$ ]×™1c›6m¢´¬‚„ÿ<½Í»žØÕŸIUߦnŸú¶mÛ®ë ÅÁ÷jÒÐБw›¸Êk$eÔå§õ“ŒG©©©±$É~¤…O› ,ˈb*ÿ—$ §ÓiûŽåË—ãtæ±lÙ2gŽ ‡Óù‰‰ê›Œì“²qYæÈ‘#ôööº÷A…B´··g$<®ò¹ýÑ|`Ä$)’ɤ-dZðDIZ+Ò’öiðöïßϸq㨮®Æãv‘ tØÅ’¨8Q½m0%IâàÁƒ#7®®.ºººúwoàš8AFÍÓ €ñ#X&†‘%d&™À¤…—$‰xüß´Å̺ }D]"ËÐmåµ,ë*k=EEEYB[z<ƒÅ,QqÐ{l7•S&Q[[›Õ xî¹çˆÅbȲ̴iÓ²¾/Iï½÷¯¼ò ³gÏfÙ²eìÞ½›ÎŽJ¿ð@*´úé.3Ïz'MàiÙ,/˜ZlÄ   JDÎÅŒt±îÎ;³ÊÖd2I]]ñx‡ÃÏç»æô#‘{öìa„ ¬^½šsçÎqþü9Jþíßq”LË­?(ˆ$Ã]vUhYeee#Ë&Mšd/¦Gý©îÍ0¦`Y–ž |ú%ã'0sæÌ,§¸oß>ÚÚÚ˜;w.@€o|ãYOQ9|ø0ÔÖÖ°ß> *j\>0œh7AÐvSU•‘åUUUvÚhDýX†6<¹($üçõ\bãÆ¶Ç—$‰ÖÖVöìÙÃÊ•+9~ü8_üâ™6mšî$I¢££ƒúúz–/_Ž×ëåðáÃè†{âçå‡MÀD‰øåVRNÜëõâp8†ÏæÎ›U±Å:N€(e¥šƒÖû§þJMÍlfΜi÷¿øÅ/¸é¦›hkkC–eÖ¬Y“å4McË–-vq‰Dh9q‡¯ǘ©£rÄÉÐ íj>SRR2h÷HL}ªªªp»Ý¶`‘³GDyW ìë@óŸçË_þ š¦Ù÷úýïaL™2…öövÖ®]KII‰­!¢(²{÷nzzzX¹r%n·›¦¦&zý~¼sïJiß(ʯإãv×ɲ¬~zMAp»Ý”——÷¿Ñ#~ݧ¯o¢D°í¯Œ/-cüøñv8kmmåÀÜqÇ444P]]ÍêÕ«íH–eŽ=ʾ}ûX³f ¥¥¥\¼x‘C‡áµ:•„YVN™hª€K’蹺_Ã0X²dÉÈËa‡ÃÁ¼y󮪞 9ß<$Õè=GÕŒ™x<A  ±uëVæÏŸOSS’$ñàƒ‹Ål¦¦¥¥…×^{yóæqÓM7 …Ø¿®Â±¸Êç¦ÖrÏBõhšÿ¢Mîx½^ªªªr£ÄV­ZeSS‚ ¸Ò† úY-ÐA2gñâÅöwvìØa3Ë.\`ݺuvŽ!]]]¼üòËø|>V¬X ¼ýö „¢ß²A”GÇ>I2Á“J¥–…¦i<òÈ#¹Óâ………¬[·ÎfoÌdŒ`ëŸ$õ§¤ù/àv9™>}:–eÑÙÙIcc#Š¢ÐÚÚʪU«X²d‰-|0ä'?ù .—‹»ï¾EQxóÍ79{î"c¿ðR^á¨Êo‘èùfÝÿ°5§²²’ùóç®/ðÕ¯~Ÿ¯¿Û+JD/}Dä\Ó5õA¬»… ?i¦ˆÉ­[·bY‰D‚É“'³aûêëëãÙgŸEQÖ®]‹$IìÝ»—sçÎR4ë6”‚ñ9w›ì>F"LèÔ»¶ö‚Àm·Ýf7rsî ɲÌúõë¯òu’JðÔŸ³šZ¨›éÓ§¤êôžD1Et>ðÀ¶·ƒlÞ¼™®®.î½÷^<Û·oçÔ©SŒ]ôu\e5ý¡vå·(hyËn”š¦ÉرcY¹råè:Ci¡kkkmOL-ŠÿØv™i™ÉX€I“&ñá‡Òt´Åã#¡%x衇¨¨¨@’$ÚÚÚøñŒ¦iÜ~ûíȲÌoëëñBŒYxÿUÊ}4œ£(<ù6Ñ‹Ùí3Y–Ù´iÓ'ï <óÌ3¸\.›èH†®Ðý·—± =5ð$)œ;wŽçŸ©`zÄÏÊ/­`Á‚†ÁøéOJ<§¢¢‚òòr^}åzƒQÆ/ûToyNæl¾Ñ"|¦ÈÙ#©ò·ÿð¾ýío3f̘ak‡·ÇOž<ÉÓO?µ°RXJñ‚ôÙNôÊ?È/Ÿ¨æaö¶±iÓSX–E}}=ï7Euâr*ÔÔÔÐðÞß]cð}î$§gôãn¢L°å-Âí‡mÚ.S[[Ë7¿ùÍ3y½ûî»lݺÕv0iç8æ !H R^Wü'å%EÌ®®f÷îÝ8˜d >€¯ÓI’ì™BEQp8¶ eƒF?|¸ùáNt0Ûêï@Óh·ƒÙ~æóLó¨1Ãù€œÊáOú™\#ÁHú‘¹ÜgЈv£3Áÿk×ÿ§±õ/VÚhIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/lower_implant.svg0000644000175000017500000026703712243667047026263 0ustar neilneil00000000000000 image/svg+xml openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/mail_new.png0000755000175000017500000000127112033133562025137 0ustar neilneil00000000000000‰PNG  IHDR szzô€IDATX…ÅWMoÓ@}ë4¤±¢¤ ªQ”UŽêð7òOs‰”¿¡i-ÎÁ Ò‡ˆ|îp°7rÌÎz]Šú$kã™Õdö½ÙÙµ "Ü'ö²†ápøß2ê÷û"7dâý©”D„Ñh¤õkX¯×B€ˆ DœtzÔÙ€ˆv)å6ŽÎHD¸¸¼Œ%Tìïô¨’sg;ª‡ƒ–"B7b6.ÞcrpÂÈÃé¡gôk€ù|ß÷á–^?Ùg©çäP ‘RîØ²`%X,H"nm:ê99”XšÍ&ˆ¿Ö“/K6@ººÑÏÖÀùxŒ·½ªeWùÔ›äàÀr†!KïmåÐe@áâ7a2]çâÐíÔL°5°\­àû>ªe“V@1êmè »àq£S˜¢Vù²£ËÀùxŒ^b±&׫ÕèÕŠ'@DÏÎ@Dp÷€çÍ’Uµëæä1Àî‚ÙlS‰¿)5íŽô"²óu`¨º.`¹>|“ÆU˜pzèO<×a¿DxÖ¹Ô›ŽhØ]E’H[›-åœOV‚ @DXn€ßU€â·µ7O«F?+Áôê íV •áøQl+Ò|Ô{^²» ^«±ÍÄÔ|L²èÀJà&E¸ºøôC­,ÈNu’J¢(B¨”‡Òº©1{3*”€*ÂäEDé›}ÏÚóÀ2ðu:E»ÕÂJ:øüSW*vr¼l?¸¾ïV/Žqäܰk»bÛ`mƒÁà‰ô§‡¬_7ßqH)µ4ˆûþ<ÿN×ß]½Ýò±IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/med.png0000644000175000017500000000052412421234706024111 0ustar neilneil00000000000000‰PNG  IHDR´xl9(Ï0PLTEÿÿÿÿÿîîÿCCÿEEþÎÎÿþÑÑÿúúÿ ÿJJÿÞÞÿGGÿ@@þÕÕÿA'\¯ßIDATxœíÜIƒ0ÑÄŒf¼ÿmsboœ‚ŽªöFoý‘úõ233³¦ÍÇTè˜ïö]––<~-/énße©{êŠîKè^t³DS‰¦M%šJ4•h*ÑT¢©DS‰¦M%šJ4•hª¢çTk-ïÓkõíÿL[Wi?Kès¯½ß¦æè!—H-ÊC{ôøkô(Z´hÑ¢E‹-Z´hÑ¢E‹-ú¿Ñg±dÈ©·ÞGõz¢©DS‰¦M%šJ4•h*ÑT¢©DS‰¦M%šJ4•hª˜§2"% yþÅÌÌ,p„Ni{²?ÙIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/memos.png0000644000175000017500000000442712033133562024467 0ustar neilneil00000000000000‰PNG  IHDR szzôsBIT|dˆÎIDATX…¥–il\ÕÇ÷-³íÌxb{âx­ÂÂÖ„†‰ÑBUJiKU)HýÐBû¥U‘ú¡E¨­Z©¥ ZJº±„„†&°$!,qLbg3N¼{lgŸ7ïž~˜‰cÇ ¡ê•®ôî¹÷ÿÿÞ{þçÅ­ùÖÇVbýC´nÔ™óŸÖLSð{KT‹ü%,Ó¥è˜Rt¬“5U¹{_|âWo+…žý5{°}ûvë{¿Ù»¥¾¡!¯`¨Ï†¯‚¾ kýYüË,¡”àj¥FÇ‹‹G ›²É¥·Š”+udz­ÿÙzy¡”ùs.ïÆêFøö-|~EÇg€wÑú$"ýˆ6™ D €KÉ…ÍôtƒXæòLÆŠf³Ëúý”B[Ûwý{µeX›ó:¶íƒìÞ{€wvï?/´¡„æ†í‹’Äcê"¢ÕyªB>MÛâoqüijøM‡Î&?£Áձ̇â(;ÇràÀ kûžíõ!Ë÷bsckøÑßíàî/­âŠåM˜ÆùßkMöõð ೇðÙ#x-Ëtø¾ˆßÿUFJ¤2O3‘*q¬¿æžEµ©”2 ´VÎÄDÛ´ „7¶6w.HgÒ¼¾÷8¯[Å»½ Š%ý©à¦á°8rŒXÕIjÃCDCÃxÍa’âÚ ëøðh‚î꣭>Ä£_¹ŽN³$^ÅC·^ÏÞžQþðê4¹B+®[>©Úªj ŽÅþ‡ @ÐR|x¿úÎYTÐÅŸ÷ÒÜÔL{{'ŧ6r¤’„^|·Ÿ‡o¿UÔñf×<ý­õ!’™"Ž£‰Gô¦Ê•“ÆLòr+G~éŸ._e>M÷?¯ &2 Ã‚ |p,Á+{OðÀM,ŠxyO?Ý}“ˆ~ÅŠŽ(ëV6òó¿~€ž•ºEW—ë }¨LÀ\ºquà¬*È4ã)Í'I©¾%zÆÙßvel*Ç]×¶²îòEŒ%ó”\MÝ‚Z„­ï˜õvÌ b÷ŒC—®y*xhý-tŸHâšRNÁ3»AxíýÞìââÖµ!L†'sìëc*S˜v<Ì‚ÅË*»/S” ›T RÙ€Ì,`f­e˜(Ó‹ˆ>M`¾ >æÁ5¾9*8f3ÎN€¹ßRftƸLLÛ¬\ ªâVHñžÁ¡ÞbÑ©9×[`ÍSž˜…Í‹pznÉ2˪œ@ýÕà(¥'Q¦‘U7ÝtMäËwý¹É´Z­:ýœLyñÔ-Å´=Ìk3€ç¨ g2”¢9ä·|E)Û •ÇT+Àb@´õ–ǶÞqûõ ­й{šëü,xg Es´œ—_Ù1Ò·ù'· `˜²÷TO|í‡/ˆ<¦ srÎòöo ­ÜÒÀdÏ–ŸQ®\KÌ™WÁ¤¬úà­Ø­³¸úÚ)à,2ÿ6Í S¦ÐÛ•IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/month.png0000755000175000017500000000116512033133562024473 0ustar neilneil00000000000000‰PNG  IHDR szzô€IDATxÚìýyeÇ•Ÿ ~ÇÝï½/–\A°V•$“FÝêž1MK¥îYd36KÏt[›ÔR•llz46#M·¦k´·TUªM*±X+kaq߉…Aìû¾gb#Ö2ÜcßÞ{÷^÷sæ{_D$HŠH™þ™[fdÄ‹—~Ýý¸?çwœe2™L&“Ù182™L&“Éì²áÏd2™Lf‘ &“Éd2;ˆlø3™L&“ÙAdßÉd2™Ì"þL&“ÉdvÙðg2™L&³ƒÈ†?“Éd2™D6ü™L&“Éì ²áÏd2™Lf‘ &“Éd2;ˆlø3™L&“ÙAdßÉd2™Ì"þL&“ÉdvÙðg2™L&³ƒÈ†?“Éd2™D6ü™L&“Éì ²áÏd2™Lf‘ &“Éd2;ˆlø3™L&“ÙAdßÉd2™Ì"þL&“ÉdvÙðg2™L&³ƒÈ†?“Éd2™D6ü™L&“Éì ²áÏd2™Lf‘ &“Éd2;ˆlø3™L&“ÙAdßÉd2™Ì"þL&“ÉdvÙðg2™L&³ƒÈ†?³³ÑUlÛ€´ Ò¤€B„«±º†f[‹!¡†Êwi?Ö7ÛlŠéÖçé>“°„ƾ¥vÍce¬4‘6#Ú@=icO~Ãí­Õ¾%üÛÖb-©!5¤–ØÒ6´‘¨D¥…öìÙüáTQÅ´ÿù·ý–éì6´ûjâ˜8&‰c´ëêÔ}›B‚¶1yXõä·Ñm4yX“ç•x&ódßÙÙÈ,ì†l + t³ÂmÍ ÍÑ'yý±øòãçîº}íñ›×¿yùÁë—¸fåþ¯/ßûµ¥»®Z¸óŠ…Û¿<Û—V¸nõëWúÆê#7®?zÓÚßZò–õ'ooŸ yéÁøÊ#¼ñ$ÇžåÔ Ì¿Ìâ«a¸Fóa¼ä›U‡¢µhƒ©óÎù‚P¥¢ˆ!Ä"4]cjÒªH)Eê/¢ÝeG5éA“Þ‡Â6·¿?ë(oˆë'[çúî!a ¦}PE&“ù^Ë^î‚ÌN¦s_÷­·ôbW¸âÞ(º¶eжÝL#o;_vÓJ@&ŽÐŸtA Nû«÷ *( q-SE¬|,]ílƒ´Bœ£9F}”µY}ž¥§YxŒ¹9}/§îâÔÝœ~ŽÓÏpêP8uhpòàô‰ƒ»NÜuü©½gžÝ;÷Üž3Ïí{nßÜsÍ?Ñüó/¼°çÔã»O=¹ûä“»O>9{ò‰]'ž˜=ñÄì‰G‹Ó—'§žàôœ~’¹§8ógžâÄkœ:Ì™7X8ÆêI6h–i–i׈Ctä­ñ–ºýÏw=`wŸÔ­ë7 ¿W Æ5Òo‹£4Jí[P¼ªôû.RS4‘*Q™ˆG|¿xûjö’U‘Éì$²áÏìhjŠÎ–´ ¯;¾í¬énËÆkÝGØéä4oŠõ1ù×àj\MÆ„î† uÇS¤ZÚ¢] Í\Ÿ £caãÁÒ‹3sgO=Æ3ßàà5<ú•xÏç6nþØòu¿»pÕ‡®üÍã_ø•SŸûÕÓŸûÕ“ŸÿÕŸù•·>ó+o~úWŽ|ê—O\ñ{'¾ò‡'¯þØÉë?uææ/ÎÝqåÜ=W/>pͽ_[¼ïšåû¯[yè«Ü¸úÈ·6¿u㉛׿qíñëW½võ¡¯-?øÕÅû®\¸÷ò¹{.Ÿ»é“s7~âÔµ|òªß=qù¿;þ¹_}ëS¿üÖ'þåëŸÿµ£Ÿÿõ·¾ôoN}ù7ç.ÿ­Å+?²ô•ß™¿ú÷ê;>_ßóÅö¡«9x“¼rwxë‘bî`µô\9Z.ÇËåxµ¬WC½šÐŽ|¬}j½Å. 2áZBM¨ i¿×oú ‡I2žµXê.84lúO"´¸Ø9ðˆàºT„ÎS2i™Læ;È#³£I ÀwQàf’j¤®%š$­¹ˆW¼S}@š) &]8Ýw%$ MíÇÄuÚF'˜{ž×ïçñ¯sÏgùÆïèå¿Ô~ú?ù?¬âï¯~âï/~ò/~æŸ.~ù—׿þ‘ö–?‘{¿T>úõê©÷¼úЮ×ßýÖ³ûN¾¼éèVO_:Z¼¬Y>М>М¾¸=y 9½¿9µ¯9uQ}fïøôþva3··ßÓÌínv7 3ÍüL½8;^Ü5ZÜ=^Ú]/î/îkö×sÕ§/ŸÜWŸ¼¸9qq}êÀøÄ%õÉKëS—Ö§ö¯<µgñÉ]§*߼˽z“=w]zê*}ìÊ¥o}tþúß>sÕ¯ŸøÂ¿šûÔ?]þø?ýé/´ú ã/þÓöòÅu¿Á㩯òÆ],bøÍ[4s´Ë’ÖCj ]Ìý4:@+4ô~gR¨æ+|…/p„>ù*´DPOô½³ LÍ ·y“Éd¾“lø3;šcF¨ o›ÄcBIçq"ZÒ(­ÉÔºTC7¨}Õø2ù€¨¤±gäãFhWÊv±jªæô`í­Á«¹ç¯kîûôÂ×?|üó¿xäcÿäÕý“×>ù?ÍóWnýäúý_jŸüzøö-ƒ7î›=þÔîÓÏíß?>¹|rïøäÞñé=õ™]Íül³8Û,δËSqeÐn â¨L£2Õel 6*¬}këã»Ûô³RåÎ |³þ%®ËW ª…ÆBc‘b‘š"5{ãÆÞ¸¶7®í+5˵ó7g.iN^šN|(ûÐøèe¯X~~ï™'§Ž?R¼õO}9>ö¹µ{?µrÓï/_ý Ÿý—§ÿä¿õÑ_XüÒo¬]÷Q»ï ž»…#Ê™güò‹aãuVްqŒz¸ŒŽmaˆ,$–`ÆBã0˜†´ÒzÐ ÏÈ÷!…Ñ4%MŠ!Aœ•Z©³§?“ùndßÙÙh$uÑà€C %˜SÊdN5Ì(ðÙÌÓ³.‹Ìjâ2õ)†G8ý8ß¾‘‡¿Àm¿ß~õÏ|òþèÿ}écî ÿhñúÓÞû±Á¡«.:r×-úÉúȾµÃ»6NÌ6KU‹Æ­Tô0¹cØü`3¾ûØw†ZqÏŠQøšJèšõ­ÓØ™|'Ûeö¶]Ô÷ŸÙŽ))$MYÜ•6vÕ‹ÓÃ㳫¯îZ|~ïÜ¡ôÌMÇ®8yã¼ùÅ}üSÿdþÿhø¹n_ú—º‰goãå{9v¥×Ÿ.Óú,q¯gz[zžÒ‡[”øw¶ ‘+ÔD7W3S'Z9ª¼¼e2ß<32;mÑÔ™—ä¨cÏб. m@Ã$ôŽ ÷§å}qqÏøÄ`ùe9ö(ÏÜ8¾ë k7üá©Oÿ«SŸûÅSWüÆÂu¿»qçÇå©«ö¾õƒ'Û·rüÀhîÒ´|©[»ÈÖv¥•©z-ŒÖ};–“¹Hˆ UÃTÍ`fFaf¦Fajªq¨_6!´Þµžèˆ®Ïìëóû仯'nµíiIHâ·5—¤·ï$öŒ‰ùß ›ßÜw8§Î©sÑ3†‘0 ŒŒ§d4-ãi7žvZJbA*¡ Mép6.ÕÄ3—ßüÐÚ+Î<»ïèCÓ/Þ*ÏÞøÆå¿wäòß~ëK>}ù‡—¯ú­ú†¦»>Ó>ty8ýXµü 9VŹB­bCҰѩ֦Z›ªµY1ÒbLhpæKE¬‹”T=µ'Köf2ß…lø3;›PŠdR'íÏ´É(`bÐ Òé Í †Ç¸ïwøæ¯Ä/ÿÂÂ'þÁÉOü÷ǯøÅÅ[>:|èŠé£í:ýÌìòáÁêéreŝІéí‘æ± `ŠB¦¦Z)R¨,””Å€²¤,¥ª1b¬RªR*“•É‚’óêD{…>íNq.m¶àRpúöRß¼¯¡³þÞ’³äˆÞz}!vzºý}ù$I¡õ[-:’*΂/}é)Eƒ‹ÆY-­„¶î´ !*–¯Æ4N¨ù@Yá @‰ÍL ­½6sôa÷Ìã{?³ö­ß[ùÆožú“ÿþô§ÿÉòW~£¾ãÓF:SBÑ :J¡èS%HŠ&T»¬@Djh†y€g2ßI6ü™I@œ÷R’8¥£Ù´¾{|ºjŽûõ—™{Š×ïå‰kV¿ñ'¯|â—ûíÿ/_ÿ-nýxxüº‹ßÿÁùg>´~ø²Ñ‰Kê…Ýã…ÏV~fÚSH'[J]쇽#·gCfÖuj=•£(ã¶sћБ¦5iÖ¤Y‘fEb-±vmãÚÆÅÆÅÆ¥Æ¥èTC"¨óêœyðXVÛezÏnú¶&ª¢ºeì% Šho);6ã&1æ´k8ETDLCJEL¡mʦ©š¶·ƒ:NÕ‰6JL’ÔNèÄ®Üå\%ꈉ6Š˜¸‚aå†Ón4뇻mmO³¼wíÄÅ‹¯_rêÐìk÷6~ýäÍŸ|íªß9rÅoúò‡¯ùž»•×àô³²zÄÏ„fµjGUj§Ð£Á ¸’b:ðLæ;Ɇ?³£iûËõšv…Ñ –_áèý|û›ÜôQ»ê×W>ùNüÉ?<öù_Þö§¿xó_8óÄf=¾^˜7‚!ë/ÿÉ4Òvæ­5Ú±KM°8ðÌ”2Sº³RRж ñÒ´ OQPTÛ=ëÛ[ƒ‘i„ÚuMF}xžL^Ð5‰g}~[S™èïN4 ¾Ë•ÁäŸÐë¬zBÂ)Ñ„&¬Û%tÕ~*×ݬWŽRº, ºœ‡”4aæÄU>L7(¬ðÉK]Ûº±6CpÆŒÅKlã²æÌ¥—f^¿Ï^;~àK‡ÿøïøä?XÿÂ?åÚÃ=Ÿâ…oræ ãcŒNWÐ$©´Ñ·TQª<Â3™ï$þÌŽ¦pRœ?³úâÓ‹|ëÌM_zë«täË¿µzßåñÉë÷¼ñØeëoþ˜-]*ëûãÚžñÚºì[÷ûFÅþqµoöÔ2][Õh²Â9´æ”B(ª4*ã°h7|³!íPÒHh©“­)#!1*«QYªr\–ã"4…km§èQOwÚßLS^»¦^·.þݤ†ÀfÛ*€ãº–¤/;”p³mD·%^¼)i„9ù2héSU´E‡0.Šº(Æe±hÛk¡Û½$£MÖDK-ÑTMù0pZHQ u%~šbÊZOr¨–Öì¡9`ãêð²´þ3œ¾lå¥Ù×ï>rÅé›>öÖÕ=zåG_ñ''î¿iùÛO³ºˆá¼·à’ÐäñÉ|7²áϼ·ÄI|ø¶bj}”xܪooFœT‘¯ûsuW+n„&Ò.±«rkI­+&oÇhÛGé F°+°- Û Î1~“¹C}P>ý¿ä÷ÿBøÝ¿¼û“ÿ§½×þÃýᇎÞþc¯ÏŽÎx­»lñ®Tœ´bš¥i–*K]*Y)dX¸:¸¨Z«©ºI éëøôÒû›rû“ú>ý Äã8Ô¨´®´®RSjSj ªÝ9»óµŸUâN1Ý*¸ÝÏ¿YrH9û”>g/hWwÒ:…ÂIÛV^p+e~³±:5QÕè4ùÔ¥Æ2¶EÛ”u½ù«}ù½-Õüm:»ÝnÀ¶É¢Ššˆá[|£n¨2²AÒTtëç…¦ -ˆŽ´hÏüøÂS?ùê5?óäG/»ñÿ3ûÙÿ:þþÁ'þKùÖ?/ŸÿÂ`þÞé§6´B 4JJ“"F)’Zš1m½5T”! ¡†ÖH ‹:–a°U´í‡k»Ui2œuÛ8Ö³žÄwæAd2ïÙðgÞ[&ùi&“²ó*oLéKÊVo¯®ê¡2™JRR¨-´¸$ˆwâ‰PÃ`슡¹qD“yÕ)m÷èÆž´<[+–¾Íñø7Ö®ýã×?ù¯ýÞ?æ¹çxýõf~¹Gï]!äyqŽẩ9gÈÛK):Ûfiaî¥gÞºû[o^óÅ“W~|᫟œyîúÁë÷T‹/–ãÓeZ÷¨*µ¹µ_ÄrŠ Ôz‹SÒN·ítl+S'ľ6‘O®‚YÒnânÒ4VàH¦8K"!‹gΛy”» ó^’ú"w´¨n¿+Rç öóoŠF¿ÍQ ®û.Ä\ÿ½ D &ÞÄwÇ5çCÚ9Ösæ¾}+\¾òµß:ú¹_q8œKg­¦I¬ö´%±œ|×ä€uÜ*a7º‡z Ë4ǘ{–§ojnúÄÒå¿uôó¿qê†Û3·|péÛ?ÅÜ¥~u&ÜxäË"”!Þ9gff&Òo2ç Ý„˜v¦W%˜8x‡á,MI³¯¬/ ë—4§/^ãb[ž{iøÄgnü؉+cá«ÿvtãï5÷}JæŸ.×ߘՅi6¼5ÚbäìšfPâ*¥2m: %$:6öðek¯]¢sû°’±—„`]ñHÁ§Ê›8'ÞKÒåǘ=´ç*ÒïU0Q“¨.F¯M=£ò :-e(` JA Œk §šµ=íÒeñÔàÄSË]{ôêß}ó3¿ºxõïðø×åøÃÕðµ=º8c륋VH,iJš@+]=¡vÆêi«CŠh_Ãq»±ß”]fûÇÛûùÄŸ97Ȇ?óž"¬ #hAm’Nf(úuÑ.¼<ácÿ=à"¾Á5“Èè)¡ÐuÖŽòÖ }â0]cvƒ™1¸ŠvZ7¦ãbUãø#»'ÙG½Ë&e|ÀWx£ÛHê@h=µP‹µh‹F,¢[Ai’²šÉœ dßyÙ»±)Ôuš0>"j ˆšÐ ѱ ž8<]¥>Îâ!ž¾ŠëóØý¿ç¯þ5{òëûæž9—vu‹ªb”F0s¦½x«:ZçñYÔÖRíҸкJu•ZÑ̺¨~ï‘ìŒ=ÇÑ DS\šÔ)T·.v•̧DTŸRÀ°‰†/êSëÓ8Äqeê’•h[ÂÆÅœ¬Î\yàê3_úðâÇÅ®þCž»Ým¼NZÀêÐƒŽ¼D à¼y³¨±&ÕXÄ‹XÄR¬b[¡þ>B~€™s<3ï) !uú>ªÁj¬!Ž mpÑɪ°Ch—Äfo\/êc¼ñ·}nýKÿvùšßݸÿò¾zñèÍ]õÜ ®{‹*!úéÖÏšˆá’¸ä\ô´ŽÆ»N®÷3Þ¶Äp2çbæÅB_ž`{(ÝD%Щ‹Áb¡Ñ¶})h—p–àôÑ÷Ñ—­¯Š8žiÖöæöÏ¿<ýÒã{?·~å¯Íýéÿ‡¿ÄkwTã×§Y*m£–Ì!fðSHi m•âq²}9 KÈ.sN æ=¥‰¤ÍÕ¯|O3Š©ß`‰4C»›ÑnV¦›“¼y3|jýó¿ôÖç~íÍ;.¿úD¹rj 5)mÝ81'ÑKtÔBã»r Ò/¸BÜJªþÎ¥?sž $1ëe 7ãæØv£¾=†®Û hÿ'Ûƒí·é«S!9+ÆÎE/Þ…iƒ8ˆgÂÜÁâð­o]ùoç¯ü-»ñ“<{›_z©ÐùÒm˜%Š–¢Ö¢ÖBÔU3VN%‚ɤ€MEÇü3çÙðgÞS‚áeóÞ=0˜²ÁLS †¸„L¡»l£Š'ýÒ!ž½¾½÷Ó|á›oü¾¼á¢¥—/cekÒZ9Öj,U#e/$‘ÖYãcHw ÞpÝjxS§8u}޵äÁ>Ò 7Ãû;£·Õîªô_ÝJ­sJ¥jÝTã¦W¶.D红 "]äžpBð:3 ìuéÇmyß®Üü©“ŸùÕÓŸýµámŸãèƒ!öf]ààØÊDu}>jÛßë»®Ò¡Ï·ü™sƒ¼öeÞSźwÈ(IÛ#aJ˜ÖÆKœ|'nâÆ¯~õ#‹W$<ìÖOïf4ÍÐWu´îÛqÌYÝTp&QƒÛ.éÅzýù „„·¾­‰3Á²í?ï³jÙ¤ªPìê ‰ëlÚŒüwàœ¹ ’ ÖU(ŒÞºMÂÖ"h8¦“©NiÔèhìë‘´Ö‹/Ø;5º¸y#¾gùöϹüÃ+úKÍË3÷ª´ >®†ñºMÇÛË%ôÿIv2eÎ ò—yQ°d­mIœ¡žn–Âø$¯Ý?¾ác§>óë'¾ô‘Å»®š9ñòe2NÅ ù²63M¤*)ÄËÔVÚ‹}&þwÃl[5 £?è¨IìËÌgίÑ3)(̤pð¶çíT›×ÿ€ÑøªñEë|r ÉÓêB› ÚöeB¢j¥‰q”¦u0`¶p³”•, çu—®_¼rdïáGfÝþÜçÿÕ±«þ-÷}ã Ç½Îù´Z´Ãâ;óö»‚Ç™Ì9@ˆ™÷”6înã¬Øî‚"hí›Ó’—nYúì?_¾â—F÷}fï‰G.óKûw9?% Z)%”¾Iiô¯/A›9¿H”QB÷¨»P¾.©ÏÞ\‘\Pç4x ¢E¤îÒœç±mØH_øÇyu¾%(…áI"5V£­%s¾jZFhC(§)+õÔyõá™g¾z⺜ù¯Œ¯û(ÏÞÎÊa'kÞ6JÔo­°\NÉœ#ä•/óžÒ]¾ ÐzçÆOÝìÆÏþâo†oÝsü±}'qv½MÍz¨6ví—¦vq„ÖÎSLã§C’°1Ôq(jW¶RF)ú£_ïTíª¶pF‰¬À|’ÐûûEt³ä|þç‰Â(”Ò˜˜mpJH„D˜\ëHíï ¥Ð>È!I¿áÓM)½>à_‹”Jer…z‡×ÖÇÚ7­¯ÍE¢VVÍ„A!%­hKuE™tñ²¸05÷ì©§n}áÖ¯¼~ËÕ'¿‹µ~r5lI÷g2ï7y fÎ&E’²MyܬÿÐP£†ŒúkOkë–d]µ=k!b5±f<¦‰40ÖØ2†U8 e}¬¾$‡oâ›ÿ2þñß®?ýÿúÀãŸÿ™æÕÙv1Œ¦ÃFÆ.xev<Þ½º8ð8EÞ„6QRœòTÖVÖkœ¶Ú¥K÷"jºÆ\c‘.¬ÆœltÍSe¢ŠTm~Þç¥m9è³5”N¾&O\]£>jP ½†N¯ù£}ÀG'Õ»Cª‹æ¤V¯*IMÕðÖ‹ñªkÕ×êÆ*Ša¥H`Á`&ÖýsÇïüÀƒºâÖ¿ùà†_”£7ûõ—%.o'„#ÎÁ:ÔâŠF,m@TújÕgg èw´‰‹Ë&E'"1’kd~ ²áÏœ¸íÁSÝé|å 0 ¨ €)|ATR]MSšZ™Tƒ6„ÖAå‚oi}w\ü@3Ç«¥;¿úæWÿø;¾¾qêðž´¥ÅS¯“A™µÍ3ç[²<Î(¬©´~óäÝß:ñÅ?ÝüUŽ>=Óž¼ÌV?¤ Ó-¡±Ôjæ<âHŠuÞ\ê¤Ͱmm{Ê"g…vß²™ÓêÁçèÁÌ8jsdÞ>":ç©Û ŸÞVa¤KŽÛ*G±òmU:¼ÐDF hK·$Œ)€­ϰñOkôåßœ¿êw¸rêäÁýõ[ƒf™ñ˜„÷]Du_ë&±÷ÙðgÎq¬¯/m¨Rèhz´8»q¢<ñÜò#7œºêêë?Ê·o.6ž÷´XJ,|272™´Ý<æwo%"`•m1Œo³ú[jó²@Pæ$þÌY¤-£ш¶é?œÈ¡ôUG½Þ)ˆ§Øl1vD˜†YÒ ]dãÏÝ=¾ü·ç®úúàõ»N<}ñêá:¿§LU9©¢Vˆ:1'›ožOü™óƒÉ‰" (J)ºK†ËÊÅëo¸—î›»í‹Ã«‡«~Û¿ö°Ì¿H;ë‚6„~ŒK· i0í䉮èöÞÛE ú©±Í+—33ïpÈf2›Ln ]êHÜf Õ–0êf}Z°Ê¤;·ê¦Uõi·ô‡nYÿÒGŽ]ñ»£ïž oUeWß„~;áLQÁpΜ›@ß‘¯•Éœcô²€] ‰l«Ãë¡V†ë—Ìê‡ÜŠ=¸ôÀõ¯|òŸµ7œ×bý$ÍzJmwµå @…–T£m—ŸbѶ¯ j“ˆT“‰@…áMÅt2eòzžùÈ%óö!àº,8zÁÑ> È¶‰Ûw¾E ,“ô:e¦•ésÏòäõÍÿöÌÍž¹ñƒ£#Ó£SÒ¬OÏF }„€ ce¤Ô¤Tqý[_}5eß9Ç1ÅT¬Ÿ$ÑõÉkOM§µY bS¢ØD×ÏŒ¤ô¹ Šöq¶ íŠÿÈäÿ%)ÚÍIIH›]d™Œlø3g!ÖWßÞ¤/ªÓ"-qš&‡ö¡Ð@Û4»­žŽ ²ôªÝÿõ¥¯þÞWþ»úù[.®ïj}³V•L®Ff+u2¬Ùh¨]ðƒi_MáJPg*ýE§b[÷™Ì¹ËVÑ×IDDççÆ)Ei“¶Q£j›âx<öè~Xx¥yìÆc_ü͹Ïý:OÓ7'X?Eã¡"ˆ§;Ço‹¯év¾üWHHÚ 0˜è`g2ߟlø3gÓÈ”9…Ô§9íŠÜG\KŸÂ§6šbcÖ­°ô*^¿~ÅïÍßüYyéÞŸðKSºjf`€5¦NÕ¸ÊÁôt9˜B¥×Ö6¥hÐþ°$è¶æ<>3çb[È 5¬ðRˆ‚ðâ|ÿšRÚzòCgž(ž¸rùë^þ¿fî ëG°5HQ|ë…à5ïÍuÛoç ¾?îÓ§'vSRºüWäÇùÁÈ kælz-{h[†´‘¸”̤ˆ5¡óHðØl:Íúa^¸}íš?8qíGÓ37í_zio=ïÇx’g¬4Šyœ‡TŸ°ZãØ·ueišTir1ÊÙ?‚Lb¤3™ó`¾@ZïL½©G«±MMí ò]T¬9c\TZ:Á¡[N_ý»võŸŒ¾qïâk(Ön<®·ˆÎaÞkÉyE ›(–ö¾JÛ^>‡î ÖK°}Ç—2™ss¾¸¾ÙDæÂ+N'©}Ûµö’C]¥³Å}h §8H„¡X[¾ìÄ!ûÆÉkÿdéŸàGñÌ¥E˜6¤µ²ÀÏP{†ÖIM; HØ,¯ø3?0Ùðg΢K¢3_Px¯Bò˜ ‰i¸($š3¼ñ·}~ùæOŒïÿ²Ì½2ç÷H]Ô­5%¡¢îÒó$áj‘‘§ŠKˆ’dS`µK!pæœ:­#nVS•lõ3çIHN“ëKDŸ=—&wVB…HÑ)ó jâ©j©¢s¸^Æ×û×çÂË/ÝqùÂ5ÀÀ™Ã2^(Yó±N©M€§1ˆ:b ºNH+ MêÏü`dßù.tAû‘ö‰ic±j9ñŒÞóµ¹ë>vòö/•o>þ“aÐà)60ÆËtð3(*ª®I¾17¹¿Wˆô^JqQB”]ˆ.D QÊÔin·ýy!˜ۘÓ^¼ocÛRa`âÍygâŒÐφD¡±´Ö›aJf*Fí@ПªOLûÖñ­?ö¥ðÀÕ,½B:9ÅrŨ»%ØæNè=i‰¬Û—ùAɆ?s“¸ã~ DÏ:ÍIŸáѯ-^ó{'nû¬ã‘‹Û3ÓZ³ÑlDÔSSåÞ]¾ØzmëãRŠÍ¸<“­5cëRTÔ&­‹æ'Eu'.lø3ç<½šþD;—‰²er]³ä’IkÒš«×i`Õ2ÅBgê‚ ¦™šÆhë4M‰ \[½vó™[>^_û¼pÃã>.V¶^±mZ~PdOæ&þÌYô™C ¦ž]exŒ×ZüÊo/ßöñðÂÍXùö~].|ÂC`fÏnuU=nˆc‚I)âÓ\™\S‡¡‚,Ph ý$øÙEGT™ëDÐp6¹=ÍdÎe¶jèHÜЍ:ݬè¤ÁEqQ\T×»¶½…"qXoŒuغQru¯c`å‰KêWŸ¾éÍ+ÿhýº/ðÚ ŒV‰c$š'….Q°›òÉü@ä•5s'GÄóÇæ¸é¹¯|lüú#ÓsßÞ­k……NTtªª×m1a”ÚÚê"…’‚‹…‹UˆVFêÀ°ÜüïöœõqþÞ¢7íJ¦*N»T¥|âÏœÛȦÕ?«À„:Ñ. _"Ý+;/ýõ–ejEeÆFtA3qjkPë°¾¿Y<ñøƒÏ~õòÅïa<k`Ü]0ÑÙÎé|™ŒløÏ3𮏏Bн¬7Dh6g½ERKŒD%Òô5ô«±VCLô"»±ûªb)°Z„/K‡¸çÇŸø{Åõ¿úyð²c¥&pf¥Q™”¢¥ SÆÁ×¥K•§QÔT%ih4ÔFêk¤ «ÈT»½UXÜ&…ÒÕDoÑ™v¥Ó3™s·YÕÊÞž«â´—Ã2E Ut+sUÑÑu§hƒÑšB(=Žˆm8·¶>µ¿.fM™ÿóçÿòñ+öël>ò_òà§«ÓÏÎ4ëS°Ñ2v¤ ÀIt™ÔëùŽÚÔÀ:,Ã:;éí­Ù³Ÿà·¹ Î?úûïÔœ·Ñ'õ:ÁƒwxJ´«y›¤2©ÉS‡T‹õ‡„Æ!¾ ¾k§ã*«¯óì ×}öèm×®}ÖG)ÏöLö@#’-s&ó.⩽$ëg4H§¬µðú×?µpã§9üÔ§÷¸QÙ´©6q$.Nn·:Ìð0((|h£ƒ) ¡K©õ¨GÖúÛ¡dÃþ¡€´ßÓèöÛ—„( #hSŸˆï"6r®7‘ØmRB—a‘7nå¶O¾qý-=uÓìÊëûd=Ä–QÛ½sˆ'ÛÓ“3™Ì»E!C‘@AphÉðÄþñ‘ú™ož¾æwÒÍçäÓNKß´£fbŒk£EÇX‹Q„éHÕšNfuX ”ÙðïT²á?ïXtÔýiÛmUæv[!ðjÐÉ•_ ±{nºÄYLÞ‡2¢VÖÂ"ë¯ñÌ·ôêßZ~èʽóÏþL±vÑ -c"nÅú›¸>ÿ;œ ™LæGŽÇ$©ª&D)€ih›½ƒ6oºWï9uç—Ö¾ñ ž¹ƒáѯøÉ]¿yOðý´W¼áú‹M(V S¹‡w&ÙðŸw Aš(…t©<~3¨ÈõeôLz•<íÓ| O[¡€KT‘ݵßÕ˜¯ˆ»Ý:Í›¼zÏÚ-Ÿyù¦OÕ‡ímÎì c­³^ã ń躪 ŽÍ¬ålû3™w£«ˆ•œ&L]w17Ri90°ËlqøÜ]¯}íF7~Œ7ïß7v[=E[£CŠHs¢,†®®A X¯ü“ÙdÞ!½2g׊.„ˆÍW¥Ûºì9-Q¤‚€©Xë- ´¸p¡£Ydî9øÊ™ëÿhþÁ¯ï™{ajW@£clú¬{SZ%I§Fâl"½gÙêg2ï2i¢ì 4ÑÕ®ìD| DÇÙÒE«¯Ÿ¼nã+¿‘ü<'uq~šÄ¨wòEbCOã7'n®{½ƒÉ†ÿ|ÊͶiõé­~¤ çUíü{’è+ôBù¡{eƒÑ˜ñ)^y`ùëøæõŸ:vð§Ãúvƒ:Æ) {§´,V‡l´³»Mº¡¢}ùQs6‘+Éd2ïÖt“>'p2Õ% u‚" Þê6h½oP_Oo>wô†ßŽw~šÃSÏí2êHS×8Á9p)¶û 3;’løÏ7ÞVÎnë)N6ðW?ÑòT¸Â\‘oTIC½L}Xoýô›—¸}î®gyW;b£õs„Çùñp5íÞ;3==5^[õªÞbPí²í1‡ÍZa™Ì»‰S/ˆyÁ N ‰*¦®EÝĶMR 6Z6¬ôüX{|þ‘kæ¾ú»Ü{sχfuࣟžid¦a62A T1͉ÿ;w\å.8/™Ú»>ÇG­m0?ÙÓp–ˆ ccÔ9RÍú¼xóâ'ÿÙð¡+,}û@Z’vÜ+€¦N¼oîÉÙ•ÃSõ¸ôðe÷¿Èw´³Ñ®¸×|I˜É¼›ô€’ðI¼!Îpª²)$t•-);­ßéÔì_sxðúÅo|Ô¹Wg-z£‰´âp_mÎ÷ÌN#þóŒ4)Ã¥] ÿæ½¾ "ÔÒ[ý®FHÄ·õZÐeš×yå–3×ýöÑ;?_-½d« 4›u>ˆáS/+º…Éw\,ôòd Qò‰!“yWQ0õjŽä-9KÎâÖ„ttÊÖ‰.ãÆÓ”Z¸Š™´Þ¼öàé{¾4ÿ?å­'fG§÷ù‘O£Ú,:gŽá8÷ï%þónˆ †º^o·³ú }â~·3˜\h  ‹/pïçç¯ÿ/ÜtI{bo颣©ˆx0M[«£¶]о QºJß!Iˆ®ŒRª“€8ÄõÞÂ|G˜É¼û“^ˆ…6…5Á"l9â¢ôBýÞ´Ô¦ÒÅŒ”U#DÅU˜ÒÝK/ØS׬\þ«<ò6^/e½’Ø*µ¦sßîP²á?ïXMÿ¶€ú®þ7tV?YE;`½dÙµgxñþÕo}fþŽÏUo.þLæÝ%:T\ïé“M«9 ÖÚ)n÷³Þ‰É°öëã¢Qç—Ô1R Â¥ºæ_¼oé†Osû™{NçÞ™dþÑU´í#î\'¼Ï6ý>T©‡¼uøÈC÷Ü÷«4+»ê5ߎ]˜²j¶ »‘GE#)n‹Ü“¨Z7æ-:¢lÕ­?Ñ« â 4ŸLæÝÄ„ä0qH§â:—›¾óÁ¥É$L“ÊŠPõó·8Ì,3ˆÓ»Ó¸¥®w…fzîµ—ï¾öÈ_çøó¹‡w&yå~Ÿ‰]}[­‰5M¤…H4jh:£lŠF’öÅ7ºp:©‘ l÷ë†A`‘•‡¹óëŸûû?y÷GÿÃ'4 Õ¨q£uo«×Õ÷?êЀ:4™K6å±Î®;ú×¶^Ü%ï›v ²äg&óî4z‹&Q]T§ ^ ßEô:´@‹~›0Õ¢ ªh@éÔÆÆ8.G«R¢Óh¨‹råÏ5/ýÄÓßü¯xà+?D½ ¬Á*ŒÑF—aêcØ€q·VÙFWô«Ÿû]vEh¡N´‘‰Ðb¤Uâb~‚ç&Ùð¿ÏøþÔîñïðàðPe·£7çz½œˆ±-3­ˆ‚EöI¬âi?±tÃGî¿Ã6Vdï4Sùùf2™ïÉ 7~¶~èzÎsn‘ ÃûŒàLB”½KsH÷ùÍz÷âLH¢Q"¡AcRgEÑ8jÃÁ®°ÌúK7“Éd¾+*¸i0¬íÆ3ï_ðÔ5ÈßdéõÅ)Ðî R:~Ÿñ#ôU:û“}†ÜÕö@¡ñ´!;ûÏU²á?¹·=ˆ.I·ÏÓ5Á‚A#ÔBh†’X|­½÷Ú“·]ŽÜ'# #6ã"´a0NÒ48? ô¹jn&“ù÷Ð&Ÿœ£(@ét÷èøîùçÞ¼áã<}3ëG©€B”ÂÊ]•¾DHÂ&B [§þ€øÉ¥¥’Oüç*Ùð¿Ïl©nMTøÅU’’m°„ Vé-ž»cðÀM{í¶PѨ£5¦T-©™Çå¨þL&ó=),y#&Ó¤½8 2=^Ø·øÊ‰o}víÚ?æ­Ç}»\cc§Š&E5Lцm%:M0‚Q@è"þrŸ›äó~£ÉÑ`q5R“š.gFÞ¨¬Ñ ¸*=~CõÖÁ‹Gg¦\ÛM±$4'ÍLÍĵAyK­—õ¢ÈœÉd¾“’šÄµÎõ:ÜÆ.7Ú¿úZýÔ+7|Œ§¾ÉøÄ¬hk˜ â+\…¸€sˆMwzѾ:¨K†ËöåÜ}î¹ ÞgD‘­Ëý4ù¤b)P{6q™;4|èòá]W¯º[æ_i™ñ˜ ¯T©Û+…Fèjwd2™Ì¿1í üFq±sÕ'4{WŽŽÝ´xÏ—xêFÖï·UU’!:Iâ´Kñ ‚D&">ý{æ¸þs˜løßoü©ÝV¹»)S9C U ºÌü‹<øµSßüÓéÓGf‡g¦H½#M±DD¶ õx ‹31×d2™ïIë*%t>EJ%¤Ž0ËŠ!‡:sÇxø«,,Œ0í3õGæ‚(– Šõ¶ßØö[€Ì9E6üï; Qˆ›wbF)Ò¤TQ—ºÀñ§õ®+–ºæÀ™çq1”„)´¤Ë÷s©+åáÔc¾¿«“”»7“É|O¢s€Nñ(¢Ñy-½µÐ€gŸŽ9òÄÊ_ã–O³z„¸\hôFTœ_ iâ¯ÔÎöO*{eÃŽ’ ÿûL¢0‚'yZ?½R÷ùQÕžä…[WoþÌéGo Gvp-Žä0@ð[sÌAˆRF Q&a¶Y¸/“Éü{¸ýB°»òsEÙ)BB .rVœ|qüÈM£›?ÎÒœ:*é­=“7q&“P~ÈÁÅç(Ùð¿Ï$¦  v󚿊cVOpð®á_>uÓ®µ“³À¨`艆&| B@<Ñ‹ŠÇ ¬ì¶9/“Éü{(­·ßÆ{UoQ­‘Êés¾dl¬.ÝóEîù2¯>ÄèTIÝÙq⺒"m'@.@€\|Ž’ ÿûŒ1ѾÀ &b꞊Óöé‡OÞ|Uóâ—²>;ÞÅP´3Ä iM$DÑÖ£æDƒ¨ÇB'´‘Éd2ß‹.ø~;Õ”¢i‹›oL˜Ä]æN¼ó­[®Š¯<ÕM´ý×&¹É]Íc[ážÌ9F~0?jR/cÙ@ÃDÆ*NÊX ŒaL¬©F•®ŠŒ’ø1³Cf‚…éÑ|X{ŽëÿÝö‘‹^¿s¯-቉§‹e˜]evD¥85ŒÔUZçðƒÕ /kNFHì¯2™Læ{ †J'Å×7ŒÆ@Se)`½\_€F?`KûkõëÿšoýŽ_i*6£¦X¢Z#4¨¤Õi6*Ú6Z¶~ x›ÞOĺÚdšèÆÌ{C6üïÖ÷l'^µ¯ß•¯ìzÐÅùh’p ¤.­ÓÎoÜtùü³÷ŽKç-3L87›-y&“y ¨DX:3ÿÔñžYxmºØ–Á?[) iÛ·iûôI˺¹Fn»cÈYÿï%¹«ß-6U¬MØ^gOPO*ûVnÌ Ê …i˜b̉gG7~rýé›ìØÁ*®p¾†døV‹aNÏËd2ïcÃÙW¯ñÆ¡“\=|ôjæî’ÅŠ¶s„bõ S…&¡k›öÞ6Ñ·U$uhIz/ɆÿGlõl×¹ÊÖЩ‹ÞÇÖp ¦Q‰‹œy~þ›Ÿ>zû—.½y Ò© I)™ó¾ðŠosÿf2™÷ ó»Úèi[ íÅnu÷üsOÝpúö/0ÿ|ÉbIÛùîq¢MmåÛwäMl?L |öh¾WdÃÿ£ž‚ ›u«üÙ.¬¾Àn/²S E@D‰s¼|ÿÒ7þ(¾tÏŸ™I½EÇÐR9 ‚¸àªœ“ÉdÞ7¦Â¬“v=°‡4{æE=t÷Ò7/çè!Ñe³q웤@Ýæ¡^ÎnLVEÛ:m)—fÞm²áÿ£Û‡¶!:©¶‡ f`øDˆBöQû8Ç‹÷,ßù¹ö…ÛÄeÑö²XŠƒRðj6nGML¡Ì=œÉdÞ7ê諤 ZÂ1ÕÚWNÕOÜ=ÛÕ¼ñÄ@V£ÆZ|€B¬?õ5È&+a—„Ô‘Uýß{rwÿÈ;TA·ôs6o´T1À+EÂmy½Vß๻ï¼²~é¾KÜ¢O1®*¥k,àxéÞÁ”d4’y2™Ìû†µkæ¢E]L9 õø’ñÒøÐ=sw_Å–, lœŒä€ˆ)¦X'ä¡ES/ñ œíóϼ7äîþ‘S÷§õ~¢lÞn9pi"¨ X ©åùo-ßô™Ñ ð5 $ JPs&¥Ya ?`0Šʆ?“ɼL›zmbŒ-msÝúædü´¸ñä­Ç¯ÿ4/?t¥tq´Ys¼74›^ýˆEÌ@uò);«ÄOæÝ%þ1“J{¬ÿ,ŽñDê"Ž6ˆ« ¯\;tÀ×ÚFó‘Ô”Ž¤u‹ª%´2Æ(gºf2™÷ _·®-œN[(­RªXV:øXèê×sÅs-^ûyž}€47ëkè­yk$ $°nYìîõ7½¢.Ÿûß3rGÿÈñ½Bµ±y fž‘µ!‘AHl㾯žºå3íâT\)´ÅŠDiè fXã­5—’#:g¸.P “ÉdÞ/j EBR””­½Û(]-Šâ=—èZùÚ“ó·\nßD{UT“ÃÄHQ_a>‹ú½¿äÞÿc“Xþ¾ƒ“£™ÈXºDAM=Çãß\~ðª=o>Øû·Ì9és½:¶ ¢žÆS{kº¸͆?“ɼx? ˆB I…Ö‰uÁL…ζ‹ÍËÏßÿ5ø ¡µ¨ÎcŽÚ T¶6@ï¹ßÄ(œL<üiÓäC »¤ftŠû®]¼ëêé3/\:ˆc?պʧÉY+¦àLœuiF¡”J0ÌÊÈTîáL&ó~1hCØ SB„‚¦LZ¤r½Xé´^ZGŸ¬o¿bøÌ=´óA†®µNÀ7Z—´ç±­}!ßð¿§dÃÿ#fK _¶4+<øv}–Ù8Âý_;vÏ×8ýb)‘šÚ—  H¯\mB’ÄmO pŠ˜9/“ɼo ¢ : ˜#(UÒÐ*Å•o"Nš]ÍruæÕ¿ù)ÞJ{²d5´æ!ø‰çòív^sq‘÷Œløßdû‡Z1¸ V^㞯œº÷«3‹¯í-Ž`§U§6‘º0Q$Âö 1€·TXîËd2ï1TˆŽ($é’Ô©ÑĤ$O“g»èÌãoÜô§

    ÷ð;#þ´›º ÖnDšl~ÐþCs5ÄDikÔGyüÚw_Nºh& Pé­~îÒL&sÁÓ¨¨suB#.´—ùÕ©£Ÿ¾ùs”Dãh¼+Á£b*¨ß¶`+”ЬôûÓ;ðû6 Hi¯¢oýV 3ô î,>>ÂÁ[OÜÿ 7d¯kû]î.6ʼn!ª˜ŠeÁŠL&sã)Y[+6ÅTAÎ}¿G†/>´xû¼ôãSS±%6Â$ÚKBh=Ñ¡ˆâÑ.ØÞøYŽ?=-«egÖ $ ÞbçJUR ŠØ–Á2IJáçdÃÿ}¨ t®|‘$¤-p%ScA ©¤EN>õOnè[ (ýÔ¬½1z膥§oÿ –­±¾ 8Ôi+Ú:"¨‰&qÑa¸lû3™Ì…h!ÝI]@ð¬/1BÁžƒµ7WÝ­_”ÑB°Q ­ÑåO©ÚþjÿlÔr^Ô;%þï?r>iŸN¬Wï‘Q³—uYºí˧ûÖ~]Aêd_éc¼áL…(¨I´®¬NÉ™Læ‚ÅuyM›-ýJ˜ðJº¢¼2`Ÿ{½~ò–ÕÇ®cáå` 3ÒgS‰q˜;;ˆßY6^?ÔsÉ|ß°à)<•Q˜s ±*ÖÙ8½Wo<~ÓìÊ‘‚†„‰tVߤíbÛÌ?*¢ÒŸþ]OÉd20"ã.\Ϭw•š`Ò@M!”>):ÂÃŒ£¯¾û‹<{3õÉÀª‡6‘Š€›(£w äƒÓ;%þï‡×.aOÔ‰9Å5ТØi‡o\¸ë«—®9R¬-8 "Þ\¾Gwúw“´€‰ä¤ Yr2“É\ȸiŒ(#e”É]Bk|p®h[R‹qÝÇ[â›<}'Ã3Z×Dk~š8S9¡ï?–Üÿ~b7Ô:Õž ¢¸Ø<ÿØÉÇïªæŽ†f „Š:Α­±ÙYýÉ&‰ÀD›2“Éd.Ps¨x³Êl*Q%q*à·Fj¥š*Ëá4ZÛò©´þú³ÇžºŸSG¡ ú¸*ݺÔïRÈëç;fçu\»AŒL"G@±AkýÀj±«!4F"ŽãÆÈ¥:0Vãñôø/Üoý“Á› ¦Æ­'Æô°µ4"EI›T˜¢˜ *“ÏÎV—¶–‡`&“¹P1ÃQ{Y ¬”¶Q& )ªªõª1v^ï …K}½ïéëÓ×~•×n)Û…±²†¯©°VtYÒzrJH“ÓùÞ!;pÇÔUz>q†O¸„3<Ò½Æ¥Ö åŒó¾MÌÎyó…õû¾µrü`©{//P SyDe2™Ì;¥´iº”3o¼¹Ã»¤õ}´T®è‹œ}~æ?œgø%ôZ|[å-.ÒU‘pFÑ…â)­Á:7¿SHë,¼<|øº…çï-Gs³^YŸò·Y¶/“Éd2ÿá(‚"b,Ÿ8õÔíÃGodíÈ,­ƒH…›êïõ»­€Ïjýïhøýæí¦ §ôzÐÖ{è7•"¤NDc:DVŽððµ«o¹4Í_T"‰à ÛdÏS&“ɼSœ/ðBÃná@{fþñ‡÷^Esº°¨067NÞ3U!e»ÿŽûyçýÆ}>¨o«‹»½/í]®‚ÂÁn ]àé[N=rýÌòñJ-âÄw/Ìd2™Ì;!Šà=@`WÙ N¿°ðļƒz©4Dˆ&æœø¼ÒþPì¸îÛÌ%…î¸o]5(7Ñè àûzQPs311ë ]äàgý¦;ýÚ®ª—”¤+aXDÍE©òÊd2™wFŒÑðÐÂH/ ºgùðßúGŸ¢]+!T0’ÏÊ}ï”gøSw–ïéüú±€JðDl¢ÏkÔ]Åe^¼áák9þì>™l&:”Db"Iµy f2™Ì;Ä,%$ù©Ú Ïî¸êÞÿ5Ž<&íF%h'›µúß9;Ôa"ljñvçþ$´¾+ü¼©³g g-§¿½þØuÍ+\¬+E€ÊÂÂT«B‹)EA1äñ”Éd2ïd Z ¨<5ŒÓOìÒßÀ«°~DêU—P£5rÿ;fÇuœ?ëw–¾H®S4 ~3øÊ"‹¯¼~éÐ{ë(êC«!&õÞã‘€‰‹£áÀçª;™L&ó±Ô4ªç[B_ e8ü1¿rìöËyðZÚù@íqåz“×ÛwÈŽ3ü²=¬OèOöæ0p¥Iˆ¸ÆHæîðu{ú[ËÏß³?.LPÌ/ –œ)`â€`±Ð&©L&“yÇ1Xë-š¥ìf—öN¬¼•ƒ·ÑÎ{‹MBÊ2w×;cç¹JLûÃ=LJ{êá¯_~¯nT¥ Ö‚…™‰éöâвyq%2™LæÒ‹ªNè*˜'ç’0[ϯ¼pzòVVßÚí²bÚÑÏ; #tm›p¯Jæ0$çé›–¹jº@il£_U!RÄ»ÞÌ»³}6ü™L&óNq†:Ôa‚C-¨+*€1ÓŽ}£S§»‰Go >–{ìöóNû…7Ëæmz껼P! £êž¾}é©›.^z‰ŒFQœ³((¸VªÖUJ€ÞocŸƒM2™Læb˜ÐHYKʼnL½Åˆ&¼E0vIíO½¸ðô¼poî°wÆŽ3üñ‡ÞÉï&SµdhËÂñ“Ï=ºþÖsfa PNU¡ªšf¬mëшR6nß6b]”\-*“ÉdÞ)†B”"Ê IÀ¨Ç­¤¤+œ¾×uþÈÜÝßÈöÎØ‰2\ q#ÄÚ'Ä­¡*.¬·±ó§ë~eÿó×þøt9•PCÚºHãÒ®Kèk*[›Ò•`µ êPÁ›N§<¤2™Læ¡gL§™´Rj£ô½Ó^k5´@KÊ.¾xÑ‘Ö?ûY|‚va­MK°5mJkXKW5-BŒhÍ›ì8Ã_@1µ Wá¼%5%¹€«Æãfo¥¬kŸ¼oîÄÑÖ ¶¥å¼üL&“9GY{ëÛú­fñ ®ÐÖ\V„Ìd2™s;õíÓßÌO—§ûxëB\è„ØÌQ0œruì<ËcTF‰$‚§«QC¯=¡_;}êù}!yW¨€Ï#$“ÉdÎQö§9?÷Òò}×1÷j¥Öv‡úqé¶Ù4øÙÙß³ó p…'8¼Ãp Lk'âc7^zðb†»\ãMC™7ˆ™L&sî2ðìó+/>¿Ñ™ÝA]W³O œC¶,½ Y`m“èËv˜–¢­qPÆÕöño­|ûñrTã`Tû8$Tyƒ˜Éd2ç,J¨ã¾váÌ·ðÜ´«!’ Á!bXÐe]k®æ·ÉÎKç3CǤ¡ ÑðP¦ ^¹ÿÌ£×ûõ“EI7j¼šª…™XÛú›ÞºÕž O –ïn7ÙyÊ}Á#†ÅN©`0ÿÚèÁ«9úä.WST$(À‘’¹Áþ’3£T†PÒ®óÌõ·ïßW\Ÿó“ëø½étZÏC$“ÉdÎM‚w> àq}ví 9ò/>0`]-D¦’•¸>Ä|Ž›°ã ¿#FÜPE€åÃãG¯Ó·©îT|ƒªW¢+µƒ´’‡H&“Éœ›”Ú‚8À¦‡‹zô‰á#×0>6†#H~&¹AÂù\DmÂ<ñÓ*»Jhxô†ñ+íg”úâ|Š€ŠöSÞ!f2™Ì¹ŠD#5)*8œ£Z}«=üOÞD{z±;÷3·Ùðo²ïø‹Å2nðÒ½sÝ8µqÜWb¥êK÷‚!¹ÇL&“Éœ›$‹FÄ#ŽSko­‹4&ßú=c·Ç̱>þÉéaùâuÜûG,¢Õ¾8#ÕÄFè¤ÅIÛüg ­#ÔðºqÞ?xðý¯á@ºàün­© ¢ˆ!»»'_ž?)):MCëj8ƒaÝŸdŽìËœûˆ"-nŒáj\ƒGôÚ:×z§<æiãP ñ]mPšàǾ{7öD‡:” X‰m®º+óÌü0tÛÙ.[ňDë–ne¶ò'_zž¢ëA)À(ú.Ó‰ç¿3gM*pvqÖóÞðÔ£‚‚3º0‹Ç Ú®8ƒ6>.rôɵƒŽ– ¢ÓèÍÛìTœŠ3qÖ­ ™Ì9>ƒE‘©ÍEs˜'z¢£u4ÞÕÎ=ã@í]ã1÷î¶Ö»:¸Æ…ƇÚW­„V\"¨x,ˆygsf*¨òÌü0x°nÙm‚¥Õ‰á¯LêoœyüNæ_)­@ÓËù)'îa—ÎZê}·ò;Ô_¸Yç¿a³KݳOÝ> ­tAaôMÚÓƒñjֺͤE,™IÚ2ÝÔéîÇ:'Â+ò{þϼQÅz÷ádÿ—ðhJɘ©<í*ï?{ÛŒk§}Ò(ñ“g.˜ r–±· £24‰)¥ÂJgÛ QœR$ÊË˨E¤ˆ”‘AË»}ä—Dh)c=Ó¶ÓmšŠ±P IE´q= ˜Óê.à[ÔÌ{„áTæz—¯©ù¢³ƒ"îžæn^¼Od±¿Æ5C@¼‰Ûܳn_íÛï.@.€¿at—4[÷4"â‚‚WÐ Ž¿¸ôè­—Ö'|;¤Ò4ˆ±©äÔjÿø·ñÈ‚™s}ü‡nÉëÿ%“1lÛ˜¶Éê»ÚúÿNAÕ™:CÎþº“XÿCJΫÎüP¨#9 '¨7œv&T\«PÂÈö‡X®™»ÿ ßô›÷ùpA·Erõóã¬ÉuÁöÛùoø¥èƒM©=”I<‘-'â·ß|~¬IL!™ï^SW£YÓVWˆ!¨CÅ4+=eÎq<µ§iU!IL×OçpΜSzÌO>ÿîµ¢ ¸u8g„(A% nKÓz·„ØÛCª2™ÿP’tƒH}å×o4ªJáqXB<³q-¾~ˆn˜iW‹´af&ƒHè\ú~[$÷¤FÛæ¿.L.€_,lF_zðDÀ(jŠ.yù‘ùgïߥ«Œññ¸î;º`þ²ÝÂe*t'½€w|™ ‘¦¿âLHŽäˆnKïh}¨}ùräÃFp­{wÛF`\¸Ö»è\ô¨øè¼J€ X@†^Ó|•–ù¡Hú)Ð/×P‹a¢"»Àz|1ë«·}UFÇ$.‰¥ºsß– éU¬“úqÈלø œKÂ$û"ké/Ekμ4zò¿xd6°©ë„@´þ{êvÒÚŸõ7ß<þÌ9Žö^3TñPz BÞ9ç„‚XŠV¢AðòîÏwÁ¡Áb°&hãh¥£I8‡"Á—ÁyéöÖ™Ì;âÔo]u•ÎtT㈉ª"øáâîzý)¬@Ú¨i!vŠ~q¼9ú´~É'þs÷±o»Ý·ˆ)H“¸ÌK¬½òØE²AJg¥æ œº¯½“Çz—Q&s~` j"JaâZs-Œ­vÍÕ1Ô±ªãÔ8­¾«m*R¶H - I½FgÒà[,µMӶɸ ¥3ï ¾»ÔïÜýεÎ7^ ŠS¼¢„È”áE4º7ŸàÙH3€wРγâø:àâ…Ûoç½á·I.“·î¹N{!À@Æœ|iõÐÝÌ¿éR$)º¾>sOœIŸÁÙÙ{±,Û“9¿&€G‹d%V¢uy¬æ‚º _ádÛæ»>ºÝöû~yŸB‘‚ï‹b8b"ø¬‘•ùaé |§½sQ&¡#ý}¡”ÖÝ…âÌ‹ ßÎÜáRcÕíÏ6äl«/ÛþÌdÎU,¤()IBD$cïdödqññêÀ™Á%Kå¾¥°{¡80>°âgßÕvÒÍ.øÙU?»ê÷Ìù‹ùÇýEgdw=½+u›nOðTŒJ&óà ªÝÕ­ I0§ˆ"ÚM„.Lß+X^zÀÖGGé 1ž(.‚ Ò•aÕÞŽHï¾P9ÿOüÿ<(>© ¼òèüs÷—ã*‡³´Ý‡?ùPA{ÝdzÆÔ…ýè3È 6ÕÕâ›NnÚ<ƒÙ‹þÊߘúkÿ×â?ÿ[Åþ·‹¿þ7«¿þ7«ŸýoË¿þsé¿øïÞÕVþõ¿Uüìß*öo?ûóå_ûùêgÿÎÌ_ýoöýgÿçê§þ“qµ-IêEvÁY«?ó#¢»Þu–¼µ²m‘÷¦Á¢#v'½é‚©õÓ§ÞÍ‘'‰Ëž„/Ó‰h—x!gu÷†­iž(óÒH磩iæW¸nzãø.*´­·ô]ñg}Îz1Ÿ(etEžQ™s|›€C:3HžñÌ~ù[ÿÏý?÷ —üÜ?ß÷wþÙìÏý³éŸû³?÷Ïöüí±ÿÿö«ïj»èçÿåîŸÿÅÁÏÿòÔßý¥=÷__òwÿÕŸÿ烿ó?òçþJœ¾h¬’©MDHË’½™Ž^¥À›V)VªÞúI ÔÁFAT*"3i8>úŒ¾ø ÃÓÍ‘:ØØ‹øª¿pw¦ç½áwtª½ fIzÁRÍ3n¼~hOZ)œÅ®HJ{Û˜¡÷lÑÝ$ *^ yfeÎeb/VD|;ïKaûÌ]¶á~¬ö?Añc¸Kñ—Q|ˆpà]n?Aù”?IùV}  ¤¸Œb?û.mÄE’÷Š`Ú˜¶9¸/óCbŽèHÀ‰ ¸„@ÚÍtQS,Šyµ)ZÆžvaî…Gxå),v¥\‘.…O;é÷‰To6üç*Ò9gÌþ™XûÚCwÎÚ†«kŒ0S¶1:÷¶ ~Ä9+_¿;îwʧéÂMçÈ\$0< 6 ß9 ïgð{ÆÅÞ! qì"ìÃO%™(û¿k­eÆl ‚†P3…”$·µ#1pUÒ¨4ø 8n:óžŒé ¬8u}<ž¡â¢sÉm“ër޽…-¿õò™W¿Ml’u“è5z'†ÿBï;ï ["$™Š~¶‘j<Ò™Xû—¹í#8rË®Õ7KHlÕ¤´N>¬·ñj¢&Qn&ï÷ÞÙ«KÛ¨l-O­Ì¹Ì`¦Û4µ².ÑÚ°Oýôp¨íßÏÔŒCvÁ¾DÙ€ †§ÆÉ»ÚŠ„:š€ í qW¿ÌìFܱÄ1Jâ5/–4ù3?]=ª` µ+¨çQ!¨V)úî¢Þ£õ#ïæ»U^Z»Lçä©ÏñÐGªø²·Tƒ¦ZDÇQ»¾nõÈóÞð{T¬ßçÍTqôå×^ ]^fÓ£B’ ·âBfÇbÒˉ™w&ÎÔùbϾI 2ý, «f2@DDEáâxøÆ«œ>ZIãºd°P‚8,ôÇý,àsÎ’†AT„–´Ø<ûÀò/Ýïg¨sj^æÂC$a0’“´ S\üã[j£n«ˆE—¤”ÉìlÌ,¢Ï¿ö\óÂc´‹ERp°XX+ЩL]œÿ†_qà@×xíÉWß=ž/´Ô>+ñe.H<É (ЈÔÚ¶šåÀ‡ðåÖk&Š:–Oü™NêN‰Jl§¨Ýâ[ÃWçøó’VZñ¢ÉkãÐDy¡vÃ…`øŒ e|f|ð.wúÅ]~Œª‰k$$é’:¶ª.g2b­H’ IÛ¤:{1û~©Ø,€Û[}Úlø3;Ä{qÄV l/µ{>>q;qÞHœGUÀ.Ü”ó!0 ¤UŽZzå‘Áú\çÿO’x“\ý3sá"¨ ‡@"*Õ%?Áîâ ÙT´ JÞ÷fòt çB§©Ì:ª¥ã‹ÏÜÍ™±uéRûHx/®ß?ÎÃ_ú¤xmY<²òô=~ñhåûú{†€ó1g¸«-ev(âM}7•-„éKÿ »/5*¿UgR1ër”3™x‹m_q7‚2Ý´aápzòVÆgBïA. \Ø‘°çýïV;š¶&­òÆ¡¥—›Õ ]¥¯uL ¿e߹簘YçÏÅl±ïÇ »7Élê¿’KOdv<¦ÚŒÀðž&õ‘ûûY?ùôÌ¿\²Þ¶_yaï’Ï3Chfªj¶õP˜8__yæ^7dŠÔ9kÔƒX©ÉM$î‰f2ÖPxïÔ0AˆÓÜÏü%¤š(›ˆSäÊ“™<_̪$¤¬ƒÖ¦W­<ð âü@ZóÔt!‰óÆð›YJIUEDÞ–•dk>hÇ¿}‰IC+¢81uéJ3áŒ`yåË\XH © É ÛbpÙ_`öˆúð ÷_ZVÈÍìøù²)Æg$)[©:U·©zß|Ž—/¥6% Þ_È‚íç“áWU ³úÝ&˜¥fxzñÙê/ ‚bŒ!†©$Î1þЋ2f2‚¤Æ;Z +nÿ®¿ð³Ì°M™ÒMÛ/çÕlÏdÞ=úô.g¸$ç0¦”ö­—–ž¾‡v1ŒG|Uöóf)pÎyï7Ïú[û€xšY{ý™j¸FŠ@Bn뱉"Îu“:͙̅¸ÅaÐÖTñ¢?Ë_üYÂŒu ûâÚköÉÛëQe2;Í¿B41•€ƒ@5\½ö¯?)ÅÐjò|9ŸÎÛ=üÞûÀú‘…'ï,VOì@›VÐþ± ˆš([AΙÌBc ÖÕOü§|è/!…tÂÛ-Nò?“Ù y#Xë÷…|{Õâ›ÃÇo¡G×½ÅtávÃùäê߄훀î¿òäL2(:¯~!„6ÝÒê7§ê"’W¾ÌÇ ÀCƒÌìÙýgÿ„‹_v§¬Sïa¢Ù—·½™ ÐðMƒ6…Õ&±u$"쪟€Ï‘–C° Xáú|2üÎ9çÜfH¿ª®®®òÈ-³ÃÓ•Ö¨à i!R‚ö¿Ÿz’S\NgÊ\pHQt5D/úàþüjÁ™§S'I}Ñ^5¬¯4š¯º2™.ÛÛús¿ Q µ¥ÔT¬?q'ës\ÐEÝΧ;~ÎööF£•••µo?½Ç§”¶¡ð “Wu%–tbóógæ#‰£¿ôC\ö“µ ik˜”™î?p9¸5“Ø<ÚÖ$RWvèݾ=üÜ“¬/AŒtœs@ °!$¨Ç˜®:7ÄñLz~抿;Æ7\… ª‰ÕF…®Y—Æ—ð 4K—eÎù ÙâÎÀJ§Î%\«6Ò¬>ØÚ´‹¸îÒ*L­³kïÒú†„W濪ÿ×ÿÓûˆ6e”aÆZœGK…Ô/à¥LæûÓšÇMQâJÑ2ÛÔÄš©i„)m.ž±¹û Æ'q´ª‘f42BC «°4ÐÔØF<ìË9{â—MÑľ¦¨óà ( hxéÐÆÂé<”3ÝiÄNˆJ✥ÆÒ¬‹&BN#Äz  XcðcîVýäOƒ£¹°®4ÕöéíèCþ2™Ë6_0[².‚÷QX¢pºtêM^~)àï@»ie¸” ó]±K×O®Àyu•|î~ëÖ=gx(À¹®Öˆ^’Z€™¤Äå¹'î“õ…<”3›‰÷¦€Lè”Dß®9k’+ÇT­ˆ-Žlº¸ì/NýåŸÅÏ´Fè UX,à˜D¹JȆ?³Ãñ†³NÅ}[áJA‚Ìe——SoÌ=÷í\ê ¿‹‘A=EÒNÌ_;E¬„œOU}Î=ÃßÇ9%$‚õ™—‰HH*E"è ‡ŸØ8úì^7ÌC9s!ÑJÕW”0€äÄð˜âA X2m)¤t:|GåÒ‹þ³ÿ ?ñ—j¢HÙŒl‘þ&Ó!¤œÖ’ÙÙˆâ­ßUë¶ŠÕI5iòEЙñJóÖsœx~¾ sQœV8ÀË4‚ $\ìMÕyÃ9º(ôqÈ€µXÓ(øG4óõÓwM¯Ÿœu´žrfç‘$gIí*®¯*é ÚNED[¨ þÃÿüO±oØL<—Ò½uýûHêKŽf2;˜m+¶å»jÒ˜R¢€¶Þ#ƒ…#¼s€ -fˆt)±ÒÝ9÷×ù Tû:ÀycÎAW¿Ûü±ú¾•ˆ$pm_flÈñV^xh6.Sç(åÌƶ!mxKˆFW¤ÔŸN KÛÐX¯¨ŒvÍþôÿö¿åÀŸÅï.§§¶[ÁÊg¿aúŽ/d2;‘.¿¥‹ëLPQ³Ôoji\­ŸŽ‡îãÌë¤Þ%KêÝRö‰®ß÷ÿ<_úàœ3ü6É»sÛ1DÒvUFFKw~…Ξs†’’¤¡}Îã<-kÇV_~¨\?9U˜sm›£û2ꃶmš¦Mfâ ޶emö’=å¿.ÿÆÇÌO5Ú•¤PéUù» £­˜¾­%Îú½dßÙáó LSg0vÿùÎçï&ÿ*DŠcа~få…‡¨ç¦cã¡ÉÞæµ»aCϯ‹´sÎðû-Ä~ér@RÒ:¯>Qyz[§C|á-g&g.(¼÷f–R /öÿgïOƒl˲þï¿ÖÞçœ{sxóTóØ]]ÕÝÕÝUÕU=è¹C&@ (@¢DÉ&h€dhËVØÛŠ(Z¦-’¢Â’ä°¡­”Aq8Ýèy¬¹ê 9Ü{ÏÞkùÃ973ß«j6TU/§·~qâU¾|Yyï=yò®³÷^{-«Å,œÈú¹'êܧþ$«woÓ¤F’÷ì¼wù²`2¬ê§Ý_oÅ56ó…cG>u»¡g›øpC`êæb&VÕh8Ñö×¾üwùÖ?Îl¤q†ß5c2æŸÉ‘Ë 9„¿,;Še«ôõ÷ÿ^~ñëkTêX—¤KñfŽ•LŪªNÚ<ÉhÝ®‹rÕõÙæÒÙ÷|aí£¿Ä™7ÏÜÇ4ŠeÑr¯[ßøÊÖóßÏ-8µBÛ-•~—r8fÄq¬°€‚NºµKwwŸý.¼Åójí†l¾žF¨ýÜýU†6þî Êò¶ „°cˆ÷Ë$®Û ƒ€MÄ + —¿ó~ðMªa~O~ÀòC_6š9aà_¡•Òö%o µz·¹ò»ó¯ßÕ?Gϵ†«ÓÕùfž4X$õ‡×Çôºc¹J¾ó_dÈÜ]CâÏ+w åÕ¿þ†o;$¬ª¢‚‚R‘a«æ=[ùÊâÄ×Î<þÒ'þu~ã?\Üþ‘k“³sa²R´›5kä˜>¢!ïŽ\ÒÎdþpkó1i|ø­t] Ûè¶ëÜÔLÇ\YŒTi ­ù VΜ^<Ãõ¹úßu³ùKpE;²ÁfdWHU¢€Ïkþ¹èÐܸJ^æ÷•9_û}õj@2’Ñ^døD¯ãàú¸¾{ÊÞ;ùÝC]Õ5yh¹<Ô×Ô}ØD.’s!W’QiÒÍ´ëUÇú¶aÏ,Ún3¯°€—îE_óŸ|ð'þÄ™žæ$¤f'Æc B£tñ áæI´•~1sgví ßüjÛX»“w.:ÔÃÒmõ¡{ª h°¦Ÿƒ• /¾ø;'Õ«ˆãd££¨Î\£Yx½Ävë"¼ <®?T\w·ÿ¾êN®4E›"ÝðIñ—å"¢½„›Êè”E“Xlnö¿ÿ(—W ûfv§÷ím—=Œ_–k%Ö€Ïùö—f_ûGM½Ü ikn½ªŒç>„×C\e,c?õÝ¿îcMQv;pÊ _Êí‹X¢Ï>Ï>7]7Yë'u{Zç­`¡Ì’n§Ükcªª:e±f[ßïW·oÛ¥Oüü¹ŸûyôãÛÝm/[G“²“¼Œ‰D¢€TR䶆p3ÕždÞ`YSRá¿Çó8©z2 ûûÊ2‡æÈüBºÀ_ÂyS l“?øoW.»µ¾ŒSqT1¨ÜÞ€_½!–¿{eKÁ…¢ôª‹”·s»ºíÜÎR[T«Ž»„Õ-{ÙN©¨ÚNƯ後¶gu¡ë ]ïeÕª²€+O~á¶ÿS“Ïþ*¹&'6 彿¥Zi ZwZˆ†nÞ»ƒ@1ªMrª/ßû[Ô—ZÌ ’Áö¼_D[Þ×Ê$'ÓóÜ×7ÿðžök­#Ò\ÿ¥Q}<¼q×Þ«¯Ùõ,Gû ź]LÔHŽTѾI+—E¯ÕTJ¢¤q²_É|±n›'mÛg›/\ëŸMÊýïçC_<ýÓ–wÿ “{g¬X Ðχ÷”1êÇTWûBU£w+“ù•?ø»\û¾ø¼îðm¹ÊSý¯UÆI ÉmÛ&Û¨_ý‡‹ç¾ŠÚÐxÄ*&‚ãN‘x ¯ËrñÞ|Ï6\v"ýPŒ{÷÷ÄÇfj4f]]tÖwµïjŸ½&ÏEvÆÉàB¯y®Ó¹v°lì57æ3MMsç#ëïû¹ü³ÿ¿ø¿åÔ#äK.k™¼R­+‹–yn†¤ÿÝìÃÝ4þÂM” ’++¾µýßáÛ¿KÝfOœ¯C­£ãÐ=×)}¶LD”æßù]Y<7<Íl¨Ô±'‰ƒSc®3¼>.æR†À¿sŒE¸v6à92”ùp|§6§Í£Õ-[É^²Y2@¦H×Ët®«¦Ã^/SÛž”9ˆz3Õk'ï\y÷_ø…?·ös¿Á[>:[¹»¶‹xO^XY§.ÊPG\ C;¼‰‘¢du7Qé}7i2q÷‰/Ò•§ùÖïS·–[÷ÔIꑺ?tO´)^ v`•g¿ñüïý­ÌÆð4S/‹T‹¨WõÈn 4òC˜Ø [í‡Ã+>Tå:v/ yÍ I I}ÒšSMR”:ì «R„¢Ì³Ì™ulmUæ† [þ„ /ÉúÓg•üéõö/ñ ÿsù„ufÒô 1T@‡êU :m×4aÉ‹,Ûï:GfßpG‘‹•0J_Ü]ÝN5ößþÏxù­»@EæfÞ[þסë™¶Íüƒ3å%;*¦‰RµiܧjÙN¥¤pÀ¿À?ÌžxÜÇ#5¤M¨,7žÍ³µ^d[˜I3×vÞ6ÛÂ\‘DRËbÙk¶>{/.]Û¦i·€g¼Ðœ_<ôÉõOþ‹·ý ÿV÷Óÿ2n¾úàf:»Ir¶®.›~R†MÿË›¼B¿le,B¸Éï,‹s¸ZY-›|ãwÅ6Ū“EÛá7QôÈ$›ÂÊ}¸öìµÿþo¯-.gX¨" ®âŒ¹”ÞÛøÃM¼eœÖ×áPr"§:3)Þ%Ÿf[É4ZÔÞ÷Ò%rF†|Sƒ •&¥ËÛòíÕœyŒü³ç~é3ý“ÿfó3ŽûÞçë·/$µ¥GðCê`r’±ÜÝ*»EùQ$;QÀ*„›ÿN0þw7{R·_üÝ¿ÍìùÖæË™Áá+cÄÿšIʰÎ6ßþù3_“ùVRœl’‡íËc6µŒË®!¼ÉHö*•ûjõZ½VJñR¼ï½_X¿°)´•´lº^«í–M{VvŽ.`¡‹Eº¶È/Ööe]½ÒœÚ¼ðöõÇ?{÷û­{ÿô¿yöOþ/yï/ÏÏ¿mÖœ™Iç>oíÚÔ¯­°˜ ‰V\©‰ªÃs©0ÇÊNF!4.M¥©Ë̃ÂÍ#Ž[u¤Èr·^góÍoþ¾ÿûÈl˜‰ËG-Ñöð=Û”[zú6¾ü·§\ñždd¤™NSIn®=RšXâÄ ý‡THì=$‘DT¥A[ÍSÉÓÔMS·š'kȲÑýr?ߨœËÙ®ÝóýÉgüîO=ÆCŸ?õáéäOüë§ý/6¿ðoð¡_åÎ'hNo¸.@êQ€(®”DÑT˜Tæº3•/`P ZV"¸PÑñª?j-ÀC8r„jb.CnïP\“Öç“«ßçˇ²•À†·;J7â‡.ðφâü?øÊµoü@%U\¬$r¥µ™#Iýáè‡.ñ×qN~ÂKî‚犚k_eaiVd»ÈVϦ¬nÉÊ,­néôjj¯4«—'g_^¹û'Þzà#g>ú+wÿâ¿rï?÷¿:û+ÿ3ùÉßà#¿Zîþ@=õÈB/oÁÖt¾Î¼ó…×E­ê¬ «xCq±±‘î²$à²×ŽéE¶³Ú8ÜxDàáfÓå(ømêv«Ù)»rí«Ÿ­çª†£4ÿvèÿ6P|ùsùÛóþ*SX@­&Ö'ðLUõ2¦>Eà4fþªe™MZع °*Bv²yªžªIo©wYOw+Ϭœ}úô]/ÜõèæÛ?éù«_ø §õqû¿þý3ÿNúâŸç?Ë›žäƒ¬Ÿc²>3æYD[¯Ã…œ¥SmÆÄÁ$´iHãïØîè3&®xãÒ隊PÅÆ]…†x¹ËfüdC¸y®»µvL´JÆi}1{úë|ÿ[Še!¯?Fü¯YÔ2ûî7š²¹¹“¡8zu©Et öc·ä¸2É٫cÔ_†|¯Ã-’Û¦[éNœZ¹tiíÞûO¾å‘S¾óôcO>ø™ÏÞÿ…/Þ÷«êîþÏÝöÏþ˧~þÏ4ŸøÕòøÏnœ~×åµ7½4¹íJ>u5­ni3ŸiYó~Å­”>é<µ mª("R~FY`•êî!a6©uX>XÀfè|¨óK¡|˜üŸ}üdC¸ydwCÍø_6È´Í—6Ÿû ÐÏgG+ÝôÀïØ›cr”*Ì`Ó‡ÝQsl«ÖÍž¡2?ü6¾ò½?ø{'66/8¾ÉÕ5Ù^]˦ëó9¾ µYÃB™'Ê4®Ìpýí˜!EÕÐ/}ùýÿÜw~á?þêŸøO¾ÿ‹ÿásü¯>ý‹õ¿ôï=÷ ù¥Ÿÿw/ÿü¿ûÝ_û¿÷ëÿçü©ÿûÓúÿõìÿè?}þÏþ_üŸü—~óo^ùó¿}õ·þÖÆoýöìÏþ­òÿ?þÌßä_ú›ü ÿ9Ÿûë|àßä-¿Á…/°ú>òCp>Ó­Á)8'áÄXj·™Ð‘T´Ðí–߬´š–œhd¬LÅy8Ej† ýVᬢ™Œdr&5ÈN$NÅO<„›jH!wù`èÜ('WÊßúå™°êlLW7ÈÈöQyQºÿ±ÓM×ÝqÕÔèN)›ó­¯J¿•‡ž‡‚ªZí÷ÞO9ØQ±4¼‚C]Ø0wÄôäÙ³ozë½ïýà#øä½üäúäÝüÔ=üÌúÌÅ}æü‡>s×û?tç{?|ûSï»íñ§.¾ëÝÞö®óc^Ì}l¦)^1Ã=^ð>QZ¬¥$/b¶7œ/¯R7«Å­§önÅ­@/ÞïÔì !Ü öÎ+/GjC˾ʺom~íqùûx9BïûøåU>ã*¢ª k%ŽÐ³õòÖ3_gûrf±X@—†÷ntâ ôÕVôcÀn¼´&´“ÕÔ­¢PYC„œÆëÅqæ~ܶ¿§R¯)–°FHB“È*)‰*ª.îîæ«ü!ÜrôúHã(š†”Ÿ‰,6ŸþÏãõ-ÞôÀ/7üÅÇG4«ª¹½øf›äþ{¿÷w™mXíÛUʼš)Ú2/ªÊ2‡ß—Ó³®Ô˜{ ×+ÎfeÛ„ÔÑb©sÉÈÐÕ!!d¬•ƒ""”åañœï¿þÂM¢G&y'„ð†G|,§m°ÜNž™Ba~•©Ì_ù'Ø,¥ûûXÊr³ã0Ü|H…L…g¾ž¯|×ņ7à¢Z%/« çÝ®énb‘o^© N¶±w-U’IB´‚‹¢©’{´’‘É?pè€IDAT?âr]î5õÝâ!„[ʘ۷gÚ_¥"¥[AgW~ðM6_îŽÎKÚ¿7²ë'KDSõÜH>ã¿£/}£.“¨‡.©»ÿ—+>>aóØÉ^MrÔKrà GñëvøxQ {óölÏÝ›À—ìh]¶çã8Ã!ÜJtÈN»a™9ˆR EÊìÚ3ßæùo¥þÈôθùod>äL-‡û×WA› {mn~û÷š+ßÝ)Ê7l¡²amœ'Ðá3¶\ð×Xä×ËNëóìs|Ž“m¡ôxY^wöŠŒ“¼ì¦½3¬ßëß;ÍdÑ"„[Ì “|ê¦^›œ¦ ­XÚ~qñ­ÿžòâQy]û4‚ñß4—óüCÅ>ïÙ|qûÙo¬—q’[r T—eõÆdÀá›)h¼‡W\j‰Òx"vïxM0ŠØ“͇ønhÕ{H¹þ’ñ~·óÒ–ƒ~uK^²;îÚÀŒ k>{éÿ‹gÊë:€·2ß™Xv*Á ßý†_}öD]$·läa @ŠkÙIèwaH`Xq‰À^õ {µ n9h/Ë&öOù­Ø9ÒõGáÖqÈ_|ôC]à•I `LêÆæ÷¿ÄËß8*¯k_ÿÞq•¹fCü./}óËl_f9ß*6žb“an–‰×>–òÀ^åŠ.š{KëW"Èpç¨CS¨åå8Ö’ºñðÚB¸uܘÏ;ö—&±+µÒ€Ñ”Í´ñ_û'Gåu@rß0^wßó&jåÅgŸ¥ßÆ·ëæ^—!›ïÕ:%Äq¸^…JcÒ" ÁD]2¢cÍGùáWç«Ìø‚†¥~‡#„p yõ¸“p§Îê ¤Ð2ã;xT^Ô¾ðqÍ®Ùz¡ çHêv²E¶°ž¯þçw|ùÿqÞ6·[qYRÑ!»d¨ãR\Šºµ•® S¬Ë2\'A¢W_àGÝdŒÜ€í) 9ôØ]^ÿòª‡¢ËCòx„n™M³±» &X¢:UðD)TH.·—«üƒÿw½ò]ê&Û[樘ãeO1pƒe9±r@éJ²ÌÖ³žçŸñr„ê‡B¸¥‰ AlÉ÷kÏ|뇋ú¿jœ=ØÙjÝ×ó´kØCE¶^ÞúöW­ŸÇ•BáðS•!ðËråÚÝÝìå¯ÿ÷Ô9¢8Rw ÆÝìCªqfn›Ð~=²\ÿX’tWŸ¿ü½o4^ˆ}ù!„ŽYëEpÇÌÍ|þÍßaû%”~Ó»ƒã‚è²»ì8åüGüã RñÇs¦F3Îó¿øíþÊÓF¦^!„#CDd9“íŽ;ù™/óâ÷À ¦ P®mýà+íüŠ(T’D‰”BGÉΜÿúÆwøþ—ñ~Ö'Q$ !ï†x¯XfÛÁÔêˤ›±ùâÆw¾4õí¡~zЏBápÖô‡eOúÚúì9ûΰ¸6V™‘¶ŽŸcÜ9t`#ÿý/Ù»g®ÃfÌž+Ï«³m+ÈÝgB! ~cÓ¹q½¥\Ý~þ›Ì¯Œ‘õú;¬Uß)zœÿ«¿¶,`Û|çËöÒ·[_`h5 ¤„B8Ô®Kæww÷q¶_xþÛ_âÚ3j˜Ï MË¥îqû¾@òNðÛ§ÿžü˜ç§ý&ÏcÒ_MÕÆ ‘ßBáˆrZ¶xî­le@QDÒÇ~?ËãÀ ‚é¾<Äuƒ~ÚŸÔžþÊö·R® [Q¥Æ…Báhšºõò7—zUjñ$ˆ åºJ>ã÷ÀÚ~ÝôÀï¯ò± à 6_Ü|úëz HBsŒøC!]-åÚ·ŸùKMib1~úú’ÿc‚ße³ïÏu÷wþ𩼸}»òL6€"KŽn{!„Ž*¡ñÞŸý6/~>t¼àfPÔ‚P.—ý¦~C—û®‹ýxÏ÷¾žËU ’Vm«EJ!„£j!´Ðm¿Ì·¿„W†¥|û„9Ãj¶!Žd¯Ï}›jðëɲýì·¿:¡§R%W—ƒ[ò!„^Ô}¥nÛW¿„/êØTp²‡¾P*™Ò¶?küþŠÏ9‹ùËÏ?“Å1 qIæ1â!„pTUQu://?ý=¼–z]ð³=%müxþó-šB#¥HÕÍk(WùƒÿÛ/ÿ·m“]]”Ó‹g'õZßÄ•^ŸmÚ^ÒЫbŠ­šƒ+–1ÍŽÐÃ6²Q°CuÔwˆæ0‡*î쌡Ç7ÑÒ2„ä6Péjß\û>/|ý„^=AÏ¢GÖªæ„M˜C³`š`ݶêyêÍÊ!c]>pãòåR €¹ø¸É/’úÃëÕPò¢äùøUæÈæ Ë›í!~V¡f¬É®‡ê€)¤B6òx³,…a`¨¡¶Sý+„pHŒø ¥_ðÒsã½zJ,c­£;ç¬~Ė€Ð °¨Ï>Sû!ð›;èЧ7„×'1OZtY [l9@/—4#Òí)¦q(E}Øú£ÌS©Zª”Š9æã}‹VÕš©ù–ý1‡p(ß~–õøê|kóéï`=€îþ¢Ú0 ߎŽï>þáؽ‚–Ùµ—Ÿ{ZªTt9Òïc;_x}*â>uŸ.»^w­‚'Èx¦d‰¹²%=\‡¸B6r!/Èýr†béƒ::„ÿÂÁõö !¼šdãèBëüÚÓߤl»Ùgeyo¯Ã†v¨ßÊ}²œª&A’^zzûêKYt¸)–0c®?¼Î ÚZñœ«ŽH=ã‰å¢y¡ô”B1JÁz0ìPb$ \&4á OX 2d§uZ'RbB8dï?h©õ¥ï±ù¢¸Á0Æ7PKÙöp¬·ó%tgm£ g3žûžo^Ë¢ XM N5"¯?¼N¢ó†kY6†Ù´ä*^Ó°úOßÐO˜O˜¯ÐO¡¥ªcLD0’‘Ý5¹%,áB/XõÔ^ª¥èi¡zÿ&sÊ>—+OóÂ÷e\[n倶8¸çyó øLñá&G€þêÖ3ßHý¶ºQ “áYˆ³ÂëúÍCeœICðqß–…²¡Á3–ÅšÖ¡6‡ë²öÆl>]¾ghE ¸8ZR–+!„Ã"AývÞ|g¾ƒõî,·ò |¨ís€¿½7ªßGŇ‘L¢§\ó+ϵu¶gx/Èø#[)¼>ׯ-dV «°@çä¹H‡vUu&T=\GQ]s¡Œ…Œt…¦'ÏÉÛ4…ŒfRSs³ˆå1Üïɳ˼ô4Ö‹_× ö0¸ù?e¼ºû˜áÀ‚­¯|ûË­—!רÞçŽ;ÖÇÜexÝ×´LKí(ºè%5§èÁJ6o¨Jª²À·„Ê2ÍÿðÙ·Z_tVs­Ò÷ô3[¹,:+«Ø óÌJ_m—#'&„CE(Nu[Y£³í+ßû¶-cKž=›ŠÆO݇"øX¨È{®>§[/´>åˆ%þð:-J3ïÛÞ´mÛn]{žý*øßðÕÿZ¿ú_6_ÿ/»¯ÿúÕÿŒ¯þgú‡ÿéäkÿ…~íÿs¨¾ò_ó•¿Áþ ¾ò7øÃÿŠ?ü/ùÿÁWþ¦|å·ùÃßæK“?øm¾ôß4ÏsÅY_˜—”Rõ‚“ú9/²ñ¸©ѱô† –á¸ù”ˆŒû­òâôÚ Íp.ö܉kŠ%Ëð:/èÖ½é%ͨ3ú/|éå¿ÿ}á?ù7~ðüæ³í·žý+¿õì_ýÍ+åÏnÿ•ÿñÖ¿÷g^þ÷~ãò_9dÇ_û /ÿµ¿ð¿ÿç_ü~ëÊ_ÿÍ­¿þ[[ýÏ]û÷ÿüå¿òç®üëÊ_ù —ÿýí»ÿ—ÿõµ¿÷Ÿpõ›«%J÷…p˜¸äœÍP§^}‘—~@ÝrÔɲì[à¶o~rŸ3l_ôáuÖ ßkçW³-\0Q_Æ~õas¯]’Òè¼mʰõm¢¬\þÃî›ÿÍ…gÿñÅg~ïâ3¿wñé/|ú›Ó§°òÌ·N?ó¥SÏ|åpÏþÞéç~÷ìsÿäÌó¿{ò…/­¼ð••¾¼þüïžzá|îž|öwO=óºïÿw“kß ›‘c'‡‰'Ib6Fø²y™¾Ìmœð3P§íîiÞô@»wÑ>uÎóOO–5Š«H2—qR¬Y†×G¶Y•¡êC¦kXoɲ¬)‘¡…Zè 9dG‚„d$C†fùçV` B?òt“µø‰‡px¸ƒ”¡L½*ºØâ¹ï`‹Ý–QÍZ¥@aÕf«e›~¾3d!*Ik%+V©†[Ù¸ò2ý6»åzÆú};ˆýhÒƒ2™:Ýì¾ó·Ï”çè ã¢+eÞS£×¶OFŽ}üáu1c-q¢ïWzºž•ÂÙ†F°ŒuXSrÚ¶ë°OX{¸r!÷Ö–ÒQÚìY[)klf»Ö—¹µµä&+:ߌ\Ø“…ofCæØB&íÊé²ùàüøÚßnk?‡š@çØv’üŽq[^Ù}C*W¯ •ùoøŠBá¨SEDA¨µrùeÜvwí‹0¦ܓܿ‡rÃúçŸWÕëf8Æþ1kBáˆ6æ Uë”ZŠ?ÿ,^–_wÿÁÙÀ¿|•ùÖÕž¾qÄB!}â6ŒãÍÌkìåžÃû¼“ÀîÊP¦žã;Õ¿û(VØxiëÊóê¶$÷-_ææåºùBc šÈÞâ…!„‘wÃÚ}ö¾n¼HÙÂmça/åƒz†û±Æ?ž„kWêµ—ò˜ñ˜\nñ‹Gr_!„£jO«¹Ýùë䋲ñ[W†B½vÂÜ~LõÛP¬`órÝz¹•±=ÏŽñ`Lë…þBGÕ+‡¯ÙëâÚKl_Ýíxé¾} ´×®Ù|ÃMp¹®oÌø‡B8Nœä¥l]eûî¶S¹æx~qp÷~¾I?'T·˜Õ!„pœÈ«}J°~¶É| ÛÓ~ö˜þÊ|¥È²fŸ{ ðC!_Ë»q¼.¨ý²ºÏ2±ýwçsX]\K‹oúw~÷ÄÚiz€VhP·*,R®¢Å†¾BG“ïþÙ«n7êJ®< /ó¥ÿa¶Ÿ¡Eê=Í}YãǬÌg^*€,GüÑŠ7„±W¾ßM_—^êÞ?ªôÛÛ[›¥,†ŽDC_ùþBÇ”ìÌç›-¶·°’Ç»éÔooη.[퇓áî»)ýC-Ÿ¸ !„p¤ÉÞÇÊ}€™Ï6®°Ø–1è*:æßŸí|Æöµ~scï‰@\¢1O!„ãâúñì.…ÙÆ5æ›iw;ßA­Ù‡¬~ðÂÖ_l5㤪ywˆï zB!}.ãô¾8»õû„ÅÖ‹­Ý©~ãÕÎ|3×­6 Ž9®r8 †Bo<õeä±ù&‹­„ Øî>÷{n7Ÿ›Ùú$†PÙÉìsÙ‰ª>!„Ž®W_ÀV•2§lãýø?ÈĶ}ñ»ñü3émÞ{ETÝ—‰!„±à{ŠöˆïÉêïk«Î³ßÇ{Ň9Àç¹_#þ²Ñø|hÆ[% yŽ{^x¬ñ‡B8ò\Æeì’ø²÷ô›øÌ?ÞSý¨ ¶®¤º`XðÐÄž´†˜Þ!„pȸŒ;÷²U¶®Rû4̃£rpÞ}yd+‹Í+/†×ï’Ü}ÏÂþžØ»ùC!¾¬O3ôè£ô—)Û‚ʆ»})àcu¾q5 ý Ttà9!„ˆ(¿w˜ê’×ŵ«Ô^—_y€öeÄ_ËlãÊN¿\_¦8võ…B8>n,Σ8Ém¾u•ÒƒîºÈ½/YýVúùæÎërª?&öC!_¶3Ðõ:Ÿm`å0<«ýÉê÷²XÀ.T‰~!„Ž‡Ýø*€•Å‚e¡úcžÕ¿Žñô÷N˜àY˜O›Ÿ£ô mÝ;õ"R’›VB!„£(Ùqr‘P£³¹«¡dŸŸÚú—¿+& ¨”íƒzžûR«ßŠû8­?N{ÄÈ>„­ÄݱCQ¹n¦úRÜ+€#¯Øº÷!„Ž!ÙÒW7úùÞÎ=e¿³˜c6¼HÙ;ä˜BáXÛ]ηÂ|†üV¶}ñ/æ^ËÃ/r}3B±ë’ûãV „ÂõªCÚ!ĉ›fÛ»#þƒ»¸ùß­öó±9¡,Gü{:¼Ê !„ެº5»KúŽÔaÄïzÐýiö!ðïçXÛ©¼òE‹žBÇÈnÄ·¡\¿ãVYlCÙÙÚPOn?Fü^{ñ:Nõ“®ôvе C!„›b\àB¼Uê·e<°1ï~Œø77.çå@¿Ö c¬Ú_w‚b?„‘µwá~Ù£GQÅÁŠÍ¶× Ç9ðWµªÃðåIÙ›Þ·ÏÏ'„B¸‰L–3ÙŽú2ê%¯â7=è!î~dõ[)‚íDøz]¬70‰œ¾BGÜ«âue(aç[àËrýøöcªßÊLÜ`xí1›BáØÚ;”5twžÛ*}[bù™ró¿PËB—/RDÜ}çqÕ‰á~!„ãKpG¯V{°_ÒÞŸ}üŒ´œí}>!„ÂÍçÂÔ¼z-Cƒ>aœ?û0â7¯eï°þÔ+ !„n:Æ%n0+ìÄ]?ÎYý˜™è¹µ‘¡jo!„pLÈ+ëÓÈÐÏwK×ç¿×"]ï§ØFõ™·Õ%SÉ…*,2.äŠ}Š &„‘äN®äZðld ³Eãsõž”۾̑n zŽyw¾B!øC!„[HþBá?„B¸…Dà!„n!øC!„[HþBá²OßÝi  "f&ÅûB!Ü*¤I"""ȲhÝq.àª1¯BáVwH¢á~<‰œ3Œ½‡Ý}çÏBáØs÷a|?FÃÁÁÍ|ïoà þB· !ð7 ‡ îSà{øžq!„pK¢^ÓpÂß~þ¦i Fü!„nUC¸¿uJ»M÷bÄBá•·ÈTÿ˜Ç±>„Â-iíîÍê?ÎÉ}éâl²¾È= äd¦Þ÷<¹t¹ŸjU &Éâú!„pÕ!¤*¦¥hS-䊫̚n³]gõ Ò=ppñnFü’RrQØàعÑq¹n@cV „±¤ Í»a÷8ø…¶›ìýë eû,2þB!K Ž‰º(Íä0$¹ïÈ?·+kMB!{;Û¸ïÆxH-“UÐ[ ¹O”Õ5SÊ¿ñU{ úC!òŠekG];&k{føså>eºæ,ëJzÅÔcŸ!„£lù×3$Yš0Yƒ¬¯vg°Ÿnzà7„Éj•Ýò“ØåBáXÛ™À7\—”ÜÑ®!*Ç>ðQšÖIË; a\îxµgw!„Ž4AÝò>ÀD«¶4+HðƒK}»éìm—'«8d©†JÖœvÿuç\EÔ!„pd‰ã²[­nwJ[YôeåÌE¤ƒŒÓh¾ûÍñÚhÛ9 òÊGô=SûC!iÀV|ˆkcáZ¥Y!M†í²óOá¦?p$O¦kæcÔÜ‘ú¬!„pÄ\Òtg>ßÑ<=‰N‘<|öƒß¾þ”§ë'* ê& ;í‰n˜ê¬þBÇÀÎÆ uŽˆ´k'h&€ r ƒÞ} üÚ6'N:º³q¨k°œ×÷ØÇBápÔwkÒÞ·všÆðoüèþ!„Âá¶gìê2ܘ‰,dÂäÚâc»ã>Õ¯©"H»véî¾Ò67,äïæAxŒøC!aÃ>6LÆ|Ž–f•‹wSuÜÕ/C›só­™‹’&të4î8 aÏdÈøA!„pdÝ0u=Lp;jy…ö$Ú²¼38Ø=lûÕ_+T:VOH·†5|e§žÑu;úbÄBá¨Rñ!µ_Æ8Õ•SLN’ºÝ/<æSýæ=°zºYÝøC!„cÈGwîÚµÓLNºêÃçðc¼_̇À¿~j²¶>¤3ŠÿÁ}äø…B8šnŒä`H·~šé $s8êÔíÃsåˆ}²zœ½ûù†PoñC!m¯ˆdŽ «'ÏÒ®"{¾â8ïã—åTjÛÉdü¯xh×(ÚBá0Yæ°£ÍÚ:ÒØžû;ÐN´ûø—ù{¢´ÍpÃãIü!„Ž«ëck;A´.ãžäúþ+ŸÜÍ`Û'Œ=xãoyüËkw¾ÄJj:‘EŸ™¥ÕJ×T²Ú¬Éq½„B8’tN…"FžÙœ ¶ö`¹ëñ—óš)y6χy¦¦Í{š7ýDT!©¬Òܨ*V–ÿ|}w>?ÐéBáµÛÐbIÀÁÜäÕõf ¶> öpi{´ ’9{IºÕœ„R‡s¢ îCE“eëâBá¨Ù›®§CtutºÂ‰“ÊØ›vXê6Žqr_ÊøP²8qâ|³rRugœ¯â¦^LH~ e C!„×J‹òb®€Ó'&'Ï0]cmJ$8àú=û1ÕÐæJsbrúâÞ*˜ÃB1nB!„£Ç@E°, ÌÒJ:;dGüéØOõûP²À½wAWN^ºÇ ¶9Ñ–!„‘#î ¨ˆ¹:Å)Ýî]–ðÕ!öïþqnzà_nˆ¹¶ÈtzÛ}½Éø°®Cßbƒ*y,pB!AV»Ñ8Eò¼;É…;‘œ†Q­€›ûÿ¸sQ\ 2åÌí iLJÛÉæs’EõžBG–ÚØ}Oqª4[í:'Σ)«ÿB_˘èw¬³ú‡ÿ¸COÇÚùæÄy_Œ§fü·zô…BG$é‹U«CL3æ³·qê"Òé˜ä®MÛ#þcÕ?p*0=Ùœ¾ÓrZÎñˆ#¸Fì!„pt¹š@òöÒ´çî¤;¤ñ Æ2¾v̳ú÷>€“Së·?Ðçu†­ü ÙÉ Ñª'„Â帨¦„17=qÇtkÈØ¢·Žã]ãx—ì@tŒéiÊ¥¶ÒʰâÃ?9p²C!„ðú"’t¨ÙWiVn¿"cÀÃýA§±ïKàwGLm9{×<­9ª®NhuL¢V!„#*‰h{%OV9}©—¶.'³mœçvü ýû3âPÁ §ïÐÕ3.*މV1Ô©sý!„Ž&w’ÖZœõÓgY;5GÆ’´;©m·Äˆ¥Á¨pêüê™K† ¸àË‚€#þBG“¹ˆô¥@X=wÉÚ8ÊwØøÇ}?í|4&ö;“µ•§|ö.cÝžÃéB!¼fî€ )l 'OÓ´‡°ÍÍñ×+®VÝÉÝb;é„îüæ[>ü\>K¥©óY¿¸Òݹ¡'&eóð¢BáG+âT)”´òÌÊCÜûš•:1Ò¶3wïa~PÏóægÑ«¾âáR·ºš'Óa2$‰‹W{Ä•BáhRÁk“@R³ºÆÚ‰½³Þ Â+âA<Í›þ²ç!D0H©=}¾[;5<~²U÷z …ŒB!„×ED¤Ö.QñÉésœ:y¨Ô‹Ãn?ƺ}H÷ñ!MãjÇ™óiíl/à4R}ÞYç!„Ž¢ wšó9qº±¯:èP°¨\‡§ƒzšûøm¨Ê/ ÷<.°zª=uqFÆQ¼ñ™JRüC!„#I •^›|þNVN9M°¡b]Bu¨^/àÇwªßI€êã¨6¾æÉê¥ûúvm|u‘MQ¬?„Â%:–îñnE/ÝC:QÇIýŠØP¦0ì`¹7=ðÍvÇ‚½"(І;òõ 6LuXU©¨Æ!„#Ê݆d>]?Íí÷&uŒ²ŠMj¶ ýMìÝ-Œ¢€ÕAZ.Ü]W/”ÔŽçC) ø„B8’Ü…¤uõ,§o›“1ÀCü±b¿ó¿r]V¿ I@3§nkÏß»­–wDnVú˜ì!„p$å s6¼;û¦·³r²@®Ï^; ›Ö÷aªå~½J¦YŸ\º[WH à¸û°á!„B8z* e{z–ó÷¢+C¼÷½KزóïtÿCÆe˜ÿO«“ûÞ¶Èë¦ãgÅ\#«?„ÂU™çf¾~‰»†fÏvý¡tÏ8Ñ/»»Ü†îËì6$,aȄۨ+gŠ´˜¸{¬ð‡B8ªŒy³ÚŸ»› ÷î~ƒeý>Û+ì4íÛû1â¿þÖ¦&*°Efýâôì m0ñ¡°Q”ì !„pDUúf¥½ãÍLÎBNe{Hg_Æzÿ[êiî_¤ÇünP æ€NÏßý¦ªwñåÇBáHrj·ºzßä57ÉÞÃÌÆ|6î Õß¿Àõ~¶ûWíÒ½ÒL b¢"±‹?„‘e0Y;uÏC=‘¤j ó!æ-7öÁÎ8øX'÷½âÄ,‡ö®\¸Mr†!êGJ!„#ËÑÜqîb?¤¬+B±adýFþÝÂ~þ¹ 3ùN‘nFÓÂi£ôSN?Ác?[mš6æ¸ÿ`µ‹+'„Âa ŽV´"NI,2ZÑz º/§Îw²ÒЫO–múÖ/6ØÈ+Õ™DÜ!„p8¸ìÎöË0c?îÄdh=#ŽQ æ9_zˆÕóhW|ÏܶËΈ7¼à&Ôã=â¿ñelKˆ hN¬Ý÷¶ÙôLuRäõ‡B8ªìVÚWßñ+C¾±Ý<8U’´ë'x=AjD‡Q®ã°lÒ#;Éünãä¦þe>„îY!ÑaG£ ?Myðí‹Õ³Eôàê„B×qÁnLÃSP×4–žñqÚ_ÚµtòâÉûߎ´) íy|o—žÃ1«½ÝùÄHŽúÛèËW.6쑎K÷ÍWNõÒ’“B!°§·žìÉêUe¹`©±É)Ö.pâ¢Ñú½ïÂö QM!#ºLð?û0âÏŽV¨{*öµô½Ñ»Ò®ÝÿÔ‡®Ö¨ÜBá°†ûËØ?F0*b‚û²ên³úƒ«•|E[1AAe¬V'’wþGdHíÏ{÷î¿}ñîVìNEJ@«˜ƒv\º[N\ˆë,„Âa4fë-Õͳ2Ì[oyÛ\¸—SwúÎr>Cc»nÀ?þ[B’¡˜Ò¦ûöcfÿr[¤‹+y8©á¶{WnpNTî !„p(ìŽÊwÌ.'¦kµ¤Ãœ}¾fùô}oåìýÃÍÁuauܰw€¯t#Ú›þðigäø‰áH‘äCƒ†“çN<ð¶—åd\j!„ÙÉäÿ>üÇD‡û=iž×Öî}ëw _¼»mŸ6ñ†oyœ÷ñ‹“–”ïÁz4I¢…BF'ùþG·¦—âR !„p¨*Ž_Wx×°{Oº~Ž;"ŸáºФ1ÈúžÄöñß²jïÍ¿ç0°aÜ_„Üv ú”2$>o¹ýÍzáÁ¸ÔB!Crþî¯bŠ€ˆ*¾ì”°·îážÍ’!„ÂOn4ËÔ|¯ã<õµ"wÜû Èt²z}ˆ:Ô,ð»_72D}Uå-O,&g·k&®ªÅ÷4øóݲÿ%~C!Ü$b>dâ ñ~1ÇÐÓʶžX}ëãh‹H_L@:Èÿ«Æ~îw=yÇ5ë†a¾*8¦Ô¡"ÒÎŽ 9ègBáXKŽ E0Q†žs¢d®Z§ÞÌ]£íróÞÑpÀ¡ÓÝoÿœ(_zˬ]7t¹-B†ŠÈ㜿ì>íñ‡B¸IÔ©h‘ÖȈ™P4;ò½\ö•Ó½›î4Ú”Z4µGæuºgÔ]8óà»ôäm½6ÕUÁeØ)În¯ÀBá¦q€* P7ªÈ0ùï’üÄ+oy/é¤ZÎDÿþqb8·{ýéd÷¦wNÏÝ^S;ì€L»Ou|¶Ëq!„pÓøðGfYugü¼²UÓÉ{á·Ñuw&mÿøé]Æþ…g.Ü­'/ôyŠ‚¡î,ÿU}·ò¿Eì!„p3 €!&Žº1„a“våö‡8qÒô}VúrT^Ô~ÙcüTϧÿÀ•¢4‰ŒÍIN&öÅÀ|HµˆyþB7Ï„ÚÛb¾U &á‚iJ§ïh~¦Eh»«“æÈ¤›Ê'š§œº´ré¾mo4“êØ%I|ÏdK!„póôdeµkÛ&¡¸cu^*W½k/=ÈÉÛ÷¦'|ål±ëŸ­Œ¨Gø!„p³ô)IÈm£ÝªA)mO>ô8Ó‹ÛC$‚¡ G­þ×ΜÄМ’7¿kzæ6S¥úøT=ªô†BØED‘ÔTRo4 §Î߯}Ô4ÿ°ÛÜQMÍQy]‡0ð÷@^·Ý59qRR¦¼ÚÐ>öñ‡B¸i Ü(V¥–Ьäéíwrò|󡼕a¬|^;o¦.Ÿáê¶²X}xò©ß¼,§iAÊ,õ‹l˜Ø¼YôI5&B!Ü«‹M¯È´™”ùºnŠòÕôV~ìÏ3}8'´ ©AD ©ýQy]‡.p rO3®œ<½rÛ½€dî*©I]ÎG¨R!„#¦Çf= æÚœ½óN]Ø:ÇÄs9J‰ý‡pĽ½vÛPQ!‰›Ùa\©!„p<ÛÚÙ¹ûxç‡iOØ2—Qß÷~¡ÉÑ)Ú{X#§(¤1sÒ Ð{æÞG'<1£¡#‹SÝqa†B¸9¦ùj:yê¡§¸ôfRgÜqƒ™å¦¾eƒ¾#ã–ìM06ØPÑÝѵ“~ìéæ¼uS±íúHê!„pslëʵöÌô!ªiŠ[#Q´AœddßIë‹’½¯ù .ê² MVOÄdÊO.n{ûµ¦óBN¨™‰!„Ž–ËÖµw¼…û+z¢‡VL1s¯’Çi}æüõ úáˆÞÃb8¡nà>ô㓊'ÎÕíÑ è\§EZuÔP˜ëê\Öñ¬‘B·*”"­Ñi½>dT´GMæóÉÌÖµit‹ïþ/o~Ú„ Y…©ûJ2[…HÐ44 ) ø¼N»'OuÆIýÆÈÐæŽÜž¼ëÞµ —6¶æ$²ÏuÌwT&×í§Tñá“Gê–,„ÂÎÐ=åß‘á#ÞeCìÚ¬r×éÛn»mee(¥Ô:òÇ/>Êa­þñgÉHu´“! †{ÞtáMoÛ) -Bì4K²ä½`cŸÅP¥$/â1Þ!„[— â$3q #*Nò*˜‰ ¢¹ØÕæ,îìÙ³ãÿ讪€ˆDà¿9ÏhHšðìä‚:Ã_¡£zC·6yäñîâýä“/³DQzÅ…„%ÆC¨W÷ì5:ú„­¬ 8êEÜ\’{ñ½ÞtH¢Ê mîy”waø¿Ü½iš!ð‡pªßÆíc)D~^^(&ÎFYå¾·žzóÏÛÚ0oS…^µÊ¸Ð2Ü9T¡JMnâóü!„p+«t 8CeØ*ÉÑa•˜œætÐ3KÝÉGÞÏmï6³Zë1âßàÞÂÔ1öï=ÕÃ^IRÓ.˜2=/o~÷åÕ;‡/sáÕú#-›&¹óü!„pks²/£ž >Œ¥ŠÃ6ŒtöîîMOz{‡ªî ôK)¥“†°‡rîB|¹²?t>7T2TZÒ:ozlõ-ï~~âd/ÉM—!3Ð4B~!†åaZØs†¬o¤"eÖ&úB¿zêâÛßÏ=ïxù“Ä9g`'Ëïè:„ø98bC5ääàŠ*J)>&_Ö–Sw­=úÍ4-´ÉiŒ¦"Ž£ŽŠ¡nÙËøEÒf‹Bo´ä½©!Ã$±û¿Æ ²@•k&ý™å­¦;`f¥Œà‡¨ƒqÿ! üCvŸ9½bÙ—9y)“È­ä¡Qo^%Ÿ8ñÔGWxêr‰ ‚TšÞÒ¸3¬åˆš(©–!„ÞPÙ`Eµ*ÊB¤÷žz[ØÚ¥•7=ŃOámªÚ4Í kü]×õóp¿CÅ •ÝÀ+@r’«ëjM'xÇ'º m÷yÈù÷Þ‘ÆÉâ˽C†€¨GÔ!„[Øðl¨ë"(Æ ôè„ÅÚ¥µ'?§É2=ò3ú?â<&Ξ½üËT|¡ uÈô_6EèaFæí_»ÿñM]Å A„”ÒußP¨:äqĈ?„naŽBcÿÏïjÊV{òÔ›žäÞwZ³¨“T¾W:tße¨Ã·‡€ìŽü÷2`í®ô¦wÛ™{·É4E¥Š÷ã—ïDz±ˆú!„pKs†B®;±oHÓ.ÍÓt~ò®•'?A>Õ'æsƒùq= ‡.ð%w† ~Æê{ÈPšÏÆØ-ãSoî o~lõMï¼Üœ*¦ˆc[™Âr|?Žõo¸!„pëH>ÌðUl!Ý3¶¾ú–rß»ž+h:Î…_߈üÙèÑ?Dý±ßNðV†}}¥Oçî^{Û{ýü½Wª”Å’ŽßÅUtXÓa™½BáVäà$G¡‰›8ê¶åyvâΕ§>K{ÆsS¦Ž]Ýž‡qÿ˜ï ´BÇëw†à ތÚo*äuÞüŽ ¿«Ÿ®U–Ãz¡(Er]–h!„p«3Ô†ßÙÇ*~Xž<ðîq×£½®UPzÇÐæ¸žƒC:Õϰw].í¥÷ §Â²ì~Åë ¶ ÖÏæûÞÒ­Ô¡âϲœ_uÑë†B¸)€ƒ˜!Cå>œÜ­ä§>BZ[{j§,ʼJþýÒQ[2ª@?“‘éÍÐ åü´!¯]šÑ¤æZ{?ýRû®ŸÝ(+ôC±eæ™ ‹i¿häÒõÚ]kS\øá0ÛèXdWJSJc82o»Å´úd³eÖÒk2Z²lÌ×!¤:oËUê6¢º±½ÖÚŒµ2”àtE³è±Íš‡T1:.ëÊ"^õy;+t|'Ÿë>ý[õäûçÍ™®p²ÌsYtiõئöÒ’½ÿƒÔ*NòdõMNo{ , ïÆE}/âõX§k„ã WrE+ÉPßÍyAQ±ÆéŒfhV]¼…9Ýá:—"Ó:ƒ¹€èX}ÙKvæðBØO ô´bZ·†iàÅŒµ‹÷Ox8­®á"nv|šñ½ÂÑi*P†7?9yä½/µ'hÚldÃS50«b5ÇûL8ܲ¡¦Ô¬UdžÉHÖ¨uŽTºª6ß! "èžÙ5q¤Š,„º»è¦qö]#óÂDKçsœEâÚôâ™w|”ÛD4ŽýÞ´ÖÿPÿ «ÐÑ\ämO÷½cV…ŠVœ¦OmIjB2oo%¦p|~!}¬R•†$1§b6ö­”„´Hã­?dÇ6uÛÀ¶:l›gëÓ0ƒ1ì³EÊ1jpŽ„¹¬™¢^¼gcrjåáñħÈ'¼G¼  êÔcœ~äñªµQjUòÞüÓ}âEŸšCE\MiR6ƈ?òëyh%-7qtø«s3¡×†”ÉyøâpÕ°‚ææfàV° †ØÎ~ZLÔŽÁÀ#)Û–›¦ªÀ^ëÙ^½{úÎOqáQ|!«!CmÍ9gŽmä?ò¿x=P ˜(×VnÓ·~0Ýñ–E“QÜ«RD„áý4Zô†Ãm‘:L»Z}ÏNԱߴniš'Gz‡YZ=\G³ºhN•æÌ<¯o‰. j&M‘®—n!²SYK05þ°Ï¬ä¤ÃŒÚ¼[mîy¼‡ölíZPà ¯ˆˆ"rl§ˆ|à7ƒœ*‰šØn{Û¥÷þÔìÄÞux¯e–jCŠ_,+†C͇âzc•IDÄ„"^YP7è_\çò wxŽ~H?…²¨’«4;ƒþäžãF<ì¯Î¶±Bïtw>|á]ãìý³a à¨ÛX$bÄh5 PKo`V!áÉŸ¸rò¾íÉI„\\г“'Â!–†Œ}¿ñ='©ªju϶Ý-^àÚ·×®}}ååß?TÇúË_[yé+ÝK¿?yñV_úêÊË_ãÅßçå¯Ð?¿R7“ïY75‰¥·°Ï¦V¨N–—›ÓíÝñÈS¤iUjuÜHYS㨻ÔMz«Æq2íÄé[XjôNîºç§~ýi¦Ûé†ñFÆ¡‰È÷õ\ЪX†ÌuE¦ÕJõŠVNÉlñûïÅ¿ø?ýö¿ý¯\ûwþä!;~~ó/ýüìßù¥­¿ô‹WþÒ¯¼ð—~í¥ÿýŸÞü?üù—þŸùÔâ…Õ¡Ñ6àj6”åa%®ÔÎoûäÉϰra¾¨ã†”4lEö‚¤”»ãzŽ~rc =yJÇ|2¬ƒæÜóØé·¾§®Lè¡Buš¶Ö˜ê‡ZªÞ@Â×qè¢)! níö³g^úú¥g~ý[ÿpßþ‡«ßú'“oý“•oýã“ßú»§¿õÛ«ßù;Íwÿáéþ…¶.öLc¨ /0„}÷R>sæãîw¤$©4æ¨ï‰‰~|“OCà÷e“eØÆ °%°~ç™÷}&]¼³@—ÐŒ[ìæ ‡\Õ!™7ð1êòâRÿ¬ÊìåîÚ÷Ý ef¢ŒO¶ó’‡™ Ùi±Å79¾ýÎÃ!•Ù¶ÔÜùöæ]gz¾ÐÖØ–ÐÃÐ^Y® 㕨ãø‡ØPl ïÓx °ÆýO®?ò¡Í•3´k4Mß—3‹áp+©/©wí‘‚Øò·Z‹¨JÍ㤙Y·r¨ŽöÔf{bÞ¬”fRš•’WJZ±4í¥ëµ-Òi—©¨Üö°±vÛO|œKo&¯JÛàE³ëÁË:™6|tŒç‡~àWJ÷“!ï• f@¾À;?Û=øžçj6ÈMÔ ‡]Uóq3±íMñAwzè•ECàÌûÃuX1+Õ©Ž™y5·âVs±aÛÂ8«ûøÃþúޝŸxˇxÛ{Éë³ñ׫ •½7¡n`Ç»¡ë‘ÿÅsAÆÀŸúZبëÜùÄÉwzszz«,dÒø"®üpØ!…1î)ShÐD#$ÇM«§êj¤ïÕ±ÎÆºo­°Õ1o™72oX4,²/²—D R†‚Hþ°¯®œ{¤{ê3œ¹×µf‹"ÞW–«û‚á~œûË÷™£­.—•ìthFæ™y‚™´žoã‘ÜùöǽI”^#©?nÙÈCÛéš©-ž ʲž•¦ÐUÚâ¹' »æÓa•:îÕÝ–´‡G1õaJcïž…öÃïùIîŒæä2“’UÄÑeGø=3mQ²÷Ð~~ôLS3 ÌÝQå¥ ë—š'žêVºþZì ‡]2¤BÍX¨‰š°ÊâZ-›h…â¥éÕÑ7MßvóveÞ®-ÚµÒ¬Ô¦!‹ âC†ŸA‘(àö×é'?F{m¶Õ¡I©Ö’s74ZÞˆ.ÚŽ¯£?Õ?lè“^è3TšÊ)81•rÖµ½·þ‰üéõ»«çPz×ÅÍYs²m´ íšÖ¤¦jhE õñ*8Î}Ãa½ -a]±éÜ&Û–Ù¬-dÇËXÆ&Õ’Y6µù¡:ÚÒ·e>)[“ºÑØF²-ñÞp_VÎôeu"L#ð‡×åÙéÉí¬êã[7že¹'O•¬[¨2gí¦ïÔ_øË\zŠö¤;Ѧ)d4¥u˜fr;,K&u¤Œ’ïŒÔ‘l ‰3¡†7PÁÆÏI£÷¼åâ›ÞùôL»Dê¼à)¯4(Ì7ÐaAUw¶! 5Ò#0„­i]¤e.> ”=G…E!CeCº oz;o~4ÎØàÈþ„ uÈÃDl¹jànÀ4宇WŸüÌÆÙ·P¬Éi–È-ýç)ª½¶E²/c HBáÐZ-ÛÙ̆-]>¼ñ=#Ô‡ò.-—â<ÿOqöŽ8cƒãøñŒŒåËqÀD\ÅžÉgyøÃgžü¼\i&½3›Ïp\(ªE’IrtwF2„¡Ô’Q¥1šeGKŠfCÄa‚‹\™^<÷Ä'xË{a5ÎØà¬ñ›‚ò¯Å J¢½Šë'î=ûÔOÊ¥6|:_X—P«^!» ÌÛùnøCápÔÆ7pL´’DÆj®/öÍúÃÔ'‚æÂvmât ŽAV¿Bƒ }ö3¼ª•a¹g¡™t’ÛßÊ“?µ8yïÖb‘¥´7zÅ…DÉÞ«» ;ŒCáLŠÒå¢Ú˜ÝÈô3úÓ÷yßÏpî­óÅd:='lpäÃÛ°¹aÄ?4ë­¨%LÁaA&¯ðî/¬=ü~]?Kß’(Pµu49YöPU]4Úø†¡Õ'ª’d®„^µ Éë®]ÖN\|×§xøÇH«eHÀ1üCï½a‹0,óðDA°…/+…8ÊùG»·~8]ºoc Ȥ”ET\‡>èê Û‹]ˆÀB‡Ö\;_¾í»Pų7æ&õ¶GõÉŸ »peÁJÑuéMhû°…où’$Ó4’¦q%@¨ÍïüÈ©·~hvò-ÌÑRrß§={öEXT¡Oq…„Â!ÕÚ¶Å ! ªMsÉFÍlŸzpíC?Ç=yfÚá#¹Ñ‘üC—2û _v2%A Ù‘aèžl– =¥ïý|÷Ö¿Øœcµ¥¬ª™Ñ9- Nv+±ÒB‡ÕZn|¶ÀAè q¨†ð«kïü4œöLt¨ë€cøóX‡w¨h:lè‡qÎ>UR%ïþ¸3æÞqámëïþ™ÍóoÛêó˜èVi{í|O>¤ø…¡ÕXñ9^q£kÁØ(4÷>–ŸüIνy&(&>C™GRÿÒ1üe\èÆ?0ô5x´±žDÉk<òcçÿÜKéÍØÍE«¤*cAÿ˜ !„Cm{¦@Î C4mol­]<ýŸåÎǯ¢ HÒS¶‹zl;ŽÁˆ¶Ž;øDQyåþ{ÝùÓ&Í ÝÉéSŸ;óèÇ6&U_$ïÇÿMP§‰K%„-j¸ˆ*"²5«W§O¿ó3¼óÓÞÞ(à oвÇXnÇñ˜ÊV¤A$£ËÜ>,ai§lón›EI0M¸Ã©ÛV>ô…ó>Ë ;Ýú¦ºõš‹(NŽîa!„phµ¢ÔÒd\üåÚú=O6ý¦wôΉD74aÉ« ¹ó5:_+© Ãî¼2nó¡z¿P†ð㈿ÔLo­Ãlo¸ï±ÓO|º?Ñ4”zJ‘n.S#k+$„©’›¢÷¡’ÏÊž{êǹó O«kÒgæF®Lqmë,ÎØàTîGë²’OÝ­Üçø°ÃÿúÎʉ”•~[Z¨NtïýÌ™{ßÚ«.?•Æè*ö‡B8”¶ª¸ @*§|+o?ym.$3ê6Ö;M›—h·ºã4éÉ:XèÆm{Ãä äqº_AÉôPh¦5Mç+«‹v•Õ;Wñ7~pÛ/­žb"k¶±®ssúf¢e›VÉ%QSL(š·sž§\EÕÆVÐUÙα „^#u´¢ñ¼éVîæI‹  ¢â+ÅN”:Õ*jœX\klŽË÷íÌ•·ý:ŸüW9ñæ-¡ƒ¤à'ðÕIŽvsšã ïœç[K% µxU—rK³þ¦ûÉ~ýÒKs'%¼x¿²š8¡ ¦Nr²‘õ’Üv“Ä5n(Cáuñef(–Ü–‡Ä<3¼*® )‘ ƒ³áÓÎ=úÖNÏ‹Ž¡úênV ã]œÝÁ-ø{´G}ÌþCÁSÃä<zå‘l¬Ý¾UA²%æîé…’Ü’ ™¡ˆ‘ì–Ü–©ƒÃA!„×nL¾WGϾȆŽñ’¤fGoó^·ÎÜ{æÉOóÎ19eUÓPÆÇ÷Vr²ºWâìŽ'÷V{ÁC@¥:E˜%JV=Ewçúû~æÄÛ?ü²N ÈP]¬@AL†‚€¾lÿg$¿~£¿£FŽM!„ðšc'uQÁ’—lèðÆ;öa©BW¼Pš6šskoý°>õãLo/º:NǨï e¨Ù*àdd5Nðx~oµõÞŸlïzô²Á ”Ö@qÙmò³“î'c…¿å?nûþCáuð囪PÔm܉=¼³1œžºðê¥rõÕ‡žZyüÓœ}h“Õíá[XCe~…’è•b°ˆüK·\àï ƒ Ãbýp-)Щ§S<ð¾óO}n~úî—g ÈòÖ Šš(¢×°eK¨]÷CáµÚy;ÊÞVSÆw`DznÜöÈ佟ãw/dµ€;µÌH† šÅÁMp¸à üRËP»ßÈÆ$93ŠCs‘w~úÌ£ŸêO_D2މVÉN®’MòN ñ‚ôëRQB!¼f.×W_Û¦ˆ¥•qÎ_¡]‘µó'Þ÷“<òAš3ÅÈÐ ¢F‚¤UqÓ¡‹A”eÙqëm?³Š-x+@ÆLŒ®b׎“tïü¬Þùø†¯#0¦îP•¢j¢¦ê(®êzÝ9ŒðB¯ÝðvzÝÜ©iã’P©­\Ø:y÷ꓟcýv´ë„ t˜ª,j] …á¦ax‹VùØWœå[î%Ëóc _Ã{̬ܺ@>Å›ßîÃ?Û_xøeNd”ÞõFkéÕÒê¼7#ãÏâŠ+ĸ?„Þ ²û‰z© Õ·+ +ù{Û\]¿oýÿ&ç"Ÿ@HN2pÕ4Ù‡–©–"ö/Ýz?5¨î¤z ÃªÑ ·Ü2hOóæ÷ž~ìS—Ï=4›[ž$¼Ú¬Nº†ZÝ$«#.j‚«‹ºà?„^»aÿ” ¶|GuPgÚeß^H-W¼Y}ðÉKþ"·¿{FSÆ(ÖC83´ãwUdXó£[.ð—aᇒéeÌ MŠ Ò+gAfývžúìôŸ*M®.€ûœ¬¨º0¦› ÀÐÒ—…ûBáµÖU‡Ìª"¹×ìdq(sœ9ÝÅs}œÇ?Kwïò+hAÍE MCI+Ð#¥ moÅîWwˈÅp[ˆCITÁ*ê"¨šW°fÈòË+œ½ÿÒfíͽ$+3ƒ•å=e}·åZAq1uâž2„^«e}”*Z$UI&ˆVu/¦ëoý@zôcLîØNšÇÚ6”úÿVÁ*”¡e‹ ¡.fú—nÙ; ±”RÁz´ªfÇ3tŠy&àŽGøÐì®w=ëk¥_z;ÊPƯ 6䥦⒠!„×èÅOÇ:èXm^ÎçÖùȉþ1n{¤æ¼åÆ~pr%ËáØnZŸ ‰M×vÏê­ö‚Û.>ÞàY QfîN+¤ÉQ¡¯¹HÇ;?wþ½?½8ûÐ3³†ê E Ù[«õXä!„×EÝ”"ÔäU‡í÷Ò}÷š..ñ點út>{_ïc‰¹qá‘Åd:¶ù3jJ;qþºDþݼ֥=5&BáX’½³šŽ‘ÆÇú¨ËO® ½NÚöÅ:íîßêÇ…{ž¬²:72´”äU4%ÍÉYlöÔxÿ|âÄý.FYÞ¬Éñ¦ÝÔSÍS?qûÇaëìÅ!Ó(­‡:ÔrJAQYÌ^û%úE„n Ë:<¸¨‹‚z%‹j55²J#¸{Û¶ß»*“ŸZýȸçqÚ‹L§4C1žÔ€Š Ž8m×ĉ}Í"ðÿc•¡„^†Š’½ãù ïúä™üôå³^“*«Û&M’FȪY$Q*ŽO&»“]×Åþÿ!„co9ÿ)ޏ¨‘¼ª-Ôaßt’¦¦{ñå yäC«øiÞúAÚ“›«dŠP'ÔvÆP‘ý:Dàÿ†*UŒddCh‰°0X¹ÈG~þÌûîÊú}Û lÎê¢x13UÍ”²¬¼“Á:ÔŒ&‘!„cíº4&P÷ä5Sqà ! }_·kšž¿ãÒÇþO|’öÌB³dVRÔJš£eø2´EðõÚÅ™û£œ âÔŠUQ’ÞÄ‘ZgÞ±r~ðçϽû'ËÊ,\S­ª’ê ûûe,è+±?„plù²bß@œ¡fîãâé*œXy~ž6¦×?úÓéñO³rÇB»âÖQ„9^ /äÊN”:d]ErôkÿGXnCÅ¡  †ù%Ãæmv4_³UN¾iú‘?~ú‰ÏÏPªoYÓ 2Wíâü›Ï=ñYÞó3‹|nÃ:“¦Ä{+ ¤&,‹ñ†7á˜4}­"ðÿ ž@PÆiЊ¬Ï”*çæ_lžúü¬/×67ç}ÑÜTÜÌQÝ©_1®uE7¿Â-`(Ô7î^T#/öù?yá‰o>þ+¬¿Í in aV\Ó*tŽfè Á«C£]üUJ¥†?šü?úÒvÜ'×!»'×o1ßJîíÍ›ÜÿÄéÏýÚé{ïÓÔÌs’;î^úë¿eÄû­àóš.cGtsZ?uûíïúèÊ{œ³oÝîÎg˜Éj9¯¸´•\ž¼O¾¼Wp´’XÄ ~m"ðÿHŽ%§IŽŽsþ8Þ®¬Îïqî4÷¼üô=÷Šæ!ä›_÷BáV4 ýwë–Bn7{9yÛ½ký,—Ü » É3J9PœEOÛd̨=^äº)þxK}"ðÿH šIJa˜qÊ4ÂLÍMƒŒwµÝKOþïüÿTßüã‹ç¶VÌ¦Êæ–m¯žºÒLkJTX(u‚LI¹6»7ÃcÝJÝ=l¹" †Öñ!„ƒ¢5ÔA®{§2Q<m•¶J[4ÍEu² ÉÌ%_öµÒžIº‰Î¶ùÎæúü¿ØüÜ¿Å}Ÿ_äÛÚÄyUšŽ¦Ch„i3,ïwäè*h - ¬ÅOä5þã¼±Ö ½í®óü‰µwýص™²ÍÚDÒÆå¦Ô…'Ï ÀŒÙv¿]jï¤eþH !ˆ:Œ­GÇÚ|ê&˜úØfWÝÔ‹º1a±‰Ô²ÖºÍ.S*+xþª\xô·½÷“œ¿iRB±yœàýÿ ÖÒÓä]ŸÒûåíûßw-·¸¯ÀÔÊÂ|C°dÃäA£´C¶ê¸½u÷wiï×ýÊ…Â’qÞòoèû—ûô’[ò¢˜‚BéQe’Sî7s1˜®Æä¶ ÓŸ Y±Øž·O"ð¿Ñ¿i¥¹†–ÉyÞýÉõ|qûŽÇ¶û ¥vØzc)±åôCcêÅ6{ö÷³Ó²bç»ídÄ ½"ð‡N•dd[Æ~+ðï¼G©³;!àÂJ7õÙŒCþsµéïxÛŸþeú@\¸&Ð0Ì  Ã¾é°"ð¿Áú‡TÒ>ðÇÎ|æO]»ã׊°ôLw¶=£JÚSÅúGÆþhãB8h.×­KºP…J®ÒVÉNvÑ*TÁ€²)¼ðô¶´>uÛÇ‘·¸Ï§¯!ÕáÛ%$úîì“üo° ¥­>·–æïþ‰óÿ¥zß»-lÂUI"©¤Æ¦ ×íIÙ‰ý{Ãÿð?!„p€†Ò{{£¾I6I&∉ڸ .°Ui m/7'Óý8÷c¿ÌÛŒ|f›<ìšÐkÙÀ¨z,òï—üo°¤Ì(5k—¤½VríÎÈ?¿öÔç¯ÝþŽ«=­Õ•2ïëâ²_wþ÷®÷󊡌øCKp]V1gìa¦Fª¢ ˆëÜç6 øi òôVš]zÇ…ÿ ïø,Ím¥ë`…ÒÚU|C[Gm^m;¶åï—üo°ÌÕ¶R‡kvÖªÍéüÑ_<ó±_›Ýýî+[PHŠÖÒtd·wŸ’’äÜ¿bWK„üÂ!`ܸçH67¶Û.7RmVDP¥ö4)q"?g¹¹ÿÝ·}öŸá±§½}!]“µÅsÄpERJþ}ÿ ×uHÅ7¤"޳Êônyâ'/|âOȃOÌt…n{“¦‘&‘ÒX¨VÜ»‰¾êz!2–ÜÏ]c닚§8ÝD ¾µÙå·¼÷܇¿Èá½8 ÿT <£Ò8–¢éÎ~‰Àÿ†ëœÄ06äâW€MϬßÎSŸ]ÿм{³ÍTZs[ôµ¯V* M¼¯Ã$À«îï!„ƒ£\?9¶Ùí·Ç\¥`ô®—gôoþð™ü1žü,ÓÛçÂÂi„0ŒN « ºžœ¨™í8¿û÷S o k=9-'†?ÅHÕ{œé9yÿç×?ö+‹{žÚV¥` IT§ eýUÚûÜßBûÌÛ5†ê= «Cß`•Âóe}åÞwÞ÷©_ç±ÏÒ^œK3«´Bçà6t7)äÅ0G: 3¼?"ð¿ÁÆvQ^ð~è@åÂ$U/ÛsÚ2½Gžø‰õ÷~Ñïy|VÉm£m“»”Rq—¬©¶ùÿÐ=~!„püºãqR·üÔ„Úž|©½”xßäÓ¿–ßþ1Vn«ºÚ;]"ƒTèCè©7´Ù±ˆGû$Nô¬e˜èW ,Æ^ÔµÍhgLé.æ÷ÿÔÊýòó}ìÚFm£ïkMmrÇÌQÆýã/ÕÙãBûlˆû;ïC;UFÆO5º±è¾×¯¯¿õã>õÏðÈgŠžX0]m¢ìÀœœ†ÙÐhOûø÷Iþ7ØÄHNE4 PúÄ6²]Í ¨÷Õ\èNñÔO·Ÿý3ëwžCX,”R ܩõºŠØ±ÆB8ôº¨áãäÿö´µ¼ºÕœ9ñÀ“ç>üEþݽÃLþP«L­Pç¨î”ÏNç´ãûÛ°±?ìÓO1¼¡Ê&N³!…mØ€yÕ¼åë9i?ÛywiúØOðÑ®ßu^ÜÙiñ;ü^ñŠýý!„pàÆYWGÛISÑk ÎÝûæÓÿ)xŒæÄ• ž$ ëIŠ`}¼à…jã8G"í“8Ño´ve'`pÎé–|BèöºÚ‘Oý‹üÉÿèêc¿üÍõ†Ü¬À¢”Äfbž@R^¤àPT‡…5UkÅ:¼E–µ²êpäJ·­«×òzü@B?ŒVÔ)ÒmëúVZ]h‹Œ«Šê( TÑ*¹Ššh+Ûµö¾²Õœ)ùD*4½5Z$ñ5?{õ©_Õ_þ·yÇ/Í×îœ%²°Ó±N¿Jž" Òh·‚d$£Í$çbÿ¾ýÜã,ã$w?réc?}ñ|ºï¶¯A+¹°ª©K™$´0r÷¹Ž-ûp0Û»ê6þæ”ì}ëó.ú[‡þ)\³ùðv‘}!¾Û ÔÇiK’[6Ëfóš›ÉÊZ+íâJ;¿*[sž–3÷¼ïsw}ìó\¸ÇQ¯$g%Nïaÿ€mË”t÷?Ù}ê—ÖŸúÜ +¯ÍšŽy¥¯·‚ùÐËÝMª5×â2F}cÜ;0þ& âÖX™Ø"Îpá‡qZPõESM-y(8æÑ^r‘ÏÉP3q0J^[, Û›M­Ãdä&òüÊ'Ÿú™ÉG‰;#Ÿ2¡K46ÛŒ3|8Eà?`®¸Îô~`ígþô™÷ÿô•é¥N©P§:óÊ¢ ËÿË•~1¤ e(¢i`‚ëòn}ùkB?Œ»†%vkŽ9Ù½q’¸¤¡|ˆ+® MVëçê0årÏüÜCç>ðÇÖ>ýëÜþXmNm;>lÊ÷²[<2øXc4Â"u3½À…w¬~âWÎà WÖî*Ý)TQšD«TcÛò–´×ýÏ×ejŠR†Êñƒ !üHRÙ)”»6–¼f«É{quiLºvû¥•¦àl¨”»9óÁ/®~ö×8÷Ð"­ÎA«W$²ô©ˆl ´°@®Õ\|[÷©_:ûc_|áÔÝ[ºÂ IÈ"EºEZþ¯a·IÖPG­¢EèE0Ö>!„eáR\Õ’šª©ãu¥(eèÀ ˜hºòÍA©…oϺ—oß¹Oþs|øY»§èêÜÆ}ùV¬˜z3-ûòíÏ=,/2[Lœ0×…¬qæ>úÅ“ú|½ï]Wšn¨nÕ׬²3'7ôJûà*®â:Tø±á•\n˜!!„½WвÐ#}üìýIžüYVï11è´$zñbbÚ¤úxVøü'µÍTro'À+¬Þ9ý̯¬¼ç'7oÇÖÊ9Ò 0­³µzÏF²ú«à¨“AÕ5¹©[r’36ÃŽ!á‡[6±![ÈÄ\¨JIæÕ„a´/+¼WêÝï¾û3¿¶ò¾/Ôÿ{ïlÉ‘ÝwþÏÉ̪ëžwín˜†wÛp ïÞ | 003˜!1rÈá)q8"cE.c©]JÚX£­>¬B±»ZRú²ö%…6ÈåÌ`4Ðî™{«*óœýU÷Ý0Ô‡hºûå/2:^?sß}U•y2ùŸöÆEɉ-£ÌPYˆ±M:|§.Éðÿ’)Ê  T™‚ÁËèèç*PVìZêC¨`ŒÉL&+˜R±Ñ7 °+bRrM"‘øù‚°*N½à‰‘uKrž2ã,HÌ!ÎñWƒéé+\ÿðØ}­š‰À1 ¼EH{p Ð"XMmvOQ’áÿ%ãcG*f0T9`€ŠÆ‚Ù€­_êÝõÒÂMîÌÇÊ%gÑÊÈ„ ¾´†r— Ræå’€T8M¼D"ñó0V`l€Q@YÕe&ã4°x&Ò ƒ¥Šv<ô._ó$6^ ;ˆ¬ÂB,*@Ž/€º)yImvOQ’áÿ%“ Œƒ1Q–"ù<κšn~büŠ{–g·.— ga DQÀ”°(ËRÀj‡"ÿ”<ý‰DâïB4‡Úa9_ÔÌ'e…)VHÊR?òÝbã½}/æ×>‰×ÂÍ‚2 >§`Q ó¨@/Ò©ãÔ%þ_2Vú• Œ–ÊðÈ:}`‰Ç±áwûsÓ7=sdÓ5¥·¡ ðM½~%ð}Ã*Œ@¬X•ñXO&]áD"ñó`åÕ:~‚Â’’UÉ}é`€cè†Í—M\óeÜó Œ­‡íre"âZA”&À"8x­>18%Ÿª÷=]‚_2Ò‡”qŠU€¯û^ª*d@4‰Ù=¸þñ ÷¼¶8½ëc·°H9À€®ã¢@(–ß°çt‰ÄÏ…UXI‘)[E¦0¬j¥ŠírEpØöÚ»¯ßtû ¸ê:;=ÁÀ`g ßGY­Ç! œ¦r¾Sö¾§KðËÆB­ @Ñ;f#0¤ Ä6;Êã˜ÜÎWÜ5sïë­‹î>ÒÛq¸j#Jù2P­!ŪXŸ( (¤ë›H$~ É“óle”€ˆàhɇ'·M}é‘Þ]qÑmè®[a°xÛ˜ ¯±Ö8ú ¨éØË)ìÐþ'NA’áÿ¥ßqPNŠ|$Þ¯†á¡¤A‘ r÷R +L—?:qÓ³3—Ý¥sg÷¹5ü‹L¾ÖÜb‘Á’V"‘ø¹<È !+ ¡Œ>ÿe“û ç]ó(Ýö2vÞˆlº€Z€ýªE ‰}ÁÀP8… °á„/%N9’áÿ%ãã^Y@¡>çHx0œ…cøâa-B—Í8¶^Ö½éÀÌùW¢=ÀȲ8Í$ZýˆÑtw‰Ä‘:¸É&Pwzöò[òÂüy}3¹BÎfèÃŒ2³1ă˜¨@\Ç+›¼>Ÿ.î©I2 ¿d,@T'‚A@n-°0YkAÈY –lî7\…‡~ß?òGÿïÖ{Þ/§ILVÁU Å¢q‡]÷¨ë”d­@`…XÂûm 80Ë>ã`Y˜œÊþ‰Ó.r.2.-—àª.«gaRë+·ØvY,‹ae.0h-ôKj­m]θ\&üõØöÿ{ǽ7ÿ;Üü6f.€É3ø=Ú0Óàq£&: Ø€€²FƒÜÔË[â”|NÒ%8½ÈZçc{/ÛuïS³—îÿ Œ+2x `ÌøI8¿v¹QY$€Æ=ƒÄMgI޹Dâ´ÇÔýö`xsWêå.SH Tà—7plûv­¢(Žö±ØÝ´ùòý?rÑ™9CTÅ“xÒt‚?CH†ÿ4յΆEwç^—íaÿ_¾u¹=ʃÐ d¥_Q#ãOŠ8sÄžÙ3<‹°ÄŽ>š‡DâtFŒˆ±â-¼­•w•€ÁrYiQx1ZB*hi¬À"€>ÐNãÅó×=eox›.Æø50â)ĤÒü3…´ÒŸn@‚Ê2lp Ø~•¹÷õMwÿJ±á’C¥€ ¨@Ú™SÐpÛ_¿B4ÿQ›iM”%Ђí1ùB)Ä%@)êlÔÓ— FcÜ¿ÞÅK³»O$§)±•k3͵iÝ r&ƒõâ-Ë-ǹ¡cÀ‘ÎÌØ·LÝñ®¼c;={ë‚B[} ¸:pŸ8ýI ý醬!XH°BP;‡ ÷·|³wÍãOî8:¨,<„½°y%Uðnnþ…Z¨SÍÓN$N_¬À*šÌ6ÂF,‹E¥q°0(ƒ_IUéÒÖ«çö=Óºë%ì¼v¡d'sôB&…S‰"àð‘d/ÎÒ<Í( !¦Ò ¸*³ ]…K:†M—å½½á¾7ŽÍ]𳢃‰õLˆÇüxÊðY‡>)¸9¤+œHœÆHËS+pGJ,â !Êí`ŽTÙb{ÛvÉÌÍ/cßsX ÜÜ’'!ô¡%à©Y$@”<ýg i¡?ínX)(ÎÉ´(€*dÐ,[¤qÍ7ãÊû¶<úæäåwþÇãm„š´>=¡q†0„òŒÊh•®p"qz£Pp ç)Sb@¡¢¨A½ê'Ôýxl›¹ðNøjëê‡0yÜ´gÎr2AlËÖbûõ©p&EøÏ’á?Ͱ(TaBœ‘\wäË¢t/p mͰûúö=/o»ÿ•ã4Ö§±‚ÚAÀ«E>òd†sÇ–ƒ«'— "q:£ˆ=TTU¤¬õ- ÃOJ^œ9kóÏŒ?ðvÝl×[„Ô]õT@”ô“ÄÚ@ÔCÒúp† ÿi7±ë~—u·Œzîµ´úh#›ÅÆóí—˜¾ïÍÖ®}Û G´W!Ó¾ PIYÊÊ ,÷«¢’ZDˆR^"q:“ÙJQUÞ±v\ÈØSLókc¹ÂGùÜìåwžõÀË­kÖ™óŽÙ™Ä©o!F=@P8O¶lÄöIëJ"$%¾3…døO74‡º:ðnî¡’‘Zðß‹ óvRg·áÚgÝÍ/v.¾cyú¬cvL:8›Ñ2èXäŒÌ’[Eº¾‰ÄiÌ PçòvÛÙ²ÀrêáPX÷Sß[ÞxÙüÏöîzÜ†ÎÆp3õ¤¤€P8ŒÈîÖ@©ÛÞ™B2ü§šCíPä·ž“\·ö3§pL¡Z†õùY8÷–釾²uÿ“ºù‚x¼€* À¸®¾QÙN$§-­| BT±×}é|dæóóåeÜö*6~ nc¿´,¯}|â¡a4 ˆ0‰ÿg°' Þ3„døOO•AaPÅ9ZËï(˜Ð‚is>qX±mŒoǵÎÝûÂØÅû?ênùÙ ó­ Æ€˜€@ †K;úDâ´&hY€€N˜ß˜ãSgÏ]}`öá7qåCèl/Mo9 •Q›$÷M÷NbÐPŸG `Öjü{}¦ì¾3…døOO(nÌ¥L}? b ’C:@P,UùvßÜ;ðö†[_¤7~l7,JG+kÀqSŸ:‰Óí/’SïòOJ÷ãÖFsÁí ·¿ÐºûE,œ‡lrÀð gA4€*%Ô©|”ƒ2”à ¼§Æå/u`â !þÓnfÇD¤pýý$µÞ.¡ª*ñª•`àylP)Ú9õ)/ݦ/27<³îÁ7³WW½ Ç+–R£—/¨÷©=_"q:CãðâÜY³7>¶ðÄ×pÝC˜Þ¾ìy%” d€ƒE?H€Éc8?”,È5‡|mF½ä`4¶˜8ýI†ÿtCûÐH€T º6CÆÂ:( ÇQ-³GÃd%߈m—N?öòôµ·Mlܹ©'7øô<$§3‚B0µuÛ¶»îÝþ06œÛçÉeô¨=n-9,'ô³ÜÛÀ`tèçY„a°?þ3†´ÐŸn¸6¬Ùa`…k°ÎåõLµ€ÚSÈs²UÕ üÄ”­]wîÿ-¼üç?¾æíÿ0~ábkÚ8Ðñþ± ž™É¢„öÁÂL6€„`f xƒÂ³ Ä °"~©`øêÚµ‰5 ˆj}’,®Õõ †g.9+©ÝwÎ3ǹö`±¼bó;^Ф÷].-{pWøWcO|rëZOÿ9.{cç3͜ǃ~GҡЃæ2ð 뀲ш~½pÄa‡>©EÏõ¦Kp†£ ™Ô` T`P›vm¾óá]·=V.œ÷¡ŸYκSÓlKñ+ž;ÎLvƒðréÙ¶ (! €ÖVÜ(Fa%ÚtZJB bÄÖiÙH¬y¢ö=)B( žà›ÉORX•LË\ú9‹a‚„UEो*/Ž·e1ëØà:ûöÑö:ì¼ôöÇŸÜtý ˜_›Abúkœ|zB”ž“ÖÿµJºñkåÑÚœXµãÉÁL`ê,\÷ðÌ£_ŸØ÷âß®»6nÁö€åª<²L¬­VË{ð –[ëv ¬ ÂzÎ<Ù8*¶[O™GUàú‡’íO¬md8 ´É×B`™ÂB™£{,€Z ª&Ck"´&BÖ%“å Zgª¢ˆºáìk&o }çîÅÔå=—:4[èŽÍEà>h€Œ*©Zc€àø2Žæó3WܾðÐWpëóؾ® “œPVÁÔ¯°ú𠀇ºk“dø×ÀJ££«ŽˆbkL»¥Ü†ÇØ–îEûø™ßïÞøÊñu—ÀSA-2 …‚+ÊÜ.M[šV½UoPrí· €²*#£Â*FÒs–HX5ÀzbØœÕ[)](­zR(AÊ –R¹°ât©An y{±ê|àæäìæî>èî>ˆ³¯Ö|þwÕô*Û+L^68 d<²ÐÈ¿‰µJZ×õr#P‚AÕee©(” ‚C&ÇÆ[Ìooyô½ìÂ{>ìlY¢ øX;X:íx—”—”•Æ—3bÔ3J«¥oÕ;‘¸ü€R!pbÍc¤õt‚ {mè ª¶¢lÀyPC„Üì¡%*?5“GföŽ]÷Üäã߯Ïcî|O½Ø²€Èl«#©ø£Ùù‡´þ¯UÒ_3FZú@}aYœQ’BË‚‡QÀ ¶Ì¦±çÖ™'¿µáÀ7»îø »e¹ÛÒ˜s$> ý–,3¤ä|…{ñ%•ël>¡úwð°°6ÙLÊuB"±fg¡Öçü8Y>?¦\׿²/MÜ1Hã‚þä6ÝqÕ–ouoÛ¯×ÖÆ>÷Ä´„Ã1møLÝzê ßhð ± îÁ“Xƒ$ÃÆã©•þˆAu†?Ù J(9W'ú(u-ð6Gk;®|böéïMÝòêÏÆÏÿ$›–º È¤°ZUO¨žà âÖÏYÎàÔü/‘ˆû`£i°Å Ê@±° ŸiÙ’2,C -›üÐØ|yöµS·<7óÔ»8ï&Œo-ŒëGÀжÉbžU ÅÂ|†Émô¹ÀƒuÕ³X£$ÿ–‰ûý¸Ç÷à«p “ƒ3ÄaA¦$(×ÃÄ®üº'v¾õC»÷î£3ç¦ÌÇ¢`F«(ÆŠcJFÁ^M LM›«Ébq¿$1‰’(¥Õ&±¶©õrAS]Ö¯`Ë !Dê‰ë`%à§¾wxî¢é[_™}îwpÓ³˜<Ù”c¼)·'8EÛÆ-…ÂD¿ ÈÇÝ µqRâ[Û$ÿî0µ,×jb¯¬Vã³ê&%•¬6îPãM£sÖä“ß¾ÿתKŸxæ‚C¯`€ åR ÑvÖj£EU.÷I4kuÖ3{ŽÿBÊã!‘X«+^¥ ·×¡~°ŒÕ¬åLÛÁ5EwŒŸYØtáæ[žÚ|ßîÚ'±ñÊ"Û¸dÇ=Y‚7èí­ €#Ù<ð ª. $­CͰ€Q˜ä[«$ÆáDù-˜:È8ü¶ÆõÇÄPOZö‰+ØZëÐÞŽKZxô;î}'ì¾í£ö|_îdÇõø².õ[zÊri$‚çZœD¨®"N$Ö,Ì  ² ®ó ŽŽ–(l®SÛí÷®»ïµ÷¼YsË_›uº\j)d@QÜ3ÀˆfF¬xnr ¤‘í“TD”XÛ¸ÜÀ8ÀÁVêÔæ°zW>ðá'ú µ™Î½}ìÎ×Çïÿ5\ý$fÏW;³à«Þ8 µ@€Qdõ‹H‡ÞµÆÏÇš.{uO²ük”dø×Êm& &CTVÇê 2¨b€0ΣíÉy‚X)Ô¦½¸þ©ñû¾>~×»+;޵Ö£ñÀX[ob¯€¦Ž¿ÎðGÒêO¬uDB¨EQzQc[Öæ0èrE8ìqllCû¼›6ÝòåñÛ_ÁuÏ…™­>›,M»rƒ BÁzo€.à°%jQúOÚ¡É'µú@ãHyýk”døÏph5Ê/ÍNŸAqÐ0ÅGxH½†x J 8At3ÀXpÙzìÜ7sǫݧ¿5yã——7]þc;w¨j­TPßdŒ€•£ª¿iºû$k–„H|›µ¥e(‹~¿<\ÙŠÖÝåÙ7ÌÜøÌìƒoæ·½ˆm_‚ÛT*…Ö5Þ bKwÒ:z€‡€ªF•/jgÄ)h;²-h…8'k’døÏpÌ õô Q8WÂõp& =´néc†Cá«R¥Î dÁ®ç?€Û_Ýpïkë®4l>ÿˆ[ÐZö1#–SŠ)&Ö?3جnîëÌý¦fPOñT’ñiB®U’á?ÓµúT·ÿ¨T@ ”€JØhû‡z;¶iûkTUÄeØúúÛ âc¤àhÖ«Æ·bï¾Ö­»ëñ—^›MÌ®,ûø«ëö£õ‚Åô¼%Ö4^ MB £39=µýÜíO~e|ÿ—±íjßÚ|XzGÂa„ã¾!€l 3LàƒˆAåPx Ì'òƒŽM´NXbO2ük˜´¯;<È€ÐÆ€1  t€6ƒ«ƒôTË~€ˆÈpüA ä  Ìla–»ÂXv“‹—¿þ¥<÷/ŽÝðÿ0vÙ3 ؃<Ä«Š:˜ñ/M¯¤v…ÌÃÓ°²°ÎdKÎ Îë­Š‚…Y29IµQîTbCœ”r'?]<³gŽî/©u.cƒiÏÖ³ ” 2hÍH2xP¨ ,°ó‰` 4@·V¼ ¨Lû§­ÿ~Û{ÇoÊÁÿ¿òßbÏ0¾Ç› ãÖ÷àsøù4Ü8L°ÑýFÜTîÁ™á—ÐòiÕcGúöë¯`as´[è¦;¾FŸót 'ƒ“AŽª´¢ä˜Açœ ×ßùø®gßí^öàß´v~$ã’u‘31¡#K]ni¿…"ÓÒ„‚ú€Ñ~¾K«Þi¢Ø€’W.À%‘7u,…'®ØL–îHâäh"R„¾¬æQ•Rê’:òhåâL%ð¤TQ –+,y¬ˆõì`C0F>²‹óçm¸êÎs|fËþ‡xË9ð¸aâý§[÷%¿h’áOœe-Hú.ô©XA¨`Û˜: »oÉÿζ—ÿ¾¹ò©¿nïúˆf6¯*€> P ˜ †P yÊ îÔ-©-äXØŠØ Ð¶"‡Z%–` Í¦©Zb… d+bŸçÄI2’ «%^µúHbù+5*ÕA °CpȹœŒétÚ™µF…™a²ªÄãÈùwç7=;}àMºãyì¾c[঑Åô³êž;1&ŸHüBI+eâä°h,Cìì¡2ÎgãènƹûgžúÖYÏýFçŠO]p¨·½¿ èP+ €Ž#£ž‡’f:²ôÁ“†¸ÈrS¢åΙ W8R6êJ‹2ÝÄÉ ÌÂ,Ìžm ¨î1A*¤Âê ĨPs7LPõaŽúüHÕZ.úýL}î„¥üx ?±ëwÝÌ7¿¼ý±oŒßù2öîÇôÙÈÚíƒ=M.­Ê^¤3â‹"þÄIámK¹´À8°K²4¨ ‚·90…³oè=úî¦/ÿ–\ùlØzáщ‡erѳˆMIDœí°Ü +™”q È@T€J@Hê°+ ™Ày6XH¥SÉZUº!‰“¢0®dW²b¡:%ž FÅ@Û  ¶Ël… j·Øvƒ–©7µå2ÛSîÜëfö¿8}àWqà[fË¥:±Ã›™‚z0šöXHo…Uu]Ö´>'¾Òƒ•8)|¬ #êTŒzQ_ʉ‘„ªm·àÆá6cçÍ›ùVï¡oLÞðLµó¦OÆÏ9”Íô9‹Ë]ÌRf)]è[-H50yrb¡1CI­`YÀ PU ’0RÑœHœŒHB*„Zj˜Å®=Ã3`è™jÌ,çºHUáŠn÷øºmåE·÷n}}âáoôî9ˆ]_*[ëúÁVpQLSA†)x±ÎÆÇÎ<1Ÿ5¤õ9ñE=ç‰ÄI Œ‚Ê,¶ 7ÛUØ|ÆÔr,±hÐQáì¢2öÜŽ[_Z8ðöæ;ò¹·|2¾ëp>í;YÞl^•P ŒC©CÍQ€¡-Y '¥ÕÃúÉð'NŽL¼k†QÏ#ÑäוrJ¨›PÄ¡N¤Ù’®Ëð6_YØ]žÿ@ç®÷zOÿö [oP3«`‡A›]¦Ì^ØKNh1H½/— äݨ½“çÄE2ü‰“¢c$vú¢ü/WjaZOƒJ 0E;²iäsØ|‘¹áѹÇÞÙôÀrÞí“ïø0_XrÝÊòð‘$õŒ’ƒ%±2a+ƪeXiª”êF$¶âvÅcéŽ$NŠæpOŠFjzæçúóš}¨•’pÎÍ{Îï¢+žø›c~Õ^û”Îî^áñãU­Šæ ,³3lš<~—eÃ׬®ªí&_Éð'NS?BÎ cX… €µäƒÁ€c±TY­”`…r¸YÌìÆe÷Ï>öÞηþ/ìðækþ&ÛúcŒ-ÙLÅgÓö½XcàÌ ä(Â’5¾e5k´† DŽM¦°UZ,'I­UïÙƒ™A¬j¯ûÙ¦«Íþ7^ùcóÄ÷qÑÌí†ÉIÑÆ-¬4‡öâišäÙ(iûdiH©}‰/Ždø'E]ñµÐ‰GðäÅØf=;ò„ÊP "eLO³9ŒïÄÌEs¿»å©ïœõÀ[ÝKï;:¹ë}éQòQB¨ôÚï‡Pdݬ=1†<_ L[ÙAPU¨ «ýܤ¬þÄÉÑrêŒWj@ÆÃL€‡H…Pg”àÅà>Yw޻侹ßÞôÔ¯Ýù켡hÍl;°ÒGè#T1%(”¡„À„Ðë¥9ë6z†ò;‰ÄA2ü‰“ÂÇ|»ÕOh© 5¶?€\@” ÀìAؼè͆l›/ã/=2}Ï«›¼±ißSÕ–+þ#æÕY´3tœBÊã+å‘ã®ì;æª"Q0Ã0@ÉéŽ$NêyVò‚€ˆØX ¥B€èeEÖý@{‡òMÕæ«Æ.}`þñ¿çîý®z›/D>ŽZI (Yp¦ vu]E „:g¥±îÚ4ÔJ b“L“gÊÔ9Ÿ³d=x^¯€ýØq»íÇÓWüä¼Ç>¹åkG~íß-¿ñ¯ñПaïË2y²M žu ­·ó‹+‚IDATx¦'°q ¶pYȇ ¦;ÛƒéÂä`‹‘N;®Ý\?rD0M@´š‘׊ ØÔ‰Ä/˜dø§úZ‡;PJì’|¬‰rŸ1{öÎßrçžÇŸ¹âà¸éàÊw¿?½ûg<µ(±¸y%y¹Ü|ÒYù¸Uͤ4p c—‚[Q×WW. ”…"hcªêN)h®Uƃf5,l…¬§Ì#ó°`+ÈCÑ‘å^8Ö Ç† ¿2”!½¥8<âˆ}M˜@üY>aÄÊð¿_0¹Gûz¸`l`#lFö(Ñ<;-­–VKƒ’É3yœxlîÌ0>4üK‡×±PCŒÖºø¤>êØTh qï(YY¸,-ÄÄË­\¯oÇ—´ S€ T¥éWnE¨(û¼UNŽ™žúÙüöϾ´sÍ=[ï?¸å‘×çîzill¬ÝnÇw¤ª"¢ªª)„”8ÓÖÕDâtxFG ŸŒÂP X˜Ü$&6`Ënœ} |¯óø6<þ½é[_ñ»n<ÒÛ´ÌV†yäa€R¤ïÛ­ Ãm ²¶e³ £ò#)Ö a¬«Ê"F#ñ”{´=Ú‚®"gq, Åê¬{º×çãXÃ=<ìzƒÀµ¢‹6Y]Ín@â'•X‰¥VÈz>a|á?€H>oDˆ6m”âq4ÒÅnôc…zó"'ä² ûÑj½åZMqú…Ô"ðÈ#?àxXvêC¿_TUpÎuÇÆjŸˆˆº%͵[ßïœýÁæ«qóÓë_ýõÙ7¾Ÿ=ö.»3Ãlïv»Ì'¬ŠDD”íg⢚Hœ²b’…Ö¡ÏŒA@úàmÏãb§Íøö<ÎÃÞÛó{_™zþ{SO|·»ïåþyw¾?¾ûP{ãa;±ÌY;]k­oÉRGúY(µò^ÔK%sɶ"+T»ý9Ƥ1Ä °ZY 2)­”V„5j³5‰W[ddë2ÿ6<ó3÷‡¯úòò–k÷v ¸-°|\¢´@]c±À 2ÎHmrV[OHbZ"†{”V FŸÑ'í%H@d•2E«æª©ee+l®Ž~ÃÄþÂuÖ,)ç&Ъ÷;†×K£µa%ª_|ù¢Ym‹æñ„¿¹`Hý_Q–‚ò‚²Š² vØN~øÓÃ#|`æÀ¼º!VX­'FÚß<¡2õÐG¡e…UjUÜò¦]°- {GjP P   üM8ëØüUk[÷Ä׿^þõΗ¿ÛŸÁ·clìV`ÁbÒ €èD$„Bú‰3•dø§4Ãüg­Ë=8€<‚"À)¬¢±Ì ”À6 ®Uqw€É¯ÃÄYØs+_÷ÄäCoÏ?ûÝé'¿Ùºõå¥ónùÙž¥õ3ÇÚcǪlqYÊBɃ+¡~áÊÒV¥õ%K ˆõÆU¦íÑÚöȬzé—µ2\·c.@ ³Ptž7¹F`êMÆ ê쟟±º:¾èë?š—WÛø¯>3X-«3bŒ2k½¿a­ÿÒØÒ~´Ÿ½Uo¥FÅ(Œ0Ô*2Aæ)¯(p{ÀíÓ^1]ò0 GÈ .xSôÑïû~Ÿ­)³Þ±|úýöúoyÓy+—ìÇ-Ïï~æ·7>öíöÝoàÚÇÂΗ§öµë›Éå²ÉQ9®LVUVJ‹A˜™ˆˆ÷>î‰3†dø§4ÃÌÿÕöäÑfO R˜xFW䊶Bè—¨*XFËÂ0TbpØx1.ºw}µ÷â®ÿÚ?¿ïëîºçŽí¸ùÃÉ µ7/·§µ0 !׿U‰¶ÊyŽv0®¢¬`;`;0\®˜=³pÝŽˆPY©¬T,ÔÇþ«­¨?&†7ê­V£†vվޢŸ3øÂh ˜”Ix4ºS>5Z¡hû" … ¥ Brâ;|Y€U0Îg‹°«XĉXQ«jU¬ˆ1êÁ#¥ 0\‹íXï÷e Ç.Ê®||ÛÓ¿³ýí?ï½ø§¸ÿwqÁmØ~5&w•´~ ½lT–p-£ ”ÞƒMNÜæ¨ÑÐÓûÒÑ?q†‘ â”ÆŽt-Ũí`€|ý9@ª¤h;´,H€PB*"ö6ó¦çÝŒooö“»‹ù‹pÍ“¾¶å•ßÛùò6Þ÷Vµ÷þÖ_õÑôžOÚ K­‰2o‹±JÌð™íÐ'YæÐgí[)œT¬ÂÊ€Qu9ÏÖ“õÌž£ »‡zh“Ù>ô ˜zãýŽæ¾)‡³l€ Ä –Ïšüg3ü áÕ¡–Ô’ÔúéAÒü½Ã÷Vg$4!QÄxGÄ“mZ96zv*x Þ†Òù²å‹v(º¡èùbÀ®ÏÙ ·Ž™îáÖôÑ©+[¾ι}îÞ··¿ðý¿òûs¾Ã>àç.Yim>ff4ïªm+r'˜L+&€Ê t¶- K0T™\òOÿùDƘéOœa¤:qjƒü"PÄNè:¬v‹~õúÔ`Tõ,\ÝëLÃ`X%öuø¡É3D030³hoÆöë°ï٩羿îõ?œý»÷S®}á“ûÞŸ8ç“ln`ÆèhÌ[,|ÊxÌí„"—Òj øÀ¬Ç«.‹ØØÚµúY{ÉdK&[1®o¨äº™2ØXÖÉ19°Õùª± ž 2M[ø_ØI4&²ÑÃ/Ôçq*J›Á8å\(jyÊ=å24zB(Á%eÞv‘MVÔ Üå$D¨…èù+1àîï5 ݈ؽÔM;¾ãÐüÞþž[Z7>7ýл“Ïý~çàµ^ø!®gß…Þ¹°ëAm«è(&dHA¨@%LS'SHé@,©­»æžï“ÕOœ‘¤g:qj£mº˜èh#SX×g€B-€¢.ô&D“{ŸÇÇÝ9|†"òÅÈA]àN0½ÒMùºþÌùƒu—µny~üᯯþ{›^þþìßlÝôŒœsë±ùË>˜ÚòAwÝGnúˆvûb549T¬"#´™ª‘úàë £"-A%kE¤Î‘3jX «6¾}”…V…ŠBÅ!­åÔ ¬‡©”K1¥˜"üÂæ¯ˆ|ªf=šÿR}E¡¢àdŒœ97_Ry©a!¶d3³,(€à2äq­¼Xø£KË•¨ªM»0€#±Òñ"*Á¸*ï‘Î!™x_g~l6ülò¬ÅWâÒ{pÝÓ»^øÞ–çcæÉoç÷½ëžÅ9ûÃä…}·iMl»4¶vßGµl›Ä‚ÆÝ"`TÐ*Cp ÂñíJ“æ[bM âÔÆ„æÄ cD°Éû‹ùðñ g`ØÁ˜º50y‚ˆm†‰Ýýbº¾º`le7¶ä:þNnu”»Èg0}¶]‹KÁÝ_çgoâÿjÝ‹?š}è7pí‹Gwßñþü%?Ûq¸5]Xp­Â5W° dF“#c1ZTµ¥è„•¬X¶EßUEîC<Ô CÉ3<«'©(T$K x£b Ž)³Î9—çù/ê2‹@µXµýõõ¶P!¯ðŠR´` o¨4ZpX1~™«%*»]“çÆ ïgaÐåjªÅSã¹ +FPÌp\ï*@†7X6ü‰í}˜Íþ¸µéÃù½KçÜÖ½é•ÍOý¯üÉØÁ?ÁS?ÄýßÇ®[±õzÌ]€Î–`g=·|”2°H3.lÜw››ï6Ô5i#1A­„ bPkH'kdø§6F`¦(õ?ÔŒ¦ÊÅb0[€ p uP«ýO5@£dŒSrJy ¼ÚZL…|…@Šv0Ó>_(;›‹é=ÅÂ^ì¾Ë^óôüÃïní‡g½ý7½ô»Ó÷½cn|áèîÛŽm»üðüÎOÆÖqsÇhæ¨L cË’ ÄUbTÁþ<òFœÕ(NÐü‘‘?Œš„F*¥ˆ÷ê«àËPõµHÙÿE]æèÞ:¹ãÑ_DÔCªz „ª…R¡#ãÆý2R€€Å€•€2WöBe@ÑG)kÁd¨H?ÒìC;”Í}ÒÞðáØìǓϞ½¸éRœ¿7<úµ/~w÷»¼ýµL<ð6®|D¶íÌ]¸Ü9ëx¾i`'ûÔëûÖJ©UYÀ—9¤É!¹ÂÖªÉ(…AÑHE{B¹Ú72î" ÐxZ¤ ´I?±6H†?qJ{Ÿ ;—üÏqL˜¶ µëÝ)åJ¹’S²Qá~ø‚>Ž Þ¨H¨àaØŠaÏ( `ô¨«Ò†™ÅÌyس7¿l|gòõ?xãϦþÙ'~wêÞw[×½ŒKž,÷ú÷¦_ü/¦^û/»/ý÷}W<†]7¡½íõpSžÛsìø,Q֞вÔÉ\+Ë­Í0tQG#÷}ø¨ ðh$…âÕX% Ó ²ÐZ6?‘X $ß8¥‘:ýÝòP¦ÏLjÅ\5ùR-ŒúF¢wô¨‡ªùÄ^­¬T%"°«Ø”Œ’PBÓó¯ô cð  Èå%÷fz)_¿ä¶ zç‡m7ãÒGpÓÁüþw&ywþ©oo~åûŸÿî£ïLï?ؾü‘•³o=´pÙO§w¿?¾íÃÞæCÝõ‡Ú åó‡ìÜG<ûÍ.»ñe7¾ìz+¶·â:…ë–Y»ÌZ%\ãÙc`–)gÊaó—>CÜ `ØFĉ·¥w…Ï îõi|…§–ÌÌ"Ï7sGyÿ¸·îPwáÃÖÜO[sï÷Ö0sÖ'/>¶í†Þ-/ÌÜñÊü}o­øucöñoŒ?òÕöý_é\óŠ^ò8¶Þ¢S—„ììÒm«ÜÆ`ç‚› h ”Å»PµB5ÊI©P®À÷!%š½S î“)Á6„@è“.‘7rð1?ƒ6 ¥@Ÿ ‚¯+&¸ÞÇ$k€dø§4®nS6T†(EáPÅÔCã‘£´Ÿ;Ñ `Ϩ¨î\@3ˆ®ø±S1$Z§–[x‹Š}ƒ0ƒ ¬»aIy Ïà  6ƒë"CwFz³Øµç߇«ŸÆþ7ÝcßzéGëÞú³ïüã /üÁ—0÷à{½›^æKZÙyÓá —8{ÁbgÝbgÝb{a±=·˜Í·“ÇíÄw—¹½bÚÊd°%¸Ròò Ëê&÷Õ6ß2†lL©7leÝÀvúÙX?Ÿ:Þš9Òž?ÜÝxxbÛá™ÇÖ|ÃEË[.[ÚrÅàª/ÓM¿2yà[_üÞú³uïü“™wþÉôÛÿ5îz·½k_ÀÞû±mf.B{;²-p± BsBx(†Õc=¢ä¬0y ¥/DE›2‹‘€ äb7<0¨|ð)¯ €”,bM â”æ„àwíØÀ+‚ÔG¾áˆtWgÿi]5nE¬VV ‹¾Á2¡ ”€($€Á]˜.¨a  ƒÂa¥eúõ *2]“ ·ÁMÓU…ämE' $So´‚®€ ¸ÀmsØN±3ÇìÜñ|ÝñÎÖʼn]+3” —áüûpɸö‰ög}{ëÁ÷v¿ù›¼ó;ëž|iÝÃÏ®»÷‰…›ï[¸ú¦¹‹®šÝµwzçùSÛvNlÚÞ[¿¥;»¾51åºcœµ‘µ~Q×Y$æ÷Õm`†µ0““˜™2óëܦm­³Îîî9bï%s]¹nßo»oÓÝnyè¹MO¾ºéÅw6¾úk_ÿæ¦ïÌÞý•|ß ¸ø€?k᪥±sçÛ»[óuËnºo'W¸WPW¨ n›Êï­÷Öû,H¦³,ƒ òʵgž,LV’ œ©5dÉw¨r 2YÉPYx °®D» nÁ]‹%)6†º|\ó¬Ä† µ’b"±H†?qj3*zi`‚µpò m‹¶Ah9(žëGªíä@9кÍhÚyýšL`SwLGtP¿f‹M‹8êÄqU¨}c0 ² ê] ô¦)`Æ1 3Œ%svùFtv¢·ã—aâJñ;þÊwà ¿îú¡>úðü?Ãkÿ ÞüßðÕ¯þ…¼ýÕ[ÿfùÍsì¿<ú•¿<òú_”ÿ§â¥ÞþXzæŸ.>ñŽ=ú§Çüѱ~´ràü^ÿ¾ îþÍÁßÜþÍâö÷Ê;¾yìž¿üÞ¿ÿŽ?øGÇüÉñ‡ÿôØ£ÿÍáÇþñÒ3ÿãâóÿâø‹ÿòøÁÿuéÕÿ½ÿÚÿ9xýÿ*ßøËÿö÷ïßü+yïÿÁ×ÿ-Þø?ðÊÿŒÿøCÜù;¸ñWqéË8çQl¼ Ó×aüJäspS .à,¨ ôš?|,^w ÃÈ ¸>œ[8 ka-LÝh˜F36Luç2pÎ9dŒ p@‹¹3Üð6¹ÏÓ5@vøâ££Y‡·>‘8óI†?‘8°™ãv×õºÓS“³ó3ë6Ì­_ßÚsE{÷Ýs¿4~î5\7µ÷š© o˜ºè†Þ¹Wuö\ÓÝó¥Îy×tλ¦sþuíó¯owÝÔîK'w_2¹û’És.žÜ½wòœ‹§víÝuÁäž‹§vïÜuþøY{z[wµ·ìlmÚ–mØÒívÛív–eC›˜íŸnH"qú’ "q:µ€0.G«v .:ëÑÛ€±˜Ø‚Ém˜Þ‰Ù]˜;öbÓ^l¹[¯Àö«°ýÊzl=[ÎÅæó°y76îÆ†³±~'ÖíÄÔL¬ÇØ:ŒÍ¡7…ÖZãÈÇòfBQuÏ“­؃+p¬‹ ‡µ÷#Õø'’nM"qf,/‰Dâ!v½_Õð‹–¶±º#v™ÄF½‘ª¡d)£Î¿…·¤j –À“ò‰ymÃBG d„ŒšDwÑáÀHÓšøB©?}"qZ“ "qJMHÁg„cŠ PÀH­f@RCD`VfDíZ¢Fù/Jðj0ß”ºµaS0)Mwch3ŒÈûàÄæu‰Dâô\g‰Ä)ǧÌ?6Ä&žòA¬±É=dVdAVÉ€­’S°‚Xˆ”XÉ Elj´H¨<|@€4íz€¨ê?ŽþãO$Nw’áO$Nu>ëQ¢³'ŽØšˆ,'þ`T+øœìÁø—Á:XcÁìâ‚™Ó?‘8ÃH†?‘8Í&é‰ùu«ÙTOðæ„Q ǧՇFbþÊŸ3‰Ä™¿¦$‰Scbòp†~j–ŽÚiÕÞK#Z}a5T?T5V¿jæã÷”¡Ö­]1Û?‘Hœ‘ëK"‘8¥¦$vzòÏ1ÿCÿˆ€ð0g¿N†çwn¢c ö8à& @?ç}$‰3l•I$§Ô”äŸgvù3£9 ³‡zØ8®¹RŽ8V]£~‰A®C2é~$gä*“H$Nij÷¼~ÎEOáÄO÷#.Ï´ªYýÿhø ‘Hœi$ßHœº|Ú,û™a>oŒXø‘ïÕF‚)»/‘8sI;‘8ÑêÄá©«§vÒÕÀ¨Kà3/5Ìø»Â ‰Dât'MìDââó]ð?ïË;qØfŒoúüø¼WûO¾ƒD"qÚ“ "‘H$kˆdø‰D"‘XC$ßH$‰Ä"þD"‘H$ÖÉð'‰D"±†H†?‘H$‰5D2ü‰D"‘H¬!’áO$‰Db ‘ "‘H$kˆdø‰D"‘XC$ßH$‰Ä"þD"‘H$ÖÉð'‰D"±†H†?‘H$‰5D2ü‰D"‘H¬!’áO$‰Db ‘ "‘H$kˆdø‰D"‘XC$ßH$‰Ä"þD"‘H$ÖÉð'‰D"±†H†?‘H$‰5D2ü‰D"‘H¬!þ)~ºŒ`8É%tEXtdate:create2012-12-31T14:51:31+00:00SÓ!&%tEXtdate:modify2012-12-31T14:51:15+00:00”äºôtEXtjpeg:colorspace2,uUŸ tEXtjpeg:sampling-factor2x2,1x1,1x1Iú¦´tEXtxmpMM:DerivedFrom—¨$IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/openmolar.ico0000644000175000017500000052423412707516560025347 0ustar neilneil00000000000000 vŽv€€ (ìŽ`` ¨”—@@ (B¼+00 ¨%äm  ¨Œ“ h4¤‰PNG  IHDR\r¨f€IDATxÚíwxåµÿ?3ÛµêÕ–eÙ–»±ƒ5´ÐBIH ÉÍ% R~ä’Ü4¹)„$äB$.IS ÆØcÓÜ{‘¬ÞË®¶ïÎüþÍhv´+í®VÅFßç™G«éóΜóž~` cÃÆ0†1Œa cÃÆ0†1Œa cÃi a¤o` Â` 0˜”…€U·O7Ð4Ç€À‡@p¤o~ C‡1ÎVåÀ$`<Ø{¶»p8|¼ ¸Fà^K€›kss çp/Öò<ÇÆ0¢(~„BÔr KØ|Ȇû <†2s§r¿ñ–ƒÀ'FæŒa¨0&ÄÇtà(½%ÞNX­Š$íñx…Bý³ø#ð 1Í÷;ø/à6¢E{&MšÄŠ+X°`sçÎeüøñh÷­Þ{ss3ÍÍÍìÝ»—;v°aÃÜn·ñ:›Ï•C3ìcNŒ1€¾È~ |ዢȒ%K¸æšk8ãŒ3˜8q"%%%˜ÍÑ’µÇãáĉ:tˆíÛ·³iÓ&ª««×?:y¿&éâ¿{îPÓ§?ýi>õ©O1wîÜ”Nxå•WøýïÏ®]»ô›:O/3¦œÒc½€‹€G2ueVVŸþô§¹í¶Û˜4iRÒ'•e™>ø€Gy„µkׇõ›ÛQ˜ÀP˜B²÷»ø=Š»ÝÎç>÷9¾þõ¯SXX˜–‘e™ÿûß|ÿûß§¥¥E]F‘þ¦î––‹aX1Æ”1€ÿ܇2£bµZùâ¿È׿þuòòòÒr¡“'OòðÃóÄOU…Juã@$S?nDuåW\ÁOúSJKK‡d ZZZ¸ýöÛyûí·ÕUà:àEzmc8…ðQg Á?|I]¹hÑ"~ûÛß2sæÌ!¹èñãǹï¾ûX·nqÓaàOÀ¿“1îõ,à3(3o¦º¡¼¼œŸÿüç\|ñÅC>`Á`/|á ¼üòËê*p.Š‘PêY7ÆN|T€úÜ"ð;€/~ñ‹üð‡?Äb±¤tâd°mÛ6~üãóÞ{ïÅÚ\œ@Q 2Qü÷¹úl6_ýêWùú׿ŽÃá¶Á ƒ|ìccçÎêªÝÀÒž{Õ{Æ0ÊñQd‚nùð+A¸÷Þ{ùÊW¾2ì7ôÊ+¯ðë_ÿš?ü0¡ý- ×_=ßúÖ·R²K¤|ðŸøÄ'èììTW}ø5ŠZ0ÆN|Ô€Jø"°%HÇ ðío›oûÛ#zsûöíãÅ_äí·ßfÿþýQ.¸’’Î<óLV¬XÁÇ?þqŠŠŠFô^[ZZøûßÿÎÿ÷««ºP¤”v&0¦œø(1=ñ[€m(L€+¯¼’Ç{ A]Ãðù|dfföq7Ž4¼^/‡æÎ;ïdß¾}êê¿@ñ¨L`ŒŒbˆƒ?Å)=ñ›PŒh ŠŠŠxðÁGñƒ¢ãçææŽ:âp8‚ÀÍ7߬_ýy‰Ê„2Öê¸a”â£Àô:¿ °ßR7~ÿûß'??¤ïñ”ƒ Øív-ZÄøñãÕÕe(y¢™ÀF)> z‰ß\/Ï”)S¸é¦›FúÞNYX­VA`ùòåúÕ§/c£§;0ŠþV”ì8n¿ývL&ÓHßã) ÕUzÁèW_Ž"eI§> @%~ ¬%¶ÿª«®éû;¥¡&͘1C¯FM& 0[3cRÀ¨ÆéÌŒ³¿…ø3£î:† 'A ¢¢B¿éL)ÀŒ2öcÄ?J1úÌËé…ªû[P>ÈóÔ —]vYÚ.âõzùðÃ9qâÕÕÕ´··ãñx‡Ãsæ™grÞyç YÐNkk+'Nœ ¶¶–îînº»»¼¼<òòò˜1c“&MBÓËïõéļÿþûê¿sQÒ†(.A‘1—à¨ÄéÊbÍþv”€3Ï|xPçÈÌÌÔÿ›ƒ"q©†@ÕpºN8§,NÇ¢¿å#t¢Ôâ[ <°xñâX©¸š››illäÈ‘#lÙ²…—_~9!BMN§“•+W²téRJJJ°Ùl˜L&jkk©­­åСCìܹsÐDß, Ÿþô§¹ôÒKYºt)v»=¡ãÜn7ÇŽ”Ü€O}êSê¦:”´åV) ð¡¨‰Ô;Ã0áteªÞï@qý嫦OŸÎ²eËhnn¦»»›®®.|>^¯—ææf‚Áä*a;N***(**¢¨¨Qimm¥©©‰ªª*\®á+ œ‘‘,Ëø|¾”Ž·Z­Ìž=›ùóç3uêTÊËË™4iååå} £è€×ëåꫯV7u T$nîùí¢W P³Ç0 p:U)@UŠÕGÕt×T‘Íg?ûY.»ì2–.]ŠÍf‹¹_8æÝwßåÕW_å±Ç£­­-m9cÆ .¹äÖ¬YìY³(((ÀétŠ~ÞÚÚÊذa¯½ö'NœðœÁ`Ý»w³{÷î>Ûrrr˜ûlR×öz½òOîĉ\ýõƒb’$ñÝï~—H$ycz(®ªGnzuuQßÉFN·T8cèoŠƒ˜úÔ©C{{;>ú(»w僚»›¢¢"²³cwýjnnæ…^à—¿ü%wÞygBQ{áÃ?dݺudgg3a„Ývmmm<ÿüóÜ~ûílÚ´)ÃÇ€}(ƒ½€ŸÞ°`}¹°1Œ0N7qL üq $ýä¢èÿã«èém·dɾöµ¯1~üx¬V+’$áv»ijjâøñãìß¿ŸwÞy')ß{VV%%%F¹»ºº†ôM&‹/fúôéQRR‚,Ë466ÒÚÚÊÁƒÙ¹sgÂRGAAË–-£¢¢‚²²2-ÀçóÑÒÒBMM ‡æÈ‘#ý¹K_Ci*Z‡Òq¸¥f ‡^F0æ 8Ý€z;€*þ[РL:•K/½tÀ8p€^xgŸ}6V{¯(¸Ýî(¿x2˜1c .¤¤¤P’{Þ|óÍ„¤…H$ÂöíÛxÑEñÕ¯~•sÎ9'¡ ­­­¼þúëìܹ“;w²{÷n=“QU½0æ…8Ý^ˆjôË@q;壄Gië}3(±ø>úhÂ'D"¼øâ‹üüç?O‰ÀcÁl6sÝu×qÇw0gΜ>Û%Iâµ×^ãW¿ú•¾þ~ÚqöÙgóãÿ8i¯B]]]”„tã7ÒÑ¡µ9|¥=zŠ'@èGñŒI£§›QFoÔ{Ì(@Òb¹Édâšk®aãÆÆ"˜I#33“Ûn»wÞy‡ßÿþ÷1‰kÿe—]Æë¯¿Î³Ï>˹瞛Ö*//ç‘Gaݺu)¹õž¦¦&=ñ«:¿þ=†e £§« `$~3Šk PŒx© ##ƒßüæ7\{íµ<øàƒlÛ¶-¡ãòòò¸ð Y¹r%W]uYYYI]wåÊ•¬\¹’­[·òÈ#ðúë¯Ô†<..\Èþçrå•W¦\mØj|ðàAýæzÇ_¤/#€±´àQƒÓg½$ 1Ýl•.¼ðB.¼ðB:ĦM›x÷Ýwill¤¥¥…ŒŒ œN'Ó¦McÆŒ,]º” ¤¥öàùçŸÏùçŸOkk+Ï>û,k×®eçÎý™L&fÏžÍå—_ÎW\WâHn·;ʨh`Ä&ü1 `âtz½€ª ‡R£n"p' 8NNž<™âeF¼^/äĉ´¶¶ …°Z­äççS^^ÎüùóÉÈÈHë5kjjhmmÕþ¿õÖ[õË7@-Š  %°ÞhÀ c®ÀQÓU0þ¯® VÇC ˆ›Às*A­ô³hÑ¢a»¦>»±¦¦FOü! @ïÇ0ÊpºB@ý1X5࣠¿ßåÿ7¸ÛQfvu1&a”átcÆMý_ý 5δÜŒƒ!´Þh?õ¯¾Gà#e8Ý€ =Ñë—1 `Ð[MM¾1¨„âïW‹€†‰ýÕKc%8Ý€qÆ—è…ÂèÀpVé9]à÷û£Ü†²jíôø=ƒô2ƒ±–ᣧ€h& ¾ºøÕÆ@òÐÇO„B!^ýuýæ”ñUÔ¿z0¦Œ2œn  ¿Ù?Jp»Ý#}¯§ôâÿo¼¡/”@Ñÿý(R€^ Jz[ÀF N77`³”0Æ’ƒÛíÖ¬ÿ’$ñÌ3ÏhÛìv»ÕjµÎ‘$Éäõzk$Iò¢0•èU€10Šp:1½ÏY/Œ1€4@/þoÚ´‰ÚÚZ@i2b³Ù«ÕZlµZ‹‹‹‹Ïvçëêêjˆ-Œ1Q‚Ó‰¨0õL@³`ÙG8ÖÄýP(Äßÿþwm›ÕjEEDQÄd2a2™ÌV«uqNNÎâÒÒÒÏK’ô÷îîîÇ>Ü͘0êp:ڌį_Æ$€ÐÞÞ®Åþÿë_ÿ¢¦¦Ðf=ñGý6™LSÇÆwpÅŠÿ»|ùò™#ý,cˆÆéÆ š ™&twwô}ž2hii”òfúÙ_Oüz)@ý-Š"‚ ‚M„›-ËÞÕ«W?»jÕªÁuGCÚp:2ñ‚”ò˜$šºººƒÈ²Ìoû[ü~EˆE³Ùlÿ„ol<*ʲ|ðöªU«¶®^½zåH?ßG§³ @ÿ[$QMª(«Öºû¨ÂívSSSƒË墻»[#b§ÓÉ„ (**Âl6kYÏ>û,;vìÐŽWgÿXâ Vâe²,o\½zõk’$Ý»iÓ¦‰ßýÒ…Ó‘¨ÐbÏM&“\TT´T’¤kÔ2V% Ùºu+;vì`ûöí:thÀ\³ÙÌ”)S(--%;;›—_~YÛf±Xôz~Lâï‡ð£ Ëò%‚ \²jÕªeY¾{Ó¦MƒoU<†„qº2ø+**ÎÎÈÈøV8®ÐwøµXÒÖ'dTB’$6nÜÈ?ÿùO^{íµ¤žáp8fE=aë‰Þ¨¨L \)Â¥«W¯þK$¹góæÍ­É<†Ôp:Q!¶9sæÌÊÊÊz@’¤UÁ`@ @[[›fÐZºt)Ó§OçäÉ“tttàñxÈÈÈ ¨¨ˆiÓ¦1þ|V¯^MaaáH?ORðù|<ñÄ<úè£q›fdWRNNñìÎ,6¥`ˆ ð¹énoÆÕZO{cR$vµ!Õ““Cff&6› «ÕŠÅbÑ$„(IE?$éÏ›7oN½‡ÚÄiǦM›f+--ý*p_8v†B!‚Á ]]]444>—(Š,Y²„Ûn»+®¸bTK ªþ ±±1j›Õî¤âÌåL9s9å3’Y0žDl ‘pˆ¶ºcÔÙIí¡÷©=ò!þî¾U³³³)--%##‹Å‚ÙlÖ@"j@?Ø#Âío¼ñÆ{#=¾§+N+°fÍšó%Iú£$Is#‘‘H„®®.Nž<9 ÛÏæÈ$à÷2ÊÊʸçž{¸îºëFý`ûöíÜyç}ÄõÒig²ä²[8kÙÅäe;pXMH²ŒÛÆíáFGd$I8BG–©?¶›Û^æÈ{ëñ{zƒ©Ìf33fÌ '''Ê; †„AøŸŒŒŒû^|ñEïHõé†Ó‚¬X±Â.Šâwʲ,ʲŒ$IœÿùÏsüøqm]Á„©¬üÔ·™·xãríÈ2tz‚tyCBCSƒ³»³…~óušª”ÊÀV«•³Î: »Ýžn ‚ð猌Œ;Ǥôà”e7Üpƒ©½½ýY–¿®õ·Jüz=xþÊë¹ì3w3cbY3n__0Œ7QfC$Y «EÄbɰ™ÈvX°šEjÛ¼¼µáe6>õKÜm½ç½êª«x衇Ò^uw <õÔS|ûÛßÖ‚rLf K>öyÎ¿æ ”ec³ˆ´¹´wÒõ‹PÀÇÓ?ù,-5Š RTTÄܹs5â&¹[–å›7mÚ´èŸîôÆ)ÉV¯^]"ËòSÀ*u*æ9r¤·J­ °ú–ïò±nÅnéðéô„ˆH‰S…Õ,’ŸeÅa1q²¡uÿŒý[×jÛçÎË?þñJKK‡ü¹%Iâ¾ûîãá‡ÖÖå•”sÅÞÏŒÙó(ȲÒâ àò†’ñ^7~ ¿ÇEÀëÒt{½Ž¯Âb³c2[±:œˆ¢[F¹%ñvµòÄ}‚HXI>묳ÈÎÎ )@…O„»ßxã‡K0J§X½zõrY–Ÿ4ŠS‰¿©©‰ô<™Àê[¾ÃWÜ‚7!¼ì°šøðÍ—Xÿ—*…‰'ò¯ý‹ŠŠŠ!{î`0ÈwÜÁsÏ=§­›qö.½ý‡”/ "É´¸Hq˜[$¤¥æ(Í'Ò^_IgK]-µtµÔjÏ‘*D“™ 3ânk ³Y±™Œ7ŽY³f ¥ ž÷«Õú™uëÖ¥w¦€S‰«W¯¾[–埠 `R‰ßëõòþûï‰(M€Ï¹òv–]{GŸ“È’Dgs5®¶FÜmøº{«Üˆ&3ΜB² ÆQ8a¶ŒØ-¼DQ îèžÿÍ×ñ¹•ã‹‹‹ù÷¿ÿͬY³Òþà^¯—O}êSlݺµg$λúK¬¼þ?ÉË´Ðæ G3¸H8DÝ‘Tí}›šCïÑRs4®OH^– pË-·àr¹´Ôë!´—ì“$éã›7oNOçÖN pÙe—Ù‚Áà#²,F¿^%~Y–Ùµk—–³^6s7|ûQD–$j@õÁ÷h8¶›†û¶ ‚HAie³Îfæ’‹˜0}!>àö†*þõÀ—q·+vââb^~ùe¦L™’¶g÷z½|ò“Ÿäí·ß@M¬¹õû,»äL¢@{wo~Y’8y`;û·®åÄ®->§ š°däbÉÈÁlËÀdÍÀdu`²ÚMV„í̤H9B ‘¥þÎF<-UHá`Ÿ}Ï:ë,.½ôRÜn7ÕÕÕ¸\®¡d.àÖ7>7è3}„0êÀÅ_\‡Ÿ¢RHõÄߨØÈ¡C‡ÅŸÿ™Ÿü“Φ¿ûÇ>؈וZ3P=² Ƴ`ÍMÌ_qV»S[ïjkàŸ÷Q}ËËËy饗Òbðù|ÜtÓMñ›ÌV®üÊ,Ï‹>…ɬ8\­õ<óÓÏkÄ7sæL^yårrrR~öP(ÄÍ7ߌêö6™­\ýµ™ÎJ<þ0I&ðñþº¿òáëOðFÇú ¢‰Œ‚rò*Î"küLí9‡²¡úí§pÕõ6 -++ã†nÀétj± TUUõÛÔtP÷!Ë¿/,,üú³Ï>ò‡>Å1jÀÊ•+Ïá ߸M%~Y–©ªªê·Ñ§ šÈ7œ‰ópOÁêÌKø"A®ÚýtTíÂÓWŸWRÎEŸ»—²™gÐ^_É3?¿M³ ¬X±‚§Ÿ~:¥ܲ,óõ¯§žz Pˆÿš¯ýŠùç¬Àå !ËpäÝõ¼ùô¯úÌø¶ì" gžOÞä…¦‘Èõ’©{ïyÚO¼¯EUsóÍ7“™™©1H$BUU•¾¯`Z!Âk~¿ÿ†·ß~{¬ôS?|Ïê!ÀÊ•+/áe Û¸MÕ 9xð`Ìâ޼RÆy eK®#¿âlyã1YI݇h²àÈ+%oÊYdO˜M$è%àR’‰üž.¼ý!¿—‰s–‘ÏÄ™‹8¸ý¤ž»µµ•‹/¾8éçÿå/ÉÿøG@±E|ì?~Ê™K×àò…ñ{\¼úèxç…?ô{´c2 Ë™tÁg7ï"ùF,\Y {Âlyãq×D–%<uuuÌ;“ɤeŸŸÛíÖ$¸4bšÙl^]QQñ\ee¥oð§;=1êÀêÕ«ožAiój´_eeeŸâž¢ÙJùÒ›Ö8òÆ#¦i´8²È)ŸGfÉT|u„ýÝ€_t . ·¤œ¼’rŽ|ð»ví¢°°… &|gŸ}–{î¹Gûÿ‚O|ƒs/¹‘n˜¶ºãüßÏoŽJÌ.bÊŠÏQmÚ´çNœ81¦0jÀÊ•+?Sæ/çÐöu¼úè´8„œ‰ó(_öIDqt—qM&޽ö{œE“£l®º»• ¡3fôIŠ•4d6›)..&àñx¿‰þQ,IÒŠI“&=]UU•6ÎrªbÄ@OÏzÀo}’Ͼ}ûhiiéc%¶çS0s)eK®#oÊ",Ž‘±„+ h>ÞÖj‚ž@¦r÷ÆO tµÔ‡Ù¼y33gΤ³³“††¾ô¥/iu §/ZÍò¾Æá¯ñꟿÜÃè²ËæP¾ô¦aej)ƒ â®?DóMX2rpä*ÆÏŽãïòvpÆg••³z°‘ ˆ¢Haa!f³Yßx°(–,^¼ø™|¤ƒ…FÄ‚tÑE•F"‘w€¸æzY– :t(ª1%€53Ÿ¼)‹È¼ ©Àžá€,KTnü3ž–“I;~ê<œ9…ßù¦6ógO˜Mù²Oᢻé•›•¦`úyŒ?ëc^{?!Ÿâ²ýìg?K^^V«5©ú­­­1%ÀAàñ7~n¤Çk$1ì_Õe—]– …ÞfÄÛG–eÚÛÛÙ½{w”è—QXÎÄó>Áø…—ã,ž’t`Ïp@ò*áª=Ø+8º;šio¨BMoÏ)ŸwÊÌüzX3óñw6pµàk¯Å×^‡¯£Ptûùóç÷ÛD$222ÈÏϧµµ5]L`AEE…¯²²ò푳‘ÂpYByyùSÀŠx;¨Vþƒjz±Éê`ÂÙ×PºèÊSÄú-P0u a¿Aɰ3[ÍVí#¨gÞä…”{Ã)Gü*²ÆÍ «f/‘ `wo’ÒÒR&NœØ§™H¢Dl6………´µµ¥+—`uEEÅžÊÊÊCƒ?Õ©‡aUV­Zu/p_¼í²,ÓÐÐà“Q8‰òeŸµÁ.é@$èëóÛêÌë“~|ªÁÛVÉ ŠJ¨Z´hÓ§OÇétâp8°ÛíZ)q}%áà÷ûÙ³g>_ZŒùY–—mÚ´i÷HÙpcئ—Õ«W_ü‘8LG–e𛛣ˆ?wò&˨õÓ ÑdÑ%ßqÊ?(‘€‘°okofæÌ™3±Ùl˜ÍfmI¥‰ˆÙl¦¨¨ˆŽŽŽtDZAX3uêÔ'Nœ81¸òH§†%c䢋.š.Ëò“±®§÷tvvFù÷s&žAÙ9ן²"ð”Ì¿kV¯ÛóСC„Ãa"‘’$!IRÊñÿV«•ùóç§«(ë4I’þ—ÑZ™f 9u-Z´ÈbµZ_¦·©/Þï÷³k×.MçÏ*9,–ïîÆ£4îyœ‰g ê<³ ÆZŽÇ€ ˆ8‹&ÓQùÈ2ÝÝÝ“••¥‰þªø¯f &“ÉDaa!­­­é° Ì©¨¨è¨¬¬üÈt*ò¨’ìììÿ×ë|öíÛ§‰qöœÊ—~rȉ?ôQ³ýYì9ã’:Îa³ñ“o|‡ÝšÐþ¾@YŸ_)ÑÝíõáöøpy|¸Ü^º½~\Ý>Z;Ý´¶»èöù‡ô¹UÈR_G=¶¬Â!W±y¥äO]BÛÑw8|ø0&LÐfÿÁ2N›ÍƼyóصk× ÕY–¹bÅŠ·7oÞüþÊ(Á2€U«V]|Ó¸^Ú{ìØ1­s­Éê`ÒòO#š#®Á iß„ýÝ˜Š’ûøí6KÂÄ ÃȰ+ óúTò4·¹hiwÑÒÞE}K -4µvޤ'fE {êø0YlÃbc)ž»’Žï#EB´´´ÐÝÝÓ©Ä€¥ƒ ddd0þü(I2EXDQ|ò¼óÎ;ëwÞ9íÃ…‡Œ¬X±"x’8j†ê믯WüÃÏ» kf~Â×HÁîvÚ)Rž š”XûOþ`¿¿ô’$ㆈD"‚±EÏ ‡ ›Å‚Ålêa6²œvr²œäg;ÉÎÊ Ó×ï°Ù˜TZĤÒèĦˆ$ÑÜÖE}s;uÍlßu˜Wò᱑Os%²¤ÜsØïÁ6 ³=“œ‰gÐQµY–9~ü8ÅÅÅiU›233™3gûöíìyg9ŽŸwýÈŒ,†Œ‚ð1"ýÔ‡9|ø°¶¾pÆR²ÆO–‡nܳ^Ë®3Y= 3Ÿ?ÈÖÒç2¶XLäfeR”—Ea~6EyÙååP”ŸEQ~N}L¢Èø¢<Æå±h.œ¨iLšH‘Þ–“ñ„dYJ[qÐþ7u1UJÆcee%K–,é³,˃ªœŸŸOEEETË´ñµÕ«W¯}ã76 ùÀŒ †„¬^½úRY–o6®×‹þÇ×ZuÛ² )™Ÿ|é¬TöwãªU:J ‚ˆ=wwkJ’G^v&ç/šÅœ©).ÈÆa³ÑÞ妦±÷öcç¡J亅BZÚ»hiïRÚ_ê Ÿ“EIa.ã óW˜KIa.¥E¹‚É麲ÆÓ\‰1æ¿ÈxšŽcχyˆ+ 9‹&cË.&àjÆï÷SWWÇÌ™3Ó¢èQVV†×륡¡a0§eY~ìâ‹/>cýúõiËDmH;¸òÊ+3<ÏïëõÄßÝÝ­õso@4Y’»PŠè¬ÚÙ›[_8“ÕŽ úÖ…EAಠÎâÒób6GÏœ¹Yäf±`ÖdjÛøës›¨kŽ]–<Ûéà‚Ås˜?c&“ȉÚfÞþðUu͘D‘L§p8Âc58V“ò3˲¤éüFtU參f&‹é—cÈ®ò+Ѱk'Oždƌވðt2iÓ¦áñxú”ŒK“#‘ȽÀ·‡tPFi7µ—••Ý\k›Êé9¢Õ†Ï«8‹‚éçËÃʲDíŽjÑvùSc¶)†(A1'I( Ÿ»v+–ÌEûUs23X¾e fR6¾O\¶”Ë/8‹5Kç³dÞ4\ -¤G½–l@°»ö£Û•±‘ÂØsKpä mC“Í©yü~?gžy¦ ¤ ,A //¦¦¦Áæ œ3yòäµUUUMƒ9ÉhEZ¿+Vœ |Õ¸^_˯³³“¶6%6\4Y(9cͰ=¬«v¿–“nÏ)‰ª òu%tŽK—/äì3¢CÂa‰ªºfvª¢¹-ú<»•/ܰ†,g¯±Ïj1ó…Öhž=Q`Á¬É83z÷/.Èá ׯá‚Ås’~æ·+ªY‡ Y’h;º=jÖÕGìÈCÐJÌ–U¨©[^¯—æææ(w`:Õ»ÝÎìÙ³{³ ¿ç4 J'Aø R…±–_mm­öÁôs‡¥†Ÿrm‰æ}Õ[%§|^Ôv)B õš“•Á¥Ë£+üî:TÅ=¿þ;¿øßçùÓ3ë¹÷¡gxø©W£üù9™\v~ïqógL"7»· B}s;;Vø ×_t^#R$„¯#vÝ}WÍ>BÞhfÕÝØÛZÏÛVCGå‡é|²ÆÏÔ~WWWGE¦;˜*??Ÿ²²²ÁžfÙêÕ«??$ƒ1ÂHX¹rå ‚ œk›úb€–Û/ˆ& g-¶m?þþ.EŠsOŽY?04@úî9ó¦kVy€cÕüùÙ ¸<Ñîâ½G«ùãÓëÑËç.œ©E¹•/ŒÚÿá§^ã‘ÿ{ÆÖNm]0æñç7³qÇ>mÅbbÎÔ‰ >±Œ¯­F³wèìnÇUw@ûßlU˜JÐÓ¿«‰`w;Uo>ŽÉ64ñYã{õþÚÚÚ˜aÁédS¦LÑbR…,Ë?]¶lÙè©»ž&¤…Üpà VA~j\¯™’$ÑÔÔ¤­Ë*5`»ªî¦ãt7c°íß} 4öžLVy“ÏŠ¹_$Ð?˜2±$êÿõ[wÅÕ/W7r¤ª^ûßa³RV¢ˆ¾…ù½†6_ H[—¢ŸëU‚£UõìØ}„·Þ?uÞ̌Ĉ2ØÝA8Ð×xmýç,»‚¹Ë®Ô¶·ÚJÓÞ׉}CæpMÖÜŽ---„Ãá>j@:!Š"3gÎL:ÌØ€b›Ív× È"-  ­­í.bÄúC´þ¯–¾Å<•›ãÈËÿCGå‡}úô YŠÐ¸ç5޽öR8ˆ ˆÎ<Ñbs½þ›VÅïªúæ~÷¯oj‹ú?³G¯×3€ÖN…ømV YÎ^ânéPÖäD3É®î=R²Ѥ#ô¢¿3·Ÿ¼›knÒ: uT}HçÉ=˜,¶¯• D‹ [®ÂLÃá°f¨*5 ++‹òòA÷‹øÖòåËnðp aÐ  'âï;ÆõF£N0Ôªûˆ™ãg xîÜòùä”Ï#àn¥vÇ?9ºî7tötšÝMÇ8úêoh9ð&ªaÉÌÇ–]÷Y #Eâû׃¡h£Ø@³qNV´Øè9¾0§wfmmWÜT6«9*±¹CYo ní¸·…¿«)*ØG»ƒèÑg¿Ý™MAi Wߤ¾8m¼L¶Á‰ÍýÁY8IûÝÐÐ@$ÑT¡Jª*//læ`¦ÅbùÁ Ê`Ð @Åo¹ñ¶«â¿¾ÑCFAy‘geç\Ïø—c¶9 ¸Z¨Ùö4Ÿÿ)uï¿€§ù‘`w;ဇ §ƒÎ“»9þú¨ÜôWkÔ¹‚î¶>†/#"ýH'ë£Ï·ì¬™q÷ÍÉÊàŒ½3ND’¨ojÇ™aÊ%P€«ÛǯŸx™çßx——ßü€í;P˜í—W÷)Ð<QïA’h;¶C#®Ùç}ŒŠjÛ—ßøuJ§/Ð! iÕ hnnŽ"þ¡RA`ÆŒƒu3Þ¶bÅŠÉC60ÃŒA­Y³&G’¤¯×ëu•è+·ØtùáA4Y(œu>ùÓÓzømÚ¿GÈÛEû±Z<¿hµ3nÊjȸêöw ù±Û3ñÁþc\²l6S¯KæOÓ²‘/oþè+Ò·´÷/ÒåéìýÏþ‘ ?fÀOÈëÂUÛ+ú¯ùÌ=ØÑLÎ×ÝÉöµhÿ;‹&1”¸{¥)›Í6,*€ŠŠŠŠAÕ”eù¶U«VýtãÆCÓÛ|‘2¸ì²Ë²À×ãm×ÏþFKy$èðüq!ÚL{³Èìó.ã’ÏÿÁ¤¸ìrŠÊ˜±ø"ïx Y’pÕ"¯"Ž'`€X€§^ÜJYIã sµuSËÇ1µŽŠÝF‰—o¾@€_ËÑ“Þg âɵo²åƒƒÚºÂÜ^«¾$I´wÆw=f:í8l:{Ag|iA ´ºûzxš+5Æ`sd²â¦oEmß¿u-Ïüôs¸Û£Ÿ'ºöy!ož¦€â¢ËËËë# E<€eeeØlƒòr|áüóÏ]M)R@J à¾ûîeYþjûèÅI’´òO ˆÕ{SºáHЫ՘())Án·sÎ9ç0iR¯Øºë ¼üÇï +VýâI³˜|ÆRåÞ"aÜ GâÝ9R¸ÿL»nŸÿùëZþòÜFŽW7büF»}~6½»?üÏ>öÃUõt¹ èHU‘~âÔ‹ò¢¥…–ŽøLW FÆ%…‚tö¤ß,»îœ¹ŠD’"lüÛÏyíÑ{ ÷0Cõýtžº¹­‡·jIaa!¢(ö j5Àd2E}/)Ài³ÙNùèÀ”T€-[¶\E¿¿ £ Ë2999Z@Ý{Ï‘‘?kfâA€ú_Òšeæååa±Xðù|tvv2qâD233µâ¢GÞ{IŠpå¿DDξü³TíSºÔv7!{Â,Sß!ÂÁ«É2¼»çïî9†Ãn¥¤ Aðøü´´wïûU±˜M„Âý»3ÉF-±ïEŠhm·ôèªÞ£©4%“çpæÊˆ„ƒ¼üÇïqìƒÚ¾¥¥¥L™2…·ßVzdxÛª‘"¡´giÜ­´éŒ·¥¥¥1‰(UãÆ£¦¦&åÒâ²,õ†nøõ³Ï>{ʶK)pòäÉar?£$!‡1›Íø|>"‘²ÁÛZCÞ”³v F‚>j·ÿu¦›5kV”! ât:ÉÏϧ¹Y{Û*‰„BLš{9E¨Ü³•îÎd)‚Éâˆé‘0Ûœ¦‹‚€ÃnÃb6# àñðxýCa,f³²^âÎð’4ð ×ÑÕÍžÃU¯iâÕì;Zs¿§£ñ/äuÑ~¼§ê‘ rõ×ÿ‡Ì¼bÂA?/üöN*{– ‚ÀÌ™3™={66›ÖÖVü~?È2fk…ƒžÑ}UoþUcVÙÙÙ”––bµZ±Z­QEBm6¨EHÕI)äú|¾÷+++¤z‚‘FÒÀŠ+f ‚°b ýŒœ\%ÔñãÇk ¾öZšö¾Î¸3/MèÚÕo?¥‰Ž‡ƒüüü>}ý~?Ì;—}û”8ú÷^ù ¥ÌYv‹/ÿ/þ^у]õ‡È7M‹‚SÑ_0Óaço&©1 G"Ca"™n¯¿§¨—ÇG·ÇO§ÛCK»‹¦¶N\ÝѳQMc5ý J3ÒhtVíêõù/½œ’Ésˆ„ƒ¼ðÛ;9¹_Iyóæ1aÂí¸òòr­ gË¡·(œµŒt¹›÷mÄ×®$ƒ‰¢È¸q㢾£ûx8PRRBuuµÂôRÃW€‡åf‡I3QoMfýËÌÌL µºåÐ2ÇM#³dZ¿çéªÝe9ž5k&SlÆï÷“ÍäÉ“5Kïëÿ˜Â²©L[´’¼q“èh @îGðƒ<ú¯7d „$IÚ_=,f3V‹‡ÃŠÍbÁj1c·YÈq:ÈÉr’“•A^N&Ù™9€Ru¸||!åã 9g~oÄæ¶.î}è™>÷sö×ð]òi²òJxí±û8ö¡RÞNÎ<óÌ>ÄŠq¬¢¢BëÐÔ°ór'/TÍ@ok55Ûþ¡Iov»=*$W/â¥ÎãÆ£ªª*Õ¸1ß ü|Øo< HмõÖ[— ôVOÆ›™™‰ÏçC²²²H’DØç¦vÇ?™|Ág0Š›a7G_ý­ÿ¯vƒQát:‰D"Q]„U¸ÝnfÏžÛíÆï÷ÓÞPÅæ<ÈÊ›ïfÛóÀÓÙJÈÓIÀÕŒ-»7BO꧆Ïäý}ƒ.8©%g 8?›âüŠós(*Èa|a.Åù9=†@}¢Fן¿³QkÆéÈÌeñå·²}íŸÙ¿u­¶Ïgœ¡1ÐX˜4iUUUøý~"Aõï¿À„ÅOéù®fNnyRS«Ìf3YYY}ºë+%Ú(4]0™L”””PW—r\Ïç8E@RFÀÉ“'ÿ· ¶Ñ1êýj€Ãá   …4n *.¨ »M1:ôæ»û;ê9úÚï´Zv‚ °hÑ"²³£ããm6’$Ål  …())Ñ D6U`|ň¢‰¦*%:ΞS¢4ãì}‚˜õ† þ@ˆ¶ÎnªZ9x¢Žögó{ûY¿m7;)FÀ†–vŽb¤Hˆ€!ë¯íØ"=iÀç\q^W;›žº_Û>kÖ¬Ý_‚ `µZµpY_G=Yãf$]¼Å×QOå¦Gµ´dQq:Øl6¬V+v»]û.ìv»¶Þb± ‹P‡Ã1PPQQñJeee}ª')$,×wÞyA®Ht=W볩ußÔÅb±`µöºÛv½Š¿³Y–hØµŽ£ëV„(Š,\¸‚‚ØnÜœœ˜™^’$a2™˜2eжnÃ_‚ÙÚbÔùe)Ãd„ê¡p„š†Vvì>º·vöÙ60 ¸ZtõýL˜q¯?þ#íYÊËˣơ?L˜0ââ^©¨òÍLj„7”yÛj¨Üô¿ñ ‚€Ýn×,üÆæ Æš€Ã­ 8òòRë‘eù“ÃzÃiB ##ã ©üPõEZ­Vrrr¢^ºúâív»V¨A–ÂTn~œÿþ1­‡¶h®ÅbaÑ¢E1uV=rrr´ˆ@=¥¥¥de)aµÝ-Ôþ@ÛÞ·T6HRúëá¥Fàn8ªý>ã‚k” Ÿ "=1gNr5Ï8ã AK¡G×ýYØåíª;Då¦G‰†¡~úwo±X¢–X®¿áf}_ 5i„‘Œe'áÔ¿@Q),,Ôf{½ÏWï÷Uö»£r Y¾|9……… ];777*ìXEww7³gÏÖ>ª¦ªÞðÜX:ÿPÄL7ô @ ‡4› Š´Ô¥«Eùßáppæ™g&MP6›… j :äíâè+¿‰É0U´ÛAõÖ¿i’ÐgÆ7~F®ÊÀÉ¢°°0ê[L“W¯^=?ÕƒG 1€+V˜eY¾<™ë@QQQñëu=õÅ‘““âE‹X¼xqÒ1Û¹¹¹Qª… I’bŠÀr¸ï=Ú€FýÐ×ÿË+)§z¿¤ªNKò}~¿Ÿüü|æÍë- p·rxí/5C£nÄhÜý*uï¿Ð§rS$Ñf}õýë½Þ?’R€Éd¢¨hP¶Ÿk†ífÓ„„ØÙl>_’¤Ä¦`âWÃ8333ÉÎÎÆëõj/_oŒD"½.Á,X°€ñãS¯¼$ùùù´µµEÃá0ãÆ£¹¹9ª@I, ` @ ¿í"äsòvp·òt úˆ„üÈR9F’ˆ¢2Ì¢ÙŠ`²`²:°fæcuæbqä`ÉP–dštõqOK•ö»«¥×˜5{ölrr’¯¼ìv»éîî&33“ÒR¥WÀÞ½{¯MÀÃá—EáŒeÏ]…h¶P³ýÿèÒåwÌ>ïr:[êh8¶Y–ñù|dgg÷!~›Í³MøHHÅÅÅ)w’eùjàG#rã)"!‰D.Jô…è‰_ÿU±/kÄodV«Uó444 Ѝ÷‘ŸŸOKKK”Þëõ2gÎÞ{ï½Þå1Ò“åHˆ€«™€» g#þ®F‚Ýí„|."AßH¢Ù†53G^)Îâ)8‹+ Þ‰^èÕ$Y– ¸ÕYÐ ŠŠŠRªƒçr¹4·jww7‚ PZZŠÍfcçÎ S•eZo¥õÈÛ˜¬Ž¨JJç\ù–}üË´7žäo÷~‚p(H0$ i–uÑ«z`¤““ƒÅbIµÍøÂåË—mÙ²¥%•ƒG ¹+**~Jþ訨¨Àb±Ä VµXˆ*x<œN§f´K‚ `³Ù´.Dúõ‡ƒŽ%ˆF °et·ái«ÆÛVCëám´ØLWõ<Í't5ö¹Ý6É⤉B–"„ýÝø;pÕ¤íˆr'÷ìnÃ’‘£URy»´À§“îÆèpt«ÕÊâÅ‹“ÒieY¦«« Çõ~ÔŽyyy”•• µ–î  œ.¹í>]òiY¹¢‰êïjïwܸqdeeiÁ`z÷ßpåôAðx<1ãJ9Üd2½WYYy •ƒG2€5kÖäȲük’0ª/În·3yòdm½1îÛ˜¦& ´¶¶RXXÓ —Ôöè•](­$IäççÓÙÙ©H²Œ§¥ o[ W Áîv¤$\^C YVB–Ûjh?¶ƒ–ƒoÒU³W)Ûms"ˆ&®¼mÑ‘¨gžyfR¢$¡½½ŸÏ³Ôy   âp8(--Ål6ÓÚÚ[ÕGE.ÿŸ2û¼hOñøió©Úû¶’€%Ëøý~&OžÅŒ6€‘ò衯`$Ú*++_±O2€I“&]"BÂá¿zŒ7ŽüüÞ®»±¤}!Qµè@Y–ijj¢  `ÐLÀb±D1P„JKKü12%Âþn|íµ¸êà®?DÐÝeu7nÓ¦MKø”~¿ŸöövB¡R?õ Âá0@€@ Àþýûµ}óÇOáú»ÿHùœsú#"g/aÿÛk‰„Cøý~¬V+'NÔfÿxnÀ‘‚Íf£¦&åÐþìÊÊʇFìæ“Ä€  ¢¢â ÀÒdO,ååå}üò±€žˆ¢H0Ô$„úúú¸A>ÉÀf³áóù¢òT#¥š™6iÒ$¦M›Æ„ ´°åuÁaƒ,KQÄo6›9ûì³ýÝn·–K1PžÙl& ±gÏMm?uŸ¼çq2óãûÐíÎl2s‹µ\„ÖÖV&NœH~~~Ñ_ÕÿG’ˆ¢HGGG”Ô˜ ÊÊÊ©®®º’JiÄ€ `Ê”)÷I—NiÓ¦EùtcU V _/ ¨UbÕý´`¢T!&“)*íÓd21mÚ4Î8ã &Mš¤I,”••1yòdœN§ÖÀr´Áf³!ŠbԽ͚5+n´¤¡PˆŽŽŽ>i°ñ€ÅbÁårqäÈmŸ’Ésøø]asdx½¢òt6×ÐZ«+ÕÖÖ2gÎ2224ëÿh˜ýU--:Yˆ¢øVUUÕá”fôËî»ï>ñäÉ“¿A)‚˜²²²â6e4Uâ×—†¢Dö––\.………qÓ€‚Åb! j³W^^999qϧ~˜©Îi‡Ê´–.]ÊÂ… ™7o´´´àt:™;wn¿$Ë2‡ÎÎÎ>LMõàćššêë{CÝ'Ï[Ƶwþ[Fâ†ÚIsÎåèñww …hlläŒ3ÎÀb±ŒšÙ_?×}ŒQUVVnégHýR’ sAH©òiqq±¦ÿ_h,€QPmúB‡úúz™™Ï:± V%r8äääÄ<¾~@}}}TÜÀH!33“Õ«W3kÖ,2224±9;;›)S¦››Û¯è cÎúz虀*‰9r$êùç_x-«>ý=LfKT}ÿ`²X™|ƹÜö2‘pPËÒœ>}zŸlÀ‘†jH±&·²²òï#ý ‰` ·—r%Õ…gŒ EQ Õ‡Ûl6‚Á V«•P(¤1Õ€§ÎÚ@€;w’ŸŸÏܹs“fêµ²²²0™L¸Ýî(æc|á‚ ¤E—n³råÊ(ƒh$Áëõâ÷û‘e9nĤ$I¸Ýî>îÐXЋà Q–~[F+>u7S{: …CAD³QL\"Ë7™Knÿkú&È2;w°sÏ=wÈk&Ap:QîÎ$pöHߢ藂0/Ñ¡÷áë9{, ¿>J0V£}s‘ööv¶nÝÊäÉ“™:ujRDš——‡  ‰õ²,G©EEEäææb±Xp8ˆ¢ˆ,Ëšº`D8Æï÷ãñxðûýøý~¼^oTJô@(,,Œ"~UŒO„ }>.—+a† twwSSSuã§ÎgÍ­ß'+/ÚØø±:’ë!8í¬•œ{åíl_ûg6lØ@vv6sçκ‘Fvvvª  hùòåã·lÙ’ZHá0b `V*'µX,1]wz)@Ÿ¦2}„`¼N1ÆÚq•••TWW3iÒ$¦Nšõ;ÙKýüà|ò“éËüìì줵µ•––êëëinnæ±Ç£²²PÄþ+VDWW—5áp˜ÎÎ΄½jŒ±J®ÍîäÜk¾ÄœeWƬ $I"á&srRÒÒk¾Œ«­‘o¿ˆ,Ë<ÿüóØív¦N%5Ž$RU3l6ÛLà”g3:‹}^žQ P™€*ØívÍW¯Šü±ÚD ‚ЧÛP$áĉÔ××3mÚ4ÊÊÊÒúñè%ÁÆ$‘››Knn®æ·ß¼y³Fü&“‰sÎ9§S™aeYN˜¨UÉDÕ«¢—TT·kuuuti5A`êœÝWqæôïU‡˜LfHfÌ‹ný/º;š¨>ð.‘H„ýë_ÜrË-L˜0aT0Á0Y–g›GìæDÜè¾n¸Á $V=Âõƒ…þÔµ:Œº«Äè“ETØ2²´Ïï÷³oß>¶lÙBCCCÚŠJêfƒÍQ¿ýíoµßQ×s¹\ Ïè¢(’ŸŸ¥¾èªúª««Ù·o_ñO˜¾OÞóW.»ýÇ?(‡Ã¡à€ûa2[¸ê«¿¢xÒ,mœŸ|òÉ(ãÛpUŽ…Xµ%EõˆË:::¦’bãNÏô @%üŒŒ mq8QL@ßa@MÜüƒ¿Q>g‰¶Îãñ°k×.¶mÛ6˜N z=0ÑŠ:©Àãñ°mÛ6mŒæÍ›§°ßïOÚi2™(((Àd2EYöM& |øá‡QF¾üñ“¹ê«¿âÿï1ÆOU5i „C>iÀ‰Àjwrí]Q0Aé3xê©§¨­­q&`2™Ó>,%õy¸—D"‘”;BÄ“Œ…BôR€š ÃFU)À×ÝInI9×ßý'®¿ûOŒ«è-Yèr¹xÿý÷Ù¾}»–ø“,<Fx&LlÕ˜~ñÖ[oi†·üü|MU­ø©Àd2‘ŸŸ¯y3ÚÛÛÙ¹sg”„äÌ)`Ígîá3ÿýO¦µR;V4™“ˆ¹SËŸÈÈ.àÆïü™Â2¥ ²* 胎FŠ "ubª'â2AJS=é@zr,& ÚN§“ŒŒŒ>õ*^íjVâ¶Ëç,áSß‚«¾ò ¥ÚöŽŽ¶oß®éÖÉ@Ÿ¾råʤO'OžÔ~ëëÓy½ÞA€j8ܽ{7µµµšýÄêp²ôãÿÉç±–ù+¯éÎ3[·yDÂá~+*÷GV7|ûOƒ<ýôÓQiÛ#Á¡¤L?ÉþDü” V5Ƹ î Ö3 cˆ¨ÉdÒŒsM5Oš­Ä´E«˜ºpßy™mÏÿW«ÁÖÑÑ‘”/IÕÕ½í¸>þñ¡-û¦—œÔPTÕH—*š››Ù³gO”íÀl±2oÅõœ{Õpdæö{¼(š0™-Z ú±ÙÉ{àÈÊãÆïþ™µ¿»‹ÚÃ"Ë2¯¼ò ¬^½ZSe†Ó08 ÿ¼óÎs¼óÎ;©5&Ä•dYNÉÚ¥¦u„xR€* %õ·Þ& ¢µ®oWA™³ìJnüΟµuÉŠÑÇ×Äÿ¹sçrÁ¤{ü£°dI¯£±±QS?3ó544hÄ/ˆ"³Î½œOýàï,ýø—$~ÉØR5ª°;s¸î[`Ö9½íâ¶mÛÆ_ÿúר¤¥áÂ`Zˆ;Ρµ§ý©))»ýÍþºskc1Õ# gúEUTè |‘]0^KVñz½Q.½þÐÜÜÌñã½ @þë¿þkÈgž™3gjJ(âÀÁוÐ3½«¿ökVÝò2óŠ‘%)aq]DÌ–ß«Šp(€<ˆä)“ÙÊå_ú)ç\y»&ITWWóÇ?þ‘Ç•›áb‰|Ïñ IÒ¸”&ôWä#¥Ô»D#òbŽF›€Jüv»=J\n¬Üßß…È/íû©ôÒÙÙÉ®]½Í5?ùÉO²fÍš´ zøË_þŠ{ðàÁ”Ï¥F ‚BTã§FvF‰ÏÔf‹-) ø×[AXví\ÿ­?‘­¸"½^/ÿøÇ?xê©§p¹\ÃÂÃH‘††ýI)ÕãJ¦U¬áX’€¾{ŒþõZ>wîöø™[E{]²|¬¯¯gÇŽš¤°lÙ2|ðÁ´|<œqÆ|éK_Òþ¯ªªbß¾})¥#»Ýní¸¢òX ½H8œ¸ëN0Y‡%)B84ø Êò9çpó}gÂŒ³´uGŽáá‡æÝwßÕÒÆ‡ ƒ(Ž,˃«i7 ˆ«¬O™2å@qâ§Rp ˆfêßxyáú’$ár¹4Ùø©ó(œ» Ž#+}o=(³{VVVŸ(¯p8ÌÁƒ£\OsçÎå™gžé7°i(°jÕ*Ž?®Íþ.—‹¶¶6ŠŠŠ’ú <¨eñÍX|SæŸßgÖÎèE‘H$œðÌ.ID“©Oûõdasd2wÙ•Ø3s¨?º›HXÉ£8zô({öìÁf³Q\\<$ÅDeYN¹: ë+++?LûM¥ý1€ï¹Éž0;;;¡‚zÄbz«€H8Æçói"®Ý™­e©‘•_BWk-5JáÌÆÆF"‘‚@kk+ï¿ÿ>mm½µî/½ôRž~úé>}‡ W^y%õõõìÙ³P|ãuuuØl¶„îéÈ‘#šÃd¶péí?‘™‹$EϘ²,a6[³Ú÷0çD= ”\7™,ƒ¶Ÿ‚Àø©ó˜½ìc¸Zêho¨ÒÆåðáÃZÉò¼¼¼ÁŠíQE1Ê=› dYÞ\UUµ=m73è|$[ÛžJ5=Ágcýµ¼¸ZÈ àusÖEŸŠ{þÉg,£áÄ^­f~GGtvvrøða-GE¾ùÍoòÀ Êœ\zé¥ñÆohcÐÔÔDWWyyy1í-@€={öDÍZç_÷súÿQL8¥WEdYJÊÈ'IaÌfKJ®A#lŽLfžs fœEgK­¦úù|>Ž?ÎŽ;hjjBE²²²%ƒò-꣓w ‡¶¯S TЧ¼uyy9k×®åãÿøˆg¢©X¸p!W_}5k×®ÕÒ½^/555ˆ¢Hnn®[Q[[ˇ~׿øòÏqÞ5ÿÑ;¢© ËRRV~“Éœ”€,#ËRÒƒý!§hg,¿†ÒigÒÕZ§1Y–iiiaß¾}lÛ¶ãÇãr¹ðù|ˆ¢ˆÝnOúÝVUUiß›ú-&¨nlª¬¬|+m={"Äóè …ê’‘‘¡ñÉý;˜¿"v²îΞýùðtµiçV¹ºÅbá®»îâ®»îJ¹ÜØPbÆŒ~gߊÌá Ÿg~öy-^ ??Ÿ'žx‚-[¶ðÞ{ïñ‹_übH“|Ò‰ýû÷sã7ÒÔÔw“ÅÊçþYù±Ýв,ðF—8ESÒ…=ÂAÒA?&³EñF ‘„9¹ïªömãä¾mt6×Éu’D7°xx Ø4ôMÁ(•ŒÐ{T‰@•²³³illD–eª¼KÀëŽ*T)Ëëù¾Füyyy¬]»–Y³fqî¹çŽô£%¹sçòüóÏóØcñ—¿ü%ªjZC1áÈÊ{AM&$ÝÌ&I¤H8©f«½ç¸Ä‚«"á²,aµe 0[¬L]x!S*6ÎæšªÐZ{Œ¶ºã´ÕŸÀÛÕFÀ¿Æ£ÉlÅbw`sdaµg`±g`µe šLà ¼š-%è÷âuµðÆ4ÍÎëY¾Ö³nðð"°’ú{Û)9qÓ]>Û˜AhT T‘Ëçó ‡8¾ë-æ,ý˜vü»/=ÆÑÞñï±ÇcÖ¬S"S3.ìv;7Þx#W]uþóŸY¿~=—]v;wª dw[yãâWs7™­H‘h> `M‚Xmý^$)q& E"|ÝXlޤN*È-žHnñDf.¹$j½,K7 h“†]W_"YDÂ!¼îvºšëèj©¡³©†–š£´Ô‰§rFÏò]  øðW`׈ý~Jep­s— Œ @m$¡.j€£ïoÐ@SÕÞyáOÚyî¿ÿ~–/_>„Ã9 %)… X쎔˜€$Eú½ˆ&«cБƒ§2s‹˜¿â:毸¯«C;^eÿÖµ´Tk … €ÿ‡b3ø-ð Оîûˆû–+**®æ${B³ÙLiizk!ÄŠÔWVãT?¹«½‘ÊÝ[e¥ÍØ_ÿúWf̘‘î±1‚@{{{fÛÑÑÁæÍ›% rú¢ÕžÇ¨Œ·„Éœ|4 ˜Ì–¤…z¯+ ‘eI !%±C ‹ÍÁø©ó8såõ”ÏYBÐï¡£ñ¤ª"XåÀ!à m³lõRrS ¦xE<Õuö×/YYYZpFkÍQM¤ºþúëO ½ßˆX¥ªŠ‹{S7\­‰U¤ŽEèR$’re‹-s‰CFDÂ!Þî(KûGfœÅ•w<Àç~ö‚RнWÊ@1^D?.üdÐH©¦ù@-¦SAAª`6›ûEff&÷Ýw_Zïe´ Ы]­‰µ=7™Ì1gÚppp™|f« ‹Í1¨Y<ô{ úâŒ@µ¨iÐç!àuúG-3ÈÊÇ'¾÷(gj}+Dà—À=ôÒxL&ÐïˆË²¼/Õ›Jµ—Ý@02ööv­,XvvöiïŸDQìã,,,ÔŒƒ®Öú¤\f¢hŠ,ËrR@’…ÉlíaŽ!U Rb *ÌÀ×­¤25ÁbË túý*?ð* ‹Ä‘úe¢(¾Ÿê EõšOŒ5Õ¿GÕö¹å–[ÈÊõ•˜Ó cìƒ ”•)U‘$)¢„”&S?ÒÓP¨}®o¶`µ;±e(RÁ¨c’D8èÇßã†-1 muÇÙöÜÃúUÿAqšˆÃúµ”uttìËÉÉñI×qÒ—§*ƒA­á§ Üzë­C~ÍX¼þúë¼ýöÛ9r¿ßONN‹/æãÿ8“'O²kÇòL™2ES‹Zki­·Éd!,ÄoG øEó‹ë‚ b2[1™­È²„‰ K"ªõ~  ‡M¦ž{!ÕS–yãÉŸê™ÑëÀ¿;½ô/U†À|Z½zõnY–“.ãv»‰D"i«±§&© UÍ÷‚ .H[)²DáóùøÃþÀ#&³³%ýnÎöúJvnø‡~Õ;(3¿Å àëY@†ÀïhýúõÍ(L“FwwwÚƒŒÍAŽ9¢m»á†Ò:°± ¹í¶Û¢ˆÑ¥ŸæS?x²ñëqÞÕ_Òâ¶»ººøùÏžö{3z>Aè•d™ÖºãIŸS•‚?š!Š&ÌV;6G&VÇЄ"÷‡H8¬¸Ó\¥Çæ< 7ü5nÝ߉b¸·£1£xôÄ/@  S½I}¿½T 7ü© àäÉ“Z¸ñŒ3X°`AÚ5"‘_üâY·n2r¢ÈÅŸ»— ?q׀⠈¬ùì=÷úé§9v,y±¼?¨%ÑôЫ-'SŠçJ¸%¸’•7´îÁtAMXll™˜­Ã|øºÓÂ0÷¾õUû¶©ÿJ(aû*ÑÛP_u‰¿w<¼Þ©Þh,ëx*Ћÿzßÿu×]—–ó÷‡þð‡¼ôÒK€Bü—ÞþcÎ¸àš„/(­`ÎÒ+¥jòPHƆ¡³gÏÖ~×ßÚI{²øA(à'L_øPCDÌ«’ªlM¾]XªPª‚~OÊêHGS5›Ÿz@¿ª… ˜tKÜà=b>ŸoŠ{!ituu :,Ø(þë-ïûØÇqæñä“OòðýîÌ>ïò¤ÏsÞÕ_ÒDÏ^xýû÷§õ>j@8¶'åóšÌL &V©Ùx£-J®_ôØ0lŽÌA•1Kjo„dÕ_w'/üö„ZÂ]¥X¨ÞÍkQ·G!!Гøz**Ër¿m¬:ÖhükhhÐZ‚Ožö9æžuJçÊ.,eÞ…×jÏõÐC¥tžxÐ×D¥ Š%ØÙ\£õËKÉÌ‘pˆ€ß3j"ä† `¶Ú°edkôa8 à÷$¤x]müûÁÿ¤½¾R]%¡ÌþaF .ªÑOïÐ3$£½êC¦Ê okðãÇ{ Z—_žüLœ(<·ß~»&½T,¸e×}ePç\tɧ5›ÁóÏ?O]]JU×bB„¨°`Q{™£,Óp<å´Žž’ß 3Y’ú½„¾S®ZÒãÀ©$' —Z I„>BoÜñ:±û-žø¯Oh-îP¸“^‹¿ðö,>Ýú }™€†„€ /öœ(ix<ž¤S„cùþ#‘ˆÖùà²Ë.ôàÇÃ÷¾÷=ÙdåãÒÛ¨/¾rŠ&0ýì5€ ô§?ýiPç3¢?;@Cªv€¨Æ³d ‡”´ÚQ˜<3LfkÇ`øêJDÂáÞñB‰âÜñÒ£üí¾Oòü¯¿Ž×¥Ôe‹¿…н(¼ô‹…è•ú¨ Ño¼ñF°)Õ‡«¯O¾Ä ^ˆD"tttÐÑÑ@AAK–,Š÷À¦M›xê©§”M\þ¥Ÿ`w¦§…ÔÙ—}Fûýä“O¦5iª?Pwlp ”Š>V‡3©™Q–eÂAÂbîh‚ ˆXlÃ& ȲDÃñ}lýçïxì;WòÄ÷oàí=DóÉCúÝ$ÂWgz 3pé·nUÐK’eoO¢Ô$OMMMTTT$U©Ç¨ÿëóþ/ºè¢´åèáóùøÖ·¾¥ý¿èÒOëë¯ %“ç0qÖÙÔz·ÛÍO<ÁW¾28ÕB…Íf‹ ž5k–ÖA¨éÄ~dI´ÛK-ä $Ù °GÌ•"¡›ÂèÉý&³Q4+÷?5ÚêŽshû:޼¿Ÿ»#Þn2 ë|Ô™ßt¡¨](  ›Þ  }í@r6Ìfó¿{Nž4ÔðÝD`ÿÕn@jæ øÿý÷k^†œÂ ,ºø–´p,º´W xä‘G´Z†é@nn®ö;++K‹ú=4V¦Çó ˆJ/ÀTŒeF1÷TúÌéŠz ¼ì{ëß<û‹/ðÌÏ>ÏîMÏÆ#~•ðCôÎæª¾¯Îüô¿*¨*€~öOÍ  býúõAžKæ=êêêŽË6ÿø|>͘h·ÛY¹reZ^„'OžŒÒËÏ¿ákHR¿§‹î®V^wZf€Šùç“_ª„H×××óüóϧ팹gÕ+½Tí{;m×Qe©„ª}©ûÂG=qƒixâsw°ã¥ÿå‰ïßÀ[ÿ÷ZjŽÄÛUïÒ‹Ðké7Šýôezñ_ý£¬ÿ*’–ÃdYþkªãç÷ûinN¬ã˜Qü¯¯¯×˜Ç9眷.þ`pï½÷öZýϼ€ ú +=Þ®6^÷à$A`Ñ%½•‹zè¡´%¬8l¶^vØûNÚÇL!ˆÄ‚…Œ¤Ô|á# µhI2êTÐ×Ͷ?Ì“÷~‚^}’€/¦Q<–/_Mê Mü@J @Ñ⿇غÿà$€7n&{œŠêêÄ U­ÿz#â¹ç&< ¶oß®Eû™Ìιâóq÷ |xÝíƒ2jÍ>ïcZ5×ýû÷³uëÖ´=‹^ ˜?¾–(ÕTµ_a^i†j1OÕ¾ ã­5÷bAÅžçýÛ´dYbÿÛkùÛofׯgbµ\3æé«Y{ꌯŠûÝ(ÄÝ…Bð*ñë€:û«Ö½å?&Ryc² ¿Ouà¼^o¿áÁÆÂ*ÐÛÎ;ï¼T/?ûÙÏ´ßs—_CVÁø~÷—"|Ý)÷Ð3[¬,Xu£öÿïŸòöAAV&»Ý®åJH‘Çw½™ö±ƒÞ@©ºÍÔ̹Áö$V е«µžçþ竼ùñww7Ç"z5}Wí½ôÎø*á·m(@­ô2€.¢Ýq]z¤Ä²#‘È_{.˜*¢aÔÿƒÁ –TdµZY´hQª—މíÛ·óöÛŠ~l±g°põ';P–ñ{ºRŽ_°æšoý7ÞˆJq ¬VkTPÐÒ¥KµßGßO9­c`¨‘`þ@,¨•xO%Û€Ò5ú™m…ÿûÙçi<Ñ'˨Ûë‰^í=ôZ÷;é%üV”œuiEaDÏþªèß/ñCŠ `óæÍÝÀã©Xww÷€ÑÆÙ_íû·`Á‚˜1ýìÆòk°e$WXÔïu§” gwæ0{éÇ´çýãÿ˜¶gÒKçwžf´ª>°cÈgY³Åª´KÑP&I‚þSËS ªA²,±åÙß°ño¿0VQ6Š÷!zÃvõ.½X³} Ð 4é•gUô«÷둲3VÅß’bd @eeeŸ6â±RÕøéÖÿwìØ¡Íþ¢ÉœT–ŸîÆñ{Ü)…½.ºøÍ'þì³ÏÒÒÒ’–çÊÍÍÕâ$ ˜3g Ø/ŽíL9»;a¨AC©VÃÑ<~Ï)N xåßcï›ÿŽzz _ñUÝ^oÔSýøú™¾ hìYz–Fz@{Ï1ªÛ¯ß¨¿XH™lذᄠO¥z| ˆ odC©ÿÿáÐ~K‘0»ßx&¥óÈR„€7ùŽHyã&Q±àmL}ôÑ´<—(Šjÿ¯ZµJû½Ë‹i¹Æ@P\…ƒ*À!EÛÀhO.ò{ºøç_æäþíúÕFý^/æE|ãL¯}=P×óWeÍDÏþjH°Qôƒ ÇŠD"?#Å¢ xôµì —øÕðßp8¬ÍŠ¢(¦5ü·ªªJ+ò¡bÏæq"ECY8èOéC=ûÒ^—à_þò—´5W-,,ÔÄð /¼PóÔz¯«}0§N=½ceYK.îBw[#OÿäV¢Ó®õú½~Æ×¾:Ûë‰^%xãROïìøãFüÅàÀæÍ›ÿLõøp8Þ } €Zéï™3g’““ž˜|€?ýéOšmA-ÿü¾îŽΨDÜ%‹ 3Îb\Å€RAIÍC,¬V«æTû€2«îÞ”òkK f‹uP4Г\äO.y¨q|ç›<ý“[io¨Ò¯Û¯†ì _?Ó«KmÏRG´èoÔû ÷íƒÈEñ¿„ÐÜÜL{{{\÷Ÿ¾¤X:sÿ=O?ýtÌm¯›wžKÍ —j;í³uA¿ýíoÓÖ[±¤¤Dû}å•Wj¿÷nzvØýî&³%©´âXP „#]‚¬£±Šÿê^øí7pwD´³¾²«öôú½‘ðõDoœõõ:¿jññCÀ† öO æÇŽÓ ‚úÙ_’$-ûÒËž{î¹~ûÛõfJ%µ‘å~›jÄÃôÅk´ð຺:þñ$}ŽX°Ûíäçç°hÑ"&Nœ@wW+GßK©ÆË  & † (eµü#¢ø=]¼ù̯xâ¿n¤jï6ý&™^1JYæÃ×ÿžÒ¹#)¸¯Aäœ+n×þÿÍo~“¶$¡ÒÒRDQD®¹æmý;/üyD,ìJbMꑃ*4•`ž! ðÞ+óØw®âƒWŸ4FJDWãÑëúzWžÞ°§'~£O5òéƒ|ôùÿú@Ÿ”‰ÒÄ6nÜX'Ëò¯sŽºº:MÐKúƒé’8À|s›ž œÜ¿îÎäÝr©†Ï:çRòÆMé3Ϥæ‘0Âb±P\\ À¥—^JQQí '8´ãµ´\#Y¢ˆÕ68uz#‡ÊK Ù½ñÿøËw¯f˳¿Áï‰ªß Ó+î«Ä¯Zøõº¾Ñª¯ŸéõD¯Ÿí;QH7Ñ„¯Zúõ~)?¤OÀn·ÿ¢ç!R‚,Ë=z”`0¨(Ò* Ùív&Mš”–{ÕëþúVãê¢~”²$qô½ )<‹”’@Eιâ6íÿÿùŸÿÑ  ƒÅ¸qãp8X­Ö¨îDÛþýûÓ§Q)56X¨^‚t8…ƒ~>|ý)½û ÞxògF=zzô1ûz‘¿^·žÞ¯7è©D¯Îöút^5£O%z}bÏ  _EÚÀºuë\²,ß=˜søý~Nœ8UHµ LŸ>=-@$IŠjîa$~uQQ¹7µ$IJpgw¹ÅJ{ï“'Oòì³Ïú™Aat“&MB.»ì2ÆWrºZêØ¾öÏi¹F*PJ¥î"Ô# Ú.ànod˳¿å‘».eóS¿Œ%ªzú ½•ßèÓ×ò ¿¾E<ô¥¼böLYÜ9þiùlÚ´éIÑD ¥¥…ÆÆFͨ"]úÿ¶mÛ´ÈBA0›Í˜L¦¨E_µ¨µî8Ý]É÷6¥ÔÞ(šX¢“|ðÁ´Ù&LÀb±pÇwhëß}éQc˰Âd¶¦­ÐF*v)æøÎ7YûÐ7yôî+xĪ¢¬o´+SOµòë}ºÅ¨Ûw]¼Cµèë£ù†„èõHw]&Y„/÷áo¼qdÕªU÷$zŒ±†ZýWÏÒÑP3k9ÿ ÔгX,Qz¿j0›ÍZPsõ!¦.¼0©k †ˆ&3Ë®»ƒWþø=xànºé¦¨ ¿Á`„ Üu×]ZPRW«¾KùìÄ"-^7 'öÒTuŽÆ“t6×ÐÝÞ„¯»Ó˜«Ý‰Õ¡,öŒlY¹ddå“‘S€=3«-GV>Y¹Ø3sqdå É3¥4¹Gó6È’D{C%µG>¤æà{T|wÿ ­=õÕÐZý̯Šý±BzÛ‰§«L—zn}èî°ú5‡¤æ±Ífûq ¸ ˜—Ìqz)  Fu¼UuÖÁ`ÇŽš[Ñd2a³Ù0›ÍQz¿ê~”$I Sn9™|šî`£Õf-¹„^}‚¦ªƒ´¶¶òÐCñÝï~wÐcðÝï~—7Þè›üÖ3ÿÃÍ÷þ=nÁζúûà Ž}¸™¦“SÒµƒ~-™D ¥#+ŸÌÜ"2óŠÈÌ+Á™‡Í™Ý™ƒ=3Q4EÙ\®ö&<-x:[qµ7ÐZs´_Ƥ‡Î3¡êùýeïé‰ßX¤C5êé3õŒUzÔeDbœ‡„¬[·.°fÍšÏJ’´¥Aá€ÐUÿêóT×Õ`ðꫯj¿­V+V«UùEQÔ\ápA´@¡–ÚcD"aL¦Ä‡kÐQv‚Àò¾Á?ù%~øa>÷¹ÏEEö¥‚;ï¼3*¢  €îînÍ'qpÛ+ÌYvEÔsÞñ{6ý“º£;ýRÏÝŽÏÝNKMjMNÞÙó[’$ÉKאָ&ò¨¢¿žø;éeÆò\úp]}²Î°ˆøaÈj3oذa'ð£dŽ1†ëãôÓQðå—_Ž:ŸÕjÅf³a·Û±Ûí8ìv»V^[5FÂA:›+e¦" :J­|Î&Ÿ¡óðz½üâ¿Hù\ÝÝÝ\rÉ%QÄŸÍÂ… ™6mš¶îíÿ^«ÑwøÝ×øë=×±î‘{FŒø‡ú0Õ%,‚,˲‹¾³¼^Ï×[öiºªu?m!»C…!m‚6iÒ¤m‚ \” ´¯1ÐX`ýúõÌž=;ªíu¢Ø°a7Ýt“ÖUHE 4â·ÙlX­V, &“Iû |>Ÿf_1ŸüñÉ]Ûd±Ú°U8q:{7ÿÙ¿?W_}uT±àóùxðÁ¹å–[¨­­ÕÖçççsöÙgc±XÈÎΦ±±‘`0HÐ×M8à½WþÂû¯>1 ž Ñ‘”©,ÃX÷ wK’ÔÕÃÔ™ÞX‹O_’K_šKïË—¨3¢"Ÿ±ê ¬Y³¦\’¤¸_­>÷? …8p °¢¢‚o|ã\uÕUýÅNœ8Á /¼Àã?Þ§î€Ífc„ ÚŒ¯>(È@ €ßï§©©I³C,\}‹?ö¹¤ž]éCŸ\u¡XxõÏßçÀ6Ezq:\ýõÜrË-Ì›7¯O£•P(D]]ï¿ÿ>k×®eÆ Q‰E‚ 0eÊf̘E|ÍÍÍq£#õÇö·®¿íñªÇZß_…äTª'ïK?ã«U& IRw(ª£WÜ×—èÒwàé"~7}¸î¨›õ£Æb8.²råÊ«Ax>Þõô  i àØ±cq³âL&'NdÞ¼yŒ7ŽœœÚÚÚ8|ø0GŽé·ðhQQddd`·Û±Z­‡Ã|>­­­ó(›u6—ñ'É ® âÌ)€AÎr®¶þ÷îõQ)AÀétbµZÉÈÈÀåráv»ãI~~>³fÍŠ›R½cÇŽ(ëz ão£Ø‹ úƒþþó;Öÿ±ßCô3Ä"üžu¿ßP–eµÉ¦‡¾ÄoüÛ­ÛÏèËWãF%ñÃØ´iÓÚ•+WþR„o·Åz¹ê_}DÞ”)ShllÔŠe¨®B}³ÐxÈÊÊÂï÷kâ¼:ë«6›Í†ÉdB–å(I@/a4Ÿ<˜tk-Y–}Xlƒ³_dŒgòç³ÏeYs• W…Éd¢¸¸˜I“&õibÄŒ3ؾ½7 (±‰&–8ô÷®Sý«‰u=ýsÄzÃsD|>ß^Y–[éí²«6Útë–nÝ_ãŒo âI[ÈîPaØZŸÊ²| çËãlïóWÿBÇÏÌ™3ioo§¡¡¶¶6¼ÞØ ˆ‚ ››«Íôv»-[¶hÛõ @ï P€,Ë„B!Í6 èÆÚ«((­H깃~«cÐRÀe_ü ÿû­Ë5WVvvv”«2cµZ5ƒfff&yyyäçç'B——GAAAT •@ôõ9úß±ôúX*€þ÷÷{ m±Š¹¯;ñ«‹×ëý0WÒKÔÝqñ _?ë«Õa”? #ؼysxÅŠ׊¢¸˜kŸX/\¿M 4#˜š,¤ªf³‡ÃÉdRˆ6Äï÷+&{’jL&“õ§g*H$¢E:M i®:˜4¥HZ¤Gf.g®¼÷_UJ/Øív.¸à²²²´À%³ÙLMMÍ º M›6Mc*C4™L¡ÄúßÈ$’bs¬¥¿}²,GI‰*b‰ü±f}õÀn¿ßÿ!Ñb¿^ü7½>3Ϙ§÷G-᫾æçÀæÍ›[W®\yµ Û­—µqvˆ%ÒÅú¨-KL±¶¥¥%jvÐgÔéÃ~õL@ùÕýU‚ÊÈÈÐR’ëíÖÊx'ƒ Ï‹ÙbtþûÙ—}†]ÿpPi±ÖÜÜLYYYôkÿùùùäææFåa¨ÌP:­gz†OH„øUq>Þ¢n÷x<Ú5c!–}Boú™?ŸèêêZG/ëõýÿúÙ>ÖŒ?¢}©bXÀ¦M›ö¯\¹òFA^êïúF‚—’ˆ¬3î«7$êãýUâW½ê5C¡öçäähîÈêƒï‡0'YåV–%ü^ŽÌÜA]Fvó.ü8;_Wª9r„©S§F1Á‚‚‚¨:Š©`òäÉìÚµK‹ÜÜ\mÜôõ T©Ê8$6óëþw8¦³³3ŠøßI³¿qæ—$©®©©éQ,úú–Û>¢gzcvÞ)Oø*†lڴ鵕+W~} cIñ`ÜWŸM§þÓ/&“)*@]§Æ øý~B/Õû¶Q± ¹¼Pª…>­PªX|Ù­ìÙô/"á TUU‘››5Ó&ÜŠ=ÔÚ>ŸO#@µé¨Ê0õc«žB<ƒ\2€ú¿jëhiiÑÞK,›Â@¢¿žøeYn©®®þE8n¡—Èõ³¼žèU1?–eÔëùýaDÀ¦M›^µjU1p/ Là‰J±Î£—T‹¿‘øÕYE¯÷ªëT/ÀÁíëRb_7¢ÉœR|IŠÐR}˜ú£»É*(¡³©€C‡QQQåÚËÍÍ¥½½=墂 P^^ÎáÃJè­Ïçc„ 02½=` Ÿ¤€XLÀívÓÕÕ¥]Ó¨Nĺõo,¸ëëëNÐ+Ò«ÄnœéõDKÇ?% _ň1€7Þ·bÅŠà+@¿/6Q £P‰ÐB|U& 'võƒ3ÖÈÍÍ¥µµY–©;º‹ÖÚ£–MOþewŽì¼„"=]mœØõ&Çw½EÍÁwc&³466RSSÅA ¸¸8*ò/YL˜0#GŽh®F‹Å‚ÓéÔܦª$¥ÿcÙâ½ÇD }‘H„¦¦&:::°Z­}Žõ] $ÞÖÖÖovttì¢7Á'dXôF=£Uÿ”õãaDÀæÍ›ïZ¾|yðYã6ýËLT0îg2™¢€ÝnïCàê"IR”¥[], ™™™Jr,óÁú¿qÉç˜Òóʲ„¿»Gf^L£ ×ÕÎÁm/sø½õ4U0­X–•áÉ“'GÅ-deeát:£R~“Íf£¸¸˜¦¦&dY¦³³“’’Íͨ7 öGüñÔ¸\~@€ÚÚZÜn·ÖÐd â7^3†1ÐßÞÞþŸµµµÛ‰&ôX/;iç´ |#Îyß¾}_Ÿ={v.pµ~C*6ã~¢(Æe±\Yª`d¹¹¹tww+Köm§æÐûLœuvJ,E"xÝ8²r5I ­þï¾ô(GÞ{=颢õõõÔÖÖö)šZTT”2E P›¸¶´´hYÕ: z0ñÇz7ñ<.—‹ãÇ ±X,1 ~ ï!Æ}øÜn÷­ÇßJ4¡Ç#x£nZ¾ŠÑÀèèèïÚµëËsæÌ‘kb퓪 `”l6[וÎ0¤ý6ª V«§Ó©EÞmý×ï¸þî?aI±å•,Eð¹:|l{þÞñZÊEDT)`âĉZ•PJ€eggãr¹R:oQQf³™p8LGG‡l¤0R(7 ¿P^I’8yò¤¦ºèõýXÇÆ[ã>ŸïÓûöí{ƒhB7¼‘ØOK¢×cH³„˜C¡¹¾¾~kAAÁxAæD"-O”1‘¶`Á`0ªŽ€(ŠÔÔ(3‹ÅBYY™&ÆuYõÃQ“’ÔÄ$õ¯ x½^¥`‰¯›€×ͤ9ç¤üàû·¾À+º‡æ“‰õ­%“Içv»7n\ŸLA‡ÃÕ[!¨5T¦—Í„ úcÅÄb°±¢ ÕÅãñpàÀÚÛÛcZíãg\㺞`0ø‰wß}÷Ubë÷§´o°5 ¥pˆ­¹¹ywvvöxAfx<ž”€Þú-˲æÇ7›Í••¥15Heú¢ *ñëC¯Q±µöE§kõûE(ècÓ“¿`Ïæö©gߟûj {0dâĉšÁ  (‰ ªá¨êR”$‰Ù³gG‰ÿñ"]ÔGÕ˜lVüþÂyc\¿5_ºmÛ¶7é%v£ ï#EðF YAA@>zôè#n·;ªvªF@} €Éd¢­­ææf"‘HŸÖ8“ƒ†Ìf³Æ8”;•yó™_áëîLøáÞn^~ø»œØ³%j}¼[¯†Ý–Æh¸êêjMÚÑ£°°0å’êúÃê¸ÅB*yýííí¼÷Þ{TWW÷yoƒ­1 ŠbƒÉdZµuëÖÄ.´ù‘&|£AzîÃ Ø Óív·Ó"‘H!(â@Ùl@ Šèý~¿Ûn·Ûq:šoÙl6“““·0¨¾>* ¨åÂÔXôpÐOgS Ó®0á'ôñÒÃߦ¥æHïÃÇI´Ñ—(7º,3žÞ’ …(//’TûF¼ä©þ Š"---ZNÅ„ ÈÍÍí3û'Ã|>‡¦ªª*mO Ø'Šâª 6Š“ŸN @U¬€ pN +‰”S@‰QW›\öŸÏõQy<-®Ýápàp84‚÷z½ttt`³ÙÈÊÊŠ /U«é ?kë¡7À¨«¥ŽŒì|Š&Έc²Ì¦§~IÝ‘ÞÒZúK¯GÇ+Un ¿Õ¶h÷äv»ÉÏÏš¹Aa~.—+©jê8dffRVVÓý7Âá0UUU>|8%f”AxMÅË7lØr—ªF° “€,`6P‰3¯×%¦vuuiÅ=N'‡#* P–e:::p¹\šqPFS««D¯2u½º ”D¡Š3ÏÇîŒm§Ø»åönþgïCŒVF¢×[ÛõK<÷[$ѤŸÏGiiiTE•Éô×¹?Ô××k¿gΜه¨×ˆ…H$B]]¤££cPÙŠà×·¾ôÒK©<>bn@ô:šFÉ©„›L¦(ã—ÙlŽ™­¦Z»÷íÛGVV&LÀn·G% éU%°Ûí„ÃaÅhô³ñï÷sõWhз»»Zy]os£áJ/îÇÊQÐ{(ŒFÊP(¤‰øªµ¾¾¾žcÇŽ‘­ÑäääÐÞÞåMzãk{{»ÆÕ{‰—•§Öu¬­­òÌ ÀW7nÜ8r=ÎNQŒ6`œ4J€1@Ï v­8·ÛÍÈÈÈÐ ‡ê‰ßf³EÙìv;>ŸY–i©>ÂëÿÆâË¢ƒß{é1B¯v c ‘1ËN/]”úÒiªËSݦ÷€ìÝ»—‰'RZZu/ÅÅÅTW'WáØb±hÉA@—Ë…ÕjŠÛ×e(¢¾¾žººº´µ5ëÕ’$}bóæÍ#×ÛìÆhc*úH©0€žb@oÀx€‚ ÐÝÝMWW&“‰¬¬¬(âW½M@½Î®7ž¦|ÖÙ”L™ €»£™ã;7kç6ö ìOä7º(¡7F! jÏ£ŽOFF¡PH‹¦;p๹¹Qª€ÓéL)D8++K2«X1IDAT“¦Z[[ÉËË듸ãõz©««ë×[f¬ ƒ·nݺ5µ@‡1ŒJ §tšSQTQzë TºJŸV«ZÕ›ššˆD"Z&¡ÊTâWEòH$‚,Il|ê~®ÿæ°Ø3Ø¿å­IH<]_M°Ñ'Úè£íô™ŠêìúÄ.H’¤I$ d Ž?žÙ³gG‰é%%%TVV&¥‹geeÑܬØÕZ[[©¨¨Ð˜Q[[---¸\®¡Ôïõ÷lܸñAÆÜyƒÂhaFßlJ€q½7@?‹ÆƒJLêo½Ž.IÝÝÝšˆ-‹Ec6›MSÜm¼ýü¸ðwrB7ûÇ*E¦õщú¼{½‹Reêì¯ïf¤2#‡ÃA @’$‚Á ;wî$???ªµšÍf#;;[«t”²²zË›wvvâv»ihhЈ^o bì>³qãÆ‡ãb§;F ÐCOÅIû«dÌUï/mU/ ¨ @?˪ºv0Ô®i6›±ÙlšÍáÈ»ë±;s´Öâ‚ hD­'|Õ5idz ž„Ãá¨>úxuq:šµ¿¹¹™}ûö‘™™EÄEEEIÍØz5¢¹¹™C‡Ey$ªÌ›H²,?`·Û°nݺ!µ(~”0¤($ËT¥u†3›ÍÐ3}l€z °gSo0£JÐê ïp8ÈÈÈЀº«îË_…Ãá˜Ä …°Z­ZÂŽÍfÓ줸¸˜¹sçjD, ùùùQ€ûƒ>ÉÈï÷GéÿÀâ(Þ¾aÆ­Ãq±FˆëHD0~Œñ€Šx³•~½¾J,Ë1™€~QÕã½è½*ñë•øõ©¶úÙ_Ÿª+gÁhœt8š]"³}ûvS§NÕHaa!]]] Eã©Çþjù Áìïî·Ùl?›õ‡£ÄJÁ´`·Û£,Ýê̯jm, ‚FU@¿‹ZÝ_êì­æ X,222p:QŠŒ‹!Êz«¿j˜T ? F¹(G«¤»cÇ, åååšd‘Lý@Q£ŽŒÅ<ÒúQÈò«‚ |eãÆÇÓ~ò1h  ?h ·’1·\-­êß±*Ũˆå Œ¥ ¨î;cÝ:=#P…:³ª¾uÇã! âv»q:š~®2‡C)ª/1Þ£*‰¨*…‘¨¿Õ:ª*ÐÒÒÂöíÛ‰D"Lš4 ‹Å’Rý@ý3˲üM›6½0'C4F 0ÎþêoÍ¿ÛÑÑÑoÔôJ‹…ªª*=C8‰Dü‚ Ìz¨(q5–* ¸Z=Ø(虆:KëÝÆìÂH$‚šöÜÞÞÞ'¶Þ˜ù§ªÆ>Š>ŸŸÏ‡ßï×ڠ雡¨ ´¡¡wß}Wcv»¢¢¢> TP¥õ|ý5óHQhá‡|ðÁC=4£…¡RnJÏõ’p8Lss3ãÆ‹{ÊTß½ºZ–å]ÍÍÍÇzbäWØl¶E@¿ž=ôªwö7ö©³Ûíx½Þ>é¼ú0ßxuõÔs¨çU|Ôç4Uõ –±R¯º€’ßÿÎ;ï(++#??Ÿööö~kèsÔ2]iRܲ,ÿÎn·ÿbݺu©•.CÊ É@j:°…èlÀL”îAy@9(F½²²øÅ7‹…={öè [ÕÀ1 + Ö´µµ½b2™68Îl³ÙPJÚĉc~dÔ§­ÊÀq ¥{'½ŒÀ x›ššŽŸûÙÏþ®¦¦f«,Ë0ƒ© Qϱ¼—±¢QïO6޾?i¡¿²Û5ÒÐC%Ðï“••%ú«Ïb,QÔ‚ðG³ÙüÙ 6ü¾ªªjÌ—?J1,Ù ܃Z (ÈE!ôqÀ ¬çï8`:0~€óyboºž¥¡çÿ¶ží;A]æ¡Ë—//²X,77çö0…¨öUúX|õ·Þ#`,õ«¢n*®3£7B½¾>@]ôQ‚êý=ñjì«j˜²Ú0UýÝÃÜ:Ífó_7mÚ´‘±Ùþ”ÀhSÔÊ­z»±ê—Vf‘OߊÆ2Jè¨EäW»½Û<«ê€±ÑcLlÙ²¥ø5ðë‹/¾xb8¾¸X zUz%£K0^ mu{ª0ª@B.:}`U¼ýŒ÷­¾tƒÁ->ŸïùÆÆÆ—ÛÚÚ:Q¤ª1â?E0Zô¿‘ðÕöÌêoÕ!‰¢2¨ÇªD¯¶vöö,Ýou»ÞðǺ~ýúfð›óÏ?¢ áRQWõÜO¿ †¨}ú‚ ¬Eñ\“É4ßd2ÙŒ^½mÒ“:«gêuôL ¿ãÔb¢êocbOÏ–$©;4{<ž£‘HäPß³¨êÓ`Ær #ˆÑÀôâ¿Jü*1«3¹‡Þ™<eæ7õ#ô —ð]†ÅM_ êýƒ™µd âr¹¼|ðÁF` `ÍÉÉÉ7nÜÂŒŒŒ³EQ\`±Xf‰¢X.‚0¿?£ãíc4RªK‘H$ „$I ʲÜ-˲:ží(*˜—^•ÊÈL‡$9` C‡ÑÀ š„éÉUâWgó /©ç½ À׳_gÏÒѳt¡|À*P%ˆt?D3.ºººÂ]]][m=÷'g”––δÙl³­Vë,Q' ‚På8¨÷K èo_À‰DÜ’$y#‘H  C¡PD’$Õ «Žo¨ç¸uã¨JTz/Š^“N!Œ½L@/þ{P>8'J„ ]wÏaI@ìù­~¨(³U{ÏïNúJz±u°÷ ½¶ U ÷Ü—F‰ÍÍÍÞf¥¨Þft=ê-Z$æää” ‚P.IÒxAНG,ËAòzžÝâ%‰AP%¥NY–ÕÚtD"‘Î@ ÐåñxüÇçr¹¼~¿ßŽbÓ³déÆX•®èyªaUÏPÝôJAÒ#Ma0Ü€ê}ˆôF:Q>Ê< (îYŠP"sè5 ôem(.ÀÖž¥…tÓ— öƒ ‹Jøêÿ*ŒÁMCѧN½¦‰Þvkj~EFϘfÑKø9(Ñ–*PÕ+sÏ=…Q±*Y©cÛ¦S•èícLàÁh”ÂôJ*Q«³’jðSõ}•Äš©Ô´‹hÂ×ë¬éºoýoõ9Tâ Ûô¿Ó=cê%zÆQ¯^ ¬Þž±É$ZÐKYêX«j€*¨cª—Æl§F ˆ¥O«ž™^â×ë¥(ƒÊüô~¤ºEÿý$áÿOñþÕßú™_ˆ³ÏPŽ¥ñùô1ª›Uï1Ñ«XzA!pu?·nQmz0ÔÏ6†4c´0z ŠÒzâWg¤n”UMÜ1ÎTª±J5Xégª¡Qå4­Oç½èm±€jgQ‰ßF¯P5®Æ2ʪú¿ªJéÿ§(Fˆ%¨:­¬[积¨jœ©ônä£ÿÒø,£e<õR>Ê2€Bôz‰_•¸Ôcõ™Ê4Ô™¨™ê†£‰¨P?R!Æ:U×W?VÕØ¦ÿHÁCÃMü£ Æ‚«ê8¨L Ø3fjwf•øÕqÕK ÆMuÝP3Ç0Lm –誮W?X½«hØß:¬÷Q«óGí#Õ©*Mé ®!z½zâˆV"1–1â?Å1ZÜ€±îKu©©¦™ÞJ%~½M?³ésþ?Š3<è=ú1NÔ}©g¢CåÉÃ0b´2õÞŒ¨:CEÙ;›0ÖÇ:†^™ñ·±Ü—Æmc81š€zúS?Cg)õo,¢ûHûG2ßÁØXžFí ÀxŸ±üëFûXÇ0†1Œa cÃÆ0†1Œa cPðÿ@zÁ2À¦6IEND®B`‚(€ × ×   $$    /ALMB0  +22-"  3Rn€qV8  2EVabWD, +Pyœ²³¡[7 ÿÿÿGGGBBBBBB BBBBBBBBBBBBBBBCCCBBB999)))*?ZuŒ˜˜‰mJ* ?l›ÁØÛÊ©R- '---8999T???nAAA‡BBBžBBB°BBBÁBBBÌBBBÕBBBÜBBBÝBBBÛAAAÓ???Ê;;;À222¶&&&°­²»ÄËȵ“g= 'Pƒ´ÚïòåÈŸoA 111111000111O111‚222­444Ò888é<<<ô???ýAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ@@@ÿ===ÿ777ÿ///ÿ%%%ÿÿþ ûúøñ὇N# 0^“ÅìüýõÝ·‡T*BBBBBBCCCBBBX@@@š<<<Ò777ò222ý///ÿ///ÿ333ÿ999ÿ>>>ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ>>>ÿ888ÿ///ÿ%%%ÿÿÿ ÿÿÿÿÿþùâ!!!°&&&h'''%%%%%%%6fžÞþÿÿþðÉ™d5UUUCCCBBBIBBB—BBBØAAA÷???ÿ999ÿ111ÿ***ÿ%%%ÿ&&&ÿ,,,ÿ555ÿ<<<ÿ@@@ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ???ÿ:::ÿ111ÿ'''ÿÿÿ ÿÿÿÿÿÿÿ ÿÿ***ÿ555ô===ÎAAAˆBBB=BBB @@@:k±øÿCCCÿBBBÿ!!!ÿþà¦p<666%BBBlBBBÂBBBòBBBÿAAAÿ???ÿ;;;ÿ333ÿ)))ÿ ÿÿÿ%%%ÿ000ÿ999ÿ???ÿAAAÿBBBÿBBBÿBBBÿBBBÿAAAÿ@@@ÿ<<<ÿ444ÿ***ÿÿÿ ÿÿÿÿ ÿÿ'''ÿÿÿÿ+++ÿ666ÿ>>>ÿAAAþBBBìBBB±BBB\CCCAAABBB<pÑ ÿ>>>ÿJJJÿJJJÿAAAÿÿø»y`444@@@ÕBBBúBBBÿBBBÿBBBÿ@@@ÿ===ÿ666ÿ,,,ÿ ÿÿÿÿÿ***ÿ444ÿ<<<ÿ@@@ÿAAAÿBBBÿBBBÿAAAÿ@@@ÿ===ÿ777ÿ...ÿ"""ÿÿ ÿÿÿÿ***ÿEEEÿHHHÿKKKÿAAAÿÿ ÿ***ÿ777ÿ>>>ÿAAAÿBBBÿBBBÿBBB÷BBBÅBBBjBBB===AAA<}í ÿIIIÿIIIÿIIIÿBBBÿ///ÿ ÿá¿,,,ã999ü???ÿBBBÿBBBÿBBBÿAAAÿ>>>ÿ888ÿ///ÿ$$$ÿÿÿÿÿÿ"""ÿ---ÿ777ÿ???ÿDDDÿGGGÿJJJÿLLLÿKKKÿEEEÿ;;;ÿ,,,ÿÿÿÿÿ ÿ@@@ÿcccÿPPPÿIIIÿIIIÿIIIÿ ÿÿ***ÿ999ÿ???ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBùBBBÈBBBbAAALLL@@@<ˆö---ÿJJJÿIIIÿIIIÿCCCÿ444ÿÿþþ---ÿ888ÿ???ÿBBBÿBBBÿAAAÿ???ÿ:::ÿ222ÿ'''ÿÿÿÿÿÿÿ!!!ÿ333ÿHHHÿZZZÿhhhÿrrrÿwwwÿwwwÿrrrÿfffÿSSSÿ;;;ÿ$$$ÿÿÿ ÿFFFÿnnnÿ\\\ÿIIIÿIIIÿIIIÿJJJÿ%%%ÿÿ,,,ÿ:::ÿ@@@ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBöBBB·BBBHBBBBBB=Œ÷///ÿJJJÿIIIÿIIIÿDDDÿ444ÿ&&&ÿÿÿ,,,ÿ777ÿ>>>ÿAAAÿBBBÿ@@@ÿ<<<ÿ555ÿ+++ÿÿÿ ÿÿÿÿÿ ÿ333ÿGGGÿXXXÿfffÿoooÿtttÿuuuÿnnnÿ___ÿIIIÿ000ÿÿÿÿ???ÿpppÿiiiÿMMMÿIIIÿIIIÿIIIÿJJJÿ###ÿÿ---ÿ;;;ÿ@@@ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBìBBB‘BBB$111AAA>÷000ÿJJJÿIIIÿIIIÿFFFÿ444ÿ+++ÿÿÿ***ÿ666ÿ>>>ÿAAAÿAAAÿ>>>ÿ888ÿ///ÿ'''ÿÿÿÿÿE5&ÿ ÿÿÿ ÿ000ÿ@@@ÿOOOÿZZZÿbbbÿdddÿ]]]ÿNNNÿ999ÿ###ÿÿÿ+++ÿkkkÿqqqÿXXXÿIIIÿIIIÿIIIÿIIIÿHHHÿÿÿAAAÿCCCÿAAAÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBþBBBÌBBBRBBBBBB?‘ø111ÿJJJÿIIIÿIIIÿFFFÿ444ÿ...ÿÿÿ)))ÿ555ÿ===ÿ@@@ÿ???ÿ>>>ÿ???ÿ===ÿ111ÿÿÿÿ7+ÿ¦[ÿF6'ÿÿÿÿÿ(((ÿ444ÿ@@@ÿIIIÿKKKÿFFFÿ:::ÿ(((ÿÿÿÿ]]]ÿsssÿfffÿLLLÿIIIÿIIIÿIIIÿIIIÿEEEÿÿ"""ÿhhhÿoooÿbbbÿOOOÿCCCÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBîBBB†AAADDD<<<@”ù222ÿJJJÿIIIÿIIIÿGGGÿ555ÿ///ÿ ÿ ÿ'''ÿ444ÿ<<<ÿCCCÿPPPÿ[[[ÿVVVÿAAAÿ(((ÿÿÿÿ‘pPÿ½‘hÿŠjLÿ ÿÿÿ ÿÿÿ&&&ÿ...ÿ000ÿ---ÿ%%%ÿÿ ÿÿAAAÿrrrÿpppÿUUUÿIIIÿIIIÿIIIÿIIIÿJJJÿ@@@ÿÿ222ÿsssÿ}}}ÿÿzzzÿhhhÿQQQÿDDDÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBûBBB²BBB.@@@BBB@–ú333ÿJJJÿIIIÿIIIÿGGGÿ777ÿ///ÿÿ ÿ$$$ÿ444ÿKKKÿhhhÿsssÿfffÿOOOÿ555ÿÿ ÿÿmT<ÿ¹ŽfÿºŽfÿ¶‹dÿZE1ÿÿÿÿÿ ÿÿÿÿÿÿ ÿÿÿgggÿsssÿcccÿJJJÿIIIÿIIIÿIIIÿIIIÿJJJÿ555ÿÿEEEÿxxxÿ~~~ÿÿÿ‚‚‚ÿ|||ÿhhhÿOOOÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÎCCCECCCBBBI ºÿ444ÿJJJÿIIIÿIIIÿHHHÿ888ÿ111ÿÿÿ)))ÿMMMÿnnnÿyyyÿqqqÿ^^^ÿEEEÿ+++ÿÿÿE5&ÿ°‡aÿºfÿ¹Žfÿºgÿ¬„_ÿH7(ÿÿÿÿÿÿÿ ÿ ÿÿÿÿJJJÿsssÿnnnÿRRRÿIIIÿIIIÿIIIÿIIIÿIIIÿJJJÿ&&&ÿ ÿ\\\ÿzzzÿÿÿÿÿÿ‚‚‚ÿzzzÿbbbÿIIIÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBáBBBZ???FFF('''¢ùÿ555ÿJJJÿIIIÿIIIÿHHHÿ999ÿ222ÿÿÿ:::ÿ]]]ÿpppÿuuuÿlllÿWWWÿ===ÿ!!!ÿÿ"ÿœxVÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿºgÿ¬„_ÿZE2ÿ ÿÿÿÿÿÿÿÿÿ!!!ÿiiiÿsssÿ```ÿJJJÿIIIÿIIIÿIIIÿIIIÿIIIÿFFFÿÿÿgggÿyyyÿ~~~ÿÿ€€€ÿ€€€ÿ€€€ÿ€€€ÿ€€€ÿÿrrrÿTTTÿBBBÿ@@@ÿ@@@ÿ@@@ÿ@@@ÿ@@@ÿ???ÿ???ÿ@@@ÿ@@@é>>>h### 444---555—000ùÿÿ777ÿJJJÿIIIÿIIIÿIIIÿ:::ÿ222ÿÿÿ888ÿYYYÿlllÿqqqÿgggÿPPPÿ555ÿÿ ÿx\Bÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿºgÿ½‘hÿ—tSÿH7(ÿ ÿÿÿÿÿÿÿKKKÿsssÿlllÿPPPÿIIIÿIIIÿIIIÿIIIÿIIIÿJJJÿ<<<ÿÿ...ÿeeeÿpppÿvvvÿxxxÿyyyÿzzzÿzzzÿzzzÿyyyÿyyyÿyyyÿsssÿ[[[ÿAAAÿ;;;ÿ:::ÿ:::ÿ999ÿ999ÿ999ÿ999ÿ:::ÿ:::î444t  ???@@@ >>>Š:::ø111ÿÿÿ888ÿJJJÿIIIÿIIIÿIIIÿ;;;ÿ111ÿ"""ÿÿ///ÿTTTÿgggÿlllÿbbbÿKKKÿ,,,ÿÿ<.!ÿ±ˆaÿºfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹ŽfÿÀ”jÿÍžqÿÑ¡sÿÈ™nÿ¢|YÿmT<ÿ;-!ÿ ÿÿÿÿiiiÿrrrÿ]]]ÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿJJJÿ(((ÿÿ666ÿTTTÿ^^^ÿdddÿhhhÿjjjÿkkkÿlllÿkkkÿkkkÿjjjÿhhhÿgggÿdddÿTTTÿ:::ÿ000ÿ///ÿ...ÿ...ÿ...ÿ...ÿ///ÿ111ÿ111ï''',  AAAAAABBB{@@@ö;;;ÿ111ÿÿÿ999ÿJJJÿIIIÿIIIÿJJJÿ===ÿ111ÿ'''ÿÿ&&&ÿMMMÿaaaÿfffÿ\\\ÿEEEÿÿ ÿ~`Eÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¾’iÿÌpÿÏŸrÿÏŸrÿПrÿÑ¡sÿÑ sÿÅ—lÿ¯‡aÿJ9(ÿÿGGGÿsssÿjjjÿNNNÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿCCCÿÿ ÿ,,,ÿ;;;ÿDDDÿKKKÿOOOÿRRRÿTTTÿTTTÿTTTÿSSSÿQQQÿOOOÿMMMÿKKKÿIIIÿ???ÿ+++ÿ!!!ÿ ÿÿÿ ÿ!!!ÿ###ÿ%%%ÿ&&&ïŠH9+ BBBAAABBBdBBBð@@@ÿ;;;ÿ111ÿÿÿ:::ÿKKKÿJJJÿHHHÿHHHÿ???ÿ333ÿ,,,ÿÿÿEEEÿXXXÿ___ÿTTTÿ===ÿÿ"ÿ§€\ÿºgÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ»gÿÉšoÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿ»gÿ+!ÿÿgggÿrrrÿ[[[ÿJJJÿIIIÿIIIÿIIIÿIIIÿIIIÿJJJÿ111ÿÿ ÿÿ"""ÿ)))ÿ///ÿ333ÿ666ÿ777ÿ888ÿ777ÿ666ÿ555ÿ333ÿ000ÿ...ÿ,,,ÿ***ÿ%%%ÿÿÿÿÿÿÿÿÿÿí ™iVC1! AAADDDBBBHBBBãBBBÿ@@@ÿ;;;ÿ333ÿÿÿ666ÿ555ÿ$$$ÿÿÿÿ&&&ÿ---ÿÿÿ;;;ÿMMMÿTTTÿKKKÿ333ÿÿG6'ÿ¶‹dÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ•kÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿw[Aÿÿÿ222ÿ222ÿ---ÿ555ÿBBBÿIIIÿJJJÿIIIÿIIIÿEEEÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿ ÿ ÿ ÿÿë«‹u]G2! BBBBBB(BBBÌBBBÿBBBÿAAAÿ<<<ÿ444ÿÿÿ ÿ ÿ ÿ;;;ÿAAAÿ(((ÿÿÿÿÿ///ÿ@@@ÿFFFÿ???ÿ&''ÿÿhP9ÿ¼gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ»gÿÊ›pÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ¶Œdÿ$ÿÿÿÿ ÿÿÿ ÿ$$$ÿ@@@ÿJJJÿJJJÿ222ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿêÀ©’x^E.BBBBBBBBB¥BBBÿBBBÿBBBÿAAAÿ===ÿ555ÿÿÿ>>>ÿ™™™ÿÐÐÐÿÞÞÞÿßßßÿ×××ÿ´´´ÿlllÿÿÿ!!!ÿ111ÿ777ÿ111ÿÿ ÿ…fIÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹ŽfÿÀ”jÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿnU<ÿÿ|||ÿÆÆÆÿÕÕÕÿÕÕÕÿÊÊÊÿ¢¢¢ÿ[[[ÿÿ ÿ555ÿDDDÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþíÔÁ«‘tW;%CCCFFFBBBpBBBøBBBÿBBBÿBBBÿAAAÿ>>>ÿ777ÿÿÿ¸¸¸ÿñññÿîîîÿíííÿíííÿíííÿïïïÿíííÿ‰‰‰ÿÿÿ"""ÿ&&&ÿ!!!ÿ ÿ ÿyWÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹ŽfÿÅ—mÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ¯‡aÿ ÿWWWÿæææÿïïïÿîîîÿîîîÿîîîÿïïïÿèèèÿ§§§ÿ(((ÿ ÿÿ ÿ‚cGÿ­…_ÿ_I4ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿþòäÔ¿¥‡fF+ HHHBBBBBB7BBBÞBBBÿBBBÿBBBÿBBBÿAAAÿ???ÿ999ÿ$$$ÿÿ³³³ÿïïïÿìììÿìììÿìììÿìììÿìììÿîîîÿÆÆÆÿÿÿÿÿÿÿ,"ÿ­…_ÿºfÿ¹Žfÿ¹Žfÿ¹ŽfÿºfÿÈšnÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍžqÿ`J4ÿÿ···ÿïïïÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿ´´´ÿ###ÿÿ<.!ÿÖkÿÒ¡tÿÍžqÿ´Šcÿ…fIÿZE1ÿ;- ÿ%ÿÿ ÿ ÿ ÿÿ&ÿ3'ÿ@1#ÿJ8(ÿVB/ÿdL7ÿtY@ÿ„eIÿoOÿ™uTÿ™vTÿ–sSÿŠjLÿ}`EÿbK6ÿ<.!ÿ ÿÿÿÿý÷îâϵ•rO2BBBAAA BBB©BBBÿBBBÿBBBÿBBBÿBBBÿBBBÿ???ÿGGGÿ@@@ÿÿÿïïïÿìììÿìììÿìììÿìììÿìììÿíííÿäääÿNNNÿÿ ÿ ÿ ÿÿM;*ÿ·Œeÿ¹Žfÿ¹Žfÿ¹Žfÿ¹ŽfÿºgÿÉ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿ¨\ÿÿffgÿéééÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿëëëÿÓÓÓÿLLLÿ ÿ‹kMÿÒ¡sÿÏŸrÿÏŸrÿÑ sÿÒ¡tÿΞqÿÄ—lÿ½‘hÿ¹Žfÿ´Šcÿ³‰bÿ¶‹dÿ»gÿ¾’hÿÁ”jÿ¾’iÿ½‘hÿÁ”jÿÄ—lÿÄ–lÿÄ–kÿÖkÿÖkÿÕkÿÅ—lÿÍqÿÒ¡tÿРsÿÅ—mÿ­…_ÿ{_Dÿ?1#ÿ ÿÿþûõêÙ¿Ÿ|Y;% CCC@@@BBB_BBBõBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿFFFÿeeeÿUUUÿ ÿÿðððÿìììÿìììÿìììÿìììÿìììÿìììÿïïïÿÿÿÿÿÿÿw[Bÿ¼gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ»gÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍqÿ\F2ÿÿÀÀÀÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÞÞÞÿšššÿÿUA.ÿÉšoÿПrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿРsÿРsÿÑ sÿÑ sÿÑ sÿРsÿРsÿÊ›oÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿËœpÿÏŸrÿÏŸrÿÏŸrÿРrÿÑ sÿÒ¡sÿƘmÿyWÿWB0ÿ ÿÿýùïßÇ©‡gK4# BBBBBBBBBÈBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿCCCÿaaaÿwwwÿ```ÿÿ```ÿêêêÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÌÌÌÿ###ÿÿÿÿ!ÿ£}Zÿºgÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ½‘hÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿ©‚]ÿÿghhÿéééÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿçççÿÃÃÃÿPPPÿÿª‚]ÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿƘmÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÒ¡sÿÌpÿ¦[ÿXC0ÿ ÿþûòäϵ˜{aJ8* CCCSSSBBBtBBBûBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿTTTÿ{{{ÿzzzÿhhhÿÿ@@@ÿßßßÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿéééÿdddÿÿÿÿcL7ÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ•kÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿ_I3ÿÿ¾¾¾ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿ×××ÿÿÿ[E1ÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿÈ™nÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿËœpÿžzWÿF6'ÿ ÿýõéÙÅ­•~hUD4%BBBBBB!BBBÑBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿGGGÿpppÿÿ{{{ÿpppÿ...ÿ ÿÑÑÑÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿïïïÿ±±±ÿÿÿ1&ÿ§\ÿºgÿ¹Žfÿ¹Žfÿ¹Žfÿ¹ŽfÿºgÿÉšoÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ¯‡aÿÿbccÿéééÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿæææÿÆÆÆÿfffÿ ÿŸzXÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΟrÿÉšnÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿË›pÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿƘmÿ€bFÿ ÿýøðåÖıž‹wbL6"CCC>>>BBBrBBBüBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿ]]]ÿ€€€ÿÿ}}}ÿuuuÿBBBÿÿ¬¬¬ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿâââÿLLLÿÿ†gJÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ•kÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿmT<ÿÿµµµÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÙÙÙÿ±±±ÿ011ÿ:,ÿÅ—lÿРrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍžqÿǘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿƘmÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÏŸrÿ‘pPÿÿþû÷ïæÚͽ¬—~`B'BBBBBBBBBÉBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿJJJÿvvvÿ‚‚‚ÿÿÿxxxÿYYYÿ ÿÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿïïïÿ££¤ÿÿnT<ÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿ¹Žfÿ¿’iÿÌpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿºfÿ'ÿPQQÿäääÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿéééÿËËËÿ’““ÿÿsX?ÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌpÿÅ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÉšoÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿ–sSÿ0%ÿÿþüøóìâׯ®ŽiD%===CCCBBBZBBB÷BBBÿBBBÿBBBÿBBBÿBBBÿBBBÿ___ÿÿÿÿ€€€ÿ{{{ÿgggÿÿRRRÿåååÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿàààÿHIIÿ$ÿ¤~Zÿºgÿ¹Žfÿ¹ŽfÿÀ“jÿÌœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿ~`Eÿÿ¤¤¥ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿàààÿÁÁÁÿffgÿ ÿ¦[ÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿÖkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÅ—mÿÌpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿÇ™nÿ•jÿÕkÿ¬„^ÿZF2ÿ ÿÿþýû÷ñæÔ¸‘f> BBBCCC BBB¬BBBÿBBBÿBBBÿBBBÿBBBÿBBBÿIIIÿuuuÿ‚‚‚ÿÿÿ€€€ÿ}}}ÿrrrÿ+++ÿ&&&ÿÓÓÓÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿïïïÿ«««ÿÿ^H3ÿºŽfÿ¾’iÿŘmÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÁ•kÿ4'ÿ>??ÿÞÞÞÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÔÔÔÿ´´´ÿ<==ÿ1%ÿ•kÿРsÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿÈšnÿ•jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÉšoÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍqÿƘmÿÁ”jÿÁ”jÿÁ”jÿ•kÿ¾’iÿ”rRÿK:)ÿ ÿÿÿþüøí×µ‰[3BBBBBB1BBBæBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ\\\ÿ€€€ÿÿÿÿÿÿxxxÿFFFÿÿ§§§ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿæææÿbbbÿ ÿ›wUÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÒ¡sÿlNÿ ÿ“““ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿéééÿÈÈÈÿ¥¥¥ÿÿ^H3ÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍžqÿƘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•jÿƘmÿÌpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿË›pÿÄ–lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿ½‘hÿšvUÿaJ5ÿ* ÿ ÿÿþùëЩzL'BBBBBBBBBtBBBþBBBÿBBBÿBBBÿBBBÿBBBÿFFFÿpppÿ‚‚‚ÿÿÿÿÿ€€€ÿ{{{ÿaaaÿ ÿmmmÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÈÈÈÿ***ÿ:,ÿ¾’hÿÑ sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÇ™nÿB2$ÿ011ÿÕÕÕÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿáááÿÁÁÁÿ‰‰Šÿÿ…fIÿÒ¡tÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍqÿÅ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ—lÿÊ›oÿΟrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍžqÿÈ™nÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿÁ”jÿ²ˆbÿ“pQÿfN8ÿ3'ÿ ÿúåØg; BBBBBB BBB´BBBÿBBBÿBBBÿBBBÿBBBÿAAAÿRRRÿ}}}ÿÿÿÿÿÿ€€€ÿ}}}ÿqqqÿ$$$ÿ444ÿÛÛÛÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿžÿÿ]G3ÿÉšoÿРsÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿšvUÿ ÿ‚‚‚ÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿÖÖÖÿ¾¾¾ÿhiiÿ ÿ©‚]ÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿŘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿÈšnÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÄ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÉšoÿРsÿРrÿÁ”jÿ€cGÿÿøØ¯~M'BBBBBB-BBBåBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿdddÿÿÿÿÿÿÿÿÿzzzÿBBBÿÿ³³³ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿèèèÿxxxÿ ÿoU=ÿÊ›oÿРsÿÏŸrÿÏŸrÿРrÿÈšnÿH7'ÿ())ÿÍÍÍÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿêêêÿÌÌÌÿ···ÿGHHÿ)ÿ¿“iÿРsÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÈ™nÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌpÿǘmÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿƘmÿÌœpÿÏŸrÿÏŸrÿÏŸrÿРsÿРsÿ‰jLÿ ÿ캊X.SSSBBBBBBaBBBúBBBÿBBBÿBBBÿBBBÿBBBÿGGGÿsssÿ‚‚‚ÿÿÿÿÿÿÿ€€€ÿ}}}ÿ```ÿ ÿsssÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿàààÿeffÿ ÿgO8ÿ•kÿÒ¡tÿÑ sÿÒ¢tÿnNÿ ÿ‚‚ÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿæææÿÃÃÃÿ®®®ÿ()*ÿL:)ÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌœpÿ•kÿÁ”jÿÁ”jÿÁ”jÿÄ—lÿÌqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿËœpÿƘmÿÕkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿÊ›oÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿПrÿÌpÿcL6ÿûÄU-BBBBBBBBB”BBBÿBBBÿBBBÿBBBÿBBBÿAAAÿQQQÿ}}}ÿÿÿÿÿÿÿÿÿ~~~ÿsssÿ$$$ÿ222ÿØØØÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÞÞÞÿoooÿÿ=. ÿŽmNÿ´Šcÿ•rRÿ$ÿ;<<ÿÕÕÕÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿÝÝÝÿ¿¿¿ÿ¢¢¢ÿÿjQ:ÿÒ¡tÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿƘmÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿÌpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΟrÿÍžqÿÊœpÿÈ™nÿÄ—lÿ•jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿÈšnÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ¶Œdÿ* ÿÞvD#BBBBBBBBBÃBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ^^^ÿÿÿÿÿÿÿÿÿÿÿ{{{ÿHHHÿ ÿ¡¡¡ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿåååÿ›››ÿ667ÿÿÿÿ666ÿºººÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÔÔÔÿ½½½ÿŠŠŠÿÿ‡gJÿÒ¡tÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌœpÿ•kÿÁ”jÿÁ”jÿÕkÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΟrÿÍžqÿËœpÿÈšnÿŘmÿÖkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÈ™nÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ‚dHÿû’, BBBBBB'BBBäBBBÿBBBÿBBBÿBBBÿBBBÿDDDÿjjjÿ‚‚‚ÿÿÿÿÿÿÿÿÿ€€€ÿ{{{ÿdddÿÿUUUÿæææÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿÙÙÙÿ©ªªÿÿÿÒÒÒÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿêêêÿËËËÿ½½½ÿppqÿ ÿ£}ZÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÇ™nÿÁ”jÿÁ”jÿÁ”jÿÉšoÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿÌpÿÈšnÿŘmÿÖkÿ•jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–kÿÈ™nÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÄ—lÿF6'ÿÜD BBBBBBKBBBóBBBÿBBBÿBBBÿBBBÿBBBÿGGGÿuuuÿ‚‚‚ÿÿÿÿÿÿÿÿÿ€€€ÿzzzÿlllÿ...ÿÿºººÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿðððÿïïïÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿçççÿÃÃÃÿ¼¼¼ÿYYYÿ ÿ¹ŽfÿРsÿÏŸrÿÏŸrÿÏŸrÿÍqÿÖkÿÁ”jÿÁ”jÿƘmÿΟrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿÊ›oÿÅ—lÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿƘmÿÊ›oÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÑ sÿy]CÿÿBBBBBBkBBBýBBBÿBBBÿBBBÿBBBÿAAAÿNNNÿ|||ÿÿÿÿÿÿÿÿÿÿÿwwwÿhhhÿDDDÿÿhhhÿêêêÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿàààÿ¿¿¿ÿ···ÿCDDÿ0$ÿ•kÿРsÿÏŸrÿÏŸrÿÏŸrÿÉšoÿÁ”jÿÁ”jÿÖkÿÌqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÅ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ”jÿ•jÿ•kÿÖkÿÅ—lÿÇ™nÿÊ›oÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿÊ›oÿcGÿþ¿4@@@HHHBBB‰BBBÿBBBÿBBBÿBBBÿBBBÿAAAÿVVVÿ~~~ÿÿÿÿÿÿÿÿÿÿ}}}ÿsssÿaaaÿGGGÿÿÿ¿¿¿ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿØØØÿ¼¼¼ÿ°°°ÿ../ÿH7'ÿÉ›oÿПrÿÏŸrÿÏŸrÿΞrÿÅ—lÿÁ”jÿÁ”jÿÉšoÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍqÿǘmÿ•jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿÄ—lÿǘmÿÉšoÿÊ›oÿË›pÿËœpÿÌqÿÍžqÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÑ¡sÿ¸eÿ\G3ÿ ø¦#BBBAAABBB¡BBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ]]]ÿÿÿÿÿÿÿÿÿÿ€€€ÿ{{{ÿoooÿZZZÿ@@@ÿÿÿeeeÿèèèÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÐÐÐÿ»»»ÿ©©©ÿÿ_I4ÿРsÿÏŸrÿÏŸrÿÏŸrÿËœpÿ•kÿÁ”jÿÄ—lÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿÄ–lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿŘmÿÉšoÿÌpÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÑ¡sÿƘmÿŠjLÿ.#ÿåwBBBBBB BBBµBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿbbbÿ‚‚‚ÿÿÿÿÿÿÿÿÿÿxxxÿjjjÿSSSÿ888ÿÿÿÿ¯¯¯ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿéééÿÉÉÉÿ¼¼¼ÿœœœÿÿtY?ÿÓ¢tÿÏŸrÿÏŸrÿÏŸrÿÇ™nÿÁ”jÿ•jÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿÈšnÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿÈ™nÿÌqÿΟrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÒ¡sÿƘmÿ˜uSÿF6'ÿ ÷µ@CCCCCCBBBÅBBBÿBBBÿBBBÿBBBÿBBBÿCCCÿgggÿ‚‚‚ÿÿÿÿÿÿÿÿÿ~~~ÿuuuÿdddÿLLLÿ///ÿ ÿ(ÿ ÿAABÿÙÙÙÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿçççÿÂÂÂÿ¾¾¾ÿ‹‹‹ÿÿ‰iKÿÒ¡tÿÏŸrÿÏŸrÿÍžqÿÖkÿÁ”jÿŘlÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿǘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿÉšnÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿРsÿÑ¡sÿÒ¡tÿÌpÿ·eÿ…fIÿB3$ÿ ùÈdBBBBBBBBBÐBBBÿBBBÿBBBÿBBBÿBBBÿDDDÿjjjÿ‚‚‚ÿÿÿÿÿÿÿÿ€€€ÿ}}}ÿrrrÿ___ÿFFFÿ$$$ÿÿsY?ÿŒlMÿ ÿsssÿçççÿíííÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿâââÿÀÀÀÿ°°°ÿqqqÿ ÿxVÿÑ¡sÿÏŸrÿÏŸrÿÊ›oÿÁ”jÿ•jÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿƘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•jÿÇ™nÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÑ¡sÿÒ¡tÿÓ¢tÿÒ¡tÿРrÿÑ¡sÿÓ¢tÿÓ¢tÿÒ¢tÿÒ¢tÿÒ¢tÿÒ¢tÿÓ¢tÿÒ¢tÿΞrÿÇ™nÿ¾’iÿ§\ÿ€cGÿR?-ÿ#þï»eBBBBBBBBBØBBBÿBBBÿBBBÿBBBÿBBBÿDDDÿlllÿ‚‚‚ÿÿÿÿÿÿÿÿ€€€ÿ{{{ÿoooÿZZZÿ@@@ÿÿ ÿ§€\ÿÌqÿaJ5ÿÿÿãããÿåååÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿïïïÿÎÎÎÿqqqÿ+++ÿÿ ÿ²‰bÿÑ¡sÿÏŸrÿΞrÿÅ—lÿÁ”jÿÅ—lÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿƘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÒ¡sÿΞqÿ¿“iÿ¥[ÿ‡hJÿoU=ÿcK6ÿ\G2ÿaJ4ÿgO8ÿoU<ÿx\Bÿ~`Eÿ|_Dÿx]BÿtY@ÿiP9ÿXD0ÿB2$ÿ'ÿ ùéÆBBBBBBBBBBÛBBBÿBBBÿBBBÿBBBÿBBBÿEEEÿmmmÿ‚‚‚ÿÿÿÿÿÿÿÿ€€€ÿzzzÿlllÿVVVÿ999ÿ ÿ:, ÿÄ—lÿÑ¡sÿÁ”jÿM;*ÿÿIIIÿVVVÿºººÿìììÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿìììÿ¶¶¶ÿDDDÿÿÿ ÿ ÿx\BÿÈšnÿРsÿÌœpÿ•kÿÁ”jÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÈšnÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÑ¡sÿÄ—lÿ™vTÿ\G2ÿ+!ÿ ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿà‰^1BBBBBBBBBÚBBBÿBBBÿBBBÿBBBÿBBBÿEEEÿmmmÿ‚‚‚ÿÿÿÿÿÿÿ€€€ÿ~~~ÿvvvÿfffÿPPPÿ///ÿÿgO9ÿРsÿÏŸrÿÑ sÿ‰iKÿ ÿÿÿÿ„„„ÿàààÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿãããÿˆˆˆÿÿ ÿ***ÿDDDÿ;;;ÿÿ ÿiQ:ÿÊ›oÿÈ™nÿÁ”jÿÅ—lÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿƘmÿŽmNÿ=/!ÿ ÿÿ556ÿRRRÿgggÿsssÿwwwÿxxxÿwwwÿvvvÿvvvÿWWWÿ888ÿ999ÿ:::ÿ;;;ÿ<<<ÿ>>>ÿ???±??? ???BBBBBBBBBÕBBBÿBBBÿBBBÿBBBÿBBBÿDDDÿkkkÿ‚‚‚ÿÿÿÿÿÿ€€€ÿ~~~ÿyyyÿoooÿ]]]ÿFFFÿ !!ÿ ÿ’pPÿÒ¡tÿРsÿ³Šcÿ(ÿÿ999ÿ===ÿÿ ÿ___ÿÚÚÚÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿáááÿlllÿ ÿÿ<<<ÿIIIÿIIIÿJJJÿFFFÿ ÿ ÿ›wVÿŘmÿÁ”jÿÉ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿÅ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•jÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿПrÿ§€\ÿJ8(ÿ ÿ ÿPPPÿsssÿ€€€ÿƒƒƒÿ‚‚‚ÿ‚‚‚ÿ‚‚‚ÿ‚‚‚ÿ‚‚‚ÿ‚‚‚ÿƒƒƒÿaaaÿAAAÿCCCÿBBBÿBBBÿBBBÿBBBÿBBB©BBB BBBBBBCCCBBBËBBBÿBBBÿBBBÿBBBÿBBBÿCCCÿiiiÿ‚‚‚ÿÿÿÿÿ€€€ÿ}}}ÿyyyÿpppÿbbbÿNNNÿ888ÿÿ ÿ´ŠcÿÑ sÿÓ¢tÿƒdHÿ ÿ555ÿJJJÿJJJÿFFFÿ)))ÿÿfffÿãããÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿëëëÿ‚‚‚ÿÿ!!!ÿEEEÿJJJÿIIIÿIIIÿIIIÿJJJÿ===ÿÿkR;ÿƘmÿÄ–lÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÉ›oÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÇ™nÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÉ›oÿ‚dGÿÿÿLLLÿwwwÿ‚‚‚ÿ‚‚‚ÿÿÿÿÿÿÿÿÿÿ^^^ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBŸAAABBBBBBBBBBBB¾BBBÿBBBÿBBBÿBBBÿBBBÿBBBÿeeeÿ‚‚‚ÿÿÿÿ€€€ÿ}}}ÿwwwÿnnnÿaaaÿOOOÿ;;;ÿ&&&ÿ ÿ5)ÿÖlÿÒ¡tÿΞrÿ^H3ÿ ÿAAAÿJJJÿIIIÿIIIÿHHHÿ&&&ÿÿŸŸŸÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÍÍÍÿ###ÿÿFFFÿJJJÿIIIÿIIIÿIIIÿIIIÿIIIÿDDDÿÿ+ ÿmNÿÕkÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÍžqÿÄ–lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ•kÿaJ5ÿ ÿ+,,ÿkkkÿÿ‚‚‚ÿÿÿÿÿÿÿÿÿÿÿ€€€ÿZZZÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB‘EEEBBBBBBBBB BBB«BBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ___ÿÿÿÿ€€€ÿ~~~ÿxxxÿnnnÿ___ÿMMMÿ999ÿ'''ÿÿÿS@.ÿËœpÿ¬„_ÿ^H4ÿ ÿÿEEEÿIIIÿIIIÿIIIÿJJJÿCCCÿÿNNNÿäääÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿïïïÿ®®®ÿÿ666ÿTTTÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿHHHÿ000ÿ ÿ ÿO<+ÿ¢|YÿÌqÿÑ¡sÿÏŸrÿÈšnÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•jÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ½’hÿO=+ÿ ÿ???ÿyyyÿ‚‚‚ÿÿÿÿÿÿÿÿÿÿÿÿÿ~~~ÿTTTÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB~CCC???BBBCCCBBB•BBBÿBBBÿBBBÿBBBÿBBBÿAAAÿYYYÿÿÿÿÿzzzÿpppÿaaaÿMMMÿ888ÿ%%%ÿÿ ÿÿP>,ÿjQ:ÿÿ ÿ###ÿ???ÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿ"""ÿÿÏÏÏÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÂÂÂÿÿ///ÿ^^^ÿOOOÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿ@@@ÿ---ÿÿ ÿ ÿ\G3ÿ­…_ÿÍqÿÄ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿƘmÿΟrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ½’hÿK:)ÿ ÿJJKÿ}}}ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ|||ÿNNNÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBüBBBhBBBKKK@@@BBByBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿQQQÿ}}}ÿÿ€€€ÿ}}}ÿuuuÿfffÿRRRÿ;;;ÿ%%%ÿÿ ÿÿÿ ÿ ÿ ÿ<<<ÿIIIÿJJJÿIIIÿIIIÿIIIÿIIIÿIIIÿJJJÿ,,,ÿÿ»»»ÿóóóÿðððÿðððÿðððÿðððÿðððÿðððÿðððÿðððÿîîîÿÝÝÝÿDDDÿÿPPPÿ[[[ÿLLLÿIIIÿIIIÿIIIÿIIIÿBBBÿ222ÿ///ÿ000ÿ---ÿÿÿÿiP9ÿ®…_ÿÕkÿÁ”jÿÁ”jÿÕkÿÌœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÖkÿQ>,ÿ ÿMMMÿ~~~ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿwwwÿHHHÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBóBBBLBBBBBBBBBZBBBøBBBÿBBBÿBBBÿBBBÿBBBÿIIIÿxxxÿÿÿzzzÿnnnÿ[[[ÿCCCÿ+++ÿÿ ÿÿÿÿÿ888ÿHHHÿJJJÿIIIÿIIIÿHHHÿIIIÿJJJÿIIIÿIIIÿJJJÿ000ÿ ÿbbbÿŠŠŠÿ‹‹‹ÿŒŒŒÿÿÿ‰‰‰ÿ‚‚‚ÿ|||ÿvvvÿlllÿ[[[ÿ***ÿÿ!!!ÿWWWÿZZZÿNNNÿIIIÿIIIÿIIIÿCCCÿ666ÿ000ÿ000ÿ000ÿ000ÿ)))ÿÿÿ.#ÿ‰iKÿ¿’iÿ•kÿÈ™nÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿÉšoÿbK6ÿ ÿGGHÿ~~~ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿnnnÿEEEÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBéBBB-BBBBBBBBB6BBBìBBBÿBBBÿBBBÿBBBÿBBBÿEEEÿoooÿÿ}}}ÿuuuÿeeeÿOOOÿ555ÿÿ ÿÿÿÿ333ÿGGGÿJJJÿIIIÿIIIÿIIIÿIIIÿ>>>ÿFFFÿVVVÿUUUÿTTTÿUUUÿ222ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ"""ÿQQQÿ]]]ÿUUUÿFFFÿHHHÿIIIÿGGGÿ===ÿ333ÿ000ÿ000ÿ000ÿ...ÿ""#ÿ ÿ ÿdM7ÿºfÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿ}`Eÿ ÿ;<<ÿ{{{ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿdddÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÐBBBBBBBBBCCCBBBÔBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿcccÿ€€€ÿzzzÿnnnÿ[[[ÿBBBÿ)))ÿÿÿÿ###ÿBBBÿJJJÿIIIÿIIIÿIIIÿIIIÿIIIÿEEEÿ333ÿ999ÿSSSÿ[[[ÿ\\\ÿUUUÿ$$$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ+++ÿ''(ÿÿ;;;ÿJJJÿIIIÿIIIÿDDDÿ888ÿ111ÿ///ÿ---ÿ---ÿ***ÿÿÿR?-ÿ¿“iÿÑ¡sÿÏŸrÿÏŸrÿÑ¡sÿ›wVÿ ÿ'''ÿqqqÿÿ€€€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿXXXÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB¨BBBBBBBBBBBB BBB©BBBÿBBBÿBBBÿBBBÿBBBÿAAAÿVVVÿzzzÿsssÿcccÿMMMÿ555ÿÿÿÿ,,,ÿHHHÿJJJÿIIIÿIIIÿIIIÿIIIÿIIIÿHHHÿ999ÿ000ÿ///ÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿFFFÿIIIÿIIIÿIIIÿHHHÿ===ÿ111ÿ,,,ÿ,,,ÿ,,,ÿ---ÿ""#ÿÿM;*ÿ¶ŒeÿÑ sÿÑ sÿ¸Žeÿ3'ÿÿWWWÿtttÿ|||ÿ€€€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿzzzÿLLLÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB}EEE>>>BBBBBBBBBwBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿHHHÿoooÿkkkÿVVVÿ???ÿ'''ÿÿÿ+++ÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿ>>>ÿ111ÿ111ÿÿÿ ÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿ ÿ/ÿH/ÿN3ÿ@*ÿÿÿ---ÿIIIÿIIIÿIIIÿIIIÿIIIÿAAAÿ222ÿ,,,ÿ...ÿ999ÿ222ÿ ÿÿ4(ÿªƒ^ÿÌpÿ]H3ÿÿ///ÿXXXÿkkkÿxxxÿ~~~ÿ€€€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿnnnÿEEEÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBòBBBJBBBBBBBBBBBBBðBBBÿBBBÿBBBÿBBBÿAAAÿ@@@ÿ[[[ÿ___ÿHHHÿ000ÿÿÿÿAAAÿJJJÿIIIÿIIIÿIIIÿIIIÿIIIÿIIIÿAAAÿ222ÿ111ÿ&&&ÿÿ ÿP5ÿW:ÿiE#ÿcA!ÿQ6ÿG.ÿ?)ÿ3"ÿ& ÿ ÿ ÿÿ ÿ ÿ+ÿ7$ÿC,ÿR6ÿjE#ÿyO)ÿ‚V,ÿ‡Y-ÿjF$ÿP5ÿ ÿÿ ÿ;;;ÿJJJÿIIIÿIIIÿIIIÿIIIÿCCCÿ666ÿ:::ÿ)))ÿÿ ÿ=(ÿ ÿ+!ÿhP9ÿ ÿÿ111ÿIIIÿ```ÿqqqÿ{{{ÿ€€€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ___ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÙBBBBBBBBBCCCBBBÌBBBÿBBBÿBBBÿBBBÿAAAÿ<<<ÿGGGÿRRRÿ:::ÿ"""ÿÿÿÿÿ555ÿHHHÿIIIÿIIIÿIIIÿIIIÿCCCÿ333ÿ000ÿ...ÿ ÿÿÿT8ÿ]>ÿ~S*ÿˆY.ÿˆY.ÿˆZ.ÿ‡Y-ÿƒV,ÿS+ÿ|R*ÿ{Q)ÿzP)ÿ{Q)ÿ}R*ÿT+ÿ…W-ÿˆY.ÿˆY.ÿ‡Y-ÿ‡X-ÿ†X-ÿ†X-ÿoI%ÿW:ÿ% ÿ ÿ ÿÿCCCÿJJJÿIIIÿIIIÿIIIÿIIIÿFFFÿ)))ÿÿ/ÿuM'ÿ‡Y-ÿiE#ÿ ÿÿÿÿ###ÿ;;;ÿTTTÿiiiÿwwwÿ~~~ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ{{{ÿOOOÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB¢CCCCCCBBBDDDBBBBBBÿBBBÿBBBÿBBBÿ@@@ÿ;;;ÿ777ÿBBBÿ///ÿÿÿ ÿ9%ÿÿÿ***ÿHHHÿIIIÿIIIÿCCCÿ444ÿ000ÿ222ÿÿ ÿÿ ÿU8ÿ^> ÿ€T+ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿ‡X-ÿ‡X-ÿ†X-ÿ†X-ÿ†X,ÿ…W,ÿ…W+ÿ„V+ÿ…V+ÿˆZ0ÿˆ[0ÿ‡X-ÿxO(ÿ\=ÿ?*ÿ ÿ6)ÿ ÿ ÿFFFÿIIIÿIIIÿIIIÿJJJÿ555ÿÿ-ÿ|R*ÿˆY.ÿ†X-ÿ‡Y-ÿqJ&ÿ' ÿÿÿÿ///ÿIIIÿbbbÿsssÿ}}}ÿ€€€ÿÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿmmmÿDDDÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBúBBBbBBBDDDBBBBBBKBBBòBBBÿBBBÿBBBÿ@@@ÿ:::ÿ000ÿ222ÿ)))ÿÿÿ?*ÿ„W,ÿtL'ÿ*ÿÿ...ÿIIIÿDDDÿ555ÿ000ÿ222ÿ%%%ÿ ÿXD0ÿ&ÿ! ÿW:ÿ`? ÿ‚U,ÿ†X-ÿ†X-ÿ‡Z/ÿˆ[0ÿ‡Y/ÿ‡Y.ÿ‡Y.ÿ‡Z/ÿ‰[1ÿŠ]3ÿŒ`6ÿc:ÿ”jBÿžwQÿª…cÿ¸–wÿÇ©ÿ¨ƒ_ÿ…W+ÿ€T+ÿ`? ÿT8ÿÿ+!ÿZE2ÿ ÿ%&&ÿGGGÿIIIÿIIIÿCCCÿÿÿsK&ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿvM(ÿ*ÿÿÿ(((ÿBBBÿ\\\ÿpppÿ|||ÿ€€€ÿÿÿÿÿÿÿÿÿÿÿÿÿYYYÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÝBBB&BBBBBBCCCBBBÅBBBÿBBBÿBBBÿ@@@ÿ:::ÿ///ÿ(((ÿ ÿÿ% ÿzP)ÿ‡Y-ÿˆY.ÿwN(ÿ  ÿ ÿ:::ÿ777ÿ000ÿ111ÿ,,,ÿ ÿC4%ÿw[Aÿ ÿ:&ÿY;ÿdB!ÿƒV,ÿ†X-ÿ†X-ÿª…cÿÈ«ÿĦ‰ÿã‡ÿä‡ÿŦŠÿÉ«ÿ̯”ÿѵœÿ×½¥ÿÛìÿÜíÿÙ¿§ÿϳ™ÿÁ¡„ÿuOÿ…W,ÿ…W-ÿiE$ÿY;ÿ<(ÿ ÿnU=ÿ]G3ÿÿ())ÿHHHÿJJJÿ---ÿÿS7ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿtL'ÿ# ÿÿ ÿ???ÿYYYÿoooÿ{{{ÿ€€€ÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿtttÿHHHÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBCCCCCCAAAFFFBBBzBBBþBBBÿBBBÿ@@@ÿ:::ÿ111ÿ###ÿ ÿ ÿhE#ÿ‡Y-ÿ†X-ÿ†X-ÿˆY.ÿa? ÿ ÿÿ333ÿ111ÿ...ÿ ÿ) ÿ zXÿ<.!ÿ ÿR6ÿY;ÿhD#ÿ„W,ÿ†X-ÿ†W,ÿ¢{Vÿ¼›}ÿ¼›}ÿ¾ž€ÿ½œ~ÿ»š|ÿº™zÿ·•vÿ±lÿ©„aÿ£|Xÿ˜oHÿd;ÿŽb9ÿ›rLÿ“h@ÿ†X-ÿ‡X-ÿvN(ÿ[<ÿU8ÿ ÿ&ÿ¦[ÿWC0ÿÿ&&&ÿAAAÿÿ  ÿ|R*ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿiE#ÿ ÿÿ>>>ÿZZZÿoooÿ{{{ÿ€€€ÿÿÿÿÿÿÿÿÿÿÿ€€€ÿ^^^ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBôBBBOAAAWWWBBBCCC,BBBßBBBÿBBBÿ@@@ÿ<<<ÿ444ÿÿÿP5ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‚V,ÿ/ÿ ÿ111ÿ,,,ÿÿ#ÿžzWÿ’pPÿ ÿ5#ÿZ<ÿX;ÿlG$ÿ†X-ÿ†X-ÿ†X-ÿ…W+ÿ–lDÿ´‘qÿÁ¡„ÿ¹˜xÿuPÿ†X-ÿ†X,ÿ¥[ÿ®Šiÿ‰\1ÿ…V+ÿ„V+ÿ—nFÿÞÆ°ÿ£†ÿˆ[0ÿ†X-ÿU+ÿb@!ÿZ;ÿC,ÿ ÿ`J5ÿ¿“iÿ^H4ÿ ÿÿÿI0ÿˆY-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿJ1ÿÿ444ÿ^^^ÿqqqÿ|||ÿ€€€ÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿuuuÿIIIÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÀCCCBBBCCCDDDBBB•BBBÿBBBÿAAAÿ>>>ÿ666ÿÿ ÿ{Q)ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‰Z.ÿY;ÿÿÿÿ ÿŽmNÿÉšoÿE5&ÿ ÿP5ÿZ;ÿY;ÿqJ&ÿ‡X-ÿ†X-ÿ†X-ÿ¥~ZÿÝÄ­ÿì×ÄÿéÓ¿ÿì×Ãÿä͸ÿ´‘qÿa7ÿϲ˜ÿãÌ·ÿ”jBÿ…W,ÿ…W+ÿ“h@ÿâʵÿÒ·žÿŒ_6ÿ†W,ÿ†X-ÿqJ&ÿY;ÿX:ÿ)ÿ ÿ™vUÿÊ›oÿx\Bÿ ÿÿa?!ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿvM(ÿ ÿ##$ÿbbbÿtttÿ~~~ÿÿÿÿÿÿÿÿÿÿÿ€€€ÿ\\\ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBúBBBjDDDAAABBBBBB9BBBçBBBÿBBBÿ@@@ÿ999ÿÿ$ ÿS+ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿƒV,ÿhE#ÿ7$ÿ ÿ ÿ ÿ ÿ.$ÿ]G3ÿ ÿ1 ÿY;ÿY;ÿZ<ÿwN(ÿ‡X-ÿ…W,ÿ“h@ÿÚÀ¨ÿèÓ¿ÿ¾ž€ÿ£|Xÿ³‘pÿáÉ´ÿåκÿ¤}YÿÄ¥ˆÿçѽÿŸwQÿ†X-ÿ‰\2ÿŽb9ÿؾ¦ÿÝÄ­ÿd;ÿ…W,ÿ†X-ÿ€T+ÿ`@ ÿY;ÿN4ÿ ÿ7*ÿ¾’iÿÑ¡sÿsX?ÿÿN3ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‚U,ÿ,ÿÿcccÿxxxÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿqqqÿGGGÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÌBBBBBBBBBBBBBBB˜BBBÿBBBÿAAAÿ===ÿÿÿyO)ÿ‡Y-ÿ†X-ÿ†X-ÿS+ÿA+ÿ ÿ:&ÿa@ ÿrK&ÿqJ&ÿY:ÿ$ ÿÿ ÿL2ÿZ<ÿY;ÿ]=ÿ}R*ÿ†X-ÿ…V+ÿ©„aÿëÕÂÿɬ‘ÿŠ\2ÿ„V*ÿ…W+ÿ¶“tÿíØÅÿ½œ~ÿº˜yÿêÕÁÿ©ƒ`ÿ¦€]ÿȪŽÿœsMÿ˯”ÿä͸ÿ—mFÿ…W,ÿ†X-ÿ†X-ÿrK&ÿZ;ÿZ;ÿ<(ÿÿjQ:ÿÇ™nÿZE1ÿÿ@*ÿ‡Y.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ€T+ÿ) ÿÿiiiÿ{{{ÿ€€€ÿÿÿÿÿÿÿÿÿÿ}}}ÿUUUÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBûBBBpCCCBBBBBBBBB5BBBáBBBÿAAAÿ@@@ÿ'''ÿÿ^=ÿˆY.ÿ†X-ÿ‡Y-ÿqJ&ÿG/ÿlG$ÿ…W-ÿˆY.ÿ‡Y-ÿ‡Y-ÿˆY.ÿ}R*ÿH/ÿ ÿ9&ÿY;ÿY;ÿb@!ÿ‚V,ÿ†X-ÿ„V+ÿ®‰hÿì×Äÿ£†ÿ†X-ÿ…W,ÿ„U*ÿ­ˆfÿì×ÄÿÀ¡„ÿ°ŒkÿëÖÂÿ²nÿ·”uÿì×Äÿ®Šiÿä‡ÿèÒ¾ÿ yTÿ…V+ÿ†X-ÿ†X-ÿ‚U,ÿdB"ÿY;ÿW9ÿ% ÿ ÿfO8ÿ ÿÿ;'ÿ…W-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿwN(ÿ ÿ/00ÿsssÿ}}}ÿ€€€ÿÿÿÿÿÿÿÿÿÿeeeÿDDDÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÇAAABBBAAA@@@BBB„BBBýBBBÿAAAÿ777ÿ ÿ2 ÿƒV,ÿ†X-ÿ†X-ÿ„W,ÿ†X-ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿ„W,ÿ;'ÿ ÿL3ÿY;ÿjF$ÿ…W-ÿ†X-ÿ…W+ÿœsNÿäÌ·ÿàȲÿ¥~Zÿa8ÿ™oIÿÒ¶ÿëÖÃÿ­‰gÿ¡yUÿèÒ¾ÿдšÿʬ‘ÿíØÆÿÚÀ¨ÿÞÆ°ÿâ˶ÿ™pIÿ…W,ÿ†X-ÿ†X-ÿ†X-ÿyP)ÿ]=ÿY;ÿM3ÿ ÿÿ ÿcA!ÿW9ÿU,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿ`? ÿ ÿFFFÿxxxÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿsssÿJJJÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBöBBB`EEE@@@BBBAAA"BBBÌBBBÿBBBÿ@@@ÿ ÿ ÿcA!ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿnH%ÿ ÿ,ÿZ;ÿuM'ÿ‡X-ÿ†X-ÿ†X-ÿˆ[1ÿ»š{ÿêÔÁÿæÐ¼ÿØ¿§ÿáÉ´ÿì×Äÿ̯”ÿŽb9ÿ`7ÿʬ’ÿéÓÀÿéÓ¿ÿÝÄ®ÿßDZÿÝÄ®ÿ±Žmÿ‡Y.ÿ…W,ÿ†X-ÿ†X-ÿ†X-ÿ…X-ÿpJ&ÿZ;ÿZ;ÿ<(ÿÿ)ÿU+ÿƒV,ÿ…W-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿB+ÿ ÿ^^^ÿ{{{ÿ€€€ÿÿÿÿÿÿÿÿ‚‚‚ÿ{{{ÿSSSÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB¬AAABBBDDD>>>BBBYBBBóBBBÿBBBÿ888ÿ ÿ( ÿ|R*ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ„W,ÿ4"ÿ ÿV8ÿ€T+ÿ†X-ÿ†X-ÿ†X-ÿ†W,ÿŠ]4ÿ¯ŠiÿÒ¶ÿßDZÿ×½¥ÿº™zÿe<ÿ„V*ÿ„V*ÿa8ÿ©„aÿ¯‹jÿ›sMÿtOÿ¥[ÿ©ƒ`ÿ¯‹jÿe<ÿ†W,ÿ†X-ÿ†X-ÿ†X-ÿƒV,ÿjF$ÿY;ÿV9ÿ<(ÿ^> ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿ}R*ÿ  ÿ ÿkkkÿ{{{ÿ€€€ÿÿÿÿÿÿÿÿÿ]]]ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBâBBB:CCC???AAAAAA BBBšBBBÿBBBÿBBBÿ)))ÿÿF.ÿ…W-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿb@!ÿ ÿS6ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ•kCÿ yTÿ£}Yÿ§^ÿ¤~ZÿŸwRÿ¡zUÿ¦€\ÿ­ˆfÿµ’rÿ½œ~ÿÇ©ÿѵœÿØ¿§ÿÛ«ÿÙ¿¨ÿË®“ÿ”jBÿ…W,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‚U+ÿhD#ÿY;ÿrK&ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿ`? ÿ ÿ;;;ÿqqqÿ|||ÿÿÿÿÿÿÿÿ€€€ÿeeeÿDDDÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBúBBBwCCCCCCBBBBBB%BBBËBBBÿBBBÿ???ÿÿ ÿ[<ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‚U,ÿ9%ÿS6ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ…W,ÿ³oÿÜìÿÙÀ¨ÿÙ¿§ÿÙ¿§ÿÙÀ¨ÿØ¿§ÿ×½¥ÿÔº¡ÿдšÿÊ­’ÿÀ¡ƒÿµ’rÿ©„aÿœtNÿ‘f=ÿ‹_5ÿ‡Y.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿU+ÿnH%ÿ|R*ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‚U,ÿ1 ÿ ÿSSSÿqqqÿ|||ÿÿÿÿÿÿÿÿjjjÿGGGÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB¯AAAAAA???GGGBBBNBBBéBBBÿBBBÿ;;;ÿÿ ÿdB!ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿvM(ÿqJ&ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿŒ_5ÿ’g>ÿ’g?ÿ’g?ÿ’g>ÿ’g>ÿ‘f=ÿ‘e<ÿc9ÿŒ`6ÿŠ\2ÿ‡Y-ÿ…W+ÿ…V+ÿ…W+ÿ…W,ÿ†W,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ…W-ÿ…X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿZ;ÿ ÿ***ÿ```ÿsssÿ}}}ÿÿÿÿÿÿÿlllÿHHHÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÕBBB1CCC<<<CCCEEEBBBvBBB÷BBBÿBBBÿ777ÿÿÿ^=ÿ…W,ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X,ÿ…W,ÿ…W,ÿ…W,ÿ†X,ÿ‚U+ÿzP(ÿyO(ÿxN(ÿwN(ÿuM'ÿsK&ÿrK&ÿU+ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿsL'ÿÿÿ@@@ÿfffÿvvvÿ~~~ÿÿÿÿÿÿlllÿIIIÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBëBBBU===CCCBBBBBB BBB˜BBBýBBBÿBBBÿ666ÿÿ ÿ>)ÿqJ&ÿƒV,ÿˆY.ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿ}R*ÿ;'ÿÿ ÿ ÿ ÿ ÿ ÿ ÿ<'ÿ~S*ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ€T+ÿ4"ÿ ÿÿ888ÿnnnÿyyyÿÿÿÿÿ€€€ÿjjjÿHHHÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBöBBBuBBBBBBBBBCCCBBB®BBBÿBBBÿBBBÿ;;;ÿ ÿÿ ÿ2!ÿU8ÿvN(ÿ…W-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿ}R*ÿ6#ÿ ÿÿÿ<==ÿ]]]ÿÿÿUA/ÿ ÿ8%ÿ~S*ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿ^> ÿ)ÿ\<ÿ ÿ//0ÿtttÿ|||ÿ€€€ÿÿ‚‚‚ÿ~~~ÿdddÿFFFÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBûBBBCCC CCCKKKAAACCC$BBB¼BBBÿBBBÿBBBÿAAAÿ333ÿÿÿÿ' ÿ\<ÿƒV,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿzP)ÿ4"ÿ ÿUB/ÿ'ÿ666ÿÍÍÍÿëëëÿ†††ÿ ÿsX?ÿqW>ÿ ÿ8%ÿ}R*ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿgD#ÿtL'ÿ|R*ÿÿ223ÿzzzÿÿÿ‚‚‚ÿ{{{ÿ\\\ÿDDDÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBýBBBžBBBBBB@@@CCCBBB*BBBÁBBBÿBBBÿBBBÿBBBÿ333ÿ ÿÿF.ÿ{Q)ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿ‡Y-ÿqJ&ÿ( ÿ ÿoU=ÿK9)ÿÿ¬¬¬ÿîîîÿíííÿàààÿZZZÿ ÿnOÿsX?ÿ ÿ/ÿvM'ÿˆY.ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‰Z.ÿcA!ÿ ÿHHHÿ€€€ÿÿÿrrrÿSSSÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBýBBB§AAABBB@@@DDDBBB-BBB¿BBBÿBBBÿBBBÿ@@@ÿ###ÿÿ ÿQ5ÿ~S*ÿ‡Y-ÿ‡Y-ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿ‡Y-ÿˆY.ÿ€T+ÿY:ÿÿÿ‡gJÿjQ:ÿ ÿ††‡ÿëëëÿìììÿìììÿîîîÿÏÏÏÿ9::ÿ%ÿ¤\ÿdHÿ ÿ ÿZ;ÿ€T+ÿˆY.ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿsL'ÿ! ÿÿmmmÿÿ}}}ÿfffÿJJJÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBüBBB£BBBBBBDDD@@@BBB&BBB´BBBþBBBÿBBBÿ999ÿÿÿÿ" ÿH/ÿiE#ÿ{Q)ÿ€T+ÿƒV,ÿƒV,ÿ€T+ÿvN(ÿY:ÿ* ÿ ÿ=/"ÿ¢|Yÿ‚cGÿ ÿgggÿãããÿíííÿìììÿìììÿìììÿîîîÿ»»»ÿ(((ÿ2&ÿ°ŠeÿyXÿ7*ÿ ÿ' ÿW9ÿxO(ÿ„W,ÿˆY.ÿˆY.ÿ‡Y-ÿ‡Y-ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿ‡Y-ÿ‡Y-ÿhE#ÿ! ÿÿYYYÿÿrrrÿUUUÿDDDÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBøBBB˜BBBBBB???CCCCCCBBB¡BBBùBBBÿAAAÿ(((ÿÿ5)ÿD5&ÿÿ ÿÿ& ÿ/ÿ/ÿ$ ÿ ÿ ÿ1&ÿaFÿÀ”jÿŠjLÿ ÿRSSÿÚÚÚÿîîîÿìììÿìììÿìììÿìììÿìììÿîîîÿ­­­ÿ ÿ6)ÿ³Œgÿ–nÿ|_Dÿ0%ÿ ÿ ÿ3!ÿM3ÿdA!ÿsL'ÿ{Q)ÿ~S*ÿ€T+ÿU+ÿ‚U,ÿ‚U,ÿU+ÿT+ÿzP)ÿV8ÿ ÿÿSSSÿtttÿ^^^ÿHHHÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBñBBBCCCBBBCCCCCCBBB„BBBðBBBÿ>>>ÿÿÿ›wUÿ°ˆbÿ…fIÿbK6ÿK:)ÿ@1$ÿA2$ÿN<+ÿkR;ÿ—tSÿ•kÿΟrÿ‚cGÿ ÿKKKÿÓÓÓÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿ©©©ÿ!!!ÿ/$ÿ¨„cÿÕ§|ÿÁ•kÿ’pPÿ]G3ÿ/%ÿ ÿ ÿ ÿÿ ÿ& ÿ*ÿ+ÿ+ÿ( ÿ$ ÿÿÿÿ%%%ÿZZZÿKKKÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBáBBBdBBBBBBCCCCCCBBB\BBBÙBBBÿ666ÿ ÿ.$ÿ¬ˆfÿÙ¬ƒÿÔ¦{ÿÌžsÿÇšoÿÇšoÿÌžrÿÔ¥yÿت€ÿ™sÿgP:ÿ ÿSSTÿÓÓÓÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿ±±±ÿ,--ÿÿ‹nSÿЦÿÖ¨|ÿÏŸsÿÁ”jÿ®†`ÿ‘pPÿy]CÿeN8ÿYD1ÿN<+ÿH7(ÿE5&ÿE5'ÿJ9)ÿP>-ÿ_I4ÿ5)ÿÿ000ÿBBBÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBýBBBÄCCCBFFFCCCCCCEEECCC4BBB®BBBø111ÿ ÿ%ÿ…lUÿá‚ÿÕ±ÿÜ·“ÿÞ¸”ÿÚµ“ÿÊ©Šÿ’x`ÿ6*ÿÿppqÿÛÛÛÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÃÃÃÿIIJÿ ÿYF4ÿµ’qÿÖ­‡ÿÖ©ÿÓ£wÿÒ¡tÿÒ¡tÿÒ¡tÿÏŸrÿËœpÿÉ›oÿÉšoÿÊ›oÿÍqÿÉšnÿlNÿÿÿ>>>ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBòBBB”BBB:::DDDGGGAAABBBBBBuAAAß111ÿÿÿ$ÿJ;.ÿfTBÿm[IÿZJ<ÿ-$ÿÿ===ÿ¤¥¥ÿçççÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÛÛÛÿ}}~ÿÿÿiUBÿ°‘sÿΩ†ÿ×­…ÿÕ¨|ÿÓ£vÿÒ¡tÿÓ¢tÿÓ¢tÿËœpÿ½‘hÿ—tSÿUA/ÿ ÿÿ444ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBþBBBÌBBBWCCC BBB>>>BBB<<<7999¬///õÿÿ'((ÿ-..ÿ''(ÿ889ÿ```ÿŸŸ ÿÛÛÛÿîîîÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿëëëÿ¿¿¿ÿdddÿÿÿ>>ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBçBBB‹BBB"JJJCCC$!!!|ÛÿŒŒŒÿÝÝÝÿØØØÿÝÝÝÿéééÿïïïÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿéééÿÅÅÅÿ‡‡‡ÿOOPÿ(((ÿÿÿÿÿ!!!ÿ()*ÿ ÿÿÿÿ)))ÿ444ÿ===ÿAAAÿBBBÿBBBÿBBBÿBBBðBBB¨BBB>BBBBBB@’÷’’’ÿñññÿíííÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿïïïÿåååÿ×××ÿÇÇÇÿºººÿ¸¸¹ÿÃÃÃÿÒÒÒÿ»»»ÿVVVÿÿ ÿÿ$$$ÿ000ÿ:::ÿ???ÿBBBÿBBBñBBB±BBBLAAA CCC'''E‘÷”””ÿðððÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿíííÿîîîÿîîîÿîîîÿîîîÿîîîÿÜÜÜÿ¨¨¨ÿ***ÿÿÿÿ,,,ÿ777þ===êAAA§BBBJBBB<<<DDD #Kœ ùžžžÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿçççÿÆÆÆÿxxxÿÿ ÿû###ã***¡,,,J%%%ÿÿÿ)S¦ û¨¨¨ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÓÓÓÿ®®®ÿ111ÿúˉK! .Z°ý²²²ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿàààÿÀÀÀÿpppÿüÊŒY.2`¹þ¾¾¾ÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿíííÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿéééÿÉÉÉÿ¡¡¡ÿÿá›e64bÀÿÌÌÌÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿïïïÿðððÿðððÿïïïÿîîîÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿïïïÿìììÿåååÿãããÿèèèÿïïïÿïïïÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÔÔÔÿ···ÿGGGÿñ¦k:2aÄ!!!ÿÕÕÕÿîîîÿìììÿìììÿìììÿìììÿíííÿëëëÿÍÍÍÿ   ÿ‡‡‡ÿ‰‰‰ÿ¡¡¡ÿÈÈÈÿáááÿîîîÿîîîÿìììÿìììÿìììÿìììÿîîîÿëëëÿÒÒÒÿ›››ÿkkkÿQQQÿMMMÿ[[[ÿ~~~ÿ³³³ÿßßßÿîîîÿíííÿìììÿìììÿìììÿìììÿíííÿÞÞÞÿÀÀÀÿrrrÿú³k;.^É///ÿÚÚÚÿîîîÿíííÿíííÿîîîÿïïïÿÙÙÙÿ}}}ÿ%%%ÿ ÿÿÿ ÿÿFFFÿŠŠŠÿÐÐÐÿíííÿðððÿðððÿëëëÿÆÆÆÿvvvÿ***ÿÿÿÿÿÿÿÿBBBÿ™™™ÿßßßÿïïïÿíííÿíííÿíííÿíííÿèèèÿÇÇÇÿ˜˜˜ÿÿ¿h8)XË888ÿÚÚÚÿìììÿèèèÿßßßÿÊÊÊÿ‘‘‘ÿ???ÿÿÿÿÿÿÿÿÿÿ,,,ÿsssÿœœœÿœœœÿkkkÿ"""ÿÿÿÿÿÿ ÿÿÿÿÿ ÿIIIÿ¥¥¥ÿ×××ÿâââÿäääÿâââÿÙÙÙÿ¬¬¬ÿpppÿÿÌe4 #QÌÿYYYÿfffÿ[[[ÿ@@@ÿÿÿÿÿ(((ÿbbbÿ………ÿ‘‘‘ÿ†††ÿeeeÿ***ÿÿÿÿÿÿÿÿÿÿCCCÿƒƒƒÿ¤¤¤ÿ¯¯¯ÿ£££ÿ‚‚‚ÿ@@@ÿÿÿÿ ÿ,,,ÿJJJÿQQQÿIIIÿ222ÿÿÿÿÖc/HÉÿÿÿÿÿÿÿÿCCCÿÓÓÓÿõõõÿûûûÿûûûÿûûûÿõõõÿØØØÿKKKÿÿÿÿÿÿÿÿVVVÿçççÿûûûÿûûûÿúúúÿûûûÿûûûÿåååÿQQQÿÿÿÿÿÿÿÿÿÿÿÿà_)<ÃÿÿÿÿÿÿÿÿHHHÿÛÛÛÿøøøÿûûûÿûûûÿûûûÿøøøÿßßßÿQQQÿÿÿÿÿÿÿÿAAAÿËËËÿïïïÿùùùÿûûûÿùùùÿïïïÿÈÈÈÿ<<<ÿÿÿÿÿÿÿÿÿ ÿÿÿäZ# .¶ÿ666ÿ///ÿ&&&ÿÿÿÿÿÿ111ÿoooÿ‘‘‘ÿÿ’’’ÿqqqÿ444ÿÿÿÿÿÿ ÿÿÿÿÿRRRÿsssÿ~~~ÿsssÿPPPÿÿÿÿÿ ÿ$$$ÿDDDÿ^^^ÿvvvÿÿ¡¡¡ÿ¢¢¢ÿPPPÿåQ ¢%%%ÿÉÉÉÿÛÛÛÿ×××ÿÎÎÎÿ¸¸¸ÿˆˆˆÿ>>>ÿ ÿÿÿÿÿÿÿÿÿ333ÿ‚‚‚ÿ®®®ÿ¶¶¶ÿ§§§ÿ‡‡‡ÿJJJÿ ÿÿÿÿÿÿÿÿÿ ÿNNNÿ¨¨¨ÿÓÓÓÿàààÿéééÿïïïÿðððÿåååÿÁÁÁÿSSSÿÞD‚þÃÃÃÿðððÿîîîÿîîîÿïïïÿïïïÿÜÜÜÿ¡¡¡ÿYYYÿ%%%ÿÿÿÿ ÿ'''ÿ{{{ÿÓÓÓÿîîîÿïïïÿïïïÿïïïÿðððÿàààÿ˜˜˜ÿHHHÿÿÿ ÿ ÿÿ)))ÿ\\\ÿ¥¥¥ÿàààÿïïïÿîîîÿíííÿìììÿìììÿìììÿâââÿ»»»ÿFFFÿÏ4Vò˜˜˜ÿïïïÿìììÿìììÿìììÿìììÿíííÿïïïÿçççÿÓÓÓÿµµµÿŸŸŸÿ–––ÿ¨¨¨ÿÐÐÐÿëëëÿîîîÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿâââÿÏÏÏÿ¸¸¸ÿ«««ÿ­­­ÿ¿¿¿ÿÖÖÖÿçççÿïïïÿíííÿìììÿìììÿìììÿìììÿìììÿíííÿáááÿ³³³ÿ///ÿ³ %Ò[[[ÿèèèÿíííÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿïïïÿïïïÿðððÿïïïÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿïïïÿïïïÿïïïÿîîîÿíííÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿÞÞÞÿ   ÿÿŠ Žÿ¿¿¿ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿîîîÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿÛÛÛÿsssÿñO4ÜWWWÿáááÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿìììÿÞÞÞÿÑÑÑÿÏÏÏÿØØØÿèèèÿïïïÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿÇÇÇÿ666ÿÄnõvvvÿäääÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿëëëÿÅÅÅÿxxxÿ;;;ÿýü,,,ÿ___ÿ¯¯¯ÿæææÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿëëëÿÿøh ‡ õdddÿÏÏÏÿîîîÿîîîÿíííÿìììÿìììÿìììÿìììÿíííÿîîîÿíííÿÏÏÏÿyyyÿ"""þàohˆËúcccÿÆÆÆÿíííÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿ¬¬¬ÿÿª sä///ÿ‰‰‰ÿÎÎÎÿæææÿîîîÿðððÿðððÿíííÿâââÿÇÇÇÿ€€€ÿ---ÿç/vÜ'''ÿ†††ÿÓÓÓÿíííÿïïïÿîîîÿîîîÿîîîÿîîîÿïïïÿïïïÿÞÞÞÿ‘‘‘ÿ ÿ¿(<¥ë$$$þUUUÿoooÿzzzÿyyyÿiiiÿHHHÿýå<1ì///ÿrrrÿ£££ÿÃÃÃÿÐÐÐÿÒÒÒÿÉÉÉÿ³³³ÿ………ÿAAAÿ õ¤& ;ƒ²ÉÔÓŦt3 B™Ö ïøýýúôã®W  ?\jkbM( ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿàÿÿÿÿ9ÿÿÿÿÿÿÿÿÿÀÿÿÿøÿÿÿÿÿÿÿÿ€ÿÿÿà?ÿÿÿÿÿÿÿÿ€ÿÀÿàÿÿÿÿÿÿÿÿÿàÿÿÿÿÿÿÿÿ~ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ~ÿÿÿÿÿÿÿÿ0ÿÿÿÿÿÿÿþÿÿÿÿÿÿÿþÿÿÿÿÿÿÿþ?ÿÿÿÿÿÿþÿÿÿÿÿÿþÿÿÿÿÿÿþÿÿÿÿÿÿþÿÿÿÿÿÿþÿÿÿÿÿþ?ÿÿÿÿÿþÿÿÿÿÿþÿÿÿÿÿþÿÿÿÿÿÿÿÿÿþÿÿÿÿüÿÿÿøÿÿÿøÿÿÿðÿÿÿàÿÿÿÀ?ÿÿÀÿÿ€ÿÿ€ÿ?þþþüüøøøðððààààààÀ?ÀÀÿÀÿÀÿÀÿÀÿÿÀÿÿÀÿÿÀÿÿÀÿÿÀÿÿàÿÿàÿÿàÿÿàÿÿàÿÿðÿÿðÿÿðÿÿð?ÿÿø?ÿÿø?ÿÿüÿÿüÿÿüÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÀÿÿÿÿÀÿÿÿÿàÿÿÿÿðÿÿÿÿð?ÿÿÿÿø?ÿÿÿÿüÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÀÿÿÿÿÿÿàÿÿÿÿÿÿðÿÿÿÿÿÿø?ÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿ€?ÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿàÿÿÿÿÿÿÿÿÿàÿÿÿÿÿÿÿÿÿôÿÿÿÿÿÿÿÿÿøÿÿÿÿÿÿÿÿÿú/ÿÿÿÿÿÿÿÿÿÿ_ÿÿÿÿÿÿÿÿÿÿ€~ÿÿÿÿÿÿÿÿÿÿÿàÿ€ÿÿÿÿÿÿÿÿÿÿÿøÿàÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ(`À × ×      #?SS@% (6:2 Gv–˜{O& ;;;AAAAAABBBBBBDDD444 #@`w}lJ% 6o©ÎÒ´€G###(444=>>>TBBBlBBB„BBB—BBB¥BBB®BBB²BBB¯@@@¥;;;...•• ±ÀÁ¨w@KŽËîóÛªk1AAACCC===777L333ˆ111¸444Ú999í???ùBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿAAAÿ>>>ÿ777ÿ+++ÿÿý ûùõã ³ i%"Z¢åþþòLJE   BBBBBBNBBB–@@@Ó:::õ111ÿ+++ÿ+++ÿ333ÿ<<<ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿ???ÿ999ÿ---ÿÿÿÿÿÿÿÿû%%%ä222©<<>>ÿ666ÿ)))ÿÿÿÿ"""ÿ111ÿ;;;ÿ@@@ÿAAAÿAAAÿAAAÿ>>>ÿ555ÿ'''ÿÿ ÿÿÿ999ÿGGGÿJJJÿ888ÿ ÿ$$$ÿ999ÿ@@@ÿBBBÿBBBþBBBäBBB•BBB4CCCCCC )xò<<<ÿJJJÿIIIÿ;;;ÿÿî$$$í777þ@@@ÿBBBÿBBBÿ@@@ÿ999ÿ---ÿÿÿÿÿÿ---ÿAAAÿQQQÿ\\\ÿbbbÿaaaÿXXXÿDDDÿ***ÿÿÿÿQQQÿ]]]ÿJJJÿIIIÿDDDÿÿ"""ÿ;;;ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBåBBBŠBBB$CCCBBB * ö@@@ÿJJJÿIIIÿ<<<ÿ'''ÿ ÿ"""ÿ666ÿ???ÿBBBÿAAAÿ<<<ÿ111ÿ"""ÿÿÿÿÿÿ000ÿKKKÿaaaÿpppÿwwwÿtttÿdddÿGGGÿ'''ÿ ÿ ÿRRRÿlllÿOOOÿIIIÿIIIÿDDDÿÿ$$$ÿ<<<ÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBþBBBÕBBBdBBB CCC * ÷@@@ÿJJJÿIIIÿ===ÿ+++ÿ ÿÿ444ÿ>>>ÿAAAÿ>>>ÿ777ÿ...ÿ!!!ÿÿÿD4%ÿÿ ÿÿ///ÿCCCÿTTTÿ^^^ÿ]]]ÿMMMÿ333ÿÿÿ???ÿqqqÿ[[[ÿIIIÿIIIÿJJJÿ???ÿÿ>>>ÿLLLÿDDDÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB÷BBB¦BBB*LLL@@@ +„ ÷AAAÿIIIÿIIIÿ>>>ÿ---ÿ ÿÿ222ÿ===ÿCCCÿJJJÿJJJÿ888ÿÿÿ1&ÿ¨\ÿT@.ÿÿ ÿÿ###ÿ111ÿ<<<ÿ<<<ÿ111ÿÿÿ"""ÿjjjÿjjjÿMMMÿIIIÿIIIÿJJJÿ777ÿÿcccÿxxxÿmmmÿWWWÿFFFÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÓBBBPBBBBBB ,‡ ùAAAÿIIIÿIIIÿ???ÿ///ÿÿÿ222ÿLLLÿgggÿgggÿMMMÿ+++ÿ ÿ ÿŽmNÿ½‘hÿxVÿ"ÿÿÿ ÿÿÿÿÿ ÿ ÿRRRÿrrrÿXXXÿIIIÿIIIÿIIIÿJJJÿ+++ÿÿoooÿÿ‚‚‚ÿÿpppÿVVVÿDDDÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBìBBBsCCC BBB 5²ÿBBBÿIIIÿIIIÿ@@@ÿ111ÿÿÿKKKÿpppÿvvvÿaaaÿ???ÿÿÿhP9ÿ¹Žfÿ¹Žfÿºgÿ‰iKÿÿÿÿÿÿÿÿÿ+++ÿoooÿgggÿKKKÿIIIÿIIIÿIIIÿIIIÿÿ444ÿxxxÿ€€€ÿÿÿ‚‚‚ÿ~~~ÿkkkÿOOOÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBöBBBŒ???OOO111"""...˜úÿCCCÿIIIÿIIIÿBBBÿ333ÿÿÿWWWÿoooÿpppÿXXXÿ444ÿ ÿ=/"ÿ°‡aÿºfÿ¹Žfÿ¹Žfÿºgÿ˜uTÿF6&ÿ ÿÿÿÿÿ ÿWWWÿqqqÿUUUÿHHHÿIIIÿIIIÿIIIÿAAAÿÿHHHÿtttÿ{{{ÿ}}}ÿ~~~ÿ~~~ÿ~~~ÿ~~~ÿuuuÿYYYÿBBBÿ>>>ÿ===ÿ===ÿ<<<ÿ===ÿ===ú;;;›&&&???AAA <<<Š666úÿÿDDDÿIIIÿIIIÿCCCÿ333ÿÿÿOOOÿiiiÿiiiÿPPPÿ%&&ÿ ÿ‘oPÿ»gÿ¹Žfÿ¹Žfÿ¹Žfÿ»gÿÊ›oÿÈ™nÿšvUÿ]G3ÿ,"ÿ ÿÿ***ÿoooÿdddÿJJJÿIIIÿIIIÿIIIÿJJJÿ111ÿÿHHHÿ```ÿhhhÿlllÿnnnÿnnnÿnnnÿmmmÿkkkÿhhhÿSSSÿ999ÿ111ÿ000ÿ000ÿ000ÿ111ÿ222û...¤1 AAABBBBBBz???÷777ÿÿÿDDDÿJJJÿJJJÿEEEÿ333ÿÿÿEEEÿaaaÿaaaÿGGGÿÿD4%ÿ¶Œdÿ¹Žfÿ¹Žfÿ¹ŽfÿºfÿÇ™mÿÏŸrÿПrÿÒ¡sÿÏŸrÿ•kÿ}`Eÿ ÿUUUÿqqqÿSSSÿIIIÿIIIÿIIIÿIIIÿGGGÿÿÿ111ÿ>>>ÿGGGÿLLLÿOOOÿOOOÿOOOÿMMMÿJJJÿGGGÿDDDÿ888ÿ$$$ÿÿÿÿÿ!!!ÿ$$$ü­R9& AAA111BBB_BBBð???ÿ777ÿÿÿAAAÿ;;;ÿ333ÿ222ÿ///ÿ$$$ÿ ÿ999ÿTTTÿVVVÿ<<<ÿ ÿvZAÿ¼gÿ¹Žfÿ¹Žfÿ¹ŽfÿÁ”kÿΟrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍžqÿVB/ÿÿRRRÿOOOÿBBBÿHHHÿJJJÿIIIÿJJJÿ999ÿÿ ÿÿÿ###ÿ'''ÿ***ÿ***ÿ)))ÿ(((ÿ%%%ÿ"""ÿ ÿÿÿÿ ÿ ÿ ÿÿÿú º{_C* GGGAAABBB=BBBáBBBÿ@@@ÿ888ÿÿÿÿ"""ÿ777ÿ333ÿÿÿÿ+++ÿDDDÿFFFÿ,,,ÿ ÿ—tSÿ»gÿ¹Žfÿ¹Žfÿ»gÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÒ¡sÿŸzWÿ ÿÿ&&&ÿ$$$ÿÿÿ555ÿHHHÿHHHÿÿÿÿÿÿ ÿ ÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿ ùË£„cB'BBBBBBBBBÁBBBÿBBBÿAAAÿ:::ÿÿÿ„„„ÿÊÊÊÿÜÜÜÿÚÚÚÿÁÁÁÿxxxÿÿÿ000ÿ222ÿÿ%ÿª‚^ÿºgÿ¹Žfÿ¹ŽfÿÀ“jÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿN<+ÿSTTÿÁÁÁÿÓÓÓÿÐÐÐÿ´´´ÿlllÿÿ%%%ÿ333ÿÿ;- ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøÝĦZ6 BBBCCCBBBŒBBBþBBBÿBBBÿAAAÿ;;;ÿ ÿ666ÿàààÿïïïÿíííÿíííÿïïïÿêêêÿWWWÿÿÿÿ ÿ<.!ÿ¶Œdÿ¹Žfÿ¹Žfÿ¹ŽfÿÄ–lÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÒ¡sÿ•rQÿ+(%ÿÃÄÄÿñññÿîîîÿîîîÿïïïÿìììÿ¥¥¥ÿ ÿÿbL6ÿƘmÿ•sRÿS@.ÿ&ÿ ÿÿÿÿÿ ÿ ÿ ÿÿ* ÿ:- ÿI8(ÿQ>-ÿQ>,ÿG6'ÿ5)ÿÿÿÿÿúíÛ¿™lB ???CCCBBBIBBBíBBBÿBBBÿBBBÿAAAÿAAAÿ:::ÿ+++ÿÒÒÒÿîîîÿìììÿìììÿìììÿïïïÿ———ÿÿ ÿ ÿÿ_I4ÿ»gÿ¹Žfÿ¹Žfÿ¹ŽfÿƘmÿÏŸrÿÏŸrÿÏŸrÿПrÿÇ™mÿB3%ÿsttÿìììÿìììÿìììÿìììÿìììÿíííÿåååÿ`aaÿÿ¯‡`ÿÑ¡sÿÒ¡sÿÍžqÿ½’hÿ§\ÿ™uTÿ’pPÿoOÿ•sRÿyVÿ¥[ÿ§€\ÿ¯†`ÿ·Œdÿ»gÿ¿’iÿÁ”jÿÁ”jÿÅ—lÿƘmÿµ‹dÿ‘pPÿYE1ÿ!ÿÿüöèϨzM+ BBBBBBBBB¼BBBÿBBBÿBBBÿBBBÿBBBÿZZZÿYYYÿÿ¿¿¿ÿïïïÿìììÿìììÿìììÿîîîÿÏÏÏÿ$$$ÿÿÿ ÿ‰jLÿ¼gÿ¹Žfÿ¹Žfÿ¹ŽfÿÈ™nÿÏŸrÿÏŸrÿÏŸrÿÒ¡sÿ‘oOÿ/-*ÿËËËÿîîîÿìììÿìììÿìììÿìììÿêêêÿ¹¹¹ÿ/.-ÿx\AÿРsÿÏŸrÿÏŸrÿÏŸrÿРsÿÑ¡sÿÒ¢tÿÒ¢tÿÒ¢tÿÒ¢tÿÑ¡sÿÉšnÿÕkÿ•kÿ”jÿÁ”jÿÁ”jÿ•kÿÉšoÿÏŸrÿПrÿÑ sÿÒ¡tÿÏŸrÿ¶Œdÿy]Cÿ-"ÿþûïØµŠa?' DDDAAABBBgBBBúBBBÿBBBÿBBBÿAAAÿRRRÿwwwÿfffÿÿ¡¡¡ÿïïïÿìììÿìììÿìììÿìììÿëëëÿdddÿÿÿ4(ÿ¯†aÿºfÿ¹Žfÿ¹Žfÿ»gÿËœpÿÏŸrÿÏŸrÿПrÿÇ™nÿB3$ÿuuvÿíííÿìììÿìììÿìììÿìììÿìììÿÚÚÚÿqrrÿ3'ÿ¿“iÿРsÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿÇ™nÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿÑ¡sÿ½‘hÿx\Bÿ$ÿýóàÄ¢`G2! BBBBBBBBBËBBBÿBBBÿBBBÿBBBÿFFFÿoooÿÿpppÿ###ÿ}}}ÿïïïÿìììÿìììÿìììÿìììÿïïïÿ°°°ÿÿ ÿ…fIÿ»gÿ¹Žfÿ¹Žfÿ¹ŽfÿÀ”jÿΞrÿÏŸrÿÏŸrÿÒ¡sÿ–sRÿ-*(ÿÈÉÉÿîîîÿìììÿìììÿìììÿìììÿèèèÿ¼¼½ÿ554ÿtY?ÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿƘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿƘmÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÑ sÿ´ŠcÿWC0ÿþ÷ëØÀ¥‹qW;"BBBBBBBBBhBBBûBBBÿBBBÿBBBÿAAAÿ[[[ÿ€€€ÿ€€€ÿwwwÿ555ÿRRRÿèèèÿìììÿìììÿìììÿìììÿíííÿãããÿHIIÿ?0!ÿ¶‹dÿ¹Žfÿ¹Žfÿ¹Žfÿ»gÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿËœpÿN;*ÿjkkÿìììÿìììÿìììÿìììÿìììÿíííÿÜÜÜÿ’’’ÿ&!ÿ¯†`ÿÑ sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌqÿÅ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿÉšnÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿÈšnÿiQ:ÿ ÿûõëÝ˶›wN(BBBBBBBBBÀBBBÿBBBÿBBBÿBBBÿHHHÿuuuÿ‚‚‚ÿ€€€ÿ{{{ÿMMMÿ---ÿÖÖÖÿíííÿìììÿìììÿìììÿìììÿïïïÿ£¤¤ÿ)"ÿŸzWÿ»gÿ¹Žfÿ»gÿÇ™nÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿ¥~Zÿ+&"ÿ¼¼¼ÿïïïÿìììÿìììÿìììÿìììÿëëëÿÌÌÌÿ`abÿE5&ÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÖkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÅ—lÿÌœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÀ“iÿ|`Dÿ ÿþüøñçÔ´„O# BBBBBBKBBBôBBBÿBBBÿBBBÿAAAÿ\\\ÿ€€€ÿÿÿ~~~ÿcccÿÿ³³³ÿïïïÿìììÿìììÿìììÿìììÿíííÿâââÿNNNÿT?-ÿºŽfÿÀ“jÿÉ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿ\F1ÿWXXÿèèèÿìììÿìììÿìììÿìììÿíííÿãããÿ¹¹¹ÿ888ÿvZ@ÿÒ¡tÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΟrÿÈšnÿ•kÿÁ”jÿÁ”jÿÁ”jÿ•kÿÈšnÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿÈšnÿ•kÿÁ”jÿ•kÿ¥[ÿZE1ÿÿÿþûóÞµ|BBBBBBBBBB˜BBBÿBBBÿBBBÿBBBÿFFFÿrrrÿ‚‚‚ÿÿÿÿsssÿ$$$ÿ{{{ÿîîîÿìììÿìììÿìììÿìììÿìììÿïïïÿµµ¶ÿ'# ÿ”qQÿÑ sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ sÿ°‡aÿ+$ÿ¬¬¬ÿïïïÿìììÿìììÿìììÿìììÿíííÿØØØÿ¡¢¢ÿ&# ÿ£|YÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿƘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÅ—mÿÌpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍqÿƘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÀ”jÿ¤~ZÿmT<ÿ6)ÿ ÿþõئg0BBBBBBBBBÖBBBÿBBBÿBBBÿAAAÿUUUÿÿÿÿÿ€€€ÿ{{{ÿ???ÿCCCÿâââÿíííÿìììÿìììÿìììÿìììÿìììÿëëëÿzz{ÿ4)ÿ·ŒeÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿРsÿlR:ÿIIIÿâââÿíííÿìììÿìììÿìììÿìììÿëëëÿÎÎÎÿƒ„…ÿ/&ÿ½‘hÿРsÿÏŸrÿÏŸrÿÏŸrÿΞqÿƘmÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿÊ›oÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿÖkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÄ–lÿ¿“iÿ¨\ÿsY?ÿ ÿñÇŒLBBBBBBNBBB÷BBBÿBBBÿBBBÿBBBÿgggÿ‚‚‚ÿÿÿÿÿÿ^^^ÿ!!!ÿÀÀÀÿïïïÿìììÿìììÿìììÿìììÿìììÿíííÿÞÞÞÿRRRÿH7'ÿ¿’iÿÒ¡sÿÏŸrÿÑ sÿ¶‹dÿ.&ÿžžŸÿïïïÿìììÿìììÿìììÿìììÿìììÿæææÿÄÄÄÿccdÿG6&ÿÌqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÇ™nÿÁ”jÿÁ”jÿÁ”jÿƘmÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌœpÿƘmÿ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ—lÿË›pÿÏŸrÿÑ¡sÿÒ¡sÿ¡|Yÿ þà _( CCCAAABBB‰BBBÿBBBÿBBBÿBBBÿHHHÿvvvÿ‚‚‚ÿÿÿÿÿ€€€ÿtttÿ###ÿƒƒƒÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÐÐÐÿGGFÿE5%ÿ®…_ÿРrÿÍqÿaJ4ÿHHHÿàààÿíííÿìììÿìììÿìììÿìììÿíííÿÝÝÝÿ»»»ÿCDDÿkQ9ÿÑ¡sÿÏŸrÿÏŸrÿÏŸrÿËœpÿ•kÿÁ”jÿÁ”jÿÇ™nÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿËœoÿƘmÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÈšnÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿƒeHÿô£Y' BBBBBB BBB»BBBÿBBBÿBBBÿAAAÿSSSÿ~~~ÿÿÿÿÿÿÿ}}}ÿBBBÿ???ÿàààÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÓÓÓÿ__`ÿ-&ÿWB/ÿO<*ÿ/,)ÿ¶¶¶ÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿÓÓÓÿ°°°ÿ0//ÿ‰hJÿÒ¢tÿÏŸrÿÏŸrÿÏŸrÿƘmÿÁ”jÿÁ”jÿƘmÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿÌpÿÉšoÿƘmÿÖkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿÇ™mÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРrÿƘmÿE5&ÿºABBBBBB"BBBàBBBÿBBBÿBBBÿAAAÿ```ÿÿÿÿÿÿÿÿÿbbbÿÿ¬¬¬ÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿåååÿ®®¯ÿvvwÿwxxÿ¼½½ÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿêêêÿËËËÿ¡¡¡ÿ(%!ÿ¤~ZÿÑ¡sÿÏŸrÿÏŸrÿÌpÿ•kÿÁ”jÿÄ—lÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍqÿÉ›oÿƘmÿÄ–lÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿÇ™nÿÌpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿ¡|Yÿ ï] BBBBBBBBBBòBBBÿBBBÿBBBÿCCCÿlllÿ‚‚‚ÿÿÿÿÿÿÿ}}}ÿmmmÿ&&&ÿZZZÿèèèÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿïïïÿïïïÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿæææÿÄÄÄÿÿ)"ÿ¹ŽfÿРsÿÏŸrÿÏŸrÿÇ™nÿÁ”jÿ•kÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌœpÿƘmÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÅ—mÿÉ›oÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÒ¡sÿ¶Œdÿ-"ÿ–???BBBBBB`BBBþBBBÿBBBÿBBBÿGGGÿtttÿ‚‚‚ÿÿÿÿÿÿ€€€ÿzzzÿhhhÿ;;;ÿÿºººÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿßßßÿÀÀÀÿyz{ÿ8,!ÿÄ–kÿРrÿÏŸrÿÍžqÿÖkÿÁ”jÿÇ™nÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍqÿÇ™mÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÕkÿÄ–lÿÅ—lÿƘmÿÇ™mÿÈšnÿËœpÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿРsÿ¢|Yÿ7*û©"AAACCCBBB{BBBÿBBBÿBBBÿAAAÿKKKÿzzzÿÿÿÿÿÿÿÿvvvÿ___ÿ<<<ÿ ÿ]]]ÿèèèÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿ×××ÿ¾¾¾ÿcdeÿH7'ÿÍqÿÏŸrÿÏŸrÿÊ›oÿÁ”jÿÖkÿÍžqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿÖkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÖkÿÇ™mÿÊ›oÿÍqÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÒ¡sÿ¾’iÿqV>ÿë€BBB>>>BBB“BBBÿBBBÿBBBÿAAAÿPPPÿ~~~ÿÿÿÿÿÿÿ~~~ÿqqqÿVVVÿ111ÿ ÿÿªªªÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÏÏÏÿ»»»ÿQQRÿ\F1ÿÑ sÿÏŸrÿΟrÿÅ—mÿÁ”jÿÉšoÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿÈšnÿ•jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÅ—lÿÊ›oÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÒ¡sÿРsÿ½‘hÿcGÿ2'ø»EBBBDDDBBB¢BBBÿBBBÿBBBÿAAAÿTTTÿÿÿÿÿÿÿÿ|||ÿkkkÿMMMÿ!!"ÿ#ÿVA.ÿ=<;ÿÔÔÔÿïïïÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿêêêÿÊÊÊÿ¶¶¶ÿ@@@ÿsW>ÿÒ¡sÿÏŸrÿÌpÿ•kÿÄ–lÿΞqÿÏŸrÿÏŸrÿÏŸrÿΞqÿǘmÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ–lÿÊ›oÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿРsÿÑ¡sÿÒ¢tÿÓ¢tÿÒ¡tÿÓ¢tÿÓ¢tÿÒ¢tÿÒ¢tÿÒ¢tÿÓ¢tÿÒ¢tÿРsÿÌpÿ¼gÿ›wUÿeN8ÿ,"õÁaBBBBBBBBB­BBBÿBBBÿBBBÿAAAÿVVVÿÿÿÿÿÿÿÿzzzÿfffÿEEEÿÿT@.ÿÀ“iÿD4%ÿ\\]ÿØØØÿæææÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿãããÿŽŽŽÿFFFÿÿ‹jLÿÓ¢tÿÏŸrÿÈ™nÿÁ”jÿÉ›oÿÏŸrÿÏŸrÿÏŸrÿΟrÿÇ™mÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÇ™nÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿПrÿÀ“jÿ¥Zÿ‹jLÿ{^CÿuZ@ÿ{^Cÿ‚cFÿŠjKÿlMÿŠjLÿ†gIÿy]BÿbK6ÿE5&ý(ð Ñ—LBBBBBBBBB°BBBÿBBBÿBBBÿAAAÿWWWÿ€€€ÿÿÿÿÿÿ€€€ÿwwwÿaaaÿ;;;ÿ ÿ‰iKÿÔ£uÿ±ˆaÿ2'ÿ122ÿVVVÿ½½½ÿíííÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÑÑÑÿdddÿÿÿ ÿN<+ÿ¼hÿÏŸrÿÖkÿÄ–kÿΞqÿÏŸrÿÏŸrÿÏŸrÿÉšnÿÁ”jÿÁ”jÿÁ”jÿ”jÿÈšnÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿËœpÿ¢|Yÿ`J4ÿ2'ÿ$!ÿ('&ÿ---ÿ011ÿ-..ÿ***ÿÿÿÿÿÿÝj;BBBBBBBBB­BBBÿBBBÿBBBÿAAAÿVVVÿÿÿÿÿÿ€€€ÿ}}}ÿpppÿWWWÿ,--ÿÿ±ˆaÿÒ¢tÿ²‰bÿ+"ÿÿÿ"""ÿ’’’ÿéééÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿ¹¹¹ÿ777ÿÿ888ÿHHHÿ===ÿÿR?-ÿÄ–lÿ•jÿÉšnÿÏŸrÿÏŸrÿÏŸrÿÌpÿ•kÿÁ”jÿÁ”jÿÁ”jÿÇ™nÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿПrÿРsÿ«ƒ^ÿS?-ÿ!ÿ445ÿZZ[ÿqqrÿ|}}ÿ€€€ÿ€€€ÿ€€€ÿ€€€ÿYYYÿ???ÿ@AAÿAAAÿBBBÿBBB¼CCC CCCBBBCCCBBB¤BBBÿBBBÿBBBÿAAAÿTTTÿÿÿÿÿÿ|||ÿsssÿaaaÿFFFÿÿ7+ÿÇ™nÿÓ¢tÿnT<ÿÿEEEÿHHHÿ///ÿÿ‘‘‘ÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÇÇÇÿ///ÿÿDDDÿJJJÿIIIÿJJJÿ:::ÿÿ¥[ÿƘmÿÍžqÿÏŸrÿÏŸrÿΟrÿƘmÿÁ”jÿÁ”jÿÁ”jÿÅ—lÿΞqÿÏŸrÿÏŸrÿÏŸrÿРsÿÊ›oÿ€bFÿ%ÿ344ÿiiiÿ€€€ÿƒƒƒÿ‚‚‚ÿÿÿÿÿ€€€ÿXXXÿAAAÿBBBÿBBBÿBBBÿBBB³BBBBBBBBB<<<BBB”BBBÿBBBÿBBBÿAAAÿPPPÿ~~~ÿÿÿ€€€ÿ{{{ÿqqqÿ```ÿHHHÿ...ÿ ÿYE1ÿÒ¡sÿ¾’hÿ=/!ÿ$%&ÿJJJÿIIIÿJJJÿ...ÿ&&&ÿÈÈÈÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿrrrÿÿGGGÿJJJÿIIIÿIIIÿIIIÿDDDÿÿJ8(ÿ¤~ZÿΟrÿÑ sÿÏŸrÿËœpÿ•jÿÁ”jÿÁ”jÿ•kÿÌœpÿÏŸrÿÏŸrÿÏŸrÿРsÿÖlÿ_I4ÿÿUUVÿ~~~ÿ‚‚‚ÿÿÿÿÿÿÿÿÿTTTÿAAAÿBBBÿBBBÿBBBÿBBB¦BBBBBBBBBBBBBBB~BBBÿBBBÿBBBÿAAAÿLLLÿzzzÿÿ€€€ÿ}}}ÿrrrÿ___ÿFFFÿ,,,ÿÿÿiQ:ÿ‡gJÿ2'ÿÿ;;;ÿJJJÿIIIÿIIIÿFFFÿÿŠŠŠÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿëëëÿ^^^ÿ'''ÿVVVÿJJJÿIIIÿIIIÿIIIÿIIIÿ566ÿÿÿeM7ÿ³ŠcÿÏŸrÿƘmÿÁ”jÿÁ”jÿÁ”jÿÈšnÿÏŸrÿÏŸrÿÏŸrÿРsÿÁ•kÿR?-ÿ!! ÿgggÿ‚‚‚ÿÿÿÿÿÿÿÿÿÿ|||ÿOOOÿAAAÿBBBÿBBBÿBBBÿBBB’CCC:::FFFBBBBBBbBBBÿBBBÿBBBÿBBBÿGGGÿuuuÿ‚‚‚ÿÿwwwÿeeeÿIIIÿ,,,ÿÿÿÿÿÿ+,,ÿDDDÿIIIÿIIIÿIIIÿIIIÿJJJÿÿeeeÿîîîÿîîîÿîîîÿîîîÿîîîÿîîîÿîîîÿìììÿŠŠŠÿÿRRRÿRRRÿIIIÿIIIÿIIIÿDDDÿ555ÿ...ÿ&&&ÿÿ%ÿqW>ÿ³‰bÿÖkÿÁ”jÿÄ–lÿÍžqÿÏŸrÿÏŸrÿРsÿŘmÿUA.ÿ#""ÿmmmÿ‚‚‚ÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿxxxÿIIIÿBBBÿBBBÿBBBÿBBBÿBBBuBBBBBBBBBDBBBóBBBÿBBBÿBBBÿCCCÿmmmÿ‚‚‚ÿ|||ÿoooÿUUUÿ444ÿÿÿÿ ÿ(((ÿBBBÿJJJÿIIIÿHHHÿHHHÿLLLÿJJJÿKKKÿ%%%ÿ'''ÿiiiÿmmmÿnnnÿnnnÿkkkÿcccÿ\\\ÿSSSÿ777ÿÿ%%%ÿWWWÿTTTÿLLLÿJJJÿEEEÿ888ÿ111ÿ000ÿ///ÿ!""ÿÿ4(ÿ’pPÿ”jÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÌœpÿfN7ÿÿkkkÿ‚‚‚ÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿpppÿEEEÿBBBÿBBBÿBBBÿBBBûBBBRBBBBBBBBB$BBBâBBBÿBBBÿBBBÿAAAÿaaaÿ€€€ÿwwwÿcccÿDDDÿ$$$ÿ ÿÿÿ>>>ÿJJJÿIIIÿIIIÿIIIÿ@@@ÿ>>>ÿXXXÿ\\\ÿYYYÿ$$$ÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿEEEÿ==>ÿ777ÿIIIÿHHHÿ@@@ÿ444ÿ000ÿ///ÿ***ÿÿÿz]CÿÌpÿРsÿÏŸrÿРsÿƒdHÿÿ___ÿÿÿÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿfffÿBBBÿBBBÿBBBÿBBBÿBBBêBBB2BBBBBBBBBBBB¿BBBÿBBBÿBBBÿAAAÿTTTÿyyyÿnnnÿSSSÿ333ÿÿÿ)))ÿGGGÿJJJÿIIIÿIIIÿIIIÿFFFÿ555ÿ000ÿ&&&ÿ++,ÿ##$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿ ÿÿ@@@ÿJJJÿIIIÿEEEÿ999ÿ...ÿ,,,ÿ,,,ÿ#$$ÿÿsX?ÿÉšoÿÓ¢tÿ¦[ÿ ÿ@@Aÿvvvÿÿÿÿÿÿÿÿÿÿÿÿÿ€€€ÿXXXÿAAAÿBBBÿBBBÿBBBÿBBBÎAAAAAABBBBBBBBBBBBÿBBBÿBBBÿAAAÿGGGÿjjjÿ___ÿ@@@ÿ ÿÿ(((ÿIIIÿIIIÿIIIÿIIIÿIIIÿHHHÿ:::ÿ111ÿÿ ÿ( ÿ" ÿÿ ÿÿÿÿÿÿÿÿÿ ÿ ÿ/ÿM2ÿT7ÿ4"ÿÿ ÿHHHÿIIIÿIIIÿHHHÿ<<<ÿ///ÿ333ÿ111ÿÿ ÿ^H4ÿ´Šcÿ@1#ÿÿPPPÿlllÿzzzÿ€€€ÿÿÿÿÿÿÿÿÿÿÿzzzÿLLLÿAAAÿBBBÿBBBÿBBBÿBBBžAAABBBBBBBBBRBBBùBBBÿBBBÿAAAÿ???ÿSSSÿNNNÿ---ÿÿÿ&''ÿDDDÿJJJÿIIIÿIIIÿIIIÿ===ÿ111ÿ'''ÿÿ$ ÿY;ÿqK&ÿzP)ÿpJ&ÿjF$ÿ^> ÿR6ÿL2ÿK1ÿN3ÿX9ÿdB"ÿoI%ÿ|Q*ÿ…W,ÿˆY.ÿtL'ÿI0ÿ ÿ ÿ///ÿJJJÿIIIÿIIIÿIIIÿAAAÿ...ÿ ÿ?)ÿ`? ÿ'ÿ&ÿ ÿÿ>>>ÿ]]]ÿsssÿ~~~ÿÿÿÿÿÿÿÿÿÿ‚‚‚ÿlllÿDDDÿBBBÿBBBÿBBBÿBBBüBBBcBBB<<<BBBBBBBBBÙBBBÿBBBÿAAAÿ<<<ÿ===ÿ<<<ÿÿÿ ÿ ÿÿ==>ÿJJJÿIIIÿ>>>ÿ111ÿ...ÿÿ ÿ)ÿZ<ÿxO(ÿˆY.ÿ‡Y-ÿ‡X,ÿ‡X-ÿ‡Y-ÿ‡Y-ÿ‡X,ÿ‡X,ÿ†W,ÿ†W+ÿ†W,ÿ†X-ÿ‰\2ÿˆZ/ÿzP)ÿX:ÿ ÿ"ÿÿ888ÿJJJÿIIIÿJJJÿ;;<ÿ ÿI0ÿ„W-ÿˆZ.ÿuM'ÿ*ÿÿÿ---ÿOOOÿlllÿ|||ÿÿÿÿÿÿÿÿÿÿ€€€ÿYYYÿAAAÿBBBÿBBBÿBBBÿBBBãBBB*BBBBBBBBBBBB›BBBÿBBBÿAAAÿ;;;ÿ000ÿ...ÿÿ ÿlG$ÿyO)ÿ/ÿÿBBBÿ???ÿ111ÿ111ÿÿ9, ÿ3'ÿ0ÿ\=ÿ{Q)ÿ†X-ÿŠ\2ÿ”iAÿ’g?ÿ‘f>ÿ“h@ÿ•kDÿ™pIÿŸwRÿ¨‚_ÿ´‘qÿ¿Ÿ‚ÿä‡ÿ“h?ÿ€T*ÿa@!ÿ<'ÿ#ÿN<+ÿÿ<<<ÿJJJÿGGGÿÿ4"ÿƒV,ÿ‡X-ÿ†X-ÿ‡Y-ÿzP)ÿ.ÿÿ"""ÿFFFÿfffÿzzzÿ€€€ÿÿÿÿÿÿÿÿ‚‚‚ÿvvvÿIIIÿBBBÿBBBÿBBBÿBBBÿBBB«BBBBBBBBBBBBMBBBõBBBÿAAAÿ;;;ÿ...ÿÿ ÿS6ÿ‡Y-ÿˆY.ÿwN(ÿ ÿ""#ÿ444ÿ111ÿ !ÿ&ÿv[Aÿ ÿH0ÿ^> ÿ~S*ÿ†W,ÿ•kDÿÇ©Žÿɬ‘ÿÉ«ÿɬ‘ÿË®“ÿʬ‘ÿÇ©ÿÄ¥ˆÿº™zÿ®Šiÿ£|Xÿ‹^4ÿ…W,ÿkG$ÿT8ÿ ÿ]H3ÿ[F2ÿÿ<<<ÿ677ÿ ÿnH%ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿxO(ÿ" ÿÿCCCÿeeeÿyyyÿ€€€ÿÿÿÿÿÿÿÿÿaaaÿBBBÿBBBÿBBBÿBBBÿBBBúBBB^BBBCCCBBBBBBBBBÂBBBÿAAAÿ===ÿ000ÿ ÿ7$ÿ‚V,ÿ†X-ÿ†X-ÿˆY.ÿU8ÿ ÿ///ÿ!!"ÿ ÿnOÿS@.ÿ% ÿX:ÿ`? ÿU+ÿ†X-ÿ‡Y.ÿ™pJÿ¶“sÿ¼›}ÿ§]ÿŽb9ÿ˜nHÿ©„aÿ‹^4ÿ„U*ÿ’g>ÿË®“ÿuPÿ†W,ÿyP)ÿ\=ÿ@*ÿÿšvUÿaJ5ÿÿÿ4"ÿ…W-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿeB"ÿ ÿ<<<ÿhhhÿzzzÿÿÿÿÿÿÿÿ‚‚‚ÿxxxÿLLLÿAAAÿBBBÿBBBÿBBBÿBBBÑBBBBBBCCCAAABBBjBBBüBBBÿ???ÿ/00ÿ ÿhD#ÿˆY.ÿ†X-ÿ†X-ÿˆY.ÿsL'ÿÿ ÿÿeM8ÿžzWÿÿE-ÿY;ÿdB!ÿ„W,ÿ…W,ÿ™oHÿÖ»£ÿâʵÿÝÄ®ÿâ˶ÿ²nÿ©„bÿ߯°ÿ•kCÿƒT)ÿ’g>ÿßDZÿ¯‹jÿ…V+ÿ„V,ÿfC"ÿW:ÿ% ÿG7'ÿÀ“iÿx\Bÿ ÿI0ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ„V,ÿ.ÿ-./ÿmmmÿ|||ÿÿÿÿÿÿÿÿÿ```ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB}DDDAAABBBBBBBBBÌBBBÿAAAÿ444ÿ ÿjE#ÿˆY.ÿ†X-ÿ„W,ÿ^=ÿ4"ÿ2!ÿ>(ÿ6#ÿ ÿÿ# ÿX:ÿX;ÿjF$ÿ…W-ÿ‡Y/ÿäˆÿÝÅ®ÿžvQÿ‘f=ÿÁ¢…ÿßDZÿ¯‹jÿàɳÿ¡zUÿžvQÿšqKÿÖ¼¤ÿ»™{ÿ…W+ÿ‡X-ÿwN(ÿ\=ÿM3ÿ ÿ~aEÿÄ–lÿ0%ÿ4"ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿ?)ÿ))*ÿrrrÿ~~~ÿÿÿÿÿÿÿ‚‚‚ÿtttÿIIIÿBBBÿBBBÿBBBÿBBBÿBBBÚBBB&BBBAAABBBBBBhBBBúBBBÿ<<<ÿÿN3ÿˆY.ÿ‡Y-ÿvN(ÿH/ÿhD#ÿ‚V,ÿ‡Y-ÿ†X-ÿoI%ÿ.ÿ" ÿV9ÿY;ÿqK&ÿ†X-ÿŠ\2ÿѶÿͰ–ÿ†Y.ÿ‚S'ÿ¥[ÿä͹ÿ°ŒkÿÞÆ°ÿ¯ŒjÿÔ¹ ÿ¼›}ÿβ˜ÿƧ‹ÿ‡Y.ÿ†X-ÿ„W,ÿhE#ÿY;ÿ9&ÿ%ÿbL6ÿ ÿ4"ÿƒV,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ„W,ÿ-ÿ9:;ÿyyyÿ€€€ÿÿÿÿÿÿÿ~~~ÿWWWÿAAAÿBBBÿBBBÿBBBÿBBBþBBB|333AAAAAAAAABBB½BBBÿAAAÿ##$ÿ$ ÿ~R*ÿ‡X-ÿ„W,ÿ…W-ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿzP)ÿ# ÿ:&ÿ\=ÿzP)ÿ†X-ÿ†X-ÿ»š|ÿãÌ·ÿ¯‹jÿ xSÿϲ˜ÿÛ«ÿšqJÿÕº¢ÿÕº¢ÿâʵÿâʵÿâ˵ÿ·–vÿ…W,ÿ†X-ÿ†X-ÿ}R*ÿ_? ÿW9ÿ% ÿÿA+ÿgC"ÿU+ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿwN(ÿ ÿRRRÿ}}}ÿÿÿÿÿÿÿÿeeeÿCCCÿBBBÿBBBÿBBBÿBBBÿBBBÍBBBBBB@@@CCCBBBIBBBíBBBÿ999ÿÿR6ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿO4ÿ ÿ]=ÿƒV,ÿ†X-ÿ…W,ÿe<ÿǨŒÿâ˶ÿãÌ·ÿÙ¿¨ÿ¥~[ÿ„V*ÿ¢{WÿͰ–ÿĦ‰ÿº™zÿ¹˜yÿuOÿŒ`7ÿ†X-ÿ†X-ÿ†X-ÿuM'ÿ\=ÿL3ÿ! ÿfC"ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿ^=ÿÿgggÿ~~~ÿÿÿÿÿÿ‚‚‚ÿpppÿHHHÿBBBÿBBBÿBBBÿBBBÿBBBõBBB\CCCBBBBBBBBBBBBŒBBBþBBBÿ())ÿ ÿoI%ÿ‡Y.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿvM(ÿ ÿ\<ÿ‡Y-ÿ†X-ÿ†X-ÿ‹^4ÿ¡yUÿ±Žmÿµ“sÿ¨‚_ÿŸwQÿ£|Xÿª…bÿ¶”tÿ¿Ÿ‚ÿŦŠÿË®“ÿË®”ÿŸwRÿ…W,ÿ†X-ÿ†X-ÿ…X-ÿqK&ÿ[<ÿnH%ÿ…W-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ…W-ÿ5#ÿ*++ÿqqqÿÿÿÿÿÿ‚‚‚ÿwwwÿNNNÿAAAÿBBBÿBBBÿBBBÿBBBÿBBB¡CCC CCCBBBBBBBBBÁBBBÿ???ÿÿ(ÿzP)ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿS7ÿb@!ÿˆY.ÿ†X-ÿ…W,ÿ”iBÿÄ¥‰ÿƨŒÿŧ‹ÿƨŒÿƨŒÿĦ‰ÿÀ¡ƒÿº˜zÿ¯‹jÿ¥~Zÿ™pIÿd;ÿˆ[0ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ…W-ÿvN(ÿ€T+ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿlG$ÿ ÿGGHÿtttÿÿÿÿÿ‚‚‚ÿzzzÿSSSÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÒBBB)BBB(((CCCBBB>BBBâBBBÿ;;;ÿÿ1 ÿzP)ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‚V,ÿ€T+ÿ†X-ÿ†X-ÿ†X-ÿ†X.ÿˆZ0ÿˆ[1ÿˆ[0ÿ‰[0ÿ‡Y/ÿ†X.ÿ„W-ÿ‚U+ÿ€S)ÿƒU*ÿ…W,ÿ…W,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿ€T+ÿ-ÿÿ]]]ÿvvvÿ€€€ÿÿÿ‚‚‚ÿzzzÿVVVÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBìBBBOBBBBBBBBB@@@BBBaBBBñCCCÿ999ÿÿ$ ÿa@ ÿ€T+ÿ‡Y-ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ…W-ÿT7ÿ-ÿ( ÿ$ ÿ$ ÿ&ÿB+ÿ€T+ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿN3ÿ ÿÿeeeÿzzzÿ€€€ÿÿ‚‚‚ÿxxxÿUUUÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB÷BBBtBBBBBBCCCCCCBBBzBBB÷CCCÿ===ÿ!""ÿ ÿ$ ÿI0ÿpI%ÿ„W,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿ…W-ÿN3ÿÿ ÿ.//ÿuvvÿ#$$ÿ>0"ÿ2&ÿ:&ÿ€T+ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿwN(ÿA*ÿO3ÿÿiijÿ~~~ÿÿ‚‚‚ÿtttÿQQQÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBûBBBŽCCC CCCBBBBBB BBBˆBBBùBBBÿBBBÿ111ÿÿ ÿP5ÿ€T+ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿU+ÿG.ÿ%ÿR?-ÿ)%!ÿ°°°ÿñññÿ››œÿ,%ÿ|_Dÿ4'ÿ7$ÿ|Q*ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿT+ÿ€T+ÿ]=ÿÿsssÿÿ€€€ÿkkkÿKKKÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBüBBB›BBBBBBBBBBBB BBB‹BBBøBBBÿAAAÿ$$$ÿÿ;'ÿxO(ÿ‡X-ÿˆY.ÿ‡Y-ÿ‡Y-ÿ‡Y-ÿˆY.ÿ‡X-ÿrK&ÿ4"ÿ0$ÿv[Aÿ.%ÿ†‡‡ÿìììÿíííÿèèèÿsttÿ6*ÿ’pQÿ>0"ÿ(ÿfC"ÿ„W,ÿˆY.ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿxO(ÿ& ÿ<==ÿÿzzzÿ^^^ÿEEEÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBûBBB›CCCBBBBBBBBB BBBBBBôBBBÿ;;;ÿÿÿ" ÿ='ÿ[<ÿmG$ÿsK&ÿpJ%ÿa? ÿ>)ÿ! ÿQ>,ÿ–sSÿ;-!ÿgggÿåååÿíííÿìììÿíííÿßßßÿZ[[ÿB3&ÿ§_ÿdM8ÿ!ÿ2!ÿ\<ÿxO(ÿƒV,ÿ‡Y-ÿˆY.ÿˆY.ÿˆY.ÿˆY.ÿˆY.ÿˆY.ÿˆY.ÿoI%ÿ& ÿ***ÿqqqÿlllÿOOOÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB÷BBBBBBBBB111CCCCCCBBBhBBBçBBBÿ*++ÿÿlS<ÿ^H4ÿ5(ÿ*ÿ(ÿ)ÿ0$ÿUA.ÿ™vUÿ®…`ÿ@1#ÿWWWÿÜÜÜÿîîîÿìììÿìììÿìììÿîîîÿØØØÿQRRÿA3&ÿ´hÿª„`ÿaJ5ÿ/#ÿ"ÿ-ÿ=(ÿI/ÿR5ÿX9ÿY:ÿX9ÿT7ÿB+ÿÿÿ\\\ÿWWWÿDDDÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBíBBBvBBB AAABBBBBBBBBHBBBÍ@@@ÿÿ;.!ÿµŽjÿË wÿ¹iÿ®‡bÿ²ŠdÿÄ™pÿѤzÿ£]ÿ6+ÿZZZÿÙÙÙÿîîîÿìììÿìììÿìììÿìììÿìììÿîîîÿרØÿZZ[ÿ5+ ÿ£€`ÿÓ¦|ÿÁ•lÿŸzXÿ~aEÿaK6ÿN<+ÿE5&ÿ?0"ÿ=.!ÿ>0"ÿD4%ÿE5&ÿ ÿ%%%ÿFFFÿAAAÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÕBBBSAAAAAADDDAAABBB$CCC<<<õÿ/&ÿˆoXÿ¸˜yÿ̨†ÿ˨‡ÿ®tÿfR@ÿ+&"ÿwwxÿßßßÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿàààÿyyyÿ+%!ÿmVAÿ¾™wÿج‚ÿר|ÿÔ£vÿРsÿÌpÿÉ›oÿÉšoÿÈ™nÿµ‹dÿ^H4ÿÿ888ÿBBBÿBBBÿBBBÿBBBÿBBBÿBBBÿBBB÷BBB©BBB,TTTCCCBBBCCC BBB]888Òþÿ"ÿ6.(ÿ5/(ÿ30-ÿYYYÿ³³³ÿêêêÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿëëëÿ®®¯ÿIIHÿ1*#ÿeR@ÿš|`ÿ²Œhÿ¸fÿ¶‹dÿª‚]ÿlMÿaK6ÿ) ÿ ÿ+++ÿ???ÿBBBÿBBBÿBBBÿBBBÿBBBþBBB×BBBfCCC BBBRRR&&&3%%%¤ ó]^^ÿµµ¶ÿ´µµÿÍÎÎÿèèèÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿïïïÿáááÿ¨¨©ÿbccÿ;97ÿ1,'ÿ5-&ÿ4,&ÿ1-)ÿ%$#ÿÿ ÿÿ000ÿ<<<ÿAAAÿBBBÿBBBÿBBBçBBBŽBBB&AAABBBMÊsssÿòòòÿïïïÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿëëëÿÜÜÜÿÊËËÿ¾¿¿ÿÁÁÂÿÏÏÏÿ¯¯¯ÿ111ÿÿÿ)))ÿ888ÿ@@@þBBBæBBB™BBB6AAABBBSÌxxxÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿïïïÿîîîÿîîîÿÝÝÝÿ‰‰‰ÿÿÿ"""ü111Þ:::???4CCCBBB#^Õƒƒƒÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿçççÿ¿¿¿ÿCCCÿõº d )iÝÿïïïÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿÓÓÓÿ………ÿ õ­c* -päÿðððÿìììÿìììÿìììÿìììÿîîîÿïïïÿðððÿïïïÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿïïïÿíííÿîîîÿðððÿîîîÿìììÿìììÿìììÿìììÿíííÿßßßÿ¯¯¯ÿ)))þÆq2  -ré«««ÿðððÿìììÿìììÿíííÿíííÿÔÔÔÿ«««ÿœœœÿ«««ÿÍÍÍÿçççÿïïïÿíííÿìììÿíííÿïïïÿßßßÿ²²²ÿƒƒƒÿnnnÿwwwÿœœœÿÍÍÍÿëëëÿîîîÿìììÿìììÿìììÿçççÿÄÄÄÿTTTÿÙv4 (pì¹¹¹ÿòòòÿïïïÿîîîÿÞÞÞÿ‘‘‘ÿ,,,ÿÿÿÿÿQQQÿ¢¢¢ÿÜÜÜÿçççÿÙÙÙÿ———ÿ???ÿ ÿÿÿÿÿ!!!ÿnnnÿÉÉÉÿíííÿðððÿïïïÿïïïÿÑÑÑÿwwwÿæv1  k‰ÿ³³³ÿ¡¡¡ÿxxxÿ;;;ÿÿÿ&&&ÿ<<<ÿ888ÿÿÿ ÿ444ÿMMMÿ111ÿÿÿÿ;;;ÿUUUÿPPPÿ000ÿÿÿ###ÿmmmÿ™™™ÿ¡¡¡ÿ”””ÿhhhÿ,,,ÿðx+ bîÿ ÿÿÿÿÿšššÿàààÿíííÿìììÿÙÙÙÿ{{{ÿÿÿÿÿÿÿ°°°ÿíííÿóóóÿòòòÿçççÿ‡‡‡ÿÿÿÿÿÿÿÿÿöz$Sêÿÿÿÿÿÿ¢¢¢ÿæææÿïïïÿïïïÿàààÿ‚‚‚ÿÿÿÿÿÿÿ’’’ÿ×××ÿèèèÿæææÿÍÍÍÿlllÿÿÿÿÿ ÿÿ&&&ÿ111ÿ ùv > ânnnÿˆˆˆÿzzzÿdddÿ555ÿÿ ÿ,,,ÿEEEÿBBBÿ%%%ÿÿ ÿ???ÿ^^^ÿVVVÿ555ÿ ÿÿÿ...ÿ+++ÿÿÿÿ'''ÿjjjÿ”””ÿ¯¯¯ÿÅÅÅÿÌÌÌÿªªªÿ!!!ùk$Í¡¡¡ÿóóóÿðððÿìììÿÛÛÛÿ   ÿPPPÿÿ ÿÿÿ@@@ÿ¤¤¤ÿáááÿêêêÿéééÿÞÞÞÿ   ÿDDDÿÿ ÿ ÿÿ666ÿyyyÿËËËÿíííÿðððÿïïïÿïïïÿæææÿ©©©ÿòV ¢oooÿíííÿìììÿìììÿíííÿïïïÿçççÿÎÎÎÿ´´´ÿ¨¨¨ÿ¸¸¸ÿÞÞÞÿïïïÿíííÿìììÿìììÿíííÿîîîÿâââÿÍÍÍÿºººÿ¶¶¶ÿÆÆÆÿÝÝÝÿíííÿîîîÿìììÿìììÿìììÿíííÿäääÿ•••ÿâ7^333ùØØØÿîîîÿìììÿìììÿìììÿìììÿîîîÿïïïÿðððÿïïïÿíííÿìììÿìììÿíííÿîîîÿîîîÿíííÿíííÿîîîÿïïïÿïïïÿîîîÿíííÿìììÿìììÿìììÿìììÿìììÿíííÿàààÿoooÿ¼‚‚ÿíííÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿãããÿÑÑÑÿÏÏÏÿÞÞÞÿíííÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿîîîÿÏÏÏÿ666þuJç™™™ÿëëëÿîîîÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿÝÝÝÿ•••ÿGGGû###êæ:::÷€€€ÿÕÕÕÿïïïÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿ„„„ÿÐ#ZáoooÿËËËÿëëëÿðððÿðððÿðððÿîîîÿÞÞÞÿ¡¡¡ÿBBBû Æf-(R³666øžžžÿâââÿðððÿïïïÿîîîÿîîîÿîîîÿðððÿçççÿ˜˜˜ÿëT7§%%%î```ÿ†††ÿ’’’ÿŒŒŒÿnnnÿ;;;ø ÍofÑIIIü‘‘‘ÿ»»»ÿÍÍÍÿÏÏÏÿÃÃÃÿŸŸŸÿWWWþÙY <|ž«¥ˆTm³ÕãäÚ ¿(&' ÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿþÿÿÿÿÿÿøÿÿøÿÿÿÿÿÿðüðÿÿÿÿÿÿðüÿÿÿÿÿÿð|ÿÿÿÿÿÿðpÿÿÿÿÿÿð?ÿÿÿÿÿðÿÿÿÿÿðÿÿÿÿÿðÿÿÿÿÿàÿÿÿÿà?ÿÿÿÿàÿÿÿÿàÿÿÿÿàÿÿÿÿðÿÿÿàÿÿÿÀÿÿÿ€?ÿÿ€ÿÿÿþÿþÿüüøøððààààÀÀÀÀÀ€€€ÿ€ÿ€?ÿ€?ÿ€?ÿÀÿÀÿÀÿÀÿÀÿàÿàÿÿàÿÿàÿÿðÿÿðÿÿøÿÿøÿÿüÿÿüÿÿþÿÿþÿÿÿÿÿÿ€?ÿÿÿ€?ÿÿÿÀÿÿÿàÿÿÿÿðÿÿÿÿøÿÿÿÿüÿÿÿÿþÿÿÿÿÿ€ÿÿÿÿÿÀÿÿÿÿÿàÿÿÿÿÿÿàÿÿÿÿÿÿàÿÿÿÿÿÿÀÿÿÿÿÿÿÀÿÿÿÿÿÿÀÿÿÿÿÿÿÀÿÿÿÿÿÿàÿÿÿÿÿÿàÿÿÿÿÿÿàÿÿÿÿÿÿàÿÿÿÿÿÿàÿÿÿÿÿÿàÿÿÿÿÿÿðÿÿÿÿÿÿð?ÿÿÿÿÿÿü?ÿÿÿÿÿÿú¿ÿÿÿÿÿÿþÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÀÀÿÿÿÿÿÿÿÿðøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ(@€ @× ×    5^_8:J;'s¸¼€5 ,,,);;;=BBBSBBBhBBBuBBB|BBBx<<>>3BBBƒBBBÎ>>>ö222ÿ###ÿ&&&ÿ666ÿ@@@ÿBBBÿBBBÿAAAÿ:::ÿ(((ÿÿÿÿÿ ÿ ý999äAAA¥BBBOBBBBBBDDD_èCCCÿDDDÿú»...¯@@@çBBBÿ@@@ÿ666ÿ"""ÿÿÿ,,,ÿ???ÿGGGÿJJJÿGGGÿ555ÿÿÿÿBBBÿHHHÿ+++ÿÿ;;;ÿBBBÿBBBöBBB¾BBBXBBB BBB???jôHHHÿFFFÿ)))ÿý111ÿ@@@ÿAAAÿ:::ÿ)))ÿÿÿ ÿ(((ÿMMMÿgggÿqqqÿeeeÿ???ÿÿÿ[[[ÿRRRÿJJJÿ333ÿÿ===ÿBBBÿBBBÿBBBÿBBB÷BBB±BBB;BBBBBBmõIIIÿFFFÿ...ÿÿ...ÿ>>>ÿAAAÿ:::ÿ%%%ÿ ÿC4%ÿ"ÿÿ...ÿHHHÿVVVÿJJJÿ&&&ÿÿTTTÿ```ÿIIIÿJJJÿ---ÿ666ÿWWWÿIIIÿBBBÿBBBÿBBBÿBBBÿBBBçBBBuBBBBBBpöIIIÿGGGÿ111ÿÿ,,,ÿNNNÿ^^^ÿEEEÿÿ.#ÿ¨\ÿjQ:ÿÿ ÿÿ###ÿÿ ÿ444ÿkkkÿOOOÿIIIÿIIIÿ%%%ÿTTTÿÿvvvÿ___ÿHHHÿAAAÿBBBÿBBBÿBBBúBBB£CCCBBBGGG###§ þIIIÿGGGÿ444ÿÿ@@@ÿpppÿeeeÿ223ÿÿŠiLÿ¼hÿ±ˆbÿXC0ÿ ÿÿÿÿÿ```ÿ\\\ÿIIIÿIIIÿEEEÿ"""ÿfffÿ€€€ÿÿ€€€ÿsssÿVVVÿCCCÿAAAÿAAAÿAAAÿ@@@½===*³³³>>>AAA 999Š"""ú!!!ÿIIIÿHHHÿ777ÿÿBBBÿlllÿXXYÿ ÿ[F2ÿ¹Žfÿ¹Žfÿºgÿ¾’iÿ•rRÿN<+ÿ ÿÿ777ÿiiiÿMMMÿIIIÿJJJÿ888ÿ"""ÿ___ÿnnnÿqqqÿrrrÿrrrÿlllÿSSSÿ999ÿ444ÿ333ÿ444ÿ333È>BBBBBBBBBw===÷"""ÿ"""ÿGGGÿCCCÿ666ÿÿ333ÿ___ÿJJJÿ#ÿ›wUÿ»gÿ¹Žfÿ¿“jÿΞqÿÒ¡tÿΞqÿ«ƒ^ÿ.&ÿWWWÿWWWÿIIIÿIIIÿIIIÿ###ÿÿ333ÿ???ÿEEEÿFFFÿDDDÿ@@@ÿ;;;ÿ,,,ÿÿÿÿÿÐf9 BBBBBBBBBXBBBï>>>ÿ$$$ÿÿ000ÿ<<<ÿ000ÿÿ"""ÿIIIÿ455ÿ9-"ÿ³‰bÿ¹ŽfÿºgÿÉ›oÿÏŸrÿÏŸrÿÒ¡tÿƒeHÿÿ;<<ÿ222ÿ...ÿCCCÿ???ÿ ÿÿ ÿÿÿÿÿÿÿ ÿÿÿÿÿ ÿ Û›l>EEEBBBBBB.BBBÙBBBÿ@@@ÿ###ÿEEEÿÁÁÁÿÙÙÙÿËËËÿvvvÿÿ+++ÿÿT@/ÿºfÿ¹Žfÿ¿’iÿΞrÿÏŸrÿРsÿ¼fÿSH>ÿ¯°°ÿÑÑÑÿÂÂÂÿ|||ÿ+++ÿ$" ÿR?-ÿ-#ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿÿÿþëÈš`, BBBBBB BBB§BBBÿBBBÿAAAÿ333ÿfffÿîîîÿíííÿðððÿÖÖÖÿ***ÿ ÿ ÿsX?ÿ¼hÿ¹Žfÿ•kÿÏŸrÿÏŸrÿÑ sÿz^Dÿ†††ÿïððÿîîîÿïïïÿíííÿqqrÿ>/"ÿƘmÿ¿“iÿ—tSÿvZAÿgO9ÿeN8ÿnT<ÿx\BÿcGÿmNÿœwVÿ¢|Yÿ¢|Yÿ–sSÿoU=ÿ8+ÿ þ÷ã·w:BBBBBBBBBYBBBöBBBÿAAAÿOOOÿXXXÿOOOÿäääÿìììÿìììÿìììÿeeeÿÿ ÿšvUÿ»gÿ¹ŽfÿÄ—lÿÏŸrÿРsÿ¹eÿVMDÿÓÓÔÿîîîÿìììÿíííÿ×רÿXURÿ™uSÿÒ¡sÿРsÿÒ¡tÿÒ¢tÿÒ¡tÿÒ¡tÿРsÿÇ™nÿÄ–lÿÄ–lÿÖkÿÈšnÿПrÿÒ¡tÿÒ¡sÿƘmÿšvUÿK9)ÿ ýîÈX0 BBBBBBBBBÃBBBÿBBBÿEEEÿmmmÿmmmÿ???ÿÔÔÔÿíííÿìììÿïïïÿ°°°ÿÿS?-ÿ·eÿ¹ŽfÿºgÿÉ›oÿÏŸrÿÑ¡sÿ|_Eÿ‡‡‡ÿîîîÿìììÿìììÿëëëÿžžŸÿWF6ÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌqÿÄ—lÿÁ”jÿÁ”jÿ•kÿÉšnÿΟrÿÏŸrÿÏŸrÿÏŸrÿПrÿÒ¡tÿÊœpÿ•sRÿ1&þôܶgC! BBBBBBBBB\BBBúBBBÿAAAÿYYYÿ€€€ÿxxxÿ:::ÿµµµÿïïïÿìììÿíííÿãããÿSPNÿ‰iJÿ¼gÿ¹Žfÿ•kÿΟrÿРsÿ¿’hÿVK@ÿÎÎÏÿîîîÿìììÿíííÿÞÞÞÿgfeÿ‰iKÿÒ¡tÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÖkÿÁ”jÿÁ”jÿÄ—lÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÒ¢tÿ³ŠcÿA2$ÿûñàÇ¡f*BBBBBB BBB´BBBÿBBBÿFFFÿrrrÿ‚‚‚ÿÿFFFÿ‰‰‰ÿïïïÿìììÿìììÿïïïÿ¦¦§ÿZG7ÿ¸eÿÄ–lÿÍžqÿÏŸrÿÒ¡tÿ‰iKÿzxwÿíííÿìììÿìììÿìììÿÃÄÄÿOHBÿ´‰bÿÑ sÿÏŸrÿÏŸrÿΟrÿÉšnÿ•kÿÁ”jÿ•kÿÈ™nÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÅ—lÿ¶‹dÿnT<ÿ"ÿýøæ´bBBBBBB6BBBìBBBÿAAAÿWWWÿÿÿÿ]]]ÿZZZÿçççÿìììÿìììÿíííÿåææÿhebÿŒkLÿÒ¡sÿÏŸrÿПrÿƘlÿYJ<ÿÁÂÂÿîîîÿìììÿìììÿèèèÿ¢£¤ÿVG8ÿÊ›nÿÏŸrÿÏŸrÿΞqÿÇ™mÿÁ”jÿÁ”jÿÅ—lÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞrÿÉšnÿ•kÿÁ”jÿ•jÿ•kÿ­„_ÿ{^CÿG7'ÿýåŸFAAABBBBBBvBBBÿBBBÿCCCÿkkkÿ‚‚‚ÿÿÿtttÿ>>>ÿËËËÿîîîÿìììÿìììÿîîîÿÊÊËÿULDÿ¥~ZÿÒ¢tÿÔ¢tÿ“pPÿnkiÿêêêÿìììÿìììÿíííÿßßßÿ‚‚ƒÿnV?ÿÑ¡sÿÏŸrÿÏŸrÿÇ™nÿÁ”jÿ•kÿÉšoÿΞrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÅ—lÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÄ—lÿÌpÿÌpÿªƒ^ÿ5)üÊjBBBBBBBBB²BBBÿAAAÿJJJÿyyyÿ‚‚‚ÿÿÿÿDDDÿ”””ÿïïïÿìììÿìììÿìììÿîîîÿ¸¸¸ÿVLDÿŒkLÿ¥~XÿTG;ÿ¾¾¿ÿïïïÿìììÿìììÿìììÿÓÓÓÿgfeÿŒkLÿÒ¡tÿÏŸrÿËœpÿ•jÿ•kÿÊ›oÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΟrÿÍqÿÊ›oÿƘmÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿÇ™mÿÍqÿÏŸrÿÏŸrÿÓ¢tÿ¡|Yÿ âhBBBBBBBBBÚBBBÿAAAÿVVVÿ€€€ÿÿÿÿÿ___ÿTTTÿäääÿíííÿìììÿìììÿìììÿîîîÿÉÊÊÿ|zyÿhd`ÿ§¦¦ÿìììÿìììÿìììÿìììÿêêêÿÆÆÆÿVSOÿ¥~YÿÑ¡sÿÏŸrÿƘmÿÁ”jÿÉšoÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÍžqÿÊ›oÿÇ™nÿÄ—lÿ•kÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•kÿƘmÿÌœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿiP:û€ BBBBBB8BBBñBBBÿAAAÿaaaÿ‚‚‚ÿÿÿÿ€€€ÿnnnÿ111ÿ±±±ÿïïïÿìììÿìììÿìììÿìììÿîîîÿíííÿêêêÿîîîÿìììÿìììÿìììÿìììÿåååÿ·¸¸ÿOHAÿ¸dÿРsÿÌpÿ•kÿƘmÿΟrÿÏŸrÿÏŸrÿÏŸrÿÍžqÿÈ™nÿÖkÿÁ”jÿÁ”jÿÁ”jÿÁ”jÿ•jÿ•kÿÖkÿÅ—mÿÉšnÿÍqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿÊ›oÿoV=ý’BBBBBBTBBBüBBBÿBBBÿjjjÿ‚‚‚ÿÿÿÿ~~~ÿgggÿ,,,ÿWWWÿçççÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿßßßÿ¨©©ÿQE:ÿÄ–kÿРrÿÈ™nÿ•kÿÌqÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿÖkÿÁ”jÿÁ”jÿ•kÿÅ—lÿÈšnÿËœpÿÌpÿÍqÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÑ¡sÿРsÿ¯†`ÿYE1ð ‡BBBBBBjBBBÿBBBÿDDDÿpppÿ‚‚‚ÿÿÿÿzzzÿ[[[ÿ##"ÿ!ÿ¤¤¤ÿðððÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿÚÚÚÿ›œÿZI9ÿÌœpÿΞqÿÄ–lÿÈ™nÿÏŸrÿÏŸrÿΞrÿÈ™nÿ”jÿÁ”jÿ•kÿÇ™mÿÌœpÿΟrÿÏŸrÿРsÿÒ¡sÿÒ¢tÿÒ¢tÿÒ¢tÿÒ¡tÿÒ¡tÿÒ¡tÿÒ¢tÿÑ sÿÈ™nÿ©‚]ÿmT<ø* ½KBBBBBBvBBBÿBBBÿFFFÿsssÿ‚‚‚ÿÿÿÿvvvÿNNNÿ"ÿ‚cFÿXNEÿ¾¿¿ÿçççÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿíííÿ¯¯¯ÿQRRÿcM9ÿÑ¡sÿÊ›oÿÖkÿÍqÿÏŸrÿΟrÿÇ™nÿÁ”jÿÁ”jÿÄ—lÿÌœpÿÏŸrÿÏŸrÿÑ sÿРsÿÀ“iÿ¦[ÿ”qQÿnOÿ•rQÿ›wUÿ›wUÿ–sRÿ†gJÿkR;öH7'Ü ¦TBBBBBBzBBBÿBBBÿFFFÿtttÿ‚‚‚ÿÿÿ€€€ÿpppÿ>?@ÿ9-#ÿÇ™mÿŠjLÿ*('ÿ[[[ÿÃÃÃÿîîîÿìììÿìììÿìììÿìììÿìììÿíííÿåååÿÿ///ÿ"""ÿ5+"ÿ©‚]ÿÇ™nÿÇ™nÿÏŸrÿÏŸrÿÉšoÿÁ”jÿÁ”jÿÅ—lÿÍžqÿÏŸrÿПrÿРsÿ±ˆaÿnU>ÿG<3ÿDA=ÿJIHÿLKKÿIHGÿ31/ÿ)'%ÿ)'&ÿ&&%Ü NBBBBBBtBBBÿBBBÿEEEÿsssÿ‚‚‚ÿÿÿwwwÿ^^^ÿ)**ÿ^I5ÿÒ¡tÿcM8ÿ++,ÿ333ÿ888ÿ¹¹¹ÿîîîÿìììÿìììÿìììÿìììÿéééÿzzzÿ&&&ÿAAAÿJJJÿ234ÿP?.ÿÖkÿΞqÿÏŸrÿÍqÿÕkÿÁ”jÿÖkÿÍqÿÏŸrÿРsÿÊ›oÿcGÿ?81ÿUUUÿtuvÿ€€€ÿƒƒƒÿƒƒƒÿÿTTTÿAABÿCCCÿCCCÅDDDDDDBBBBBBeBBBÿBBBÿDDDÿoooÿ‚‚‚ÿÿvvvÿ^^^ÿ;;;ÿÿ|`DÿŸzWÿ0(!ÿAABÿKKKÿ666ÿQQQÿãããÿíííÿìììÿìììÿîîîÿÉÉÉÿ111ÿGGGÿIIIÿIIIÿDEEÿ'# ÿjR;ÿ¸ŽeÿÑ¡sÿÈ™nÿÁ”jÿÁ”jÿÊ›oÿÏŸrÿРsÿÄ—lÿeO:ÿB@?ÿttuÿƒƒƒÿ‚‚‚ÿÿÿÿ}}}ÿOOOÿAAAÿBBBÿBBB¹BBBBBBBBBBBBMBBBúBBBÿBBBÿhhhÿ‚‚‚ÿzzzÿbbbÿ:::ÿÿÿ4)ÿ.)%ÿ99:ÿIIIÿIIIÿFFFÿ111ÿÇÇÇÿëëëÿéééÿéééÿéééÿÈÈÈÿ666ÿNNNÿLLLÿIIIÿGGGÿ222ÿ ÿ3*!ÿ|_Dÿ·ŒdÿÕkÿƘmÿΟrÿРsÿǘmÿ`K7ÿHHGÿ}}~ÿ‚‚‚ÿÿÿÿÿÿyyyÿJJJÿAAAÿBBBÿBBB¡CCCBBBBBBBBB1BBBìBBBÿAAAÿ^^^ÿ€€€ÿpppÿHHHÿÿÿÿ445ÿGGGÿIIIÿFFFÿPPQÿOOOÿ"""ÿ===ÿPPPÿPPPÿLLLÿEEEÿ:::ÿÿ'''ÿOOPÿIIIÿFFFÿ;;;ÿ222ÿ**+ÿÿ@2&ÿžyWÿΞqÿРrÿÍqÿnU>ÿDCCÿ~~~ÿ‚‚‚ÿÿÿÿÿÿ‚‚‚ÿrrrÿEEEÿBBBÿBBBÿBBBBBBBBBBBBBBBBBBÑBBBÿAAAÿRRRÿwwwÿ^^^ÿ///ÿ ÿ&&&ÿEEEÿJJJÿIIIÿBBBÿ444ÿ777ÿ445ÿ ÿÿÿÿÿÿÿÿÿÿÿ666ÿJJJÿBBBÿ555ÿ,,-ÿ##$ÿ.&ÿ˜uTÿÒ¡tÿŽlNÿ41.ÿsssÿÿÿÿÿÿÿÿ‚‚‚ÿfffÿBBBÿBBBÿBBBúBBBTBBBBBBBBBBBB¢BBBÿBBBÿFFFÿaaaÿDDDÿÿÿHHHÿJJJÿIIIÿFFFÿ666ÿÿ  ÿ:&ÿ3!ÿ& ÿ ÿÿ ÿ ÿ$ ÿ5#ÿN3ÿZ;ÿ' ÿÿBBBÿJJJÿFFFÿ888ÿ.//ÿÿ0"ÿsX?ÿ.%ÿ;<<ÿmmmÿ~~~ÿÿÿÿÿÿÿ€€€ÿWWWÿAAAÿBBBÿBBBäBBB(BBBCCCBBBBBBcBBBýBBBÿ>>>ÿCCCÿ)**ÿ ÿ!ÿ-,,ÿGHHÿGGGÿ888ÿ(((ÿ ÿ7$ÿqJ&ÿ†X-ÿ‚U*ÿ|Q(ÿxN&ÿwN&ÿ{P(ÿU+ÿˆ[1ÿ`5ÿ~S*ÿD-ÿ ÿ'&$ÿFFFÿJJJÿ>??ÿ"ÿb@ ÿwN(ÿ4"ÿ ÿ***ÿZZZÿyyyÿÿÿÿÿÿ‚‚‚ÿwwwÿIIIÿBBBÿBBBÿBBBµBBB BBBBBBBBB%BBBßBBBÿ<<<ÿ///ÿÿ;'ÿxN(ÿ6$ÿ---ÿ:::ÿ+,,ÿ+$ÿ8+ÿ@*ÿsK&ÿˆZ/ÿŸwQÿ¦[ÿ¦[ÿª„aÿ­‰gÿ´‘qÿº˜yÿª„bÿƒW-ÿ\=ÿ- ÿA3%ÿ,*)ÿFFGÿ'%$ÿT7ÿˆY.ÿ‡Y-ÿ}R*ÿ4"ÿÿMMMÿuuuÿÿÿÿÿÿ‚‚‚ÿdddÿBBBÿBBBÿBBBþBBBmBBBBBBBBBBBBBBBšBBBÿ>>>ÿ&&'ÿ%ÿxO(ÿ‰Z.ÿuL'ÿ"ÿ()*ÿ)$ÿlS<ÿ5&ÿS7ÿvN(ÿ‡Y.ÿ¤}Yÿä‡ÿ»š|ÿ¦€]ÿ±Žmÿ›sMÿ™pJÿ°Œkÿ‰\2ÿnI%ÿ?)ÿO<*ÿ`J6ÿ"! ÿ)ÿ~S*ÿ‡X-ÿ†X-ÿ‡Y-ÿxO(ÿ&ÿFGGÿvvvÿÿÿÿÿÿ{{{ÿNNNÿAAAÿBBBÿBBBßBBB&BBBBBBBBB@BBBî@@@ÿ$$$ÿK2ÿˆZ.ÿ†X-ÿvN(ÿ.ÿ ÿ:,ÿWC0ÿ:&ÿ\=ÿ{P)ÿŽb8ÿƨŒÿȪÿβ˜ÿµ“sÿȪŽÿ–mEÿ”jBÿα—ÿ‘e=ÿ}Q)ÿ[<ÿ0!ÿ‰iLÿlS<ÿ4"ÿ…W-ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿL2ÿ?@@ÿ{{{ÿÿÿÿÿÿdddÿBBBÿBBBÿBBBÿBBBBBBBBBBBBBBBBBB£BBBÿ,,-ÿ@+ÿ‡Y-ÿ}R*ÿR6ÿeB"ÿsK&ÿ[<ÿ$ ÿF.ÿ`? ÿS)ÿžvPÿÒ¶ÿŒ_5ÿ¤~Zÿд›ÿÊ­’ÿ¹—xÿ¾ÿβ˜ÿ˜nGÿ…V+ÿnH%ÿJ1ÿ<-ÿ\G3ÿ/ÿU+ÿ†X-ÿ†X-ÿ†X-ÿˆY.ÿL2ÿHHHÿÿÿÿÿ‚‚‚ÿvvvÿJJJÿAAAÿBBBÿBBBãBBB0BBBOOOBBBBBB7BBBå:;;ÿ$ÿuL'ÿ…X-ÿ„V,ÿˆY.ÿ‡Y-ÿ‰Z.ÿdB"ÿ.ÿdB"ÿ„V,ÿ‘f=ÿα—ÿ¾€ÿʬ‘ÿ¸—xÿ´‘qÿÖ¼¤ÿؾ§ÿÊ­’ÿ‘f=ÿ†W,ÿT+ÿcB!ÿ9&ÿ ÿgD#ÿƒV,ÿ†X-ÿ†X-ÿ†X-ÿ„V,ÿ8(ÿ^__ÿÿÿÿÿ~~~ÿVVVÿAAAÿBBBÿBBBþBBBƒAAABBBCCCDDDBBB}BBBý***ÿ?*ÿ„W,ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ‚U,ÿ7$ÿdB"ÿ‡Y-ÿ†X-ÿ¥[ÿÇ©Žÿ¿Ÿÿ¡yTÿ¥~Zÿ½œ~ÿ½ÿ¾ÿ¡zVÿ†X-ÿ†X-ÿ{Q)ÿ]>ÿbA!ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿrJ%ÿ-'"ÿpppÿÿÿÿ€€€ÿaaaÿCCCÿBBBÿBBBÿBBBÇBBBBBBBBBBBBBBBµ??@ÿ" ÿR6ÿ†X-ÿ‡Y-ÿ†X-ÿ†X-ÿ‡Y-ÿmG$ÿsK'ÿ‡Y-ÿ‡Y/ÿ¤}Yÿ¯‹jÿ¯‹iÿ±Œjÿ¯Šgÿ¨]ÿ wQÿ–kDÿ‹_5ÿ†X-ÿ†X-ÿ†X-ÿ~S*ÿƒV,ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿE.ÿ:::ÿwwwÿÿÿÿfffÿEEEÿBBBÿBBBÿBBBêBBBHBBBAAADDDBBBBBB/CCCÕ<<=ÿ"ÿI0ÿyO(ÿ†X-ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ…W,ÿ†X,ÿjE"ÿG.ÿC+ÿA*ÿQ5ÿS)ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿfC"ÿ ÿNNNÿ{{{ÿÿ€€€ÿfffÿFFFÿBBBÿBBBÿBBB÷BBBrBBBBBBCCCAAABBBFCCCâ>>>ÿ'&&ÿÿD,ÿ{Q)ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ‡Y-ÿeB"ÿ1#ÿ)%"ÿ‚ƒÿ@>;ÿC2#ÿH0ÿS*ÿˆY.ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ„W,ÿbA!ÿ:'ÿQQQÿÿ}}}ÿaaaÿEEEÿBBBÿBBBÿBBBûBBBŒBBB BBBBBB222BBBPBBBãBBBÿ$%%ÿ ÿfC"ÿ„W,ÿˆY.ÿˆY.ÿˆY.ÿS*ÿV8ÿE3"ÿF8*ÿŒÿðððÿ²³³ÿRE9ÿ_H3ÿB-ÿoI%ÿ†X-ÿˆY.ÿ‡Y-ÿ‡Y-ÿ‡X-ÿ‡X-ÿ‡X-ÿ‡Y-ÿzP(ÿ6(ÿfggÿwwwÿVVVÿCCCÿBBBÿBBBÿBBBúBBB“BBBBBBBBBBBBBBBIBBBÙ===ÿÿ0#ÿG1ÿP5ÿW9ÿN4ÿC/ÿfM7ÿcM7ÿtroÿåååÿíííÿíííÿ™™™ÿZJ;ÿcHÿL8&ÿE/ÿ\=ÿnH$ÿwN'ÿzP)ÿ{Q)ÿzP(ÿlF$ÿ1"ÿGFFÿdddÿJJJÿAAAÿBBBÿBBBÿBBBõBBB†BBB BBBCCC@@@BBB3CCC½000ý?2&ÿ–uWÿ‘qTÿ†hLÿ“sUÿ¦_ÿqX@ÿoliÿÞÞÞÿíííÿìììÿìììÿëëëÿ•••ÿ\M>ÿ¤€_ÿzZÿrW>ÿYC.ÿN:&ÿL7$ÿK7#ÿO:&ÿ2%ÿÿJJJÿCCCÿAAAÿBBBÿBBBÿBBBäBBBgBBBBBBBBBBBBCCCAAA‰)))í>4*ÿ€hRÿ›dÿ‰q[ÿ]QFÿ†…„ÿáááÿîîîÿìììÿìììÿìììÿíííÿìììÿªª«ÿZRKÿƒjQÿ»•pÿÉsÿƘmÿ¾’hÿ°‡aÿ‹kMÿ7,"ÿ///ÿBBBÿBBBÿBBBÿBBBûBBBºBBB;BBBBBB@@@JJJ455OÌ443þ…„ƒÿ••”ÿÆÇÇÿìììÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿîîïÿÔÔÕÿŒ‹‹ÿb\VÿaSFÿfSBÿaQBÿ<3*ÿ ÿÿ:::ÿAAAÿBBBþBBBØBBBpBBBBBBDDDsXXXöíííÿðððÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîïÿáââÿÍÍÎÿÃÄÄÿËÌÌÿ––—ÿÿÿ333ü???×BBB~BBB#BBBBBB|___÷ëëëÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿîîîÿîîîÿïïïÿÚÚÚÿYYYÿ î›%%%0)))%%%!Œjjjûíííÿìììÿìììÿíííÿïïïÿïïïÿîîîÿìììÿìììÿìììÿìììÿîîîÿðððÿðððÿïïïÿíííÿìììÿìììÿèèèÿžžžÿåx"#”xxxýðððÿîîîÿïïïÿÚÚÚÿ¶¶¶ÿ¶¶¶ÿÓÓÓÿëëëÿðððÿðððÿéééÿÅÅÅÿœœœÿ–––ÿ···ÿáááÿïïïÿíííÿíííÿÇÇÇÿ999ö)”ÿåååÿÓÓÓÿœœœÿ666ÿÿÿ&&&ÿeeeÿ®®®ÿ¬¬¬ÿ]]]ÿÿÿÿÿCCCÿ¤¤¤ÿØØØÿÞÞÞÿ¿¿¿ÿFFFý˜& ÿ888ÿ"""ÿÿPPPÿ¯¯¯ÿºººÿŽŽŽÿÿÿÿÿ^^^ÿ¿¿¿ÿÈÈÈÿœœœÿÿÿ'''ÿ...ÿÿÿ |þ ÿÿÿSSSÿ´´´ÿÀÀÀÿ•••ÿÿ ÿÿÿLLLÿ¥¥¥ÿ±±±ÿƒƒƒÿÿ ÿ$$$ÿ<<<ÿUUUÿAAAÿ›\mmmù×××ÿÊÊÊÿ›››ÿIIIÿ"""ÿÿÿdddÿµµµÿÁÁÁÿÿDDDÿÿÿÿKKKÿ¦¦¦ÿ×××ÿäääÿæææÿ‚‚‚ÿ‰ /PPPãæææÿïïïÿïïïÿåååÿÊÊÊÿ¸¸¸ÿÈÈÈÿéééÿðððÿðððÿñññÿãããÿÊÊÊÿÀÀÀÿÎÎÎÿæææÿïïïÿíííÿíííÿåååÿhhhûaŸªªªÿðððÿìììÿìììÿîîîÿïïïÿîîîÿïïïÿèèèÿÒÒÒÿÏÏÏÿåååÿñññÿïïïÿîîîÿìììÿìììÿìììÿîîîÿÔÔÔÿ<<<ß*+888ͱ±±ÿêêêÿðððÿðððÿðððÿéééÿ¹¹¹ÿeeeì222¹---³ZZZå²²²ÿêêêÿïïïÿîîîÿîîîÿïïïÿëëëÿ………ý „-"""¨iiiðÿ©©©ÿ™™™þeeeí###§>3£lllñ®®®ÿÉÉÉÿËËËÿ¶¶¶ÿrrrõš ;j ve5B…'''¥(((§ŽL ÿƒÿÿÿÿÿÿÿÿüÿÿÿÿñüÿÿÿÿpÿÿÿÿÿÿÿÿÿÿÿÿ?ÿÿÿÿÿÿÿÿÿÿÿÿÿþÿüÿüÿøÿððààÀÀÀ€€€€€€€€ÿ€ÿ€ÿ€ÿ€ÿ€ÿÀÿÀÿÀÿàÿàÿðÿðÿø?ÿü?ÿþÿþÿÿÿÿÿÿÀÿÿÿàÿÿÿðÿÿÿø?ÿÿÿðÿÿÿÿðÿÿÿÿðÿÿÿÿðÿÿÿÿðÿÿÿÿøÿÿÿÿøÿÿÿÿüÿÿÿÿüÿÿÿÿþÿÿÿÿÿÿÿÿÿÿ€ðÿÿÿÿÿÿü?ÿÿÿ(0` $× × 33 $D£P888))):::2BBBGBBBXBBB`AAA]222Zm““I väî—&AAABBB&@@@f444ª...×999íAAAøBBBýBBBÿ===þ+++üùùò¼///VCCCAAA™)))ý+++ÿÉpAAAšBBBá<<<ý'''ÿÿ---ÿ@@@ÿDDDÿBBBÿ333ÿÿ ÿ%%%ÿ'''ÿÿ;;;öBBBÇBBBnBBBBBBBBB ²???ÿAAAÿø***õ@@@ÿ???ÿ...ÿÿÿ"""ÿMMMÿeeeÿ```ÿ555ÿÿBBBÿQQQÿBBBÿ ÿ<<<ÿBBBÿBBBüBBBÎBBB^BBB BBBBBB·@@@ÿCCCÿÿ&&&ÿAAAÿCCCÿ&''ÿÿK:)ÿÿ,,,ÿHHHÿEEEÿÿ666ÿ___ÿJJJÿ===ÿ666ÿ]]]ÿLLLÿBBBÿBBBÿBBB÷BBB¡BBB!AAAGGG%ÇAAAÿEEEÿ!!!ÿ,,,ÿcccÿRRRÿÿnT=ÿ¬„_ÿ<.!ÿÿ ÿÿÿ^^^ÿQQQÿJJJÿ555ÿOOOÿÿyyyÿaaaÿHHHÿAAAÿBBBÿBBBÈBBB6DDD@@@===CCC 111‹úBBBÿFFFÿ%%%ÿ888ÿkkkÿ>>?ÿD5(ÿ²ˆbÿ»gÿ¯†`ÿmS<ÿ-#ÿ ÿ>>>ÿ^^^ÿIIIÿIIIÿ)))ÿRRRÿrrrÿuuuÿtttÿdddÿDDDÿ666ÿ666ÿ555×'''I BBBCCCBBBv999÷ÿ777ÿ888ÿ"""ÿ***ÿXYYÿ0/-ÿ‚dHÿ¼hÿ¼‘hÿÍqÿÑ¡sÿ»gÿ@3'ÿGGHÿFFFÿIIIÿ@@@ÿÿ'''ÿ888ÿ===ÿ;;;ÿ777ÿ---ÿÿÿÿÞu9CCCBBBBBBPBBBî:::ÿÿeeeÿ‰‰‰ÿ]]]ÿ ÿ677ÿ-'"ÿ¢|YÿºgÿÄ—lÿÏŸrÿÒ¡sÿ›xVÿ\YWÿ€ÿ___ÿ777ÿ.,*ÿÿÿÿÿÿÿÿÿÿÿÿê±s4 BBBBBB!BBBÏBBBÿ>>>ÿ===ÿÓÓÓÿñññÿãããÿIIIÿ ÿ5* ÿ±ˆbÿºgÿÉšoÿРsÿÅ–kÿrcUÿÔÕÕÿðððÿèèèÿwwxÿUB0ÿ°‡aÿ}`EÿYD1ÿO<+ÿT@.ÿ^H4ÿjQ:ÿz]Cÿ‚dGÿ}`Eÿ\G3ÿ) ÿ÷ÛžLBBBBBBBBB‰BBBÿBBBÿYYYÿKKKÿÁÁÁÿïïïÿïïïÿŒŒŒÿÿ_I4ÿºgÿ»gÿËœpÿÒ¡sÿ•sTÿ˜–”ÿîïïÿíííÿãããÿupkÿ¨\ÿÓ¢tÿÒ¡tÿРsÿÏŸrÿÍqÿÅ—lÿÄ–lÿÅ—mÿÌpÿÒ¡tÿРsÿ¿’iÿ†gJÿ2&þì·q< BBBBBB.BBBãAAAÿMMMÿyyyÿSSSÿ¢¢¢ÿðððÿîîîÿÍÍÎÿ>82ÿžyVÿºgÿÁ”jÿÏŸrÿǘlÿscUÿÕÖÖÿíííÿíííÿ¸¹¹ÿn[HÿÍpÿÏŸrÿÏŸrÿÏŸrÿËœpÿÖkÿÁ”jÿÄ–lÿËœpÿÏŸrÿÏŸrÿÏŸrÿРsÿÒ¡tÿÀ“jÿcL6ÿ öÜ´†IBBBBBBBBBƒBBBÿBBBÿeeeÿ‚‚‚ÿbbbÿ|||ÿîîîÿìììÿììíÿˆ…ÿ‘oOÿÕkÿÌpÿÒ¡sÿžzWÿŒ‰ÿîîîÿìììÿéééÿ‰ˆ‡ÿ‘pQÿÒ¡tÿÏŸrÿÏŸrÿÉšnÿ•kÿ•jÿÇ™nÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿÁ”jÿ|_Dÿ'þùè°M BBBBBBBBBÍAAAÿKKKÿyyyÿ‚‚‚ÿtttÿZZZÿßßßÿíííÿîîîÿÑÒÒÿoaTÿ¾‘gÿÒ¡sÿÌœoÿubPÿËËÌÿîîîÿíííÿÜÜÝÿnicÿ±ˆ`ÿÑ sÿΞrÿÇ™mÿÁ”jÿÄ—lÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÊ›oÿÖkÿÁ”jÿÕkÿ°‡aÿ„eHÿO<+ÿ í—,BBBBBBABBBôAAAÿ[[[ÿÿÿÿQQQÿºººÿïïïÿìììÿîîîÿ³²²ÿt`Nÿ¹dÿœwTÿˆ„€ÿìììÿìììÿíííÿÇÈÉÿh\PÿÅ–kÿПrÿÉšoÿÁ”jÿÇ™nÿΞqÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿΞqÿËœpÿƘmÿÁ”jÿÁ”jÿÁ”jÿ•kÿÈšnÿРsÿΟrÿ}`Eÿ ÃABBBBBBsBBBÿCCCÿkkkÿ‚‚‚ÿÿ‚‚‚ÿ```ÿÿíííÿìììÿìììÿíííÿ¸¸·ÿ|skÿxrÿÔÕÕÿîîîÿìììÿëëëÿ°±²ÿp\JÿΞqÿÍžqÿÖkÿƘmÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿÌpÿÉ›oÿƘmÿÖkÿÁ”jÿÁ”jÿÁ”jÿ•kÿƘmÿÌœpÿÏŸrÿÏŸrÿРrÿÈšnÿO=,ã>BBBBBBœBBBÿGGGÿuuuÿ‚‚‚ÿÿÿmmmÿFFFÿÑÑÑÿîîîÿìììÿìììÿîîîÿçèéÿèééÿíííÿìììÿìììÿçççÿš››ÿdLÿÒ¡sÿÉ›oÿÄ–lÿÍžqÿÏŸrÿÏŸrÿÌœpÿƘmÿ•kÿÁ”jÿ•kÿÖkÿÄ—lÿƘmÿÉšnÿÌqÿÏŸrÿÏŸrÿÏŸrÿРsÿÒ¡sÿ¸eÿS@.Ù4BBB BBB·AAAÿKKKÿ{{{ÿÿÿ€€€ÿfffÿ$$$ÿ~~ÿîîîÿíííÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿâââÿŠŠ‰ÿoQÿÒ¡sÿÅ—lÿÊ›oÿÏŸrÿÏŸrÿÉšnÿ•kÿÁ”jÿÅ—lÿÉ›oÿÍqÿПrÿÑ¡sÿÒ¡tÿÒ¡tÿÒ¡tÿÒ¡tÿÒ¡tÿÏŸrÿ¿’iÿlM÷B3$°2ÌpBBBBBBÅAAAÿOOOÿ}}}ÿÿÿ}}}ÿUVVÿ6-$ÿjWEÿ¯¯®ÿçççÿîîîÿìììÿìììÿìììÿìììÿìììÿïïïÿ¿¿¿ÿXVUÿžyWÿÏŸrÿÅ—mÿΞrÿÏŸrÿÇ™nÿÁ”jÿÖkÿÊ›oÿÏŸrÿÒ¡sÿË›oÿ´Šbÿ¡{YÿyWÿ¡|Yÿ¤~ZÿžzWÿŽmNùpV>áD4%¬ U BBBBBBÈAAAÿOOOÿ}}}ÿÿÿxxxÿCDDÿaL8ÿ±‡aÿ:4.ÿaabÿÊÊÊÿîîîÿìììÿìììÿìììÿëëëÿ¥¥¥ÿAAAÿ*))ÿcN;ÿÖkÿÊ›oÿÏŸrÿÉ›oÿÁ”jÿÖkÿÌqÿРsÿÍqÿžyWÿdRBÿVOJÿZXUÿ\ZYÿNKIÿ41/ÿ31/ÿ'&$ BBB BBBÀAAAÿMMMÿ|||ÿÿyyyÿ^^^ÿ))(ÿ…fJÿ‰iLÿ321ÿ;;;ÿQQQÿÙÙÙÿîîîÿìììÿïïïÿ¼¼¼ÿ999ÿCCCÿIJJÿ30-ÿˆiKÿËœpÿÏŸrÿÖkÿ•jÿËœpÿРsÿƘmÿw]FÿSOLÿqrsÿ€ÿƒƒƒÿ„„„ÿkkkÿCCCÿCCCþCCC_CCCBBBBBB­BBBÿIIIÿyyyÿ}}}ÿ___ÿ---ÿ ÿE7*ÿ;50ÿCCDÿJJJÿ555ÿ¥¥¥ÿéééÿåååÿçççÿŸŸŸÿ:::ÿOOOÿJJJÿ;;;ÿ*'#ÿ[H6ÿ¤~Zÿ”jÿÇ™nÿРrÿÇ™mÿlVBÿ[ZYÿ€€€ÿ‚‚‚ÿÿÿ‚‚‚ÿcccÿAAAÿBBBùBBBKBBBBBBBBB‹BBBÿEEEÿpppÿqqqÿ<<<ÿÿÿ:::ÿGHHÿEEEÿNOOÿ566ÿ**+ÿAAAÿ@@@ÿ::;ÿ(((ÿÿ:;<ÿ@@@ÿBBBÿ666ÿ'((ÿ,'!ÿy]DÿÉ›oÿÏŸrÿw^EÿXWWÿ‚ÿÿÿÿÿÿYYYÿAAAÿBBBëBBB.BBBBBBBBB\BBBýBBBÿ^^^ÿXXXÿÿ&&&ÿGGGÿJJJÿCCCÿ+++ÿ)$ÿ$ÿ ÿÿÿÿ ÿÿ/ ÿÿ788ÿHHHÿ;;;ÿ-./ÿ!ÿnT<ÿ‹kLÿ;74ÿsttÿÿÿÿÿÿ|||ÿMMMÿAAAÿBBBÍBBBBBBBBBBBB*BBBåAAAÿDDDÿ334ÿ ÿ,($ÿCDDÿEEEÿ333ÿÿ=(ÿrK&ÿrK&ÿhD"ÿcA!ÿgD#ÿsM)ÿ‚Y2ÿ}S+ÿ5#ÿÿABBÿIIIÿ/.,ÿH1ÿ]= ÿ#ÿ%&&ÿbbbÿÿÿÿÿ‚‚‚ÿoooÿDDDÿBBBÿBBB–CCCBBBBBBBBBBBB­AAAÿ555ÿÿR6ÿa@!ÿ-($ÿ455ÿ.)%ÿ9+ÿL2ÿ€T+ÿ›qJÿ¬†cÿª„aÿ­ˆeÿ°‹iÿ¯Šhÿ‹_7ÿT7ÿ8*ÿ;3,ÿ678ÿ<,ÿ‚U+ÿˆY.ÿa@ ÿ ÿSSSÿ}||ÿÿÿÿ€€€ÿZZZÿAAAÿBBB÷BBBNBBBAAABBBBBBWBBBù234ÿ5&ÿ‚U+ÿ…W,ÿ:(ÿÿUB1ÿD1ÿ\=ÿ‚U+ÿ©„aÿÊ­’ÿ¸–wÿ³pÿ”jBÿ®‰gÿ›rKÿnH#ÿ@,ÿmT<ÿ;/$ÿ[<ÿˆZ.ÿ†X-ÿ‡Y-ÿK2ÿMMMÿ~~~ÿÿÿ‚‚‚ÿsssÿGGGÿBBBÿBBBÅBBBBBBBBBBBBBBB¾789ÿ=+ÿ†X,ÿmH%ÿX:ÿ[<ÿA-ÿ;'ÿfC"ÿŠ^5ÿŧŠÿŸxSÿÄ¥ˆÿȪÿ¶“sÿä‡ÿ¦[ÿ~R)ÿW9ÿK8%ÿP=+ÿ[<ÿˆY.ÿ†X-ÿˆY.ÿ[= ÿSRRÿÿÿÿÿWWWÿAAAÿBBBûBBBeBBBBBBDDDBBBBBBP@@Aò,'"ÿoH%ÿ„W,ÿ†X-ÿ‰Z.ÿ{Q)ÿ;'ÿiE#ÿ‰[0ÿ·•vÿÁ¢…ÿ¾ž€ÿ¬ˆfÿϳ™ÿα—ÿ¡yTÿ†W,ÿvN(ÿE.ÿ;'ÿzP)ÿ†X-ÿ†X-ÿ†X-ÿI4!ÿeefÿ‚‚‚ÿÿÿfffÿCCCÿBBBÿBBB»BBBBBBBBBBBBCCC”777ÿ:*ÿS*ÿˆY.ÿ†X-ÿ‡Y-ÿ_> ÿoI%ÿ‡X-ÿŸwRÿ½œ~ÿ´nÿ¯Šhÿ¶’qÿ°ŒjÿœsNÿ†X-ÿ…W-ÿsL'ÿzP)ÿ‡Y-ÿ†X-ÿ‡Y-ÿwM'ÿ;3+ÿttuÿÿ‚‚‚ÿnnnÿHHHÿBBBÿBBBèBBBABBBCCCBBBBBBBCC¿211ÿ?,ÿsK&ÿ„W,ÿ†X-ÿ„W,ÿƒV,ÿ†X-ÿ‹^3ÿŠ_6ÿhH+ÿ[@'ÿW;"ÿoJ&ÿ‡X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ†X-ÿ„W,ÿE-ÿ>=<ÿ|||ÿ‚‚‚ÿoooÿJJJÿAAAÿBBB÷BBBpBBBBBBCCCBBBBBB0BBBÐ666ÿ#ÿI0ÿ„W,ÿˆY.ÿ‡Y-ÿˆY.ÿ€S*ÿT8ÿ3*!ÿÿUPKÿH4!ÿiE#ÿ†X-ÿ‡Y-ÿ†X-ÿ†X-ÿ†X-ÿ‡X-ÿU+ÿR5ÿKHFÿ€ÿiiiÿHHHÿAAAÿBBBúBBBŠBBBBBBBBBBBBBBB5CCCÍ344ÿÿY;ÿmG$ÿrJ%ÿfC"ÿV<$ÿR?.ÿ‡„€ÿììíÿÀÀÀÿbTGÿ]E/ÿY>>]@@Aê¼½½ÿÕÖ×ÿìííÿíííÿìììÿìììÿìììÿìììÿîîîÿàááÿ±±±ÿŒˆÿŠ„~ÿ{wsÿÿ !ÿ===üBBBÒBBBoBBBBBBDDDASSSßèèèÿîîîÿìììÿìììÿìììÿìììÿìììÿìììÿìììÿíííÿïïïÿîîïÿíîîÿååæÿgggÿè)))‚===¨¨¨CCCR\\\èéééÿíííÿïïïÿìììÿîîîÿïïïÿíííÿîîîÿîîîÿçççÿéééÿïïïÿíííÿíííÿ¯¯¯ÿÕKUjjjíìììÿÞÞÞÿ———ÿZZZÿiiiÿ§§§ÿÚÚÚÿÅÅÅÿvvvÿFFFÿNNNÿÿ×××ÿìììÿÏÏÏÿ<<<éZK---íYYYÿ222ÿ888ÿ‡‡‡ÿƒƒƒÿ000ÿ&&&ÿÿ777ÿ”””ÿÿ,,,ÿ***ÿSSSÿCCCÿñX7$$$çEEEÿ,,,ÿ===ÿÿ‡‡‡ÿ222ÿ,,,ÿ+++ÿ:::ÿÿ{{{ÿ'''ÿ***ÿVVVÿpppÿAAAòN]]]ÎâââÿÝÝÝÿ¦¦¦ÿmmmÿbbbÿ¢¢¢ÿÞÞÞÿÝÝÝÿ¤¤¤ÿlllÿhhhÿ———ÿØØØÿìììÿèèèÿhhhè4---‰¼¼¼ÿñññÿðððÿîîîÿîîîÿòòòÿáááÿÏÏÏÿàààÿðððÿïïïÿïïïÿíííÿîîîÿÖÖÖÿDDD¿PPPº¶¶¶þâââÿçççÿÛÛÛÿ¥¥¥ø[[[¿777ŠSSS¶¡¡¡÷ßßßÿíííÿíííÿâââÿˆˆˆñX<<<+++vZZZ¹fffÅNNNª[ [XXX¹Ýß]]]À[  "$þÿÿÿüüÿÿüÿÿüÿÿüÿÿüÿü?ÿüÿøÿðð?àÀÀÀ€€€€€€€ÿÀÿÀÿàÿàÿðÿøÿüÿþÿÿ?ÿÿ€ÿÿÿ€ÿÿÿ€ÿÿÿ€ÿÿÿ€ÿÿÿÀÿÿÿÀÿÿÿÀÿÿÿàÿÿÿðÿÿÿø|ÿÿ( @ × ×  kqAAA...888(BBB:BBBE>>>DPuK1 Î ßUAAA:???†,,,Æ111æAAAóAAAø444÷ö øØ666wDDD%BBBBBBD...í000ü×@@@í666ÿÿÿLLLÿWWWÿ)))ÿ'''ÿCCCÿ)))ÿ<<<þBBBßBBB‚BBBBBBBBBJ444ò999ÿ$$$ÿKKKÿ...ÿG7)ÿ3) ÿ$%&ÿ566ÿ'''ÿTTTÿHHHÿ===ÿbbbÿOOOÿCCCþBBBÈCCC?¥¥¥MMM:::LLL !!!‘555þ;;;ÿ000ÿ]]]ÿ?7/ÿ¤~ZÿšvUÿE5'ÿÿ???ÿSSSÿ???ÿDDDÿvvvÿpppÿTTTÿ;;;ÿ777â...V BBBDDDCCCs...÷444ÿDDDÿ***ÿAAAÿlU@ÿ¼hÿÊ›oÿÈ™nÿbP?ÿKLMÿDDDÿ,,,ÿÿ)**ÿ+,-ÿ%&'ÿÿÿê‡9 BBBBBBBBBCBBBê666ÿ‹‹‹ÿÔÔÔÿdeeÿÿˆiLÿÀ”jÿПrÿ¯ˆcÿŸš•ÿÏÏÏÿ|||ÿ^K9ÿfN8ÿ@1#ÿ=/"ÿE5&ÿS?-ÿ[F2ÿI8(ÿ÷ÉoBBBBBBBBB¸EEEÿWWWÿ———ÿôôôÿ¯°°ÿ2)!ÿ§€\ÿ•kÿËœoÿ”~kÿÛÜÜÿííîÿ—ˆÿ¶‹dÿÒ¡tÿËœpÿƘmÿÁ”jÿÅ—lÿΞqÿÍžqÿ´ŠcÿlS;þ æT!BBBBBBOAAA÷WWWÿuuuÿ{{{ÿêêêÿááâÿƒviÿ¶‹bÿÍqÿ²‰cÿ©£žÿïïðÿÒÓÔÿŠuaÿÍpÿÏŸrÿÉšoÿÖkÿÇ™mÿÍžqÿÏŸrÿÏŸrÿÑ¡sÿÏŸrÿ’pQÿ0%ùâ£1BBBBBBžDDDÿnnnÿ€€€ÿhhhÿÕÕÕÿðððÿ½»¹ÿ™{^ÿÊ™lÿ”|eÿÕÕÕÿïïðÿ´³³ÿšz\ÿÑ sÿÇ™nÿÄ—lÿËœpÿÏŸrÿÏŸrÿÏŸrÿÏŸrÿËœpÿÄ–lÿÕkÿµ‹cÿŽmNÿD5&ô‚BBBAAAÒLLLÿ{{{ÿ‚‚‚ÿiiiÿ«««ÿïïïÿëëëÿ³¯«ÿ~lÿ¯ª¥ÿìííÿëììÿœ™•ÿ­…`ÿÍqÿÅ—lÿÍqÿÏŸrÿΞqÿËœpÿÈšnÿÅ—lÿ”jÿ•kÿƘmÿÍqÿÓ¢tÿ¹Žfÿ;-!®BBB7AAAëVVVÿ€€€ÿ‚‚‚ÿmmmÿdeeÿäääÿíííÿìííÿâããÿêêêÿíííÿææçÿ‡€ÿºŽfÿÈšnÿËœpÿÏŸrÿÊ›oÿÄ–lÿÖkÿƘmÿÉšoÿËœpÿΞrÿÑ¡sÿÑ¡sÿÊ›oÿ£}ZôH7'€BBBKAAAõ\\\ÿÿ‚‚‚ÿbbbÿD:2ÿ¨£žÿææçÿíííÿìììÿìììÿîîîÿËÌÌÿti^ÿÁ”iÿÉšnÿΞrÿÈ™nÿÕkÿÉšoÿÏžqÿ”jÿ®‡aÿª„`ÿ¬…`ÿ§]ý—tSçqW>²7*OBBBOAAAö]]]ÿ‚‚‚ÿ}}}ÿMMLÿdHÿ^N@ÿlmmÿ×××ÿîîîÿïïïÿÅÅÅÿVWWÿ<84ÿ™wVÿПrÿÊ›oÿ•kÿÌœpÿÉšnÿ’sVÿlaVÿkgcÿhfcÿGC@ÿ;85Þ"7BBB@AAAðYYYÿ~~~ÿZZZÿ$" ÿVE5ÿD@=ÿ>??ÿŠŠŠÿâââÿàààÿ~~~ÿBBBÿEFFÿB91ÿ‰jNÿ»gÿÊ›oÿÈ™nÿ}fQÿkihÿ€ÿƒƒƒÿ|||ÿKKLÿABBÉCCCCCCBBB$AAAÞPPPÿkkkÿ,,,ÿ###ÿ??@ÿ@AAÿ<;:ÿ%$$ÿ222ÿ/00ÿÿ'%#ÿ987ÿ;<<ÿ-,+ÿTD5ÿ³ŠcÿƒiPÿihgÿ‚‚ƒÿÿ‚‚‚ÿsssÿFFFÿBBBªBBBBBBBBB BBB´DDDÿ??@ÿÿ>=<ÿCCCÿ&%#ÿ?+ÿU8ÿG.ÿG/ÿY=#ÿcB#ÿ-!ÿ;;:ÿ>>?ÿ8, ÿW=%ÿ2.)ÿlllÿÿÿ‚‚‚ÿeeeÿBBBÿBBBtBBBAAABBBBBBk>>?þ,'"ÿa@ ÿD3#ÿ.,+ÿ=/"ÿ^>ÿ˜mEÿ²Žlÿ«…bÿ¨]ÿ˜oIÿP5ÿD7,ÿ92+ÿpJ'ÿS*ÿ@.ÿ\\\ÿÿÿ}}}ÿQQQÿAAAéBBB2BBBBBBCCC>?@Õ=0$ÿS*ÿ\=ÿH2ÿD/ÿkF#ÿ«†dÿ¹˜yÿ¿Ÿ‚ÿ³oÿ¬‡dÿnH$ÿR<&ÿM8$ÿ}R*ÿ‰Z.ÿgE&ÿ`^]ÿ‚‚‚ÿ‚‚‚ÿhhhÿCCCÿBBB¡BBBBBBBBBAAABCCk73/úhE$ÿ…X-ÿ…W-ÿX:ÿoI$ÿ¥~Yÿ¿Ÿÿ¶“rÿÇ©Œÿ¬‡eÿ„W,ÿ]> ÿ^> ÿ…W-ÿ‡X-ÿ\B)ÿmmmÿƒƒƒÿtttÿJJJÿAAAäBBB5BBBAAABBBEEE =>>¥<2(ÿlG%ÿ„W,ÿS+ÿ€T*ÿb9ÿjGÿwZ?ÿxX;ÿ‰^6ÿ‡Y.ÿƒV,ÿ…W-ÿ‡Y-ÿxN'ÿE:1ÿzz{ÿwwwÿPPPÿAAA÷BBBmAAABBBAAACCCEEE>>?¸0+(ÿO5ÿ€T*ÿT*ÿtL'ÿO9%ÿ‚€}ÿkbZÿ]@$ÿzP)ÿ„V,ÿ†X,ÿ‡X-ÿqJ%ÿOF?ÿnnoÿNNNÿAAAùBBB‡BBBBBBAAADDDFFF:;<¨4,$ûmQ6ÿuU8ÿkR;ÿ‡ÿçèèÿÐÏÎÿzl_ÿqT:ÿrQ2ÿpN-ÿnL,ÿD2!ÿIHHÿGGGÿAAAïBBB{BBB BBBDDDEEEHIJ20.vQG=딆zÿ­¨£ÿããäÿíííÿîîîÿÔÓÓÿ“‰ÿ“|gÿt[ÿ[H7ÿ/,*ÿAAAûBBBÄBBBKBBBBBBLMM´ÙÚÚÿîïïÿïïïÿíííÿìììÿïïïÿììíÿרØÿÐÏÏÿrssÿÜ;;;iDDDBBBBBBYYY½çççÿßßßÿÂÂÂÿØØØÿìììÿÔÔÔÿµµµÿÏÏÏÿñññÿÄÄÄÿ)))³:::¾xxxÿWWWÿqqqÿ]]]ÿUUUÿEEEÿpppÿRRRÿgggÿtttÿ!!!Ã555«nnnÿ\\\ÿxxxÿ\\\ÿ```ÿ\\\ÿsssÿSSSÿgggÿ‹‹‹ÿDDD¾íííNNNoÎÎÎþæææÿÉÉÉÿÕÕÕÿÚÚÚÿÍÍÍÿÇÇÇÿ×××ÿðððÿÛÛÛÿVVV“oooœ¶¶¶îÃÃÃõžžžÓ___}\\\xžžžÔËËËúËËËûÏ"""1444 (((<222J $CCC^EEEa&ðþÿð€ÿðÿðÿðÿà?ÀÀ€€€€À?À?àðÿøÿüÿüÿüÿüÿþÿþÿÿÿ(  × × -0FGG888 AAA4###=@ ÿÿÿ… ¾556£''&ÚABBê+++í&&&æ<<<™DDD3WWWLLL000 ,,,¯334ÿGB>ÿeO;ÿ<4-ÿ===ÿCCDÿWWXÿAABä*+-d 111<<>>*JJJÚÿÇÇÇÿŽu^ÿ½’iÿƽµÿ½´¬ÿ»hÿ½‘gÿ¾’hÿÅ—lÿ¡|YþJ9)Ö z@@@u___ý|||ÿÍÎÎÿʝÿ±œ‡ÿÜÜÛÿ°ŠÿȘlÿËœpÿÍžqÿÌpÿÊ›oÿ¾’hÿŒlMö3'dCCC¥kkkÿrqqÿ“‹ÿäääÿæææÿÕÖÖÿ¤ŠrÿÌœoÿÊ›oÿǘmÿ¹hÿ³‹fÿ´‹dð {X¯R?-1CCC©ijjÿXUSÿVK?ÿ‡‡ˆÿÓÓÔÿxyzÿ]PDÿ­†aÿÖlÿ–|dÿ}vpÿc_[ÿHB<ƒS@.CCC€KKJþ41/ÿ975ÿC7+ÿRD7ÿG8)ÿ940ÿL@5ÿrYBÿrqoÿ‚‚ÿZZZú>??PBBBACE6?71åX=$ÿC2"ÿ~[:ÿ¯‹jÿ¡|YÿW?(ÿ]B(ÿgH*ÿomlÿvwwÿJJJÓ>>>BBBDZn?:5‚bD)ýsK%ÿˆ_9ÿœ|^ÿ—tSÿ{Q+ÿ{Q(ÿnO2ÿpooÿWWW÷AAAfCCCBBB>?A@DG:50˜^D+ùxV7ÿ•‹ÿŽqÿzU3ÿyQ,ÿVF6ÿQQRóBBB@@@BBB479 WQKºµ°ÿéééÿåäãÿ½´¬ÿŠtÿ754ÊAABQ???@@@££¤WXXkœœÿ›››ÿ———ÿ•––ÿ””•ÿ788p~ mmmQQQO“““÷˜˜˜ÿŒŒŒø–––þŸŸŸüYYY\„„„XXXMMMŸŸŸ€¨¨¨—ŽŽŽZªªªž§§§›WWWaaaÀ?À€€€Àà?à?à?openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/pencil.png0000644000175000017500000003774212033133562024627 0ustar neilneil00000000000000‰PNG  IHDR€€Ã>aË IDATxœì½w˜dWyîû[k‡Ê§ÓH3#F£Œ" !@ “Ä‘ÛØÛ×ø˜c°ñ ›slŸcùì‹ík 8Û8à„I& „P@‘49‡Ó¹»âk­ûÇÚÕ½gOõh”P@ßóì©®]SU»ö—Þï]ßZ ^äyA^äyA^9Ïô<Ǥèº.À$`€hµäXJŽø¹ÒÓ” à±e=° 8¸8wM©¼±·PZï;žB ÑDJQkµ¦æ[õ£(:Œ‡€ƒÀp$9žUò‚¬.›W¯.W®;«¨ïŒî^Ö÷ô±q`u=Tr<)‰´¢´˜ªU_œg¼ºÀL½Æ\£ÆTm‰±Åù£3Ú}ÀýÀ·€mÏè/KÉ p²œ üðcoØ|ÉæŸ¼äJ.9“ ½ TºÀóAk0ŒYy—€)ìßJÓhÖ™©U¯.°wæ8·ïÛÉ?l¹ç˜ÆÜ |¸óù…)yÁN”_Þºy`èò¼òyý9çsöša´² O+ý±DHkR‚6L/ÎóÝ»øä÷nã»vþø8Ð|z~Îi\â3õÅÏByð±7_xùÀÿ¼þF®X»\”zê¾A:`4Gçgù—­÷ó»ßþR­†wïö>u_túâ<_ú,”_~ûÃ×Ý0ô¿^ûfÎZkøÖOí·$Ñ£»T᪵ëyÕ9çû[ŽÜ8U«¾x˜g$¾`ð!à#¿ýcoþõën`°«;QÔãõWŒÆqÖõôsÓ…—‰CsÓ;§&Þìö<}_|²ü(€~øÃ÷]ûÚÞ·]v5xµ8¢fbZZxŽƒ0;íHäSºòEÞxÞ‹˜kÖÊ;ô`;?Ät𣊜uëÖý×J¥òëׯwz{©”+ y|?€ÖŠ0Yœ™ÑùzÈæÞ5òâ›ØTée 2¸Æàù]Ž ‡üêþ‘¿Ýr×ðf`ËSôáñÍ?b244Tzýë_ÿž 6|tÓ¦M  H)ißctòÃÜìû÷ï3nT„ÍÀŒ+\á–Ä5Cë)wQð}Ä2!øÄ¥´øñø3ó­½;v?Lrú:zB_þ£– Åbñ‡‡‡ÿèꫯåüó/Àq<ÏÇó|¤tBຎã’Ïç)—K ±yófñ’—\ÍæóÎ:çóÀì~ßíú¾=;Eo¹,zËò® æ‰û”ﺼbãyâóoé[ šO^j[göHËjçO)?JP~Åu½ÿïšk^¡ßúÖ·‰|¾H.W P('G)y^¤X,ÐÕÕÍÀÀ*• ¾ïâû9z{{Ù¸q“¸è‹ĥ—^&4küõ÷n׃ší_#úü<Γ¬Ýù"›×ŒÈÞzßZ  |ŸÎÀ*ç²çO)?*P~µ»»÷ãïxÇ;͇?ü?¤Ö!Žãá8®ëQ((•ÊtwwÑßßOOO7Åb‘|>G¡P¢PÈã8ö–i år…+¯¸B\zÉ‹ä=nwÔÅJY ºy ®÷øH£D„ Ëì8:žß3?y.ðà8VW§cŒaUùQ0€ðÞžž¾½ó¿lÞÿþßAФ”ã8‚|Þ#Ÿ÷ñ}Ïsp‰ã88Ž@J‰”×uÉåòˆü áEår™k_v-Í Å–©1æZu1ìåéÊ¿p„ƒËûwõ5TØ |›ã¯dO’ç»÷÷ôôý?ïz×»õ{Þó†'*À÷mŒ1H)ñ<)%BH„°ž $ÁCJc$RºQ°qã9¢«\{—æÙ9~”éÑWîzÜ„’ÐlÅœ˜aÏÒÄv4ñ€ËêÊ?•dÏ/ËóÙ Àº»{nþ•_ùï¼ûÝï•ažôŸGâº.®ë&)AâºNâõÖÓ­ Z”Ò€ÁC)´6¸®ã8(ÓÛÛK/cõ*wlجur u÷ŠÇk õÆfhê¨t¼¹X¾ˆí-hמ§£üN©à#x¾À0ð—ë×oxÏüÁ‹ŸüÉ·‰8Ž–_l#}ÏsÉçs‹y …¹œ‡ç¹Ë^oï•U|ÆÔj šÍ8VD‘" C”ÒÉçù¸®@±Xddd„0û6ã6Zœ?º^­N c˜˜_âÀø4•\KS£Žv>½ÿTUª†ð|4€3€O¬[·á­7ßüQ^ùÊW£ÔJSŽ”’BÁ§\ÎS(XÅ{ž›ä|‰!Æh´6Ë€aS¯·hµb¢(&Žc´V'¤øvé8¾çÓ×Û‹ò\ñ•{ï¤GæÑuât—bm809ÍþÉ) ®O5n¹cõù=ÀC€âĪ€U;•‰d΋盜üÙÆç¼åæ›?Ƶ׾rù!,Ø+óËïûnîRŠeå·ÿÖÚÇ clè‚¥ìó¶qdE‰R Hé°fp u”¸õ¾ï‰ó+½ õôÛ^‚ÕDÂ0â¡G˜Z¬Rô|šqÄŽ…ñ¶$œc <–Ç?Vx^E€ó€?»ðÂ‹Þø{¿÷\{í+Èç½Õ»xž» ê@à8Õ¯Hd¯AcAQ£TŒÖê¥tð<)]Çahp#‹sÜ¿õA^wÖy8®»zu Õf‹[° 8±gq¢jupÛ‹ØVzd¹X= ,ÿý|1€!à3—^zùÝ|óGyÙË®¥\n{ºO>ï“ËYc°ÀΠ”Akã´ž}Þ|öQÑh4›!J©ÓR¾ ÖÐÚ,£ïûôôt³eÿÝÝ Ù44º*(ŒµæÞ]ûÙ79“D¤H+ö.¯ÔâàV`ãD…ŸŠ)4¬ ž°øøÕW_{ãoÿöÍ\~ùå ªwp]¹\Ã[²ÇIP¾\þ[kV¹Z+¢(&"Z­ˆV+@)}ZÊÏJÛÇ¥\*"|Wܳåq~¥×–‡™(`Œaÿä4ßxh;R´?Ã>î\˜`1l܇5€ÓQ<œN:ÿ\7€sOœ}ö9?þÑþ¿œ{îyAH«Ðh4YZª²°°H­Ö Šb`ܵó½%{dâµí’ÄâXŸÄ<^i3=]îÞùˆq« qaßÐ2«Ø–‰¹>÷½‰ât'¹À•’] ̵؆ÒÝŠx,îcÿŸg­\üG¡à¬«ÕÆÔ/ýÒ[ŒRJ(‹(ÒÂ;*ãy]]]ô÷pÆëôæÍ—ŠK/}±¸ð éïï£T*âû>®ë „Ä–þ:~æI+¬g»®G_ß/»æ¾ö…/ë‹{Åë7 ´F)ÅìRÿÞƒ4‚àÄ÷bð¤CÎq vþ,)qò£`¥Z 9+#†Ëéá¹j—Ÿ¾àÖÝt“bݺ¦#%8xø>äóíCã8³Ôë³ìر[Þyçmú _ðñ¼.6mºÔ¼õ-?#Ï¿ðb‡èîîÆq´Öø¾G+‚ zÊŒÀó|®¸ìÅ⎻ïß:´‡ =88ì86Î÷vï§Þlu|¯@w|°SŠXïwXQzû¬IkKÚhà9^ üí«_Í…ý×pöÙ§ÿÆ7¼>ð-ÍwÜÖâ–/ݪ?ÿ©»ãy³VŒn¾F¾þu7pñʼnÑÑQr9b1Z­è1?ûtDÁàà—_r¹ùÇ¿ø´Ñ ¡”-‡zБr™nî$9ÇE@ÅX†ÓÁ–‚YÐXÏO+V NL 湆®>óÚ×rÁßý¬_ÿÄ>Äó`Ó(¼á¢5ò5?ö sÏ{IþŽÛ¿Á_ýÕ_˜í»öÓÝÝCÿ€(—Kø¾Kë„~ò"¥Ë@ÿ€ùÊ·¿!î;$Ö–ûð÷”Ê—Bp¤6Ç‘Úì¬ÆÜ Ìsâè`ºlK§4™Ççô2à37ÜÀæ¿ý[X»ö ~J„\8# ëââ9ï.ž=šãg_žžÕ-î}àA>óOÿ®®e` ßw–É “«ªÇ'B|ßÛñÈÃæÁÛü¥AÊ~þ”ïq„äpm–ÃÕ™9¹ƒ2(;.•öÅ®šÃž+ð àoÞøFÎý›¿‘‘'ø)-਀¹3C††9O½‡oæ›7ñ½æ<«Ø|æ³_»Œ‹s6žÃ™gž™ŒŠ„|â?Äu=Üw¤^¯îÛúP¡+v.öœ28Br¨>áÚÌŒ6滜̶å„ð~:Ïxð—7ÞÈæ¿üË'¡ü8"`a}Èð»`ð9TŽ~ æµõ_¬pÁ+¯>SnZÛ#¾zë=ÜzçCæ‚óÎ㬳ΞgËÅ(RIßàã®ë±}ûšÆ¨âÁƒsãÇ'ÙÜ5Œ/WW…#$ªSªÎט»°) ßVš;K¶8¡çý©jk}ºä}À¿þÖo±ùŸÿFGŸà§´€½Ž!zq“sþFßëI8øo0q„MkQa junzù|åOnä¥ëÄÛ~ögôßÿýgŒçù”˺»K§ôØÕÄu]&'?>Qn4•«_òR¦i±68•‚@ÅÄF7’SÖÚíÃÁêôtŽg=ükÀG~û·üЇ RyŸ4åAôÒ&Åÿê3òVVŽ|&îB.„ɽU1¸> ©ôUxé…ÃÔj üÙßßbúz{Åå—_)G,÷<žQJ‡Gy¨~øð¡à÷õõñж‡éІ Ý«•#%ÛæŽ2ÑXØ <€åÒºKÓ¾Ù 2™óéçÏÚ*à7ßøÝßeàx’ÊŸõ zy“üóùiÃá/ÃÑoƒcÀñ W/^Î’ ZŠ Š(¸š—œÓ-¢°ÅŸ|æVÓU©ˆË/¿BHiì$`uzL¡ïûÌÍÍ,Þÿ=ZkÕ+¥$ŸÏsôÈÝš[g•æ´Û¶ÎaºU};$qrÈhsp¢˜Dz< àüØÇèyßû \~ŸÐþ™ªΉȽËaíO{8Æ¿Ówj2 ý‘}CÚ œ` Áq@ºäŠ9®¼`H4šUþàÏ¿dJÅ/{ÙË„mÑÄñ©KDÇqh6õ‡~pflìèˆëº²=NãGŽŠM¥5¸p€‚PÅl;Â|P¿;s(îÓÞŸ½iv°ãñl#‚~ÖuùÀÇ?Né]ï²LÞiKÚ¶ Šðè:Eù=’3Þê`8øM˜¼-]ˆHÂ=IßžI¦rk‹T„ œ/ð·œ-kKKæ?þGæå/9_| JÙž0켌UrìÜùèüîÝ;†=ÏsÚ¡Þ÷}ÅCRŸbV‡ ©"šqý‡Ø|Ÿ&{Ò £¤þNu”gKp€_ô<>ñ©OQyç;!—{œŸ±óóó<¼m—VÖâuˆŽ̶jl=´Tt0ÆJ'3~ísY†°cDx6D€ð‹Å"úîwã½óOðS|’Ÿ”ƒG7(º†_ã`B8v L=q tl‡Pì„Íý®Ò³ã¯k*†¨qòž°Ép¥ÄûÞ|oûÃÏš+¯¸œŸûÙŸ¹œ·Ü3–V«ÙܲåÞc{öìZï8Žoûâ8fïÞ½ìß¿Ï÷©·š«F! °6‹¬ }à ¢oפ«B«ç™6€"ð®®.þø½ïEß|ó“ü´À=4k~OЕ¤9ãwÂÔ} ”õz7ù.«h­ ެQTg­÷K BÚóå›"¼»ÀqÁh.¿´›×¿è€ù—úŒ9cí¨¼òÊ‹To‰ã8ž››­ÞqÇ7Ž7›ÁùRÚp~~ž0 q]­5ãããŒŽŽ¢M–º_‘ØhæZ54æ0+p*e·å±^žY(¿ÒßÏþÚ¯¡?ò‘'ÁIh`ñaÍð¯CßŘ~–¶A>g½XÅ…VáQqÜýç Pê?¿M’ ´¶ÆÒªA³ 9Ÿ÷¼í2ùs7ßÉm·×lÚt®jµ"£5ªÕjÅ÷Ýw×þ‰‰£çh­Ï?|ø0ù|ž¡¡!â8fllŒ¾¾>„„ahÛÏV)ÿ¤,…MŽÖçÀ¶‚-²’ÿWk9W}’QŽÙ¼a@|õÎÝÎÑãÍÒ† ëÊcC¾ïç•RA€1† ˜šš"Š"|ßgaaaYù ­ÖR•ËzÏ<JÕ¸Å=Ç÷p´>¿ø&'6~´‡}³ÃÀÙçŠÁ_þÐ#@xÏš5üþoüæýï’Ê1Œ•Bêo× ½´@}âIUhOÉŠ“Ù@*¶”¯t,éöµ Q´#x>äz,(ÔŒmñƨÄP"—Á3û¹áš³ô_ÿçn±kר¨×ëÌÏÏ/{úüü<6lÀqæææÈçóè¤(Š"\×¥Z¯š¢ð…LÝ 41?˜9ÌÃsG€ïbWí4Ü›­íOY÷gßûÃŒ9à}½½|ìÃÆ|àORù†#kB¢÷hÎ~{ŽVM0³ê@V±Í*Ôç’%Þ´ýù­ú @[WêRw’ÿ%¨Ð‹6Vá›TdÏåK6¢ YS@|á¶¢ù¨8¢ÑhÐh4(—Ëlݺß÷1ư´´„çyDQD.—# …ãf€¼ØÜ=‚“˜2šgsûØŽPc¾܆ÖY/ÎzºÊÖ­[ÇáÇ!Š"êõ:`É!ß÷) Ô Ñ_ 4°uî(·ÛGFÝ ÜŠò¡³Wg½>ýœUÎ?èþøŒ3ø…O} nºéI~ÚðȆÒû$›ß”cúpô»ÐG‚ðl8ï´€O$”®1 ò¡6ožã&Æ¡í£—‡œŸp펫ÄVƒ:Ô-q$ “u—ñÃcµþ5£Á»ñ¢â_ÿËÝb".ÑRf“ÉÉI†††8zô(q†!Õj•ÁÁAzzzXZZ¢ÙlÅ‘X_îÇ‘––¾}b÷ßÄF¸›{ýÚ²Z$Èâ€Ç$ƒžnèþhhˆ·ò“OòkÀ–Á€üO;œÿ—ð0Ìn5¥.ëÕÒY{íåÞU (WZå; h+\È•F|Œ¥[UË ¨ÈF ù*;vÎÔ‡zËÚËå^rnI|½SmhÑÒ6«...R.—)•Jxž]|Â÷}Ö®]Kww7KKKÌÎÍQrrôäŠ8Bò‰Ü7µ_ÇFÿp+Tn¼rQ'(±“b³«áàéýÀLJ‡yû§?xÓ›žä§ÅÀƒ½ü¸ÃåÿÍELÁÜ.§!_^6 6ÏÇ‘U¬ëÛåZ ]6·u¨ô@¾h{be[éI$[+øÁI^w=kÂÐXjðÀ£ãQw¹[÷ Ž–¥WEG±~°`Ž‹…<jµ³³³äóy*• qÒëßþÛÃØØ˜ö*¢èæ¸ëønîÚK¤Õç€ï%¿º­üNJÏæúNÿ'k ' ?]þdd„ŸûÔ§oyËSð‰ww8?/xÉ;]üLl…émÖWèÝv^÷òP*®°zRÚT <˺9{^kˆZV¹abB‚0Ö`¤€Úä+Dl;45›4ÎÝ4Pñ=W6ª x9Éåksòè\ÝŒ7 " r¹µZ Ïóp];W°Z­Òh4X¬UÅ5ç±eæ ÷Lî¡©¢/÷°¢ôt —-çÚÏáD˜}ßjxz"@øµuëø¿?ñ xÒžpO¥EüÓ—¾ÓÅ àà·ààý5­—–z-Š—ÉÏi+þ~Ä$X@'"Á^aº,!Ö“pïB¥r%”6ìÞs8ž[l5.8{¨#¤‰AÆ-rñ<¹œÃp®I´–ç FGG™žžÆqr¹J)Z­sss¤ËX}ÝKÔãð«¬(? ’Ó Ì"ûÕP62t€OK(ìéáüùŸÃ 7t¢£O¢§–­å:s×y\ýKnG¿Ç÷ÚÒÍ]“›N*wg¿+‘8†Æ‚­?!uœ$Ëzs nA+á ò…dÔÐ~öìÔlt|jañ³{Êõ §ù8q'¨aÊeò¾OŽÐ®:R,éêêâÈ‘#tww“Ïç©Õj´Z-ÆÇDZ½9FS…·`ký0uáiÏOƒ;ÕáXZ­"X~þT@xçÀ€øßúMÁ /‘°×Eµr »F•[&ÊÅ&_ˆÅ™±pz­qÜZ Û–…8ÉVv窼ÊãÊ_ò‘K0sªÇ“üÝɰƒ‹ úŒYQ¸Lèß  ºiw|ßb…ú¼ùä+É € Š šLMWãýGg—6ôä{»£gÉ-Ù(F¡Aäú)å§(øŠ‚ïÐhXÖ¯R©P«Õ’¹.¥R‰z½Îââ"FCÔ[u€[;°m«YÅg§ŽNÞž5˜4pä)Žw•üüÒM—/üòË^^]<8P¦8P’ÅBNdNH‰1Úàæ1 Ç'ŒiÍÌ™J4évÇ®ºkœëvüÀRa Þ,G_árå;} &ï…æ”Í÷˜ägKë6۠ϱ!\º+£wi1 II6-È g0J‚´šèú" -¨ÏÜOËf]c¤ÁGè|…\m‚0V,/_¤âH …çœs?ü0žçQ*•èêê¢V«qðàAÀíÉÑàDoíô˜UjÄÉ‘ m§báiˆ9àåŸ{Fÿ»Þñ3ëÎí‘F€ãà!½h;iJ »š>5út|)5çí-9~ðPAº[G\wσçV¨LMCTMP|r¯„³‚Òsy;tÛIÚ¥ ŠÁ$Œ Jœ­Mµ~js‰‘”‰óevœfç‚ù‘Á¾5ÑQáÑÌõ/Íáº>q’w\"šÊ!ˆ•®úK=xžG.—£X,288ÈÀÀFƒÃ‡311aŒ1Û»°Êo×ùi ÖVh§p§;…üNä$åóF€~)ÅM›.8—3.¸˜z£…t|¤ãá8>ÂÉ!PÂ2uŽÄL¡¤D¹žVyÑsÁYõÖŸÖó‡þ£!¦¾Üåý'Ißzè‚®~;l›/ÙÒÎÉ\ºYþÇ8•°|«ð(JF}p à»Ö K6øy øü"Q¤Ø·óš™m,twô »‹®©U©ÏÄ Èrxº‰2W™£Kä=Mw¡—rϪÕ%¦§§bݺu4 vïÞÍŽ;ŒRêûصÿXAª«‘7í¥•_¶éÃ_³B %{øƒÔ,ŽÏŇ÷L4ó}ës½}}niq?& X*…[?NK ‡(h*Ÿ\N"ZUTì²Ô Ù_+ YÖˆ(bxx)%»wïæ›ßü&³³³Û€¯a=¿ÝÕ“õøì¹¸ÃÑé|§Êa5ø”Wk‡{¯~ýk®&ŽÁqòH×C´9y‘ì¸ÕžÎÞf·µÆA qÚ4Z IDATQ ¤ƒÐ ƒG(@‡9!úƒ³®¯’+.æ~§Ìü˜K©åþ•±þ0Ï$}ý"¹1Hß2‚½ƒ€X'hã…v€#hÔ¢pÛ£cšù5C~ýÐ6JÞ³ô`´Ä‹H/OÞ´¨  HÑ2.%ÏgçdËÌE½bÐq(•Jôõõ±k×.¾ùÍo233ó0Öó§éìùYŸÎéٔЉ8Õx@ÖóŸÒ?yæC¼êå—£ŒDº9¤HÖØMn´XÀ¥YéJS†(V4F‚ç;ÄJ·ì•R+Aì¯Áïï©ÔzÏnD]£ åý_Í37Y¦¾”têôØïzÖÃítä'›˜”í!`[¨P ¹°Ô8¼ûhX”Ö¬éò¼¹=tÅS4ý>æTžápŽzS1Ÿ§ç ½Çð¥¤Z¦,ªÜ²3Kä8·§—³Î:‹û￟»îºK·Z­ocIžfFù«åø6Ћ±ÄPûy˜:¿š¬Feà²=%YŸÅ-÷"â&ÊÞû¹Y¾üýéy£Íg±‹6dóñ©xüSéŸÇ“ï³ÿ˜ÞOüÄÀ@·xéUçc×µC¾È¤ôKP¾nÇò¤WOø bŒ‰í¸€¶©RÇ!FGHZ`\[8ˆcB +ŒÖÄJ¡#EÚ]i ¡VB¦Ï|£¡¹tO<êÐ3"É—0Æ07³d¸{{£k`D¬)ù¹3»^£œ>ûX™b—õþNômÄê9?ÒÞß)²tìy\ʇ'Þôæ7^“s½\R«;ÇE8©&L’æJèÄ0L¼Lÿc A«mb´ ìÖ.ºº†4M‹ä•B+E¬cb„*6(%‰•F+C€ tùØèiÖܾscG,-Ôô÷ïÝU÷нbä¬õ¥¡’@7戴‹ CÊ£ìÆ¯ˆ™› T©Æ/çyE&æêH£¨ÊºKy¦ë‚Oß½È'¿5>‡ÝÕs+sõ³õùjeÝ©<¾S™÷XÊÏÒ¾§­|xb`3pö ¯¹„Äq=éÛ°-ï76ÌÛåV ‹ëÑñ ûòj£1:Q¾¶^މlæÐØm[’T¨lyÙõý i&2( *VhQX3W¹¨å…‡u0=#vîž©¹•^Yê^Sš<|ŒÑ²¤±dh5ëÄ£ÏkÖ“C£«Hà#)Tº˜œè.ÛF–.ß°9|ôëcüÛ÷f¦€o‡XY¯7 øÒÞß~ìþ³ž~ª?›²†€§-O$üÄ@·Ù‹6Ù5ö¥› â8“Z½´íý»F¿R¡1F¡uŒV1Z‡6èÐö$ãë¶ 0Ë›9¨Ø’Eq²gû×v —d\¥PQÈlåbŽ7*úðþɦ ”ØpæHynrœ^æÆÐ_rpEŒ'Bоƒ—Ë#k㘨Î\ ñºº©Q¢¹ø…"}BÁÍ_>Æ¿}ïø8ðìJ]éÅš;åúty—æô³G–ã_ÍûO'÷?.åÃ3€×ßðÚ+ ¹¼—„!]¦MDµ»mÁz½ŠÀ(ŒVö*µFë: ˆ£·½ß’FvSŠcâ("Œ"”ÒÄ*¶¼" 4m4Êhb *Œ ×›?VÍ«©Z^ö—DEM5ùn¦«yZ ]†ÝE)4§ñ‚%“£‘ïE–û˜Ÿoàš€¾î"ê]üþ-ó|þÞ‰£Àcç:vBûYïTËwÂYèdT¼þ …ý´<ÞppîÏþÔk„çZ¥ é`„D “ ý„" ï*að FKªmZöõ$5´o’ã$ì«(Fiƒ0"1»·” i±2ÄQD¬F@Ø®;=µEõ¯¡±ïnº*Ý,ˆ.zåsuEE4 Škqºpf¶Q£À|®‡µƒ]ÌMM¢šsŒ õ±e\ðáÏîb×±¥±“4§±ÊÏróò~6·§A^¸ÊëÊÆÕò'ø¸åñF€Ï(mÜ0jé^&)ùŒÑ˜6 ˆFëˆ8n¡ã–U°V!0&ZQ¾Ž0¨ì˜€ÑheçÏÇaŒŠmø7Ê`”ÀDv0É$Kº)e")¢8„Q„[Yã4cÇÌD>ó$r»ˆk ”‹Ä…BžF~ˆ²Z`!?ÊÑFžrºÔ¦Ye¨¯Ì£“Šßüì^v[zÛÈ1ÃÉ9?‹ö;Õøi…‡XŠxµÜ*Âç±Ê¾'$7\ÿºë¯* Œ1‰ò" Æ8 k:Bé­$Âh;IG:–û7vðWëØ@Û£“#޵ÝQiâ(!‘´Š,¿Úþ´R„­˜(e c ‰—+0;¿H_ Rr˜[¨ÓÊû¬ešª<ƒ./ ˆ4³¡ QD¿áÂ"£E¾{Pñ;Ÿ?ÌŽcõû°+s,pâˆ^§uxìDëfC~vÄ/Kù®âÛòx ààŒ7¼æÅäóžõZ£PQ`$Ý•7ÝUS 1¡=@l”¶‘@ÛÅ‘Œ6hmžÖÇéÇ”FJ‰6šXb#,yjbmƒ˜H‡˜È q1Z¡ŒÅ»úMmr/ƒž‡Îuáx1²1‡)öø=¸Í*c…ƽe—¢0äKÿ±#47qLì¨ß|‹û÷NúÒa>Kó¦ b5ôoR@ß©êþ',ÇnZÓÛ»iãZ)-^S#” B"dâÉÊØ¼/Ò•b…Á€ŽF©ÄëÁ(ƒR )öÅÂØ!aTâÙa„6† ŠQ±"Öa$š8¹+v_)@x9“ÏûÆ1RLÍ,4 ›{vCœQv™×=Ìq<Õ¢Çq©äŠüŸŒù؇§šw`'lÔ8±g?›ï;ѼYïîd ƲÊ~¬pÿC׿îú«º{ºËIã½^­cËÿc•aÚõ<´°å I0‚ŽÑq`£‡V£ãDùq¢|m§Nk¥ÑØñ(R¨”¶Û¹ÅZaŒ@GÉ8„!ÙôÙâ„B±ú´òŽïŠ£ r H¿ˆŒÐµErµIús=Ý}|êîEó‡_9*ÆçZ·²2a#{ó;´ÇBü«Õýíç«=«¡ü§,üÃéÀeÀ™¯}õ”K6ÿ[À¯AÇ6ÿê8YîÜ*Û¶„Œl×í U‚ö㣔U~Ú]<•"Ž’Ý;%cI¤X îT˜‚FÅz™eÆ„p°—¤ÆÑHš£ùzµNìõ²nÀg¿äìr•¦)á4æˆëUzGFøè-³æ“·Ž‰Ùjøà^,PkK{H3[¢¥šU~6çwb;y}ûÜ“â÷<Ö"Qíjþç=ÏyõEl˜†¥(ÖB |­mÒu#Á$»i·—O7Ií¯-囀7Td‡•²u¾6DJ†±Š,СA+Û+Ø btdˆ‚äþkÛùc[É’9¥íIŒã@u<³ûs…bQôôà*,6 ƒe‡ÚÂ"¹ê1Ö¬éçãwµøÓ¯Ö õøËØU9N¿Ùz¼SíÞ~ ;œËb½Êçf©Ý§ñw’Nsª³¯àkBˆÚëâ;Ž‹ÌœsÖè¡·þø+ó7¾î¥zÜr©(s9ÏÑÚØÎ „ØÃˆ$Ø’.ŽqF1:ŠˆbE+«Ø„RØÁŸ8¦ÕT  ʨ$ÚˆDùÒz¿h£“v4ŽG|ìÞ`iÇ~Ï™Ź#yÔËl,.Zcš>ÅnÙïò¿ÝÖ cóeVÆò;ñëºÊ91̧+ƒöù´Ç§£ ¾ûiS>tŽéIý¸x»”rÐ÷slØpW_} çŸA±ÞT£_ùú]ƒŸþ?_ ¾ú{÷öt—¢áÁžb>ï[Ç4Úr*AúÊ®ª…‘õø(&Œ"L,À¬(*Š ‚˜8ˆ㤠HØÆN-LÒñmhŸ¶Ê7Øy¨pr»+êÇEÿÐù|ž¨Õ¢Ûk/Í€|iËoþãö0ˆÌç°Êשߜ.Ç:º,‹—öü´œŠâÍÖùYÃK_ËÓ¢|8ÙDæoüŒëºoìîî)œþÜxã[xãoâõ¯¿‘k®¹! ““þäñÙ¡¯|ã{ÞÝß{ôè…ç¯#C}y)¤°»n+”VÄ¡]W_Åš(°„Vš8£aGø"Mi‚($Šlǰ`²÷ÆÓnþÔÉ…J,g %a·ÔÜW4æÅº³ÖstI3ê× ëuœ¸Á¿=ò›ÿz ÅÜmÛNßì,ÒOG€,¢Ï’>Y˜Æ <>ý˜V<œèýO›tÚw¦ @>Ÿÿ`OOÏe7nâúë_Ç\Àš5ƒxž‹ëºlØp6##À`iiÁ;xx¬ÿ _¹»~Ù%›–ÖŽö—!D*¢8&Šb ¶õ¾Ò¨0NõÚ|1Qì¢É:ú2i0¶!F$àI70v ¾F­ÚZ8¸Å«xJ®]ËÒü CeAcnšØÒâ·¾8Q3†Û±“4Ûlh–ÙëÄÌuR~6ÔwjæH+z5åŸ ü=m’Þ:ýHòågöôô¼{pphøª«®æºë^Åùç_@WWŸ Á‚d· ».N¹\ba~ž…Å¥Ò-ߺoiýº¡¥ gŽT0BDaD)T)ŠÚ¨„PD"l…ÄaLœpýB‹÷„\žb ¤Dc'ŒXë8‘ÍBÐh4êêøŽ\¹«$s¥2E]Å´üóÝãü¯¯Í-bÿVÆò³H<ëí«)=Íá§#AÖKùBþÓ®|8õÚó¦T*]Y©TÞµnÝYùW¼â•\tÑ%T*––9~|‚±±q&''Ø·oìçÌ3Ï ç癞:NµÖèºíއê¿¡±v¨¿¨¢XDaDÚßÉ_±ÒÄ&!†4¶’0"Y¿Á$hC>2i=ï°Y“t–榫~0‘ïí);}C8ÒðÙ»§ùß_›[4vI–»è¼÷n'åw*óV ýiÀ—õúÕw:•y?åÃÊîiiƒãyÞOtuußxÁqÝu×322ŠÖ°¸8ÇŽÛÙ²åvíÚÎÌÌwÝõ]éX¦¦ŽŪòÍï<_}Åæ°»RÊ©X‰0R¶<Š!‚X);Ó;Q…‘–ÈÁH–P5™4ŸbŽ•Ù?™ËŸÞ÷P`jSù ÅštTÀûÿí8ñÝÙ£þÛ¼™Þs'ÍéwxÎuâó;õó§Ë¾lèäùðCT>¬®| œÁeÆhzzú¨TÊ8Ž$ [4›A²è9r˜ƒ÷³°0ÏîÝ»¸ÿþ{9zôÈò6­žÿùûŸiÌ-Ô•ÒÚñÆ[C2)ÜN3b%¿csÿòÈ£ÖV!Ðq„×óºY—“a‰_ýÜÿ¹ué(ðyà'OÐ줰NŠ]MáÙh±ZÎï”ïéð÷U²Ë§àYJ©—{žÇÈÈåra¨˜˜˜àðáƒLNŽ3>>ÎûÙ»w/•J…J¥‹éé)Nø’ûŽõã;ß?^«J©dÐ(Œ¥­Ç/»ƒŒAjm§ñ£—ï蘩Rb`þøXØW¾ìùÜnydñ(¶ï +›-dQy'å§;vÒå]èeKÄN!þTµý3¦|8qÿYX¹».p.°vÍšaÎ:k#¹\éé yd+=ô}Œ1Ü}÷4uºººQ*fiiqµïñ?ñW_¨¼òªKD©˜C%=}áKÛ"@ƒl£¦!i?_eŸç: #‚ÚLãÑ=S¥ÏßsL<|`þ0ðìnÉÄÄ“¼²Ó Mz$/[ΩÔëÙ1›ãÓÏáBú§’ìä`/hx©ëºlÚ´‰µk׆!Û¶ý€ûf³Åþý{q]µkÏäðáƒ'íš•–F+ìºíî§^÷ò+–7N„¤³”1Há,ƒ?‹þWW¼GJ\סÜ{ÿîÙò(»vîí™]¬1W‹°aÿXò–l™÷X$O'Ð׉Þ=U¹—õöô9x†•+ }§%– _¼ª··õë7R(”;Æý÷ßÇûñ}ŸƒE ó§T|Zþñó·E×]} ŽçÚæö(.ŽT&Û¶u„wII(…`©Ö`˶=ܳeî9DµÖ ÑlMıÞìÂvð´sQÖ#ÓõîN­ZÆðÛ§9ýNƒ:«:ϸòaezR>°Éqœu###ŒŽS­.±cÇ#ìÞ½‹®®^¶n}V« Àiꀅj}¸QoÅåBÑ7Ú.Îiï”^æVc S3‹Ü÷ƒÜõÀv³sïâ8Vq¬&b­w`›7Ú´l§š;Ê;¸Suî¤s|öïNÞŸ6RçÒlß3.éáà6ú^P(”(KÌÎçî»ï V«³wïîSåúÇçß}hìçÞrý:é”Y&ð–'Ù‰œÚ2…Z369Ã}?ØÅ]÷=¢ö7ÚèÃAmÌN,ª_dÅ Ó7]¥Î¥•ßIéYO‡üÓAùY>!æaõ(ðŒK6h`xµRŠju‘ÙÙYvìØÆØØ1ŽŸdii ¥ž˜AÄ­wnÑ?ÿ×[\à`½]ât˜{ï½›;·311ÎÒÒÂiçûÕdzv¡_k£}Ï‘­ ¤Ñ ¨Öš82Áý[wqûÝ[[Í ±á|?°; G±<Õ¤£â;)'‹ÜWË÷Ÿ5ˆÓ~'aûù³Nùpb ÐÀð*°`k~~ŽöQ­V©ÕªDQü¤¿Pk*[Ù[¯” ¥í{ñÀÃ{ÌÝWcÕ‚¶íX¥O‘p‚Éu¶Ç-:yÕj\{'„ß)tíËNVÙÙ”Ó©ÜËþý¬}íy3ðeàì§ïåb®^«·lÓå46¼ïŽc•ÝV¸aÅëÓ72«Œ´ÒÞšî»ËvêtäIG†NÞŸ ù§Cîg$±Ã¦×uø³ØÎÙ-XÄ>Ux«`»o@;¯gëôìÑÿéÜÞV8œxS³´j:üg©ÙÕ¼; þV ó«Q»B}ºì{ÎJº ˆ±Û˜ä›°¼¸[žÕ“#b%¬·==Û[óx[ñÙÐ <éÔÿMç_CgZö±0@6Zd|*ÔŸ¾¶¬!<§E`=·ª%PºXi›j/yÚ®Í=VjõtÍž~­ý\¤>»]Ï·¿7[ßgQtÚÓ²VrV©Ùú¿“1tBöéÔ’6€öõdô9öÓÒin`ˆr«¼´dCt'¯H‡Ó6™Ó6.ÅÉGi˜¾áÙP›þ?P{úy6ÔŸnm߉ܓ•ÿ¼‘NFàéç휾 Y…¶Ñtz¾AÚk³-h«•xŒ)ëýYO͆ö,ØKGˆìaVù.è¬üç´ @³z8nߤ¶ÂÚŠŒYY ½Sdh¿§I²9?ûžÕjëôké#N½Þ ¸e a52§Ó¹Õ ýø¼ì`PvÀ%}c²žžm&I£û¶Aµ4`J‡þìw¥ÃîjÊjH­fYåwt«)¿-ÏûÐß–ÌÞª'(;rùÿÛ9£ía†ªÛÿÿñF÷¤³‹CŸ½$ Ù©lË1e:¾@b"ü2OØ´O,s½×´s~uÙû&ÑS”hÇ9fõŠþ™÷_.IÝ#=n¯Oühÿn]z= 1‘Ÿz϶%j©Ýö|iɼt4ŽËod`æÞô<“>fíß1×úïÜ"C¿×Iëó¶IL’ùYš¼3#Ëëù·]6Züsò§š”‡Ì^:JEKþX ZI€Ûôè å-aœK-ö¼é„%À&ùµÛ¢e “ÄFšÑ¿ ÿ+cÉqé3¸%¦ú=Cºç²Àc­OïÏ=DÊG#'c%+#xÇî!ݘ|i.¥W~•1“ÈŸn½bïçùž·•ñ$eJÔ¦Ð}¦ëÙg{[¤ —nLþHð¤ûù´/I®qNÛï0G:’þI!çöÄ~XÓB6Id5ÿU¤½]Ì{ä^ôbæ“çK{©È9üüiï!`@:FÃ_.t¬øy-[bEÆ™dèŸî3éúCüíí ØÏ û4Iƒ…1bÊÚWrá~+å¶=+íæ•ñvì˺€ôoR'#½~:’žiú™q=(øéJï´>íIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/pin.png0000644000175000017500000002503012320217277024133 0ustar neilneil00000000000000‰PNG  IHDR€€Ã>aË pHYs  šœtIMEÞ (’ Yà IDATxÚí½{´ÝWußû™ký~¿½Ï[oË2¶e,;Øl"C !źˆ …)m’6 {¤# 5Í£¹·½:J[Ò’”´¤%×jÀM"ÂH ¾4!V F†]AæaƒñÛ²Þç±÷ï÷[kÍyÿX¿}tìv„ºØ•|´—Æ–ÎÙûèèh¯¹æüÎïüιÄ̯ w¹ñ[06€ñÀ…·„ý‡ÄßLï½[ªýH±)öÏ!ñ"âDð{X(<‚“ýûìß[­™7ÂÌ.Èàç¹£à U•ab˜Î@æç)vÜCÛ1ûŸŽ0ýãFÛã±;˵ò>È o‘’ïEåEVp g‡ä’Ç#¦S¤jš´ñßyœ¿¼µ1PÙO±ëf©îš¿9̸-íc?Ø>]žðB5€{þüímÂON¶Æ——žÆ˜ æˆR2›m„oôz|Í%¾Â€¯~ñA>wݯX4hÆð,Z÷Þ+½«vÀ×ÿýMëùד/¡Á#H†yOGÂQ?š©˜hk‚8¾¦=þzáó|`Ë;ì(÷JuãI‡¹‘¼ï°ß(–ö·ón"×"¶‡ì¼4˜âB9ñWýÙÍÊŽl›ä}ã{¢1pæ !0 Õ~™åj B¶ÄÅs/áG–ÿPŽM~ƒŸ¸žÏmü»wÜ)G$rÏ÷/l'‡ˆ‚acpŽ×^©ä éÒÛåêð“ Î!âÁ•beŸÔJœ€š€8” OÀˆR"l`š3œ¢ÏD˜£,¿Øòp¨øèÆ×ï8(v±ŸÈ<˜IÖŽ à\þG?³w¾xèeƒeþ]/200ïó™—ûGBr0Aðùsñ( ‘)zx4%j ¬Ä=z Y°I*õ´8Ê'M|~¡Ç¬¿Ñ¾hrþ‚Æ ÇÀÙûåwâ ®Ž‘¦—Ÿ4É.ß(p&è(æ‹tÏç¯S+²$çQq5‰•µü½T b˜áø Ç{.~¥}îŽÃÂ±ÝØÝ`ûÀ¸ž¼vÏ>ŠƒçÈC\0à&ùõ2ýߣŽã<€¤0'¨XBñÙD»Øï:ƒp((†Ã°îóÔŠaRvhÃÚ„T³¤²â¹[yÛògåØÂiÞ¹ûˆ=2ÀµpH,ì{€gtüžÈÃmÉ1¾Ií—XĹnÂ*°û;€[õ¼`ø³Ïu áÁ LŒJšXPô œÁP ª¶â¾ö ¿6û}vJîÀ¿óF)d¾ÙwŽBĚ˗}.k!øÏsRÊ.ü\½?k)g–¼tç¿ÀŒÎ0Pta".$\ö©D½Ç£ )qôñ!2pž&õ™k¦ùÄÌÎÛ>ÀÁ[”Í7Z<ïË…S 8Dáfù‚ASUô‹K™RÃKCcà’ä´Ï %¡.eï bç!L\ŽñÑ”¢*-’€ÖG‰Ag$–aY`¾ ¬`qªåez÷-ÿ‚)ž#€p¸à€”Ü.½‡’‰±xÚCÀ!?Á[{¯ýØ£_ŽÂ©Â¥‘ã 0H}*/¨ò$—GÅ:à@ ™Ï§_<¦‚:â1uà²'I¨zÌ(%àrˆ  Q‚*MÚÄúòq~OóI¹Õ¸ÁÛ½w9vüï!Ž.ð¢{ö¯³GÒƒüŽ’z&å"z\D?ö™t‰„’ÄèÎ>Š’¤{òç(1 * E±î50ÒÙ¿«‚vDR6†î5µüú° ¥"Éǚͼ>þ?m—u¹K¹j>Œ=ÀÓý=LqÏ[Äßtï=|þ®úÊÔ4 VÐ'ä |“S€Cà  ’HAJ¾@‰Ýiδ±u˜`„’žD®@“ ¾$©`®‡*$×C‰ â:*+f÷5~]þŒ£¶ÏtìžÎõµ»äª·[ü¤]å?ÃoØ2CÛÀ\º‚õÖ§ Ò˜‘HB D¢$‚’Dbj‰ê1I¦ªŽˆ#iÎu‚’Á'‰èHPG¢NRJ(&0W³Ü^Í5?ÍwpH¼ "ûÅôÇðm®;Ü{Ä],óñ-ÓüÇ“_¦'§9ƒÑ‚È&渜Ílb& Zì@žÅùq@$c´ãô çäPuD8iæ º?ó÷ -B( f×-½’癀íÃ#ÏItÁÀ®»F<ÿ> ê Òc_¦Ïi´4­RáÙÂ\±‹ušžz|m°¢ÎH.û†DGupvãG›WŒ"uQ"¬à‚Ôaƒ•¿[€7äTeD?Á÷q”-È|ú̃ÒÀ·Í4î2vÛ!g›ùá©ï@–Ž“Ç) (­&¦ˆ2IÏodÆMPzPâªÚ®Ð`E1§]¹od¬@BíjŠÉÅ•¯OD,„U€sÀ@{T±ÀBM4X³‰7œ<1?ý²çþ1¾Ç6‹øÙMÔ›/A{jР³gp3¡Å,.Ö,›Ñ+'YgXà¸/X@9“Jz@ðù´÷ÔhºZA÷v> @ 9ïÇw¯)¨¡.­ª9Deç%©ôLÒrbàØö£5›™ä±±øvÖ¼¹{-ÍÜ ~ÀJÄDs”—^KšÜŠª©yôTË2‰Ñ/ Œ¤!Ðg}J\’Û|ÁÐ¥4 BËÐ¥÷ž:'ŸŸ‰ÒaƒÑ놮Âùc‡uY‡©Ã¼ Oô«Š«á™I /8úéí¾ê±'Lâ4áMim–¹+wÁÌshN'ú'Ž’xŽÞC±ø%ðTª8ï™ôp1-ׄšíN™tøÒ(Wá{ëh!ëÀ Xˆ©#C+!Ã\Ë€’©"qF v;6€oc Y¾kâjnk×±±h9å¤KéF˜MÀZš8Ä}ª/&>~‚Ù4d9´7Ÿ¨`ý 25‰L­GøÔ¢!Ô nzH ÚŸæ¡©ÍÉ'o}—ýÕØ¾þ@~?Nó≚ca–é²íô#( $bª9ù0áK_dÝÉR†uÞaeŸ¢'èºtnI%žk4 pm‚¥–r}Çd¯[Ç™çîà±×rr%üz"¹’˜¨HL˜%|ýÓLè·yÜËôÏiþGgF0²f à†¤¼ëNÃDôá?åÊ­5â…3x‚¢]R–‘¸XD%Ó3 0J"KßÏú¿>G“†5CqL¸’¢gÔeI1QÂôz¤_¢ÞÐ0DFUפ¦&Z¤b‹üÒÖXëX˜™âñÔ£ ë,”´§Žâ¹+½£wñ,×¾ŽŸü‘çÎÿ7۷Yøº;±_Ø+&¶§²ß>t“nÉ`ouÜï·¬bõÜ jÓD¦¶mfá’—¡_„é/~•ÇbáÔišd”E EŸB¡ueQ ý‚fjŠ&("ÒBµ”°ÖÐVÑ&âjÖ{œ i(<‹LØ4µ9Bá­$?±½Ÿ~üGÞwð¯Ù÷3V\³à–RÞvËAÛcÍ!ùl9Å”dð'FZiÉ¿‡Ž½K˜E°ˆ#Q8ŬÅ[À£r‰3÷¥wä+´÷=¦SqôôÁWL¶ o‚+z˜´gq†•XhÑzkÕpqF-…aÓZÌ$üúã‘Âq{»›\ò‰×>vÿ¥•kw:;r¤{€§°ÞúrzžÁÂïË÷7ÓÌUF‹#÷=ÙØ*À2I+’H4ˆ$¬ ¤¢åL(榨¾ëøç]ÊÑ/?@ïáÓl:ò%N/-ASK“Þ¨ÁHp^pšh Ä;DÁioz±×Ö¤AbrÆøÓ#æÿbûtúø-Ú1¹å–òŽÛl·½¶:%R2°{€§ž÷y1*û€üN»««bEåvå 7UE%‚$„-FÂñM‹µ-©È âë«k¨l8D|ûÊ}؃Cˆ8S1S))%¢8 ­Î3ão¸nñÞŸý¼½VØ_ûÎI_Àšew›Èƒ{eC»—”žêØœ·ª‚'Ú}ÅÙ‚­bQEbÄ4!!!!@"ÒFhnXz“ø«¯„—¾”êÒ‹i×Í™/±ÖˆF‚Z!B%W\¶X–S¼ãˆçð¹ëZ³px¯¹çü oJ5ÇIÔ+®´÷¹JoÖ5yHI6ÈL¾XB̤"")F,$ˆ-©mH¡!Õ-š<}MèÒºô8ƒr‚ª,IÞ¡¾1Ã„Ò j­Û~)GÞúiûäž]8Žíwcxº×žC ᇭ©¢¢ÿÝù×UYÀHú™V<¢HR$>*„„Ä„¤ˆ„ÑéHJ¸åÓ4ƒAæމÅeÂRk×’ 3Ìs•NÌÎÒ켘?”oîî³ 8õÈ9‹ÃkÊÞ½žw,ïÙ.ög· §¾‡¿Ï òdÚÕ );V€€¤Ž ²Œ³k1‘¢%…„E$¦Üö#"®iIÃm×DÜpˆµ5iXãšT ñEô'ãæ¹Á܃‹œÙ½ƒ…ï9dï3Pnãœ¶Ž¯°óqÍU{‰·Üfi²àÖc"Ñ4}öÄ0°¢ÚËÕ;1=[Á³„¤ÁpI‘”ÐbQq1!mÀÚbö® HÝBA !R©" HÂú ýƒ‹,^ÚG·]ÉŒ®QDÀ·¿îȳümqü¦¼¨êóB)0±Ûv÷„³» ä~¯„2Óœú¹ˆFEƒb)’bÂڀƈ…‹kÖ4h`XcKtq‘¢déÉ`X˜ötV^ü¦?úOù­ý’ã¾™Ù¹4‚5cÞ@O ý ø%{)Yn¬LˆBûDÇbgÙÉXF‚b)£|—.Ä.öwFq1"uDê6{€: m.Ù°Ab‹‰Ã‰ IJ5³~!l]ÇûÌ™Ûgûô\Ÿþ5eÿê:êy¤øþ·!Õ,¯5ÁWÁœv-#¡F\ùH ¼ ¥å>mG ÙÁ¢a–Ð.’"15ÄÖá’b! ÃmXh¡Ž”±uf )Šša`nI{ñEW0sõGvüòŽÛ;.ª#aì’1kÆÞþ1Š o¼š¬')F¼*îÛ“Ø?Asú×ao‘ ÕÁE…¤¸!ŽÐ€6áBÂ…B@Úœ H`Ð@Š`¨[Uv@×ÓÆ­/àðUvOxûÉógdК1€«&L6Š·‰›}òȪ´O:p7~¶Òí'(f Ib]– ˜&4¥\çO 1¢mÊq¿IÖF¬i°¶†ºE5êŒnƈBqÙ mÝλø¿ÿÑÝ2ùœkWä¡ç|­™4ðÎß•´ýí¼xyŽ‹¦†ÔO …Á,çõš ™èÖý ×y—¢æ?CÊLjÆQÞŸ‘¿…€„Œ¨>\ _QX a9Æ;ªðÂË›ÃÏÿ#{ðº[¤|Ù¶ùdcðÔÖ½·Ko?⼈Â-åÝ{¥Bözyè×&n¸ífüåüèôiꦿJA—ižÑNˆb†“Üß/9¹+)pxI$XŒXL˜4Etô\P¬ ¤&`uÀ5 ÚDd°D¬k’áœF¬o•KVö{Ö»æÊfB&¸M`âæçãö\;/ãðT]üM·é¾½ˆíl—ÛlçAórd§·Kaßy`ÝÔz^¯3ø~\åþWçþ£t/§~¾«ÿ‹K,@P\T$¤œDËüÓ±1Ÿz®‰9﯑R³ÈD̰aÙº™a‘–›bù²Ë¹ÿ¿oŸæ."ë(í1‡€§¸îûæ-^1ó@e¯°ò—óÏ9öÿðšb+oXš‡Ã:úN¨ºªÿY?Ÿ ÖFŒè- .kòŧjJÐAÚ€µùA[£m-/¡¡&åIAj–™E5¼Û¼©ñÏ¿–ßLÚzi8Mä.„]cð”Öö/c˜yCäÑwÈß<È¿¨ÿ³&ñéÍ‘Ÿ›ryœe¶¬˜ ž°Ò™KFöpà¡`ÝéGqfxM]Ñ'Ç~Ñû—3b®´Šé@éÊÁ¤˜‹ÿÒ™—kEOÒÚ˯gñ»~Ý>tÇ£ÒÞ}7^þ±E»ë¼qç¸ë.)oØuPì·÷ºùoÂ~¡½y`ÞÒ_|¯l}áC|ßð·ä5ÉqÃÖ­(K4(b%™Ã|Ù¡½@]BÕ™¶¢ˆ€ªו|»œß ?’NñѲ. eõ jImÈ XTd¹&Ô >(>´]ú˜;EÄ\a¥mÝÒæ9dÜ‘‡@ÀÍ–Æð¤uÃÏΛÞ+bﲿxÞÏT?õf^^¼‡Wþ{‘›&¾À0 Åc ƒCËi„„ŠG™ O|v˜øNð•¹}:¤KñT?]Ó¶³\–”2¯¢»ãY.`šb@šijL otƒ¦»®«® Þ¾òÞ+zp_}>zÖóüêÙeÎn•ï;öürUâg#½¢d@Âã0'„ÊåÓl³T¥CÌ¡VQ®0}‚Òâ4eÑw7O!’[0îäçÍw.€r¢ù5MhRˆÁ°&—|]È›ŸBÀ5&¤1$(n©Fë!$3í[YÕ½ÔŸò–¶nç#?ývú77áÄyª½ÚÍç1¸ŒÒ½X§øI˜Ä\ò óTëŠÎ/µM‡Z-j´^&62(~PcJÔl“8‡¨ fÔ]s½æ½ö©Õì3ûÎßÞ‹sN|l¾ ï—ݽ’bXtç2_Ïh–1=¤~’ {µtq5Wù²Ò§›Åg#tž fbÖa\í#%èÊ».&,¥ü\›Ë½ºÛNШk,vœÿ¨èŸ0œÝpEX¿Øò üö37ØqÍÀo"9Ç›˜Ä‰vÔÉq^²¬ü²,­²Õ•ù|]Þ/ŠÉh O Jžô‰]³gÌU?"ÎN©ãú5¦®Ò×=bxXÛ¢u‹5k.“Ëh3$ECÒåþRàÝsvðÀO}Ò>ÇOÐŽ à[¬Ýbš&yé° ê+-Ö•pÌ­xϳBŽ'/]™©³RÓy°ÆëŸËs¼s£G§’ ©}4®¹®ßÆ,ón[\Ýä `Ý"uƒ3œ¬ž- ‚\~ièûš_¹Mnà;ç­˜¡ÁX(G‰ÃãÄUx ÜHP)£¨>ºÁ§;õÝ%¯Ö)ý’ÁènCuøŠZõh’‡5ò÷ËÅWBA®ó§A$µm§ömѶE‰Ãg8g¥˜àÌ¡jNv^ƒþý÷qÏÍÜ)gî}öÙÎéÚ+yÜr[æºùût#ÓF@P0éîö{’ºï¬ÄëìÇgïüéXK8ÉMáÆÙÐaI1@j±±d¸V)Ú€ š€«#~Øà5Ò´¸6áS•™cVüh¿X?§q׫8S-ó+bø{þOâØ¾ ’”c¥P+ø•Û»|~[Í=üYw›‡ÉÊ¥ *JÝ-ŠŠb’V‚WóÿÚ¥)WÍÍW@_Š:Í_“5~M¤åqiaHræ,_/&…w…T\þ/æ 5;î¹_®9tÆð?ñoË'H˜•.O‚‰¢Ëæe¥¡Ë:òWŸpòmeL+ÝÏè?1ºÝÇ‘kü.Y{˜§, ¬ß'õ*Ô M«H(ÚܰE† n0Ì•¿¤Îº·ÌƒSó”³U8õ“ÿ/…E ðØŽ!¿´×æelßbÝ|@ÜÉã0˜`$Ôtx GÄÓâ©­ ¥Èô¯d´ßˆÐ>áäÛŠœ[:¾Ð¡”+Á$t¢Í=.aÚ„”U3Ó”[Ö·Ì6ÍQÎõÊå¿ß¶T)Š -)–\õÕ×óè{þ-_D°J‰“ghSâùásó/n)ù¦ôüí÷>sÓ¾¿mO|®zd¯x™6—߬"»¬¤œÿ„Ë3IB—$6ÝL²’ûçjbjˆ×Î_äÖ¯ÿa™pšÛºÐ¬ç×&+~¬M¸¶Á× sÚ×´¸¥!¶´Hsf€,)Ž¥Y0·i–Áß}ǯÝÌñé9Ôo`9MÑc–Kü¶„M<ò‘çqÓÞÝ&÷Ý!Åv±vµBiì€w¾“ŠÛUË¿zÖËh»b´V±L3i‚S±ÏÉ$,'Gݱùºâì»ß½u=~šßê‹DQÉE!%Ÿ~ –iàNïGŠÙ›¸|ˆ-I ñŽrªOÕSÚ™zÉõ4?ðje‹-™L‘¢]fÚ{¦ Œ/—Ùñÿ›n¼Cøy!ì?#Â93€·}†Ö¸y­Ý?!ü©fí4â Œ N˧ü Ç‹ŽùINúŠS”,›[ÑüÝéï\üˆœ‘Nï—kþ#/ ø$¸˜k ’2¸D;¢)%-ª ->OôN‚OŠô*zW>‡ö¹—0ôdX1± TM ¾NÓ¤Ke8ͱ‰>ÿäFAÞC1ÿŠó7-F¤mqmÄ7ÂZœE<ªˆ˜æä¶ëxõ8|‹õM›¯ØkjŠw nâïØþ3o•šeé±I pòWüÓÉ?çUnŠS§KZ±ä¦hñ DvDÒ“;oF@P;‘¨%Ã,b£`ŽÂÀßèG©¦i‡„ÐÉÇZ$µù'Ñ3´R3,yÕùjç 8yï~ÚŸ0©¶ í#†?x­”ë_wÇ?°û«ë Þã" “ Îø‡¹)þ!×Omã=N6Jݳ<ÌÓÝò#˜—.øæ\0+Š¥kÞÈ]Á2¢”»©]ÎtU/á“­ÈeÜàó%ÐN²|\Ûˆ¯#ôZæÍWµLûÀ ‰ ø¢Á, !à‚@›[¾,ÒÔh“@³ÜKê6vk’"*€ Îå˜`Ýœu‚UÖƒ{!N” Öõˆ3“¤© dr×x&¦§XoK,èF>ïßl·Œ=ÀS OfÄCbÞL’|ÆÞbwËOÖ‘·õ…È€“Z±¡h(ô4פK^0kó´°Bð8œ8$•8‹gݺž-‹>YqÔ•Ž;ÑiN GH"™[ˆŠù²h×Fʺĉ( _(¬„éeâ©z³Gùú[¥6Uméâ K‘)Ebl‰±%ň†6÷ ÜBCïØ"“aêÄŠS5³Ç[Êņþ§92Oõ ¹í.üŸîBwîF߇¯5’Â×yEØÊ¿.‡l4cX¶ø˜]¶˜‘, )á 49œ$4$\¹½»ir5PÛ<úµ]Èä‰hL©í& ^ºNƒÉuˆBý)\¿ UTúâÅú†ðGï~çËoµ[‡cxZyƒJ“éš_ýþóžŸÆã\KÙ(K­g}pª2z>º|—gÊéžµŠo›<ù»M¸A$Å–¢Î]ÁÒ HâêÚˆùŠGºæ3Kó+J´çaj×/q=OÓ¯(ÊÏþ%ÿþŸ½Ã~ÓöÎÇ÷ñÙ;%lïºÓDîÆÞsïïÉí[îçÖj’7–gÔʽ¥–(И1$O|ÓÐb-ôp$MЂˆƒÔõ«‘ø”GÄYH2ã'±…PÍH®¨pU7ÑÃÚ„ïWhÏS¥D}ߣ°î_ñ»ìÆÍ¡Oóºç L}Pl°ÏÄn?ÆãWþ‚½íÕWÈWߺ‡×¼rŠ«‡B¿¬pƒHj"oóeMQñ¦ BH]/` ¤Ø•„Î:÷š"®©‘å%Ò°FB“)ƒ¢„þZUÐ/iMÐ2q*°eë þùÏüˆ-Ûž¿"ÁgmØ-ÿï#RýðWiï°rúzÙ^१™žX?³´íM×sýw²áŠõ¬;ÑäòÖp)æÑîuêH΂ÿްä(›Ô¸å!Ö6¤¶aƒ, IË-e³Dˆ‡«J´pH2tXãÛ¶*¶mi?øØQ~é €ÜiÎvÆðtÿðû÷;Û·o4výõ8.F™vp±V³/(ã«÷ýÜúêm\ÔŸá ‹5Á”€Ñ6èPóÈAƒÖ?hpQ±å±­#6€2Ôhj‘0$vÍ"As…~h4}˜ðæÒ°§ŸúpmoyV¼‡ÏZ("ݨuL?Ô…´õÀöÉ)¾wк Úôœ›9ÀùØ[v¾þáåỼ±µIÔƒ–ºMÀÕ-6¬ Ãa¾ ¤Y Ïêmco*w˜ Q¤qÑÄeõ˜º ½û¥],Ìýî¯ñ¼ÿp­åkÞF?ç˜ ~š×hóÍ,‰Èu@f:cØÜ.W+úïl„tïªnÞµS—^Ç]·Ï> LþÆ+eÎ"»æúܸØmÊ:5Réè=Š3vXÁ`†Þb‰ÓÐD—(JE Å·‚«‚…%K³}ìÈñéö·>±hB¹é×+ºÝp¾Á³;ˆ83Sy3Pu›%° صã&úÜ÷¾òZãÐÞ¯pûlw1¿äÇ-Ì‹Ø>Ëå‚ÿï&Ùþ±/qy+lõŽK›3ô—#1dsLÅõ‚Wû ô‘ Çɤþt"}êãfß`ç΂—±ùûíÐü|ÿKûli•—À3v×SÀ%ÀeÀk€›Ù[rˆ0ýV¾ u=«ÇÅ‹ˆ®ÊÎýO—€_ê^WñN¯9"(ïê6 ×¹ÿ ¸¸ ·›Ùƒ«Œd”é×*"/ê a²;õë:#ØÓe£¥ã­~–Àª –¤ÛüQ̧‹ÿsÀàq3ûôxkטt€Ï™­(l_Ð¥~ëºØ¿ ¸ø‡ãm]ƒ °CýºÊµoï xª#ž ,¿;ÞÖµ™øUư±Ûôœ6ÿWg$n¼µkÏRRwÚSg³pföŸD¤oë43[=1ìšîäO;ŸZõ¥cÔ¿1€ï Àú.îWÀÆîô3³ß_í)Æ[»ö²€ÔÂ5]^?Ý!ÿ?عþ8JÇ[»y€. lï\ÿz2í{·™Ý¾ÚVÆÛºvy€mdÖoº3€¿ìz?0^k• Wúz¸øK3ûëñ©¿p<ÀÕØ ¼ ¸LDFÿ‡8ÞÎ5d«Ä£À¨ò·Ž\ñû€™=Ú½>FýkÐß9g~œ+XÆNŸþ¸)Nõ{žë.×v¡Ý¾=:püø¾اµSË EáÖ;Û·li|j;kÁb±¤|þ¹ÝÔÙÿIÀJL‹1m-ÚX[q_¹\ƒ( ±öÉQ|n XkÑZ¯€ 0ƬnÑÆ`áÿ/`iøÌo¬Eëh½Tð4øì{­“€0 °v^Àrð Ô«ŠÀ²»`6öø,Ø<7Zcí:E »»;žÉ uc1vep­Í¬µwïÞï¬)‡~Ø©µ~óå—w3Æ` +‚›h&RŠDggç'‰Dâ·žçz/\¸P~¢€#GŽth­·{÷Þ×vïþ¶ln~Ïó¸té¯Xk0¬ >“ð}Ÿ7Þèo½õö»¹\îÝááë´·wÜ»zµÿ#Ïó~}þüù‡sº»»ÜÓóæöíëDÊù¬H)ÈårcðC¡QªhJ¦\ÑäKC\B\XâÒ¢¤%i´Öäó9š©®öhiifÿþï¦Ëeÿí÷ßÿã‰L&³c```H=z´¦­íùßwu½úX*G‘›¹Õ1y=G".I(I".HU+šk"c BCY*‘¡Yúo—Ù¸½‹‰{—Ù´©€”)%B¤ôôOôö~q 8 Œ1¯Ÿ8ñ'K¬Cªµƒö¶Ô’ (dæª3 ¤…„µÄ-TY¨i€Kƒ!íÏ[¢Èp/wŸá]ö7|€®®ƒMÊZûZ}}±Øã"ŸÏb6µ0”_싌%B!€|`ÑsWÅâIÜ*màX² ߈¹’ì½NË̲۷¯K}øá””ò™x<ŽXÐ׋ïW˜šš¤ì½ÀÂŒÓàFÞ’™ .ù¥"7ce½×£µ¡­.M[]zΗJmÂqœV•J¥•šŸaF”J¬µÜ/RHyäÂ?§à«,hûdࣷMAÇqóÅbñx¼^¬ ‚×M†A2+èïc.Ó Á…a¸_Z1wÎD”bzz˜Tªa±°xŒ›7ÇPJ¥TòË/¿Âu::Z¨©ñ0Æ"„àva#½}p¿¸z8€Åcàv‘CMib1IDŒç “AWJÅø~ÀÀÀ0Éd µüè[IžÎ0šÕŒå-Så…С¤ÊÆ¡b]bh¢BU, Zlpê=Kz£¤¥VòB[3##ãLL䉢ùA)…ÖzJ•ËűXLî V¡ïܹsŸjàPˆÍày.ž— +‹I\×A)H*• ˆÐ_ŸˆÓÓ>¾0~‹ÐùR- }¢(šPÆèqcBª«“sÎBá!}}½k‹ûVUåñÊ+‹þ«TÊ„aø@ãaXÆuç›ò|öÙ¹uÐÐÐÈþý¯.:æ+•"•JeL !†*•®;¿U„€ÚÚZ\×åäÉ“,LÏjltt”3gΰaÄи >-ŠÅ‚Îd2CÊqœ¿ŒŽŽðÒK»æœõõ)|tº…t:½ÔØËšµ°eË®]¦±±ždÒ%‘˜ uÄÈÈõ[“““wÔÙ³go¹nÕŽûaûì±mÛvjkI§S¤Óuk‚kmRpà@7ÍÍ(%™­î¯r÷îÝ¿Ó ›úÅÅ‹ŸDSS“sƒd³ù5Âí×»A†Û¶µ22rärY¯òé§çÿuåÊ•ßz.¹ÉdÒݳgÏO•R[›šZ:Þyç—‡víÚ¾¸Yðhª««8uêO¥sçþü‘ïû#ýýý³Ùì¿IžôÝøÞ{ü*Ÿ/ÚÕ˜1Ɔad}?°Å¢oóù¢Íf ¶XôíåËÿ°]]Ýß_еdQúì³M?«©ñV9{æ ¥$Ž£H$¤¼øâ7hmÝúó¥ú=V”ž>ýqRÙØ×wmÕ´Žˆ¢ˆ( ¼Ï<55ÕÛ*`Qaú_YûV IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/save_all.png0000644000175000017500000000244512033133562025133 0ustar neilneil00000000000000‰PNG  IHDR szzôbKGDÿÿÿ ½§“ pHYs  ÒÝ~ütIMEÓ :-U·6µtEXtCommentCreated with The GIMPïd%n‰IDATxÚ½–ÏkUÇ¿“¼$—_/¦© i“¥(j@íJA¨ÕeEÐÿÀµ¸—B7â¢"î´€]5nDA0¬« mØŠ)TšæÛ—÷cÞÌ=?®‹{ßüÊL!…æÂåÞ¹sgÎ÷žó9g&ÀcÚÕµß,ƒŒ f3ƒ(óssv̯ Zûxô°‹Í›—¨U_[»fßxóe0+D§OͶþÚÉí{é¹Ó8Jûic l_}1m]ÿ2¨@̈bB?ŒÁ’ 8ûîE,.4Q¯¡>1†?\<’€íZœ{û5Üúó}[-€" b7Ûdc¯¼¸‚¹™š³ µ±Ÿ1µÚHu˜,ê:K²>>VÃâÉ&š3 4gžL‹¢Ýî@Uñ0DÕyBSœZ˜ÅâÉY/`òȈƒ.aU‹àiÓ~óÆ·9Ÿ~þÂn½}üüã¨=mÚϽõ Ö¹UE«ÕF¯Ó1ƒ ¹í‹‹àëo>F¿Á3µµã¢}ý÷-Fb3 T-jÇE»‰aö(ñÀñÐnˆœaö°v˜ –|Þ{çU¬>¿Œ©Æ¦&ëGÐnwvûˆ}¬ŸŸ1ãîN L.ÎÌ`‘ÄeÃöÙGð$­Šö çÏ‚Ypéò÷>]}0 D,ˆ"Š¿ïîAÕB­…õ£ªÂZøu…µ6Ù£j“k"Âþ¿íRÚ‹µƒ‰3Y @QÅ­íÝܵx@³£›;á,î¥ÝNý^?-`ÚsĉKCÀâÃàŠQ•!)‰ ¡ß öCoÀUÓ2Úoß~€••g@Lv{„Þ.RzbΈ‰cƒ86„â˜RÃÄ`Ji_X˜JöHÞ’ÔÅüÜT¢6MLˆ"ƒÁ ÂX0†‰Ñ±Qg„$[o´„ö^o€éé 0Sò­Ië€?³âüë/$D‹(Â0FÿÛãÄJfMÝ/ÒÞíF¨×GýW6#`xòb!ŠcBF¹—»ˆø)½_Fû‰“Na¨„3YÀ™8[k}Qé‹óBªïißÞnaiiÂŽ °×àúõ{.#D0ócj¼ì^íóó ïJBž@8ü†ýQDX^ž-ÄY 1×C dQFûÈHàC P†`5&‹b0ˆ"03Úí0s¼Áªëá\DJi¿ÿDýÖ¨ZpÃÚ†ó1£× “ß©v{skÖÕÙÐä×ÓyíW®\ƒµ@çáÀÚD6‚‘¸¢b ˜Æ0Μ™)M­b&TAYFûÎÎÕ ìãU#Cˆ¢Øý0øb²¹¹ jÖµZðJê ÕüZíU­‘¸´#'biiúPŽgOœ.ëþ´F¦½R€#–}Þ;ÆÇGÀlà FüIÜA2·Öõ2Ú+˜Aï¿Gèì¶@̸sgûPŽ3k lZZ†a(Ò^ÕX]ýÐô` £Ùl$¿fÖZß‘¸1΋k{{û~? ²T øz ÌüYÆÆIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/schedule.png0000755000175000017500000001522712033133562025146 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡ pHYs  šœ OiCCPPhotoshop ICC profilexÚSgTSé=÷ÞôBKˆ€”KoR RB‹€‘&*! Jˆ!¡ÙQÁEEÈ ˆŽŽ€ŒQ, Š Øä!¢Žƒ£ˆŠÊûá{£kÖ¼÷æÍþµ×>ç¬ó³ÏÀ –H3Q5€ ©BàƒÇÄÆáä.@ $p³d!sý#ø~<<+"À¾xÓ ÀM›À0‡ÿêB™\€„Àt‘8K€@zŽB¦@F€˜&S `ËcbãP-`'æÓ€ø™{[”! ‘ eˆDh;¬ÏVŠEX0fKÄ9Ø-0IWfH°·ÀÎ ² 0Qˆ…){`È##x„™FòW<ñ+®ç*x™²<¹$9E[-qWW.(ÎI+6aaš@.Ây™24àóÌ ‘àƒóýxήÎÎ6޶_-ê¿ÿ"bbãþåÏ«p@át~Ñþ,/³€;€mþ¢%îh^  u÷‹f²@µ éÚWópø~<ß5°j>{‘-¨]cöK'XtÀâ÷ò»oÁÔ(€hƒáÏwÿï?ýG %€fI’q^D$.Tʳ?ÇD *°AôÁ,ÀÁÜÁ ü`6„B$ÄÂBB d€r`)¬‚B(†Í°*`/Ô@4ÀQh†“p.ÂU¸=púažÁ(¼ AÈa!ÚˆbŠX#Ž™…ø!ÁH‹$ ɈQ"K‘5H1RŠT UHò=r9‡\Fº‘;È2‚ü†¼G1”²Q=Ô µC¹¨7„F¢ Ðdt1š ›Ðr´=Œ6¡çЫhÚ>CÇ0Àè3Äl0.ÆÃB±8, “c˱"¬ «Æ°V¬»‰õcϱwEÀ 6wB aAHXLXNØH¨ $4Ú 7 „QÂ'"“¨K´&ºùÄb21‡XH,#Ö/{ˆCÄ7$‰C2'¹I±¤TÒÒFÒnR#é,©›4H#“ÉÚdk²9”, +È…ääÃä3ää!ò[ b@q¤øSâ(RÊjJåå4åe˜2AU£šRݨ¡T5ZB­¡¶R¯Q‡¨4uš9̓IK¥­¢•Óhh÷i¯ètºÝ•N—ÐWÒËéGè—èôw †ƒÇˆg(›gw¯˜L¦Ó‹ÇT071ë˜ç™™oUX*¶*|‘Ê •J•&•*/T©ª¦ªÞª UóUËT©^S}®FU3Sã© Ô–«UªPëSSg©;¨‡ªg¨oT?¤~Yý‰YÃLÃOC¤Q ±_ã¼Æ c³x,!k «†u5Ä&±ÍÙ|v*»˜ý»‹=ª©¡9C3J3W³Ró”f?ã˜qøœtN ç(§—ó~ŠÞï)â)¦4L¹1e\kª–—–X«H«Q«Gë½6®í§¦½E»YûAÇJ'\'GgÎçSÙSݧ §M=:õ®.ªk¥¡»Dw¿n§î˜ž¾^€žLo§Þy½çú}/ýTýmú§õG X³ $Û Î<Å5qo</ÇÛñQC]Ã@C¥a•a—á„‘¹Ñ<£ÕFFŒiÆ\ã$ãmÆmÆ£&&!&KMêMîšRM¹¦)¦;L;LÇÍÌÍ¢ÍÖ™5›=1×2ç›ç›×›ß·`ZxZ,¶¨¶¸eI²äZ¦Yî¶¼n…Z9Y¥XUZ]³F­­%Ö»­»§§¹N“N«žÖgðñ¶É¶©·°åØÛ®¶m¶}agbg·Å®Ã“}º}ý= ‡Ù«Z~s´r:V:ޚΜî?}Åô–é/gXÏÏØ3ã¶Ë)ÄiS›ÓGgg¹sƒóˆ‹‰K‚Ë.—>.›ÆÝȽäJtõq]ázÒõ›³›Âí¨Û¯î6îiî‡ÜŸÌ4Ÿ)žY3sÐÃÈCàQåÑ? Ÿ•0k߬~OCOgµç#/c/‘W­×°·¥wª÷aï>ö>rŸã>ã<7Þ2ÞY_Ì7À·È·ËOÃož_…ßC#ÿdÿzÿѧ€%g‰A[ûøz|!¿Ž?:Ûeö²ÙíAŒ ¹AA‚­‚åÁ­!hÈì­!÷ç˜Î‘Îi…P~èÖÐaæa‹Ã~ '…‡…W†?ŽpˆXÑ1—5wÑÜCsßDúD–DÞ›g1O9¯-J5*>ª.j<Ú7º4º?Æ.fYÌÕXXIlK9.*®6nl¾ßüíó‡ââ ã{˜/È]py¡ÎÂô…§©.,:–@LˆN8”ðA*¨Œ%òw%Ž yÂÂg"/Ñ6шØC\*NòH*Mz’쑼5y$Å3¥,幄'©¼L LÝ›:žšv m2=:½1ƒ’‘qBª!M“¶gêgæfvˬe…²þÅn‹·/•Ék³¬Y- ¶B¦èTZ(×*²geWf¿Í‰Ê9–«ž+Íí̳ÊÛ7œïŸÿíÂá’¶¥†KW-X潬j9²‰Š®Û—Ø(Üxå‡oÊ¿™Ü”´©«Ä¹dÏfÒféæÞ-ž[–ª—æ—n ÙÚ´ ßV´íõöEÛ/—Í(Û»ƒ¶C¹£¿<¸¼e§ÉÎÍ;?T¤TôTúT6îÒݵa×ønÑî{¼ö4ìÕÛ[¼÷ý>ɾÛUUMÕfÕeûIû³÷?®‰ªéø–ûm]­NmqíÇÒý#¶×¹ÔÕÒ=TRÖ+ëGǾþïw- 6 UœÆâ#pDyäé÷ ß÷ :ÚvŒ{¬áÓvg/jBšòšF›Sšû[b[ºOÌ>ÑÖêÞzüGÛœ499â?rýéü§CÏdÏ&žþ¢þË®/~øÕë×Îјѡ—ò—“¿m|¥ýêÀë¯ÛÆÂƾÉx31^ôVûíÁwÜwï£ßOä| (ÿhù±õSЧû“““ÿ˜óüc3-ÛgAMA±Ž|ûQ“ cHRMz%€ƒùÿ€éu0ê`:˜o’_ÅF²IDATxÚÔš{pÕ}Ç?gϾîS[2’-,,?¨!Äx¡’6¼R0Ó¦$Ì4CÛf¨i\ÚI;í„IJ;’Ü4Ìt&$ù#'q&4! X2Æ&ˆá—lC„dY««ûØ»»çôÝ»º’¯éL§ÓíèJÚ=ç÷=¿ßïûûžß‘ÐZS¿nùØM!hü½ïûÌ üäÅŸS˜›£8WXiYÖ­årùŽãÏçùÄ–-d²YLÓ¤ÙÅb‘<û,Ź9jµRÊûÊåÊ·Ó™t!ßÒÂ7ßL.ŸÇ²¬3ÞB µF øñóÏ%¿o>[“— ÃÀ4MlÛ¦03s¼Í³R©üÞvîüã|>4Í|Ó1SJžßµ‹âÜ›6múnOOÏ]¾ï?,¥l•R" ãœc4»Œ ˜¦ÉÞWö°oï+×¾ô‹ÿ2>Ì—oü#×u-×u1Ï@¤iâ8©TŠ£‡ßõü®]\¶a}˱C‡n=zè–eý/0 ,ÛfÏà {û/]³–¯ø·±± ~=<¼áß¿ùÍóˆ=¸çå—Ú½»ëâ¾>&''¿yøÈQ‡†6}Ŷm ÃøŸB,ÜÅ“?ó½ïÑÙÙ¹¬Í¥ìÚñõ¯}Ûq®DäyÜ/„À”’WöìÁuÝîµk×rìèÑÿòÈ#ÌÏÍ÷¥ÓiL)›Ž!â÷°Ø²%d<@("TˆP-TàJ´í˜B…r`Í Ѓ»w£…)@èÐ*LýRʱ¤Paª%›¥«ë¢ìkû÷U´ —Y†ÀЪaŒÀ*´P¡P*$L)1äb-JâÃG03=m›ÒøêºË~ç/”Rß÷ÑZ£µ¦fÈêо}ù^ó:…ÒüS›¯¹†R©ô3¥Òi­]qþÖ5ð}èÜõ“ç)–JÿÚÙÕ•r2©›NÍÎŽ¹®›2bH !0Mß÷ÝwNœxÜƃÝÝ+{§‘.Ó©”]©VïùÔ§>µ«?Îw&RÊÃ@£ %åñ÷à½Q2å÷8öÝG¹ëü82AÚ•,5_7 - ªå"úÈA(Œó£¿úo¦zy臯ãf- ƒ$H‚ŠLñ¹ÖqÔɃ<úè£7÷^Ò»kôøhsÃp€þ\.‡×µ¬N*”cSX¤ÆØxì?ùÌŸÜÆÁƒùyÁ†µWSÖ~S“ T©õ™¤ žGûÛ/óùm ££ƒï ƒK7S5< `fIÛNCÀÅ* @5`J)U,©NM@Í… ´`˜†ùIŒÉ\qÅ<þøãèö߇T+ÔJg¯]-.mŽÉ[Óe´L‚Ž£C¬ûóÛØ½{7^âŠO¾¯PaäÔ\œ™"ºmÍôÌ8¢X$âCœ5´Ö0|ßÇ÷¼h­ Tx_ί:>ȇ?y/^Çj¸¥jUðCb¶ Ôd¤ Ó59Äcˆ¼½ùOù³¿{„¢•…›·Ò*| † „BP©”0k5ÂP*4ˆ­9@}Þ0$T d6vå˜ð§Æ‹äoØB¦ã>¼ÓcL+Mw‹ƒÉñ‰b¦ŒPSðBZœ÷­ÈPö¦i26ï1»r=3®ƒù0mŽèJà —.£*‚PóÊx 4øA€CPZ„*<; '´R ¥T¼’‚¡»7òâ‰9Ízü\츶•o¼qŠ1m£–­à¯]ÍKïÎò¾Ž~nüΠt´‚ ®Z‘Ť¡™ª*º³6 Á,æ&Àé w¯_F¡â14V¤Õ‘d-IÚ6(kÒ‘=}ö:Pg$­uä vÊd}[Нã[»Ñ’r)H‡'‡'xî*ŽmñÜÈŸÿÖ®ëÉÑžwA%9Æ;Å*šS¥€”„Ùj€Bƒ›ÂÍvЦÃÛÓ%F¦+\œw¨)ÍòŒM¹‚h¥QJ!Ý0vx­Á‚Z¡ÊM;FØññuüô}¾ñÆW÷­äŸnU žò˜*|úw/¦½Åá¯_:Éôl™äAÑW€F‚y_Ñ™–”«5pÒàÚ $`0]ª‘wM ÕWJN•jqDD*´î„æ\I¼ ~¹¯ŒÎðá·&þÌÕ ¾;ÇΰíéC`I¶\³’Ÿ˜ã3?x;ZŒMÒîšdM‰DhÍ\-Ä1c&4íØ[šKZ\f¼€¶”AÅWŠ„ˆmÒK˜º©œVJ¡´_cÛ’½Ÿ¾‚VÛàŸ÷ó‹ßÙñ‡k9ø7b´Pcûãœ*GL•µ#/ÖgÑ¥4®”(`ßo昚ª€-£ð ÂèY–„Çä?Þœˆ8ƤŒÆÐ†4+óæª)f¡²5jóó\ùÕ=Ek`Kòû³…‚˜öæ¼…Å1 œfX^XM! ,~N÷_:yCĪ Â_aê¼âkvv–ûßßÍׯ¿ŠòT‰@‡ÑرVc넘Â@"bƒX3-N+Û(ÂÀ"‘Z“è¬3Š‘`†$³<Å ý‚Ÿ¾9ßT\5P+WXÓ–âJèÎð}íOYx¥ò…•¢Z ’5Ôa¸DÛ‘{Á—_fn®€aHþছâ$ £ý«`È…q}Ÿc£ÇxçwÈçrôõ­fYGGƒ»ZéD{ ½ëù!Á’vnZ„*ÞŒ‡‹X)’¸Ñ¶âĉ\{ÝuÉߪÕ*Žãà‡ ­5¦)1bR¸÷Þ{yòÉ'ϱ7òÌ3ϰfÍò“gLÀ…n°A\ it}Õ_®ïÌê²ÿú믘Öu‘R&Ý¥T܈Vð²Ë.cddÓ4 ‚ ™Çq†‡‡`ß¾}|àXD™¡R¢u´Í6ÁM7 Z…-ÖuQB¶m#„`tt”FGGéììIJ,¤” ‡ ^Ûºu+###äóy´ÖlÙ²…;vð…/|!¹\€»îº+ÙÖç¬Ï+4¨ØãBB(’‹‹šã8‹E¶oßζmÛÈår‰7„„aˆiš(¥qü>ýôÓÌÍÍqçw&?ßqǬ[·Ž{\.Ç‘#G8zô(ýýý 3%<b—¨œóh¨Êõ½ò 7ÜÀþýû“çúúúx÷ÝwÏx¯B§OŸÆ4M,ËÂ÷}n½õÖ()=ÇqøÈG>’€(•JÉœÂP-Èœ )d*\  ¾M­T*É£O=õ¹\ŽÛo¿l6»(_”RT*²Ù,£££”J%Ž9B__Õjß÷q‡Ó§O/š¾1‡Ô<¯^Ct¨/(Ôc±­­~ô£œø ¥R‰z§ÎHS§§üZ=Œ¥õ…±qñU½:’\ωº›ë+ÜB ÃÀqr¹<òÛ¶m#•JQ.—immåÙgŸÅ4Mfff¨3î ŒŒà:."/¬Óé9s n€Šo4¬1>Bœõ9ÇqhiiᡇbÛ¶md³Y*• ÝÝÝìÝ»—žž&&&ð}ÿ /?~œÎÎÑX~žcOl,¢C…ïûax`)]. “zòÖs@eY´µµñ¥/}‰¯|å+d³YæççéîîfppÞÞ^ÆÆÆ‚ Ó0 r¹“““”KeV®º8Qú¾\@wº «,½uÑF¨áB°bÅ {ì1¾øÅ/’Ïçñ<+¯¼’ááaz{{™™™Á4Íä`IJ,Òé4ù|žá7~E.ßBkkkÝPåµ È„‰*<3!—j$Ú1uI!„ µµ•¡¡!¶nÝJ:FJIww7;vì —ËqòäÉ„6ë4mÛ6Ùl–ÂÌ oýú-6_ó!R© qò†¤Fëaª°)£4æÉbê]X}Ó4q]—x )varã7255…çyd2úûûéííåᇦ¯¯Ã0Ø÷Ë_bZ]]]x^­>—þ­¨P@1jµ–eRJ´Ö¤ÓiöìÙ믾J&“I¸½V«1>>ÀªU«Ø°aô÷÷ÓÑÑah­yãÀë\Ò·š–¶V¦§g›ÚpvTÊ6{Ù÷ýD»Ôj5jµžç%bβ,^xá…DãT«Õ$IÛÛÛY¿~=—_~9¬_¿žµk×’ÏçØ34ˆi[¬\ÙC6£8Wüí< Ðè%Œ²tõ'''¹í¶ÛØ´iSb´išT*Â0djjŠ[n¹…Í›7ã8΢zÐÚÚJ6›%›Í’ÉdH¥R °“'yuï>Ö®gÙ²v׉Neç÷À‚¡Fr4z6T*ZZZ¸è¢‹P¥R)¡ÃJ¥ÂòåËYµjU4QœŽãà8N"·ws»ž{–cÇŽ³zu?===ds9¤ŒkŒV jèèúnªn|3u#êÒ¤.—Ë”J¥d•ëÞ\z748ÈàîA\ÇeݺËèéYE[k;¶m/bÅóˆ¸*¤Ó¤”8®M²¿gáܳ\J)òù<ííQ(bÁp¯Zah÷o¾ù&µZÈêþ5¬\ÕCû²vrÙ,®ã&µAç×Î Taø©TŠ|k c¿çÔ©SI‰_š'‹A‰¦^r) ÂPáû5‚À' B¼j7•æª^Mw×JÚ–µ“ÏehvÊÚÚÖvFS·)¥t¨¾Þ^~üÃŒ¿Ç|¬•V ¢ý\½õ…XܾÒ*ö”Ž¿:Ý 0DÔØ²l‹T*E*•&“Iã¦R¸ŽƒiYqÃ@Fçd±@´m¥4ëÖ­ãðè1qnQ¢èS§OsâØ^{í5¤i"M‰mYX¦…e-ܦeaÚñgÓÄ´$Rš˜ÒDÖ+Q= Uˆ ¢ãR?˜Ÿ›efj?ð=šïãÇTìû5ü j§AÀµ×~ˆ©™™¦ÒG,Q”.p'ð÷Žã¬AGí!Œ¨-h i ‰aQ«Ñ0FÜ2Œ» 5‰Æ¬7iã ¯•F«úç`Ø(Çë)ÀÏóö ì]dóRI tùØ;º!M»b8wªë £E‘R¦ÒYü¼þ{9Já'f ¦âIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/schedule_active.png0000644000175000017500000001451112033133562026471 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡ OiCCPPhotoshop ICC profilexÚSgTSé=÷ÞôBKˆ€”KoR RB‹€‘&*! Jˆ!¡ÙQÁEEÈ ˆŽŽ€ŒQ, Š Øä!¢Žƒ£ˆŠÊûá{£kÖ¼÷æÍþµ×>ç¬ó³ÏÀ –H3Q5€ ©BàƒÇÄÆáä.@ $p³d!sý#ø~<<+"À¾xÓ ÀM›À0‡ÿêB™\€„Àt‘8K€@zŽB¦@F€˜&S `ËcbãP-`'æÓ€ø™{[”! ‘ eˆDh;¬ÏVŠEX0fKÄ9Ø-0IWfH°·ÀÎ ² 0Qˆ…){`È##x„™FòW<ñ+®ç*x™²<¹$9E[-qWW.(ÎI+6aaš@.Ây™24àóÌ ‘àƒóýxήÎÎ6޶_-ê¿ÿ"bbãþåÏ«p@át~Ñþ,/³€;€mþ¢%îh^  u÷‹f²@µ éÚWópø~<ß5°j>{‘-¨]cöK'XtÀâ÷ò»oÁÔ(€hƒáÏwÿï?ýG %€fI’q^D$.Tʳ?ÇD *°AôÁ,ÀÁÜÁ ü`6„B$ÄÂBB d€r`)¬‚B(†Í°*`/Ô@4ÀQh†“p.ÂU¸=púažÁ(¼ AÈa!ÚˆbŠX#Ž™…ø!ÁH‹$ ɈQ"K‘5H1RŠT UHò=r9‡\Fº‘;È2‚ü†¼G1”²Q=Ô µC¹¨7„F¢ Ðdt1š ›Ðr´=Œ6¡çЫhÚ>CÇ0Àè3Äl0.ÆÃB±8, “c˱"¬ «Æ°V¬»‰õcϱwEÀ 6wB aAHXLXNØH¨ $4Ú 7 „QÂ'"“¨K´&ºùÄb21‡XH,#Ö/{ˆCÄ7$‰C2'¹I±¤TÒÒFÒnR#é,©›4H#“ÉÚdk²9”, +È…ääÃä3ää!ò[ b@q¤øSâ(RÊjJåå4åe˜2AU£šRݨ¡T5ZB­¡¶R¯Q‡¨4uš9̓IK¥­¢•Óhh÷i¯ètºÝ•N—ÐWÒËéGè—èôw †ƒÇˆg(›gw¯˜L¦Ó‹ÇT071ë˜ç™™oUX*¶*|‘Ê •J•&•*/T©ª¦ªÞª UóUËT©^S}®FU3Sã© Ô–«UªPëSSg©;¨‡ªg¨oT?¤~Yý‰YÃLÃOC¤Q ±_ã¼Æ c³x,!k «†u5Ä&±ÍÙ|v*»˜ý»‹=ª©¡9C3J3W³Ró”f?ã˜qøœtN ç(§—ó~ŠÞï)â)¦4L¹1e\kª–—–X«H«Q«Gë½6®í§¦½E»YûAÇJ'\'GgÎçSÙSݧ §M=:õ®.ªk¥¡»Dw¿n§î˜ž¾^€žLo§Þy½çú}/ýTýmú§õG X³ $Û Î<Å5qo</ÇÛñQC]Ã@C¥a•a—á„‘¹Ñ<£ÕFFŒiÆ\ã$ãmÆmÆ£&&!&KMêMîšRM¹¦)¦;L;LÇÍÌÍ¢ÍÖ™5›=1×2ç›ç›×›ß·`ZxZ,¶¨¶¸eI²äZ¦Yî¶¼n…Z9Y¥XUZ]³F­­%Ö»­»§§¹N“N«žÖgðñ¶É¶©·°åØÛ®¶m¶}agbg·Å®Ã“}º}ý= ‡Ù«Z~s´r:V:ޚΜî?}Åô–é/gXÏÏØ3ã¶Ë)ÄiS›ÓGgg¹sƒóˆ‹‰K‚Ë.—>.›ÆÝȽäJtõq]ázÒõ›³›Âí¨Û¯î6îiî‡ÜŸÌ4Ÿ)žY3sÐÃÈCàQåÑ? Ÿ•0k߬~OCOgµç#/c/‘W­×°·¥wª÷aï>ö>rŸã>ã<7Þ2ÞY_Ì7À·È·ËOÃož_…ßC#ÿdÿzÿѧ€%g‰A[ûøz|!¿Ž?:Ûeö²ÙíAŒ ¹AA‚­‚åÁ­!hÈì­!÷ç˜Î‘Îi…P~èÖÐaæa‹Ã~ '…‡…W†?ŽpˆXÑ1—5wÑÜCsßDúD–DÞ›g1O9¯-J5*>ª.j<Ú7º4º?Æ.fYÌÕXXIlK9.*®6nl¾ßüíó‡ââ ã{˜/È]py¡ÎÂô…§©.,:–@LˆN8”ðA*¨Œ%òw%Ž yÂÂg"/Ñ6шØC\*NòH*Mz’쑼5y$Å3¥,幄'©¼L LÝ›:žšv m2=:½1ƒ’‘qBª!M“¶gêgæfvˬe…²þÅn‹·/•Ék³¬Y- ¶B¦èTZ(×*²geWf¿Í‰Ê9–«ž+Íí̳ÊÛ7œïŸÿíÂá’¶¥†KW-X潬j9²‰Š®Û—Ø(Üxå‡oÊ¿™Ü”´©«Ä¹dÏfÒféæÞ-ž[–ª—æ—n ÙÚ´ ßV´íõöEÛ/—Í(Û»ƒ¶C¹£¿<¸¼e§ÉÎÍ;?T¤TôTúT6îÒݵa×ønÑî{¼ö4ìÕÛ[¼÷ý>ɾÛUUMÕfÕeûIû³÷?®‰ªéø–ûm]­NmqíÇÒý#¶×¹ÔÕÒ=TRÖ+ëGǾþïw- 6 UœÆâ#pDyäé÷ ß÷ :ÚvŒ{¬áÓvg/jBšòšF›Sšû[b[ºOÌ>ÑÖêÞzüGÛœ499â?rýéü§CÏdÏ&žþ¢þË®/~øÕë×Îјѡ—ò—“¿m|¥ýêÀë¯ÛÆÂƾÉx31^ôVûíÁwÜwï£ßOä| (ÿhù±õSЧû“““ÿ˜óüc3-ÛbKGDÿÿÿ ½§“ pHYs  šœtIMEÚ7/ˆ]3{IDAThÞÕ™yp\E~Ç?ýΙÑÌè²äèÂ>€u¸[²®Á6,` ¼^6E m’-œeCpí EA¹¶ŒÃ†…qQ –Æp™%©Ý`[¶)ìÅÆø¾IÖŒæÐÌ{¯;¼§Ñ5ci³Ùª¤K¯4ݯû÷~ßþýk¡”¢¿-¼y>B;ŽC2‘àW¿þ ‰d’Þd¢Á4Í[2™Ì/lÛ&³xÑ"Ê¢Q àXs]—ÞÞ^Þùàz“Iòù<º®/Íd²¯DÊ"‰xy9w,X@,Ç4Íë…(¥ÞÿèÃÂxñ¯Y¬i†a`Y‰sçŽN™:ÕÈf³úÞ»ïÞÇÑ £¾( ÀÐu>Ú°Þd’Y³f½ÚÔÔ´Äqœ'u]¯Ðu¡iç¥Q¬ic†ÁÖOÛÙ¾õÓy?ù/ãÐ\úÇ3ï …Bf( €è†mÛ„Ãa8°ä£ ¸äâ‹ÊïßË¡ýû1Mó@Ó0-‹ö¶6ÚÛÚ¦\8u:;vîøç“'Oóå®]¿´fÍè ¶oÚÄ–Í›ë.˜4‰³gÏ®9pðm[¶ÌZþãcYš¦ýÏ!žÁ“‚¯{ã jkk«§L½ö¶-ëŸýÇUX¶}9B "~!†®ói{;¡P¨~úôé>tèÝŸ®\I*™š‰D0t½( ¬GÀPΆÐžë"¥‡Bº–nHGY¶¡!¤§O›: TÛæÍ(×oʳ„ôÂ¥7¬!mS×Ò —G£ÔÕýQôó϶g•ôªMM )9ˆ†Ò3‘žÒÃu] ]GÓ‡Jhˆ8tsÝÝ–¡k«f\ò­¿”RfÇA)…Rм¦÷mÙ¾=~Õœ$Ò©—›çÌ!N?~.~0¢THŒ®À*Ηû÷ë~õ½éô µuua»,<ÿLOÏÉP(ÖtH !0 ÇqB_;öœ&´¿­¯o*Áî2[Ù¾¾ûî¹çžç™ýþí¬MXæÐP(è:™SßÀ7G(Ë|ÃáWW³ä]üzïi"!áì«"Ê „F_¦up$NñÞß-fwx"?ù÷„¢&šFAI$‚¬fyÅ)äñ=¬^½zÁÄ 79z¤¸„¦ÙÀ”X,F®n2˜µdɬ0mŸdæáÿàïÞÊž={øM‚é³É(§(˸Ò×Ôþ/éärTíÛÄC7_LMM o´† ›éÓr B€#JÄÚ{æ0.ž«²(C× {{{éë: ù¸éƬ¤Î¢=Æ¥—^ÊsÏ=‡ªº ÂOd^JêÊCTÚ_ugP0,p=jmaÆneóæÍìØÖť߻’\"ËÞ3ÉÀ2…ÿXŠîs§½½øþE%m@)%Íqœ\Î' $x<€ÄÇñÛš«ø“ïý\ÍdXXù>p<ÐÞOQ¦ jC{Ü€†pAÀ¾æ{i}t%½füˆ áÐÏ)@ 4‚l6‘σš”žFÀÍHýßõ<<)AT@‡™u1Nç$gNõ¿~e5KÉuž¤[*êËm, ŽžîõUÀЃ T$rå¶ÇeãËÈ8Ã08™ÊÑÓpç.¾RçÀ°Øs*A]®¿°š¼'q=ŧ§Ò Àq]„çT“^i/D`ÐRJ¤”ÁN Nt½]þ”æÉwòéáuôû­Wý9k·¿\ ÑP¾¤òwPÂã£h€®)ºú$õQ ‰ ÉÓจHß¿¨šD6Ç–“½TØ:QS'bid”B*Ÿx®*ú=’RÊ—†+l`¯]Ëeѽ†òpÈgTŸEƒ9Ûò¯†ìÕØk×R,Ø_÷öá¢8“v ëÐÓç"QŠúêfÙ(Ãf_wš½ÝY.ˆÛä¥b\™E&ë(©R"5ˆöÈTBQJùd¹ÖV¾zt!'ŸЙÉa¯]Ë oßùö4º2®ßo$×ÚJwOŒOÒëH@!4AÊ‘„ A¦/vâã ¼ÐèNç‰Z:‰>®s&4ÂÏBû%€ƒä`”!“†ØÆýðuìµkùVU˜\k+ Îõ¼ÛÞAmXóû¡›iýX:ƒü U!ƒ¨¡SiëÄmdÞÃ6OhXÑ+&”û’­ k˜š ¤‹‚#̓橋¦ÓRJ¤Rà(,KçäÊÛMkm哽þŽ·úsÿZÞX¾„¨åK±ÿ+J!¥"¤ëH`û‰$]]Y¤àzþ\¦å¶Á›»Oû>Ftݧ¡Êó(æYSà…29È“O¥÷ƒ×|Ù›‡IÆýÅ+þ°¥ƒíð$s›`ص·“]²s`7…€>wè<¯l<îÛŽ®dm iàåÉ:Ëu‘£ZOOË®¬çÙë® Ó•ÆUžO;ȼ€;!†Ðšðu1È™†š• xèBC¢r(E!Ïò>klBÓ)æãú„ÿÜ*š\Ïd™Z悦Zþ/´ªx‚\:3vž”ôåÝ1ß»nÉdMÓùö½÷Ž:¿{ó&¾þúkⱓþå_áÍ7G]“s<Üaìü”Âõ䨄SÛ·3oâÄB¿³¦¦äÜŸÜ~;/¾ø"júŒ!ã3gÎdݺuTÍ[r­D òŒbô#¥” 5†£éu×]ç{ÚPˆ²²²’óæUW³fÍt]2nÛ6»víbÚ´iùðÃÒ‡®ëå¸(%=ß-–hÉ­[i©¨àÈ‘#ÔÖÖbšææúÛc‹³wï^âñ8J)-ZÄúõëyøá‡B‹ÅX²dIéã¨ð£E…üTB%¶ö¡‡X1y2±X¬p†-u{ë­·|ÐÉ$wÞy'¿Ø¸6mâj`ÆÏÎ}÷ÝG,ãàÁƒô´·{ê©§ S[[Kí5× ¬Ÿ3gHi3’D BIè÷Zêî»PMh«VñN: ûöÁ•WÉd†Ô} ^ì®»P °l™ÿîÄ ÿGbÕ*^ì1Þ^º”òòr‰Ë–-ƒgž–¼`¾e ttàzá+¤”R€Ä9™Îž¾ø»…‘Ë—ñ¼aÁ¥¥ÚÛÑ–/©Ç¯¿^ãñÇYzÿýD"‰3gÎ䯞yÆŸØÞŽ>HRù;qŸ¡¿bçÊaª]RýVS`> ® "Þ\ í–Ä05)Í/ðb÷ßO8&“ÉPQQÁ|PêˆH¿w/!;„ð÷¤'ÇÈdQ#.t@…äìÙÅ'vôÓÖVV¬XA4%›ÍR__ÏÖ­[‰”`àèÑ£ÔÖŽÇõ7Ëq‡I]+ÖñRþN »|÷Ý#'vtðüðôÓOFI¥RÔ××ÓÖÖFõ¼y%é÷nÛF&¡º¦¦é;Ž;†êt‰80ÙÜ‘ut°páBš››±m»pÓcÛ6D£Q¢¿ü%âÉ'‡ÐÌ|öÛÞZÇ´éQ]]…²ý[™NÑ(®Óc»§ªzé%š_z©äûi·Ý62:^¬m|áy¿ñ&“'O¡©©‰h,†®1¦„[VÜõC°­ªÿïŸÎ;:°wî$wÙeC†÷½ý6m›Û?ÁŒ—ÐÔÔHeE–eê‡ð}•+4ˆDÊþ †ÁÌñêkìÞ½›|ÛV&O™JCcUÕUÄ¢QBv¨pi.„ çäGàIÏœp8LÍÙ3t¬~–Žx9ŽãŒðù¢ßžEÛý*iÛ!t]Ãó$Ž“Çu<×#××G¨³›+®šM}]•ÕUÄce»e­¨¬QÔ- @JårÒĉ¬Ûó§N}C*ö( Ò?Ï)é'{~Δ¯”į¨ào Ò-Mø…-Ó2 ‡Ã„ÃÊÊ"„ÂaB¶ašÁ]³îß“ ¢eYH©˜1cŽçàŠ:ÓÙɱÃùüóÏÑ ÝбLÓ01ÍÇ0M +øm¦Ž®ºl¥D!=‰'=¤ë_—:®K*Ùù®³8®‹“Ë‘wœ|ž\.‡ãäq\¿œîº.óæÍ¥ëܹ¢ÞE Ë(CÀÀßÛ¶=å—W„Ðü² &Ðt ¡éhšæ—5 ] J†Áe·&ü«&1Øû‹´JáI%Jöÿz²p¹¢ *@ƒ\.÷ð7ÀÖ!<O‰ HG â÷°]už¾ÃzÈÝ@º$€ÿí¿Še´SwIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/search.png0000755000175000017500000000303712033133562024613 0ustar neilneil00000000000000‰PNG  IHDR szzôæIDATX…Å–pTÕÇ?o¼]6»$»ùABº@²h"ÔS˜¦PÍ ‚V‹’RÔBµjGGgúëÚZ˜¡th)bU†ˆMe¢Ø‘¨„(`AˆWcˆ´h$–lB1?È’dÃÛìïÓ?²ÄÐFÛM¿3gÞ¼ûî¹÷sÏy÷Ü«ˆ_¦ _ôñλ~hr¹\Ź9S„#á“Q5vw÷x75<°íùç:þ_åó"ðûõOÜëÌÎ|t÷ëÕÖW«ªš€3@˜4« `æÊ•+“-Ö俽y fÕ®×vt^6€ÒïÝ•´té’¿îÙýú¼ÊÊÊ À;ù³ n¸Ñ`2M¸pî\_ßÎÕú€Ös½#%é'zjKní¡wV<_Q~p\"2b‹ßfܾý•Ú)N§È_³fÝ="²]D¶‰ÈïDä)‡ˆ O› ¬ÛRV6øƒ•÷•ŒëµK^6n|òéyEEï9OÛ‹"Ò&"»Dd½ˆ<," E$y´Ï¬Q€ß–——·.¾eIz¢º‘\(ÊÕ ÜÑpô؃g»µ_åæNY4À àNtA  ¬§Áú¡†µ¢j³qî-=õråË-……_,Ñ Œ,Z´è¡·ëOÔ¬ÞìdgX>š CÀ)(6Ȱ€= ì¶$슎I«_§N˜Yn·Yn]|ówÓPÅy}aáÌ/~öSfÎÈÛx¾¿ÿ—Ž””/¼ó}.@BÀ”øSú€Ó"âý·¾ ¶VT¼àôOkooçÎåË(*œ³CóûïM²X´q$*EQ–îÚ³gkËéö”P0À¼¹ß`~ñ7ß…ÂKUÕx~,Ÿ1Ëëx%";WÜ}÷Ÿg„&&Oät[;ï5þ¶ª÷õ÷û2¯8€Ïç[õ£{VT\[/F£@ À?>l,JI™XõiW—},êËnÀ„éÓ§o{·®^öî¯‘ÆÆ“Òìi•P(âö´¶]r¥»"q«Ë•÷¢ûÝ:©k8"==½ÒÙÝ#>ß¾ú†#®8Àg®mîº:ù¨ñ¤„"ðù¤·×»ãÈûÇ’¯8@Â’½õ­CµM¢ñ"ölyù¯ @œžž¾eïþš ï‚&ë7l8d^5€8„Ñf³=]<þKÀ¤‹í—µý7)Šb‰ï<ÿHÛÕKÿÔ *:ê°IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/separate.png0000644000175000017500000000417112033133562025147 0ustar neilneil00000000000000‰PNG  IHDR szzôgAMA¯È7ŠétEXtSoftwareAdobe ImageReadyqÉe< IDATxÚbüÿÿ? 02226o>dÈÅűž••UþÎ;>II¡{€Â¿€ø?>} »ˆ‰B°jÕNEffæ}&&Zòbb‚ ×®] ó131úˆbüþý¯ASSA€ÈþÃðîÝ; 0(@ÑÕîÙsJ`óæý‚ÈrD±€À^AA Ìøóç/ï_¿±Æã† ~þüu€••}# r$ H €X(µ››Sþïß`6Ðr þƒ¡fñâm`Ë Õõß¾ý’âç@ü €(?~A-þÍ´ ¨˜>}-Ør`Ñ—““`&V0(Ø@ €¢Øß¿ÿ„;äP:€îîÅ`Ë­­õõ•”¤Áb½€…<8ªˆ…!ðóço0°(HL,Y¾ÛÉÉlù¿ÿ>|øÌpëÖ½Ë@é¿°, @Tp$`Ž…€¶¶)Ÿ¸¸ü{{#=ee°Ø›7¶m;òuË–ÕÓJ¿2H@±P+ ÀØÌÌl_±bƒ®® ƒºº<ÜòU«v}=sfwÙ•+ÇpZ„Ó[Ê4˜™&ðŠ2Hhsð³q21üÿõŸáìOoÞþªro¾5÷@“ב7·ØdìÀýúáÛ· kÖìýzúô®²[·NᵫVæj82²2®3 å×bG‘“6çä»»ùã”ÕÅÊœ‚Ü,q‚˜¢ÓÁ÷÷/gxúôÐçÄY„á€EêŽüâÌûœ’xX9¾ÞüÆðëÃ?&6F^fVFegN†o¯þtËXq0(=ùÀ°zõ^pnxñä!Ãï×Gú€–Ÿƒ¦v¼–ƒ@1"7Hæ¦h pq3ÞÎã?ã¿n\ÿ¾çðµ/;åEÙDmtx²´|9y˜Žùùå;¤$¿q•›áõ•? ’Š¿æ.~TÔ±þŨï¿ã³d7@¡„0AšØ1 °ýýÍpyÏ_†-‡>öW-{ª>ßñ×9™ŠÄÔ™ÚÄ™ØA%ùW`‘öñ?Ãÿ{ßLƒy>ÜÿË`£Áëv¬U ü߆sß~üÛèÖrk4Ïcu@¡TFÌlÿãUÿ2|zò‹áÔù{ –ƒ‚òÈG¬ŒÌ?¿šõå}þ‹áÖ± òN\ Àž[˜‘Á:˜ÏÃ2]À\Ûƒ;SV…}ÇŽjõi ZWÅ@(‚¢ÿä¾þbøñá7Ã׿ï…>ñk þ ŠKfæ~`± Tóùå†3¾2s1«X ç¾ÿaàV²âŒ`6ˆÖpfgPÖfKY]¨ÚÔϋ̈́" Ì ÌÞß~1üýú‡‰‘YZ^ƒÊÙÓâ5e%þø °ýdøôê/ÃñcÌ_§nUöç7Ðò¿áøóý_ ï®ýÓ ¾Š)ƒ´$kN¼½¨!ÐNô¦@¡¤¬Ô~1HÌH‘;¨ÆG™…™™ñ&“…–ìw[sÕ ^13ºÌýuÁ×eëO¿;[lƒþ€TÁ¯00\ºü ˜h?ïtÐæuÑÖas—Õa`Wg`0¼Êí¿ðàëëPOý…Ù @(¸ýŒùèËgÿ­Åù~3øéÿbЗbõ‰ pÿcàçúËðþ+ÃÞëü_}]¶éì;p>‡„°FÒåKÿ/û´ß÷ÛÎ /6l¯VŸ%$Îà( K^6G øT þˆì€B‰‚W•/:(ðùåKPý›AžûsþùÅpî.æó/ç|²ü ¬ùó â€ÿ3ì»üy=´¦%Ü'ÏßýYgýû‡Øhµ¹€˜ÙN€B iœŠ± šðM¸FMäŸ=û?pyðíÞ³?v¯?ûxëƒ×?@ƒœø”0ÿüù÷×ü¿€9þý— Dû šhíó_ßÿ‚Ó7'3¨¿ÀŽn'@¡—„–œxrHG±´ù ê`üƒ–hŸ 9ã3´EóÿáS¦ËÀ°á61e…8õbë¡ê€-t;6Æ?àºvÿßel}€BÏÿ¡ŠÐ‡ dÄ7øß…ûänÐsß¾þÏ Îõ“AQ„%8ÌL”ÚÙºÃUþýÏ•åÿÁ’ÿôíß ¨£ÿ![@Ø*£ÿP…¿‰©ªßù»äâmöh'­O žzy~üà_§#Åw‚‡ý¿¦ŸÑ~¶¿.Þæc¸õüûQh@i·#:§¬=jÃßYÊüÄ|ý…•aÖÁË5kïfCCõ4Áu@Q£köçÆ³oéëÎ ~~ü’R&@1ˆ¿ì¤Ð×µ§_uC³ßGô j„8‚Œ$ ÔĹkUDþùŠqÿbxõ•áÚK†={¯¿]xññ§ëÐôó9jAv%©Òz*ÔÀIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/settings.png0000644000175000017500000000255612540106530025206 0ustar neilneil00000000000000‰PNG  IHDR szzôsBIT|dˆ pHYs × ×B(›xtEXtSoftwarewww.inkscape.org›î<ëIDATX…í–_hSwÇ?¿ÜÜÚÆšÜšÜÚ¦U»9k+]©Ö?0[Pqn¯q‚c>È«‚ ACË(2Ÿ&{p+"ºÜc{p{Ò²—i­¶iÓÖ¦MSµIn’ûÛCÌ5iSEØ`;/?î9¿sÎ÷|ï÷÷»WH)ù'ÍövÿÀ¿€}¶ãøéãÕŠÁi-Ä‹k%ÿP(9pøðá±§°§ä¹Õõ ;_{›M`³-Œ¤üÓ%¥äV_ïÊ7otíùûDþÆK—.)}wz§€#™Lbš&RJEAÁÛ;w±}ÛŽçnN§éºp>m·-r:t(n œŸ88Ø÷ê£Go65óþÞ½–?“ÉsöìY¶oÛ‚ƒb{ö졽½)%RJöïßišìÛ·¶¶6ìv;Z…=:9Ù üZ€´)ë¤ÁʺLF' ¦r:(v…‘‘¼^/ƒƒƒVl||ÿMQ¦”˜“šÚóa3ð›À¦ÊM[Š¢(àîÝ»s¦‡hX[?ït?|ÿ#Ÿu~ÎÐÐVÌf³ÑÕÕ…¢(ôü~@ °Á€”-·ÇRµa466Z¼^/RJÊÊÊøör7óY&“!Ãëõ²nݺ‚X"‘ §1ÝSI`p ¿ÍÏnÞ¼™-[¶O.ßÑcšüXΟûpç¬ó³ÏÀ –H3Q5€ ©BàƒÇÄÆáä.@ $p³d!sý#ø~<<+"À¾xÓ ÀM›À0‡ÿêB™\€„Àt‘8K€@zŽB¦@F€˜&S `ËcbãP-`'æÓ€ø™{[”! ‘ eˆDh;¬ÏVŠEX0fKÄ9Ø-0IWfH°·ÀÎ ² 0Qˆ…){`È##x„™FòW<ñ+®ç*x™²<¹$9E[-qWW.(ÎI+6aaš@.Ây™24àóÌ ‘àƒóýxήÎÎ6޶_-ê¿ÿ"bbãþåÏ«p@át~Ñþ,/³€;€mþ¢%îh^  u÷‹f²@µ éÚWópø~<ß5°j>{‘-¨]cöK'XtÀâ÷ò»oÁÔ(€hƒáÏwÿï?ýG %€fI’q^D$.Tʳ?ÇD *°AôÁ,ÀÁÜÁ ü`6„B$ÄÂBB d€r`)¬‚B(†Í°*`/Ô@4ÀQh†“p.ÂU¸=púažÁ(¼ AÈa!ÚˆbŠX#Ž™…ø!ÁH‹$ ɈQ"K‘5H1RŠT UHò=r9‡\Fº‘;È2‚ü†¼G1”²Q=Ô µC¹¨7„F¢ Ðdt1š ›Ðr´=Œ6¡çЫhÚ>CÇ0Àè3Äl0.ÆÃB±8, “c˱"¬ «Æ°V¬»‰õcϱwEÀ 6wB aAHXLXNØH¨ $4Ú 7 „QÂ'"“¨K´&ºùÄb21‡XH,#Ö/{ˆCÄ7$‰C2'¹I±¤TÒÒFÒnR#é,©›4H#“ÉÚdk²9”, +È…ääÃä3ää!ò[ b@q¤øSâ(RÊjJåå4åe˜2AU£šRݨ¡T5ZB­¡¶R¯Q‡¨4uš9̓IK¥­¢•Óhh÷i¯ètºÝ•N—ÐWÒËéGè—èôw †ƒÇˆg(›gw¯˜L¦Ó‹ÇT071ë˜ç™™oUX*¶*|‘Ê •J•&•*/T©ª¦ªÞª UóUËT©^S}®FU3Sã© Ô–«UªPëSSg©;¨‡ªg¨oT?¤~Yý‰YÃLÃOC¤Q ±_ã¼Æ c³x,!k «†u5Ä&±ÍÙ|v*»˜ý»‹=ª©¡9C3J3W³Ró”f?ã˜qøœtN ç(§—ó~ŠÞï)â)¦4L¹1e\kª–—–X«H«Q«Gë½6®í§¦½E»YûAÇJ'\'GgÎçSÙSݧ §M=:õ®.ªk¥¡»Dw¿n§î˜ž¾^€žLo§Þy½çú}/ýTýmú§õG X³ $Û Î<Å5qo</ÇÛñQC]Ã@C¥a•a—á„‘¹Ñ<£ÕFFŒiÆ\ã$ãmÆmÆ£&&!&KMêMîšRM¹¦)¦;L;LÇÍÌÍ¢ÍÖ™5›=1×2ç›ç›×›ß·`ZxZ,¶¨¶¸eI²äZ¦Yî¶¼n…Z9Y¥XUZ]³F­­%Ö»­»§§¹N“N«žÖgðñ¶É¶©·°åØÛ®¶m¶}agbg·Å®Ã“}º}ý= ‡Ù«Z~s´r:V:ޚΜî?}Åô–é/gXÏÏØ3ã¶Ë)ÄiS›ÓGgg¹sƒóˆ‹‰K‚Ë.—>.›ÆÝȽäJtõq]ázÒõ›³›Âí¨Û¯î6îiî‡ÜŸÌ4Ÿ)žY3sÐÃÈCàQåÑ? Ÿ•0k߬~OCOgµç#/c/‘W­×°·¥wª÷aï>ö>rŸã>ã<7Þ2ÞY_Ì7À·È·ËOÃož_…ßC#ÿdÿzÿѧ€%g‰A[ûøz|!¿Ž?:Ûeö²ÙíAŒ ¹AA‚­‚åÁ­!hÈì­!÷ç˜Î‘Îi…P~èÖÐaæa‹Ã~ '…‡…W†?ŽpˆXÑ1—5wÑÜCsßDúD–DÞ›g1O9¯-J5*>ª.j<Ú7º4º?Æ.fYÌÕXXIlK9.*®6nl¾ßüíó‡ââ ã{˜/È]py¡ÎÂô…§©.,:–@LˆN8”ðA*¨Œ%òw%Ž yÂÂg"/Ñ6шØC\*NòH*Mz’쑼5y$Å3¥,幄'©¼L LÝ›:žšv m2=:½1ƒ’‘qBª!M“¶gêgæfvˬe…²þÅn‹·/•Ék³¬Y- ¶B¦èTZ(×*²geWf¿Í‰Ê9–«ž+Íí̳ÊÛ7œïŸÿíÂá’¶¥†KW-X潬j9²‰Š®Û—Ø(Üxå‡oÊ¿™Ü”´©«Ä¹dÏfÒféæÞ-ž[–ª—æ—n ÙÚ´ ßV´íõöEÛ/—Í(Û»ƒ¶C¹£¿<¸¼e§ÉÎÍ;?T¤TôTúT6îÒݵa×ønÑî{¼ö4ìÕÛ[¼÷ý>ɾÛUUMÕfÕeûIû³÷?®‰ªéø–ûm]­NmqíÇÒý#¶×¹ÔÕÒ=TRÖ+ëGǾþïw- 6 UœÆâ#pDyäé÷ ß÷ :ÚvŒ{¬áÓvg/jBšòšF›Sšû[b[ºOÌ>ÑÖêÞzüGÛœ499â?rýéü§CÏdÏ&žþ¢þË®/~øÕë×Îјѡ—ò—“¿m|¥ýêÀë¯ÛÆÂƾÉx31^ôVûíÁwÜwï£ßOä| (ÿhù±õSЧû“““ÿ˜óüc3-ÛgAMA±Ž|ûQ“ cHRMz%€ƒùÿ€éu0ê`:˜o’_ÅF ŸIDATxÚìšé“]ÅyÆ}ö»Ì]ænsGÒHh$¬E "»"ˆ88Ø)ã8Zªò%åTR‰+ñÁ"a 2ÂH,Í~÷õ¬ÝÒŒg$£%•¸Ê]ÕuzúÜÛý¼÷yûÝz„Öš?æfðGÞ¬{½Bˆ×^{mñÿÈW_}uFßCU¬oøžéy^㥗^:ó¿ PkRjë¹Ù]×e~~þÀ’û@H)€8Ž7YÙñ¼×xûܽoïÛÁoÂ4Mnc÷­B·èÍ 7ŸB´Ö,µÌ{ï_æØÉôz]JÅ"×>¹A¡åÄé¬5VyïW—øÛŸþ†aìÿ5ûÜõ4 Ã0¶0<Ô!Þ¾éæXiE(C`”ŒQ ¤ ˆÅÇJA¤è=Â0 Ini€Rjk ¥DR !I’l· þ  Ü|“‰j–ýûPœ*aR,à?¶ŸL&M*eS.Oqêĺƒí&¯ÿrž¿|ù"ú ½Õ?„«àÓ¥Î>uŽ®^çðÁ½¼ÿ›ËÌšcnnn“`óØTíc+†l:‹£ÏÅp\²™ lË-¦$åe¨ä2(+Ç“gÏP-WÐZ3œ³oªŽÔ†cQ,”˜;´—r¹Îììªõ=[à¿ã~,ÅöiÅJ£A4¦Ýk0êú¬66èth™à6½A€ß±|½A…tš]ZÍv‹v§A«ÓEé˜n§OJÚÝÁh°+õÙ›ÀÛíŸ\ý §NG"¥bÌØ$ÀDZ'‘ ”ÒDa^ˆŠ=Bg„‚8IHtŒá™˜¡F‡ ± 0Ý•h Ùbü‘0 µF¢‘¨$F'‡‰”ôãˆA4" cºa‡`IáGc‚h@¿¡E8ÐøcÍ8Òï…øMŸ‘á:Ö âaB$%Q,¾U÷ïi“7;`ÏÏÏ_RJéñx¼Õ}ß×¾ïë ¶z†: CE‘Ž¢HÇq¼Õ“$ÙêRJ-¥ÔJ©­¾½mÎI)u’$Zk­ççç/ö½p»Õýq0fue•ÕõU¤ŒIÉâÊ"q$é÷zD2¡±¾N£ÙEhƒÈ±´¼D+„,.-!‘4›-VVVü€8YZº‰”’æF)%7Ç»f`WfTkM·Ûç½K—I ɹ³çH”â?ñ/œ~æ,Í›mjõW®\!›«òÊ ßãêÂ'¼þË·ùñ~€áxüâß~Îßüðg\ùíÛ¬5?u’´røàÚU^¹ø —ß—cÇNð«×ÿ‹£'ñôSOïÊ«[»e 2™ãä©S¤“©ÚšçŸ‘ýûféîñÉSÌTgp ™B‰'òg){›=„^ºð#êõÞsßÃO¦&ËH¥)Ô&ÉW²<ñÄ3L– œ;ÿgÔêµ]3`ì–q¨ùýÃpÄp8¢Ù0êwè5ÖñC–+´Ö›¨0¤Óirscäã˘Vw8‰éu[4[ ë ÆcZ2Nh4Vé´;,¯­’Ëå¾Ö™>¾? Ñl b¨Vê­YYþ’ɼG«Ý'4ÇÜXýŒ‰Fjm›-n|΃u\\¾\ü’ƒ³s\[\Bö¸GŒÑå¥%öÖ÷mS«Ön±{MÜ+#BØo¼ñƯϟ?6‚oŒDw>ÈçÞ|óÍË.\8¯µŽˆÍÖëõX¾mI>v‡|öÙ öÌÔ FcÒ™,ëËäÄÜIV7nrca3'Žƒípå·ðÌ“ßå‹›×Å!{«SX¦ÉÚÒ‡fåæåÚ4Ÿýþ3œ¡ZŸÚÕ9صeB¯Û¦Ýõ‰‚KkVÛ t¢è¶»øaB·ÛGŽ"bÃG¢i´:„‰LÖúk$D£€~»E43 bš­Åzw@bš´û †~øhsb­5®é€²±1 E $¶ŽIDŒi)lÃ$NBü$Æ2=’0BÆ‘ MÄX($1he ·<¼ÀÄÕÃ@˜(?|N|—†bb2P9,'…c˜T‹ernUH0SÕÒ$®åa —ÎRŸªRô²aS(Lca’+Nb “tº€ rSx¦[(àb2_$í¦wDÀ,Àv—mYé Ú°± m$¤«%”™ÂuYÓ".0¤A¢žk3YÎ’HH¥=U„­0\ƒ|¾ˆmi[TkåÜ$¦äË“¤'RߘÁí¶*±ão×ñسoÿVt(„Í‘ý³·Æù ÙBáö®ŠB¡@> !nf§çGkÁé;ÖÏe'¨MU8xàÀŽ(øÛ|µ›d`u}•Ëo_BZŠ³ÏžG„1ÿúï?çé§že¹Ùg_5Çoþû&Ê“¼|ñ"ýîóoÿ?þá_Sprüã?ÿÿð³ŸðÞ;ïÓl¯pôøҎǵßÄ ß¿Èû—>äñïåÝw~ÍÉÓÇ9}ò©»°<›BLLLrì;ÇLUKX1œ{îEŽÍÍ2Ýn19Y£X¨àzYjå ™Ó¥²Í©ÃÇ®ÅË^do}qÞe<±wzÒ†LÞ£R®râäõú4á™'(•k;x îÔAC(  :ÑD–Â0cÂ0€Dc„’$IptDK Æ!’`Ø6ÂÐÄcŸv{ SI´g°¾Öaº°Þi“Îäh57˜ÈL<+¤”úCB“HF‰i)TC¢ zÉŒ H"F2 Ž|ÃGØ©M¾êu˜Xí´¹òчì?8Ã'ׯóòË/ní1»ï OŸ~€óßûó­ÂÁv ÷-€mÛ;qH·³ŽÀ&œª¡´â«Ö2SÍ íÖ`°°ð…R™CÓj¯±öéäŸÃ0øûŸþ€‹_¸«Â±ðö¹;±<”°]©ú4B2ù4RkŽî;LµXA&Óõ:J&ضr)V§xüôIlÃ"Q1ŸßXdöÈ,Íå5BQÈÀ€n§ÍÌž6Z ò¹IVÖnR)WÈçóÆoú8Iˆâ„8Ž #ÆÑˆ¡òщb8 Gü8AéÓÐ1ô=rÈÂÂ5DÓé5XZ\Äôðƒ>k+-ü8¦ÙØÀ‡l4Ö‡JlÏ´Ö$QÄzkfƒ`0¢Óï³±²A§; Ñ\gÔëñÅÒ2kK«D£1ëÍ ®ßø‚® †ŠF‹qÐŒè ‡ŒÃÁÀ§Ýß cƒQ2¦Óî„þÃû»JÕ†E¥X ‰LlÏ%m(&Ë“Ó9d)f"ë±oï)#饘,ç9t`š”ëà9iL×I¹.µÉiÇÀK{†E­R&ã*EÛ¥\ªâ¹©G S`™iìœ4qvÚ$R1ްâ˜DK,S2$#©°-'DŒ0Í<à @Ç&¶iÖ­ Ÿ›"Š lÛD×u1,ãÑ °©BÙl–#G²;(=sâÉIHµZ½=†éJ•éJuëýÙçÎ „ {d˜Ùš¯T*·Bˆì­°äĉü«ô074;i5|xåc,!9~òZi._z—ÇŽ¢ÛkR,Tøüú§3Ež8û,Ë7¿äË—ø‹ï^À›pysþ þêßçêGÓî÷8R¹ ʵ*)/Ci¢Dˆ¤6]Åu2 ²Ù,¥Rϳž;ï´iɤP†‰á”¸Ã21mG›ä²¸®©4vÊÆI§ðLbÈåÒˆØÀó<”’˜¶Åc'†Ä4l¢8&‰òùÒ7–H…¤RDqB¡C ZE£Ð'оç3 pŽ"Æ' GLÇÁcÂxH"cüqLúaàF1ù|†J¹Lõö™Øþ‘¨ç8L•ª(a`¸– {fö2‘Í“I…8¶‹5ca[) #GêèµZ-aîÐ!R’,“ÏæÉä²èDàØi'ƒmXw]c=23ªµÆrlŠ•Ò+T)UBòÜ[ç$ím½÷, /•fu}ƒ´›¡8YB Èåì?¬áB*ã"„ÀÁÚþQUæÄfFµ¹é7ïœK’„Îêý^ïÖØÄðÀfT)…”rGH{¯‚Ô×E”¦irøØñ­°øÎ_÷ÎÏß¹îæuë0 “ êo½õÖÒÿñE}= Ãä¾K‹úg? °»ö?‚^«m|cIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/up.png0000644000175000017500000000317712660354431024002 0ustar neilneil00000000000000‰PNG  IHDR szzôbKGDÿÿÿ ½§“ pHYs  šœtIMEà 8)¥ÆEÐ IDATXõ—Û¯ÕGÇ?kÍüöåÀÙ@9Ü ‚ Ä–* Tc4pJJM>™}³OMì‹ÿŒOà‹O꛽x’ ­‰Û,¦ÅÒÃí°÷Ù·ßof–¿ß>—žÍæ`t’Ù¿ìdfÖw¾ëò]#ûv!¤@¿HXLH,¿T_[ñ?ÅI3ׯ2¿ïšŠD¬X^?:CB¤?4C`Ç«sÄîK 則`¢ì‹Ñ~£íHfüWcÝ 0LÀ×Ýám»üדßýÚ«»kùíR+™aÿ/ åͳzvhç»ïï;ºåWW»¼ôòø|#=,Š4“aÉþ·FÆBÖô³;ßýóÅÁÉo´ò" Î^îð♃Ø,í"%ˆIlˆ,Ïu1Po4ý¡—þôN~êx«WúÃH ¨[äÜû=æ¾=˳Û\ ">"(DÄ+¸„>Öçf6»ýKÃË'¦‡‰Å^Ä«!’pRø Ï‰ïå¹]v1 Ó1–L¬2.€wüûGoÒÈêÔÕO``äó©ìжó/§çZad±Wàµ:8£ç®9ñý#|iï†v>(¦cX B½¢õŒ¡*{„ F7¯Me³ÛwñâðôÉÒø À« cÜê0ê)pöªqâµ#Þßjçý l™cþÇoPd:€&BÖÌfgÞ:¡wúÅV7ôú'¶ÆørugF#œ»Çp„Ùg*…‘FLˆ N‘Z†Ô³Õ¬2®õÚìÌ›¼Ð>óR«~QTcÍ™Q/àÜ?àøëÇ8üÜ–vÞÏ7Ä–@ˆ–,´òö2€„DpõÚ—·½ñö…ηNµŠhäy@­¼¡L X[žbF–ÃÙkðõ×òü¡­‹Ã~¾1†T¥¨€wH£†ŽN5E¶n̾²û÷o]ê}ç•V®0L†Š€.³c°*Ç °…APˆT0Ÿàç7à«?<Æì »: b+FÃ0D2‡—ÊÓÑÜtáÊ:ûÏLu6eˆs%bSÁåFžG’ Œ¼€oî­5´‘á§À»\¸—ÃÜkÏ3;íþòÒüt¦²8¢Ôò2±ýì{µË×N<õѧˆJ©h"#…L·Ú³:w*ãJéÜ*#†ÐÇóðÊMvß¾Í/î4?©ymJLBL$Ãiž7^90å5Ýì½,Š”|ðb˜—¿×Ÿµ9}a a–',$ Qt"S9°óúµßnÜóÅýÍ•ög\ájÂÝ^äÃN}‡ë æ°$É.&2¿þKŸ­Ó¾TÔj³_ n³(4±({I– Ðræ¡Lˆ©J‘U¢’'á~ßæ}æp•ÛpQð&¸PXQtM('CÌ+•?t†H” DüÊÍŸ-NA½úM›•ˆ~* 噤cOªêvÑé—+ÜR­Y»{ S3cãæfE³Á„NAWÒeʉ ùƒn™*"O¦æF™9ɘžÙ€E[f÷‘dùÖ¨ßn#:©ô<¾£0*»ZX²Òþ *Y¶ @•áÇWŸ`ß T&w2KL|nK™ÉV—L3Tê Ä9D•üÁ]D•GxüÉû©‘˜¨ï!…ˆ…Tº¥š^ëž=ƒ›·`ɸŒiüêxUH«ey ôQ퉙gv,;ò†ïÿë>Ömƒ«daœñÊ©Ùìl-KÀꓜÏݨGKUNæÜ’µ}*î!=m‰y”²SA2åxJˆ=ÉÝÝÚ¡Xï«¢gšWc´FJÜS•$"¨‚ˆêonôoîÎC`•S?<1N,+Æ@3w#DS,-˜‰Q©¹`^1RÍwÆIöDfi½Ëƒ‡·‚Ñ1£‹Ãp£>_$ÐAÞµ¥ŽÜÖÉÀR¯6)› ¯êuÿše ËU´Ì'ˆ")&+î·‰4°´Î4.cÀ4é)Z5ÑÂÔö}ï÷ÚQc´$N1,Öð´öÜ=ØÙÍÐkÇ>Žè.¤ðÏ;ÅB¾)bjHLÄ….)-’òÄ=Ù¹­Ix·áó f=PIIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/upper_implant.svg0000644000175000017500000026702712243667047026265 0ustar neilneil00000000000000 image/svg+xml openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/vcalendar.png0000755000175000017500000001207412033133562025306 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡ pHYs  šœ OiCCPPhotoshop ICC profilexÚSgTSé=÷ÞôBKˆ€”KoR RB‹€‘&*! Jˆ!¡ÙQÁEEÈ ˆŽŽ€ŒQ, Š Øä!¢Žƒ£ˆŠÊûá{£kÖ¼÷æÍþµ×>ç¬ó³ÏÀ –H3Q5€ ©BàƒÇÄÆáä.@ $p³d!sý#ø~<<+"À¾xÓ ÀM›À0‡ÿêB™\€„Àt‘8K€@zŽB¦@F€˜&S `ËcbãP-`'æÓ€ø™{[”! ‘ eˆDh;¬ÏVŠEX0fKÄ9Ø-0IWfH°·ÀÎ ² 0Qˆ…){`È##x„™FòW<ñ+®ç*x™²<¹$9E[-qWW.(ÎI+6aaš@.Ây™24àóÌ ‘àƒóýxήÎÎ6޶_-ê¿ÿ"bbãþåÏ«p@át~Ñþ,/³€;€mþ¢%îh^  u÷‹f²@µ éÚWópø~<ß5°j>{‘-¨]cöK'XtÀâ÷ò»oÁÔ(€hƒáÏwÿï?ýG %€fI’q^D$.Tʳ?ÇD *°AôÁ,ÀÁÜÁ ü`6„B$ÄÂBB d€r`)¬‚B(†Í°*`/Ô@4ÀQh†“p.ÂU¸=púažÁ(¼ AÈa!ÚˆbŠX#Ž™…ø!ÁH‹$ ɈQ"K‘5H1RŠT UHò=r9‡\Fº‘;È2‚ü†¼G1”²Q=Ô µC¹¨7„F¢ Ðdt1š ›Ðr´=Œ6¡çЫhÚ>CÇ0Àè3Äl0.ÆÃB±8, “c˱"¬ «Æ°V¬»‰õcϱwEÀ 6wB aAHXLXNØH¨ $4Ú 7 „QÂ'"“¨K´&ºùÄb21‡XH,#Ö/{ˆCÄ7$‰C2'¹I±¤TÒÒFÒnR#é,©›4H#“ÉÚdk²9”, +È…ääÃä3ää!ò[ b@q¤øSâ(RÊjJåå4åe˜2AU£šRݨ¡T5ZB­¡¶R¯Q‡¨4uš9̓IK¥­¢•Óhh÷i¯ètºÝ•N—ÐWÒËéGè—èôw †ƒÇˆg(›gw¯˜L¦Ó‹ÇT071ë˜ç™™oUX*¶*|‘Ê •J•&•*/T©ª¦ªÞª UóUËT©^S}®FU3Sã© Ô–«UªPëSSg©;¨‡ªg¨oT?¤~Yý‰YÃLÃOC¤Q ±_ã¼Æ c³x,!k «†u5Ä&±ÍÙ|v*»˜ý»‹=ª©¡9C3J3W³Ró”f?ã˜qøœtN ç(§—ó~ŠÞï)â)¦4L¹1e\kª–—–X«H«Q«Gë½6®í§¦½E»YûAÇJ'\'GgÎçSÙSݧ §M=:õ®.ªk¥¡»Dw¿n§î˜ž¾^€žLo§Þy½çú}/ýTýmú§õG X³ $Û Î<Å5qo</ÇÛñQC]Ã@C¥a•a—á„‘¹Ñ<£ÕFFŒiÆ\ã$ãmÆmÆ£&&!&KMêMîšRM¹¦)¦;L;LÇÍÌÍ¢ÍÖ™5›=1×2ç›ç›×›ß·`ZxZ,¶¨¶¸eI²äZ¦Yî¶¼n…Z9Y¥XUZ]³F­­%Ö»­»§§¹N“N«žÖgðñ¶É¶©·°åØÛ®¶m¶}agbg·Å®Ã“}º}ý= ‡Ù«Z~s´r:V:ޚΜî?}Åô–é/gXÏÏØ3ã¶Ë)ÄiS›ÓGgg¹sƒóˆ‹‰K‚Ë.—>.›ÆÝȽäJtõq]ázÒõ›³›Âí¨Û¯î6îiî‡ÜŸÌ4Ÿ)žY3sÐÃÈCàQåÑ? Ÿ•0k߬~OCOgµç#/c/‘W­×°·¥wª÷aï>ö>rŸã>ã<7Þ2ÞY_Ì7À·È·ËOÃož_…ßC#ÿdÿzÿѧ€%g‰A[ûøz|!¿Ž?:Ûeö²ÙíAŒ ¹AA‚­‚åÁ­!hÈì­!÷ç˜Î‘Îi…P~èÖÐaæa‹Ã~ '…‡…W†?ŽpˆXÑ1—5wÑÜCsßDúD–DÞ›g1O9¯-J5*>ª.j<Ú7º4º?Æ.fYÌÕXXIlK9.*®6nl¾ßüíó‡ââ ã{˜/È]py¡ÎÂô…§©.,:–@LˆN8”ðA*¨Œ%òw%Ž yÂÂg"/Ñ6шØC\*NòH*Mz’쑼5y$Å3¥,幄'©¼L LÝ›:žšv m2=:½1ƒ’‘qBª!M“¶gêgæfvˬe…²þÅn‹·/•Ék³¬Y- ¶B¦èTZ(×*²geWf¿Í‰Ê9–«ž+Íí̳ÊÛ7œïŸÿíÂá’¶¥†KW-X潬j9²‰Š®Û—Ø(Üxå‡oÊ¿™Ü”´©«Ä¹dÏfÒféæÞ-ž[–ª—æ—n ÙÚ´ ßV´íõöEÛ/—Í(Û»ƒ¶C¹£¿<¸¼e§ÉÎÍ;?T¤TôTúT6îÒݵa×ønÑî{¼ö4ìÕÛ[¼÷ý>ɾÛUUMÕfÕeûIû³÷?®‰ªéø–ûm]­NmqíÇÒý#¶×¹ÔÕÒ=TRÖ+ëGǾþïw- 6 UœÆâ#pDyäé÷ ß÷ :ÚvŒ{¬áÓvg/jBšòšF›Sšû[b[ºOÌ>ÑÖêÞzüGÛœ499â?rýéü§CÏdÏ&žþ¢þË®/~øÕë×Îјѡ—ò—“¿m|¥ýêÀë¯ÛÆÂƾÉx31^ôVûíÁwÜwï£ßOä| (ÿhù±õSЧû“““ÿ˜óüc3-ÛgAMA±Ž|ûQ“ cHRMz%€ƒùÿ€éu0ê`:˜o’_ÅF WIDATxÚìš]h[çÇï{>$ùH²­v\g‡,iÓ‹’†A»vAÆš²P^˜±A PM)47a£Ðìn0J(ÌY}Ñe7MGzQJG MÇÂJ>Š’&ÁÞˆ;^ÒÚµëOIGç}Ï» I'’l'–í}zàðJGÒ9ÏÿyþÏç+aŒá›|H¾á‡½ÔBñÞ{ïü?¹oß¾‡ÌT±ïñ;+ïÙ³ç±ÿ´€ÆÂ0ŒÖò‹Å8}úô%ÀT½„ÖZAP¶JÕºÔëÊkK \yV _ ²,J2ˆº)TÄ”X^…ÑZy­VÀ¥@.Æ„ZàB¤”H)#VåÄ•­³œk÷¶ö, \õ~UQ¨Vsµ‚V®÷VkÅ¥@T)¯+PÖÀ½´­”bjjšB!¨ú¬–×åóÚÕ«\¿vmÅ*…¯ Ï}­ 뉋]ýׯ]cbrr¶+Á!˜™™áæÍašš×166ùSùûµ>°êD&¥\×¥”\ýü ù|~ýÊÚ4Æ0>6Ž1†‹û.Æj˪Òx-eÖĵW†:iBtPà£?"ŸË-1dççH{ œ?{–±/¿XÔ7–²Ò0Z%øŸNü‘¾·™ †‚ HÄ8¡Ï#›yéw½Âp¦D£’°ÍiÖ)ø ¯ŸßxǶR"¥Åºpž}»ÀOžyf­V Vû×/_"üñAþ>_¼³1<”vyÐs˜)h¦rH¤CkƒÍzÏa,ðU. JéX…Öì·I×"|04Åd^±¥)NViÞîÿŠd¼ú–gFgô¯1’  Nù Mû|WH!HÆbØA—òÆrèS·gÅáÇÖó›½í”F ”18–E²Á& !—+D¿ MQDÜÁ± |?$P cŠLRrþoc|Þwcí-Pvâ04x¶ %aCX¡i173Í»o½Ë–ÎNž|úiÃbÄ*å…‹Ÿ] ¿¿ŸT:Í“O<ÁúZ ÔU÷HH" ¬I&^ÐEaPZcŒ¡(Œ1¸® aÈ‘_ýšžžöïßÏ“Oÿ?P8ŽÃ?8|ø0}}}LOOã86làÈ‘#twwGÝ^,f( Í’RÝN\YGN¬5J)”RضÍää$/¿ü2§N¢µµ•x<•J)^}õU>ýôS6mÚÄÑ£Gyî¹ç˜ššâµ×^c``)%J©¨¶2&\Vc´œ©ÄB0aQ0­‹Ú=þ<‡bdd„––¦§§1Æ TÑ:ããã cY¯¼ò ]]]LLL°wï^†††¸zõ*[·nEkÖº”V¼÷²„]o3S´€&³¹rå 7oÞäÅ_Ä÷}z{{£ïø¾O,ãĉLLL°yófæççñ}?º<'´Ö fgf dñJ¡ïURËû¨ÊÜ¥F6›eûö휟¬ã8wn߯±B³0”eYU¸«½@9ê”)T¶P"‘àý÷ßç7Þ@JIww7ÝÝÝܾ}c étšT*E.›en.Kƒ—Œz¡åNÍ—åÑÍ¢ø®#ŠTZ 2þc˜œœ¤··)%®ëòÉ'ŸðñÇÓÔÔÄÃ?Ìþýûéèèàlÿ–勹 X›L\ە߇º˜j-PK!˲¸xñ"£££Äb±b-•ÍÒÙÙÉ®]»ØµkÛ¶m#—Ëqkä›™ŸŸ]tò±¢<°x)¡ #Š”¹¹9ºººØ½{7©T*Š,ôôô ¥ÄqÉd2d2™åü¹s$Ÿç³ ¸qcÏKÑÚÚJƒça;™ÜJk­ªÇõe‹ÔF-Çv”RŒŽŽ2ñÕwîÜAë7‘N§ñ’I2ë2$‰¨#[µ—®nh4W._Æuc„Q)|7v‡&D—< B© *àØžçáÆb âº.ŽãH$GZÖ}Ç÷+nhÚÛÛéýÃq¦¦¦°- Çuq\×uplÛ±±m'"ŠN¯tÑbE` ª´–j!c ™L†ŸÿòkcZí !Øûì³è’ˆR"¤,vfB -«j,(Ñ”ŽÚ]Sq½ô ×qyê©§–5X^…vîÜÉÎ;—µµ´Ò×ËÙªk*±TsQÏÍJî±\ ­x‹é¿b-&s¢ŠÓuìN®†Bµ2¬8Œ†¥Ê³²¤]ê¡•>s¿×•ü^Ìߢ²¥0VF}ßWù|¾íÌ™3£ÿãú6ß÷Õ’ŠþöÏßXÝñïç×ÊŒCO>³IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/vcard.png0000755000175000017500000001113212033133562024440 0ustar neilneil00000000000000‰PNG  IHDR00Wù‡ pHYs  šœ OiCCPPhotoshop ICC profilexÚSgTSé=÷ÞôBKˆ€”KoR RB‹€‘&*! Jˆ!¡ÙQÁEEÈ ˆŽŽ€ŒQ, Š Øä!¢Žƒ£ˆŠÊûá{£kÖ¼÷æÍþµ×>ç¬ó³ÏÀ –H3Q5€ ©BàƒÇÄÆáä.@ $p³d!sý#ø~<<+"À¾xÓ ÀM›À0‡ÿêB™\€„Àt‘8K€@zŽB¦@F€˜&S `ËcbãP-`'æÓ€ø™{[”! ‘ eˆDh;¬ÏVŠEX0fKÄ9Ø-0IWfH°·ÀÎ ² 0Qˆ…){`È##x„™FòW<ñ+®ç*x™²<¹$9E[-qWW.(ÎI+6aaš@.Ây™24àóÌ ‘àƒóýxήÎÎ6޶_-ê¿ÿ"bbãþåÏ«p@át~Ñþ,/³€;€mþ¢%îh^  u÷‹f²@µ éÚWópø~<ß5°j>{‘-¨]cöK'XtÀâ÷ò»oÁÔ(€hƒáÏwÿï?ýG %€fI’q^D$.Tʳ?ÇD *°AôÁ,ÀÁÜÁ ü`6„B$ÄÂBB d€r`)¬‚B(†Í°*`/Ô@4ÀQh†“p.ÂU¸=púažÁ(¼ AÈa!ÚˆbŠX#Ž™…ø!ÁH‹$ ɈQ"K‘5H1RŠT UHò=r9‡\Fº‘;È2‚ü†¼G1”²Q=Ô µC¹¨7„F¢ Ðdt1š ›Ðr´=Œ6¡çЫhÚ>CÇ0Àè3Äl0.ÆÃB±8, “c˱"¬ «Æ°V¬»‰õcϱwEÀ 6wB aAHXLXNØH¨ $4Ú 7 „QÂ'"“¨K´&ºùÄb21‡XH,#Ö/{ˆCÄ7$‰C2'¹I±¤TÒÒFÒnR#é,©›4H#“ÉÚdk²9”, +È…ääÃä3ää!ò[ b@q¤øSâ(RÊjJåå4åe˜2AU£šRݨ¡T5ZB­¡¶R¯Q‡¨4uš9̓IK¥­¢•Óhh÷i¯ètºÝ•N—ÐWÒËéGè—èôw †ƒÇˆg(›gw¯˜L¦Ó‹ÇT071ë˜ç™™oUX*¶*|‘Ê •J•&•*/T©ª¦ªÞª UóUËT©^S}®FU3Sã© Ô–«UªPëSSg©;¨‡ªg¨oT?¤~Yý‰YÃLÃOC¤Q ±_ã¼Æ c³x,!k «†u5Ä&±ÍÙ|v*»˜ý»‹=ª©¡9C3J3W³Ró”f?ã˜qøœtN ç(§—ó~ŠÞï)â)¦4L¹1e\kª–—–X«H«Q«Gë½6®í§¦½E»YûAÇJ'\'GgÎçSÙSݧ §M=:õ®.ªk¥¡»Dw¿n§î˜ž¾^€žLo§Þy½çú}/ýTýmú§õG X³ $Û Î<Å5qo</ÇÛñQC]Ã@C¥a•a—á„‘¹Ñ<£ÕFFŒiÆ\ã$ãmÆmÆ£&&!&KMêMîšRM¹¦)¦;L;LÇÍÌÍ¢ÍÖ™5›=1×2ç›ç›×›ß·`ZxZ,¶¨¶¸eI²äZ¦Yî¶¼n…Z9Y¥XUZ]³F­­%Ö»­»§§¹N“N«žÖgðñ¶É¶©·°åØÛ®¶m¶}agbg·Å®Ã“}º}ý= ‡Ù«Z~s´r:V:ޚΜî?}Åô–é/gXÏÏØ3ã¶Ë)ÄiS›ÓGgg¹sƒóˆ‹‰K‚Ë.—>.›ÆÝȽäJtõq]ázÒõ›³›Âí¨Û¯î6îiî‡ÜŸÌ4Ÿ)žY3sÐÃÈCàQåÑ? Ÿ•0k߬~OCOgµç#/c/‘W­×°·¥wª÷aï>ö>rŸã>ã<7Þ2ÞY_Ì7À·È·ËOÃož_…ßC#ÿdÿzÿѧ€%g‰A[ûøz|!¿Ž?:Ûeö²ÙíAŒ ¹AA‚­‚åÁ­!hÈì­!÷ç˜Î‘Îi…P~èÖÐaæa‹Ã~ '…‡…W†?ŽpˆXÑ1—5wÑÜCsßDúD–DÞ›g1O9¯-J5*>ª.j<Ú7º4º?Æ.fYÌÕXXIlK9.*®6nl¾ßüíó‡ââ ã{˜/È]py¡ÎÂô…§©.,:–@LˆN8”ðA*¨Œ%òw%Ž yÂÂg"/Ñ6шØC\*NòH*Mz’쑼5y$Å3¥,幄'©¼L LÝ›:žšv m2=:½1ƒ’‘qBª!M“¶gêgæfvˬe…²þÅn‹·/•Ék³¬Y- ¶B¦èTZ(×*²geWf¿Í‰Ê9–«ž+Íí̳ÊÛ7œïŸÿíÂá’¶¥†KW-X潬j9²‰Š®Û—Ø(Üxå‡oÊ¿™Ü”´©«Ä¹dÏfÒféæÞ-ž[–ª—æ—n ÙÚ´ ßV´íõöEÛ/—Í(Û»ƒ¶C¹£¿<¸¼e§ÉÎÍ;?T¤TôTúT6îÒݵa×ønÑî{¼ö4ìÕÛ[¼÷ý>ɾÛUUMÕfÕeûIû³÷?®‰ªéø–ûm]­NmqíÇÒý#¶×¹ÔÕÒ=TRÖ+ëGǾþïw- 6 UœÆâ#pDyäé÷ ß÷ :ÚvŒ{¬áÓvg/jBšòšF›Sšû[b[ºOÌ>ÑÖêÞzüGÛœ499â?rýéü§CÏdÏ&žþ¢þË®/~øÕë×Îјѡ—ò—“¿m|¥ýêÀë¯ÛÆÂƾÉx31^ôVûíÁwÜwï£ßOä| (ÿhù±õSЧû“““ÿ˜óüc3-ÛgAMA±Ž|ûQ“ cHRMz%€ƒùÿ€éu0ê`:˜o’_ÅFuIDATxÚìš]lWÇçÞ™]{'MšØII)¤4Ò”"H€ ¤B*K Q$„@ô ¯¼•V¨*Šϼ€ô…Еˆ 5D¤"*¸IÜ$ÄNìx½3÷ÞÃÃÌ~ØÙ]¯³›B¥Žt5»w=3ÿÿ=ÿóqÏXT•7óax“Q·DDŽ=zîÿä¡C‡Þ®]¤õ¸ÎŽŒŒ\Ù¿ÿûo5@U%„Ð<7F±XäÅ_<XÀ­•€xï@𦠫,;wûÜ>× pûhßNÂZKŽAÖ,¡ˆ6Ø8‹HóÜ>·`7’”°’¸ˆ`ŒÁÓÄ0·?´L?s½À®9àeߊB+Wn%еkŸïE¢Hã|SQh®@'Éô’Sl/¹ufŒYvýjV0k‰ÝæV“N¯ß»I¨ù¬J }5nV:«ùD/Yµ«à–8ñ­ö‰2qû+UÇÏŸŸ¦œZD ‡!Љ-ÆH®³À‹ú‚÷L~q _zc£Ñ2ðBò@NÜX­ã'.0öÎÜ51†À*X.xæÅ‚²l|–35(Þ4ïêï ¤Jl /üþ5¦Ü}ƒcw"1°Nžv¼çÓ%.'yîר‡ßK´uŒ×7|‰Ã§-q qA@½Bš)àu ©¢NÁ)”ê« Sèú‰Vk²×¨=Ì•Ù*Å¿\¡toDýž}äNl𧙌DQQ´¡,“U4š[¯Ú%‹÷zí‰L¡¸a¥}€Ékç™Ø³þ¶ãë6b|ÀxÍ8°^±š„H %2Bd  ±m:RWǪœ‰øÙ}#»ÇÁ¨NƒK@#ƒÑlàó‘[DR³×W¯¶õ¨†²h?îºãvLž&½n0±Ázƒ±Â:+lŸ0ˆL3ô ’ëÆŠÉÉ,R©Ì3_Vª…€L*>yÕïÞ û¡:qÓŒåiýªóiŸO*›Z__¾´ÄKO_Ê Éåj¢˜=‡cËÝ÷N@U93óA>üƒO"F±VnQž¬$3—küçJ•r%%APAó|à½!¾úWž8v™‘Û2$â·G¾ÅCO½4 ŒŒßÎGv‚„<æç€ósPåzM™[R*‰2é5“QP‚uŸ*Á)!UÒÔrîeË©¯1r§@ˆAl¦Ä‚µÀèð$”IÅ¡PÍ4îœPöèr¢¸ÐTh–È‚ÏòBðxuŠO—\âÀÇ"ÐBgÅ‚D@Ô N Ú ŒÉ2îBE™-{TÀH\kϲ Ѱ‚„kQA)‚F-€‰Abp Rž¶÷UFýlfÎ]rŒŽ(Û' [Æ…%!Š`vQ9{14P¡ ^M-'Y%ñE”‹Ö—ÐʿХ x[_¹ êg30sÙal`ú¢€ŠE!q02"Ílèó\`+Yš¬ÔT)8Q‚(©SPƒSCZ¹J²p­Í5#ÒJ¼½Jj³ÈW3 ŒZxìà8ïØl¸½$ŒZåëûÇØ:.<ú‰! Œå+Ÿ*±eðÈGGÁ)S”Ø0*L}¼ÄÃ% .P™ù;õ×O‘–çH]–èÒ4ýè+Œ0Á°TV~üËEL”-“±Â‘gËÔ}Ä?¦Œ)P®(?üEUáô«u„"?yÎ\ÌÙ×êïKx§hR#q™宓R&!»ó?·™gÍ´4ÙÞ¦x埧(˜E¼ cLDp)šÌbœÃˆÍojPùòÞSlŒjI xƒDkÏѰfq7-°gç8{vŽwm^ýñ{ßä÷]£VÏëkÜÒU\yP×L¨Ò",&éJY&ïD –Áò@iµW«Õâzü¦`b’¹3èä}D¾ŒÖç©_ü[¼jž'è >[Z&F)Ñ­ÌmŸ_œþõÂ9Ѐ‡ŽlúUÄ×Ðz¾E0Y¢¡µÊ* >—Mƒ€B{½½—³ÚÆ2\èÕ>ÜýÙG9sÀÜåíêܽkœ”K˜ß2:56 ?a”Å1h^D0rÔ,ˆ‹• š‚JJ%.Žm åŠâÀϦ†ÿ9DPT;Å÷·-qk=‡§Á@j‘F„Õìs s ê l€p.˜2X 5óÁשkÒÂ8›fE`l* cÑ5‘=|Þåó–ÚÞ*jîÞÚöÊâ̤öT*bí¡‚œ¹luPW³gC} Ô6ÜÎÔyMC*PσPƒ'ÀP (¶ΤS.NèXbç­Zý‡C?ÐRQ“›·0Ì÷÷C1¡&'ÈùIL\L‘ø¸H! ü hg&AøH3‰µŒ@Dû jÀ&˜Èac‰™*bÁ&‚ ^°dÙâ¹­Gõá³®êW‡žÔB¯+N$±Ná ˆ¼t.ŸVÏ!dÚÑN€F;‡°%ÀX‹K@ Æà„AF`˜¶FêÚ¨qkÂ9\P‹wûóöñÁʈxí×–äÔO®£Wc ÿ!Ê#. bã/U¹œ›"š&5fEu†ê`<-™Š«"‚$UòøÑ›£‚:œ¥AzGßx€ÿ8&y)±PcIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/widelogo.png0000644000175000017500000006151712033133562025163 0ustar neilneil00000000000000‰PNG  IHDRúÕ&zTsRGB®ÎébKGDÿÿÿ ½§“ pHYs¸¸W½ê„tIMEÙ $"uc3Œ IDATxÚì½wpç}ÿÿ¾ÞïPDc ö*’`eª˜²l+qìo'ÎØI&ß™ßo&“ÉxÆß?’ù&NœXmI–dÉV'%ö^E‚$H¢D?”C¯×ûî÷ÜÝw ðóšÁðÜÅ>Ïî³»ïçó|Š€eYAAAÌ+„t ‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAA }‚ ‚ ‚ HèAAABŸ ‚ ‚ úAAAÐ'‚ ‚ úAAAÐ'‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAAABŸ ‚ ‚ úAAABŸ ‚ ‚ úAAAÐ'‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAAABŸ ‚ ‚ HèAAABŸ ‚ ‚ úAAAÐ'‚ ‚ ‚„>AAA$ô ‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAA }‚ ‚ ‚ HèAAABŸ ‚ ‚˜¯ø|>°,K'‚‡ˆéAASa·Ûa4ÑÑѣшááaX­VÿÅbÇã…BˆÅbˆÅbˆD"¨T*èõz¤¤¤@¯×C¯×#55¹¹¹Ëåtrc€€¥)AAÄ3˲0 ¨®®Æ“'O`4144}ñ) ;;‹-ÂâÅ‹±hÑ"deeA ÐE ¡OAAD“É„‡¢ªª 555°Z­qi‡V«Eii)6n܈ÂÂBˆD"º8$ô ‚ ‚ .ø|>¯Ú§V«ý¢¿¸¸˜,ý$ô ‚ ‚ ˆ`F\¹r7oÞ„Åb™mNKKðcÇÈd2ºˆ$ô ‚ ‚ ˆ1 ¾øâ TTTÌÙì8*• »ví¾}û””D•„>AAijKcc#¾øâ äiK!MÈ‚H®¨´“õºájƒk°®|Ž‘¨üÝ•+WâG?úh0Ð'‚ ‚˜û¸Ýn¼ûråÊÌ¡X yÊ"ÈS—@¦Ï‡@wŸ}®AèðjëuGü·4 þê¯þ kÖ¬¡ABŸ ‚ bîÒÓÓƒ_üâhooh¡DyêbÈÓ–@š” 0ÎEªXî‘.Ø;«àìy–‰,¿YY¾óï@*•’Ð'¡OA1·(//Ç›o¾ §ÓÉy_‘2ÚÅ; O]ð´ã²ÁÖñöŽG`<Îûgggã§?ý)²²²HèÓíBAÁ†Áûï¿sçÎqÞW(Q@½p3T VGÍç~¶a/U°4 Æmç´¯R©Ä?üÃ?`ùòå$ô ‚ ‚ þâõzñË_þ÷îÝã&ö„"(sÖB]° Bñܬ.Ëz]°´Ü†½½‚“KX,ÆøClݺ•„>AAÁ?\.þýßÿÕÕÕœöSd,‡fÑvˆ󣸔Ï>sÃ8û9íwôèQ9r„„>AAÁìv;þõ_ÿ aï#M̆vé.H´é1i£×> ¯uÀÿ]$SA¢Ëœµã9{`ª= Æ~ŒÂž={ðñð4.„>AAÄ3„ÕjÅÏþs´µµ…½:o4KvĤ}ŒÛKã5Ø;'¯4ˆUIP.XeV¢ègÀñ9-©> ÷pGØûAANŸ>ßÿþ÷am+MÊAâª#Jä1kŸkЀ¡ŠOüß'ZÇÝn7¬V+Æäekk+Ž;‹Åð7„9YÅP-X‘Bµ¶1.+†~¹7ä¶2™ ?ûÙϰ`Á‚y;–„t;AAðƒÚÚZ|ðÁam«Ì*FòÚ£1ù`k«ð^¾|9vì üu:°X,˜hCÎËËÃ?þã?"==0ûãqÂÖz}7Á\ˆ’ÝY(S#yÝ·!Ñe„ž°¸\øÅ/~QuaúAADøÚfï~õ+„ãl¡ÎÛÝŠ1¯pë³À5ÐâÿþÚk¯A"‘ÀëõÂf³M¹ORRþöoÿ “ÿ“eak»¡‡Ÿõº£ÒFH‚¤Õ/A$ׄܶ»»¿ùÍoHèAD¬±Ûí°X,Óþx½^:Iļ᷿ý-†††Bn§ÈX³ô™“&#ýŸóòò›› –e'¹æT*•%ÀkíÇÐÃϼî5„3—¨M*V>áG_„t zÿý÷QXXˆ¬¬¬y5®È¢OAðŽŽŽŽ" ü+//‡Ûí¦“FÌYz{{ñÞ{ï…!\S¸êŘ»ëŒáèyâ¯D«Ñh°bÅ °,;ÉÇeY˜ÍfX,Øl¶€I@QQQ@{›Í½^ïÿî1uc¤ê«¨ùìËSA»8ôê‡ÇãÁ[o½…ù–£†„>AÁ;†‡‡ÃÞÖëõÂl6ÓI#æ,o¿ývÈ€PX†Ä’—!KãÖN{ûÿç;wB*•ÂårM²æ;°, @ŸÏ»Ý>žbÀîÝ»±yófÿ÷h4ãþôξFXšnD­Ýª¼õa«««Ãõë×IèAA3çáǨ®®¹®° "…6níttÂcéB!öìÙ@‡#°*®Ûí†Ûí†@ øñx<bÿÕW_EII‰ÿ»ÅbP8.K­†;pt?ŽZûµ…{!M FóÃ?„Õj%¡OAADŽÏç +_¾"c9ËãÚVGçød¤¸¸‰‰‰“¬ù,ËÂápLùc?>Ÿ>ŸÏ?Yøþ÷¿ïOÍ `ÒÊ€©æ ìÆGQqãEH,9‘"!èv‹~ø! }‚ ‚ "rÎ;‡îîî Ûˆ:è ÷ƽ­Sj>÷Üs‹Å“bcÆ,öŽP(œ$öýâ[ À+¯¼‚o~ó›P«Õ“öeY¦Úóè¹üŸ®<{g·-rÑ+Q@WXr»k×®¡­­m^Œ1ʺCAc, >ÿüóÛ%¬8W¿|ðZásº³ˆD"‚eÙWSºìLõ3æ¿?ÆöíÛ±eËÔÔÔàÞ½{hhhÃ0`f4….ã³·ÎÞz˜BÈSA™µ2}ç¾Èôù%çÂ58½gYÇÇOúSúAA7¾úê+ØíÁsÆËSCš”÷¶º þÏËåðz½jÆÜrž¶àOüðy""‘«V­ÂªU«`µZQSSƒææf´¶¶Âjµúƒ•½^/œ½ pö6@¢Ë€nù^H4iœú£Yò\·t›»w³sΧÛ$¡OAKáìráòåËA·EÐ,ÙÉö¶ú?C"‘Lª‚ëõz' û‰¢õËŸp;­×h°yóflÙ²>ŸF£­­­¨ªªBWW, †ÇÔÛïBž¶ºåû ”(ÂêD“ Eæ 8º¦ö³êÿøÇ?&¡OAA„ǵk×BZó• Ö@¬LŒ{[YÆ÷p‡ÿûš5k`’ÛÃ0ÓZóLúÖ±Y"‘yyyÈÏÏÇsÏ=£Ñˆ»wïâöíÛþj¼ÎÞ¸ú›¡ÌYuîzeªÐ“‰EÛáì©ËL_]ûöíÛxùå—‘žž>gÇãAAÄJ8³,Μ9\œIP/ÜÌ‹özFŒ`}£¢^¥R!333 {Î>Ÿ/¤È›„bª Á˜›Ð‚ ðòË/ãïÿþï‘““ãߎe|°µÞCß7a®»ŸÓô"¹ªÜµA·a&äµ"¡OAAAA1‰sçλBT9«yÓ^×À¸Ð_½z5D"Ѥ´š Ä̴Ê7_ @,L„B!$ är9ÄâQoó‰Àjµ?øÁ¦œ°>†+OÀ54}vXråÄn·ãþýû$ô ‚ ‚ ˆé1™Lxü8xµWEÆr¥*^´—ñ8ౌ¯>ƒeÙÑ”—O Ê Ùv À‰DAWär9d²ÀU–e‘ššŠÂÂBÿïòòò —ËGÿŸñb¤ê« ~øÊì’>ý×®]#¡?q¸}ð1ì3Ùw¯Óã{&ûÎþéÚ3ì³yí]n/3oúÃ0 \.×쟷§*@Ò¹#žÕqCc.rîÝ»`‘ž Uî:Þ´×3Òåÿœ’’‚„„x<žI}Ë‹©ËN¨”œcoâ„eY0 –e‘˜8´¬×ëño|RéhíÆmš]G Ažº$hûª««1444'ÇܼϺÓ=ìD}§Ã67Ìv/Ìv̎ѯ…€J.†V)V!V)†N)Á½ K2Õˆæî\Èáöá‰ÑŒîaLv/,LvÌvîQ‘/ ÿÔ÷ñs ×ʰ<[‹DµtÎöe¶šº­0ÙþtÍí˜X^0 ¡@õصWŠ¡UH SJP®FAª B¡`Îößl÷ ÖhF¿ÉÓŸú>6ö]žQÑ!—Šüc~¬ïi rfk¡–óóÑàt:ÑÖÖ†ÖÖV Ãn·ûs+‹D"¨T*¨T*¤§§#??iiiœ2<Œ½<º»»a0Ð××«Õ »Ýî4“ËåP©THLLD^^rrr&Y™ø&¬ŒF#zzz`·Ûa³Ù`³Ù`·Ûáp8À²,„B!”J¥ÿü)•J¨Õjdgg#55•ÔiÐÑÑ‹Å2é¹4(ŠIç8##YYYaY;皘ïììDwwwÐ1§P(üçE©T"55ÙÙÙHHH˜·c¥¼¼<èÿK³!Vëù#ôÍ=þϹ¹¹H$Óf šIðíÄí‚åÝŸè24&ò`xxØÿ{F½^¢¢"Ÿf³f³ÝÝÝxøð! –.]Š5kÖø—r§Ãn·£¢¢þÉÃT{‡Ã‡Ã466B(";;¥¥¥¼IÁæv»ÑÖÖƒÁ€¶¶¶d ÃÀjµÂjµN¶.ªTÈÏÏG~~þ¼¥‘Æ'ƒ---þÁ¶·Ûí°Ûí|ÏH¥ÈÉÉA~~>ï'Áp¹\hoo‡Á`@{{û$î©ÆÜØ`Œºº:ðO2³³³‘——ç·ÌÎuÌf3ž°,‹ááa444ø÷Óét€… ú…¾Ïe 1ÁÊP¢ãqL»Mee% ýx Ü‹U½xdÍåÎ÷2¨i7¡¦Ý¡@€ü4v§bY––_/[†qãI?:úC ¼°ÅÕ ÆAÎ>ì†^+ÆÅÉØ¶\Ï»UŽ^“õâq‡)j.)v—ÍC¨h‚X$IJ, ÊV¥!;YÉ«¾{| nÔàNà -ÑYgY ¥×†–^¾º×…ô96/Ócã’dˆb¼ÊÑÛÛ‹;wî ³³3¢ý=z„ÚÚZ¬^½«V­òtMÅ=BeeeD™†A{{;ÚÛÛ‘——‡ 6 999.ã¡»»0Qs±Ùl¨©©AMM ¤R)òóó±nÝ:hµüzÆ›Í†ŠŠ 455M;ŒdRÖÔÔ„¦¦&ÿ¤qíÚµÈÈȘçd6ÆœÕjE]]êêê •JQTT„•+WB©TÎéñsÿþýçH–œÏ¯wŒ©ÛÿyáÂ…°ÙlSöA(¤× ·0ÖTBÿikþÄÉ$˲`YÖ/òàÔ©Sþ˜Nç¿w&®<ˆdšà O]{gõ´›466ÂívϹ‰çœúNWªûp½¶VýŽ–EsÍ=V,ÎÐàùÒLd'+âÞÿÆn NÞï‚qÐ1«Ç0»pª¢ 7Ÿôcßêt¬[”¡ ¾®-f‡çöànãЬúÛ{}£¾Çí&”ä'âÀš $kâ{£³,p¯iguÃd›Ý´_=#N|~Ljëµý8°&«ò‹+_QQ»wï†ôg WL•——£¡¡ô[|qæÌ˜Í樴¹µµíííØºu+ŠŠŠb6†‡‡qûöm´¶¶ÎêqÜn7êëëÑØØˆ¢¢"”––†\)™¸Ýn<|ø•••S!Fí=3aÒ˜ŸŸ7ø󉡡!ܹs'&cîÁƒ¨¬¬Daa!JJJæì$³ªª*¸à•*!Ѧñ¦½>§ŒÛîÜR©tÚøŠ§o¹ˆüéÜv&þŒ¹OŽùå1VÀ0 jjjpÿþý¨YðÃÅ`0 µµ………X·nT*~da±X,¸{÷.b:æ|>jjjP[[‹ÒÒR¬Y³fι‘555ýYR.¯Úë1»í¤¥¥u+‹Dä ý‰û}žø¯ÃáðOs‹¿ýíoý¿ÓëõX¼xñ¨V1™P[[;.âS‡l‹4)±¬wz·³ššú± wĉß]1 Ï¿Èý1w™ªÖ<¿6ÛW¤ÄæÅòøê~nÔö#žIczMN¼}É€%™|w{.T1 Þlê¶âýk­1ŸÜ==ɼQÛ{MCøÖ–çÆf²ãtûðÁ6Ôv˜ãzÿu ØñÆÙ&”ä'àÕ-9Q_ðz½øê«¯B“™éDâôéÓ³.Ràp8pèСY$µµµ¸yóæ¬Z˜Ã9—åååxüø1öíÛ‡´4þX#gÊàà Ξ= “É¿÷ Ë¢¶¶ عs'–,Y×sòäÉ\¿~}REÔXO¾îÞ½‹ÖÖVìÙ³gÎî …ÌÚ"Óó×m''''è¶ÀŸ3\žÖÊuÇétú]vÚæñàØ±c °‰Dؾ}»ÿÿoݺå·ü‹UÉP¤/Ý¡ò”Ept×ús9UõÄhÆjŒ«ÈZô¸×‰?ÞlŸõT·¿½Ð‚ëã+òÄL—¿8Ù€ž‘Ù·vݪÀ›šã*òŸÞï^1à|efûr ˜]øÏS qùydÁŸnŒšë˲¸xñ⬊ü‰ÇŠÉ¤¨£ׯ_zÛoݺ…«W¯ÆUäOÄjµâøñãqsƒÁ€Ï?ÿ<®"ÿé ðÅ‹qûöí˜ZÑ'޹›7oâÊ•+qùéëëÃÇÒ†/466†ÜFšœÇ›öúì#°dzÐ俆^màšáìé¼ù>˲°Ùlp:S¦ò|ï½÷ÜÆvîÜé÷Í///XÖ,Ú6še" B¥ÙlooŸsUrç”пRÓ‡·.µð2ÿû½¦!üêlSÈL/3zÿuªõ]Þõ}ÈêÆjÀãìˆPÃâ³ÛF|~džguXçöàý«­³æF46™âËäv"CüÇÉ´õÛfü·îܹƒ––Ì7jkkñèÑ£¨ü-·ÛS§N¡²²’wýôù|¸xñ"îܹ3§¯WEEΜ9ÃË—ùÇqêÔ©m¢‰ËåÂÉ“'y)¨½^/nÞ¼‰úúzÞ«Pn;bµ"™še WåwaÑjµ(--¾Æmg,#Ót†Œ'N¡hÚÿg]]]$ô£~3ûX|x£ 'ïwÏ5ŽZûløÅÉztE70¶±›¿BÏÿ2ð0xëR ®ÖôEõïÚ\^¼y¾_×ðzŒV¶ŽàÎ4b$ʱ7žôã7ZüuøˆÅáÁ¯Î6¡¢y8ò‰ìÀ@ÔÄ0¹{÷nÈŒ¡0™Løì³ÏÐÞÞÎë¾>xð€·B9”h¼páBÈ<çñ¦½½Ÿ~ú)FFFfýX###øôÓOÑÑÑÁës2„~ssspÉ£l;–æ[~·@€×_=ê&fÚ;ÎØÄrºÌ>À¨KÎ¥K—üß/^Œ 6:;;qõêUÿÿI´éH(~žS»" DrmÈ{„~4'–Þ¿Ö:#KFlüêLzMÑqeiê±ò^èù¯ |u¿ *£ãzáö2xó\3š{¬sâÚøŸ3°EɵèÚã~/ïœ|Ç&ãZ"»Ooܸ—„XŠÈ›7oF>áµÙðÅ_…á3ƒ§OŸž3aY–ÅÙ³gÃr¯àÅ{fd'NœÈAml6Nœ8Á÷¥`„ãVoB¹$òÅ?ß=l„Õ0¾*÷ÜsÏù­åÑäi·¯× »Ýtµª¶¶ü±ÿ{FFvïÞí¿'Μ9ãw-É5HZý" ÷¶…ÈÐÃ÷‰ïœúgt£¦Ý4§NªÓãÃÛ— °»f&Î-.¼{Å0ë¾ÿÑæÜÃnT·Íìš±þp£=ê«#³ÍÕw¯¶ÎøšÕw¦Mk|t«ívNû477£»»óƒÁQ=¯×‹Ó§OO[’¯tvvÎhrK¾þúë9g¥³Ùl8}úô¬Äix½^œ9sfV'Ñ"'''¦©l#=Ÿ¡V`Ī丷“ñº0R}c®ÙÙÙxá…fmrÍ0 <Ç”·iiiÁÛo¿í7èt:U+‡F1Ú¥L‡Û«Ó ³Ãƒ>“+jþÿÍ=V|QnÄ+›Dv‡Ã»ÝñªANN8‘HÄk¡588ò¹$”Ä¿…¹ö|ÎÑX;‰D‚?ÿó?ŸµsË娩©ÁÛo¿íîÊår<ÿüóËåðx<8uêÔø¸òh"Ï„(RúsÍGŸ·B¿cÀŽ?Þšù¬I&bi–E t(ÌÖB)™aŽúÙ×tŒVÃ0ÏÌ'¾±Û‚÷:ñâ†ln³j–Åû×Ú¢âþ“‘¨@q®Å9:d†Ý&›Õí&T· ¥×6#áëö2xûR þîù¥Ð(¸ ³ÊÖ\xÔ•‰ÍúÅIXœ¡A~š éô×ÞåaÐÚoCS·åƒ3v¿¹]?ˆô¶ê¹Mð<>¼uÉ0cá- ŸªBQŽ+èBøê39ñ¸ÃŒšvÚúm3Š…1;üðC¿ñA"‘àÀHHHð[ò'ºEé–í™±T(ýhXŒ–‡Ž±V§ÿ÷Ëz˜í‘s©åbìY•†MKô‹"«ãÙÖoéŠîûˆ¿º%ë'…½ýÉû]¸2àÖâ\¬Î@ZBdV›Ó‹Ë5}¸ùd^_äÖ½¼~|pQØUt»‡ø¯S 3ZY‹„ز,»‹Ó"Êïïò0¸ú¸×÷Á剼B¡?Ú» 9–zûR Ï …¦H(ÀæezìY™u„µ LvÎ?šyÅáµ “ðímÁs/WVVâÖ­[œþîÒ¥K±sçΠ/ø‘‘|ùå—‹¨„„>|&¨ ¾téçLA{öì +zkk+NŸ>=£ç@ZZ6nܱÈf ¸{÷\.ÇÑ£G¡V‡/pG…^þÄÚn·ã£>‚ù{ B¡@ii)–/_±à4¸sçÎŒ-èû÷ïGAAÁŒþ†Á`À™3gfô7RSS±qãÆI“ð°Dn7ž®{؈Á{ÝæÝwß Û`oDÿò/ÿò/|kÔÉû]hêŽì¥" ±»8 ¯ïÌCAš:"·ÿË^%źEIÈMQ¢{رk‹¡ÏŠMKõˆB?”zMNüáF{ÄyÙ ÒÔx}g.v®HXèÇ¥™¬[”§Ç‡®áÈ^†#vTRd'‡±ÿûë­èp%E(`ýâd|ï¹|¬ÊKˆ¸“X$À¢t56,Iðèr ’Å –ŒƒvlZª+…ïã3ÎÏ`%cíÂD|oW>Vç'Ψˆ•\"Š:”ä'`Äæ‰øzt;°8CƒÄ •£+++9˜&&&âàÁƒ!«°Êårèõúˆòº …B<ÿüóHLL þð‰““ƒÆÆFNéU*UÈàA†apêÔ©ˆ­é عs'¶lÙ­VñXÐëõ(**‚L&C___D+%cv . {ŸÞÞ^N¾°+V¬à”äæÍ›džH$¬]»{÷î ¹B ­V‹åË—#)) _ó¾¾>qÎe>qÌ>}:âãët:ìܹ[·nј‰DHOO÷ûÝ÷öö¸½Ì5‘UUUA -‰Z¨¬‰OãXC?…Ïaò_Ç¿ù›¿ º*5ëMbYœ8q"`Ò©ÑhpäÈèõz ãøñã–uuÞh—ìŒNØÚîÝdïÞ½ËåsbüñîN0»p»a0¢}ÕRüäÐbì[™$z][–¥Åß=¿¥ “"Úßîòárux±§+º#²¢ ì+IÇßX„Ü”è•JOPIðê–üÅ®‚ˆÏ鹇=aYèë:ÍOð²’øßG–áè–HPEg–­–‹ñõYøÿ^*äd•»NÜo ý’eYœªˆÌïO,â»Ûsñím¹HRGïᜪ“ãû»óñÒÆìˆ'Ì_Ý|ÊÕ7w÷îÝ!E¾LdeEä^RR‚””ðü;¥R)vîäör '-buuuÄËÃ8zô茭»O‹¯’’|ó›ß 9šŽÆÆÆ¨ÆÌ„¡¡!ÔÕÕE,Ì_yå¬[·.ª½… âèÑ£œ&C1›Í¨®®ž‘tÌÍ´íÓ¹ 6à•W^A~~>”J%V¯^=çD>€®HB±"nm›*•¦J¥Š[{†Áïÿû€šIIIx饗˜˜ˆÞÞ^|þùç+ŒÚ%ÏA³dGôÆžL ‚±™¦K~¦…þ©Šîˆ|ÃóÓTø»ç— #qvn±H€×¶åàÐÚ D"y®×„̱nèµE”aH*âÏvæaoI:³t]V,Ðâ'‡–D$$Í®=î1ƒNÞ̺–‘(Ç_í[ˆTlVúž¨’âí)@~jd¿3»Cº?ÝkBoÕ…5 ~¼V$ÎÚ=¹e™?,+ã0íývTµŽÌHôŽ¡R©ššÊéøyyyÜŸ%ùÜü;³²²8 ¾P}v»Ý¨¨¨ˆèZ­]»û÷ï{2‰È}ùå—‘““Ñþ·oßæÅ{&Ò ³YYYxå•W"žì„B"‘`ß¾}'ºÿ~Dy§Óñ˜+--ž}ûfÍA¯×ãÀøÞ÷¾‡M›6Í9‘ ä*X¼q½Ö€Tš»víÂÒ¥Kã:!:vìîÞ½ëÿ]ZZ^|ñE¨Õj´··ãĉp:ÿô®‘Ptª¼uÑmˆ@‘\t“¹‘Š—B¿­ßQ¦•eYZüõ¾E3rU —]ÅiøÖ6î/9¯ÁÙ‡Á…ìW¤S”ˆ„øë}‹°2/aÖûžž Çß=¿)Zî‚úJMoP×§ûÍCèŽÀ=(-AŽí[•lv¯½T,Äÿ*+@Žž{Ñ“̓ëµÓc¹½ ÎFಣUHðÓC‹‘“¢œõk¿8CƒŸZ4˜}ÚÉûƒî)ÓZ­VN™"ñ3ÏÈÈàäÊ ‘H¶æû¢B!§ 5‹ÅÔÂ÷àÁƒñ¶mÛæ/3«÷‚TŠC‡Ed½5qOcÙÕÕ…¶¶¶ˆ&€‡ŽÉrýúõë9¯£Å†"ì÷îÝ‹h‚°sçN¬_¿Dˆ÷ˆçœ NBß\ÙŸJ3++ ‡æ¶¿ÙŒòòò nIá2<<ŒÿøÿÀãÇý¿ËÍÍÅ‘#G —ËÑÐЀS§NùŸ¡I%/B‘9;½„byÈI ýˆ$oxªNŽ×wäB$Ĭ¥ “°{ewkK󺇧~W·f;áÊ·¶æÄDè¡’‹ñƒ=Ü­».3m!­p&AS_{þzߘLð€Qßõî]QÊÐKÕ½Ó¦J½QÛÏ9ð\,â/vçõ6©:þ|g>g7ž³ w¦pÇã*f“’¸»ÎI$NËЉ‰‰Y ““¹åÀžî%aµZQUUÅùøEEE(..ŽÙXؽ{7çIܹs'®ÅѾþú눮ïž={bjM^¾|9V­ZÅy¿êêjNÓf³9@\…˪U«°|ùrRñQúBiì]w\ýÍp ¶ú¿¿òÊ+œÊoܸþçÆïÿ{¼ùæ›3ªlÞÜÜŒû· ˆÉY²d‰?ëÎ;¸pá‚?óŽP,CRé«¥,œµóÃxƒ¿ŸfkÕt^ ýža'Zz¹ ]…T„ì·\ûôZÖd (GÇi–n×OmÙ½U7À¹ e«ÒQ’Ÿó¾§hex}g^Ø™tƸÛ88¥ Km‡9¤[Ó$ѧ–â¯÷-‚FÛ¨w…T„¿Ú·i:n§Û7eÕX6Âkÿê–­.Ì”EjYÏݲþu}Œ¦(m£±ßÓÔÕÕqαž••…­[·Æü¼ŠÅbN~9×MÈÉÉÁæÍ›IÁs¸&A…˜XÛ± ÌõWü_KJJ°hÑ¢°w?þ<>þøã€~E*ôoݺ…_þò—>ïkÖ¬AYY|>N:°J%’©‘¼þÛ&Ìnº^Æã ¡mª#ðMyc6ôZY\Ú+ðÚ¶ÎÖ䚎Éýt¸}hî儚“¢Ä¾ÕñËq»4Sƒ+¸YóÜ^SÛFrí®Í» S´QÉÄxa}&çý¦Š¿è°ÃÄÑš¿nQÖÌ¢O~(¶,ÓcÅn“ÜžçŒëR<  NÛK$ìÝ»7n~Ë*• »víšõ~Æëü£î)ÁÒ¬Îö$µ¬¬ 2·÷—<ø\sæËd2”••Emrû,êú1îØV½¶µWÀkò Ö#GŽ„o´ùúk|õÕW“ûÀq²èóùðÑGáü£ ‹±wï^lÚ´ &“ Ÿ~ú)Z[[ÇŸwš4$oø.Äê”Ù=A,Ö<“Ú\¨ßÀ;¡ÿ¸ƒ›ØËNV $ŽbuåØ[ÂMl›loê'F3çäç×f"ÞÙÝ+Ó8»ð<-v†Å#·Li:9Jòâ{í—ei9»LµôZ'Ââ|- q`uFÜï×Ck38¯èÔt˜@LÕj圕¦¤¤ …"®íÎÉÉá?/¡ÏµæAFFçàìÙ‰kÖpK½Ø××–ûŽÙlYÌéiÖ®]Ëyâñ¬Ê}ÐçŒ]Æã€µyÜ}í¹çž ÛõÐh4âÓO?òÿ ÃnƒÇãÁÿ÷ãæÍ›þß©Õj¼ôÒKX¼x1ŒF#>ùä g¬“§/Còúo‡,fsÚ­”,ú1Ù=0p›ÑâЀK’9¯*Ô´ ÛÇÅ^a¶6âtÑD!qŽUxÜa¨ÐÒkã\vϪ4ðÁ˜´w·IžoŠIMu·k¿my tªøéHK£t·ÉÖãvúÁ˜h¹ ëþS(PRR‹¶oÚ´‰Û3ßdâT?!ŒŒŒp>&_ÜSŠ‹‹9§< ÇRÏÕš¯Ñhb 2_µ"4–Ã>Xšn€ñºüíÚ·o_Xû9¼õÖ[SƉD"Nñ$çÎ ¨ø‘‘£G"%%f³yR Í¢mH\ùB̪‡#ôçJ±,Þýšv§Qù©*,ÉÔð⊄΂¯¦}$@üÕur›Íï_Λ´­PÏ©ú¬ÅáAû„ c®n;©:Vç'ò¢ï…ÙZ,àè'?Ñ‚ßgr¢Ï~@êh1¸TÞ\û½%éœ&\†>[ÄE瞸Z¹W¯^Í›—Mjj*çT¦\­ë±>¿¹¹¹HKKãÅù‹Åœ­úáœ_®BíÚµsÊe/„¶è›cÒ¯}vc¥ÿûáÇÃ^ùàƒü«?O»m­^½:ìX€ù………8räˆe²¢¢Â§$K‘¸ú%¨ 6Åôz…#ôg+Åî¼ú\ÝvVÅ!5E9:NYº‡²Žú5õXáô„oÑNÖÈ®2“Hˆ"ŽþÚ;Ì_û²Uéà“kè>Ž®[ufªÉ§WvB±4S—Àóit*)rõá[YœÝ´žÜn7:;;9íÃ%x.pm׌X }¾_®éL»»»ƒ¦Ìt¹\œ“AT b=K„²è3gHŸðh`k»ïO§™7†µß•+WPY9>AÐëõþÏ"‘‡ » Ÿ}ö™_ÈUð‹1²Z­¨¯¯÷o«+Ü yJìïC6D ®J¥š3Uq€NF\ q œmd!e¨QÏÁ2ß;âD’ZŠžan}/ÎÕñnçêPÞ~5ãž?åËw{ [¹=Ü®×öãÆ“~^õ_„½"åò0±y¬‘¢‡ë¸Ïáßµ_‘£C+‡´°‘{0™Lœ‚ÙRSS¡V«yÕ‡ÜÜ\…°û1Ñÿ6p9ž@ @nn.¯Î¯R©DZZz{{ÃÞÇb±Lk±åZ733“|ó#D« íWîsš!Vëg­ ŒÛGçxåäýû÷‡Pm0pâÄ ÿ÷‚‚‚€X¢M›6ÿ`ÔÖÖäÜߺuk@"‡Žæ*¡H/ŒËõ eÑ·¿$ôÇfN,Žð—ó3UgmŠè8 }³cÔÏÍdç&t‹y(ögh “áò„÷‚Ë2cqp/8Ñ1`Ç\Çìú\ú/°<[Ë»¾¬ÈÑâTEçqOµÊb¼D§4xÈdÈÊÊ È… ÇÇ÷#Ç·;ügmFF/-vùùùœ„¾ÕjV”pɵDVeš%---ä$Øç0ͪзµ?ËŒj­””¬\¹2¬ñóöÛoûÅwBBRSSýnaR©ëø>ŸŸ}öYÀxš8™¶Ûí¨­­õWåoD¼–ïC¥ÖŒ¤~H<‰»ëŽÍé²jæ´º4/O$×vHâ’ZQ( 7…ý‹œÜ‰Lþ¾?›þÚ‘\û­ŒS,DÌ^`:9§ÌK\S‰’П^ˆò.‚#›‘b·Ûgµsñür=÷|='s‰DòüͦŸ>ëóÀÞñÀÿ}×®]aYó?úè#ŒŒŒÆŠÅbìÙ³'  ßŽ;ÂZ­FÝÆ\ÅD"ѤÚ•••~—‘B å,U¼ Ë0` îÒ6×,úqú\­º:%?#¹æt7ÿiƒ‹ðQËÅàkêb.ý·:F'wϪuw¬ß\ªáò!ÓN4Úf±S0n4„>×"U±‚kf®ýŽÕùå›[T¤çwb".ÿcdggÇMèÛ;«üî(jµ6l¹Oeee@¬íÛ·£³³Ó?iV(سgOxï<³gÏžõ/))N7îàt:Q]=îV¤ÎÛâ'OÝ*Ï%C o…>W ŸVÁOÁ£’‰!…¯ÂÇD±§Qð7o+—¶¹k™ŸQë®Ùî×ÇpJ+Ê×q:m3‘ëÎÔ“_ŽÖU¾ }®íŠ•ÐçjÑŸ/©hZôùzNæ‹Ð÷Xf)öŒe`k» ØC¹ËÙív|üñÇþï¹¹¹ÈÍÍ ¨P[VVö˜8~ü¸?0\¥RaíÚµÿ_UUåOÛ)”©¡ÈŠ_ W¯u>Wð{ƒoú¼úfŽ>>[6¹ˆ±HÜ7´ÊùÑ÷Ñ~»Ÿa¡ïõ¯è̇qÏ¥mN·"r!*‹!•JyÙ¾ ýùbыŜb£%ôe2Yܪ/Ï,XôÿÝCm³’yÇÑSŸctµ@*•bûöí!÷ùâ‹/üÁÚ‰;wîÄ7üq.Z­;vìëø---¸wo|¢±eË–€‰†Çã pRç­ƒ@?£¦kÀò^ÈÉÉ!¡Ïi²Ér«+äqÕm!‡Æ1,À°,¼>v~ô£OÃø³|=sx†³Ø•Køû’•I¸¥ütºc+ôíúÈuÛhÂ%ãŽ@À߀ós 6cë{f¾œã©ŠùMÔ›3À“ efœÍQ?®­õ®ÿóÆC® Õ××ãÎ;þï›7oÆàà`@«_|1,c˲øä“Oüß322°xñâ€mª««ýcQ(Q@™ß"€®ÁàBáÂ…s®–DÜÕgßv[Íœ¬óbÎ☫8¦}çk¡’@£ãYD)C€g™ØÎðJKKÃð©©©q«4ËÅ%c,[ áê"+Ë9_W"™:ÑIQËeòCE²¢cpÈÌÌ némˆê1ÝÃþÀR¡Pˆçž{.øön7þð‡?ø¿gffbéÒ¥¸~ýºÿwË–-CiiiXÇ¿qãŒF£‚úôj‚ÛíˆPå–Æ¬úíÔ“-/ÜÃÆ Û<=Q™ Ä]iqú|ÍÚápûàö†oŠÄçšÏÁ«\ƒªµ 'ßîy%ô¥ôÒŒ%©©©xõÕWáp8¦7À_™‘ïBLPO f›«B?Vž| æ _ÛE„Gqq1ºº¦OGìhËx£æºâèzìÿ\TT2[ÌÉ“'188ZG,c×®]¸ÿ~€Ï«¯¾Ö±{zzpüøqÿ÷+VL:þ;wàpŒ¦²ŠeP嬉ëõqý)Hç“пEŸ³o7?­Ú\W"ÉduxÁWo.µÆ—ùs0›(d$ôãrÞ (•Ê)â)òî–m®‚úYúóÅ¢OBn*w=ëó„ô–ñÁÙ;^evýúõA·ommÅÕ«W¶÷z½÷ýû÷‡•ZÒãñàwÞñ¯<ªÕêIUxûûûŠg©mƒ@ß‚l¡Î½D"ÁòåËIès~ÁÉÅœ|ÛùZ0©c»"¹>†E׃w}gXƒÎ}V…þÂ45b&‚w,5ßàÚ.¾ZôçËù%øEaaaH7¨h¹ï¸ú›Áx]þ‰nQQÑ´Ûz½^|ðÁþÏÔÔT¬Zµ W¯^õÇÑddd`÷îÝaûøñãþ• @€²²²IAä×®]óO¢I…jÁê¸_ŸPþù+W®äe!½PÄÝuG 4rqØ.9íý6Xhxæöñ¸ÝÄMèGØþš6²’¼ê{K¯ 6Wøý±ÕŒHÎA¢ZйŠR*ÂúÅÉX W¢ÏäAD*D V­ZÅ«>x½Þ°«âÜ3ÈÌ©T ±Xì/ÈŠÎÎΘUíåz݉¹‹\.Gaaa€%{²@oXfÆyäÝãn;«W¯:Á¸|ù2zzzŒúòïÚµ Ož<ñÿN àµ×^ +V£¦¦&À§¿´´tRlBmmm@…gmá^Ä»HÏa‚×:t›P«"$ôƒ¢•…-ôYµflX’Ì›“èõ1¨ïâV|$EÙ ®º}ûVó«Bau›)¢¾Ë$BhN±GÖg¡(G‚˜Oèt:‚°$»»»áp8âîr4‘ööö°…4$$$Ä´} ï¥ïó¡½½ .äÍùu¹\èîe޳uëÖ BŸñºàlƒLŸñ1®–°ªÉdÂùóç& …·oßöÿnË–-ÈÏݓɄ>øÀÿ=33ëÖ­ ØÆétümeV1¤ ™q¿.¶ •ƒ§B$MÊÿ?WàEξ ¸ ·*ŽÂr¶©ë´p ÄMÑÊ¢Lèw;Ñovñ¦ï Ë¢º}„Ó>˳ÇKf/_ å´ï…ÊzSó™LÆ©Ú"˲¼³î67sK ˜——Óöq=^KK ¯ÎokkkÌÒ‘³Ç† Bº8zjgt go=Xf´ £^¯GAAÁ´ÛN,f¥P(°víZ\¾|Ùÿ;­V‹^x!´`¼÷Þ{þú 2™ eee“ÒÁ^¾|ÙŸ9J(‘C³dgܯ ëuÃn¬ ®SW¬˜³ifù!ô9Zhë;ͼñÕg\¨ìå´ÏL-ÒçñGìÞk‚ɾE^!aaº:âsatàq‡ 1ßÇb6‘ðFø äÙžþΔ`bg*ššš0<<Ì÷ ËT%%æö¤>” ˆ£»6¤Ið‰Âÿç§-ê1 ãjëÖ­hhh@[[›ÿw/¿ürX+‡Ÿ~ú)Æã víÚ5)ÉÀ½{÷ šÅ; ”ÄUÒÞU ÖÜ€ºyóæ9;æx!ô“5Rd$†àÀ8YÑÅ‹ø°eÆAn“Ž™ ý‡-üÊõøœã8é(ÌÖB4!øzq†2ŽÅ Î?êåŵ²ºq¡²Çïvý¹ö¸ŸÓŠñlÂÕâl6›ñøñc^´½¼¼œS^vµZ”””˜¶Q¯×C£Ñp×] âÉ“'O022B7Éüÿ/B*¦2òÄÔèt:$%%ahh(ì}îß¿eË–Å5h´··—³›K¬­ù[UUöö­­­èêê YèhVß3^/îÝ»G7È,׃n#‘HPVV6§Ço„þ½’sÚÈa›ï\6ÀÇľŒÔ­ºÜ®ä¼ß†%IQkÃåhî±Æ¼ï‡o_náìŽR’Ÿ0¥›NQŽj9·Å¥Þ'Þ<ß gŒÅ> à7ÚÐ3ÂíÅ/ •5ŸβeË^’áÐØØÿm–eqþüyÎ.%:.nòŒŒ ÎÙ~Ìf3Î;—xˆG¡¾¾žnŒyÈöíÛ‘œ<{ ÇÒ&3¬É÷PkÀód*Μ9‹e|èÿ¾mÛ¶i÷õë¯áa¼ùæ›~/—Ëqøðန¹,ËââÅ‹ã±.V†H‘À‹k`5ÜÏ\CmÙ²Z­vN5^)çK¹?ü[ûløä뎘¶³¡Ë‚ãw;9ïWœ«›±ÛÎD†Å»WZ1h‰]¯Á;—[9à£.:ûWOUD&¢lUç¶t Øñ› -pyb÷¾PÙƒêvîÁÀ—$G\;xvÐétU^,//y–˜[·n¡½½û½°q#çÉL´“*t†Cggg€r,hkkãMŒ}ÄbqXÙl,×Á2á­3n;<–~ÿ÷¥K—NÚ¦»»; Ï=0já›È¦¥¥áÈ‘#Aãt:ñë_ÿf³yTH …xþùçb`X–Å¥K—žKšEÛ!KÎçÅù÷9̰µÞ ù¼8pàÀœk¼úK25X’ÉÝçþ^ÓÞ»Ú“€Ç-Ãxë’ ÇU¡P€ƒk¢oŲ¹¼øåéF´öÍþÒ®ÙáÁÿœiB[?÷cmY¦GRbW›–ꑬá^ «µß†ß\lžõkϲÀ¹G=8ÿ{Æ#±Hˆ=+Ó@áPZZ‘?èùóçcœË0 ®\¹ÂÉ×}ŒÔÔÔ¸ç¦/((@z:÷Z$?ÆÅ‹áóÍþ*b]]Μ9Ã)À™˜{ìܹ‰‰‰Á©ËRŽ11755uÒê˲øè£&aºK¡ögôùãv»qìØ1å[Ø»w/ÒÒÒžçÏŸX’§-…:oν¹árÈ ÔÖ­[±`ÁúÑæÐÚLDâÂ^Ù:‚ÿ>݈aŽ>ó\„Þ©Šn|p½ ^wQ¹aqRu³SÒâðâWg›p¯ihÖ®KÇ€¿øªí¤5UHEس2ø‹U$àÀšŒˆÚfèµá·[`qxgéüzðëóM8ÿ¨‘¼v7/K†VIÖ|"<”J%JJJ"à×®]Ãõë×gÍÍÄápàĉxòäIDûó%sE¤©òpüøqØí³“Þ™eYܺu —/_¦œùω$,_}kk9wè1çµk€œœœIÿ_^^´ÞÅÁƒ§Üo¢Èÿõ¯ÆÆFÿïV®\0y÷ù|8{öl@º]YÊB$?Ï›óîè~ goCÐmd2¾õ­oÍ‹qÆ;¡Ÿ¬@IAbDûv9ð'ðuÝg‹{0Œƒ¼q® —«#Kë( ±·dv«Ùú¼ÙŽo´cĽ O·—Á…ÊüÏ™&ÎvÆØUœ¥,téì’üDd'GV¢¹ÇŠÿóY-Î<莪ß~S·ÿ÷Ë4uG ¡Qˆ±§˜¬ù7JJJ"®z[SSƒ/¾øÂ_¾>Z´¡¡Ÿ|òIÄÕYsrr••ŋ󛞞q@poo/>þøcÔ××GÕâÞ×ׇãÇ£²²’n€gˆ²²2dgg¿ÿ¼nŒTŸ ˜ë³ÇË<¾Ön·ãĉ~hRÍËË têv»ñÆoˆüäää€ ;^¯§OŸÈ•/O[‚¤’!Šxq¾}LO.„Üî…^¹Ú2Wó±Q×dà‰Ñ‘`³9½øìŽ×jûq`MVå% Ò$7ƒÎ<èÁ#Ã0fò8ß³2-fþÙÍC¨lÁöåzì.Nƒ\ÙÍŰ,î6áÜØ‘ORu2l_®k[€o¬ÏÂg›ÀDðu{\¬êÅ×õØUœ†­…zHDˆúþÄhÆ×uƒ¨ï4G|í^Ûš •\ ‚à‚D"Á¦M›pùòåˆÅè矎üü|lܸqF/¬öövܹs‘gù‹Å¼+8³yófF:A.Øív\ºt •••Ø´iÓŒ–÷Íf3ÊËËñì ‰ðƒü?ûÙÏ‚N]ƒ˜ë/A»lÏ´Ûx#"|"'NœðW­Še`&ˆ‹ÅøÎw¾3mì̘ȟh¥‹ÅxñÅýß=N:…ÎÎñøEEÆr$<±)³,FªO‚õ÷üÐëõ8tèмc¼T Ij)^ß‘‹·."|0`váý«­8©’¢(W‡âòÓT†Èm9lu£¦Ý„êv ½¶ˆ?ÆÊ¼슱¶×ÇàrunÕ `i–E t(ÌÖ†´ª{},šz,¨i7áq‡yÆé R¾¿»bb» M…o¬ÏÂåÆˆkwùpò~nÔöcka –fi™¨šÖ”eG `U´ áNà ç`ã©Ø±"5®uˆ¹Í²eËÐ××‡šššˆÿ†Á`€Á`@zz: ŸŸ.t:󱆿---0™f^‰z÷îÝHJJâÕùÕétؽ{7Ξ=ñßÀW_}…ÄÄDäçç#???ÀWy:, ƒ?O?¹é<Û,]º;vì™*×ÖþbU” ¦.b峈Õ1Z[[»¥ÉypöŽûÏèëÖ­‹{î´†…‚¬_¿> bgDï™áa ãÁƒP(HHH€J¥‚J¥‚R©„Ëå‚ÍfƒÍfƒÕj¥*·Ä$¾ýíoãþýû~«û´ïµºK)§Ì^31UäØ*žÕj Èu/V'Ãcäyyyؽ{÷ÔÂØjűcÇ\q€Q7¼±ô›.— _~ù%úúúÆEþ‚ÕÐò+÷¼³·–æ[!·[»v휮‚;§„>l_ž‚ž'Ê£ò÷l./lý±)°¥QHðý]¼©„Ê0,º†èrÄäx‡×ebifäÖì7d£ßäBS”êØ]>ÔušcÒ÷d?Ø‘P‚˜Ñ„Y(ľ}ûðé§ŸFŲ&“)j+ .ĺuëx}ŽKKK1884H‘ ‡‡ƒ/Á µZ×_o¼ñFð YÕ_B¿þ»«Ýs")Ø?¹ä¸Ýnð¬ßíN €P,ƒÛ:ª©$É´.;8vìØ¤JÝ2™ »víÏN'Nœ8àÖ§Ê-…vé.^[÷H'FªO†ŒqHHHÀøÃù÷á{_Þ˜‚4õÜš=‰„øþ®|èTÏf¦•õ‹“°}yÊŒþ†H(ÀŸ?—dlNõ]§’àGûQ–"jÈd2:t( Í\ %%eZK!ߨµkW€«AămÛ¶·N«õ½. =üŒ'pB)”ÈýŸ- Þyç´µWÊUå”þ¿öîô·ó@øÃÞ%JÖ-Ó’,É—|HYÅvd[v|ÔF¬FvšôÃn. º‰c‹ýúµh?´@P4E6Ù© »ÃmÒºñYÃFÖql+¶ +ÖaK–%‘"%ñتl’â13œ©ç¼f†äpÈyÞwÞy_ÌŒ?©Íß¿Ò&;_}õ~ö³Ÿ-ùÀ\“—˿ߣGÆ…ü¢ÆÍ† ù¡©‡»üûŒ]išL&¼ùæ›qc0èëDLxmWcÞ´uvÚD¼±{9–U8±mjY‚Ÿñª¶.ßÚÛ„Ú2G^|v·ÃŒ·ö6§/€H ǃçŸ.—+/ÞoMM º»»a6çljè‹ÝÝÝ’Ú×iéÕW_ÍØ 0×{ÌØå£ˆFÂ1Aÿɾò½÷Þ‹;¿§¨qÓ\Øýg­¶×ëųÏ>»`¹'OžÄ¯ýkLO/lÆÜÜÜŒ––ôõõá£>Š+¸›·ÂÝÒe¨uNâ᥅¢döíÛ‡õë×ä6%äÛ´[E¼¾{9ºZ+ ý>«ÍFB•µs°cmå܈¾ïª=v¼°y)þti_~óF½¼Ø†Ww5¢ªÄ®ùzÞ×^êR;þ÷ïw1Ê}wt¢`B÷¿ÔþHQ±gÏ”––ââÅ‹ªÚ¤¸0nµbÏž=¨¯¯/ˆuÜÞÞŽÒÒRœ:u*®f4W, :;;ÑÚÚŠ?þ“““ü!¸ÎÎNô÷÷' r•ÜôÈmŒ^ü”µ¿ˆÒ¶ ~ƒhdŽê50™çš’ï?§aÇŽCCCøä“Opýúõ¸åÙ+[`.ª€ïö™Çݼ?’¬µ¬žµÏA´«àé»u“·þ.iZ»ÝŽÿøÇ~N^ŽäÓXé½°ù¿û8}íAÎB_suº;já-ׯ=¾Õ,àà¦:¬¯/ÁG¿‹‡¾Üì„V»ÖWaÛêrYýäg«­Áƒå•.|ve{f=ÎR«êŠÑ³±•pˆRéèèÀòåËqöìÙ¸îô$Z[[ÑÑÑ‘wMu2ihhxÜåáµk×rÖ×}MM vîÜ)iü*,‡‚ßïÇ©S§2N;;1Œ‘ ¿EÙSÿ Gmë ¢O¶ßüô§?Å;wâÏŠWî„£¶c_Kú:&A„»y›ájñ£‘Ưž@`èÉ&‡FCCCÁoGy;d§Ý"â¹§j°uU9>»<„‹ßêújJíèî¨Åªºâœ}þ¦ê"üçUøòúþöõƒ¬F¯•µÁˆ&l]]]ëª2À¥•b§/uz±}Mþti_÷ëöÚ•%6<ÿtV/-Q®•••aÿþýÀÙ³g1<<¬_EGs36mÚTÐÔét¢«« ëׯÇùóçUë‚SŠÒÒR<õÔSX±b…!›‘>^yåLMMáÌ™3§ &0rî·(Y½ŽÚµñÝü¤“ˆØÁ³æ9ªW£xÕ.Ö¹ŠKÁ¼°Ë\´žu߇Åm¬ó„"3~<¼ü{ÌÆô(”Ék¯½V°'ßLÐ }[¼ØÞZ—q­BÕâCž;×U¢£©Ìƒ½YÍž][‰®5øÇ­‡øâê}UüŠe´5z°·½¥.cô*Så±ãÕ]¸=ìÇg—q{Ø-Êz¦¬6­X‚ öO†S[[‹üà¸uë.]º×媿“ ^¯7n4üIÁjòx<Ø»w/†‡‡qîÜ9 hÖdª¦¦ííí‹¢¦‘¤ýæÞzë-\¾|9ãôÑð ]ýÁ‘Û(Y³‚yîÜ1GÍÌŒ-xÏê©CÑòg`+__Èõ¶!0pÑH&Á §· î–.˜cÅÆÙÉû»ü{„ƒ’×çøCìØ±cÑlCæBù U;þýÙFgøþÝ$®öã›ï&œ gð–U¸°vY Ö.+6l3 Q0aSËll^‚kßMàë»ã¸90‰1vÍzœ6k––`m} VÖº 3øW¢åU.¼½¯¾`_÷ãêÝqÜð!ÎîP{Y‘m¥ØÔR¦úIÐÅ ,¢€Y‰ïÑÈã ”»­²¶)‡uîoÇårAÉM"Š‹{EÎ{³Ùlšõ‰ßÔÔ„¦¦&LLL ¯¯}}}Ì*”Z,x½^466¢¾¾^Ro js¤@ißÛYUUzzz055…;wîàÎ;èïïG8Î¬ ^¯MMMIû5åv»%äÒ¸[\\,y„^žœã}¼(âÝwßÅÏþó¸fÓ ]Çì£xÖuÃZºκ mnÜB80‹§ΚVˆNOòß½»U;ßEd6Ñê vT)š†ïöYLݽ×Åh¦ÿ‰7ÞxÛ·o_\…ŨÎäÒH8Å­!nÜ›ÄCß Æ§f1>5ƒ‰@‘„Z—ÍŒb§%N+Jœ,«p¢Õ[ ·CÛ3±|pEò´O7—áå­Ë$Oÿ`b7&qs`£“3ðCðO/üì¢`‚ÛaF±Ó‚b‡ånÖx‹ÑXå‚§‡ŒgBܘķƒ“xäŸûîý³˜ Î.¨õ\63J]ÔWºÐXéBC¥ %zuòÊN}5œñTc• oím6ì‘„àL¿8ñ-ÇÒ÷Ulìª&îäåsçÎáÊ•+Ã~MM zzz Û›Ëìì,þð‡?àÁƒwØ›7oƆ ôû~‚AܹsCCCðûýðûýðù|qÝãÍ×t9N¸\.¡¨¨K—.…×ë…(êßL/âØ±c¸wï^Æw[[6oÞœ³ï¾¿¿ýýýðù|ðûý˜ššB XPÀE‡‡eeeׯÓ)ý<¯¡¡!|öÙg˜ššJ_¨v:±oß¾”‡{÷îáäÉ“GñÍ´Ò1Ó„ÃøÍo~ƒÏ?ÿ\Ö|ŽÚµ(né‚`+€®¿£øû/Ãw댤þñc+,~ô£~¤n}Õv €/8‹‰@v‹ˆ§Y×Jõ úI?;€©é|"Ñ(Š8íf,–Æ(‘h“|Álf.»v«˜³Ï?á¡/us+‡Õœ7Ýv1J]³RQlOz^ÇÔÔTÚ^Dl6<O^¬ƒ±±±´½´”””èV#žñ·‰Àï÷czzN§‡ÃmÁ=z”tðžyn·[VPÖ³ 2ø- ¬V«jßÝÈÈHÊ#5&“ ååå Æáp£££Y/‡ôuôèQüîw¿“öD+Š7ÁÕð´ášßH®´¾‰ÉÞ¿"45&k>»ÝŽ#GŽ µµuQn/‹2è‰ÞAŸˆˆˆòÛéÓ§ñ«_ýJv³1ÑQ‚¢åpÔ¬Ióâ³ÎŽbâÆ_0óèžìy«ªªpøðá‚éúW 3.DDDDùcÛ¶m¨¨¨À/ùKŒŽŽJž/Çø×'0ÙûW8½ípyÛ X]Æ ø“Ãð÷G`躢ù;::ðæ›oòˆŸžX£Ÿc¬Ñ'"""%ü~?Þÿ}œ;wNYDØ«WÃ^µ¶²e0‰¹íUoæÑ‚÷o 8|ဲ®³EQÄË/¿Œýû÷skô‰ˆˆˆò’ËåÂ;#¶¶6|ðÁ N²Ï$ #0p«€I€ÕS[y#lK`qWißÛN4Š™±» ÷búþM„§}Y-®¢¢o¿ý6V®\ɃAŸˆˆˆ(ÿuuuaåÊ•xï½÷pãÆ …¡;‚™±~ÌŒõc²÷o,Ø–4Àº¤¶òFˆ*ôÚ™™B88ðÔ#Lö!xÿ[Y½ç¤"Š"º»»qðàAÕNz/lº“clºCDDDj9sæ >üðCYm÷%…iG1‹‚ÅÁb‡éŸ×s—ùÇì@4ŠppáÀÄ\¨|=Žh$¤úç]³f ^yåÔÕÕñËO‚5úDDDD¢³³øãÿˆãǧížVŽp`.´Eyy9^zé%lݺ•_:ƒ>Ñâ`µZñ /`ÇŽøøãñå—_f=‚³QTTT §§Û·oÏÉ`~ù†MwrŒMwˆˆˆHKccc8yò$þüç?Ãçóååg¨ªªBOO¶mÛÆ€/kô‰ˆˆˆ Xii):„àôéÓ8qâRÍf´··cûöíhkkã(Í úDDDD”ŒÍfÃîÝ»±k×.ôööâÂ… ¸páFFF õ>ÐÕÕ…-[¶Àívó‹Ë›îäØ/>íEß}¿¤i_êôbÓŠ%\iDDD¤Šh4Š[·náÂ… ¸xñ"†‡‡u‡­­­X·nÖ­[‡êêj~1 ú…áîƒ)ÿÇûfQ@[ƒ=ë`5ó°icbb½½½¸yó&z{{qûömÌĮ̀¶|APUU…¥K—¢¡¡­­­hjjb»{}""""ÒS8Æýû÷1::Š‘‘‘Ç×>D0D(Âìì,fgg Íõ“_TT·Ûw™÷uuu°X,\± úDDDDD¤Û öºCDDDT@sc “ÉÄ €AŸDDÄ`A…³ÏÎfßnä\ ÷÷•øY¤Ì_È¿á‚n£Ÿ¯Aœë‘ë…Aë† aòûÏþÿ9ö±ÄçÓ=—éÿ^ʾ@Éþb~%ß}¶¡<ñ¹t÷åL›ÏÌFÚ˜²ì|Ÿß(¡.¥Þ£ÞïA?ÿÃŒv@ù°Ìå{TóµÕXV6ËÈfÞh4ªù÷ï,Ux½N¼ê¹d×J R rö'©¾')[j(OäM&SÚÛ‰óJyý¼Ú?eS£¯F`Pó”’’«šó(-9gSâÖºDn„©ö2ÕZž–c´Ï’«×ÓóOX­×ÊUð2âçÑãûTºÌ\ÔJJ™FÉsjΣä5Ôx^Íí$×á-YøŽ òó—H$²àv²Ç²-d*(=z µV=UHWæ“]AXp;ö±ùûÉ ùø“}­‚¡Ü@+·Ô©ÆsjÝV:’ûj•¾•*´.Hh5­…¹ËÖrz#µß4rÐ×+€Ë}­¦×+kµnÔâz„k¹5˜r›È RRo«=’ûÙ2ô.ðIùLð#‘È‚K8Ny;vžTÁ?ÓQ©©¡_Êö¬äZN° òÉ.¢(Æ]'^’-3þY­  vP—Z²”òœœk5—!÷G’MI[Ë‚…’‚C¶G"ô:’¡×%µ [Z|#ÁÑ­–CþAUšP5ß»šÓ) ×Ù,?›`žM€•ZC)µVSi€Jœ/ÛÐ%§ÆUI­”u®ä$L©Û…ÔÚj¥!?6¤ÏøØK(Š»N¼$ þ‰…‡ÄEº¦A™n§Ê'±÷35¯Iµ I}\N¸ õ¢(Âl6Ç]'ÞŽF£çM¶åSØ7«´äÜ—rå†ót¥äTÓ˽¯öíl É é ùV0Ðòd"5Bp®ß_. 5‹1è)HkžÕØÙ<¯dÞl¼5äÙ„ôLÓH ×r””¥Æ´™Þ“œ†œÔ@;M²ÿ´tËȶp‘¬™NbÀŸ¿Ì<;I þ±µý©šù¤Ê8rrPªÌ’.èËÙnå†ûÄ ?öÃ}l Ÿ¿D"˜Í椟%¶ð(w›Ê‹ ¯4¸©UC/'K òR6b¹?‚tËû>õ.èy4@À¯vAëçµøj×ÒëîÖt'—Mn´ ÄFìrŸË¶‡Z÷•´/–äåâlÃxª•.T¥zN­Ã|Ju껎 d©n§ ¡Ùô£æ_ªÊ:)™%U»þTÍx”f˜t!?]àO÷}&»ê~âc±mêcŽ‚ ëó¦«,M¶]äSà7ËÝa%+½J-¥û!Êýa§zoó׉·å}-jþ¥w9A?ÕtRjôµöZÖìkŠsÈó­ Ób®ÑÏE;–MZŒV#¯uЗSS¯fð×¢m²šá_Ið—;ÔÏ V­¾’¶ÿz…¶T™)6°Îï»EQ\Pœ¯©Eápf³9em~¦¶úÙûL-R­_¹íî•Ôì§kŸØdg¾f?ö±d'éfÚÆ ½¯‹D"’÷ÔÙ¹ljþõh‡ŸM϶æ=Ûöû©ž×»¦^s8ÔØj5QÉõkh±5_ÓèæcŽ«IDAT=»$Tûˆ€5õz²Y†Úó©ÙŸÜ‚ZµÿÉjþ¥ÔšFé2¤Þ—è•ز-¤ª1_ª£î‰!=ñäÛdMtbÛçË øJòKºÖÙ}%Û¨œvÒ€Û¤GÊ ¹z UÙ&öº£E¯zÔ,<(_«ÛRjÎõè™'›^wô<5WÓi¢ó¹ç¡ÅX£¯W¡!_–«wAH‹‚…ÒÞs´*,È-HH ÍZ,›mo=j<¦ÆïXÏžwR5ÁIջޒ.6åV4JÉ@rÂ~6e*d þ‰íùSuµ)¥ ™wA_˺–=ü¨Q¨P#øæcó-ƒd>…Î\v?ÉAÖ ·` öròyþB(\éœ-š3eS`Qûq­ ³Zy%ÿ¹R²ÇC½œP®EgR×±–ÝÈÊiú“lº|øŠ‚¾Ñ‚ƒ^ÐhÓ5 ê y$Ù\…l†{ã‡B}7GNÍåhµzÔFë5p•Q¿£ü+mQé]¯ç´8Y_iaT­#K ú‹8œqUJ€[lA”Á› iG³?³?ßSaí é|+½ ÎjŽÌÌ O sÄíŠhˆÛñ?Ÿ¿}"""""RÀU@DDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDÄ ODDDDDùêÿÊ”€ÐÁÞ+IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/icons/wikipedia.png0000644000175000017500000004216312033133562025314 0ustar neilneil00000000000000‰PNG  IHDRðà ];sRGB®Îé€PLTE[[[¥¥¥¡¡¡˜˜˜ãããÞÞÞ‘‘‘æææðððèèèžžž–––ýýýõõõøøøêêêää䉉‰òòòÛÛÛÒÒÒöööÔÔÔÙÙÙìììÖÖÖØØØààà~~~ÐÐÐHHHyyyÉÉÉÎÎÎuuu¿¿¿555ÇÇÇ„„„aaa¼¼¼ÄÄÄÆÆÆªªªÂÂÂpppnnnºººÌÌÌ'''iiiµµµ³³³eeeÀÀÀ¬¬¬®®®²²²†††¸¸¸RRR¨¨¨°°°úúúïïïûûûîîîþþþïîºkkkŸŸŸ···áââ???½¾½…††lkl±±±¸·¸¤¤£ëëëïðïùùùááá›››ñññ”””“““”“”éééwww§§§«¬¬{{{¼»»‡‡‡½½½¾½¾¨§¨ÍÍÍ………¬««­­­…†…ïïðhhhggg†…†ËËËÁÁÁlll¯¯¯«««úûû§¨¨¹¹¹ccc©©©óóó»»»ÿÿÿú, tRNS@æØfbKGDˆH pHYs  šœtIMEÚ-(“o IDATxÚí½íoâÈöï[`Œy~°±clÀ‘€# ! „å(!\倄ƒruÃ=äÂ}q@ ‹üë·ªŒyJzOwOÏìÙç×µ÷t÷ôL¦ùd­Zë»V-—ø½~¯ßë÷ú½~¯ßë÷ú½~¯ßë÷ú½~¯ßëO®ä-Üþqù¿±tQ*?þâ%H¥£%éWþ'“óéLüGÒ ”Ç#”„ÇR)ô+þsž€”‘Æœ^Ûñÿ[ú»Y‘O96ƒÅø_aªQÖ¦WÓ Ä*‰‹òcQ--)’z(•ì‹L,úÅ'æÅ˜bƒHM¿8XS:Ž$m¥SWŸ¦£Ôå+aû»yÓh·žnÿ¥áì—àòÀÕÃÀÍØEé1ß\ÄJOÐú˜e™8 "ät=Ì!ù‘‘Ú IæÒ“´Z.Ÿ.ÕÓ§B>õj°/¯|u =¢ß¥(±y7À.PjT,^+W67›té…-žfb‘çE^KMãq˜aÜ\.“K†>TÕW´Í/1*PÙØx“ƒÌ(sLÁ»@Ù䡼_f\ËR´%€ÒÒ«™˜çyé-‰Œ3 8uÇ&i™)åAEN=»44þVâ A’Ÿ-Š­ø]­ [à“±U*Û-ò±Jµøò£wcbÌÉK(Á8°´&ét?›Ìt§n˜í'/[s¯š:¯pQúã*ؤ£WÀÀ¡ÒX€¡+QÊ[½&¨>ÔzPU%–ßJ/°n‚N"uÃx×ýÛä$`)çw«ð°Îâþ°ý#»Pø´:(•`¤†ŽA`_·$SA¤¶Zlö1ˆ3ÓÚ§Xp¢ÛVY^QÒù1šÆ&žæS£‘6ÿ= Iç¾1mTU¼ôÖË"6¢¥2ð”ÊÒ¢äd9ÎMÁ`×Ô¹ñiH Ýö¤°¬È1+j–™¬Mœ‚&6šï‚Z‚ü«š£œž5åÿдý‰è%jÒ»éÚ˜êYP@,jMf½5–݆-qønœËr, ‰#ʇ±_T±‰a¤n4ìøûÈÿµ¼PUY¹ëçȘ%É@8ŽhUê ¬ @D×UÜšÚZ8J¶êÚˆ™Õ|íb~Ì«–ç âÞlÖJÄ1è{O<Ýó1d½öyLlØ€}†RY´ÆÇÞ&Öå¥hœ÷°cɤÜ7¼ýbˆ$Ï®žŒ V7ïÛ„}èh;Þþ^¯ps½1.6ðµ­ô/5¥WN¨Ëæ~Ë/qI é÷wP€{ØÚ«E¢L&øW-ˆX€¹0ÕŠ„ˆ3s3pØÔÕ0tŒOÓ';¸œ¤lÈÄtÜÚ¿Þ£©›=\h`‡h¬ß¾ú¥ý …ÀNÂòœ™™8¬%™w-ÂDl¥š wr•HÆße$&z½¤«§ù`Ͱ,Õ‡€Iˆ¼œŽ$NДG…é=x‹¨m¸‹Í Ó'¿¯xoV,RÑËÝ>2‰Ñ!G<w0º‰£w³4¸"ÞÃAdA+Š{T3X¿oT˜nž®>zàv (¨éª'Ó¡\‹•'õ~™¸ŠuZf U¨Íw³~©~.‘®×éÜsøÎT]eÀç}zG¼Ð–ÚþOG\D…C—8²×ÔŠbªiš2íœÈBcŠ¿_ÀuC6À˜8ÿRkÁ2IG`*^Á½[f©iˆ6¡@m¾ 5@ü× ŽæíõµsµºA X®9²Ç +ÌÉ<øÔàQÁyü¼¬|fÅÏã/M=£ª{83özk0n¡vm‹àïżÀ•ïFL"A´Çr în…B~d榱Mtüœ6ã/ÐÎŽ{å“Eg‡î['†v>û%ü@SƒRù071š‰Ïᆅ+~þöæÀ1No`àž^, tФ…éZ¼®»'J÷€PMëX†Ú£nùêô n$QB¹Æ`8ò¯ãmU(ÎÉ~¼‚qÉ;0B†_!òÛ$ø¤¶’f´/ü?úëþÿüÜ1;¶zàuv¨M^ªµ¸êérý%ðÔA¼é‘ÓšØJô @å ]ÿëý}» žpEüÊÊ)à³®—£HjE4VNçx½n;©ì~K‹¼‚!ëýÓž£ÿÁõvîP!nIïzhÀy0sW{”®µ‚  VNM"N.Síw‡§XIŽfOFíK¤§—8¿£ï)e4FG;÷fgBàþ—©ÈVg._ƒÎü@Nç>ò*àØíá‘0>A\d\dZL‹xÏu\Ú¦¨štÉŠµGµ0pËŠ7ÁXd©žæ_6›q4‘ün<–žÀ[…’'Z1?É·ï 'jÊ`xQ˜„“öó8´ø¯’˜P¸ñMãêɸºzÛòÂêáöÖyãt= E &#£m4ºÆq>¼y <9†ÄÖt,W³0wÚêSa4›^©Åº2#ñ1È@âèºkÊ÷aX,ª§W£Tê2u•Ï}ˆ¨Ÿ¿9BÀñë«;W¨²ìøvuÝé,Ü·+‘Aàá·îømmâ7´¾†yÉhʇjb¸‰ƒþå½a9I+ò8,q(l¡níÖÄ0vå¯\1¡Q«Šóíø0Øì ÒÆ&.ü²S`Õs—Ѿ彥`h–^UQ:~° ¨ná7¼ý¯€¡ÀœóµÛJjj&ÂMˆz³Ë2î Ó‰ ð,•Š‚”ùýþ=Þgαœý5¼þŽ‘¾•@#½ºÕW$–!®û£ù±fݵ‰5Ó®Ǽ¤‡é]`J¨ƒÆõ3EîÕK»ÝépOèPZÔÂE1îôŒèr¶\‚9˜8ƒÎ ~M»ZàWlgµ‚ÿ–·Ò.í¬=¿ëø]Û¼˜ÄqÃWÀ5FÁ'´‚œ1‚„3Ü×61nmò©Ë¼ªº¬ƒ 73¿ Åe­®Š2®óv'\9ÃxD© ƒóE¶u¼aP v€áÖ€¡‘±iv¸çé5M‘8Hû,½ÃÀ>0jäÉr¼9É:ÆmõiZ˜Î. —ù×ò…‘W!5KŒ?Ý¥”8–Ü Íšlà2@sE 8Û1/öêóµÜØ84\ŽÈx­>(R:{¹; êS °)¶ÀPI •\}µNmÙk£1¥‹û—8¬/h`ƒ?»}Y™ÛµíÚÀî·^`O†¡x—÷}“ƒ÷páz—<Xû¶H?—Q–êÕìJa½Ú$À·€Q˜–¸éÃVË­lU¢t§¦F#LBí®ÙžÎa®ø“E)¼û³- ÔŽ.‡Î?ÅæÍöÕcòk²ã ,Ž£ ™„5O®ŸH$ê%ÃùI/õM`¿ ÿ?–a*–3@íŸf£F[ªÐ@%ÍÀTLƒØŸKÀxëÞ¢>ÔŽ™W,؆æ½pµ¯ -ü-fH4ò†+ƒmha¨×ë9%)K<Û‚I‰úØÏ¶H5ƒ‰e[œ(œäúË ÌŸ4ð5+‹”W¤›µWk½ŽìÛû7¡Î{7¿æDªâr¹|¶‚VÕ—fw³³->[AéEÌ”iujaÐõ¬ØLx,'c²¢ÕKý““5p~63Û 6‚xÀoqLÿ‰n‹ l cÁÐ ‹ëh½ºî#>¦?màæpÐÆ´Hu\G.l\¸RµÙ-t6sëé¥5°©D@´(’Ìd ,†!ÈwÍot฼̧Œ°&FÝKšA›8ôór‹ Ý’“aÏÚ¥W×ònÈÂ-µyµo°=‹Ë}´@ ñZ0oµ Ky‡¥‚Lü ˜jR;rÜ{Yúƒ©ìXDÀpCön{À(LkÀS b£ ¯71 ÞÀ¨¼_ (<ü-±·ÕaƒÀeÈ…I™;øG9âŽmä ¨£ç#è̈׷ \©ÀÄ]íS•y…FHÁ¢%€cÊï÷ÆYMx8€¸{À¤Dvê¥éèobð³ÍÊ{ ËûN[˜ãž7ÀMœ}s8˜—†Ú—9žK^4Ãè‚Ãaë n×WÀÕÞ\_s l|Ò–…€2{Ï5C` €šÖ™¶ƒ“5ÖNYÉå&ýÄÆÂ»À]}ƒîËOáRlzôÊ7F„-Û¬Ô)À=œÚÔ1ëq=ãæÇó  }I7ñ[$èqaÞàJ¯ ø#_µ·)–ü};È–O¼½^5……ÈJ¤Ÿe£CR~çGåäkèü*Ë­÷ðÓ.0”0¿¨·ìàg&neYD­ÉUgìAfòX­Žr µ¸¾E¿‡:ô«‰=[Ì:%ÅßOHÊíÚláuÌ‚K°,ÁôºbÑ\ w hà2€ôÌ…@úI%»Ô\šƒújymÂÇ- èW¢Oñ‰yqü€ï×ÀL¨6˜ŠâäÅJ²ÜÊys»¢2ðCxE¹Õ¹Æ·.2Æ-X K0ÜÔ‚À+ê9dü %`háó¸J6Ý_áîø6&MÒåYµÓ’‰:G£àÁV­Õµ4÷ƒÉ‚…NŒÕ ·ç 2À{øT~5hÀ8Lƒ—ž£ÿ©ã%psëöH´…â4Cé ¿ ã±ñk«MßòúÚy}jFvb6 ú=®X5ŸÞóh,û󷳚MôͲ (ã‘‚ãä\Ôôò³x³)d<­¨X€€ ?èñløî:&ší1ÿTØ ò1Y䯬V¶¸ué‰l“Rƒìï³oÇß"xWg±oàoyôn“6 ¢ã4IÒ¼<NLAÈùh6xriÀy¼z»Ø=!ýÈ”m€Ó<ºJÖ í×µÔ µ_Lk~¼…¯¿~Ö˜õmdÇâûìÑÿ F.q093@lü˜Ë¨/x“ÚH-:>„Àq\y¸«KMx ï7›a˜¶õ‰¢©˜LrFŸ}ö«kÿ:6ÉÄr(–Õs^Ï.¯Nü|»Z9]‹#XV¹µ$ìó̀ء|¶Ttï_ma’ä‹Äyœ¡íí×|êõ„m‘ƒCà>jô±”2›­¥eÈ’ùî[ŽÐ@^6…@KãfËå>Èž£_äÉû“iVžšZ{;XÛÃ׫‰ÇÑh6 RÂJ“• œ¹k–5p§É©g‘0Ky¾Œpeè“ÝB=ë_%r'7·¼\öpé6=äµò=êct@<˜ýŒŽÞ |9[ŽBcËð×Í[sZ%QŒMÈà¾Ccû®®_£Ù㸡®ÒH$ŽVp0‡ºƒ€-BÿÝa,&9ާš‡²C_É!=±VRäQØâyââ~µ¶Y ÷ëfà09Ó³é˜À.lÏMãñ8ˆ®Í÷Ï‘êÀ/æ \Ú$»ÄñϫճWd[ÔxÅkÃÁÈ­Ñ”‹q…êŸåÄ\dÕRµ,D̼UÎöâ_´tï¸ÆÃO|ÐÒâ@Y ã]àHºxÚ¯Éke´¾‡Rò¥Ph£Ò¬ç]•žöV °’ñþI?»Bç.N÷³ósJZ-Ë%ûêVÏ+TLxp¥Œ@‘•… ‚8{í²xN@¼*Ôš_·àG<ó!ó®K¾%ÕŠ•·À¥ bµ ·òµiõjÉÜmèŠæ<ÕFŠF?LVÜ'æÕ¼€Ã@ØçÃ}ĆÇɈj°£±wóT"ÅØ¼hçnµ´Öå° éìÅðøØ¡¿wVrkà†Á¹èñÙòn.lÑ€÷2ð:b=À¸ìÞ¯¦p׎ÖÍ,‹…‚uPÕe¥'Hƒ‡g“õ0Fó  ƒÏož>ä¸T}Ô²M¿…BÆþ±”y.¬$Šó“<ÜÛµ§ 0îx¼ íÇÇfúâ˜Ñ6qè{ï,òˆÜzÐ÷?“بIÏ-(…që€×½‚{¶ÜrêªòèzxhµmfY:–¬„¢£ ƒUñzeÖVv/˳~]HÃ1þ0²5RÓy.9 de’H,OæÅ3tQ„šÏ§pãžÀ.ÝgãôLJQmÿ½T¢V ÍJå‹%ÔÒè×Ö¼u®\\)W’òÆ—-•ÞW:ÛÀý¼×žÝÕÑ=/f×”çPf‘"4œ™õˆˆXw¨çwWJ2†—e‚‡xNŠEX‰ni½¾ðúÔ¶wí Ì0Ç0k>ýý½ZI6€Çl ü7²(­œâåé€Ï̃7EB,GVØÆ·7t©l^½—¯²¬JV´œÇBYT«9\©µD½cÉeäžâÁ:K+NŠó7Pt+ø² ÿË&Íífó9Œ9ˆw ùn`n[IàQ+–Âl],æEJ`¹ ²¸Ù/ ŸoC¨³Ì¹]î‡ã]Y‰å²°ØiÏîÕ V’‰gkÓû©p`9ܶnø‡lŠáÌx_g%ÐÉÒœæW@­60›þ_0#/‡C3ü°V—êϵwÆ3­Tâø«˜ ©Î« D9÷‹à#r5]”ˬóMÕ  e¢Ôâk£#Ã3@»ñ|Vë R Žá¿ò‰›öNæ°ÝŠ°à¥©tÎ $wïh3JÇ0šC¿?2júe?ËDRšÈŽÈ¬èÜ« ¯}Q°ºFM¸ô-Üò°zäZå³õJ¸·—§ã¡öf;ð8 ”'µ1°ÖÏ:VU5lÕðÕGÊ$«ñþ¶ÉH›ÍÇÙÇè¦zxý5 ¼’ø@eŽnvkþëE¶3v9{œ¹q±¼à†±üÚõ­Œ€¡øU©O•!¬ÚO¯¯©mÃRïv$7Õ¿vþ]_ NžÞ€º˜¶m°xð>ÐïÑì9¾êG[ÆÞÃBó+àæ´–iîuužÝ0Lɤ媩çë#ßæ|åk£§;@í¨Bí˜ ’ üÊä¶À™ñAõc:Y‚ž› wÁÌ5oß·!¾˜‚G†Ù¶ÿ pX=;»Ê¿8háyr¿å^á>v„-ÿÂÀTª*ÁÕYOþ“Á`ÍäNÏA¨î{ö°Ü^Kú«˜yÕ<¬ôÍí¾÷ÿ²!pŒÇ4k‰þ°„‡bT­£³Ö!°¢ü^k·3»æíT¾ÈÁ=kþÑœ—›#ôzìô—˜ìI«IîµàuÖûYu<†‡ŸFÐÔØë¬6ŽF3ŽíCcß9ÍCöTâýUXýT()>ÜĪ7|ôü™wgÆá³›—MйpF‚1K^UHIVú§¯í»óPÜlȱ¬#µÂÿ“G+›,¬matü?-¤òyƒ±”4NþÎNm+©¹´˜ARòæ¨IžQûÀ­‚Wò=jTîø€·Z©5~’'†æ{ÛØ°9ŒjÚíÚ_ì„ñõt2àkVÊdQ¡´Û‘Æ”cò`ÁÅ¿¾…OÏžöJ,Ã;Àß{¾”ä0°w¹@êÂéââAÔµÂÖëoðú:û«ZíøªÁäëaÌÆÓœ ­&+§ª÷¨&+ò`Àñ~ÍßÁ­Ì{GkŽ%üL&¦+i}z6EñzéÐŽ6·<üî-J `®>ë„•îmPáM>=byÓõ!ïW]鸔T¸ ʼn"Gz)«·…òO8„ë QQÀj¿êÀë=à¹+ÞA!­y4Îñ»- IDATÂgxÝîh AYïó&`Áõ9B[\öÄr“­ŠÏ‚p7Gþ^°][„ÖÊúl`èÑa謨?.i¥ë1KUß—zt×âÛZÌZ‡†h¶å{ÒLL-­7Ïî˜8äŒ~¶ ŸQ JÌ£#ÍÒ»öU•;ÀŒ$kÓzzÛN´·Ö…›J3øéHiÛëàD–àÍ…ÑMјæÑ›-|…¶0 Ÿî¾1Æ+‚Þ Ò¶ïOKPwX&Sk‰TbÖ÷'}Êâ]«˜33““§¼ÁðšWžò¹¶Ú×z÷¬Åµ°TªBO÷åõÐû"×UÏ· Ìó,)>A5 ¡œÄ]”.`íùÛx´6“6…ÕÿGÊ NÝy¸…µÞ6f9ˆ–ßq †T˜s=»ŸÉAâ8ÿTå¸åeÛNÜçÕeZ¥yBæbÕ·æí˜q>» mmÝ^Ú5PþŸë7 L’áŒR`"¡-‚HÀMlïyôÞ¨Tªpm­ƒwG3(fiÀøDíã{¹ŠËmõ“5 rÛNë¡¡ìíb–‘L†û|N"­BÕb±T›=¤'8©Ÿ|Úö)`ä¤Õ&š}?0°‰â¡õÜMê+‹âØŒoìi×8T÷óÆRt<ÎÂM<øäѸ Î&m4•ÖÅÀ›˜•ú¡z˜«º\P»µ¬¯P³¤îØµÓø©»ijZ:¾ŒÍ8`¹\>&®µÐ"´OF“EP:5 l‚À¨OëöP_XL3„uJY²¸I¹¬Jh6ñQÞÑhy´˜ÝK x¸·… ÔâüêZ¸´H„K!—Å›93?Ô¾:³™?nÒê:Ú h¼q®@—ëh©CšßDÓ„k ïÞÙK%éÈJ}½ƒE˜œK¥ã€”‡¥ÇÁ%%§³Åt}Wf!àK¸…ÛG*ç÷ñþ•¾¿‡·Xà~ºŽüìòuzl&R|HsÞ }þùh“~µL´ðÚGm‡ßø"QJÌôÉ¡5—Î@ ïò²Xh­C4zŽ3+Kã 70SÆèö€F,]_î{ôeН®+‚ ðcK(f…Ð^8|÷i×[`â£ÝŠÂßuò”¸Ðq]Z"êø\îx\IiiÌ}*«yö#\^ÊW·—Ú-ü¹¢ñ~š“´~4‹®Qœrã@¼tÁÉ1%ö}ü\i¨[žâíǘvòÄf cVÕ¬—†ß=¹$R ¼?w‰5K?C­y:§‡¼—l®žk§(¬ôÒtªàÚT3‘C0s“µÍ™pK‚Êðý¾¨( ,KH[‰÷¥¨ŒçÑdèãÙcpšØ“Y¯—q V>00ÊJ°Xˆ;@¢½¶ð÷³ä¢£9õ!2Ò%Hîm_äД#$¾ÅNÉ T:)0q‘Ûç±4‡®ÕL¦ð.XÉšnâ—^ÒØMR"‡»wa–ɰPe8èGKQ0Súz)|… |ixuU¸$Ö[âÚ!PMl~ÿOK„Ö‰‘«Î_;Úçí,΀´hît±*ŸÀmnÝwèZ­æÍ@éë hH×Â4`Z+7 Sç¼JúE¨*ýÇ0,g¢¥z;Iæy’8Ù–Ây­ïÂöè!äm$Ìzû ­ïòÁ*-|.x‡¥ ·ÐàEÆõmy3Ó!{ÈÁaÔ²t\.! ¾3 õ¦‡:00\d¼ST8$kìÜu×+ÁÏó0°Ž}, Ñ£åh)ÎãÒ?ò¢f’¹¾ÞÜÑU*à´úa‡îBÞœú %#dnpùý3Ò¤‘qo‰µt«YÕÝ3µg^²*Ov/–d©¦P­zX¥ñÎó,Læ‡ÆÀdgA‘É µ™\¹½è>ÚðpPVV”$? ÈuoGVp÷n¹õh¤£5à«fÊ× ¥W’…†>†÷ý •’§äѱ¾ÜÖ wq1uRôÇ Ø´Û‰.«ß¹ßò|ä«4­Ÿ«à˜]> Ò€;M+hÒ])I\=“iß”¦5³v<º°>EƒÀ÷Vþ™ðgÞæÀYX†Ð¯ÙšñÀcmE´‚ï°'ÅJÔ/\U’ã¡;fdcHÁuä²Tµ÷5/\ÜÇûP•3lÇ]%×5Žûs%(qì¼\*‡òIyg’å0 £ÚŸS² S*½Äß‘v(èè —º~ Ô)­Âu¡ìÖ·-y~ÀWª•~À®Ù‹Ï‹ôÿïÎ^/NQ¸e"E½êç9hð£ É€Ç sãëæ]zcàm¡”z}m4]ýü¯è™#úœ‰ãÊá´/Jeü#O ¢7ÍŒùç#ÍÄsG—[ÝnëI1³ÖzîZd®jQ+hÏZBë>mÚ7°ž‘üÀ¦o‡€ÍÐà\Ã<áùÁ§n%:%]ËÊÍ, øxsˆ'Pu躒8.]€òø‘Úxš¥R Ѱæ]8Gð»u rÚpÝbqÄ©Á\S#vaýå«V·íXL‹yaü²ø\–NÏ»ËÛ:Ðþ9^Šâ¦Â81¼>PJ® ‰L"ýUÕC–>ËbDÑø¾¹d´J ;ŽÑÍOåìEæG.ɉ ó­V¬sµÈ_J#v *›æ]÷¨U´Ù é݆͠×cY¸|=r ÚBÇÀßÛÙÀ{¼;MíáwF·ÕÀ`sÜ€ ŒÂVâÉ8<3íi_Ý$aÔ½»Gù¶nºBóJšGƒ | y?ô’&‘,y'e M^¨«ëÕu{CÌåüSÊ}ä& žª?.ÃÕŠÆ»¸vw°oxŽ£Ùl+_là=ë7þ-aQq[åƒñÖÀÉX®ÐFã)!fh>ãÅza×ÀÐÂ툅‰­G—ÑIéþñV&ï¡Ò½Z±tùø±œ"]®[¶·nÔYdNix)Õçg>ã?•*oÂÞP*ÐÀnPʾµU™m Ñ’­ãý¼uÞzÞ -¶/@ÇI¡:X7°;Eâ‰6¨õ4ÔÈ¡že2šê“7Œžó ‚œ1oïp-eKÇ?öøakë)-òøb¹:~š—Ábás»|hÁ8%Hlÿ Ü)èy÷E-/·æ$’]¬þG)Êú\ÍÞQ»ôxƒû··°Àó}{³¬b0Ó4aLÎûP- V.~ ¯È²‚Ì /rc%W·ƒÜO=d50?ÔRð_aû¨›…ž‡õñ—Ë?";Ð,?ȵâ£ñ‚qqdÙ“S“ÂÏDÃüã“Ú¬˜lV…N̆¶Î£ÃãñEJe– (gD~¯›Þol`–íCg¶mFƒÑN;À9·rùºÇI¨ iY 89 ˆâÜ­+)¯‰¸ÚðÆq6$*n× ý~†èã0ý˜O‡›£9Û·G _Í£–ýÄ‹ŠÇ#¨¶pÿ¹ù‘²*lUpŸÃ ”KѪK áOÑl9…~–¥6°Îë‡6t^IÀ|“P8ÁE­{³hM¡êä]iÒOÀ<_¶Aü¹yZåó³ÙÌ€²¬* »ýÝrew B·\”¢hàáG_U'Q”ÌÞÚ«ÕãÅŠŠG{ÀËúl·s2f¿(7(9\«L¹4Μ ÕÇÒÅh>`©#®\Êy4Þà!0ä…eR+ÀsÒxÌ P Ö;8£ ƒw6¥\‹¬“È/:•ü´0-¤P‹«üÄë†n×oòbÆl´„·ñëØN³WõµCŽlÔ·ˆª×ß EgeÁ»boL!`w+Z²ÊÑ–=;7\ÑRRæ~äëkJ­9;?¡±2©g…†öí\8g p%l~¡–-´îf•Ë8Bÿè3âÞ«RqgŒ'Üê‚qâÂÒmék¡èË*O žÊuîåÇAÓe.=²ÕøŽžÿÕ¯xýì&—•åwW4‡÷˜®:ãÖDÔM ÌH ;ÚE9öÐh¯Û³fÄMDhÓ¾+•êqiÎÚó Èû¼º0¬ÀYù´,ëÖ†ÅÄ`à* %pé1T*ŸU,ÅR §á (Ž)ÓNÀÚDh¿ 8*jç0IÚîÐ^/–†eázªcž‡µ“Lƒ81«'•y¾q.´ÔJÿsÐ&™ ï1k=th/TŸí¡U!º80®Ååêø\øñ éÈWyksñ ¼l©ìÉä<” –K]ÞO5+7g¥²HhMrÐvwÕ´=-ÜðÊ2~båù|’[—IÅSÔN’J]Íä@´øÀaèýÁÖÀÇXrüøÅi¬Ø³Bb…¾Ú1çÚód‹ 4‘{Á¢€•RõÈbÍ–êGt³ßc©ýŒ$eO*—".ÁÓ:””)òϽàžC¯5–\g°+a%7ÙÔÁ#£q”(>åa ÖTåºÿ~7€üþ¢2ºÃòÃÚÖ"¸Oê®êΪЕA<#p©5Ü]%Â¥ßvïÐ7§-¡Cž@í@B³1únŠÜuèÆ’ÓH` ð1¥~¢ÕÁèR¸Âl†:ÆÖÀÃ;¨.É÷Ð>ðÏ\÷È‘VkóŠ6O¤«ciîòV}<ˆt|ÏBpœê6F€‚=­á~/쵺í¥ìäÊB(LËåè#Ôvy¡„fÓð›zD±÷É¡ñ´jC†¥ÄÉ|ÝÉÒÏ“4U¹ÙÁðÏ S‡-ÙŸ¹3^ଔU)ÿ’˜]}`…öС>ÕâUÂh‚ÂáZ)ßS)ꡨ*ó˜-AÙ…ûéåI惽fë€Wda$æ\¦ °¡·cwŠb€²ÄYCwvì¯àÂ_3ðúž°Ì8ûþ¹·¸H$e¥”Úѵ/g¿¢|(€é…o§n¦8ʼB³âºv»,ëv{S<¤•ò$ì¯é±ØêU-–ªg²vyE†–EË¿·÷ªÂ.8ïÜdŠó‡íiƒ^øã±ŽõDÃiì=t¬ü°WA^«‚§ú\-㎰]•‡6%QZ©kàžþpµ) þ•§"xzhæl·Ã±Ç+ð{êªù?o`ܸ“‹@,ÜÒ\?]¹Ú7° Ù…ÞÌê,~hàŸ½$N‘a~9W<½Ê3y_¯ìŸÝSa«°îã4¯ôþ†¦'[Ÿyµ¦N ‹#+n6pf[Çä:LLʪ©<è;mLi]ÃÂè%Át â.þ øgßeB&ÆMk«Pkz`~âGü–¸¢©0¥áîŸnú“¦ý|ÈË‹PYžvðËÑöxÑsX|Tžùþüd± ›Fîz¡ÍèZ¸óCÞÐO_P+¥“žj¦/@Í%9Esa´ªÅ{ÓX¶îãRÛrÿ_ñò¨eÇxHi»Ñ]ƒ±R4ÂÏŸ§Üdúd¹îTêk6Ó®º‡Ü4 Ñ‘0šT:ÈÁ†ŸNÅ<©LåÜë± Ó{’Çó¡x ʽI><úýWî¼+°ôÉÔwŸa™Ó/½‘•ùŒ8‡jËÁ¯,}=k«p:#—Xd1ÀØ1ÒèH‘¾íÿ‰—Q›\»›4{Vã˜õîKvR&=Ÿi׸_ónì+Ðè”Æ@bë9¥þ0}m›ñá.c+òE†s‰þ¦õŽzzªA´œ¥ (%¡/|Á¼0@Ñ˽ ´?óRNôtª^’¢zŽ`lê­É6/³½O¸^Ó—Ûw‡÷°8ù¡1ÔBiŠäðk*oCÛ¨f)/)f”H¿Ž'X6­Î¯è |k'HÁˆÕ…å\¿Û1ܶçNÿØ Ë§'§ÇÁšÿYIþŠ­àùn´z½Qnëý+ÜÖ'^<ÖÀ)£.*ñâvÃé2N+'j2Ðby ij¨w¥L&ڡΫª'ªM{+ïc´t‘‚)‰»ÿŒÆ¼èò%%¿üçn˜ûƒ5“véÕ˜èSÏš¸)ÍD5Øû&î'ó"XiiDgÔæ§¤HAi†.íðÇàcA¡CáÁXNj—Ïh¼h/j±¿üŸø Ó¥ò} J¶v;˜Ö>çÐ|R!ñ‹ Gk^ ÔñÎì*Y°™{”*§ë0´·Çjü0áæ%ƒ5’;i£KEJËr伤}W–ô KˆõšâHkg…hGf@}Š—µ·XŸfPz|m#`ÀÅHÇã2ɦ)«7ô|åŸ}«„>® # îÚÔlÈ ã wCÍÅK¹IyƒÐ1¨“19ÉAˆímíž‘A1bƒŸêý5Üs_» ÎÏîÖO(½ƒ_±H¶ÒÁlöŽ´ ûúðÂ?Q<ÌMã¸BîpyUðbÙhIV"ΗœšWįxµŠ0w;Ø Ðë Œ$%~}ź(„iÖ&…‘¦Ô§ßm]iý¢w©óµà¢ËY)Á´»¨ˆ¸òãǼ[k\²ÅÁÐ^Á[ï>‹sbÆ%/ŸÂßâ•ÇÐ>^ŠÛ л¼›¢=€fl#‡¾Óü×UÓnØ_à ¼<†ž,€þ4·Pµ-°—|•åÄ–?rR µ#&ýá«v1.†¿Á+Ë]²öx<¬£)¬ù^M¸) mz£rý8‡Æ›øu¯¤ÙÞúÀAܨP,lµZëMKìƒTÛÐ’dë tÕ©7ÛÑEQ,™íωŸ÷/æÅá×ô¤É¼ÓmÀÚðnZãU7™è¾§–30!š]Q~äzdp³Z³97'·¯i$ƒm±òÁàF?³¬˜„ªÁ½0íánìÃ2Qyö&sº?ðîÙ_#½ÞÀ8¾é_塉)ŽÓÙ,ÛjòÇÙ±•„J3«i@ˆiw0G&$›y–“%˜s9ù”{vå¦Ä­¼âxNÊd ôýÉó‹®_ï¯)h­Ç±nêà€µiÛµ 3ƒ«`}›‡ãú1´÷_êÔ¬xòÁF륎³<5PœÉ„í*?ÙD"ý27¸¤Ñ psœ±%H×êˆbEQçå¤Ä=EM?FW…8`ªNnߟQcZ˜@¥ÇÛô•Á;ØH€‰ÖÕyÿU/Ú85Ÿk=<HÖÄ–ÉPÈfo+è„»Õ~i¥ý{ÚÆ0+~Š4“M–çk—Ð pœ|VEͼEp\žå ÷m:!æÄí'ûþ¼åÕ6pÈiÏ`RçoZFŠРýºc~²3û¯ª‘§â Œ¾=c‰a¸ž ·Ûé ·f~÷f{ƒßò²èåh( Õ¸hñiÛÅãºãŽ;àäÙiâ21Y gø–LjÕwüYoRnRà `oNgÈTíqTRÛlëRZlç—.jÀ‰DóëÑl›“֞ܶû  7øÎ£ ÒñÅñ1Áúâúœ[ý(xµš¶ ¥°M¡:µ;ÐÑ¥Bƒ±2‰äí»žÆ³h˜ƒ¹¬÷§Fâ¤(û9z* Œè¹ZÕæÀÿŠ·Ó’. +ð³÷@).'9t½—:q”.«´õÔm€¬×Ѝ,†NŸ<µí¡‹RùŒ‡Õ,€)[ÿj ޾ÒíûzÙ†prøÔhï¾ÐÀ.ØÎã¨Í×ÐÄÕ«Q{¢ÒóƒÀ€ÃiÕk,ø9%e±¸ÜÍà–fÞ EFµ{C.Ž£ÙrY¿OP&Q>²£³7n§ÞOçr¹ûêþ|™‚nkãù)f¢Í ÔCÇ‚Œ±¡kI;~>é.Ýù1‰™ÌqØä(9¤ÉUX»wCO¹k¡Ä¤t )Ëål6E#ÐñîŒ]p ?ž,†3C@Tƒ˜^þ*IèÒõz}Ÿw„y? ï€`Å)žå°w¸|¢ÑÞy˜!ôóGIßsöÒ5œp¬”Í*l.2ñäÑþ hMX­}ÃûÙÍ;”Y–+ÒÇÙ‹öxMŠ$µÂdòÄH‡ŒÙ¨.‹Ûø¬Ù÷šwàQÛøA,;šÇ„½Xñàc©à/[¥?­s£$+òŠ:ó¯qÖ¬ë BüÒQ¶†nÙño¥F8,q¢h+£—Û# w¡Æ™Ñ~•~Ðë…§}!/Ï ,(ífóÃAw} C£1,MJ†­ äGŒEµ“•YÐÜQ•{o<÷)ÿ^Âèô¡^â»Á/z>øýÓÁÙŸîÚýÁó.9•O¦1ÄÅöí·Ûˆö‰¸ífàL4È¢°õX¢É)O8¿v}À)—ìœ Õ~RN5`øúo<ãÄr ‘8x@ÛwGoPs¼œLÔö‹ù@A¯þ‚—‡¤ã‡i†åÔSIäø`-Ъ¸Ö\û>¶¥Å£íÑì•¿'](—ÊèÆ6ôA³¥rµ'SŽsuÞ½+Ÿ­òr¹<éнaòÃéÓº^Ð $tÒ¯ÊÄ7x‡àÂþêE_e‰ÍÆÉ/JjÝÜV÷èYº0(g£öâcŽÑ]‚åìq¼Ï¡‹Àb“Óy†¥¬¢²\&P{ãV¤¢âpë£5¯yÁ˜´ q¼Sò¯íúxäÉXRéYrýÊ:È­ü Ø,‰gÓ/à¶„[Šèd?‘9n¬Moh/‹N,¨›³Ñà Á²?q5Òêý5¯ f%2fš¿ä 1mþb%\x—\hB97›’Ûrÿ“ÎÍüz2g<Œµg6°ÖXÏP&ôîÕ,f ÓXéò®ö; eÞp÷ †«þž%$9!'QªY/þäRù7°Z…«]½«„Õz8âjZ‹«õy™Š ć–“†Wƒm„"ºæoóÎÀß¶bY>SÇÒ`°†æN Êë˜ÓQ7°kZŒ«èæÍ˜e#\cÕêèÀR0¢§²rÙíâɳ¯xßÀü+SO†sS5‘ˆ:Ì]ÎÒ…Ö»°{´òƸ;Þ¬ï^U[WP@I–È!Ʀ*é3[÷EëÈÒÚ ûù×.ƒ¿uq º&…«\5ã2™Aæå©®ê¤û°[_ÆÎ¬[÷d>Ģ3ƒ±m‡ù‡SÏCqšø(¦•“‘°#9‰ ÖxôíóbuE–”«UÁSûÒˆ=¤3òuçîâBÞD½¢æv:îˆ¿Ñæ;ÀŒÅ³âDQúê _%LèòJ Ï­XüýËYNÒ27X¦^ŸŠN€K>½ÝÀû´[Üz$—‹,ÕW‚v@s¾áW†Ç N’Z¸lmpiíI}û¾}–“SðoYòC=7Q\¦Ÿ¿' ÌLÉÐm÷ÆÆåìJ-öÑ .òúT£LÒ“Ä™`ñ»Æ\Y1Œ^Ê›AýÀ²WFœ|õvìÚ?‡«Ÿ~Ëߟ_bq™L³Èsƒ3>À 2rºž˜ŸŽRÆ6ñòB4Îêèñß6n®>êžÇûe„cÉ@8ýðTÁ•Ï`Ø¿nxÑåØwkónŽ·‚Ò þm«Qè£ÐвÔ1Üΰ †1ªœ<7ØÍD¾Ž]¹^‡uœ=FÖ‚bfR„²ù )g$%gð̨„QÇ}9Çù“;DZ<ÿÖ%ª‰>Ú—Å΄Uè»påðš(± 7c®ÎNqœJôé‹6%?ÕÓÓS­o…p¡´šA%}BªxdÔf»#$û˜4¢³ IþÍ‹ê?—Ë~½žë;žNæéÄÕ˜‘Ÿ XåºúdùDÓ)a¿Ÿ¢2Õ°D•ÂÇ=zæjvyÛ4p<Õ.Ú¨òÝ7+g4ÿ€Å¡¹1XöäžÌóü2‡{0ü@÷;«ÊÉ Öóå™áÕÖnFº3§padh„@(6‡UïyˆV3ê s‡ÒrQçeЋßâhf…ÿˆ%(£'µXœ÷O3£šëk ½&ü˜ÉDá´x‚ÆDçêÙµy*2*ŒF[ÜFu-Œ÷ôИH Ø áŒ~Op8º›ñvücùºÂs£B»Q„þékµÁétr…2êË º±žî¶gI’L^åw¬«™ß鯙:kÓ4ŠÎ°pàñËÏí î+øG-ñér †ß^ëGIDATc‘ª/ï6‚¦ímãåézrN{éÊ$ÌÀjr<9ýø˜Í´"‹C³ö.Ní±çó1Ç­XóLo@5ðO[RÁ¿z:;=©/Uu™È*ѵ¥pŸù ~#NŸÐ[ S˜v׸º²²Óà• ´ÝfÛŒÇðË^XðO\±Yã²P˜NÏŠ‘I}®ªgFÂhÌÀ|u5-`…‘ßÒnpÛká<à´Þ°ׯ‰Ö2óÆÅgWFCj6jØ #4÷Ù´Ë—Ó Q˜Ãjqj߸]ÔfËL¿µz‹ˆ{Ú$ø'/ê‡×6°aÍso@Ç›#´e!+ܵ—;¦Ý¡}²Ú×(¾ ’¯ë^Ç9þ¹@ú¢”KóVM§†$ù/„Š{U{´׌¯³`p¦½"½1ðŸ±Ä;ÓnCïΟÖÕÐКrª *¶«( DêøÖUÇû¹¶…CW&𴸂¦ TÛÚŒúZ£j°(;›Ñ!š!„ž ·ìh7ôƒÁüÇ-Q5ïÐ[TÛÛ¥¡jÛOã¼1 }gÆ×Ž"/~Eš‹¹ú¤ÕV+yuOØ m'º/]»yØEW˜{z84Ûñà½ÍCæ¡QîÿìEÆTÌ®wC³9ÌF¼eßh·áoÐ络·x üo²ÈÁI Uº"ã ÆñPȼEžþá¬àÃE‰y9W¯F©ÆÇå,UPŠ Àïõ{ý^¿×ïõ{ý^¿×ïõ{ý^¿×?pýÿ蔡Ìè €IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/phrasebook/0000755000175000017500000000000013024000134023641 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/resources/phrasebook/phrasebook.xsd0000644000175000017500000000206212321460730026531 0ustar neilneil00000000000000 openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/0000755000175000017500000000000013024000134022615 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll1.png0000644000175000017500000002050612240014740024025 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>ÉIDATxÚíÝw|TUþÿñ×9÷NË$“ÞHB EŠTAX,Š‚€+}Uì âÚ(ë¢ *°P±®‘&6l¸ ¨)‹ˆô"„„4Ò§Ür~$¬~ýíï'_ÙuÌrŸyLÜ™{>¼99÷Ì™{„ª‡ÃqÑ>‡ã×äÞqZÑ£}¿9a„%,d°‚y(`?ß& è€Ž8 ›<šmè@' #]è ´¡ í€$’H$Òéf¢Ç üOyðà‚Ô‚ Bñ³Ç&…Ð5yU¨4µIÍÞ·ˆÎ ÆÈz|küWûÛCà¾øÝ !þÑ+áUÌ \ø䇢H<íÆ9œÀ×3»šMÍVPÕ²²sÅçp4å``ßKP$òûüL|®:\£‚êP“…)áÑ.q}¾E1»bûCͽ ?†š£ ûÝPµ)Ð"þfp]ïë±@wÊZ`šØ#<@Sñ¢˜"—¿Šgþb/€=Þî¦úac=jŒZm_êQÕ“wÀ³Ô§b¶Aâ²$oòОÓio"Ú•ümÎ,MRJ_)}vªoŸÚ¶¬@éãGö@ÀÔ‡›’Oý ȵb´ˆ>£Ld€=Y«« üL¤Ôè•ÏÕ̶òœšÁ¡Pµ+˜É#ÅÎ{AL”ôA 7hJ{¸W¶Ð.n—ù2„’3d.Ã+#DÎ Î{±8â£Ò¨vCfYãöM§B·ë{í# q~Ò‚¤¾ Ë?Ëë£]Íß.'ðõò7Yz¤lê·vù3 ã O¬‘ Yç&¼î»¼­<·x€(ëy(¡ˆ|P¹ª•êƽæë%…/Š„!øVèžðµ7Ú˜€¥Ûw©åÀ"YÖ€Ø)o–ïÝ…&At!_D€‰âcX×[ëL°[·™P{ìï­\°>±_SA0Gkgz³€Þ3]Aë!í«;5‡ô 3:f‰v5»œ!M=k³5Óì¡M!-XÞ/âÒ}“ &×»Ï[æ'ö>{)P®. ’q½¿Þ[[±Ñ{ÅŒ¸b¿“ômÙ¢_×½%ìUA :&Ç) È¡ RÅqíéBèÉU¢@9 6ˆ'ˆÀJR+îƒorŒÙÛ²jr¿mZédẗv1ÜÀ×w‰ÑdD>¡5® ÂG zr…z¨aaÀ…Žö£k¨%j©úˆÏP×zšoQ€TSø(üÑ1 ˆðÃoÕucïä{ëÿžŽ¦Þ ]&ßÅ ’Ä*± ô"Í/óAn}Y Œv%Ûœ ²zji45^b°™T‘ ÈúiÈŸ} °±± ˆ``þä±îçæÿóÑþÑs/^¼ÀAò) k˜= ìõ4A_îyÏ·ä­F_í*þö9=ü ©$¢'o±XDñ GüA à'ð' —0Är±BÜÌe?@õUª€Úú%:ò\´þ§dýµÀaJAQΠ&kºR@¼¢_ï)-]«=\MWœé™Ÿå¾žXÁ'âÈb›ü¨|5„Ù`7U©|J(bñáýΧÍÈ{‹Ú¯|`=dYözЯõTù.+æ‹ØÐ?‰¢]½†Ã |=ùÜ$Ÿý×cº ìÝjƒ`±öX—ÛÙÆn)¤ô+œÐ‹b†¸ÌͰÙ*Ÿ«^[s|×ø·Æ ¤ËR R] ?•Gå¯ñç¿„øzz+× }øoûXרµêKÕ„=‘5Àc¼Ìb ³hGËxb:²†jA|!>¯ÖRë/}Žk¬¾\M]Ç\W€~•þ–ÖÄaQ"¶®úi̯SOìK™ áÅÆ!s”„˯¬J‚˜±_Bz‡ŒË3ƒì /—WG»z ‡øzî÷Ýçyî‚ÀÅ é‰;Á8b=¥ŽCÍŽÚ/Bÿu­º_ÍúÑCtþÑ:::ˆ®t¥=X×Y³,j–Ö$ÇÁñOŠ”ÞÅUÇF÷€ò½eWW< æ÷æ§æy€ÆäR÷–Î?/ŽÅV^÷B¤ÊgþJVWZµ£Á{yìíaújjû´›Aš2^:c÷“æÌÃ×sMr-qïÀÆÀîøÉpìÀQºjÝ‘]áO@çqæLë˜L2 jEøŽw:~ òìY½3woOØòÕÀ¯Ï„ weãêrH–÷vN2œ_ÙÿüÞÅÞ)csj°_5W—‚*£‚JàFzÓ,·ýµz‚S#=Ì\Ð^v布·w¢g;ˆBq»(òhBn´«øÛ羞çAÏ w7HœÔ&IÁáv1±¥ö®Pp‘º[ͱ›l^õºãD<ñ€b£xÊ¿©è]µ  »m²åOP5¦ì’Š»!Ò¾à‘csaob“ÃÙ}AOô\ë~’÷'Þ?D õWõ°‹eÀ$¼Üö­âZq1ÈEÚíˆÍbíª5;Dãh«árÿSËØ ܤ-г€±ÚÃz ˆÉL³Ä£&&PI5À †¨ þwáþ ¹2û‚Läg©÷%wk¡{Œkp)¹Ø‹¤ÔN4ª½î?66¨Xe)/ð{º‹$¸®ó¬±C¶ÕÎv‘.gHóS‰ô#A[å:Ï3ä!=ͽ ¬¥êû)ÐÊHµ@#–P sœrP¨¬w×>ý2ˆ]‹ xf'öŒÿ3ˆñ¾­^ê ±F¼r~žv/Èrm®ÖhL’8làkû(Ôž¬ ßÁ½F–ýÄI^œº|½b<þr`B´ Õ09=üOˆ¿Š•b7x½þý±—ƒ6Û{¦o/ÃawdX ¬.öX׊ËÅÅ?>°n¥Z΃<b“\&ï×sþtßxмS<£[Ä3âÏ MÖÚk¯ƒü@šâ `,ýéj‘ZÎÈo[ä*í%WVÍ N€o¶¾§íZHÙ‘Fº³fæsÿrµ,5ÊÞ߸/žK¼2å(œP’QžÁBíÂ@ĉý|ø£O,.û@Íäi_‰§Ä5àžïŸÓ \Ïx÷_€çíì}`.¬‹<Vk³¿õˆ‹èI;àå¡:3TkŒƒÐV+CÜ)o¤Æ¥Ÿß'|µÑ®RÃåþ'äj¹MæCfl£g]-±kÊn(¼§¬sÕŒ G€¬û/ð5‹Ô{ ¾–—K÷å{×î?º×ƒf穱>ÜÊÓcL2Î¥nñZSÄ]â0ãÔ`U dÜÓ<«=• ‹Å]Ñ®RÃåþ§¶³m³Ýw©¯<‹|ÛbVCM£Èíæ&0vÙ¯¨›{EZý‹ã÷°ŠµÀ‹"VÔ€þ¹û÷QÐÞu-ÑÏÕR½¢v•îkŒû#SYo{9N¨}*NµÓen±žãaóvëPMÔ¹jt´‹Óð9­?Õœæ4±X<)¦ƒ=P•ÑjÏŠä˜óÁÙ_«?‚|YL[ÀšP¿z²Œ ª€RµŸ#À@„xäD=C1F“r¨ij™ê öë Õ*ÌS³AÑ̲ëÊχҧÊÌã›÷â¦kÇAmTÙêe 5¿çæh©árzøŸa RWª o¼n/…ꑵ¡g Ø&txp¼~ÑØÅô¢+uóù. ˜Bƒz@ÝÊàuõ3A´ÃMx€ê)ˆ|`$wC¹Yumu Tø\q¨|±zQu"¡¦ÚÝÑ®FÃçþgÈäÚNP¯ÊRm$ä_R<©t:f–¼U5^ÍSÿ.çŠn@KÑŽÀdÎR—‚µÁˆ ÁÚjͶZÒ‰+€o9Cl‡ò„ªûj&@~Ò1Y2Ê¿¯z¹z9¸²]åúu?0nQìC gˆ!¢=`G»" ›øŸáíûÆ÷;Hx9±&y S¥ã*ޅ龜>¶‚BW†/±ž9< z¹6Y €üPDDŒ]á÷Œ¦`}nœm¶³‡±.…’¡åM*·B~ű›K$ÔL®ÝŠƒ¦þì™S sLÊ ¤¶ ·È#ÜÖpëË‹ó/vŠœòý o[ß|_,¤Ü65m,øCþGc®†ð„ðY‘µp4P´ªtl—_X肽óÇÞ ‡W\Råß”n-o‘n¡¸ðÀt^b>Øìö@pÅë×è»!itüƸN31ÃL Iã÷ÇÎm£Hb„Û‡kÂ_ý˜}D¹£]•†Ë¹hýî%î¿zŽ@ÊÛ)ç§ž ‰õd^;–?Q\‡;jE3 ªguËÚ¿Ú.¾;ÁhYû`í4( ª¢LÐ’jc‚åàß­5Ñ6CjnBßødhéËógßÍŸk¢e±„Q ×1íqímpg×CðêZoí06ÿ0²ÁóGO¶“ûÿ=§‡ÿÞoGß픘Ÿ²”’Ê÷Á—âýÌS­ª›öo<:v·âV0»VdUžö#‘ÃÆ°¿öï‹I‚@NÒ qàýÒ¿Ï÷8°žeÜ ´ær.Õ‰Û8jùl5.à\´vU.'ð?gCš©¥kƒÀî,®;›Ôl’€(ñ KÅSPÙ¸j[õÅPpCþù…}@ލØ\µ¬{YÌ+`¼7Á?òþÖbNÓýz$mUÊzàlÕEM¦°Œ-`~m)ûI°¶Ù#U!¸»÷»/m–ª5vQ.'ð'I¼+vŠ" «˜¯¾ÙòA =‡È^ó˜UgW«wBQŸ£g y´65øÈ6Zµ6 TY⨄— ³²qïF q[ÂÅRP³YÍÀ—X4ëY;ϾìiÊP ¯×ê Ï–¹Òéá1g ²*HÙ –J¯¼"7ɦ@€,²AÜÆdqÔ.®\ å’ÖeëAjŒ2kÀõ¬·Èú5)×&.„Àáø£aàmçî랬çvÅ”qÔköÇj¨ÕA9@’W‚8Oô’½¢]Œ†Ë üÉjDKZðÊçå‹ ŽÈ±òÀO"I@sq.]ÀšgL1΂HaíóÁRP—ØìÇÀÓݧïMð/Hú$a7h úlí(ˆ6¬QÛ8üx€Jj¹Öšnõk‡ýµ<ÝÝWyî}Š~—6>ÚÅh¸œÀŸ,éä7ˆ"ÑÎF‘¸ð ¤Ðœ&`Ÿo®±,0—GŽƒA5·Ú·ë o¡÷sð,,í²­v«ÖÔ½ª¿Ò‰Ç TPKŒZëIÛó ûzƒg‰÷¸·-hùòyé,ûÅœÀŸ,… ’ab P-°G2‰ 'ð'KÔ÷Ä:›€¦¶!€ *¨u®º@] âó7BÖÔÆFVÔu ™; ˜,u©ÀrGÍ•ÀDuL¥¹t©_£ê¿ÍTw»jº0(çBnl|8›–2'ð'/@ÝlÌ ü€.îÆ „°ˆÏð2ï€w’§Ô½¾Nx#ÚgÉ—$úÁzØ“æö€ÕÔøØø Ô­j›Ú 4¦«èZÿ'¾¾' MÜ èÂ%@ü*;ü—s²bð“Ü îMaÜ( êîìò)àÈDàÚî®q5ïÁ¤^ ·€ÞÊ[êöÓÆ*c)¨‰j»òt¥ u÷”´¨ÒH`´xK¬1‘ï…È!/ÚEhøœÀŸ¬R8 ıVƉerN¹€7 Ô*™N Ëò ðÝX[ úÅž­îsÁê™nN®¶7)€lÑöõ[ßœ|#a:ÐT¼Ï@'Ôh¡ásVKž¬dqý€5¢X+1GæÉ{€íÜC¨ã”’\ȧj!¿Ì‘½À=ÖsLH]ß«/ëϑֆjœZ©Êfô¤+p”ï†5/ pz…x~Õ}bÿK9=üIƒù«˜ú`÷ž… -½™« ì¡j‰šܦ&ª‹£T׊åÌ9Ô5Z0FMkj$×è LQ•D&¿£uý{ÝF ~b”øÄh1Q”±Ä;[Úœ:§‡?Ib”|J¾WâÎ$ߎì¨ÚUvÍÓÁÝç™î½ ´¹úT}°R b 0]MW­Á`[ Àil3æºO…Õຊö€b;ø!ðÑ›/~±(Äï|ÓéÔ9=üI’ãåcòh4?+?»;øzÆ­ŒŸ›J><^¡&áû"c@äˆZ¾¾åe–*³_³3Á~Õìk> Öë9ë~`²ú½dÑì_ί›˜ªù¿¶µtü2NàO’Ü&óe$ßž¢¥ä‚gdÌDZ/@éWOÖt„Hs¸u5ˆ¿q¥8Ä¢‡H}”çqÏ Ð”»» ä³"Tˆ 8€ãTÿ‹7<±@ÌSÿèŒßÿ-œ!ÍIJhB@Ìß ß¥àÚå®õäA°I¤Ì<¬ÉvÄvE¼¡Žl¡}'·@\«„?Î÷=þÆ1€yµõ;³HåÀðNGÖ9Ñ‹¯­|¿þ±õÉž©ãÿÇéáOÖ9t£°Œ!䀫Åë`ß Ñד¸_HPƒU®Ê­§6AK€”©“·‚·"n£wXÝí `»èÏx`Y¤ñÿĉÀ/®:§þye´ ðßÁ üÉr×/êjB) ÉúÝ ]÷x6€ÈAmàc%o€ö²ö±6 jç®÷Ã1C¼«!ØÑzÂz ì\ÕQu1B4£)?LGžèéÇÔ?\ÿ‹½B£#eÆ% :‘ɵÔö6ë;k8Xc­ñö*°?PG”øðâ¦nË 8—dñ{WÎÀF|´Ûð9?E®×T÷hy Ml»VëIž›~È)x¢èÏzÌnüÜ2M>Ú\u»zÂóû"A0ö™ïY£€œ!ò.$¨WÕ{¨Õ=v(W›ù,Ú­møœÀŸ"Í­7×úBÆ”Œ~™]ÀsKlA|<”<_9.øóck&¸Æˆî<ú»ÒZ 5MkÍ`„o‰TD€8‡Ž´bñá.TJÍå·ß³›ù–/¢Ýچϙ¥9Eƒ)4ðÌõžK@oç.ó¾á¯TP[öž›ÀIƒžl³_‚*Yµ¶újî 5 W‚¯£û\w žÄ€¥ÎR«AµUj)ÏQ. K´ÛÜ9?U'fUê?˜’­õd×hÐçyzúÎ1_ âÀå­ewp­Wµª¦W ¯ A0X;,ÔèiÜ߈šÎ1 ¤rìU€©Šì™ìãh7¶ásÿo×8>’P )Vf¬g ²KŠ7!”`x ?x„g‰Û€ÚY5…µ>ùBKBÝéA` ñ¬ |ä&{˜Ñn]ÃçŒáÿÍ&.Jêzä¼ÕäS(ý{ÕmÁPµ#<Øð€wtÜþ¯ 2ϸË<F¬QnNòh"²~bKL¯–xY|@*¢Ýº†Ï ü¿™ÿ¿å?©­ÒǤ•™‘µê8Ô>À[r4x^\²Fk«µZ=¨V}.Ð[ÄV@g¦¨»[A"͢ݺ†Ï ü¿™#'»ƒÛãÙç}˜êÞ3 ¼‡âW'L‡„GS¿I €÷C_Àëí 9H6 )PÇ«níŒX,Æñˆ½boÙ$‘íÖ5|NàÿC´W´¶úÃÞ»Ñ[9nHÛ–}_NSˆ9žØ+þqpñ>èÙ bŽôÉýÀqŠ)ìúEcO2^\b%ˆi@&I$F»U ŸøÿÏ`Ï‹ž}Ð>þ¬`‡‡ ç®3T˰r¼}ÍÁZ,C²¨¢5逷~Uä‰Yƒë¹‹éÌTýN#ŽSâþ?DÆË™q/vCìµñE‰£À5'&!pøRbvÅÜ®{ôÅúV €#šÐ˜L ‘8Cü p‘"fP7²wzøSæþ?åÄwQ_g"C!±6¹yªùsGä}újÏ_"¨›Ä81„›ÇÄ à8S¸Ô·öqÕÔ2•¡n¾å{J¢Ý¨†Ï ü¯¤ñö&ó–ÀYqK»âÏë1ë 86r‘Y æ«Öjk DÞ4BæPP†˜"º€¶^¯Ô0\LӢ݊†O¨zÑ>‘ÿvªœžtƒª¬ £¼#l_·¥éæePþtÁØï›€õthcõwÀ¢³ìIk³róâ ëíæZÙåÙ³r Ÿ­ÖMÍ~1ç“Ö_‰H` ëÁ›×š¦´œÙ¦ wô\ã͆ℚ£AlÑþ¨ëQÚäîfBã.åŽ9Y”€³£Ý’†Í ü¯L»_û“v ¤íM ¦æAʆ”¤\°ß°Óìb Ì>1´Lm†Ö ä4¹OvþÀhFFûì>gHã8­8­ŽÓŠxÇiÅ ¼ã´âÞqZqï8­8wœVœÀ;N+Nà§'ðŽÓŠxÇiÅ ¼ã´ò€«ÿÖC#—%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr1.svgö5…ôIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll2.png0000644000175000017500000002046112240014740024026 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>´IDATxÚíÝg”Eþÿñ÷·ºoœÌ0‘!APVp‰ºF”E‚DTÀ„eE]QTPAe‘5 ¢ˆD¢€ ˆ. ˆHÒ 0LÎ7t×ÿÁŒ8žÿðÛåxaèד9óàÞ[õ=Ÿ©©®î[%ºÇY@EºÇïÉ ¼ã¬âÞqVqï8«8?ÑV6ó=T^S™^ñ-&æÍ+„œƒG'eÂÑï²g­‚ÜØãsn…’ú%ñÅ@@{î¯çê¬SØž]U?ì¡ögöÐÏèMÚŠt‘Î\â¬ÒT[ÍVƒõ5˺ö›û.Ûó"þjÿ¸½³¡pôñ-Çþ œÐôp¢fÇÆÆ)ýëÍÎ(‡”i©Ñé9ð—:v5à¯ôý%@[ºK_à(ÅL²ÉÂÕŸëÂG Є&4zp1íq ׃ 4.tSøZ¨ü¢rnÅk`x£¸{»ïóLW¹ëoQ›ý—ŸŸ0 mäó#]ÍÓ—éœ.ÊW–]UV‡â÷Ë|BcJÎÉsAâÏRf@½?&}÷¨õ*O2¡ò¦Àœ`w(\T² tô(þ¦¬”7(§r º…‡Ú;AúŸš#!ü‹}¾Â?X³­b`muà¯æêÒÅ<9¯VvCI›â»àp³ý¯ì .‹]kÞé]âC±o€¾…hzÝÒNÕËÁÕÚU×µ}ñ[ã/‚:ã6Ä‚ÎÒ%úèìåp>—q+p!ÛÈý7²¸x¸úƒsØB+ ;ø d—¬“@gÇ T+ýÈéÄg ÍYÉuóHñÊJ {Úüò÷í+ aVâý‰™GüÚøHó4澚Ý;ß:¡éM@-“G¢ƒù‹¹ÑH‚ð…ÖBû6Й£¤/»X Æ^ã6uH#yxNzp1ЉÆÄæ³N ) å_•‘K ðCØ,Ö+)fs?SSês¡ãG£‰ 楪we.„¯­Xkyxc¨M¤«xúsÿ«£ú6ð1ÏQ<®'률÷ê"2€A†fÕÊ–þšlÐ#ô# /îz#=Ÿ_WiN\­©J€ÂßøüT ¸…<ú÷Ï÷+`#€Ì²'êMÀ5:Kǃ óXÅ®ˆtOβä¯Ö©UP{ÌtwØ?P*Å`º³= 8ÄQŽÑDá`;KÉÑYÀPYÎ4ÕÁxä~9*ñ‘.âéÏ |5ßþ•Qà iFÚŸ3úCèF{‡ô„âN%eóv\ÃH›¤½Ç†ÙØØ€ÜÂ…’\*©j30Yõ56Èqµ-ÒU<ý9¯•ugÔ‡ñfƒ²†ý!pÀÀ-׺pNI°+uk]u±9L®ù–Dê™â0„Öá1`ïæ ™î ü£-0öšWºÚGºŠ§?'ðÕ|q¾Ÿ}ß@ê´´Ni» X¦ÛIJ ʧ ô`ý$Èí\ÁE¿_»äiÏyÀ[Ìg)”-¿¼¢ß±Lý$tMZ–2¼Ê™¿(ÒU<ý9­¿z–Çx \†«Ž;ôó²ÌµLo–I s)e!0wõ]Ҋߥ]áV¹t޾Þþ;Õy=N®ö1qЂó˛υ¸âø›ÖV¿¦Y¤‹yúrÙ%¥â}Lž4æ~[6«9Ò0p×o¼ð×{Õ…#d†¼-S@õRT;²\殫C:ì|û;Û ú=TÒÉ í7Þ·;-Iz³š_ 4©²a(쫎2ê<øX݇ÀãqW¸Gºz§?gJs¢É%ÒH½¤î:ª™ê.À •f€MÙo.+VWRFÉ_å°çX³ì½Pòbñk%WBAû|oa ”Î/É/ ök¢µd¢<+üÚ㢘c€M:­@wPwš‰@¢ù{¨WT¦aalÎúDjæŒð'òÒ”ó€ûÔu+ȵ۸XEM‹¢êÀûþãu& ”_MRÍ¡¤mqT©Öf¬Z»þkÈš{eþRHó×;˜Ú:¹xP‡Xˆ»1þ…¸‹ÀÂâ?‚ÔÕØ’4å2éjš¹Ùõ èFæϹ /Ëû’lâ>$ÒÅ;ý9#ü‰bhÁÅ ï©x³H¦êd\2C^å5à<Ò‰‚„qIJNVˇPÔ¶dZiwÈÌÞ½8³7˜ùÍâï?†=/®l¶¾öŽÿ¡Õ¶aPÑ´´gùN ƒü ß>|x…B±D ¼È«z"èõ:V‚ji¶s¿ F÷}žö@gÆ03ÒE;s8?Qo¹¿€Yâ~ßãõºy¯ûXÚ=tH×ÕMAê“JH]IA¢$Ž_›»$¿ìš»}Õ/õÀºn·7³/Øiû–,†’ׯ8:B=*Î]—-þêÀ(›¥Ÿô«5ÃÞÍ+ Àœá)÷Í„¨×£ŒÝ‚j§®tÑÎΔæ²^ŠÅ€¨á1+b?Û]šæo å·W\Q¹”øžôÌós·ùð¶þJ¯¹_fòT\Q²¡ì8v>6êx[±ïmÁõ20˜«é·€¥r›€rqðWß`ªšÌ ÂO|ׂ#CÂÑ›ó6Þþ¹u§4z’»Ô›SOj¤&«¸HWíÌáŒð'²MeCZýzk2>„˜›¦$‡#ëòæFAù³•#@e'‹ª_T5×Γ§åGÄ–,õ2L®Òî Ë y˜ ‹¹¤« !°±þý¢S~–·e7‡.wÜ^EÏ–m¯uaŒ ’F&mNÚ*¬âUj¤«væpFø¨Õlõ $÷KÉJ Å so=š û²ÚP– ‰/ÇnŽžñ±,“® CTêñ é×™ =ÀÿY\FìC˜f¼j\ ö«\ÄGÀ9Œ£ÈfΑþÀx–0ƒª«VMõø<@/ZB¸‘½Bå·më¸.ðÞå+ÿqÿÿZ Ÿ‚ß\5rü&g„?ÑF0ÌiF#c3˜éîdï`yÔw2èù\#KDñPI•À»¼À,ð¾ê»Ò±½nŠ‹=ÉlcÎk-P t“Ϲ¤Ì—æ é/ €6!ÀFcÅüÂz!â—@™Ë\“@îPÏÃþ­½ Î7>þ/œÀŸ(±úÙ•WÏH0Ú¸/ò¼ æe¾?Ŭ­e·Ñì/ì¬o@PHN‰ ·ê†ºØ1z°=d¯ë©€|I7þò!³¹ /C9°ª×Ñá+ÉÔ›€‘RGÍégÎsOY¦~ú¯ð‰³ùá¾î…žŽÞ&sOÂ]‰‡!P޳@Ù*óøŠµ ÷1–aº>Tž•åS*³A²í%¶T õéúvΗÉÀùr Q Ó™B8qžºä²-õå 1Ãu.Èê=uk¤«ræræð5ð/ò÷ñ‰ý“z§´…‚‚}»rJA_Ø6 ÁÎô%ÞÇ€÷dœx | |,<×T†›€íJûvP÷3¥@KùZ.Ρon–³ 011€ *‚> wëýÀ2AbÁ8×­=‡@†?šƒª÷û<ÍS«8¯{…[ÜQà_5'*~Y™¿¦p„Z˜‡ÇCã&?¦ßêsuX>ë«àÛ¡8L/[VqÐ×*¶ãA%ï©A òM±¤RúJÐŽ_h 2F†ÊµÀm\O/(íS¾¥¼ T4 ÎÔŸAÝ…)÷¦%@TntJôÞHWåÌå¾®>®ŽîhˆÚÕ5j?û„Ç[ƒœ[Š»ö…#Ûçå„„ÞñáØåèˆÐô²Yå½@—[—Û³A50Ÿ7;Úü ”ÛøD¥€Ú-‹e0è¯uPŸ ’`j¨²¯Íy0¿”ߦšûæB£/›ö®1OÇn‰»½ºq_Dº:g'ð5pos?îºâHˆNx bgÆåć6åø³n‡Ím~~mÏÐr{S¾ eK–ÝÁ.e•¯5ÖkHc®ñˆe™çƒõµýþ „ë[íÅ|?T¹ ^(NÌŽÈë Æ±¹I_CÇIÉþ”ùµÄ—?héÊœ™œÀ×d=Ëø<ÝÜAO{ð6õ5ð§@êmÉ'ßë’ÿžÅ,™^v¸âàµÙq¿-g^Ľ^ vQl\ E£Ê‚{`û€]/g¦À¡Y…7»!Ü1ôxسÙÒIÖ¹<þH¾£ÁцAðä{Þ·d¢Œ”ƒ‘.Ê™ËY¥9I*KÙ*Ì}.Ó] ‰Åu¦&¬€Æ3.O CLý¨þ~ì=á Ã!вlJÙ.Ð=¬úö½ ¾1o6bAFšYæT°nµÇØ«!Ø.Tšö ;Ù¾¼!÷b÷ÓÑ?Û; ¢>ôõswñÉ—Üé*œùœþdeKÉÀRÕÞxô߸•í`L0–«ÐÄnðPúÈþ$eiRìÉWÍÔ+ M8¬WƒçIÏσ;$å¥ÄeÐöÑVO4ÛÉ ë5M©Öàpwk°™R®‚ìûêð.(ºÿñÃ6d|ÚºÒªžHWâŒæŒð'Ë$…z ­%_êñ²Rv‚,‘y2\“Ì|c,¨-Ì×€•Œ ½º¥=R¿ êq³Äx\7zzî÷íîX÷ðˆkŸ»x6º–¹ÁÕ¼ÉÜz”ô•:`=l»õ àm¶ýºóã¿çþd5"ŠrÐ7ØOXƒ¾Mϵ‹Mú;~©ëê‹ÁnjgÙ`·³²ÆÏqîêó2£ŒÎ®ónÐ.ÖèÀé–öP°[ë±ú5ÐïèÝÚ Èzc'(Œ” êº\Ö¤RŽ}Œ|Š€uR"ƒ¬V[UOà|n ÈãkãKP-\Í\Ù Ý$Jz×°–-@Ê)L’ñƒ´S#ÔPÏÇÍ?í¹U‘.Æ™Ïák`ï¶£õùÜx7ð<¨[x`v3ªm@Sêdq„c £å¸JÙ¨(ÐJ®c¨<£»‘ æ…îG\Ç9’*a`/ßêïZ‡¶´¦%HX]dì9ÇØhÌš3DÆEºg>'ð5/²V„×B I@²ÀX«Ò\[ÍWÕ %’`?G€»%`•ªP_>†KPb>f$ñ°ë «#ÈÕF¢€Ã|ÇVà6³ôŸô(žãJ£#¨íÆX×dàr¯Fºg>'ð5°¶Y»­ChLX`|!Ê»àZaî4J€s¤!)Àn~!¤P½,Å Þ3Ë* @fr¨YÆëFŒîžæ.ÈÒU`r€lЩºWõ¢g͵Áèí®ž»<ƒ¼)[¥4ÒÕ8ó9¯gÕ³šAð‚/‚Ñ@-b¸²Oå ­h@°Wï#䀴“TkõØsF_0ÖºÿæÊïtß;n “Õõ>ЙxâÀÚdu³&CÉô²©[ÀxÖ}Žç6ˆy?Á –*K%Eºg>'ð5°7Ù?Ù»!|c¨[¨ ¨‘ÒNþ ÆrãS•4$‰8 ‹lŽ‚,KÜÀE²Aí†ÐT:J70*½³=»!ú‹˜•QãÀ®¦ª+kh@]µ»­— ¿OÑñ’6àÊðò—@ÒÕÉÙɃ@MWŒŸ#]3ŸøèÖºµ>ìtfWíûsý¶N‡ŠèPnø(¨/ÌÕ®Rðûæx瀴“sÅ9Žòæ¾&>|ødRH@¢êœRþµ%^9%”‚—Ÿù¤Ðx] «Ž+ÓÕÌþ!Þzàÿ6j°¯T[¥¾Þäyý"èOéȃ ¿“2åùJ4Æp7Ýæ4¢~¤‹qæsn<Õä×/IË??QÕ—¯ÃQŒ–Y¬3.RSÁêàÆUæ\ïLoø'z/óŒuŸš¦Z~‰\ ÒOšÊå üj”ù ˆ_z«ìHw¾öq_“6\€r·ÜN6ðyéw«¿výa œb]ò‹4 Ý£ÆÐÅ®=f+0ßõ|ì.Ïýî ܳ@=.H*¤_`0˜R)i¡Ž9 ýÅ/"ÝùÚÇ™ÒÔ¤'}h¼Ëë º°‹u@ˆ¹| hÂX@%”¬·lyÈØ¤€L1¯0w€zÛ5ÅL³¾q½Qlã]^þÁ?ô& ÜÌ_A¾Q/«¦À(Ù!ÎÁ§œøÈ¥\*AfÉ,é rí T ˜ª9|Õþ쥔Ýä[Ù²[ 5†ìu]o^’ª¦S¨Z¾Nàk`°®³C¨w°i°¨ÆêÑ`î1‡Ù@#2Hr) ê``OõÆQDè ]ôŠß |7MÙ‹yI%\Å‚êó`§øXÏXõ¬F\|>8Ô`)•{ÁÈ2¢×&¤Q8N.€æ*® ÆËÃ@kYÄé¥ÿ<1¤JÕŪ …8H€½ Ÿæ° ¬¤ˆ…‘î}íã¾ö{’ý<„/ >|Ô©Ï_ÁlnìUtRI ( ðÊ%\ ì#†tÐçéúsÐcôíPÕ»S=Ž[T=í^NÕÞÀ!ÚFºïµ‘³,Y?Mh h  ïæqJA—’‡U?]U}š@ªÔ–ò¤^ö—Ö¹ö@ÐÛí{!UAŸ ¸qQuüehF‚L—‡e"p ¤w¤;_û8¯·w›o$\’¸±î¨°³çEAé¦ò/ƒÝÁ·Ò[ê] ò%xH#ŠDÐkx…Y 7Yk9è.º—¾ØH2.€êŸ&ØÄëÏôc@~\R݈§#]…ÚÙÒÔÀ×Û?À×’Iþ4¹Tªð vc(Î,S±ôdý‹€>t¢5p7wÒäþHèUv¾Ý´¶ÇÙŸQ5Â+ª_5ÜTMl4y˜@ˆØìÀéÞ×>Î_Ï:÷÷•__™P ÁL+‰o œTé Æï²RoÚÓHRAÞ’X" t¡NÕ‚îWuö£1ù÷ÀCÕ &E^`þû1–ŽSÃák2œ! c¢¹ÈÜ zä«$°ñ /y„qÑ”ë" AܰSnUƒÀÞd·³Û]íô8 £ú"×[}ò¶FWOm ³ê‡~¤ú÷%‘î|íãþ$É‹²F~š©–F:èBõ©1ÐÄ‘ „Éç0X6Ê&`¶”ˆˆ±Óõh°÷ÛoÙq`ß èxà#V³H †h”þu5毎SÇ üÉ*¢=A>6–™• ³ÕÆ£€—Ti ”r„ƒ Å%ù —Ûe(¨vW{èGìÇÀZb ´·¾GyhLFõW+«Ÿ«ÉäùÕwn§ø“•ŸdHv¹Avo»†iÒ’Ž@9{ù dº@íuÈ|ͨòš^M{°/µ:YïB¸Òz%ü*ÐVÿY÷Îå<9@ïf7€¾ƒQú3ýY¤;]û8?Y¹‹) ºšýÜóAî02ÌA+{¯¾˜¦G2dƒq£ÑŒqî­î7A}L–~ôSÖn«¬V¬=ôúný$ЈzU#¼Ä ]èPµ.ï8µœÀŸ$ùE¼Ò |¥Q{¢‹Áü‡»Ò{T>¼¬ñö‡ÖQ0&»:˜>0/ô\èɹN.—,зۋôç ‹t®þ°‘ïØøñV_´&“ Cí¤]¤{]û8Ë’'IÕ5º7CrIÊê´2È»µrpqä¶.e÷ó3£2~ïš1¦f±÷1÷'  Óø äê;Éu¥ºX.”{ä9 ‡ñ¢÷²]Ìhè\é¾×&Î’TWu­ɯ¤RZ€oZLa\W8,šYú¼¡§Ã ÁÛÌÿ‰ïaˆî•Ž ƒµÜõ•é{‰/.0.6¾S­A>g*c€ÃäPf{€¡Gßð ó#ÝëÚÇ üI’ñ2Q&@lÛØä˜à9à_½JRïYq~È*³/ƒ˜1IQw@Ý9©™I—ºŸp„à8é!?y·±Z Y-ÏËÃÀAŽQd±—AO×cuw` ôß"ÝëÚÇ üÉ:a&¹Î¸Â\*ÞÝÓ)°^lU±cb?^©ýÒßJ©W¼1žvP™+ãÕ[`䨞Foàîã^à ”°‹E@˜[ô&ÀÖ1$Ò®}œÀÿ—\K<o{ðmŠy/þz/°Ç³Ì®Fsõ4ÄÕ¿%v$Xò~æ¡G¨+A.SÜ WÒš6€]ýE‘o™¤Ÿj»íJÐÕEúX¤{Yû8­ÿ¥è¯c/õA²¯^×úCÙм‚&ø›Uì ÌÛ½ÈjªçGw; ÝÜd„€þô 'ð! à¥éÀ×ú ƒ¾Öžl-îÑGí»"ÝÓÚÅáÿKu¦×Yž˜ M¯nѬeä–”½ÙËr¿,:˜òOƒû<¯òÞf¬ëfWPJ1%@ n¢iìg¹¾xXg[çƒ^¢Gig«½SÎáÿKFs£µÑ|¢^Šºl·ûMT6~š Ñ·ÙßÚïB|lü‚˜™= êF 1ÑDWßWÍ™M*Æ1ŽwêwøèÂl S¤ûZ›8ÿ³ŒTã^HëP`ã?AÙ“Gì…¼>odñõV¥=©cR¶×íLd/1øñce!=€TæË³Àbù³ -åg¶Ýœó·O%'ðÿ#÷b·ö´‚6óÚi7¶½oífÁQ{Þ Më6ÛÛ8 _Þ%ùc \?ª¿H:) Sí}L}·ÐøÑÜã^2L]jöVë"ÝËÚà üÿj9 .ܸäÉé¿4ˆ†ŒÍÍž:7 ‚s§^z–¼.…`\¤”z58 …SŠ— ƒÜÅE#*šBtBÜälðÝ}M¬ü¯sœÈ¹h=Åêô¨›—Ô šõl5ö|ïÆ„åÉC è–@ÝoÉëR4ŽÜŸ¿·x äü½¤S`˜™þ6ñEãë›ÿñÛë|šø}¤{Sû8#ü)æïêÿƒo;¤ü#}p½Ç¡tfé¥àPë}ïš Gêd­È¹\_»:qýYB\Ý›!mRýOB³ØsÖ´JŸáó_éÞÔ>NàOµ 6àâî}›ônú$$n­;¢n:Tl(ÿä Õ^ÝîJÏóÞá•mÇ‚ïkÿ dt‰tgjÑÕ"݇ã÷àÌág'ðŽ³ŠxÇYÅ ¼ã¬âÞqVqï8«8wœUœÀ;Î*Nàg'ð޳Êÿ=Rפ8Pç%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr2.svg±•ÿ$IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll3.png0000644000175000017500000002522512240014740024032 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>)IDATxÚíÝg˜Uþöñï©Ð¹'çaÈI‚ä  ¢`# "ˆ¢‚.* "P…E@PÀ,(’‘œAÉ 09õtOÇ:Ï‹ÔuwÅÿêÒó¬ýyÃåuuUŸó›»ËS§ªN Y‰ˆˆ¿%Ü ˆˆ¸˜"ÿ“g—ßwcw;·ež²£eÛ Ð7Ð#Ð3Ü­‹ˆþ?UD!EÀ –ð9ОFÔ„‚Vïäï‚>=øÈþ£ðƒë`Çý){GÎÍ9»€<Äà §9îNüõhánÀÿ¯ŒwŒ²U/z·ð:È…3)'ß<^§Ò}¸·,ó¥ô} ñ¡DGL'÷Ëå*(œsнJSËZ¹¯G»¨G$vNj™ÒLkMŸ™6†»“ÿûDd–æÞ`*S 8=pk œxýøÙc;àØªC¯ï?%¹ç'wC}™n¿Lщö) ü ú*‰@/šÐr—+½ r/u_x̻㠫CÍyõs.Y Õ23–T_bŠX&Öƒð UDKXÆ—€;v@A‰ Dÿs‘À_€g®gç=Èqöó¬pZ;l>p ü9%ÛóAÜm–…ÊgâŠ?Ó ,‹,Wš.YÛøX@g.§ ”?ïsù€â<÷ioäïò؃·C`—ÖÏö"˜f:öƶ†ØwïI2²ª­±â^ˆý>vY¸«ð¿#ø_[Ï:¾ãmc…‘Ù9gÍg>€Ì>ûØÕŒ%Wf7…ÄÃv¯>R7%>—¢! ©Æ7RÈæ@ v,@(Û•Eü-ðj¨ä +¬_âƒì®Å7”ÝžÁ]b8Žß˜4’/O«qb’ãg'¼ J’úˆÖÄUêxís°wP¤Éfês ÛUèI“þ:Ôû¶á5—ܱ‡ãêÇíÓ‹úRÓ•û”ç@ÉTʰ™] wuÃ/ø_‘õ¥[nÌGìß÷ iYü5;&}5b9&ØZ€²P™(Ö‚‘f$Êl —"Jù)àÿ´ßLNqDkÆñ0¨«Õ)jWМb#S@߬>¡¼ jÑ™£ >/öȽŒšLÞT®Ss@ìSbµÁ°—ò6À¡;¶äßÁF<¥îÓöÄ(‰ÛSÛ¤ŸZ1µ¨óذa wq«€Hà+êu ¸¤ð¡‚¹P´,;óôP¶ûª¹öAòcIcAi¯ÌkÀhlL–?^ü8ø·Aÿ‰3&8N€¼I>Ò'»’ buyÌw™Ÿ0 Ë͖ݦ: ¶3AÏòwÙd7¹W·’2×OKp->–·¼G½zp6øŸvõ²MÑ<éÞ²‡ÿVïmx(mn5$OKÑS“xQá®úÅÃW*lSðMÁ*ÈtHßÄ=óÄdè»Cˆ»&úCçP6((MAޝË÷/BÀ›"\ ý²‰¼ ]Ž–ëê‹›ÁWê¸ C®©î‡áh^Î %ŸBüÄjÔ¹Úm¼rÎÕ `û»­±ýMO‰‰bV¸«ñD&¸*•/+¿Ýsäí:÷hÖý`©Ì–±ó¨s¸½)ˆ±JÌÞ” åš‹Ø0‰DR1)€XRIåy¥³°‚~ƒz¿ºtC[¦lÛpsŽÞºG-°5…z‹“E/m‘o^ɰçÖí‹¶.€’9Å¢èpWýâ‹á+*:QãØÝ°ùÄ7ÎU@ƒÉGmÈhšP=‚{Cëû€b\x¸ðæbóâÃâQ1HôÚ’‚dkc¡À‰¤Üìb7œ¼¬dk :6貫ë HÝ‘~:c\¸ñDÆð•ÄfÒ ”ÖÂ"Ž€¨Æ| ¯“wÊÑ€›r²¨zA?ÏRyŽ0KΓŸ~@­¡¾¦´e¦\dÔc“oœ§äªÐ°Ð[•ÛŽãçÿ“œBýŠ iλLlM@¼§´S¯®ä°r5à#—ánÜÿA¨bÞ &L@ú‹ B¬’Ñ Ü!_ %(_4â~±] âò¿.øJâj‘¨¼bµjÕ{Ôîâ[ : Åü|Iÿü‘°ª:„Užäåg€$t$0štÑŸ›èú/¶ûÒTÇ”ùJ2(Cô}#Ð^4R^Y,kÈ{å| 8°ýò êÿÄK4ˆÔ¦PG´ rOpZ–Ç@îc77n<üñ{gTÊ)v‹a¬NŠ[”û@]ÄÔ_|NGG÷_á¿/r„¯¤ Vª×‚©¹åyë÷@'Z‰zz/d2öpˆã ‰#úwìð|Ð+‡b°¸[ô‘¡46PJ”žŠ”b¥p¸Z¹]i ¢•hKsÀE)eBÇ<äËsÀ³BW®QG¹M= ëEa¸«~ñE_I}G9¡ª`^hkÉc˜ìÃaÌ 6 Ž6°=@5RHºðþDjÅçDÑ—›À=Þsoù`8yìDnÖËð}þ×Õ6 ø¾Öú¶¬‡#÷iâ~® ž0®uƒzT@Ń&Åüþ¡”Qù9 ¸´¢µbžxJé®–j+Åiåoá®úÅÒTÒ{šÆ›^çUQ£>ƒ€§è¶Ò‡Áó¨w›ÿGÐ'ê;ôY ò•vJ<€œ-?ý^"šP˜År1 øŠ:ÂÞÙÛïÚ+àÀk;lR€Ïµ®êx¨{²eí&.°?hÙh® ‰ž”SAMPs•^ ×È•¬üøóäòüÉj>‚Dz¥ДÊ é³,·€xOLTZ„»òWä_Én¶ßfª ÉðTßîþ¡•Ó¶àPI*È5R¡%0•Çè÷;vØV¢)ˆâk1òÒÎeä6€“]öäÿðXRNL>­€¾gÿ¡Ì9Zwð{/l½i݃›WCÖY7{D?ñ¸rˆ4ÒI¹ð׊ZT' øÅ¬‚ÀëÁ#¡+AöeŽ’z‘õû[ |¦z´¿àmÇ‘ÀWÒoÖ›ê ¦FlfÜ:íU‚¦­àãÆÀ¾Ãâjý®»°b+ïž¼ŠAô‚ò.{¸Ì9"¿”î·Ë¿SïòXoðÍzäÜ81uÏ7/¢gsöç?â”h)¢XRHüßû˜&FƒQf<$—¹«ó畃÷y£v Ôº«^ý†ÁÞÞÙÊù}¸«~ñE_It&aSÓCf+ˆ»Lï[ç‚ܤ˜>­¸p’Ï!¸àˆÚ„,ZÒBüwú[B°û6ÏÝdPÖíªÊÏ¿í¿,XJ^ÉzâÜ;P>»ÄêZ\-Þ`,  +fþýôaå½6‘ÉH0®’ÛdM8»½ ³Ô ¾¦â]=jÏ®ë®7ì'ì·Ø§…»ê_$ð¿–,ºs(ôz¦7AÙ­Ï3ÅìÀ&ƒüˆ7ådÀŠËoìÇŒ;J C¨µ/Å¿|_»çx¾c±ÒpC+>.OŸ…\|¼¼‹÷Õõ÷ ø×åR>Ф ÿ~úðüô¥Kîe ð**ÝÀX£~©¯±Jïl Ï6í0å_ñ}Â]ì‹/ø_>QK¹bFÇ~Ÿ–ö©Îç ÔRö‘û,Fw˜%žÿ‹h•³#.ܸåg,cTpZhÙ} `ºôJV¹Ý—2ž:`ü4‚=Á8Zj†YN‘*ÈoØÅ1qDý«!•˜"žÃÀŸø6¥K<—g‚-%úµø$ˆî?>±/(§U© Äü5',"ÿe²X(ÖAÒ¤”m©ËÁ‘3?> rÕâÑ®Mà]ê,ð ˆ±Š™ÿbçgIŽ‘CÈæüM> ¼$§ZÆíò:ÀÊù à«Ü®Í©âeÖ‹ç€.¥)ÈYÌQ 7A@GýW5QÀLËkóõ„\oÑ6×pˆ]˜˜œ2 Rê¤Ò—ƒØ*Έ¿ð² ‘ÀÿŠ˜©|¢,ä.ɯ&¿Žõ1Çã&AöÄâG<ç ¼™ï»ÀßAÀ"ñĿحrȱ—<ò@ȧxälÙ—~ ¦È òe zÅ‚¼ÊínE2ˆ'M´¹ fê#´å ÎW4ñ ˆÞ¢ -Až#Ÿ’ÑnE,ƒ;ÙÛ5ðd»Jž)Ÿ±—&¾•Ò’£’?M™¢Žh)Ú†»Êá ü¯ ` ÷‚ºIÝ«îå¤v™é xO…bÅjf1RJ ež¸ˆ! ·ø…`ÅKМ½ÜúÓD Z¹Ø°›+¾V¹Wݬ¼ ¦-ö)ö) M0M4åÃhH,ƒ  HŸ9éqÚãé‹•0ú(Ó÷ O6O´ø@ÍÖU-hM›p9|"¿ã-^å¼dô‘Aá‚«ëY(ÕË ÷0[Ä1 Äwb¾˜ø*Yx’AœO‰7A|  /6±YÙÀâN`kÅ÷(ºö‰v=XVÇts~šÙRÝÜ X,ÇñàÃM9?ÏÒ8q`NsŽl0ÖYÆYNõsm ˜?°×uαX=¢}î*VÉ—ÿ à[X|~|þdÆ/wnò†ú¹µöeÜ zgõ55èÌYòFGfa'bœš§¾b»6S›\#¶sd{ÀÊí]-¶ãq®Øþ ÷±²Öò<ë€ôp;D[šÒdsÆò*xúšùþÁIòbÀ~ ꘠×Û›ª{Â]Ȫ!ø ÐèÓM‰µ1ú¾˜¶`õúT@iWW¡Û ;;øîð3ÐàãZy×AÜܘÎQ"Tæ2[ 1G9® Å£«£@Œ[Ät«ø¥³åS-ˆ¸zlšöõ1éQ~×Ëò ;¥¸¨˜ýñ€¨)ŠÅ6kåYg>ɽ·Ð EM£Õ]^£]µþ`úÁ|Ü´W¸kYD†4`:h^aé±Õã·'dAÒå ·Çûó¶·-À3Ô»×÷œ=»·  d9w*w4-nTZ¡Tãec?h½´íeP×k7hó€©ìËÀw¹8!GcÎEÕ‚ŸÕÛ]ëGˆïžðjìã Öˆ!Üb ÒH˜AÉVÞUÐ3F¦‘®ü²ÃžZpn_Þ‡M ¸ëïîu`.5¯±4u†ºLû:ÜU¬:"Gø ОÑ[蟂C:'E·ë„òѾÑ|­s i ¤/LšøìŸt¤éq/œ|ëì[ÙÅTß5nÔÿ¸fGõ+çÐ b²Z <¢§˜BSðŸÔoÐÛ‚E&4Ž[ é‹2|iApÄÚkÙê§`à N&ÑQ±‚ç3ï¥Þ×àÜÊ|gÁ«àâù›g(-­Ç\2þ‚kÿ;‘À_€¨&Ú+]AÝ«ª—ƒ#ú‹† íÕ¢Ôlp|ev˜íÐP©¬Ñ\7” vo‡òV¾UþpàÀ‘œ[áðúSMÎ\ åµ-ÁÙYö¥„–š¶k]¡x„q…œ‡²N®ÊzÎæ—5qÙÀèê ÚPå)õqP¼Š¢L±HH1ätc³‚¤ñǪ ˆú<î&WŒA`L2Òfá®bÕÒ\È&ËÉÀ é“AÀG¥Àër%߃ºQm£~ ©jbÇøcPcmš–R’žK‰q€)MOÕǃò´:O¹ÔË´šÚŠÌ}™õ ùc°¼5È>Ô\uˆº”)¢D|ÊÑCiâQÑA$ƒ8 ¾ï€>D›­ÅBô'Q‡ y||«Øfõ#Ö>‚‡BwòÀ(7 ŒÌp±êˆá/@"÷Èo ´×x*ÔDq­@t«D10ŽQ|Æ—Æû¡3 Ý¨ u$>¿8v$$®Ž¿,¶x–Ý’}òfnŸ½o-(“•Re(XæØjÙì´#mbJhf\Ò»n4Ä}Ÿ°2ö>lš¢SÕH£0Fb80ŠtéÏ+åÛ¼÷Cñßc{Înã>#Î8 DäH ü…]Œq†B݃£‚“A¼-–”KÔ¢0“ž\äÈ<ŠA|€` (¯‹§EOÅŠEÙ º4Í6½ƒùœ©ˆÚÊ ¥-(ÛÕG”—A3›Þ×ß}´Ö^]Ú[ê­5ˆGeMÞQL1ࢌ2` f惌æ]y%è¹Z–6D‡à•†üÛ} }q`xF`_Qîj†_dHsÆÆÊÐXÔ à¿”F¢ ?‚ö¦z@YÔ¨|䯘2Ü w°ŸL·p?O‚œ*WËc º©­U7¨/™Ÿ4å_Š¢âŠë‡¬¾’¯ËO@®—98ANå90æÊýÒ Ær™%u0ÖËb òkY$c@”£úÓÚFµ'(R”‰Qà»Ë»Ô· BBMC­Ã]Ū#ø 0bŒÝÆ)ž Ôôåˆ8"ƒ§<¢Þ¤OÈ"\ÿðÐu/^ Sdú„ÖF;Z¼Ùmb¯"º‚ìi 5y™‘b$ƒ<Áù9`&žøß.y†\ €Ž4§h—k©1 ‹S ‡Àl‰o™ÆÇ¡wÃ]Ū#ø )æCÎ?Ò–¯ASöN†QñÔ¿Vù(È?.Ú¬¼·¦“œe„ÞB; Z”¹Ð<Äå>q*ß’s@æÊ~²°O~ÅW€b~£]çï©©\[|Ïz±¨#3 Œ1Æqã`¨l-Cá.bÕ üh'´Žú“`¹Âz£-¡Æb9ü§}íìç0ˆš¤“ü‹ ƒxñÅëÂ+ Z¼:´§L_ë»@ìýD××/ƒÔ#F3àóYXI$î7öë¥ñ’DmœdÃÙÐøžåá®bÕ üXvZ†Yæ@Ìܸçãoß¹àG¡5Pôì*x›…¬:‰6¢É/6ôSŽÈç¨<ê6m•¦‚6²ÏüÐM™¡ô£N¨Ô F Z,•}å“@< ¨õh¨?~ qè &Ñž4 ‰XÃ]Ū#ø °'Ú/sÜ)‹RW¥MÏÓþuÆX(zÈ•åŽ9B¾!ç½éBû_lèÁ%ÝÀr7Aof~Ö´,Gí[l‚,WZ(nÿMjœçíá{är,šˆîtú <ÿ„« 3`W “(‚´øé!“ˆHà/D¿ßÔ@7CTRô{Ñ5 pL.S¾ƒò·ýÇB£€¥ìâ,Ђÿ0æ.¢€"ëXÉ:°ž¶¶.ç%17Eõ…PºêPïîÀí"ö÷ör¨<$˺\Ë•¿Õ04  õe/ù:ð„Ìb ˆµÊ­J)p3ãÄÊpW±êˆþDŠø L™¾1ù@nSÇéM T‹>ê<@NS ?­ d…À—,e Ø.±=gmÑÕâ6D¿!·^ª÷ÍÀ3ÁL}àkà[ <+sd¨Ïu¢Óo´ëÒÊ!Ï,°|ëü‡‹!tHb'X?µ-s$vXo¤Í w«ŽHà¯fLk@LÖ˜Û‚r›~ÒÔP©+ZNsøŸ/¢˜à[¾cX_µì3ïgTT_çó ×YŽ™KÀßÛø8´‚M|Ÿú;€¼Gn•§AÔ×ýæf´¸OôY&«ËP@ñw¥sÁ{Uð˜q=¤OÈx½ú9°µG;†‡»xUGäJëï5G䊺`¹Ò>Õ¹‚ã|ï¹v‚¿Q ,° ÌÍô®Ú&Ñ^´YR9{S_î”{Á’k®mj ŽŽÎ«íý@^jÍ5`Gú '{ü7ƒ±$ä7âÁpÉ}òiÀ‹€ ^~ZG<Ìmt9J6ä1(Ê*íëž ¸œ{mM ymê¶Ôn`}Ñ2ÃâÆ„»€UCäÿ;)›” Òâ6%N^ –yö8ç~(äúÂmÿ·Á‚W_ˆ7ÄÀSqáIæ§@ï®ÕRõzË–/Õ|‹ù!kD/‘²a°]h)„Æ‡Þ ¥¬cL—[A$O   þá¯u H9‚Oäð8ýoMtóµÚ¢Š¢'FÏmŒv‡V/ÜÕ«:"ÿTŸZMm5Öœ[«÷Ç&'< §»çM-Úåå>áo Êe¢P¬ãç7q”U\€RÞ Ä.P¶«{•Î Úh‡µ¯Aœ!¡ÓŒ‡BC!Xll¡õ²¡ÑˆŠÕŠSøçuâ JÉ4jŠ6@'¥†ö,p·ÒM]â:†ð\¸«VõDÿ;‰Ú¢‘h¶íoÛF€é9ëÝ6xn l)Ê6F0xˆæ8á§…øBH uHaˆ®"”ÍP_Å&>cà > AàL0'4ŒEF}yPMT¬)yþ-~çy9Gˆ8Zs%ˆÖÚKZCWjè7i\+n wÕªžHà¯V4§+_ò2ˆ¥êûúY`ˆö¾¹`WÚ*nàdóË5 +FÝÙÄnÝÅjñ¨Õ5§6”tÑT˜ê¡zÆ"m Î õãc´Ü $“ b¨Òücàó8 $ÐŒËAôT/ÑÜ Ü¡^¡Åq´æšp­ê‰þ?¤tRó53(»Mƒ-ë€xÑFñÝeGÙ†Ÿ×Q+‡"…üÀQ ¯Ø%–X«YÕg@ªtS ºÊ! Wʉ2dgºÈIT¬aiâŸQõSF.%ªÑD±rPí £d©ý€XQ‹+Â]¥ª'øÿyŽ­¯­DÇe%ÁÿB°šqÊ…×ä;d‘M>ˆzÔ¤#qxL|ÏPZkní0_Û¦mÌÊ1u3¨w«ýÔ(Ùb‚èdS ùùtþ_':  ÝÅ­ ŽŠïÔ=Àå+u?MMZ…»JUO$ðÿ!§µ%ê&H)Hßœ±Ê|¾=Á(:äò¹]ÀN29\#ZÓÈaûA<)NŠ vÓÆh× õ!Zà{m»:ô4½ž>Ô|åa58"Op†ŸßÊK4Nä09ŒGäZiå õm1¨ª³´>@#:‰á®RÕ ü(ú“¨ÑBµ—26T¿JMÞgƒ/@aWwØÄAŽ=h'<ÇV¹ x^8E!(£L·è+A´×FiÉ ßVíêQÐWêë´† ®R{ˆ pœSœå§À‹V4¦.]äH¹‚Ãm‚¹ ¬ÑÒÓA·›G™€èÍcŒw•ªžHàÿCb‘øH| ¦%æ«,+!”(¶©í!xÈøŒç€2B¨@,:! “oÙ bƒh+ÒAÛjJÔ'‚bÕÚi¯‚¨-Ú‰‰ VJÅ• ¬¢T|ÒEÙ//8Ñ[Ü(®‚P t{è ðú| ·€æÐ§™âÁg­iM^ïŠwÃ]¥ª'ø?Hü]”ˆÆ ¾Ðv›ò€¥ªCÿˆŠ‡»2p¢{YÆÛÅCJ'ФÙinÊgZ¢6hɳr°„i²°ƒý̧â¤W‡ŸNXï¤×BèŒÑÕ˜ÞM>Õï}¨i€ér°N¶l1]̇»:UO$ðÔÝb³p€0·²]J´¾Ô4d#9F®ž‘/ÉIÀYùëAœP¾/‚6кÕ<Ô}¢Ö(4’ä7`‡–ç@2JeDQ8ùi–FÜBg:BèòÐ<#¼‹ü>ÿBКk_™N€ù”%Óòð y+ÜÅ©z"ÿƒ” J3õ~ˆ:Û4îh}ÌÅV ”æº{úBðýÃÜD€ˆK•JM0å8ZÚ§–ogÊ9ÒXeŒ€P‘QÃX F/¹Pæ‰Äþ2ðt—s)ƒr£ø,ÁrP;ëè€y­¹¶¹ˆ‘b¬x6ÜÕ©z"ÿƒÔËÕÇÕ9ú|z“Œá`Zf?5r…mJï…@|°{Т7eäš¡Ú8ˆš°!vX³Ýeq@ÀïoXÞݾ·ý3 4#T/ôÐDÔ§& ¢¢7ÒžÆzÐPåÃàK ”†š€6X¨ÿæCfÍ\ ŒâižwuªžHàÿ ím„6ÒKÒíÕ¶åœcyÔs³·h´køŒÀÌàDÀÂùè+t“6’oI)IJ{–c¼m5xWùŠ|Àý¢gIy6ø§’‚k€ë¹J´Lèh ºÑ^4ão†Ãx ü­¦`GPßÑúê™`¶›]ælO‹Ñ"2KóO"·ÿQï3‡Ù åj&Õ ªKûÁäc¼Ø ª@€ÛÄÝ /•1òaЦé/jåüvrõ„–à˜Ó2zœk~rû™YPÚÆu¶l>øú>ö]¶ÇÍw™ü€3&à:ZSBÃŒÆrøöî®í9½“vÌšùŒy-0’‘Œ wqªžHàÿ(6Ì€£â?E@ýTË‘¯2·½ÄäÚº_í ¨+_8FãͨdÇ@µ·òí/ªUú8”Oõ4öæAÜðèAÎ9ÀGr?/P‹0ÚÊÒ{(Ñð€‚jhý@U•ÓÊ> ™ wqªžÈæO¦˜ÔÚvP¢ôúæ.@®øV¹¸–N²9ˆX‰%`š©¿§mëǶW@õš§›ÞWÑ©’‡¡¼ÌóX¹<Ì3b(?¿6;& Y¬c¼LbEÌW÷VÎØ7  Â]ª'ø?™rLûÖ4ôÕ–;­SAŽg60rŒ8à (øð7Ò`¾Û²Ó’¦–s(/)½©¬ üiåm¼@\' ? cÁ +–ô£.wÒ.bE Ð]¼Æk€^yñ¿{c÷_\$ð2gèÁQe÷lÒ˜d3”åz§ûcÀu§»oùv@ŃðRD h,.skÐß0{-Á¿ÁÓµüžöåøçí¹KÜh•cxydmŧ"Ä»JHÝ¢øN$…»÷U_$ð²è;cVÇ$CJï´~ÕJ¡¨Äã]EW”Ž-ÛÄc’Hègm“-#A_a[fy|®²|wM ÷x¿®cý“¨Òx8Í §(ýAä©;µ$` h |îÞW}‘Àÿɬ÷YŽXöB\aü¦„ýP^7ÐDÖwœo\à~ Dg芡Å•êÈó¢¨8ÇI(ëRp_Qwð&¸z»? Ñ’@ ò‡RÌQ¹Ä[¢2”]Ú{z&ˆ¯Å3Šü ÿ‹ˆÌÒüɔ˕8Å ¦+LvóÛ`Ü 4ÖÞc.ƒ# ËÙ¨”ã‚„û“7%H UœúœUwÐ ß—Ý?o ®.º§t18;Ù mãAí¢E+W«ÄXÑÄNÕP—+WˆŠ·zGVÿ ‘#ü‰ÌY.¥§þ€å-Pi…ú0`ßÈ5À~¶ÈÍ0*1:þ;ȘS}yÚ8Pn`#%͹†9í «$멳[!ô@¨Oð;~Q.€hÃ0ñˆwEeˆkxI,w¯«¾HàÿKÄ‹Â#nµ®©ÀÒÄ[Ú«z2HÔ‰VÈå,ûëHëpW|QìNpÖˆý(z.Ý[0¬xd>ÚçÔöÌÖaV® w0CÎy¯Ü 7€\ÇXƆ»×U_dHó_¢vÖVi©™Ü4ÕÁý‚n(>[Ú½ìzpÎrÔ·ë µT±ƒi©e¤ùZ°5ŒKˆ9 ù‡òã ›AñÙÙyŸ‚ÑÅddDCQ3YÀ1‰< 4’ÏËÃÝëª/r„ÿ/Ñzjoê; ý©j½ª/í&ë{Ž3¨¨CÉÕ¼>xEðpPö”w‚Ú[?¦ugפ=ñ±Àg¡^ÆpðìÏ—…­ ´1X "Pñê9O>ì1¶}|ž—‘e9.(øÿmö™6’ËSš&¶Ì<ÞVù’5ž-Øò›äÝò.ж™;›ûCüíå©@¤>¡${[þâÂh(¿ÇÓÏ{/{„Ú†&ñìgÈAò;cð|&2Isa‘Àÿ·¼Ã;Ì5K-POk‹õSH¤T¼ÂP Ò'ßSÀv³­¥5 ê?ØÈ^ÿNˆw%.‰{Jû—¶.+…ÃOЬw tréÙ²I vò —]h`ìFËpwºê‹Œá/­›)ײôñ¶YN„¥ŸxìZææ¦fq_ÆòÔaÐ6eAÒ<8§dy²Ýpêð‰/²Þ†jë+éGÁ²Õ9É9ä½r·áù'dÅKÕö„»¯UY$ð‰­•ãÁ¨ êÕ¸q‰G |©o¼û0¯QG‹m`ÛjM°½L; ígÇÄ1qgÀ24&ÅùÌ.xÊ'ºžv§åVgœ³ÈtÙÉè|''ÊÐ-Ü=­Ú"Cš‹$Ù•2;Å 5u‚õnƒsKîs÷ƒLŸò)$mÎ0§€â[]ï¹­PÞª<Á'ÅqưðÓL\î^V}‘À_dJmU¨ËÁÑ:ÆŸð-(ÍôÖlð½â"ð>È«ä0ù*ÔI 6T‹Õm•×2q)8ÞO8›ú)”,r_ã« .«ÛåÙQÓ£æ:  eR³‰—ØÁ²Á4Ä´òÆä§v€Ðl#z¸G<'…»sU_dZòbs`Çôã.î„ê «ßQ£6¨SDm‚]7Nû:‚Å¡£×¡FTÒØØ‰ÐÌÛ´eÃÓPüVér×(,ñìõ= ÁS´ä( ÈÞòy y¸;XµEŽðaf?äÐí!5µZzu$Ô©¾±î+PØÛ—Ã<È›wi‘bŽÇžŽžIûߊû œÃãœ@oj.¶´qbR? woª>!+…»!u†GZe¸ï(“®°Å¾áéußCþú“­§B w]Ò/åS‘Ï·Pü‰/–¾Pv©þxt'¸d}ÓQ-¶BÊ’Ô{S]áîMÕÒTJ‰ÈÙàØèhé¼ š§·ù¸ýõpfFRÍäwáÄð“«Ž´_#Ÿß7âã“פNÆ=š´n1bâbOÄÝî^T}‘#|Wúfi¿ÒÖp<ï¨õÇíàÏóïß ñ¹ ™‰c¡–£v¿:© æˆwDdµà оªòáÃlg ›€YLeP@ù@G®¦30”GDMt¸]õEñ—™¥‰øK‰>â/åÿªŸ(ÿyº%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr3.svgŒõÖ”IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll4.png0000644000175000017500000002445512240014740024037 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>'°IDATxÚíi`TEº÷Ï9§—t'tHB€@€°*¢ *‚ˆ‚8 "²¢ Â(Š ¢"®(à‚ ƒ»â"  # ê€ì‹ì…²w§ÓË9õ~HÐûúÎñÞ×{{Hòûr>¤SUÏ¿ÿ]]UýT•¨j¨£ŽZ€íÔQÇÿ&u†ÿ½«_O€ïZ___ð=ä»Ëw9X3­—¬W¢ÝÈ:þu†ÿ-€wyƒÀP®§D:†Íð~È]–³![`ÏèÝv>{×ìví|ÊÏ+ŸSæ.¤©À=ü™;€ìgo´ƒªã,F´ðoG 1Ä@Þ³¹žÜùÿl^|ö7Ðʦ•xA]|Ýç5-\/¸ÌmÖ!k4lM/\™o€í;÷æø0$祬Nhú`Ó¼Ì8p.r¶rF;¶:j¯áÍ–׺üÃË**–U,ó§@ØìRÙòÃÙ›ŽçÁ™7s{œèáå¾Ň ¹{ìç#àùÌõƒÃ‘Uô²&ÂÑy9羡‹e’ý„þî;Rü5†Ê1ï†Ø<{փܤ¥h›@¦wÖçŠ)²lŸÛ¼¶ë!®çO ŒÆ  A´•ªYÔ|Ãá0‡A­Sª× Ò+rA$|÷•/,¯?÷ÅîéÇ_>òÝ¡xõòÏ*mþžøŒ»2c½Ý«!Æ–2·aoÐGêcd h^‰•7ASÃɃ¤ ½ŸÅ†Ð³aË\¥7Tl÷=»/ÚÜ{ý3/¦غ9úÅ4Ûgý˜'é§ç‚ç{ïxï8h³¨ÝÝíûCRŸävÉ­ÁÖÉv±íbà žf6PzÔ¶¨ç.Rã—%OU=îø¹Íþ0dO9:öð.`^¨}à°´’‚½A{È: 2ßÚ)sbÏ÷¶˜¯Áæ2fG+PÃxŠE@{Ò©Z_)•å`0'™_A`EðÆÐPønYœo&„;›Ÿ©§@ë¤ßgÌí ã#Û¥ ŸË¹*·EBêq(j\ –@ÃeÍÚ¶z2ë·Èn¹<­ãâãZ'ØÇîh‹zîRc êJM'ï<ÙŽÜŸº«×Ë»çx2¸¶k7YqÐÈ^¿ÂÛêíñ6ÿ èïïéÓ€gÔNUL[5Ôµ† @A‚€ŽöMùML,´£0_î“Û@ÚÊ!– ¥ñÀQ¾c¨}j=+A~hEVÙaß…°3öpNvØ= “SGC“kZ®j»šNi1¯å‡àêåÊußÚZ=-!Ú*Ÿ{ÔÃ+ ÔKêEõäÕÏ]ó$|uÿª’åS!­¹k´ÄAó×¼ûu†Ò‡‚¾Bß«÷m¹ “ÆÀ@nâz ŽXÜ@á_Ëÿ׊þòÔÀ¨þ`òËßÔ¯åI2ñØA¹èÁH /¼{Ç{5w-”¬¶‘pÞs¼|4,ËXÑäupÏq¯Ž-ZДƀŽh¿ ÿþÔœ1|9å”Ái9sºäM8ñò±!ánc—Y IÃb¹†CìçjÇH†’,§@a1qÀƒj¬ºÔmd“¨$ÈÿmÔ߃úåi¡€æ?yùQNQ’-ƒ¤%8:úØb!óþ´ÁIS §sá1_Gعõ‡ñßé!§ ë£Öî¶Y@O¶²èF:GûMø÷§æ¬ÃŸ5üŠü›òÇAÁ±\NæB£Ÿ“_õ˜<ÚSט)ߊ¬åÊRA5VW«‘ Žqœl ‚‰ÉÝèÿ]ØÐ@5TRãÁêm}®´;áϣРkR÷8´Ž˜ä<~¬;ä©Ü¹÷õŒ5ƺ9ÚâŸ;ÔǪ~0*û°4­èJðEJ&œé Þqv÷6p5ˆyϹTKÕWÊðSh¿‹G vl@˜&D®1ëYï@\Ø5ÞùtØœU”Ñ|K ¿Ëûöþ°+Çxˆ¸Ã_…ŸvãÏþÞê?U5tP#L"P³"ÓÂi ¹e ä€ôFQFy´û;ÂyA½¯V‚Þ@_ë ®–Înöµ þÚZY•ü±åÏ€ê¥*Ôªh·öÜ¡æþ,ÓÕ§j p·«"Pã¥Fï²NýØ0Ή™Ke” çNr­ôÒÚ³élm²ÕÍæZÀbË¢ÝØs‡šdøªéb!9( —Ÿ«WC" ¡ÿ¯ŒÉÿ(\8q‚ZÍW| *ƒ«Ô(weLé©iZA:F»±ç5Çðªz’9T6KC £´Ô^Z1VîÎ#™8ÀŠvcÿ5ÒÔ:¨Nêj°&˜·ºƒˆáqô}™=ÁùgàJ™/?E»µç5Çð::è)¶ËCAoi¿Òy̦–f«¡ÕEõi@ õùï¯ÂT¯âHGΧÈý2Nné)]¸$…$’þÿÑ9*k ²qè…ÐÓ»µ°cÉp]oRgH?Úèd“Ž ?¥ïÓÿ€új 5ÇðœÄ@¬×Ó2~1ÄvK(Hœþ·Ïo…ೡe¡[;äfé èè¿+ú³ëé6l WÐ•Ž úr?Ï€ÕÀzÐZ*I a¨Ÿ QÒ‚,2.b¨úfù/ü¼'$Vv€q¥'ôuæ}Rx&HéÍN·x5Ë} þ„¾$ÚâŸ;ÔÃ'àÅ Ÿo<7c!4œÓ$³™²ž‰/)†ÂM¥|÷‚(¾ç ößQn€J*AÒI'ä­¯– ¦×:i] •O…&…ûA¤¡ù´9øTúáŽJŽür™\JG~ͳÿÏ8ûa¨þÖ‘w¤#` Q=¹K¬ ö&œë\³Áy‡3ÝY „¢-þ¹Ã¹°^ñûpVõðžIqÃ=@B»ÄÑIGa÷Š@iDo×øðwÀ\YAcÀ®¦³õ_+ ÉA0ã#ÉæËwmnEþÈi{äž7BÑþœ’S¥ }ml2Æ@r0ýþ”%~qÓ@R\Ò ^°9mÊ–]Qõêé'=è j²zŽ7à̽Å—åAɔмðm6'#Òì]H’¸,9dºô•ºÉꙚÓÃWÿ€$å:`ô±=æè V¹^àh Ö­²[Ÿ ;Ù XDª'¯ÿt$¯Ý¤MîqEÖEºÃµ{§œß­]•µ~?lúú=õéRøú÷+…M›?{qí ØØáÚ{5TôôÏ ,mœ¶B›Á̵©šC˜Õ“è© •kbüD oú™ô’83ÆŸ*„æ÷¶>zÞ HêXïÉúÛ£-ö¹KÍ1ü¯UßÔÒ´/Aï✳$O @9ÔQþä‘MàÄñO¿çŠ_•ef˜à̸“kswBå—Ç ³;Crß’eg µ¸èÒßÍ;ïØÿì:ôÍß‚òn¥ýÊÈjí[™ökû~ɶ<;¶ïD* •&´€Š‘ãj„>–®Ž4Hl›Ô1ù$8ßr\î8—–Wÿͨy†¯Æ±ÙùxL¤ÎO?£-X{5l{¡èÊ’;ËzƒåWýÔS åQ™øŸ—#—2–! ¨ŸT1ó|?úÓÀì࿳â=pî4wš™ÓÖjeëûÒMeŸAùÇù»Ïœ†ÈÇÁE¡ÛAíd(—ZuÏ~öƒY(ëä]w÷ü K‹ú•îÛÌØ# OCÚˆŒ~Mû@Ì£1õbîùDž’IÑV÷Ü¥Æ>fQL$æhâÌÌiö˜íû[wwኒ/ÁêoX=@¶ñ&³þIARvkRÀià¸J¤0AÝÇ P‡ùˆW@­¬~ùAY%{@/á2™’,¥ÐŒ†¤ÀX©Q(Ð.Óò TÎ5'gvý±“½¥É¡Ù²^ýcgÍ™pEkxÛ¶lBêgi£Ò&2 ÍaBñŸü±•«À:_íQW³e0—þçå¨rN´äV¹´WôOõÖ #ô ´¯·4 ðUÿÃrL›4rõë@®=£m†˜bðë˜=\•¹Œ© €È³ÄÜ%S}_WöÇb÷‰¸¶|ò‚z‡AÿT_­oжªç>5ÖðÒV²¤1ØcìÝí½8ãUû{`Žå¯z 0DVÈ û¹JšñëFß’Ïnöô’Ç™ ú6ûPÛ>Ðþl{×Ö¨G+iäU×{ZŸªµí ñ¥ÑD׿ÉD` Éä×$gŸH Tlò1˜qÔ×7ƒ>ßècß FK£µq0›ç˜mUÏ}j¬áÏ¢BÊP°¿áá²=ßõbì6ˆØÍ,«Ìw¬ý–¤-ÍÉøp€#@w&3´…¶EFSÐ{vý ‘&4U zÄÈÓ‡€~ŸójÇå ke©v7ð=‹XÆÿ»&ô Ô4Û¤¹ö2è%öÎå ÛµNú ÑV¯æQã Ï@Æ0 â×x&®†Ø) Ã’œP>¦bråGœú 4˜-÷ÊÈðÿ>ÎP ´nrhjk6ëµó´€ ±Àžª—ë9öõ¶m`çZù“þ²Öجæð`dž_²6­—¬B«,ïÐlß9'¹.½Â¶Ç^7„ùéñ†—Wå-Y Ú¤7oè‚z­Ó\ WBNÇ3J@y¸"\¹ôg5›| Ò¤ê|TP ”«<ò,zÓ äi½X?r³þŒöC"^P;ªêÓÛØæÙƒý´{LÌ\Ð&h3µ?ãEµä|²hÒ˜4êAÉûåþ× tnÅÏÁÃrqºÑ¨'Ä·õnN\mõj5â#ýž—<Ë<Á='îüø/¡øëŠìÐÍຼ4Áw%Ä帶83Áùˆã^Ç`Ð,I•"ÐžÔÆÉ UʹôSÆ£úÐ.Õ›é¥@,©¤;«ªÓsmÙ†€ýƒ˜SÎ} Ý¢‡ôÇ@²åÙò ö•L]lP¸½tù)(lZ¹NºB«Ÿ[Ïɘ C½½WF[¼šGïáù™ýì‡à‚`L0B¡n¡€b£…ývÈP)/€“Ù§>/Œ‡à­¡ñáæI6ß1mñE&Bä¨ù¹éÕX¦k—hµ0 á%(­ªNZj3´® “ ¯ñXÓÕµ"îÈSf)Dº™[¬Lˆ¬‹ÜÙ…o”>á/ƒ¢Û}žà)ðnHZ“ ¸’bŠmñj5¿‡Ï¢%-ÁÖÌÖÁ–¶öKìõ!4²rcå0:‹ÃŒƒâ5¥ÓK7ÀI+ïûS¹Àµ;è—ë×ê-!43è> Ç—œª_û‚B¯‚c‰mBUu•Ë"/EÂp—œ,{v_x(÷Xä¼Q¼µô5/­ Zž¾òn;óqéÃà¾#9.=F¢^¤· I_émñj5¿‡Ï¤9ÍÁ°M ;Ø‹ì‹) æÊ&µª:`•š f+ÇÚÇ‚®Po ÞºÂ'"G΃ÐpÇðzÐ_ÕºÒKm‰Úå`¦EG†·òK£-^Í£æ÷ð¶êU‘³³ç; îïäz6ð>îÞe½ •÷׳¹¤QLúW p' ½­¿®µ‚ ‡và#***}Ž÷=täÈ=LäaPãø€­àÈ0¾·¥‚ûµø¦q§¡ÕýMn‚†5:™v=whÝ´A]Ç8• ?:Ö3»”õ²öÚã!<#¼$t>X›­ÞjbU‚ô¶ˆ5‡šoøßìlrß;,¶2.nÖ·ÅbéùG>„â6¥ú"P¿[ò>ïÐ铵† ­Õе¯ÀÊ\i:ÀÙÇ©;ÊÀ¦ÙBÆà.â<~ëI‘¿Dº C„óÁ-ÎFŽ]{žë›˜q â­æVàÓù¸|ήŽ¨¼3xZ;•/T®©L€ðêÈá)àÀ¾÷÷¤í×ñû¨ùCšßàüÁy¥ó^H¹7íæ= |‘ª¡pvéáòá`>f¦YºÎzB-ëkËc] ÖÕêõ7Ð6hõ4hM´ë´¦@–¤‘ dV•o. Î Ýáéþç*2@àõÈHmš´+Q ·æuغÀzw­‹ö ú yB ƒ‚AdsxOäçh«Uó¨u†×¯Òê½Áõ£ëZ×å`õ`¨ ‡`^ØŒd‚šÄBµèHsÒ?¥”iÏù —hÙ²äŒöŽö*ð#I$òËw¥¹!2$²Ÿ® ¶õ²5ÏÚ äÓ”¦T¥0DøåðUýÍ!C@\–ËJˆ 3»˜‰`.´Þ³êÆð85Hó$[NIèŸë›ôõÀò°Æ©g­$à ™âpãp˜c@/3ôÅFœ±´8ã}˜«h*@Žq@2EŠd9hk´5rp㹘ϛ¼NUjAÕKP³ÙÅß@ á »@Ú1Ù aÎã$¿¤,ÔñÇPëzxFq›ÜÒB2¥¨ï ¡­ÔHîŠ)ÇØÅ†ê-õo€ÖTë-Y»ÅsYìAp rrµ†Ð[´¥X)Õ‚Þ£µÒ¶ƒÖÝÐõÛ@fK¥lN©=¦jã‡T+/ ’Õ Úñ›AÓj AR*¥Ñ«æQ /#’©µ’ó€×¨/3Aù™®ÊÓT gõÁMf”š òµvX{/Hjé=±ïyâ“ 8P›+£À¼¦ªxé¨5“] ½a$Ó€Û%,û€böpÿ¸¤ª‡OcšzT{6¨ŸA{X^– >)’¢h‹Uó¨u†—±ŒbH¹@.Þ …4°üj*Ó‚êCVè ¦©iÌíyyI@Âõ õ=³ÀÝ×;ÞSá#¶Gm‡ÀJ¨.›¼¤õñꃴõ@ùI>|&0ª?Hg ¿U]Ì `½®:±¤D‹‘&ÀjY.u¹48µÎðŒ’12DD;¨ElÆ$«Îêq RTæk³yQ½ 2R®–†à¹>+¸R=ÛãÒ!|Ò¹ÎÑÔƒÜΟA»Á(ÓW±ÁY✠’§ÈVàKÔr~½(Aªµ_¨Æ¨ À›êFv/0K€Œä.X5Zgx¹‡1Ü šÒÐìÀ=¼Mc°ª§IŽp‚" 7PËÕZ6‚”Ê6Y ®¯œâèÎ'b¯u_ ê–¿3¬ÑROŒU޵Ž6àø!®OlkвõŽz1¨¥j2P•l†è`e[õÔ{`Å«AªõQÆc ¥kJË‹¶Z5ZgxÞ` W‚íã3ÛjP§ÙÆU¹Å¼ÑܬR?°H'™ „ *€óÉ ´¯Eè7Ûî4ž½^L’£7X/ia™Æ,×DGâlIžýãc#p?W¨¡@ Äã •7…Ÿ‹,†à”ðjs¸žtÇ»oÇ·Ž+ìucø?œÚgøv¤ãMÓ´ú ¦²N.u+_Ée ŽÁÄ"˜€Y½ω èŽ h»ô´N Ù&Û~‚À2ãCã2ˆ™‘8Û;–g|›ÞG#³Aýl}¥Ž.tà@CùZà 0³¤½v ìÇsŽ] AÙ)k¢-VÍ£öþ,Ó‹¾€C»Nû 8-}e `IC²ÁO9¿nɳªŸM6'AÖó¶|dë«ôUØaaÛ1·Õk” ÆMÒmàáhcÿ3XߨM*€°ªtPù²M/fèWÙŠAKÓgë;£-NÍ¥öÞŽWêƒÜ/£´À#ÚLÍÜ4¡-ÁOÉ?ø?[µñ÷ð‹Aùä*É„H[×O1߃ctÂĸÁ;ÃÓ'v&N½~è¯Æ«‡‹>À$Häýc};Hc#ÏþÐ÷9mqj.µ×ðnÑDôùFHký„m:È•Œ‘‡! øåÎ%Ü8±ƒ<ÎT†€J° ¬°7_1w€Ì·Ï±?úAçÎ;ÀvÜèn| ÒJòd+¨­ìe¦€RµE.ù\ëi|âÕ§ÛZ4—§äwœyYÇÚkøÎç*Ð4ý¤ý=ÐN§í¹ Æ3›À{j./€t¤=­€˜Í_!ôRd®y!„ž \\ÙT| _eOÐgØ®Ö?ý ûã¶½ ÞçGŽÙÏ1\BPk¬leB¨0¼;<´…Æ\›œ?¹vÅιVjÇ£-NÍ¥Ö^. Áè`qÜz;Û%Žb0›M¬\°žP3¬Ï€åUy¬qêuµJf–%ù‚¯ká±’§Aï^¾Ñÿ ØLý:ã2Ð×ÙslwâñeäQ|$³å1ˆæ9ˆ¼™fÆÂéHIß²,Ð/v|á\ ©o¥nÐŒF²Ñ$ÚâÔ\j­áe•|'Û!!×Û)ñ¸_Œÿ7(åK®ØA-tmè8Ho¹PÁJ¶*¬p¦ät£Â”X8°¨8˜;Ì–`Û ÿ¬¿ ÒUÿH¿°áÄñãYÊ, ‘{ÍîVûËí—€¾Ö¶Èù4$O—ÔtÞDO‰¶:5—Zkxžà žØõ±O¹Oãû\§À÷H0%x;„2/4?Ù)äP!µIåCÅ-¾ëü?B°Ä¸Œ‹8E1è÷Ê5Òd¾ld=UWêèTå½›À \D#PÃU •†‹ÌtÐrŒ'mû!f£s¦s(ȹZºD[œšK­5¼<,Ë#àîé>?öpöt^ÓüÛÓC› \Á<¼/‹xx@e©îšèXyD>©¼ äGÊ)ѵµÒ ˜*É>Á¨>ÿ=Œ ÄbRêox¸ Ô1j]€wä -dˆô“¾@'.¤C´Õ©¹Ôº ¿0„! Ç*Gg{.Ø:rlà¬p{s˜.s‚õ&Èt’Á s‘:æcÁ‡BõÁ ‡Œð_AÿŠÊ€>r£€.rHV‚Ϊî‰5rN‘ ÒMçAÞÔi»@&jé’ l!mIjµ¶‡§ mhÒ›Ý< úwúc˜ý”—®`­QcÙ\"Ýh ¬Tw2 ÌŠPY8æmáõ‘w€S#ˆažÌ"ÜÂP€_6Wí'Ÿ“ÀeÜÜ^VNd›y P¨¨#€›$ˆùå›:¢¸Ž Ÿçþ=· ÖñÇPgøjä>É‘^ú }&ÈCR!~½±#›u¬•oõ·:ò˜KÍ—JNS؉ÃóO*pK pœoÔ3 îT?Y«€÷Õ5êõhG_{¨3üY&ÊQ‰íbín½ x@Š%(`7»@2èJ{‹´árÄ¥ÅjoQu\¶áÿ§ƒ`qœC@@V}﨣|í¡ÎðÕȽrT:‚\¥ß­™.År£¶ªoóÀ  ý¬4:€¶@?£xH—4 ðKvå?^ùÒ‰!(c'Vª†ê`—ºžÑ޾öPgø³ •Ã2DÓÆßc¥D› äðkKe‚ÜÚ¶!FSÐÄøV¤ždШ½BÉ?TÕŽ›xà8[XjŒÊ·f€zG Rõ£|í¡Îðg9!k´Q Vj^#h#vY \HGëù‚—A?å¸Îžúbûõ¶$à.šÓÈâYR€d¾­^­Q¿¸¤¨ÐhÀQ«0ŠþlÞâNF;øÚCá«Ñºè•úP°¿ìü6&,'Ho÷Šü±kk7A\ÿÄuñ ÁÙ&aˆg„ÛÄ挈¹Ô&óBëfP¨šÌÆRõ”°“"€t&‰ðÒ“·£}í¡ÎðÕØÆÙ|ö ðÌ¿5!‘[­½ÊþŸ+îÜÚJ­‹fAªÞpOÚHHmðqêÄÛ’ŒYìê ÖkáeáC@°úLÊ8R¤>¢”B )W3ä]¹U+%;¥]´£¯=Ô¾š‡kœkÔ_˜šœz*dž¿°®‡¢E¥#Ë¿m®þ®6 Zl–Q éo·ú¶YîOï—PÙÖü»Ù̶Áf!à$LH¤1 € Åœ1PîæiŸjWƒÄІF;úÚCíÍ¥ù 1O:Ç8'Bêé´á .†üчË÷< ¡¡¾+úAƒ¡õE‚à›é.Ï¡”¶É Á(¬[ò8î-ètfDúVNžĨ¿²Hà \@_ ÕnàByu 9úzã~àU-CK`D´5¨ Ô¾Û [{[kHнۼ“ òõõІouª@íR§Ô“àx(ÖéúŠÓן·O-*ØÁ™åÍ}/C`Yp^°-¸ÆkܧAï§¥j@WÊÝ K´xÃòW©Ô&÷F[ÚAÝæ,FÕEÁR!™Ò ä-=Õ6äRýMà h´ +¨Nê´ BìŽøžãv$cpú °ÿUmTÅPºèôžÂ/!MÁ¸3-!tG¸"2¤\¶° $S^•• sôCú_€›µµZ½h_{¨3üoñÑ@Ú|§Ð AŽéÇB 3’á J¬Ýª¾Hÿ(dNivy“ËÀÝ!v’û(®(±—¥ÂÉü“÷æ àÑàZà›ÁZª¨‰ ‹m¾ý)Лënãh]{¨3üotºÑ´‘gçôéÆÓ@wQO‚úNmWÇ!.'Öåšé+¾Ú\-’ÆxÇ€o}å[¡bÈß‘»¼  „ ÍOÓo½im„ÈdóMk,ا:7ÆxÀ8eÒÞ5ÚQ×ê ÿ[†Ë#ül×;:Ç| ú(û3ŽDš¬ËÁꣶc§ž¯‡˜O‹׃#;~Ÿg(›^¤ •¯”môMëæÈ³ ·†bÃ!¨` Tî±±¹q#!¦­óG×]ѺöPgøß ½e¬6’N$ÿ¹~¸ÎÄLèE=J_/υॡkÂañ²% o7^Óã-o†çÐþn»ÑØ¡e¾ó*&õŒk…àŒðÚps¨ljö«Ÿûxìõà<óŠsu´£®=Ôþ7h¯hŸh_AÊàÔŒ´}ßÔ; F÷- AåƒÁ„p7à/~Úm¸fxÛÄ·½›ã.û[\äÛîoª‡Yj] !Oø†H% ñƒk¿»,öpÌtf;K¢uí¡nYò7H"ƒ!)9©(ñ:(ŠÏÛÿ'8xWyÇÀHËMJ´@K¶ƒ|¡ÍÒÚ@œ3i€× ¶þÎfŽ—Áÿfyß»`î4óÌÁ@V¤›9B¹á,ëïàÌŒ¹%f0ØÏ³ßæ\]yÝ®Öÿqêzøß2–qŒ½«ÞIozû7bw ‘ÖäFãÀýˆ÷“?~èkS±B“#-Ìhq2BA ´»å°:Xç[Y W¯Z_F;èÚCá‹;ÿáêk=bsÚ[ƒím÷*Ï# šÒK{"S"‹#… 0ë4œ‘žœz!xv'Ne®p8ü$T>Îýc}£æçͶ{ôiPÑÙ¾.T>TÙ¢29ÚA×ê ÿ/p,Œiëò‚÷ÁäÅ)<ß|ÁZ¾5þ  ½"·Ikˆ_ìæ¾âR=±°ËvÒÖ ü݃Í+—‚Vª=%Np=éÜfCé§Eà oÿèòáåŽhGY{¨3ü¿ ñÙÄëCVRëÙm¢¬Špd:œ¼°`xÑBà!#K[¨].—ëþ˜poˆ»ÜýT\<´WWSn»³c.”&O(\¾9¾!åG;ÊÚCáÿ1oÇ<ó*¤­i ¥§A(¤ýÝQ%Ϻ‡wCÄyÚ æ>k¯j Þv‰Åß5:Ø`ø—øOC ¿â†ÊŸÀV©·ÓbÁÿAé¢â ¨´WÜá?í(ku†ÿhcôl£%$ô¬¿3MÀQwÚ{Ê?©Èª| · Ÿ‚ËÓÖ¦|­ßhcµ|mü?øçBñ Å9¥ŸÊ±:›³!RJöOóÎP|å P¯«·ÕûÀ¾ç‡hG[s©3üïÄèmcŒ> Û¹&;ƒu_èÞJâ¾%sKÖ5Ôš`M‹v´5—ºuøß‰–¡uÔz@ò›É[ëEýS'¥ß Ç;é}°=[Þ40Ü΋ì´Å»;þè~½›ž ¾@EóŠ¥à?äT´‚ø]“_#¥ÁNP4¢h‘ âÒc{Å ­®7ú Î𿟪c¯ChèÜ1eCêåÕ§ÝfBÁÒþÝsAßæ­’ ðVÄ^åR0)®§ûy0‹ÃŸ›ÝáÌegbŠ Á>Ñ©9/뤕b킊ïýüXý­FօѵæR׉ü^Ξ÷n¯:‹À“ë¹&þSh¼&óËæÀ®#ÞK dpåJó%ˆt°†™}༇Zg6ÿZîn1 cØ?uÞ⸃‚O_žÔ2µ¾àÊvÝâú ´wµÏµÍѶæR×Ãÿ71^2ž6^o¦÷tâÈÐ[ôjýäýxdÝþ©pò‹3wåï„ônI;ãúƒ·“36.ÊæûZ|p²Ãé% íδ›l !©_Ò'I;Aë!ÝŠvt5—ºþÿýãˆQ­ú¶iÕ6êOi\Ѽ'<¸œ™P •åTN…àmáÕ* 4­¥#½Õ2àèäNðd‚·¡÷ w)h+µ÷µ×¢UÍET5ÑnHMÁÿ¢¿ § rï‡ãßü~ß§àû¾øÙ37íuûùöK éùôVMn†ŒœÌÇZŒ†z¯ÔŸš21Ú­¯ùÔ iþ`Ü]ÜÏ»÷BFVӎͺ€õ®úõP|GÑÑÂ÷Á>ÓÞÎö-4z½qISx2⟯;yìºþŠòÉðs¿³™o/^€AŒä #—ÐH&‰º$²ÿqê _G­¢nÒZG­¢ÎðuÔ*þnQ/–;]+é%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr4.svg>Õ „IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll5.png0000644000175000017500000002433712240014740024037 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>'bIDATxÚíÝg|Teþÿÿ×us¦§7!@è(" " ‚J”¦‚‚AYDE]°!‚ØQ¬ˆ H³ˆQ)Ò{I¤g2íœëwüºþ»ÊnÔÉÊ<ïäN2ó¹>y?®Ç5לs¡Î!"â" Ã]@DÄŸ)øˆ‹J$ð•Hà#.*‘ÀÿI_òƒ]W4¬h-Pø6x–‰²ö`®µb­¿…»Ê¿>Ù¥)'(¦„ D Ö.kZJ¨jd×Ïšr2N,=qàøH0õÐS@|~· ¤¼–2§Òrˆ*ŠJŠjr¤6E› âE±@| ¢±¸^ôÆ1žÇ4ªP5܃ÿß üï,û`ö†ì7áPáMûú@ibáŽüN ëæK¾×À1O«fU·z*˜«¸W»Ì|L/ëù•~ÐTkk³A\tâ—És¡f·:u&ATOYÔåáåÿ.=Üü¯òMô÷Mü½yygîßpo›Ò-»1k批ÛîèŠCcÀ·¶¸zÞaH¼1ê Lji¿7úÇô:â(ÞVšXôä·(‰)[ Þ*­ûÀº]ÚŒj<^²2¿3è4 ½ ®UQbj€6TßmÔQ 6É® ÇhCµn nmE2ÈQòs¹ œ÷¹j€«¶{†;l›lÛlkÃݽð‰Ìð¿å µI% Ìš¡“¡µp4tdôáy°­ëæ;~L†‚˜œ²!ù=O[ÛPÈX]å¾Äàše¶ùÀxDë¦-±WÞ*ŠTQ ¾Uu5¨¨ÕT–Χ Bên5òw—¼ìÍ‚ƒ'3[燢÷üÌb0—Š1ÆÛŒáö\pôs4³ŸÝ­íÔn=ÛØn4„”&©Ÿ§¥AÕOª¹kƒJ»*ߘšZ3}¸> XÃ~ w“ÿ<‘À_ ï(ï ï øáîï~üöc(˜Õë˜1ÃlÏYÁž.FZ?BL†ûMÇ(ˆÕÕm€±Y¯¦ŸSYJWm”!`=hbªÄ @g2p Ô+ôŸ?p} ò?/Ì*i~_h¾9¬Ü"?Q_k¥íÍ©ù´½ ‘-ä°¨7¨Å[|ƒ© q–F?ñ¯¤õÏhՇט[³ ¸Ox:zf†»»žHàÏ—E§’¡àŠü1y~84c¿ï›pháŽî›{³•Zïûê Àyеڵô>¶Ýöסt¿ÿ‘@76­Å âfÚý/üó‡Ü¿‹{ÄíÀL^æ)Èlqò›œ|ø±Õ¦ªÛ/ŸFmÝ´ëj8}ì´/¯-ˆËEcéQ™J$ÖxvŠÅâ(]ê½Ë÷*äæ,^qVÒÈÔ'!iʵ©«@<Ä^ w÷ÿx‘ÀŸï%^âE°lëaK½Ž} }øF›û9 ÖtÕ”: ¤{çúúCN£Ý}Öß‚Ì-§¦ƒç諸z¢ôàlÈëœy$»±yòx  •™]ATÕ…ãß×+Z‹&4úòOo¡?*ð¨û´Iúmà—ðhòc +íÁŒ~¾HàCl\ÌÒX j>Sûݺc¡xs`¢uäÆFÇ9Ì‘_)x=³ÄÃ`åXý¬åprZîÎü˜Îƨ;¯þ®†—CÔÜèû¢\t"ÿ ÎB—Û™ •gVéP¥Ê®°r´!P°¾ôo~ <Â7lÑ›6Ô~¾²Ý8·¶OqÄ‚ÙÜÜeBð¦`¯àPëƒUƒ•8s±õ˜½Ï¾ŸïGÙK&ûÓ¸U1M ñTb›øa MÑ^ÕnÕUu¢ï¿¯W¼+ÆÐ¬jª§DÁ‰„–Èi¶CPヌC5€k¨k’ëËpw÷ÏYÃ_¨•â1ŒWë=I &óKo‚ÐmÖJ«1Èj¢³Ø ¢&N*Ê"Ÿ|`¿: °ÕÒsôÁq‡«…ó9àO·TM[†1 ¬(¿3àßg¶õFUpÏK(‰‰=“^‰doÍ/»‚2ÔõkûðQ*Ÿ#À!F‹i`µ–»t/ˆô¶ã`l4²Œ`.×’î¦þù"3üÒZkSõ¡FŸÚýꞆ¨ ½S–ñŒ,÷éûÁÛÕ—åOÑ]$ˆLÀO¨N“r¿Œ‘߀íQûã¶€ã«ØÎÑÕAw9·8怚-® úÁñŽýepbó£OB\JôÓQ³AFËÃr6p/«_»Œ÷»Ù tæ^¦€6Ù¨eëú£¥½ˆ«EWÑHÀu1Nw‘À_ m»Ôj@ú‚jþêÀ³!îxâ×püÙÜ¿fAÙ´À¢` ³d QÈ/kùR¼”L‹yôÉúßô—Ànzê¸~Ð6ÇXì“6±ÄPwçB°Ÿp×rÍÇÇö¶Î ª’ÏO –ªU|ó/ üùýLJÈZŠëDïË'µv n“uå.` {~õ3À_\$ðHD‹d‘Λœ=œ>°õtµˆºü-ÅÆC`Þª>§5P_ÙT€_h:·–W;XÇ@ñ1³Aºõt}.ˆh™,‚h$‘ `$»žwýi[ºÑÄ)Ñ»ATÑÄ^‚þEÚ¹[óBø)žTïªÀL¶RÕÛ`Þ£ú¨­ Žrúb¸³é߉þBÕ¡uAô·ŠîýIì×qÝ ùƒ*½Ó (íO6Aá²â~¥{€íìãˆV\NC ‹]ì1Vü$¶€ì¢§éueŠLq»ÖQ«¶®O¥ õ0zy@%²8œ½ÉÄü7ß´ºq<Ç j(¥ª|ËQòJ;ÅBí NHw3Ãç"\Åý>b^‰—ÕöeDÕÂqÏÎå?îq]褿9DÇz®r'ƒb¦¸äTQMtyDž’?VÓø\rœ¶D«²PVY`Lv6tüú§¶Õ†ärÑNAmÕdKŠ;Ôg€@CP4GY"^ïNß¾6p¦YÑíÞàº7zmì$ˆ/I–ø0ðƒ¸Yœà’p÷0"3ü)jTlTT™T5#ý (L øTœjRX¯´Š‚-B<z*Ô­ƒ·‡ê@pªYdŽî’ÏË@WÑQd=E_YD´m¬±Ì#xq€¿Oà©Ð`, ~úÁV!/ê/†À Áu¡©laÖ4×Á餂Å °ô‰;N-„ï+]š¶ª?P£uÆ5 ËñrZ¸»>‘þ¿$nÝÅ {Ê"íZ°FYTK8ñö©ëò:AàñÀØÀH׊ڢ·{tE+ Þ-lY_™Su KpØ£­iÖG_’R¶¶?´êÄ(mkL·×Z¨ëÔÐWhWÊ/€ƒ|È,. î Õ}™¾OïÁ£<,wƒå3f¹Ç€ÛŒú:æcpp=èú XÊ8 w÷Â'ørR÷ð šZ‚ÞH¯úÛz¼1d™œ)n±Œiâ8ˆ÷Äe ²—ÐÅàIZ’ä°ž• ö‰âRÐî2„±´cÚDíÛÄ“âˆæÜ‚äG¢¾¬£Þ±O>!Úƒ8#× ;È骉x˜+XZ‚ö‰ö$híe39˜Jêÿ­‰”HàËI›¦Ð °9+»ÛCZ~j¿”±Ðè–ôÄÄ|[Äq Ú6}¥>råt;dz·5Þõ>äU5|ú,0^×[êó ¥[Ò“q7Á¥=ê¾PãjhœréÆúmÀj½h•§t\Y Pk ò}9Uì…ÌV§fiûîÎÜt¦'˜;Bc½€›xN4ãìeÊÑÑz狾œÄ⹜\M<6_¨6Þ°–[ß«×Áx܈×Úƒ!õÛµÛ@ß¡-—GA¤°ˆÕ€TϪá@w1† _’6Q ´Óú4ù1úóz°V[.ó4°Œ¬ĹmÈ¾ÜÆÐZIM> Ú9O!Úªb`‹ZÁ€F€záîVøE_Nb–Ü#uˆº'&9¶ ø¢3ŠÆBIKo‡2;h›<±®M Vwë¯õ‚u«ºÔ8+Îr‡Ô•Ü ^â3P_[=Õ&P¬Æ*juÔ÷Ö"u Ô6¶Rr^E ²ˆVÙ 4Ú«I€IS¢•YØKÑI’ÿ‘]šr’OËEò𸢛DgþŽ­£m*xËÊnñ½æóSKîÃÄÀ ¾S A±²­ –s¯Jvs¿Z ª›9ÛzÔlk¥ºЉÅ\øQOg÷é>#²•¨$“L2ÿù=±1‘À—×~6±Ônk¤eØOgn­¦¶DÎñXÈà„Ê'çkÖ#ÔNõ°\ÝN?`•z…± ö«¦ÖB`Nµpà1ü²„ù-æ¹›Äcpá1AŒg<0ZŒf4g¿ù5ÂÝ´ð‰,iÊIµVõUM¼ïìoÖf–ù-§ô]‚X'ªˆàö°8ÊnrA åAf‹HUÛA}F”JÕκÒʵX}¡^>;wZÁoùù?¹ûÜ ¿ûÜåÉNÑhŒ"ÎÎü™ðzQ‘¾œ”¦ÊT>øZùöøÞk€ùp¨=ؼÆQcȲ›¼ø–mjà L`†£ò€oÕ*°–7ùT©u‡: ŒRÕÕ]€7v~{)òó¬½ùÜo=‰Žr¨$R€TâÎYÒDü÷TmU[ ð_åoåkV†õƒ9l¥Fc5ˆgÄ`ÑXË&¶pŒã@HÝÍ(@gŸûÕ VCÔfµÔ"Õ~€†ãÜÇÌ j pCð1ñ F3”.ú%M$ð嵟}j¨Cj¿ÚlR漢@4y,Ñ6çpöÇyìN3Gµ`'3€ƒ¬d'¨{ÔNu °T P¯:Ž ¨†8ª²ÔZÕ‚yÀ¤Ó¸ŸtìDîþ׉,Áèdfk bÜ ½¡«CëBÕÀúFe*?ЈšÔ*Ñ„*ÀCÂ/&ƒè.æp °‡elîR[¸øˆþ¼Á/ÿ­ù= P£Ç V©ïU;¯ò–Ø\wî÷<çN5¸HE>´–“x@>-çƒgªÇ¥•‹Æx(-,û´8 lõl™Æ`0oˆ+€|†‰BïkeÚ?@Ô“ó¥j‡š§æZlù¬ËAuRËU0‡ ëϾկF>ýì‡[µ^UƒÁl¢Vª¥ ºÉhóO¿W…*T w×Â'2ד¸S娆 [¸»>‘À—“xB¼,^Ý©¿jL%ÏÈêcÖ1×€ŠVmäˆyò:y hímCm;@è§´À>d%ð¶r«vÀOêqÞ$¶ Zs{)%"F±„UåZ è$w—*ŽHàËIe¨X þÚþY¾×ÀÚú<4lëõy îµ…žf”¢<#6­¡ë-g´N¶,Û£ ö«!j*Xs¬šêP•]õœDáäBöh‚”ŠÖbo‰–€âJî w—*ŽHàËIUQA•þRŸÏ7 ¬Næ~³Ø^µ 2¶€\.FˆÎ ’”PÕA¿VÛ§ß±é -ã¶‚m—gŽ«ø'ª}jXw˜ ú©YÖ@ÀE<‰€¿þMkðì /š0\Ì1AÄËOA4æNñf¸»TqD_N uJm_JÙï°n2„ÒÁqÀ6϶¤.¿Ó@娣JýˆÑ\û*%%Ä? öÃÑ_ybÀßZg¾o.u©UŪ D‘B À¹£ûþ%µÅC¼ ”­Äë@Mq/†»KG$ð夲T–úÊzùz—õ+Ãz4”ÎçwÛZƒl*OËy Êª*h£µûõ4ˆ“ñ½cßû‡Qõ<‹Á¿Tv‘0ç…z[#@å[³Õu@칇¨ýöƒ‹) ã¸F¶tF‹È’æÿD¶%ËIµS5U:rý-ýñ`ëgv -ã*½ž«6ÈÞ"(†‚š®º3´éÚý²D_áï~Œ‡Ü½]éüɸ_÷‚±Ù,me3Ÿ5CÀõ" üöÅcÞs' ËX"ZnÉÀñgÏ­¼1ܽª"/¯w™¨Æƒ98424”ÏJ¶Öƒ¬&7‰ñÀMb½€ñ¬S@6_ŠÏÀ=Öù‚=ŒXW‰Ãf=㔞æ3Íj êaëë]ÀC*•Aá¯Þ—B×3XÌ1SL’Ñ@ú‹Ÿ/>›îf…_dIS^^uнÀRÕ]mµ€ÁJ;ØË!À‹Ÿ¨Õj#?‚è-Dl³ŒÐÞ·°/Ò?0ÚƒZbö03A ¶ŽXí•HàB.úRª Å$‰6@;÷‡»IG$ðåUJ1ÀGâYîŽ1UÜ´¢9ܸ€bJñ—QƒtqPlíiãG½ÈkŒ¾ Ô&3×2AÙÍ7TÀM•sÿõ% P^ó€B1C~ ÅŒÈ.Í/"KšòºV ÃAú4¿¶ ÄS¢«h Ö@«Xõm‚l ²€õ8il#“LàSV±´OŒ<ývЗØÚÚ2ÀúÀ ZÝAÍ´¦Z'IÔ¦ Ñ~õˆE€ŸÊ@kfûÐ8 Ú^»Ó8 VÙÐ¬Ææ@ó^à@ðܳ›þÝÒ¦„|²ÅB‘ ¢©\#ïFŠÙb_¸»TqD_Nr¡Ü,ó!êŠèËcšƒÖÔ¨i›%/y?+û ÌÍfWs:0‘‘âNÀËòÅ”‚–nkaFºc¯}/¨&VGk!X)æAó P»Uz‚Ú«N‘x°aÿ…ø)æ Ð ¬±L\'׈1, w—*ŽHàËIV’M´.79îºøx0ÚÙ'9J ðT‰ßû„ª˜;­KAÌæ1Feçï§„RФ-Éxô›íAÿ0g™ýÀ\Ü @h¸94´¸›)<¢>Tû…h(‘Ê8ñ1ÐB4’Fˆ9áîRÅ |9ÉÆò*ÙâÅ?¿ô7l‡Í `AI'oc¹Ìló6sÄ1ð’÷/MØöÙc’}hÕ­™æUšîÏôwߢÀ¾à âT3uð7ÑR4ý§~>þ4GÙ˜b¤˜Ô•]d6Ã8±4Ü]ª8"/'¹Kî’»!frt»h'è‡l»ìPì)[äw9ÏzÚª Le9ûQ! /h1ÆGÆI°]j7m}@[zÙªÁ™¾Î7ø ÿšàzPiª =¶\Åeœý«ñË)ËÕ^âèÄ£ ‰‰²ˆžb߆»KG$ðåõ%³ôÝú»úS ;êvL7›©} Vª«x¸‚t¢€lŽq(8û(ÇW®O£Áõ­ç˜§¨ç¬)V4øzúÞö/_ý@ýÀAPŠjªpmi "…xbMìf„0u³X¯òwŠÁˆ²-¶uiÉË´¡ánRÅ |y÷p±OL“ÍA|(½Z3 ð5à'—CÀ~vsÈ&Seƒ{M”æ ±G:ÄfƒUDÀ(àË_‹²¾çA¶Š•D:Ó¨I:©ÀRVó-F„º…6€õºõ5Áþ˜£‘s;hA­¡6 ÜMª8"/¯ó·âÙ ðËîz`‰"@6;ÝìP{Luœ“½ÊÓº'¾ß8n<«Í²¦¾þàåí]–êõ®ÚôÅM@ºH%XÃ6Chdèdè°N«j0؎اØ/ÙW›®­w“*ŽÈO¿3qƒ¬*÷‚HÔBÚD ÇD Ç1ò€}êGb²)w¡{ŸóYˆë¿;öã¯;>†²§7ÛBÙœÒÉe/€µI½gm²Åhà;öˆXPKÔ«Ìó2ÓÖ§Ê#»€1X_hÔ™&ÇËáîJÅ üïLĈ“Ú+ ÷i €†¢“(ž%^= *“g9ÍÙc«Mp.·{l—CTç(»ûqЮrut†Às¹ʺxÓÊÖ‚:h}¥Ž¸U8骥jÊ'À&vrBÍbk)¨ÁÊ.Þ}µ‘mÙNž’ÇÂÝ•Š#²¤ùÉ'Ðíʹ¬GT=ª‚å´2­Ë?‚€…Âým»6ì/Û¿°Y`“Îǵêo õ øÖúú¿U¬ŠT2p7ШCuRE¬ä;¤µP!˜­ÔpîG‡Ý‘Z‘VS»ˆO)8_d†ÿEѯÆ< {R:¦>%5ÊFå.ã0ãÍ¿Ct¬'Á]ˆ%°Ž§²T«¤½ÆóŽ$»{yM †`@0PÜI:ÐW”Mñ¨V ®àAÞ„’†euüùlg|mÛ•jÅ~wØòmímw†»+G$ð¿³ØšqyñC!uEÕ%éoÑÉ[^;~Tqp°*…èFQýÜi@*É$ ˆåR¦ˆ^ ï²/·½fêVK³[0=ô6¨VÊ¡^NÂ|7R•FÀiõ¸ú”<î½Ïw ø,ÚÝâ*Ç•Å×[7Û¶æáîJÅ üïÌ}ÚÕ×€D-é@òdØ–Ȱf‚6Í\tñ|AO >•E,°]­ )›Ø"ç‚ö¤m·ñÐË¿+Ь’ÐÔÐ;Àœa PŸ­4.?{î»êÂh6‚/&˜Œbu›Á=Øó¬[‚æ×ò´³ªïÂcáîNøEÿ;“WËTi€-Í–jßÖ2m†ýz0‹E™5ÔÍêE6x]ŒS¹À ~ Ä)y§¸´!¶Xc#0ÉÔ X/…ž®RBÞ¡>¹€ƒ<‚@’8PßbŠy@ª¸Vö-_ËÕã€xæ_>¹û" üDFksµH¨š²§òc [95Šj—ŒñöO”ËëØúz[.Š[EsÐÞ3òŒ—@·R­Åš8¨ª³ºUuQ]4g¨^Ìå ‰Ú\ ¢µ«e‚l,Ú*P{i¥f0:ܽ¨H"»4Ûûv·ý:¨?ý’äF/ƒí§¨¼¸)pèhfINuð \¬¢¥ØÂB»äâAЮ´u3>õ¥YͲCH+›ëïLPÔjÒ™V@€BÎQÔ >ˆíF¹(ÐîÐvq4àŠpw¡â‰þ¢7ÓoÒ{AbzRQR-«íN×BÈÝZrƒ˜ƒÕLù”øZŒ¹I¡ùÀÞ2úÏQPŸ2KLÀe;|q nP{@º‹Žœ=KÒhĈàJQ ®>èÄ“Pžü5EÿG ¢lwÛ³õ÷e1—Ä öaQÝâS¡ô{߀`&”­õ-ôÏÛ#Ž÷ìË ²'½C•) µv^bPx´t›P÷¨#ʱP<ÆýœÝÇW€‰‰ lPÛÕ ¾eϽ(ÜM¨x"ÿ“T~¿Ê™4 j´¬ûaƒç!gNÁ %W@ÎggçO†»±ë\òRCê㓘µÑ_AÎ¥c½/A¨²µÕr}0±7Qx…ªxXù•PÊÏÙ;«Î„{ÔO$ð’Ø'c?Í‚Jo¤öI«÷ú¢ÍÍP´Â[ÃŒKõ7õÄo‰{,z83݇œó!ØP áq(=S6Ý7‚§C[CWEOnŠÈ!”TÃÔP«¿úÈã8§Â=êŠ'²Kó'1 Æ‡à‰Šú2:T¢qØé‚ÀíÖàà0W[¬2Ð?Ð^×^ƒè½QÑžOÀ~›}€mœ™—ga_ˆ_7%¦DÍw§¹øB¬ÒÅ|±¨*bÄÕ€¤ò¹3)#þId†ÿ“É·ô»uñ™Éi•ÛƒgÛál…KzÀdíSWAr­¤·ã‡BÂæ¸/bC–÷äU9¯Cáì¢‡Š»ƒ8(v° pQË@L××@¾£½«·ªÒNt ÷h+žHàÿdNÃyk64~iL“‰ Ö9G= {=Ç*eo„ÐÜ£­x"Kš?™Þ]©ƒ”sO„ÏLN+L÷—Ë5œw9ZÙƒ·gY ¿„“ÞÓ{ «€Ç;1¾ ¤&§Sƒ\&¿‘[Ã=ÈŠ'ø0³Í³½c[ EIó“‹¡j“ZïÕû=ôÛ\G¡øÚ@õ(Ô™ŸñlµbH\ß"v#ø«뇞€Â¼²íy`éºÚcAÔĨ©Ñã@èÂ-bÊ_ß_Md _AwCŒŽPí–j×T»N]™•Õ ŠÞ-¨›× jœŠ¹Ó¸b?Žu¯„¼œ’8ß1P¹zº}$èËl_ÚVƒ|C§€êt!5Ü£ªx„:'Ü…DüåoÎ?¿Žø÷ß¼{= n}û»Pµ{Ü×× ?ã®phXA›ÐhZÐêͶ‡ †;cFÍ—Â]}ÅYÒT4>|ø .+®V\]¨r}ºU½ 8'$¦¶ƒì¥Í­þP8&øµ\ 5¯©7ù’§ 6'.7~n¸‹¯ø"¯h8píñ€èY±•ãJ îöÆ;/Ͻ4þáÊ+ÀÜîz8þZ¨ûà%…ÄeÆ ‰[îâ+¾È¾¢r`ÇöoìiŽÑV?ý½jÄ·O<‘èÙC|.Gƒ³³³±s(ðmiî¢+¾È>â¢YÒD\TþŒ¯XlúÎ%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr5.svgµ#4IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll6.png0000644000175000017500000004262312240014740024036 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>DIDATxÚíwxU·‡ß=szNNz' „¡÷^ ]ET,(bAA@PTP+("Š€•¢t‘"½·@éýää´™}ÿH¢ßõ~ÅzCü|Ÿ'Ïz’œÙ³ÖÞ¿³gf—5BVÁßüÍJM;ð7óÿÉß‚ÿ›ÿ*þüßüWñ·àÿæ¿ CM;ðg£÷Ó_Õ¿××c®ÞàÚìj[~ü}=}ÛAî×ÇéàúK .»Ê >Ùlb(!Ð9Ì~yX~ pŠÀõâVnåñƒ²DWebñ…2M1÷‹‡”b0]c¶[V-ÉöšÍæÍ_›ç7ÿ«šÈRÁ¿É¿×¼K|_ú¶€< Èc`hmH2Ä€¹¥é”齚®ýËQkGiÖó_Cé/¯éÔÏÊ] ?æ%}†6VÎyå÷:{ÁùAg·žÝéϦ]qn9”M+Ž+¼ü^ïRÏ@ÝôGµ×A¾¡]§mñ8ŸJ+p#?ÈgÁ`9Bß|ÃTÚ€ˆ=Eo0}gêkê†ëM˜ãA¹ßÔÜÊÆróv:jzl*$ÕÍOÚ±WÄc“Àø•)ÇT„E@(q@äg8Å `¡œ+_Ï@oGOc(ÕJ3JBá}…×v ßäWÁ±ÚñƒãDu6ÚÆKFŒáÀ"ñµØb¥Ø)ްˆH‘Œå!®éÆüÿ£Ö Þÿ…æÐ^€ü yqyBú²sζ€òe§Kl€G»à; œò/ñ惯oöÎC9ÏŸ ¢Ÿ Óù”¾\»\'Ÿ•õAî—õG@t‘'yH!K~øYÃg¬‘ã òÞžoŠ ~¥–«E „©çÔ;@X”!êu@¨²Fu¶—'ÔsàÏÙèÅj´©5È©Êu (©Ê+ª D[5L-­¹vHÿüþµ¾û@ïàßê_2U{Äoe•üÜ?”¡rª>D"ãehG¸[ ·PÌÆ– ZÂL£ÁFàé ½Þ!*#úHšN\ «+î©H„¢ ºæßÎÎ¥SŠ ”Â=y- §mfvÚpwsZKåjm™o(˜žR±¢5†ˆ×Cç ÛKWóh»Ä<åà}¶r0IàGÅh(U7~FLUÖ(1”Sd/{lNË@îç 6}e ³ ¸]é^g;È]XtsI:îpÞå.¿QÞ,Wƒ’¢º Ï€2R¹WÚfí1}øø¬ÞÏA+ó_åk†Bãf°µ5m2 ‚À Û·æ‘ LQV(uÁuŸûvow(Ú]>Êmý˜RÇø=XÌöSŽç!xH¸%ª"7ŽŸ¸¬‡ì£#A¤Ü šÀÐÀè4½ŽzAÛ‚ê€ýcûi{FM‹àãòü—|ÆrÐÛè1z ¸'TUL†¬–»\ø ®Ú¾ë(¸¿,Þš"õÀv–UP7(¶ux°½f7}|.»ÉnÀ\:’Jså1 E,£@¤‹mbИd *ðTÖÉOµü«š©þÔOÿ—H@TýÇ S€ä³r·,=G¿S.ýY"K8ƒhOnê‹nb(°Rn“›A¾À,ÖÈ9ò9àN'‹Ä] t—Xt¡1 2 ô{õ9ÄrqF(ànã½ä¾ÒyÎHï——S₲.îyÚbP™3­ì/:‚ƒ+ á¥ÆM?Fö&›| ¦…Æó¦À'¬"¬¦EòÛ¹ì¯}¬½¨Í€Œé³Ólµ2}Õ¹H(¼pFö°£|¦}Ôé2 ¬Š)ÕÁ_Ætãvƒ¦Îù=§0»ÉFÙGNf.0Œ©òkå7ìÊpâTÔ?t̪ZøFL( ž÷‰[A|ÁóLž·Ð ¨‹’ÅÀ) ÈâD8‘@#Ó D,)¤€ÌÀƒøœ½¤ äZvù”ᆊ®4f3œ® FÐN„߯MôŸ׋îvÞ P’îüº" ¼‹µ¦úwÀ5âseÈÓb¶ Å{6éS€Ì¡oCçñÝ[]ñ8"냚״J~G³\.‚÷žô®÷î„⃅- ¯ƒ“Úaëþ«¡äTö…ôÅh6ôÓž€ä udTcðYK,Ÿv‡©Ïù¥,–ñ ÊÏÙ1¢ÖtT—n¼ø@ ½é ìb±x”^"K|"M¼ÍhÐgè/È¥àçU¼káôVç\ ÙsœÙ~´8Ôùñžm Ž¹îº$Àá˜îØ\ÓÁýz.Áç­ÊMÍ]玟J<ñ0}±öäýÚ:QñÅQ=Ã&ƒš©tS‚¸+h2lòkÚûZŒ # „2Ê8ÀaðŒöø½1Päëi’]}Åh¨7­Éñ–Yд{³üæ¹5íü¯ç²™x*¾­ (ÿu¸Xv~çé­‘aïgž 1—Âú=Æþê õ ï‰Ç¹äQΑYÓ^ÿpãÁ „JˆÅtÆ5Ò²ÆÔ",9àÌ)•¿\ye3J›Õ´Ó¿ËfâÉݱ¢Où7à´×É»#zsÂ@°ßd-´Žßm¿6 ðò_F XjÚë¿ PŽ 7ÈUr=;@QÔ«”  ìUŽˆÐ>ôÞìî úÿ­ÞñÀõ½Ÿ~'ˆÛÅ@zÿŠ8qQâzч $ ¿Hå.J@„Š,± ÄzñžxÄH1”Þ ’ˆ'šŸF3äɵE bü”‘\”ëå`+Kå35íÜoç²–¬F‘ê=ê‡ód|ûD e.Mõ„¼»‹?+ÝQÍC¿–¦åF¥r)‹lòO ª¦ŠŠ â)1EŒ}£ ”VÐFký€%?dˆÏ…Glå#1S$ƒxS9-n%Y\'~ñ!c¹0áÔ’C>ࢀ" œ\òtNs8ÊAyä1y‚3@!E”𺫿> (€;6uˆ"°aÅd‘GÈ| )Ê©ÀMåÁP‡(B1â1qð†\Jp–yhÀîã^ÀŒáOñãæ²¼é#SšÉ)¯6ÞÙä 8æ-÷§CZÐ wz niÈëP³Çt@þsÁëèH*…$@¤3YàÝãYï›ùŠ>*Yþý½ã “ ÓÀk>nÖ,æ‘`:dcØj²:_iâRD=àßËý åYÒ€üy®iî±`¼Õø™¡ æX¼æ 0ê¦M¦D0^mÉ7ÃëU–0t·L5ÝimʃÃgÎÃÍ–Q–Í`ØBχ~Bšmu”y†©¥é§Åu4¹FŽ‘3A\‰è륮à7jWhœk*nqÇ?@S´æ`Û`¹Ò–•ÆïuA]¦ õAKÒÐo9EN’Ï¢êaSAù]=n¥8AÜK®¥žè.r/È —è“ô} ¬VÖ+[€æÜA-XWÙ þ爭†C¦$Pšâ,£€³b·è¼*ï‘Àdÿ¸¦£êVF,æs‚>[Þ-¿„ôiÙ&Ãþ=ÛúïÚ Ù7ok¶«-h;ǺÞ¥§¨/¾}·±™áe/+Šr°Á|ÒT†ÇºØ40UØ/Ùƒ©< ™íA0ÙìlKÀtGàn{+íuwÄ=>þtÌDˆn特ìÖ Øj'㵆C *Ôõš(àoîßèʯt&ºî†¢ …Ö¢•à;çõø†@ЗŽû+ ðºdÇbpÜRTŽÛÅ ¤)~e:ÈEò)ù ýÎg ?> ŽHÅCbðºt1䲈¡À¼Í 5­’_Îe/xÃÓ½æ@0^mmô±òÁ ½ª¯Ö7vnS©¼çôQ9^ïn3Äx`¾¼G®‡Â>Y䮂âNi{3—BpWO}ïLPzT(U¦Êt‹¼wøvƒ‘Ô¾ðŽ÷&ƒ8Rnríž „€ˆQ¶*g@„)IÊ5 ?¢Ü¦4…œ(C7u \xÆl0×íxP¬ý P¿uô Üfá¸1p;Xîšmïr»ÁlX ždב eÚ¥s£A~]Ø¥ØÊ4_WïPZo·&±Q|‹˜h0¢ÃÕ­ôp^=¥Û4p´ ìeß ¢5MI¹—£œù‰Ègøž ÐïÖËq Š»Ä÷ <£ ›€¡ &¡¦Uò+ôTÓü'ÂF´‹4@¶u_ªwò˜3¦ûgz?„0CÈUA6à˜O‰(±Äl–ÜAþ×õAë¯(ú2FÙ¤lÚÒðWnC¯Q.{Á‡]þ}¸üŸzÕ3Á£i%§u“|Å­Ö4$;Ø ¼.ɵ€”+9(Ukntüø€d;Ù˜&ÏÈáD 2(Yï_8P½@­ÙÏìâŸ}nh¥1fWÙ•ÖÞœ™Ì¼•‹åéJ˱’wËúñ.UÞ¢' ~|´­ÜG‹œ]iõØÒçœ  âé“cS'ÀÁä Ãc &»ÎžèxˆÎ‰~#â @Ñ¿ÕR9_¡ó¯Gsªþ/â‰&X ž÷ƒëùŠWÜS¡xyyž»)ÌɸK‚ŽgH½…½¦Õñë¹ìoºÓtÊt q„YÀÓU>¨Ï×ÚWZ Ù˳€‚¯jçRåxy)éd‚¥I ¶3åšÞõQóæû!–³XDýŽV ô|•ͪ4ÕBýñ~ze•õþìøªYròÏ>_m—Tš¯HÁî ž(÷bóœ÷ÀÛÄ9ݵ D<± ØK)ùqXö_Θ1al˜P¾´ .ŒÏ9ZÐ.¤¿ì^ÍÖw|±Ç`HØ]Pƒ@§jãÔe3ñô¯èh >dèjÌ%Ù¼Ôöè •aêÃàÏö_ë ²—¼ŽÁ Ó€ú@8ÄÐv`ˆ·)–÷ÀØÃÞ5`6ˆxÑGD¡U'òýAW ¹´ÊVoN)øÙßÝ?³ÕÏ©²¹?³%Uö“J#ßð]í?Z÷’ƒ¥ À»ÊõCEøj÷ø·²–Í ’I îŸøYýpÿ¦˜.Æ‚ÞD>(çCYoçUåóÀÙÔÛSÞ ŠÓ–|ÂGGß;^±_¼îÏo÷?‹Ë¾‡ÿÑÑÖÆLÍ!¶"~UÝaàŽÊ[–î„kaZɈÚ0èu0Þb0Îß°T®®bØ›…¶ î Ž©Q¡a=ÁàÔXõïùðJµ Ïÿfÿ~¾Y¼êÊA†ž 9Ø[ì›þ«}û‚¿Të¨ß†b8Jå(K8@åïÊ~±•Åà{Ü¿K;Oæœ-œ þÁÆWí3¡nQÝ+SŠÀ¾ß>,°%ˆ¹t¨ÌÏS;¹ì{øj¬ßY›YGC«wÛF·}L‡_…íƒS«3Ê9 ®žc¾+›D3"@.”Ïò0‡÷™ Q›cË¢\]¯nV|+p¯4¯4Å‚o:WÓ ¸½¦#ü…«ì~úpÈ—E…8∸Vt.òÅy Œ‚©ÜÑäù‡ã«…Þ‚ă§–s¡¼ƒ;ÌÛÎ¥çŽ+i†£cÃFA‹®­¶Ù ÖGmi6WMÿû©5=¼X(ÞsÁ†íÀ¦…†Ý Úã†'d¯,¨(éjº¸‹à˜øh@,ˆWÄ\<gŠñFƒâáÉåu×ÃÉÃ6†<ò†ò ŠÍ`éçõ²sMGú¨~Vp*YÊ63LÝM›Á˜ln*£ÛðŠúè7û§kù rž ©œ¹].æŠG@Ý¢LT|•–÷aaH+Í=ZÒÛ4|·ÙP¿ucg³'ÁÔÎôºéëšú£ÖþçDEÍŒe=ê•6ˆ‡œ‰àêâÖr:@Ä×ÁÍì÷m¢e„9‚óƒ²Cx“¨ÉMÁð|ôÅÈÃó:L¶•áÿ€Ÿ®yÕ+1/·õ!ªÜÚ§TgÚÐZdÑÁØËŒ©+§¨_ª½Á®ÕC=|#â@v“è‡À»Á—ì{ Jú8ã+Þ… QùGJ4(«›Õ1ÐtiJû&ÏA6ñïÇ Œ£~*wšÕZµüD­¹¥ù9±w×YW礜j^§åuàŒ•Ï˜¢àؾ´;²_†£OÄ¥.„´Ö?Ë^E—øJcAS”)â$Xç†O¹ŒáÖ(K"Ȫ ®~è¼\k&½Òˆu›2ÔµæïL+@ b§\žg|ƒ|>ðFûœþùà»Ëׯ·ÜšGõž…¢Â’Ãñ%çÜ™vÈ­(Kôt†ÐNѧã.BÐÛÁ=C€áZC#Ãaþ2B¯¦Ö†¢¼¢¬U6ƒ)ÞRײLáÖV¶)PoK|J¬Ñ{GÃ[P>´b£ûN8í;ðB(d¾’91ûûFû^ó 6ƒéÙÊrEõ¬a÷*[TÓ‘þŒ;+¾–V„ƒs¦äï'G§mÉœ ˜o4}³ÿ }З|ÖW‹w±‚aá5õ ˆÙ~eP 8gúžã6(ÛZüQÑFЖk©ÚkÀ5ÌçåšöçríÇ~9AØIëõ–Y–\ˆÚ&ĤE΀ð›C.…€¥—iŠé"X·ØÞ±,È”¸Òh;:l²MOÏÊâä“Uå^®û6ÏVÑTÝ§Ü †—,S,­@ùÖ®^b§xW<ÊRe´èbŽ2H4µ‘òƒ2l3,6óa¨3(òxè)zÚ¶Ú|T4w•¸¢@Û¦=ëYÓAþyÔÚ¾+•kÁð¹ñ}Ó[ Õ‡xǃ¬# ² DzB_ iQ]ÂBÜPoL²˜ç µsÈ ÁVØ;üð]'ƒ¼ çÈÌ« Þ]e·Õt„ÿyc¥540^oüBMáÁ!‡ I‡†·×sBÓôfo¥>D«¯¿ ¼G< €•£ öˆnLƒª–ª7€ÜTô~ùRP ï« @ÌMD90 ª†3ÿRÔþ>‹K²˜Ë\V_³‹Y Þ¯j[å‚Xƺê#†h0MoéˆùzS (ûÕbe2èU3˜äUq¹æ¼ù Ò¨‡ Wª*XãÚf%ټѦã^Ãõ`ÔŒW¨_ƒ1ÍØBýŒßƒÕWÀ§Q‹@´nŽ}™'šŠkÔÑ@Snï×tµ¾‡—ýä:€6Þÿ°ÿ=+•8y7ˆö¢…2är– r’ì%oß`ÿuþ½àªS~•ë5Ð_öEù`ØÆQúV•;³êoVÙê/@»J#ªÇí«UÏ”š«lõÌm•x䊪߫¿XÕI¿t¨úsi•FùTé®8À¸Ñ4Ûäñ¤z»Òä:.ƒAAß(OñÓ¢°êãCq J±X&>ÑAô·ƒ¸M<«Ø†Ä‰9UŸ^Ãû'Pû{ø²‰t€´v/°‰¡2Ôç•`%¸\|$6ŠÁ;ÀSæ} ›äßWxh½+nswó-UåM«²Gª¬£ÊV鬴Z¼ß+ÊGÊàß§>­F€¹:\)ÿn¥·ÚkLç «Ê ¬²Õ_ ÿ$øêÿW“~TeßUR•O@ùÈ4ÏèaSz)GÙÂwü´væÿ–_ùwe”·ŠT‘b­²N| ´“x¤¦õÏ£ö÷ðGX+×€ŒÒ¿·i"7X&R„X ï•÷è)Öò>øfú >¯*¼»Ø zšû’§Œ_U–'ÆUܳÊV'”»³Òøn®´Î¦ÎÆ»ÀÕľ!`+ˆ;Ìé&;Èf²BN‘íÞê öÇJ;:ËÀÖ¡r+«éd•ßU« ©ÎÀ[Ve.Ðê+FÕ­–þv¥U®W†) Á˜j.1O¥¡zQÉÈ-U‚-eÈ?«°ªŸ *(ñŽX"ò@ Ï+¹Àõ4ÿñKÿ¤Ö ž}rO£ä8ý; Tö—§N´§3P€+0œâ^Ð{û­Ú p7r~ëzô¾-¾ù ÞºT+‚+­÷Q±ZŒƒŠñ¶ÞVÀº"vmÔvˆ›œtsüSx[üþX #-½ÌÏ/ÉaLo‚³¼¼%”ÍM7\|JïÌxìân(i‘•Ÿ ¶«Ê]®0Dò(€G«â¹Xe«—T­«¯¾âhU£4J±:E`‹°eX`ØeÈ5| òc±€ÿ©àDjTs€P1šÙ€‘wD¿ªl¨éÆýã©ý‚ßÁ;òEz'-ä¹\ŽN¢þ¸©XÍÅpúƒþ™nу¿½Ûë)ÙÓÿ’–Lg)KI¡>hAbˆhÚ²à7ûÀðerº!J´ëßÒMbÛ^Ùl4ŒO¾-q˜¶0³1p;”7-×]ÍáTî-í-8i>xïñíp©çÁ#Ç¿oÚéŒÔ·A..[Zþ ïÒo׿šVù\ݳW”¤UEUýgð©÷‚í»Û– Æ•ÆBC{àC^‘ïWpã¿­7 äzl´F¸ìÇDG ±¦öÏ¡ö >•E,y¯þ™ÞøX®«€¶Ø°TehËny…–¦E¯•kSÅÐ3ý üÝ@¼VYœÞLœä(¾ÓÒʼ "f7K ‡öC^ì{bÊëÆÖéÁW÷pœs7³Ë´”q¢XIÖcâܰÄö-¤LL¹·~}¨ûI‚#vdnv¸áHØ4gÕ™¯¿ç¸Ca'ÎBе•Y<”w«â^e«—/W­tÔª$ †‡T X? Øk­ †LÃÃvŸÈwì™ÿù‚¸êÇe_Õo€Ÿ;ªòî$\vË)þ@j¿àÓä{òa³d½È ²‰¾x•›/*7„te¬ úUZ_íx½® ‹A‹ð?áo ²êÞ\v ‰Q"»@¨«I— ùë¦sΠ² ¿=D¤¼ÄЯӧêY o“»ôWåò¤r³Ž €9¶Û!8-h@à`UlwZc¡¸®k¾û186šE샢ù?2Bp©KqߪG.‘û@V_¥²1¢€–€0 ½ÁzÌn} gŒu [€Oé.?†ñ kþmÍI4@K{@ÍháæðÇí¸¬¨ý£4çyƒ›€1z„f–Ël9P±T` ˜ÎC 7ò¤[Á{º\qõ}ŽÏæ_zW‚q€¯ƒq’aDo4)i/Ħ̨? låÖŽæ7€9œk@[¢ïÓ£@ne{¨\ŨWÕ¨òi9[.휮ëÝÀ¯Ô÷ ØŽYZJ sv—·ÛjP¿ ËÝíVƒP÷øÃàûÀ|Дúþª›šF•aÊ’ÊMZõÚÏ o¢À:Ûê³´Ãgê<µ/°R~ÆÚ_Xw~@⣠㕻zmÚ”ýk©õ‚—iò yÈ´Z$ð©¾B¿ PqT ^Tõðã z]m‰¦€×Wž\q3ènïßÝày”ÙLg´£³}-Ô»¦ùU)c¡Ñþ”­õç€ÒW¹G©R•.̯Næ*¿“{8b¿x[ÌÓc¤a&4˜Ôôù†Vh¶²ÛÔöaàü´c(T|ÆqoU>‰ùéJ$ÂM×ïóf³ÏtÔkÕ”dkÙÆÞßP‘V³ËŒZ/xÎñct»ö(Èåò‚|#†X Ê@ ×ßÕÓÁÿŽ÷¢÷SІT|ãÙÞÿœ– òqºÁ²_ð Ç Ô½#¢!„v>¤È©b'0E>!_ä×':*­z[à ¹Kñµ˜.†ØIqÛ£_‚ä·š7L9ŠÿzÌ$ðn“Örà•ªãÁØA÷‰câUÇMíŒ×ƒ%Ñ<Ñü¨«?¨O_²™¿À?~ÑSôD‚˜Îtt õ~Áѵ–Ú/ø VÈ@Ž“Óô,à3™¤ïâE‰ ÓÉ"|—ü%Ú-àÕÜ_x§nO–g;ÐWk£-å´q³1L2x™Ã æžÖÖ¯Á¸ÞÐE= ô§ m@žçÒÿJüôK©z-¦ÜÉ|[.•+!poÀ ëwտθh Bîm8©~0›ühÕ÷ðoCèj¾:D®i‘é °Ž·ì3'á=%O] ¬d[?Õ.㨃:Ñ"è¯ÜÓ×~ÁŸ‘x ä½òˆÞø„aRê‘@=à,™d7Ý7ÖäOK“­ÓêOUZË,iÐ`D£×’ ð`ÂG±½ÀõªÍe¹UyEÜ"Ï0\õ‚²Çx‡a¨FC¬2”VÂ)Ö‚¼HÖþˆV² )ÏÈ™@,®Ën#ûHíü5Ld.hó´žšÄk„Éd×1‘| p¤‘Iøtÿ{Ú0ðÞê¹Ò7Äjßÿ@U‹ºÄÃj‰ú,ÇÍç@ÌS ê2à„\ͦ?/ $e'0¾d,3Œ€¨sKÂâ à‘˜•‘@ Ž O(×)FPvVâ0Ö7N±r1ˆÇÊ%~zåý<1 ‘¨ìš 3ov”ªaÉ¿$µVðZ‚¾D/ßóÞ Þ-`þÀð•êãAµ²H§ˆR ›|ŠAk¤Í×s@[îAKôkäY~L¤LSW)ãÁ8Ä<ܼ”O”£Ê|à_É-b N<¸A4!‹ ƒEšð€%9h…ã°¾¶?$ „Gý\ ¢­:^­J¹q§á ‘Ç}@>G9ý+Î[5#¿¦RøQ™á—ß>Þ?Z;ñäyÚó©w¸;W4­ÐÁ|•±ÔÐ L3äÁdË#@8ƒ˜ÆI†uj, ¦ÍÆ/@^gpª) ßQYž˜¨^TŸÃó–§Ìoƒrƒ¡‰úDÅôù·B¨îU”ãñŠÃPPâÅëJÛÅ›LÙ^Žåeгåý[£ä–‚-t—Ü/AÔÏ‹Õ ¶Š=âྦྷ5à¡?eûWT­¾ªö¬>„ €»övƒÿ™Ú+ø/=Û<Ç âÖŠH×|°$“ÔOÀøŽ¡§<'³ ˜Ë’Ášg¾ÑtØBmAocnm>þî• nÅYC’:lÑã>ÃYÃnCcGäQÞ¢rÞqô¿qHV>ÔŠ@qV,ÿÍÚ@- 7–¾]Ö ¼º¯‰?Ìߣ K!$ÅQð:{©>5äL^à Кžt„È!1"í;4ipâýpú۽Ňw‚Wñ6ò9AÏ­ñ,ï~ß!¿ôñrŠž¢5K8ò8©Õþ…¿JÕGRIâå¹0ËfÜ]Ó­ûçQk¿ËÞ ¯×«g¹§…; Lša§ú ¿4<¤ž¹„u|t¤ÍÀ6ÀÚÂr7Ø?rÜeoz½€­À݇;ÜdašÁƒC3‚îÓóYS6p+Cäýÿ¶+×êÔ#†H>Ù\Æ€³aÅ$O78Z'=0ç>Øyå‰aepäÂySV<¸ÖºoôFÄ“\ ¼(çÊEÀÜÆ`ˆ»8ªÔÍHy6é%ðœ Í ¶€w½ïZŸ|îÂE› ØP<¹t-xÆx_öß¼)žÿÛª«¼NU½Q®aë@ÞÏ8Æ'9Å©šnÝ?Z+xm¨v›fÿNÿ|¿”W•5âaPŒb¶˜ œ%ƒK@¡áfe¿r;G™ãLN0Üà²&ƒ÷Ackà šÌ´öƒÈ«¢Ò#îë<ëû–/@6‘I²Ë¿q$„@€ñµx òS‹g”î€ÌåW—®ƒÄ[_jÕ e¶ÞØq¸:6Êò+¼%à:\QÏ-€I(К&4k®e’yÎ ¾9è90v‹¸.Ô¶‡”oÔV õÉ›Y8Îe¥M? ¥JœAôW‹_²Ò±zx´œrYä‘Gà«Ê³ÿ¥Ö ^Ë0™2Uî—O‚Hãm1Ä—bŽx pá ÂP•6ûñwƒÒIm§|ês–=æïÁŸm9gvRx&à = – óͦgAvÿv¡­ÄŠ Ä21™¡PúrybÅ×PÐÕ¹Ø[ C“4˜ Íã[Ÿm7&'­m ùë&ÏÇPä-Û^Þx• b8ˆ¦$QÄS¼)‚1Ä"̉`«qUذßh‰4å‚–XÜ«ôd¤NJïeËê–-å åVÑ–Ÿf‚ÿÓpªŠQ˜cÕêRQu«ó¥Ö†&f‰§yÄbñ)_€|Ž/åjïɯùšŸÞŠWÍ~¶°Äûâ”È%ÉÐÀºÃš`éêWûàØ84à307Î7¨Àƒr–|ã?Ô Ä¡s´Åä+NÐP:]`ìcò˜—CÄ[á߇ÅCܪ„މAÁíßEfç$wÅAvf$~Ar‹~ Œ3ÍS4„Xb—EÛŒ Æ77µÂá Ò.ŽÊ¾*V8;¸føD,¢2§¤ŸÒeÿk*deÎÈ‚ªñû¿{øËõ‚zJ=êsêÃjÐïÕïýAÏ•Sô±@ü8¥O>ç¹<+öˆ% xÕÉj&¨YÖ9–Ý`8f–»ÀØËiøÄ4!E)È“¤‘ñOøéµ˜•„â£Ätå¼ê¡ª‹L«@´T*ƒ@œ‡Å0t4Þaj†Ö{í-€eêiÓ0ЧjOj›@Îgï€|Xï-‡€eJ!åÃfQ¶‚µ^¬¹Š^ôíòÅBéŠKrº‚w†ÓW>d ©X€Lò)ìXþÏh•W>3ÛÙ 8ä3òuÀð³,Ã1jí()Ñä0uËË–^Pîï ­_oÿÓš 0±ŽXÀTuKSÈ9.‚˜Kìå6C'5Ô§ ‹ Ó@‰SC íâ‘äÒ’Q€?Çù¿K Ì1¼Hy€_Þ.•=ê,P²Œ÷*ã&Bßýt˜q´)Ä<$íjÐ\/æœO{ ²6¼_¼"ËB/ å-åѬWXs- q_ݶñ[á´#îΘïÁûÔ±À3#À¸;Ï\Ðò7dØ.õ‡Üâ×|¡ß_å˜ Ê=ÊUŠ9X—þƒÿF¬8€eòi¾“[õà*Êå  ·ÖtÿÔÚÞ’d)±4ë"[/{+¨êë·ø4ˆî4§>`ŌȓÇ9â]åjŠbPÔûA‰`q(”dp’“@:~þåÚ‘L)¯žcžngn:{mZÐÕîÓV‚°‰PáüGÇ«â±à ä*'€<©7Ô._ÊY²eM·îŸG­¼9Ñ4ÏÔ ¬í¬ë­½¡"Þ3Õ<ã|ßûc€î´"‰ŸŸÁv¹ÈWNˆOA=f\k¬ ˆÉ´ýU}–6 È‘GåQÀNø¿Í¼õ€¸M }šüTîgaù=®›€uÊ5‚cBF„½†`ã-Æw:L¼,fŠGÁºÈö­íˆMÆ'-kÀ3Y[¯ô~àáqPÌä* ’¤‚ÈTÅqpäE X!ׯ¶Œê†}¾r‹Ò_ÊŒ†œ»3^첑|^~"_Ä ?•÷ôÕ‰b`ÄA°RÆëO¼]ï®™€cÑAéàò`·ÊwT4w¾/Êù ^[Åï¯×¾ÎpHxª±;Y‚g¨m—õA(}3×S°JOfx²63Áù¨Kÿ­£öˆ âîÿ5Úd ˆH`“,“s@NÕs´gåÄÉþ©µ‚ÿ1€$e£*@>¡´2Œy§ÈUF\¢òQò°\ÁW F(óÕ®`¸ÙrÌô (ýe?yh==ã}ýÁ×Ö?K ½½|]ߢ)$ÿßóбÜÀU O”û¥œ›]»»ƒ>ZØ”%à Èô ^5|k8þ¯ýº%vVÜVˆë•øpý¯ ëöÂÊž€¢/K)Ÿt&Ü Š$¡Cb“„¸‡ îú&SŒÏаâà% w}XÑÜ‹3e †‹¾ÌÈì‰PÑ£Âé6ƒˆÁ¢¸Òu`&œXsä}« ÐÞŽq›l^Ó­úçQëÏ"¸”¦†bÓ*•.jgÀI.ç ?pOùÄ-ê7Ê‹`Ü`9jéÆïüŸø;‚?¨dDi'Èÿ¬è“’ pðæùvÛÄRñÏÞ4}»¸šV ?‘FAù=žN¾‰ ÷ Ô`oŸø2¨Õ$µÎ¿v?äéໂC üÉè1VÈkTþ±ï (uUœ÷ºA„±Y<â>n ˜?1®6¶„€‘Á!Ž×ÀêÙõ÷54\ Þ–™÷d5#Î}ËGCÑ5…AÅNPÎ+!ÊI~š"ž sõ@}:èùZ{_ pFÞ'kÑ{W-µ^ðb8/š‚²ÎÐËø(Ôê‹ Þ㸈¬ÜÇëL³@M3´2,›3ð`@2LÄjð,\Sò,d¾•ñÝÅ/ |cy3WOq"VèÿäÄiäR <ºƒa©ò¬Èúð˜4ÿIÿþwAž•å¿Ù!eXhxÌp=دt”‡ŒXs¼ð¨_@ñ²²½A—ò&ù(D É`/ šäXñO6ÉlàûÈPCð&(ÛYä)Ù SOݺ\–õu@4 ”W©\䦀ÜÊYŠÁ¸\Ý'îS¡ÚE<îÑ3]'À›ê»Î·ˆÊåÆþšnå?ŽÚ/ø¡J®ÚL©ÖmÇAÕÃ1ðªÕÕo9‹ù¼ r°l+ÉfÞo*€ð#‘ùaÑ`?gË´n÷3e7@f£ô…™_ByŠS¸š!Ú‹ÈrâÇä;|J®ò°¨AíÓl± <¦ò‚½)ùÇÁw—¯¯¯ÇŽÃ2ÙÒÆú $?Ù¨Aã‘ ÓSmû!óíÜWŠÞÿíiÝ2N_!¿…Àè sVH¹¥Åwm`1Çß“ eûôíIð¬º45ç{(œûeá (\q}ÅãÀ£<ÁKÀל¥lÁæ7M øvÛm¦o èñ‚ù¯Aé¾RKi; —™USëoØcH1̆à—C‡†‡ñê§Æ¡ìûòTW:èúÝúl¡R#¶L²ÞIeIóKÁZù}Ø"(½ uÔË ¸$ïé‚§Á; â÷sÀqZü“ r ãx Ô7•:Êqˆx:xãcPô þ…õÈÅÈÌðîð\éùµlùܲßrê½U?/y!È­&—LE/8GƒV¢kr ÈEÜ*û‚}Šm€µ.$Å&LðA€¹~ÃĶ <é( |,—r?-ìçÊŽ|ub1¤¾zîÚŒã ß¢ß©¿Ô¡»è޽l»!âlðñÀ•ŸÝãÒwkÎÝ9›'Îó^þ¨õ‚7?i9eI€zïÔŸ|¸ÂØÄ².yóú%‚ÖM“úË@n™ ¦^Æ™Æ ¿6¤Xb"ÒÂŽ€{áõ!(]•ãÏü}+¼î1 º+/ˆ%€ +TŽÚø€eòK¹ Ä "IH°Í´ ‹ÚèmüOCiFñmEëÀÿ?Ú¿î?Ç!rD¾ÈëµÖ­Ç!êš:w%vƒ ‘ƒãZCîæâçÊö€³yù5e`È1ÔW¿€öým&ˆèTÿÄ­öQüg±S…ÞQÞÛábòÙWÒâ ëà .­Vs#cA<È{ÌK¤y§©Ø[YCÍ“¡tMá[ù# ´QÉœ¢®€› *jº•ÿ8j½àMMCL7AMñî„ouƺÖÈé[¼Ñy3hèä3 >b‚è joež –sÓ °xÂF†$ƒÚÃòŠe6xÊrò—ƒÓ_øn±Ü׸ò><ÆÓ¼¢;i 2“K䀸—ÜjŠêW7¼U¿O Þ'=¦Š{A¾/{ë~E@ÛØÆVˆß_·~½þ?+y\£ÈÚYt¿k87tfºÆƒLÔ÷ËÕ€QÜÍPHèœtcÂ(ˆ¿±ñ‚ä<𺬚EƒÂû² ó®„ÒÀ‹‡²oß2ïW¾Û@_IkÙÔ‡U¿z ŒŸª‰êSà¹ÚuÁ9¼÷÷®æ@=êÿ³QªÚJ­EØ(¾ïòÓŒ¥NåDŽWØ VÊ´ÝÀD-Ÿœ“¤ú+âiG;:€ãT`ÏÀA:-\‹´BÅ»bžÉšo§¼ü´–þN |¦¬@ý¨z=âA]sóÀ”Éày9¦"r;¸o*S@y»Ì³S¡ðžâ»Kîßßb­ˆOÅV¾$Ëz îÑfyZWÿ;À~v³ÐÐþé|D-£ö ¾š,à- NmŸ…싸JΕ_W±\ïºÏxvëyŽ×AÜ-Þã ñÃ7ÔU!) ñ·É hW*Wˆ>p¾cjtº.”ŸpÁ 2Bî–Ù ì"VxøÇ™Ëê¥!Ä‚ŒÓOè]AçwørAn—­å¯Éc@ lW)‹ $.tEøHißüÕÖOAù ¹Ïh€Ô¡™ä¾ úÏp°9­+,s!¼ ®k´êä6)%cÌ«LwAá  7_š'·3œi eÏ—E:?¡ŠaJoPnOŠÞgÛk¾òYŸÑ탼»rrw€ÿeÿûþ¥5ÝÈ¿Ÿ¿Žà‹)¢"ÚD6Aä–Ø¾ñ÷B¶»¨Ðù”Æ8;¹†‚x•ž4eºò¼r+$NH,‰›uïo<¥ÁÐ? y!x+ä$]\”ó,ä4;ÿqÆPðÅy¯ö™@ÂLÞÑŠ’¨”» ˜ˆ xY¿A{¤Q[翨+_Ó{þö°lÏ4 xµlz{ó tµ_ò0d(í΄òk+:z¬àýÚkômà”бÁáYŸv÷6Ÿ!·ÆÝå‡ÂNů–Á™±G»ž ®Öe_•aPf‰ûÀðºKi1Ñá‰A­áÞb×HH;}N¤îO#Ošç‹šnäßÏ_Gð‚‚¨£îŠê±ëão­;r)ûÜÛŠ»—÷ìù¸'GÓx;Á^d}Þ:‚‡Gû"ƒe^ÝUuN“ËT±J¯Ï˜ti%Î/R: |Ó}“ü!Àçb±xЫzø"ÀâqRdsPŠ˜¬½šÕÿß ¬b5«C\©‹ ÆÛŒƒèü:_Ö½޹‘óãÂ¥g ž+Ý¥™Î±®hY<8ð)hrO“ý ³!hc“a ÎöÖíPR|©GŽÞ®ˆŠ¦ ÈY,u–Z ¾ 1ÃG†ž¹Ü{U…é-Rý§gƒg§ûbÅH¨íIšjíòàÿCÕ ¢º[Ý£î„ÀÜàzÁ+ ºs¢¯þ]ཧüüá7µhlñƒr*¨ÜÑ “E3^„È[böEX Ý‘î=ÛgÀžü¼í›!ûúLSVc8äØÿÚÑ%СEçþmÜõPDQXsÐt-GX(7°¬Óbãg`en§­€ÒM¥Ÿ•äAà*×j×'0Ä–k»öWĈ Šª„*u îHü# ãÁßÑ›é>Ç»îý ë°¦›U£Àñ¶½Ìz?´ \0‡·ÐòJ(–%K¿€KÚéÎõ†ÌI™'³ò!üÉøA1E˜m{šÆXãLC4ÐÊÿ¶÷¸¯rf¹î­Ž¿—?ŒÊç•_ãÿeÆ_§‡ÿÖQÖÛ[|(eB“ _mRœp±{þÃ¥ðù÷k£@ÕwëÔ%hã{h®´¼¡ÉAˆ9šüFÝeP†g®wÏß×úˆ æÍ)8 úÓ¼ÀË O‘ÎEϰ”u`oj›a¹!×Û›X=P˜oÊÅsŠ^/ú;êÏ ®ÇóŽ­Ž ˆ>×#þeLˆlPgäï.ÿÊ?.Ý”;­p7ˆñµ˜ ÝïIþtMù<ÙRW{©ßÃyÛù‹¶Á¥Ï3‡fÏ&3‘Y@’|‚e` 54,G°¹… Åé…ßäw׃®'\ÿŽ8j˜¿¬àÍ»ÌGÍ ÎÞø¢„`²{CšCÑûžò0¸fx½%àÏ÷ß¡­C3µPýsÚÝû]“çœûWQ=#* p]F׋AÞÔ¬{òF€³¿+¯Â <Ëk¼ ¬cÇÁ~‹íVk6„®r̵½…Mó¦æ~ Ew^[øÑïê'†‡F †®/\Ñ¿×7P>L쳬‚cZz@öÓàÎó5ôÇCP÷ÀÞk Þ™D∽§ÁkIùp1#3%ë5Hª¤›@¿^¿I䎑 ‘}Cº;êAü‰ðYŽmp¾ñ™«Ní‚̆™Ï_èZÓ­ûÛùË žÜÊ=šÆžÆYÆÏ evÓƒÍ!nj}KãUphkê“ §Qá©’/@í¬˜Ål0}kZc ƒÚ4iÞšÔfl³ûA[Î:‘Ƈ:ÿÎŒ?ñâÙ+€íòuùˆ|¡‰ 0Ö5¼ns²ñ-ãtpßR~Áîž]ÿ¸ð”·”UÊVpL ¬C³‡ÚduxB¢âR’¶Âþq§Î¦Ý EGJpC½ùÉO%¶Ãz\è¸ Š?u7w×…sodô¹x*xÞô¦ƒ^G¿O_¶ý–dóM`7[z›„wÁ‚ÜpÎ*¹¶Ø^ÓûÛùëÜÃÿ+<•ÇQ‹¢'ÄD‚¿Àÿ¡?.,º`Mï Ù»J:WXÁ¼Ëè->¡‚´À£P'5ε JÒ›Omt Î=·#=ÒïJó]X!}ÂcBN@ƒ°†Ûëm[3Û|ë P3•ÃÊpP2•‘¢>øŸôuõŒMñ_ã«Ü$Ýå÷ô¿Q"T„BýÃɃ,¹]ß¡ƒý3 §ÆB¦7iéjH<•r;4 m<°¾Ǿo ‚Ò¡`M¡Zò¤Î;óTZ 4,h`¨WW:6 õ3uÏ ¾b·Ëµüxc<Õ;ÀúÔtãþzþº=|5FŒÿøµ1"=r+tZÜcÕ•ï@Å-†çÉŽQ9§À]âÕ|w‚–«6"–Å<5ÚÚºë0ÔÞ¢•Ò.ÜsþÕ̉p±øÒÁœGÀ³ÑçÝ Â/LBoË[d4ÈDm¬50Iï§Åþ ñõájúá¢a¼áuˆïШn!´éÙåÞ­¡0ÁÛF9§o»‘SÊQñ¾RM›§¬Nî êM¸¨€ïmoÏÈ_\0©p Ê]ŒÖËñ² ˆ@i׿[äý±šnÔßÎ__ðÊÿγbºË4Ùô)DÓ v4½³õ”m!¸õ›Á±GÒ†gïƒÂm% e !´ap=GKhðCo½HH¨Ÿ˜hƒÒ]eí`g»oGìn%‹î-™†Bcwu/p\N“m@žÕ>õ•€ì®oÖæþ ñH °€×x ¬â‚: ê‚úšùÛ<âVûMáàìÁKóóÇ@“˜fƒ=1=âD¿‡î9¹!µœyêÜÑŒG x]Éã¥Q@8™œ1¬j¼‘ñ\]ÓúÛùë þgˆ†Â `>nÞbx®ÞÍõ‡B|—ú=SâÁ›jôŽ…üœ²$\%!ôŽÐ'ƒ>ƒÖÙí;µ¸!OF<ÇYq*Îw:7ãÂKPSz‡3äî‘]@žÒòü‡@vÒ³µÿ‡ÍÑJˆð‰b°³w±/„zÙÉ£¦Bô[õö5 šbù$è¨×Ú¯ XwüGq½¡~`ƒ‰÷@ñs¥O8 ïLA³âþÀ7HŠA.Ó„¼Cž«éVüõSÓÔnÜT€©»éMÓ|ˆê{]\0$7iZÖÒ åOɆ1+whacHÅ-ë´ŽhÖš=ÛbXãàwÉMr ¶Í: ©ç~ÈÈéÔ¿•»@|)/é-AÐúÛ ‹d‰,Žpœ“b|·ÐkÀñ‰£ÄQ I6˜Òp Ô?Ö¢^[#äï­¸C6Å‘ïE<C:\»ÿšïÀq¯c˜(Í+{£¼)xÏùi[@ýÚxÂ2Ôã—¦5Ýx¿ÿ^Á[ª^Iÿ*/0Ö„Ù¯…øÙuíIO@€=|r\W(ÿR61õ€¼5%§Ë4 Jžx šìiÞ0: ëžÒ¡œ¸#uDúØåᨓ‚Ì•yR€å¸±µú!ð´¾Ê¿ÜuÜmÝW|C®”¿ä]L¿•Xb‰#ÂDÔgßuÖ&4¬› uç5öµŒÝkë:2îÏ{»øJˆ+}>êY°˜­;ÍÏÃ…+sN‚à©‘»bf@pŸ°~kºñ~;ýQš_ˆR¤ä(gÀÑ*(%(êt¯÷trdËx-²gõ8ßTŸ¸ª¼=¿:,ø3hsºm—æ…pæ‘tOæÍwU~Ý®p¼Þɼ³Á Œ1ì2Lþ”>7(V$!¢ ò±È}?&ñýóã{Dªô†Àv¯;®‚øw’&5Ø ú«²37À¥Æm¦×ÁØÂ´0ÐÞ×"µr0<©v±¬„˜®Iy)o@øðˆ ùÀ¶šn±ßÆß‚ÿ9ØÆˆÏOÈH8 XqÊoáÐ…3 Ó ·[ÙMeÃ@Y+ž# ∛Cž£ºyÚï…Sg®M{Ô=¬žøZD´¸½ñû úÊ.ú(¥y¥ù*âÃüÿ þG¾bCðè û‚FA`ƒ–ñ­ƒ!>­nZ½=prű»¾ b˜ì(B½îuòâmÓ0vDÜR0×·ìµÜYUV-\=)d5íÈåŠ'ϳ×ó XòßÊ{ ŽnÞ`÷.ð*ŒÊ¾¢î°ç%8ò¬šï‡ì€ÜO ÆAÆGfï†à¾¡‚vBDVÒ-Mê@ô’†[Zµ¸ÉqŸÇeiˆ©™)ò÷ûù{ÑMz#½”ÝWv©ôs Uã0X ÖÞÖ»À|Àì4\ ³6¿ôìoÁÿRf,pºá©„“ÑÝ)ýĹKà}¹d{î0/æA¯úÃÞnî0pþà,/× ¯qÉäò4¨×¸ù•íNAËÆôÌ‚À¥Ž‚¥ø”ìš¿oi~)%ä‘ Ÿi4#e„$‡|úœÞy²ï±oáâç8}ÌOÊ%ä}KàâàfàoáúŒy`L²-pl‚àéÁQÁnÀÎ|fÖtPÿ}üÝÃÿFü¹þ4ÿp¹^t5‡ [ù¢²×¡xzá¸3¸f:§8‚ÍçèT‘K¢Y!#B¯ ý §£¾Üù[ð0åﻆ»Nƒ«Â•TÑ‚¦8‚iŽ©£Iî£3áÌ^—; þoþ«ø!b8’dÍ%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr6.svgDYäIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll7.png0000644000175000017500000004267112240014740024042 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>D ôâýÞ)-u.•7 ”ár±z„äUé¼EK^±\©Ò¼ ,לÒ<¦dó}þ/@øÐÈ6Ñ!ÐðëÆûšô‚جZîø¯A®‘sÕW ´¤4»ô,t¸üÊåƒPøñå^ù!Pl+ú¦Ð •!©ÀÓųÇsÌK̳L3Áo€ÿTËy~+ä¡Ð–PëÃWÒ­5/ºNÔ'`É´Ø, Ž¢ ñb¼Ë pUرNL„©Ü,¨& â]ñX r³Ü W³xéÀZù­üð&ÌÀD^Ó@¬kÄF`1Ÿ°H$‘$@ƒMMwúkOð0šçÁ=Ç“á „³ÃN=5 Ϊ'î=Út}=Û;ƒ>€÷Ýv(gÕ6À 6ÈK@¹R>âf¢èÜ)ŠDkG”=Š ¢ÕyD<®=®Q_?¼)ÊíÚRÐ ]Ø šúØÔ9 ù^ŽòúƒX)Þ[Ûew¯Î«ª'A4b#“@¼¤œRZƒX­œV>õv¶hF+F¾§ì÷·,Qf€zJi¨Û³nµ±Èa•´üR=ä‰% ­l ²@Ú¥h!¢”ž }Ǹœquã'%V@ðÏ!?†4G=Ç7Ž–P¹©bH…ìÝì'ª>ÑH  ÛCØ”ðʈîòD°-øTMwrÍqÍ ÞÝÙ誄ŒÒôµé™pF[tÈ¥.¾|¾jo‰Ú’qK#‡~AS-z¿àq€<@€ঌBsyŠàùÌì}*B¬~Uàü˜¼©Ç ¨WÙkÖ6 }[é-vCÀfÕØ‚œ–éæ$˜ìߨïø¿bÎ6þ †QúÉúïA3B“¢œO¼ç/àjâ>å™ÖžUQöÿ]QƒÒzPTT1ÂöT]v[Õrм¢ŸgJ2X*‹½ãÜ“A™ŠNZ@ž’¹² ä\qDéÊYÃóBˆŽù$þ=˜47ø¸Z9ÏÙ«À–mÝZ¹ \;Ÿ8òAy_ñWBÁ¯·¿Ã –‡ƒo ‰ÿg„ÌÝ.Ãz£ AýƒÆ·„¡ëC¾b&cjZÿ9®™1¼Ü,·Ë¡"«Ü¿üSØyvۘ̓À²P޵¿]š7¬—†µËµe ¤+#Åð|åS ^¼>ö·×ïà ø@|*¢À²ÖÿŒy(¤}–,ã—€zLõ—]€AØYÊ¢HD‚xQ¼&²AtVâ…D_òÐ_‹ùâ0xÏ«ËeˆÊ·Ê&Ð׿®ËàËúH]G4Ô÷RâÕµ² È@frÄ qŸ¸x©Â¸åhiÖã&¨C"@e~àêéYîyòÆ<Ec {g;À¸G?_×÷Íz/˜zø•êkƒ6L³T΀òÞÖïówBÖŽì1gÚÁåæ_Úë²Ñ0ίÔ›ÓhiәТAkÿ6?ßz¿5~  ¤( •–@‰¯iuüû¸fîðE›ŠÍE?CfÁÙy§cà´‰·@d²ÿ8íNH]š8 î3Ÿˆ9¬™)£èr¼|W.>û[Üxð€¨M-b€§Ä¢7!v±ÄB&ˆa s)¦˜Ãwr0U.æ;o³”¯€OY#7»ä!N€,¦”rµˆ!h$ê’<@oÑÄV>d*ð±+îÑ—T€\öÊ5€@ƒÐN PTj‹x/ò¼| ¼­¼ãÔÕ`ý¸ê]ûypj\ŠëhOh\𥠳hïÔ.íTí)Ím ôQ ÎCÎݳÀzŸýœã1°Þ䨿:žäBq JG:æ¨)à½É81 9´‹îÔ¤ë=u)ú½˜V€ŠŠ ((×ÚÞ5#øÌº™3T8ÞëçºÆAH=¹¶2"S-›ŸC`§€<ÿ·@´M© r½ÜÎ>þ¾Àÿê\š?~˜At-iBË ±˜-&‰À×l—û÷åglù1ß°È!Ë ð £AtRÎò Ÿ;Æ=ÜSéÝs¿Îk™—Íe£!q~ڽ̀ºÞ´¹MŽ@taÌ1×ѪÒ5#øô.g+ήƒc‡zï{âòŒÏ¹AÄÆ€ó& ˜‹M‹@´¦õAá 5íõ_Z4@ åXœæ67bˆ9®¸ªÛáTî‰ðcíÁñ‰=Ѿ¿¦+ñïh†k„€À€~# êç˜u1[ l¨ý ÷+P:´ruÕªï:ј:5ííu€ï@ýHž—fÐÖ–h„ÚYqs£^mkïmö—áÜ3'7›¶ù¶Öí@_†òxM;ÿǹf–%u3tMµUàwÔ¿¯åpRu¼Ž=k½‡…&è€8‚0Ö´·×—(¤Äãb ÝAi'v+?‚±‰6[Ù†9¢…êö\Û«¶³à®ëŽðÔºkG<ÿ×ÌGØÚ-ÚVÚ© 6SÞÑnµ%3ˆ#â#1hM¡\âÜàÏa€8 O‘ò}™'kSc¹a3„<äwŸ¡+”)M)¾•FkreíšvúsíÞ‡øBX”{Á´À¯£åNÐìÑw54W¦û¸ûMoÉMò<ˆ.´¦IM{{QŽ;È÷ù†íà?ÐTlƒÀ]~c ¡P¶¤¤u±€ŠâòÝï×´³œkNðÚtÛt^ˆOJ:žü ž6»¢áÒú‚Ä’ñàÊvs¿"D\ÛjÚÛë‰ ”P‰ ”tåÑ”‰bŽ Þ·½¼AÍRs½çkÚÙ?Î5'x]ŽÎ_×’Ö×>Ÿ¼ ^ÿìÀZÓ÷rãâeàŒr½ïyDkQ"¶Ô´·×W†6ÝhF=pV¸Þuû·®¥ž`Þê·ÇïU0N3}eÊ­igÿ8לà5Ïiž×L¨¬([TÐ}e^jiE«*ºÚ»‚»›w÷=ÇÅÛÁÕ-j×kÔäÏeñ¸§zîð¤CvÕ¥1·€Ü¥cœ )wÖmÙ`:š.™¬ioÿ<×¼àM›LóÌgÁ¿]`›@TítƸ‡ƒý Ç"ç} RH '˜ šöö/„D"AÄN1`CФÀ³þRÄ‘¨@(lûÎ~3T¼`U«¦]}qâÉÔ"ê\È×ÁhªŸ¢ H%E¤ ([•te9(ß*%Ê:P¾UÎ)Ë@ùHùF™ ʃÊPÑ Ä±V,Ñ•¶44¾I¶ŠÊ ²¾½ø˜x@ôaN‘Êpeh ÊtåÑ”ñÊ(q (íD3aqB«AÜ/îævQD x}qôÿ Å.ÜI¨ëäS¤@ÅkΙÞ@¹ÏjÂ&„m­V¤ ªi5üy®ùpˆÁCÛíÖØÇk‚“§síéµ@ûŠLv/†ð¯B;7œ"Qîßòÿ»]¦³z+ œÏ'|ê õ Z2A&Ë{`öS" "èFSëÄ2ÑÄ`žf=°@LÓÝhGup‰Ž«7~/'H'd-Ù\Þò yJF00Ø"×r!½¸Ÿ[€ºLä-EW1xÃtô¾]^ß–Çßâú‰d‰Õ¨>ì=žSÞNêC ¿ËtÔ¯èÒ )¦ÙÀ Ü ´èÐ×´þ<×¼àMO˜’LNÚœ¢ƒòoªF¸jßÅæÝ b;urY"ðâ•‹©Ûÿêù%D<ÈÑŒpwf¸÷Âá{„ŸL‚왯åÜš±žÎž €WûöYÐn1ö3^ÿUA:AÒ¦Úã“!z`ÔMáMÀr·ÙdZ⸘̓ o—2 ätÙû|%× è*Z/¾â}àA¾ À;RîÝ¥—¿n™®œÞºBIýâ!eéàÊv6unM¡Æ¨ þ¥þçüô~SXá5#b_˜ü˜ í¤tR¼ î’…2ȧb@ï‹ö Ä‚?ˆVÂ.Î@‘®ô«Š¯áRRI¢u7ÄœI¸¥öÍU+%~PH ¥@‘DÖ´þ<×¼à5}5zåÚc{Œ'´àªòÊ¡ î’wÊþ {Ù X°TQEÕ¯.”)ö‰5àâîëî—C û¯†cìZt0Ní™tès0<äí©ñœv¢v5hgù2 aCVCÅØ´c©+ äî:þ »!è`Hvð ¦k 5ïr¿¶6´+õµg@ÉPFkÚœ¡Fª3ÀìÉóhÁ;×¥º7#þÃñUäw.4¹é'Þ9;ŠGæßR®;í;^ÍNíl,-O[^ðóÑë#OCŒ±NÏ„|H¾­nûäÅž±#ô3м¦Ù¤yÄl^á'8K G‹qI¬@ñžÊ7mCîíÅ£+Cë9Ƕ¿13bž‹ 쌹žæF׼௠tSÒ•®`°$ƃ8ÆûöZàXå°;3ÁðÁ¢ßÊ=ÊâIÉÏYû«ß¢¼-‚ÊÑ6W•NkÎe<Žög+2AXÕ…žù?_žf!(?s?#)Ê["Ô¤LcNœœyâ3áh—ÐþÁ+A»6,1ø=.à ƒÓ¨ G>¿yÁ‡ƒƒ~“ñ’¡xps/ûÂò••!P5´T–ÏG»â³¥ÃA}¾xbi˜7”hË.€q©{¥»?˜fKUÆÚŒ‰b¸žP>ßÀÙöú#º»àØÁ¨Y7Aû›û·ìyZœépºU„.^xÄ[ŠAyD{ùšüd<]èÎïÜù®ƒP™ooêÚÖ*÷ $øu X¸Œ ÆŒOzô×ÃPæ Á›tæEf 4Ko¹è¦•ËéÈ#áÄžó¯_¸ g$׎? æ9¦pÃNðÚ½Õ «cDD‚è¡$€ãžª¦Ž×àâʬ”‹ï‚G_2¥lø™¼Ë¼/‚¶Muyb"㙬ª‹½n<€a¢ã§?(³*¶Îñ‚ ÀMÚÛ5Zð˜ RoëzƒÉ´Ð.ÖD‚HòÞ®ž5×u¿«=ˆ6ŽYΩ ûÆárºAHg;— ôÔÁê Ðô¶ÒÜçÏqž x ¡œ‚𸆸oƒœGëiÑ#>‚ š=›¶4šCšxPr”‘J*8Ÿpmv׃×O͘ç^¨ºüh¿ðo"@-÷ñ4†s€G}“ýëdÙ÷/#xý<ýYƒêHuÔ»rœðÜ8ýÂñŸŽ¼ ‘îàK½ fBÄæAû˜ö=í; çËŸe%ˆËGà±¹ý=ãÁúLÙ[å_ƒºÜÙÀåÃÒêräŸuú îSmDbµõ›çû|¡{‘gÐ˽ÈðYõÇêŸH8€·%p”E,0Œæƒ¡/óŸ|׫ôÙå¾ò{úþþØW~¸¯Ãb«­.æÊ÷\ݱPq¨à•¢ÆP^øhÉW ;Êïäý i§9¬¼¶Ðª³v+\jUpW±òLE·O¾ûu×Û<ÅðºÒªÞ´N®4€=Ü^ß1ÌN³ÓÔ0aÂTÓ*øó\óË’WBˆJ0N6v2„€¦‘®¿a"TºEžg!##wS^'¸¬-z´ôgð õ„x¦< m2¸ìËYÄ7r?#˹ øŽ¹¬¹ÈWÃg{+Ȫ6²—Ïê|6ÔgC|~¾Tm5¾Í)úw|—›å»N‚ïûý|¶Üg}+*r¢ï{WV𮬸\öÙ¾}~x(ÓÄc lÐè½Åð^²‡œÎ{àÙâ¹Ç».¬Ì/( Ç_JŸ9Bœ°ê¯IêTk!„ž·›ßŠˆò©¥õ¡üöŠÇÊë¿´ÉuÀ_æO uH*(¥F4¹¥™?¨­<{Ü…p´ýžéÛ²!¯{AXágòj¢!n+ÔÏ®}&þ$š<šÕšÅÚ1 Ü¡½ Õ‚8/•٠úÒ@Þî+Ïæ³¿7Ñè•%À$Ÿmá³¾;>e>{Ég=>û/®Ý‹«­kXµu ÕŸÑ w&Žm qCâbŠÀeöøy€#Î3‰ÉPðmñæÒS´ËRæŸ ‰/Ǻ£ú€n°öEM”·=ë:•޲Æe¡Py±bh…¢Qލ‚¯ybî‰ý$Ö ®†Ncã8ØlßÏ»_ï—ŽŒŠ¡²¥íɪqy¡~ÞÃ`^Sô}éÈ[ï(([gÏnO"Èb>)  ö€æ=_WB`/þN‡®Œoí¿ùÝïýýïÅ7w¥SÉ6(é û@×¢7êkëã òfÇSÎ<Èl–»ÿÒcPn¬ô³Ö‹Áï¤ùqHس/êM/y2ȲR]-oWŒ`Å#«‚moCÕÔª¤ªÃ€÷õ´•ò/+x¡Œ³`>çwÀÏ‘ÄôŠ; ¡ÅÚ"—"ÆZ¦WÁéf™Ïçmª£³ãM°µ±í²îsJ#±¼Çtôu@üD2ŸßM¼ÁR½È XXÓý¿_h®g–ö&Íz¨lc*ׯ„¢Ç7ƒþ¶ÜŸòŒ ›¬í©Ù‡Õ Lžñ·D ?ºËZE×4Ý•—Äjp¯÷{€^«§õç‡ÎÇ àší¼ß9èGå/O£ë€¿ÌþohL}RAo0¬3Ä@äÔØqCÁ/Î"[ƒß$ó}Æм(mlÊ'Ða}ó/¥C× m›5ÿºïêâm; ,óóãöCIÝ,íbkYÆ þ´‡ÿ¤ïÉ£5rõm ¤8z{d4‰j8¤ÞÍйSëÛ›@›¶M6È…¸æ‘UaÀ¨5ü¨÷ÍeÍ$¥1p—èEgÐVhÑ„ƒ¾‰®BÛ \#œséàšìªïÜxªsr^/üuïð>Œwš‚ vïä1)£ ïÖ³öJ(keÝ[\ê:ëÆ}¦“†úGÀÛL=*AäÁ`cÐN8öS-}Œ .m 8yfð|I|¹ ¨^㈯ šZ‹¾2Tº2y½¥ÚèüõÃõ; °8â`Ø:ˆÝ;6r$õ‰óF¿ž©îS#¨Õ§Ô ÊÇe!ÈždÉñÀ<ÂP4Ê`e+h[j¾×ŒÏ^O{÷(ð4ñÜïÉÔ¿¢ðå//xÃ(Ã놯!é@í…ÉàRÈùÕg3àBËl{I/H|1æžÈ¶ ¯ÒÞ¡ÒÌiCwà ÝF{.j3®ˆU ²E¹Ùzd®ïÆ6ÝWPA UзteÒ«.®¶Êz]¼ö0ÿnÙ Ê í­Ú à‘g=x>ó6ôàÌ/cð,®N–}V|ÉF0¢§ÐO®–)äuôÂé Ý!1Xt-Á”k²™ô îVæj.ƒ³‡§¯ÒÀ¾n"?àIn•€Ò@é¥(Ô?¥EÒwß  åX{ŸÒOçm¾ë¿]Ãô-wr¡ÚxöýÝVû öðooIökº º'tsä4þ•4B1\ÄXe:%@…¬Gi ×ý?À_^ð$Iˆýb¯Ø¬TŽj$Èâ²f&p‘$†&œ\ÙX6å6D[ Žø1 ¡ÖGuÛÖ^Ž˜žÁ]ÁmÑ6Õl®¼hº²<ù÷–¯|~宨¹Úß2¤èë³÷ùì•[Oþæú¿åÊpâʳøS_qCå:™ž§½‰Þ÷A}QWçµE ‰ÿBû©¾² ("ägr‘¼ØÁFùê«ÿ{üõ…ÓœàˆËÊrÍJPÞVÞÕVí*æåä“òUùŽ\¢Pœ[ lk°Pmˆ°×Ú34?Æê£, /˜2ŒÙ S}׿ò&T÷›r¯´` Ïú† rWµu›psœkÄÏb8'‹|±ÜŸÁrP‘Fü’ù·×÷½˜º©¨ ò]¿Ü}‡§¬MÊ3¬›À]àjè®Æ2M<û/´›(ÅËY`&%Ò|I¥ìBõ?r'Sÿ÷qý^TÇ»‹fŠWyÄ2Íš~ :ð(“€ròÈæêªƒ  Ÿ§äd0úŸð›a9 ±/ƒ6Àï'¿ÇÁó­ïú|6Úg¯L"¯´±Ï^úO¼ÊX(Zlx]¿râý™—Av ÿÏÍP`×;t«À~F¬M_è~¿é™+ãoßk}Ñ®ÚÊcÞ{¼ÛÀy«M_Õ ÔT÷$ èÂîû—Z®:Î]RLàbœ| p³Ð÷t»Žä~LZ‹È){A¦(“€îbxß• éÂ3[}\Y9g.öÃ³ÎÆ®$p”ó@ޝž }å&xŸð‚kbÕœª3 îñìöj¾I€B93¹zÄß‹v”¡ZÜÜÄ’Å å—§Ú°šîÜ××F¢§2VsDS[ó¨cdyH“¼•®€Åõw¥ó§Éyr)hi‡køßã×Õ\ †¤ o~QàWnž „‰ÏÄ\®.ëù2èªïhšjöAytä·ák!qb—mú@¿™weÜž 4±Q k©¦9ºCººPk^쾨Jhy°Ý-?‡†‡:wn³w„ÜtlŠñ" ÄH_yWR„ûÂ—ÕæžÙž]àžmûÎÞÔïÝÝ ¾Ì]à ê­n™ÖkFpš"Nƒ,äYydk>­¸1†¿fñíYÕõÑÍÓy@«;¦Ü!žæÞuàÍWŸò.Ñd©–2‡< @”1W¼ šÛ5Í4Ç@·Öo¼¹#hû™ëšÂ€îb>3€ÑÕÅٳŋb4Øší ˆ„”;Úkù4y¹íÜæ æåèÑ‘KÁÔÅøœþ5 \® A<†ŠÆu†ÉºC›Ô6îQHÕt_ƒ@ãƒbÞ× s= ¯L†3}öÊ¿‰×ªö9ÛÞÖ~8sªŒŽçÁ¹Êá^àm–øÎÄJý‡íV=†·QL°V¾,ïö±ìÆ*͵Œ/?n©îS}è_Óg뇃+ÒïÙ ž¶ž¼z ¥h,êsõ½oóõ§Ìe °I„ºéÆÆÆN [fªgh ôd‚xX]œýKÝ­ºïÁ132!ü hÜ§Í M‹!e_Ù‰]À»Æ›ê}ÔP¯W½ävsäkr¶üÔê,¹,/ûyÌó!fiü[1Ó¦é+ $è´1?E~v¥³¸ ²€ôá{²(Ô-jh߬JµßÖåÝ*@E™USõ9HL’]€GŽâe 1‚ôÈL™dÉ™\–w3¤¦;õßÏu'xýx}†þ èê¦[çYëéÞõ^Uí 4¦u¸*ø+rBf-!æ’~Ÿö8hNê뾂@w%¾†âßÕtŒÓc'EÞ !ña„ÎÿÕæv¦¥@Ruö¹#WbØ}-þΓõFyõÞ¡¸9pÅ Ü]ÂÚ¾a_5<:Šš¾6 ïÛb˜hÎ/R4^™!5 ¸*Ö~ʆºŠkCÑø’g˹Lþ(³AÌd*ÿh™RG @;Ør¬¼WæËCr/ðëÁÑuÀõ$x:Ð7Ž1¬C£¿é{p=äžî™žmÞžO´¤{Ðn!g8´äaƒ&[7YW©¿S·d¨x„PåÛ˜a¸;¬MÈlH|¡þŽ”ào «Ä‡ÿ ÝôørœÕÀXyP-ùLR_âj>Ÿë„ëGðºê±¨y¹yßj0=åඃs8ŸwMq÷qwЙ¿ü¹ƒ} žóx ô¯™úÇnžáœ!¼»E˜¨‚ÊišîŠÌ91?G^€ú;¥¦‚+¿ ædð®S׫V®æ§ÑðO°–ëÙÃAPîd;ëÀÐUÿ•®Ĥ$ͯ1Uõôuæ€;ËÜѨ÷TÞå)оSý{Ã89Z–BeTѱ ï)z¼x2ÈMr¦üÄ+ÕõùíæO8PÄV|VýÁ»øPFÈá\MexpýÞPý"É2ÅÒ+`&X:¤ö†Š¶ÑŽR°8rUSÄÃôåêA½>ä*>å[E¦Øþ³ü»øí“Ëÿ9s0¸z+Zå8ØÊý6™¿óÑXmÔó<6qV­d0û™.í gË/ÕÃÿ‚ß:´hA¶ ¹¼ ¡>IPÿH½u´Ðd`»ošŸ[a˜!øn°­Õ\V†ƒ¸ºà”ƒäpp†[ëØ^g{ën[+ÏÉdÙhý¢Ï?,?ˆp mrðŒì£îùžÜ¦ØÿÑê¯Æõ'ø¾þûü^ÿóGÀj¨¬´§¸f‚cµë[€xŽ»ÄÍ€öÿ&jbkج›Åç`÷›bÆGÌ[M[Á“¯”)ß‚b°¿ú`¼=°0`#˜Æ™v^å=%A9 r‘\ÉZ®|ëàb¤Ìí V‹¹âuˆ'šêƒÝ W˵lšÐ˜úì ú àˆØ»*z("êÕˆH`¼ÉnLq%A¥ŸÎl«ú‚óë.{+ Âw½áLe àú;;—,"†xà œÏ Pz[zwÝÕ®jЈf´¬éÎý÷qýÞ—êN—®{S׌³MÃM:p˜Ýͼû’g’ºèASjquòx…ì—?ƒx‰iŒC;C?Ã<ÐEéWé  > |)ž½Óßëß ý‡š¿1“çDcÀÊOüHu°—à깎¡cïýÞ½2 <—=oy£úDbŸX&Þ.R@€?ÐîÖ¬Tn…€òàˆ½Pï‘” Ÿ6=´;87ñAå;|lçì½Á%¬í­ÙàùÖ³ÆÓäw„Êæ ê“|eùÿa—Ì¡ D¾˜BO0ôÐŒT¬ ÷ª?z¿gCgsg _ÉÍWâƒþÊ\?‚ÿÍ›De²¦\ó¨·cÔtõg¾ *¨å¯'c92›‹Àíô7ƒö6mKÍ· 4Ð~¦iÞ6b™ò,ìöo †©þæw€dÑŸ;€ƒ¬ãÇ«~ˆ‚ Ñ_ÜL°9ì8FCqqù3•Eà4ºïót¹U*².\ïʘßûªw˜ú5X¾|ÛR M×´žÙd.ø‘øe\&”õÓ=¤}ä1€ØdRõ ¸Æ•®«Ø+wØw„;Û; xS¼(Fým³ÉaÌd(/*§Å“|“eƒy?ˆ·¼-Ü(\QøbáÓà9ïqxÌ5ÝÉžëGð¿A,-•á îÒ,Ñ<âañ¢’ÜÍM¤0cÄÀÕWï¹dpè)q+è×Ôæ€ÚP¯é U5ÍO\/ª8|„^û3·k^"l¼sÏúÃ{àè¡ô]YwBɬŠcÖ# .ˆb ˆV¤‘òù•< ægŒ[BÒ£‰ãÀ´©Ö¾è;Á10 ÃÒ/¾y°ëV÷9ð4+¸¹èdÎʼ+§+T6³M²ñ°¸SÔýÿ4T²ì-Ç‚v’rBsDù…Î ü ÄGžÎ×àB¿œÌœgÀ5ÅÙÙu m®_Á_¯Š‹ Ù 5Î~Vz+µAí¯.TWƒ\Ëv„òY\Ѿôm'í]ÚS ûj[hW‚}¡ö„¦+UFüÚB¾ }Ù8£~T­óêçš°™ n¯aÿ †\ˆÉ ŽÜ*£ˆ,ó˦“_!çÊeòKP6ˆñâ>ðÏ5×1 î©pÙ¡laÑ<ûÝqîyÿ´Ù¯y®[Á›û…ø …”¢zaõ§ƒû ò…n:ä~™©ððTU°±[,N“I6ð¨(îýjÝ"mKКt/ë"À{¯Æ¦9"^“ªÉ%YÑ+B lXIÞP(˨ù-»8¦[ mu³!úãˆå¡Cý„F÷6Y ¶÷d˜~*~ðl|öVpº¦ºŸå6夘 tç9 D’ˆ6HZ‘Ð$æ5Hz ­Iª=¢ïˆèž³†!úù 9û»T°—•«Ìï>w¡ûq`«ÄB®Îu®¬"U`£ h#ZДĽÊmÀ\ï%Ï;à9ç|®ª xMžH÷5–²äpÝ Þohz:$ýP»?x§(™ºÖwg±§|xG«ê$çÅçâ à'Hñ<# †tËté ïo˜¦ß²’§ØÀ=Õ“êÝ žižÚžOl2ÉÂÿeÿ)@vÀ>ÒÉýxm}M*·±¬ð†Ès‘Í#Ç‚ÒдÄR ¥#íoTލÎGÁ]ßýŠ' °ÉJ*€W˜È`©ðk`Þ1o'tý âF6}½A}Ðl ;²¬<±žoÀù¾õÛaP·{Zx2vâQª‡$ÕSõ+Â×ú^,åÊBÊ@v£äL0/2<¢­ – Åš2(;_6¨t:T}ZuÂýûúàZ亼f»æmÍhÞ¼1hH³Æªï ÖÏœs=¯€Z[ÝIP#%À!NÊsÀtÆ2 ƒ ÝtƒÀfxPÿ»xO¼ vìß;rÁ‘çá|Xï[¿oDSÒ~å€ Nà ÈýGÚ$í‹`xBûf4x^sÅ;»@PŸ[è:µ'¤@‘®â^Û»Pá°ÞTe6ˆ÷Å$ :ažÖžVÞôIpE`´^Þ¶i‹}à·ªö°øýP¶Ci«t÷¨ŠÖå`ªØk ÎÃ\}|ÁzEy™ÊAÞÏBð=üž‚¨¾ÁFÿ*ȹXšû~W¸¯ð/¬š¿°ëÿ„¶ÜDk3Å"eh*t‹ O€’¥»ÍðÈz2C½ Ò!õ Á @Ì#ÅÃ`¨ËÐßæwŒCcÐ>«)ÐŒ‡Ê²Š§¬ëÁúDeˆõ`6³XâVzÒåWå[©Âœä9 Õݧ]†¯õ ´N¨šmK³å@ìÒ¸[kÙ u|ÃM¾†óË ^*ˉ¥UõAóœrI¼¢«hAóäJõ(øu373•BíojÏ©5ü?JžP´Oý ¦ïK2Ê­½ÿì˜L7dÉÜø¼@Î˽ÀObXzÕ]Y@1eÀH9M· ‡å ÿ=Þ&èmK8¼š_ué+(~¼ø½Âµ¿¿®5®ŸOŸ b!¢gôÎØÁ5ÚÚ¤Ì Ÿ•UîLR+óÀo y)ÈÅ,;‚®«v£F‚±›ámývЗh¥¦T\*›\n„òWÊ+²A˱ò`‹L;¹€í€;NàÙò"è¦ëæiO€Þ¥]ª]ìÇí—Áø¬áNãO ׆eBuâšBå·®¬²LÈO-ª*Í‚7‚j<Z³ò¦’ÚzJÑ,,ßûÿ uz7V T츴ãrÉýCD¹GO2ÚCÐçIçãOCÒkµZG÷e˜ò„è ÞùÞe>V=‘[9À0ü¬×êûé¢a“×Us+£/Ç‚#½Êa+æ/»)äú½ÃûëÄv±V&Ý›ô Ä<ßÏh8:à$Ô^T§nâ“à¿ÁÜÖÔ ?Ë/ܧúžì–~l£­lSAÙ(~RfquÇ“.uD8'At'ªônöt9Õ»Ëûæß÷WïÑ» þPKÿpÂ\ˆª}1uÈö¦AÍàLföîKÏBùç•Û Ù£d‹Ù ë§‹Ð¾iq Ï×u¦5y¶þqpäo3v‡ÒÎlÍh‹v80O<öîéµPuÜnsT&FcÖ| ÊEeò˜Œwƒ§Ž3Ô. l`ñ½…Í@í¢nQŸü½­_óüÏ þfˆ9â}ˆm¿#¡„už· ò¯)ÿ¬wÙž²—A°9ø‘€Ùº1õ¹Ú¿ˆÚŠWt±æ@æ'§d¬€ª;l“«Îƒ§|®¼ÏÕ­ÏßI¼#€˜Bs–ƒ4{Gx7€ì-ïTÇŽ"Ý˺Çu}!µy½¸´ ˆµn|Z¸V6ËaKËCÊï«¡Juô%LÑ);!1*¾aÌ^HNjúEZk H{ u˜V©käF¸|èØÓ§§À¾¤­»SáÒ® Ûó‚ÁYǹÕ=(¡'ÈL~ ôÍÇÜúÄWÞÝ`{´òÞŠ¾àê~ÞýDMwê?çVðÊi¥DqBý¬MK„؉ù)kàø§Yó{Báýe¹•þà×ÖÔÚx"FÝ^L?Äu‰×ú<ý|°ÎºÜµ¨¸öéN7p7GH¦z ¯òË>$f‚•í| HyJ½@ö–•¿Ãáå|É<4d_ðKÜ6õázzˆ¾~£&' o„µ¹« œ©ýõÅ1à] öSwú–ÚC} I ÝgÞ>¡[9˜o«Ó6a”¦•©¸ JŽp­„cßíÛx$ rÆ_l™7øRn–û= Ô¨î!':Aôê Ps}ÈXwî3¡àû{Á75Ý«¿£ßkÚã%¦ñ*?06æB¨¡Ú Ç#ÕBE¡³g8”Î(§Ò †Ã†ô¯BÄ͵ ãË °2d]P8R 6/¼‹·æ%”Ÿ®¸ØÉ~ƒè#zÐ0ŠPâÌ— R…×Ì‘¥òžßáoa„f¼æUÍroh ¤¾Ù ­áaT' ÊûyŸÔ9àøÝõr P1ÝúeU7 êÐ’ëôKl q3·®ß¾Ž˜6 œ??'7 Eœ«•U¹gN.9û \Z‘WTàîî¯=Áßé7Д~3›u¡2¼dwá%¨\\®-ýÔ›Õ‡Ô À,féï¯Ï‹‚÷a)³¸- õùºáõÞûý<«û.Ž/Žª¨ò’xê?˜úvR$¤îlœ WÔ™™˜ ”^»­‡ýÍWe¬ï…òz®¥Ñ®Âƒ™p¸MÈòÀå &´¬Ûx2„_ ¬€ºËâ§E} ¥áåúâwàd›ã÷» š¹[Ìnù31v4n®éÞýU?×´×b·ÈåPç…Ô© ,5zcü³yäRHáËPñ†mFU^–œñ£SV&E€nªWñJ(N¿¨äkà½']þœ¸N¸æ•Ô¡ è»é,Ú)jOè3à<\yOéHÏ<ýÄ©µàÞä~ÐóÇý×ê4YšCÞ;|64u¶hѪ$OlÐô6p ÜÓËk9¬àµj´ºç!qK½ÉÉ/Bðù†]êí2¿<ÓV¨4g<“= ÏÜñð¾ºp¦ÛÉÅé»›»Ø}'ÄXâ×ÛÖE¥?Áù‹çæžž=î~nݯNJ‚ÿ â±R¬‚ðõáþµ PÖ:b”nsÔV_Û‡Î5ŸЅ>ÍG7ŸÜð¾hqû…ܯ²Ÿ½L=Öí•»«Z€ª¼,úƒv½¦Žæ< Üp7xoqL©z ;æ)¼àjä|ÒY4¥É/Ç×ÿ*¨¤´ígÚÇ ÞˆúÒ…ÞÛúßq÷p0íŒ Oœçò °‚œæ˺ABï÷¤>ñ½ŽHסãmÈæ¤7ýœýüàäcC!sáù”Ü|ð¤zî÷î^òºÝðäÚ›Û~ϳžÜ÷íèHÇšîÕ«ÜÒü–›hG{PŽ*YʈŒ‹z>ºêF6šÝtL,:{¡°DvU;B\zì÷Qïƒß3ÑoF8¡pÚy‘›yKÏïÌínM»ç2PV)BÙ ÞçÅHõÐXÄëb mô›¨Î[‰·.žË•9 (÷jkw@ /×é¿L,Àv~`í/i{ù,toX>4ü¬ÉÄæ¶O i ÛŸÿ.}9ØZ;g¥/ðOêïJm–Ö9wÁÉ’£ïœª€# 4:ù.T> kÉÛáÎeýÖõXþw¶ë @}GÛH³.š/$æ%KÓ];  ¦û–wøJлÁCB.C½À´%k=õÍ (x«t«µ˜N+ ¦(upí*0n ã¿І_R/Ÿ…ŠÀòv•GÁµÎý„ç°’å> ®ì/‡È;‚Gö„ðg-Ï›@æž³±§„¢Ý……wü*4ˆ›ˆ‚èU1æ˜8¨»,-¹QmHÞÑ`X“<ˆ¸/±"õet×Þ¼‚÷¥íª÷Ô:ßô®4Ì·…¬ z *ÜåŸUÞ ÖPk¿ªm:) Ê „‡XŽš.CVÁ¹#éP¼­8²xSM÷âUnþŸ`X`cx ÂzF Œh~º´HØwòŽ.*^²ŸqA½u ëÖõBÜ­‰÷ÇÝ Å²$ºt'dß“t±7”¾Vš^¾ ÈùA"’p})ÈPšX>1‹·dm=7Š÷LÍŸr»Ü#·'9ùÒnÿ›ðÿÁÿ|HmWoxý‡ ÍCzÝÜ BŠãƒS_‚Ê9Ê8ÃwöQû['A—&½t×BÓ×or4Ÿ Ú%ú3úý`šd¬ü±ìeÈ ;æ"¨7¨þ¶=ÿ…åÊ?ˆ.\gÔ†¨ðhc4îœù0dJ¿–aÀaýó§ôAäM±Û@9&?÷ÌV{—yßm¾¾±>b‡5‹š¡{ÊÃÒ˜TÓ} ¤šväšÇëÛÐáË—nÕTæZƒ kB¦þÜçðó¼]—¶.M/g½Š `|Ãëu'ÃÆç¿˜³Æž~2Q–Bóìöo·\7ën~¬C„¾ ¤/x–zæy À9ÂuÞ?¿w>º`)¸ M¡!÷B¯{zì3 Ì?û=à÷ß¼cÎc.³A5©nÕê`µ¹ òGù†|ä½j}Un«ûˆk ȶ²‚ñˆ±¥ñYÐ<§]©Ý b²xKÌÿóîüYnþ¢NRßPW‚õ~kºõU8“wêðñíp1þܶÓý ô‡ÜŽ °2ó«¬þpvЩ¶gC@ >à^ËÁN@ÝwêVÕ~ŒïëWè€wºê¯N€]ýN|Uᚇ,ë¡oó»ç ®~ý—YþÌråŠiTßÇßåUÞ Y|å¸k‰cø?ˆ2]§Üe†e#Ôɮڠ3ļ˜47e h£> « ¡y ÇßQâu±VÙšeÊë°³h߇ÃÙZór&ƒè%Zˆ©B'NfõµȧÔ6ž2 ˜O¯AÁßáR€kVèW¸!ø?‰./RƒÂ áRín)ßCÒØM;ÀϾ)ê0ÄoNmšÒ’Šêm®“§Fee‡B–7W{©È{F$Q Ä8£žñ¥š/gòGþœ¯7¸!ø?O4ÑD›øžÍòb¨-´Ôºá¼&OBj—¦±­{ɱ$®6zågÁ]Ù}’{|­4KO» ˜/úÓ”§D´È^§™Ð€\É“²PE15]Ù¿>7ViþÍèºé:ëZ@HÇPÂJ@lT¶+fù ÙÔ0dEÈiÐ?îñ³µ…¼ ¥ÆÊ¸œSj/oZ­æ>M!T¬³¿íj Æ#¡Â*UB/:ÔtíþúÜüáVŠ!DÒ/d+voáhQ‡c^ˆÍ‡·m=µù$ÝŸß³04]äcÞÞ`:jè¦ï ÚWý²‚CÄÇ1Çâ"A“ «¤’WÓuû+sc•濌{½û;÷§P¾¢¬¼´Ø_¬Xµ¼O©{0ˆb¸¨úû S‚ßÛþ…–s`ù  —å#Ù£˜jº]nþZá¾ê;·\#w ¢\ÜMiM;uýqCð7øŸâÿ§_°cø>d%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr7.svgyupTIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ll8.png0000644000175000017500000003723212240014740024040 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>=IDATxÚíwxÕºÿ?kvOv²ÓI#¡BïH‘&‘& ˆŠ ‚(Ai6P UPAAÞ{ï$@HïÉî3ë÷G6çÜë=ž{~GÏ b>ÏÃó>y˜=ó®õ~gÍšµÞYKHTPÁ_¥¼¨ ‚ÿK*_Á_Š ÁWð—¢Bðü¥¨|)î^Á;qâ®p…+ÀOüÄOÀ‡Ìg>ГûéZ©v];ªTÏ©›@½ .S_u³ú®úhMµͲ“l"ë¯1™—ÿ v²‹€^Jém­¶P› Z3-B´ÆZ˜*Aëª5Ъ‚vK»ª¹Z®–+€t =ðÏó<`D‡Y]FÊÐvkëµU ¥hg´ GÊá²?È<™+3—x‰—€ë\ç:àÁƒ§¼ƒôø« Kzo¨“Õ+à½áU½à¼æÜå\{ŸïwÎ7¥¸EÈ 0¬5.3þ%{K&ß·v¥Å¤íƒÒJšŸÝXý ýh°™mWƒò (:xBp=JJj þ¯øô{¸¼£Q~üéï™ê™íYÙaÙ3²û²’£%ðîõ®õlÚuõP'«·Ô%à}ÙÛÆ›®‘ÎEŽª2þj‹K+!«ñ­Ã7f:Âãv­5]Ë—:ðkeÝc³@¥^1Åq{ fA•GªÕƒÀ׃ ¿\£u/›CÞ Ù–Éæ¯Ì«@µªj*.*¬[9_dwÈÌ„Œ¼›O¥®‡Œî©?%§‚#¶Ô¿øu ^Nc9ˆþJ]¨T)ä Þ¶ <ž·m júƒú¹†p°/(Yr²N§Ÿºu8w;ž.­ úPý0}Ô¶í z¬Á%A×ÀZ'À8ÌMü~ô{+&麀_Š®õ _ ù%d,¤$øX+–ŠÙåÝ?ž?à×óë@¾)§Ê‰àýØ;Çûd¾“ñ|zxï¬=)póHÊÉiàsl,ñ€Y¯YùLè·‚²_\Tžý)]˜…„Øjo@Ì–p}°è{èžÖ P”ƒÊ (ÜQòIél¸î¾õRöE¸}ódö3à¾!NVCì÷ñCª]††Ýš|Þt!D®ˆ|7* WñpñÊùäsµ yÛ¥oÏ5Rñ…'¡å”zu¾€°žA½­@Û$­< ÞÞÕêEÈY^ЦðkÈtç~Tx š•tu´W'ï8õ[°L1¶3Tð¶vÖÊ`}Óïis+àg3 ︺s¡àÕ’çc ÿhÉ<ÇÃPXX:Ó™ ;Ú; ¢ÎUž^e!4ܤ°ÙwP3¯ÖOµj@@zÀ”À@¨ŒS^ânèÿi¯Y´h- 2ÜéWÒÃÙwÏ4;e‡[S®µºò DTño¯_ “~ »"–Ë{@÷ HWšƒî–®©rÄA(mÄ,¥„ZmNë~èíŸà·”J²rD‚ÈGÀõ¡ûKw(èR|®dä9 –Žû÷TomðÌg‹n%¸ÖÉjºÖ  Æ(Õ@Ù#Îq o±ÃÛÌKÄ3Ú°]²X m ú­ˆ%!µÁ’ab¼Á—-F!G€=Þ9Ù9J°¿ê<ÎH÷~O x÷ißhuÁ0U÷‰.üS-/›Z€a¹þœÞè0žï\ocp=èÎðc…{¡ç'p]vÿâÝj9L6€’³®zj}(E­ž«•5F×y¹î:¨1¾æúDSyGÿ㎼û'÷ ÷Jȵæès…sïœju<Rj]æü; «éž]Üš\«u¾ê ¨´:dqP¶TÃ^`‹ä:9ÀI •lò€³Ü$ätí¨dºŒ–í@žá2I@&¹äƒX"fˆ úŠP‘ J„X%†‚{œ'γòÚÜ*:©…+sÞ‚¢Õ¥çíÓÁ°ÑàÖ{!êHØ×Á½ r~èsÁ^`ÞüÜØ’ûLÑ×àJðDz;‚p±B¼Èß„p×r»|·s`.r•k ·²‡ƒ wq£@&9äñ·>úo¢óýÿHzˆÖàJò|ã}JM®OÝ#Áÿak÷€àßÝZÅß0b¼›º4w̰äß(*v¼]ϹAY!±à—g+ ©ö•®÷ÜmÁ1Ä9Õù«0¸AæR@!Må]ˆ?_r™èɽ´¼hxÁëèý <}½ Þ1@_t‚é)C/C.è‹ô=t6«ä&~ùçõõáÅ ¡;8­î^ž¯¡¸“ýºËÖócFƒµ½šµ/eóO”weüqÜq-ü¯ O‰°El‚*g«7®Qr£‹78ü /®°[q=àAÑI´QŸâÿ?N|û¹p[ãÄSâa6a·@¬Ÿˆ™ ΉCb=(‹•/”ñ lW+ƒ²PY¨Œ¥Žˆ.ƒEºó?»òoVE1X ä~PF(ÃESPŽ*…ÊP®) J*(ÙJœ’ ŠŸRSÉñŽ’¬|ê}2Qvƒ‡otNŸ§:óéÅ}p¥÷•›×ý ¸¨¸~ég :‰öJÌ?)öí~hnƒ§§÷~p|á®í©–ï,ƒý’Àô’Éj< î® ¾;^ðÑÁ1Åì«;Ôî7ûçš‹…[÷e¯ÎK^`0ݶ¢‘Hüÿ8ñíq}n¼ ƒd´l ÚJm«¦€œ#×Ês ÕÒ:jÁû¬w´÷ x«y-Þ©àâìMõií}íȶ²;Q–Äö_¢øn,¥ì‘%ÛÈÎ 5_uhƒÀ«÷®÷¶ïeï}Þ3àÝáíí½ jMï~oð|îÉò< …ó‹V–xaß»®|¾½µÜ¸îø¥Þ–Ý»ûCÆ·™U³Í tQ*ÿ¤Ü·oôHüQ@ë&Ùês²CAWUÿ‘>í¿ù¯Üù*ù×¹óº4¿Â2Àc–`[¼2ä °¿êÞ®ÕûP÷«Þ5 VŠo²ìÄIþžgn@ÿKgÁŒH#“</Š™â#È­”÷DÁHézóHzD|1,ô2ØMöïíàBúùE—€ËíXâ æ³~óI¨ôITçJßB¯ÏW[!Ÿ}È}ò{¹d_ù€ Â)ÚŠ_³`@ñcpxÔÑ©§ÇCöã7”ô§À[bïi/u©è(‚ò½a¦þ]à]å²x<7kÓ!kÄái§t ›—3:¿5”Ð[?ÏçžG½ @lmñ«øö7ªôöK°“là*/‹‡€ ‘ª»"[蔥Àà±òŽþÏ/xŽñ1Oƒá¦Ñß8”iF‡9ägÂA¨Fµƒv”ÅT1Ä8B¨2LrÿçéDÑ™6 ‘Õé¥Ã_8¿‚Ôé×&ܘ G2w×:ô0„^‹9_)œ_—̶…KkyOö÷ƒ¥]íÃÀ2)`˜ÿ`ˆØ_¥rå ày£0ºxTÊ\†ÇM‹/±¥±­ñspoöLðÜ€ê5ã¯áèÀŸí»~,.“½àÝPüné-PmÊ"”8C/ÃfP&èš)UAyÒ;S=a›ŠÛ |·¿Î/ÜMõùºÎ Ž(”s@†¼F ˆ†ØéÒ T‚äLùÉ?8Ñ,^c@>'iÍ![-è^×õÍWûõ í{÷ÅÁñ4Q"–€_òÄvˆ\¸©¨˜_ÔJ´'@}O¼¬Üùµ’rR{†Uç>¾ü ‡GE$@èìÈŸAhFØæ+37giþ\H¯}Q½ú6,½Ö2µ'Ä,)MtXAÿµæ§íæ‰5Ä•é$:-Ä0ªùr.ÛAw\ûQÎ"!Ú€8%TåÐ_l»€MÔ! ät–±d¢ö¢öȳtcð…|A¶õ„h®]m.ûx”1†{G€QÊeý˜QÞQÿãùÓÞ4Ðü³9j}_GÖm™¿$U;W’'Þ Îh ‰%UöÄŽ¿þúPóÿdxþ<—Iúq?ãÁd0&€á¦q•¡/x=Ï{·BÀÞµÅó ¨T4ä,XZË‚@ïâ8o‚î>Péöàùd°óeçyS²öå¼ÎÍþ-¯Í‡¬.æÍæ$pG;C\ÀÚª ¡h ø±ÏpÌã`ºQ J–Ó ¸ßçu]%@°Èc4À­ ž?ˆWAìÔ-S< óèè¾¥’+®‚·Ž:_ ¹'ógu…œ£K‹ÚB¾±(¾tN.™]²SäK†G!â¹è ñi`šf*4­ê•wÄÿ3üioloc|ªOLšà€ìmiy××CJvŠîê(¨¶QH1à[HñBð¾G?ß‹ ¡#eë•Ý¢@Ú|çýÑçßÿò‚(š—YoŠ÷šw¶*ü¶¸%¤t¿eÎ|,5ŽZë3Üù¾Ë¥—ì¯Ú÷BélÇZg( ,}Ò9n¼—y0;‚jF¬ŠY ±q•GÅ/s²y¥ù*_Þè®êöéNBpõà̉ ظÇoWs~¥æ‚g–z\ËyZ•m(K{5NÜxøûÄÍ:¹}”MÔ<Vßs–3x0ôÅ ‡A¹7ìàö ÙržÈ›ZWû³€+¾ñ «ïÑq®Ì/y{ŒzµÏúFŠô¯ùüö Ytö¿ÜwÜíåî.úì¿8"|+¸‚ϸ>‡´‹)‹ÒÞ‚ÃO­½¸2Šq<¦Îú=º× bEð}› *4,"ø;ˆ›=¥Ò-ð°Ô6ísPزØd¨´#ú‘X ŒO˜Â€Þ@åòŽúÏŸFðô¦½Aô½Doð_k³u¿ÛÑiPd+5;Þ€–'ŒgÁ¼Ä4Þô5häGò °Fþ,÷‹>¢ˆ-,f6èê‰5ÊãpÊv(0¢†'Œ¨²œâÖC™_ƒkÇ`Ìöå”ÌÇøuÏí¥6jûl‡2#2|ÏñÙ+¿³Þ,3ºvj¢÷¼è q–Bµ°Ð¶NÐÀT;«ZXó͇M‡ÁÿË$S+ðŸoyÒ\°³2ÊY”÷(¥ºŠÊ0åKQ tåœhü·:¿ëøóþWD÷‹ù>ö^(_ðZbe¸¦Üð¿òyJJK¢ öjDÐÁ¶Ñ:Ç#èëVÏÏž½à týäNuƒÚRû\ÑêyÕQiñcjBÒîuAk (8kEîSÚNûFKe0?° ä”_9t;½¡Ôg“eÿ äeÖø‚6D¾Á«]«Ý`«ÎP߃Ö¿/ ò–¨ë+@·^9¬SÙË1p¬p»K@ß[WI÷:¨5ä/ò0xR=]½A®[´Ÿ€'x¤¼cüŸàO+øø¼øñO€n™²O¼ßÍ=¿úÂ6¸95c`–JŸtôwÞ ×bgGE€)ÊØBÿ=Øw:Ó]ßBþŽÂŠ«Cé/v§Ó îpïu‡™®îÁ:[73ž3„AH®s’«0²Lð寤2cèÊ<Ö‚õ!ûgH3%LíÁùÉSS!2-Ìbƒñ¸ñc Œ÷ä.`Íd vê7êƒæÂ&‡ƒÛê¾áZ ÚƒZ_y{ïr¹†ø?ŸVðJˆ©ÄBøT ‡ûft™Ûí]¸ÒôLãóáÖ‡7Ö%ûA–#wCáÓå8m'è+ëc•e`9g>kº–@cc"1Ô¯u‚yŸi"0Ä<ÈÔÔ,ƒ]ÿ °ßÕÏÕ¨U¾©™òÝ2«/ÅŽ,“µt-ò 3ºe-ƒÌw3Ò²gÖ[ë%WX*ÊžHÇ´£QKDŠ/À4ÈØßîÊp\¶vlmª6D}̆r-èˆ?­àocYmÙcI†Z[kï©»²ÖßÌH™7'%½{é D¼ô³u.îSÚˆ}`Üdè¬3BàÏÖA~ïƒÿeK¢y$˜f»߀ÒJ¥ÏÛÓ `zÀhk()0¾ièŒç Ñ8ÄÛ Úo8t;ÆßgùìíQÛ™‡»|öšÏ–ò¯á{wPÒˬ>•>r8Ø«6+ºÅK ž*|d¶4Ëý€·ÅË@,d›Y f¯±± ”¾å¹O>ÕîWÚÔjõVyGõ?ÇŸ?Kâ8X F›1Ãp܉žPïjÐÝTî.h±ºþ¡«à¾—Z<ß0ZžnôMX¨»8ak•4¨r,&5òÄö‹ ¯•«Em Ï„ œÀ3ÖE`ÈÕ¿n ¡/½øû¨ÊoÕd¸Ïú^V¥¯o/ë”YÍ—ç"[ûŽ»-øÛËØÝ^©÷·Ržoß0¾Õ¿dK9ž©à]cì¼¼ãìÛ߃¼(çÈMÀ)t˜@îá8§AäˆbXƘr#@¼AŽ,»»´mISP›¨fu_yõ?ÇŸ_ð!e>(Û•íÊPf)ÝP6) ºê ›¨ëÖ‚þ¼®–²ôO*—•·@Y¤4TŠA‘Ê:å5P.)Ÿ+c@Ù-WÚ€\­5•Ÿ€T´uZU ˜dnòwÁÝîÙÜþÞÓ'X±Ý÷·O°ž«eÖí³/–Yïí³Ý¾Ã}-6ý}6øW×ù5·Än2W.­·s«x_u¼ïÜÞ={½£@¾/³eD i qSKwKÓ= NÊáÚ (X\¿¸¨¯x›z[”wPÿsüé»4£-mi b“ò¦8£è•üÈ# _“Šü´$y¿,_m:-¨I[`/ʉ ·Êo¥´ÉÞto¨+½QÞ&ÀU¶0ò]ï¶àn?þ–™âUŠKù JSýßõ æô`ƒ­˜ÚXm~σxV9­<Î%;JûAAHÑÂ’{Í¥3ì‡ ð!×n÷0¶/[ŒDñ‰O¾ã»NŽÏÞΪ-³t•Ü‹Üó@[VrܾŠ)íWZ,-ü·Yî}+]#]ˆ¯Ä·âX¦˜#Ì‹^ÚÒ‚±P›ß0¯xÞoxžö${¾†´ÀÔ}·ZÀžÓ›Wî\ …Ÿž{¡9ø]Ìjš3 üzËpîñ9{9òI_^eÛÁ”!£ehëŠ_(‰¬È¬ã9½!útÌ’HSü®[v0rSVŽŠ{x”EØ´!+žÚ=ñ Üâ¸ØÒŽ‹(BŽb&¶„™~€°þ%æÑûPVƒÌ(ÚúJø- y5d@ÿìÃ’? wÁ=û+¢ìEr"e·s0øvÚø‡ˆ<ÏXð4ñ&¨£¡8¶ô]ûC =ãìï¼ úTõ;u'ˆæìdˆgÊ~ç8&>ÃÀ1Ç6!`Ô·7Û× ÔêŸx®Z<è¾E!¨GÕçÔlð¶÷NP¯€÷[õ„Z<‡½×½CÀ½Ð}¯ç$ùX¦À½[Înœ 57Þ›Ù¬ÂjÔ®Ú\}Mб.xmÄ „øüUfMoø ÔÒÙÂ9ÏdWΛ ®%Î7Ü‚8"Ί­”}áå ²µ!)cÚAlHxAðSp«ÃÍÇRZÁ­ÉiÚÍB ïŠo„}Ü}‚‡¿÷;ÿ•þg;Ñ‚: Òªj³Àírò,YÇ£ªã@ü$cø0s–@Û²Ÿyj™ ŒNðN‰è:âý>¨²¢ *] Ÿ <ÂzÈEr™ïZÿxÄ¥,©­·ìÊPÅU±ìo0 ¶ÍÆ´¿Üò](©\=0Jg€øØ÷ëúeFç³r…wž:œkJÇ;®€zÅ{Å»$&òàÆ…dúÉѸ1àÿùN¨5HƒÜœÌe} çDÖè¬8 ”JÊ; wŸàWÓEÌæ0\ìò $ÐãÅõŽO#‡\ñX ºJ ¢š‰qd,uèر·ƒ¯$›Æ§ƒñÛàY¶ÇÀïá€bÿé`ÚnüÒ”-ˆ¼ÂunðÛˉ_ßx¸)'œ%gÉ…™‘š•OVû*nx2‚¿r'ÒXðhçû½Õwß輡–¨§‘3ÄÕ´¶jmí= 1}éÂßVl“?Ë}ƒMßO_ fcGCpÕu´×W’ó–³ à½»vì¾»/€£¼*Òíb½èX¨M Å—&üßyW~ÁjÐÇëÐå€e¿ËfP¶ZjšÕ_ùJyä1:Ðäýe?ÓG˜–½`i¸Ï:„U™¤kÚ`­£öàõm¦ö/.ë-“¸A:M¡`N2 ‰àÿs@ÿC ;ÔØ¶Äãecø‹#ùD)¿Ti'@=âÞëî òª¶W+ªÐ^´þ/Ç«H4-D€¶$q d;­šÚä#r±–}Û¹òìÇÝ$ø²ô5‘.úKE3å à$„:@&·|-íCöàq9LŸ2‚àAÕïå;k¡µ3xZ™j:ŸòÖÆWq÷ü »Á|Ƚ_4(uºTà;Þã£ÓûÿºàÒ$Ù‘¡ ¤èæé‚À<;ðëdнdêa|†²¯ àïï&¾%J´³Újí¨¥®Ï› 3µ3šˆíhù¯l%¸É6V“µ'µ+ÀWò¢V6IvW­ìv÷Þ·¬³âÔyõ+A9¦ë£´Z \Údm¡ÜDê{‘-“þwr3»@W¤ QüÁÒżݴôÓü×ZczÖ4øA¼ F‚êûpCùÁ¢,Ÿø ÷kº³:»²ä§òC¾øÊó$mä@ÐÍ1lÐÇ€õÙ Ë@wÚô£qxo¯Ýþ ¤C™‘Ÿ«¯©oƒw¬û ×µcÚ1xœ‡ù7:,Ø€LNÉm _’§dŸËrç9î.áî¼F°¼ï÷‘ßL°<ëßÓšŽ(×w¸{yJÂ÷lÑŠybî·¼oŽƒÍo9ðsÄ$ –ïz)r‹@ÉY ø™-r7à‡–ß_m¼öŒüüýüX&Bé5ûUýÌ]#ž Ý Eï)1J6ÈcLb,àËÑ‘óÕŽêІ:‡»¾oKϽžV ú©ã´ëÀU_NP(!Ø6€lö²ä‹Úpí4ÈEò”ötÙ)ï¦eÉïÁH D=•¦E/©<RevÈ_¹/V)Ùʳ¢¦ÈáK)øÛÆ ÛùZ~|!nг`‰ ØgÍ“ÍÚÀÿQP[Ð’{Açû‚I^ò÷œ»ÞçˆÕOm Mñ4O‰á¿¿8r¯L“*XÖš&›ŽBÜʘ†Q¿€)!â˰ÍàP,µÌ#A6šÈ|ÉiJ±ªjAWêØå ƒ’IE‹J2¡¤ÀqÌ1 x‘÷øDq/÷f ®qˆ £´75X kÊý@=Ñ´¼ƒûÇq÷Þ?ü xMðŽ  ¸}XRx0dÿX<ÚqV+ qìyXn“i OpšK@0AXAö”íx”ÝJŠXÑC£§Dî†Ð¬˜—¢Ai]Ó†] ?(»œö¨»½çØ%qö‡A V¿TÝÀ³âÛ­íÊ& ¬ìzÛ˜à7zÈòqù²œú¾ºqº8°´³Á8/¸¶ía¼â t÷ˆ¸½u§NÊIò#0臜סГ—S° . )Y²£"ÇO0Hôr(Á ô§!! ´WºópP†iÓA Õ5`-›ÙQÞAþýÜ=‚÷õI• J¸’ –ý¢üN€~•_Ï€*ବ¾O(imvÌùƒÌ”á F‰tySfI+èvêÖë†BâÊšû«†C\t55^‡‚Iü¿WGÆñ(h÷ ®¥yö Eyªµ€{'ý/~Ý~I¼D ™ÀNŽq(ÆŽ‹²w‰4>/QÑçÙÃ*à!ñq`Ž øÑ: ,ŶÝ3«Ê×b8H߃þý²¨ãœÏºªC’ý`îrÈ{+¿cacÍä=²ˆ±Œá»8MMü‡`J2„êí@œ<£)àØèØèØò¼Ì“*zîÁßfƒè!kBLJêáÞÄv·î[ %Õô9pdôùw¯Î5W›¯¥ƒÎ£ŒÖY@“ãå ÍE„V ž8‚fG–†×ïšïƒßÙÝ«Ô0× îÁà r’Ü+ ?•ß±ä`9@ޱ^¤ˆ ˆËû4º.äŠíª,³OœL<çÙÁ]¥è°®—ïÊ Às2_F@éà‚g‹@Ñ’¢®%³€l’ã€U¼Æy -ÙŠ*ˆ8ð÷3×6½bµ|UÅ£‹ûCP`зAzÀñçÞãìîká}ˆbγ,ë,_Z>„ÚÖëQ*Ä4ªöT­Spú§ä£is!mHÖw¹@­£­Ð AÎg@«ŽÓ6A¥·#Æ…]€æÃZ}Ü3*OŽé%0A]¿¼yUàÆñdR»Bz묹‹€<ÒÉ1@Ä ;¤ÆdäeOƒ½/žÜ{á8zÿ…Y×pó‹ìªùÕÁSÍ ®y¿|šé ZP@?9T>"R˜DTÙ»:úmˆ_›Ø'!ìmÂÞ 9 î¦ú®ú# ìô¶ì)‡ƒë'ç$×pp5pÖw ?È¥| ¢© òcÖÈ] |« F°Îñko nj5¼÷@ÑìÂQ…Áûƒ÷{ï]°ý]+xj@5Äu‘1Cc£+Ï„šËëäÔŒUƒB+%Âõ¬¬4òF¥[{€‘Lbˆ¯xöè \bµ@i5ß© ÖA5^­¢qÈõ `êZ¼ºäS8Sp´ÅéÏàjï«[¯-å ò½ò*(D#d,z Ý-=-§ƒ‚!uN®,‡sG®ÎLM÷HÏo(/(^eȃœâ<Ðö´s°é9Ã6ð ´[€ÎR´øÞô†a5ÐÇWþJr"s@ïúÚ½ Ô-îZž(à[ä~ Ì·Ä(ùóAyQñ(Û (=`Õ XÔ(ïLÈ®•]5sxZy,žœÿï(Üqܽ‚ÿ–O,ßZ¾˜÷+÷ëuš4<ؤ>Èg,…kk2kàÚê´2»‚=Áù¡s"˜—1ξ!½‚ªC½‡š/nØbç5¼¯öûPtCßQ· 2,Wv\ë©Ï\¼iÃnuÌŒ÷ OÏ1ˆ8ü­í2Tî9)ì¸WyW¨} 7½ô¤w=ä4r\Ô^†CaaÉfpLv]t¿ b³øDLâ‰$èÌ'¬¿Ssü-“\mvÜ ÐŸ³½ø8}ŸÊX–ð ¨ñž†ž P;zvzF^.rˆµ¨r¯ò.(c›r‚WÙZÌyV­ã]Ù‘™ó3màmáÉðœ(ï(þ~þ2‚¿MÀä€VAã)M‹›9¡ÊljÙõ.‚ó5½Îú œ?™’™¡‡ŒY¹û ëó1×\× {Dw¿. Z}ÞÜÛðÔ¯Ô¡N«ƒà–ÕîŸÊ|×ÏhÈðpªÅZ}°…Úª<õkx½Î 0^Šš± û‰µb:È}œ—çAýÔÕÍ} Ôþ®žG€'äp^аÌ—_ÈÕ ‹ÄS0Ö?IJ 8¥õö‚‡òßÍ[ Þg¼VïµßSówwíKëo²ƒ=ìûûÖEuSë÷oÐllSlCáÊ{çwŸÙg—¥ô¾yïdM†F•ké«}æÇL Œí¡~†ÛjO‰é¬_F~ï·y $ßx!}.¸;íèvà>hãßÊÿhøz“±õ‚!ÌôzÀwX-æ@ØÈçNVb!çã¼O Û@ÉüOs÷ƒ_'ÓPÃ4ˆø8ä^Û!Ð-Ð-Ö} ÚlyE€m@ÀçÖ¥P{}­Ž ×à|½ÊïD¯€Œ¨Kµ’“ h¢}§#<6{?Ç9pwsghyòI¹ä<®c:ãÆb=éb¹2YI1B:´Å ™½‡]W€ê ”OcØSÞ!ü=üåZø_c›eûζª¿WcFÍËP+¨ÁºÆ¯CHPì}ÕëAîY×V>„“i—\kùÉE­‹õñfØàáÐ$³ÉŠz?AëcÝžkb:Ôz®ú È\•Ý&oì/Ú=þà&ØgØÓúðP¸¥Üz'3ª<õQè—óVÐ=–@Þëžbw@éHw?- .¿}saöSp~m²¸ùx¼Þ3ÞWAÄ‹,Ã2ýOúDù4xàqLˆiY úžá®ÐÉàÈKLñ£ýgÇqp̯U`‡ì:¹éùià~É=Å\{Äw€U˜ñÑœûAÉZ`©ú“7 ÔÆÞO½íùÓ§ ÿåó,óó ¨™Vsb¸§R›í£ äû¸Ë5á\ßÔïsÎÂõ-é/æ<ÅçJ:îÿYþýý¾‚ÎE]Ö·Yj>0¾S_÷¯>+îiH9ÜèFعj[§}•`ïÎý-Ž]ç/¥Åö¦´À´AùÂkøÒu„à¹þ÷Áu]FAngØÿΙ¦WB!ýXΩ‚àÊp7ñÞ´”Ud,ð©b0ÄŒˆ_³*åUŸ7ìQ¦ëÆ`0]põs»Á]˜þ}Vu¸rãªvm-”4+íàx””ib0P,Ë’Ê–rˆ‹`šoX®‹¿úhe(-´´çÇ.««_yGëß§Bð·éMú€âÖéÂ!üÁðKáIÐÌ¿E¿Ö@û¼Oôé —çe–,‡}Ÿò\l Î=ÎÃî0–TÃ8h|²Qµ:³`Pë!a}NBW§…mš€Ü+¼¢ìÚ»móÞͰâµU«Ö_…ÔŸ¯¯¾1 úÆô ëÕ…/´^€ JV«%2ëͳϟŸ9yê$ǤÎÀar@§ê’•¹Ðô£†iu¶B:­Ž5é ù»+53ƒi‹ÎO÷.x.¤‡fÙàì¶So\H‡¢qEæâU X•% H-ÛäMV—x"¯‡–Úƒ¸5l­áê‚K+Î7„ÔE)}Sn–w°þ}þz}øýiý^ýFa€¥¹¥Ÿåq(Ü^ôf‘nL¿l:w޼yAM ƒ†5rã–A䨰!íÀ2Éò¹ù}0t3D“!pAЀÎÄœÙ~q#\}ýêƒ)sÁ½ÇyÞ™3ÚemkFðˆ Ùû|HÕ€A`üYßFw’~Léœ&áÐØ³Ó®†€Ö[+‘‡ æãqû"_‡ðüÐ…A@Õ¼ÄaÕç@üƒÍ²4†Ò¾Ž×œ ÿpáÔâ8ZÒÄÔ(™Zx¾øx{iç5Èã\" ÄÓ,”« XXßšîõŒlò/­¹ªÍ?tU¥ÎP“šÔ,ï ýT´ðÿ¾)~ÿXá_íÇwx¹c"Ô®?²I2\3ä-í)“2ªçC®'já Ä^±ÚWtmÐuj»0è5¦Ï§Ý^‚ªŽ*Ýb7Crn’5%6=´qôö p²èØðÓ/‚œT¬+l Q3ý{›ƒaŒn„˜g$͹ÑöT:ùÙ…yòaÆ®œPØ¢xviw }!¸:´Õfx³E`¾§Úçñ롨ŽX$Öƒ÷L¦9Û·üS~I{²enïüÑÀuÒH:ÓU´“ÍØÊh¿å¦¦7ÁóHi`чPß,׎õŽEŽù GËò±òÒ¿Ž>ÊÛ‘?E㋆µƒ«õ.']ì{Ò¶ÿ¤Ad„ÿEÝ'Ð.¤ÉCu‹À0]ßA7´9KnÇÏήû '!çéü8<ÿˆ÷”ï<´øÄVÈüøæ¦[gÀb°Œ°Aä²ÊñÑ=!|O\½Ø)ý•ó ·”ÖwWöFAÄc!¶`hóTCÿÄB¨»¶ZAlxW¹ÃÝýà‡ŽëäÏ‘p±ö¶/÷öóÃÙ%yÃ@w±þ´Zs¡ÅõžOw̃.í:Ìlè~Ð-Ñõ1•êØ d‹ã'gœÛ}uWjðÔ°|²bdÍÂú±P×VÏXo XÚY±Œ)ï¨üïè^÷QÞŽüÙ0õ0õ7=Ö €øÀ|°wtmñDB~óü…ù£älÊšÁíKý{€ÿR˳ Gô­ øÙàƒ¶1`3ÛFƒí¢í‡€—ÁRÃ2Ù\÷ô+Jƒœåé3K@7²°E±ìG‹N—€½²g„g86¨ãµvZ?=;sä­.8Q”/¾ð„²xOHàFVÊG7 PúF^çÂE`˜k¨jX*- ³Aà‣þ=Àj¨£Ÿ(œàø­4/5î†LCn@þÈÈÊmWXª×©ñN`Ž4?nñÿ}uúAEþwb}Ü:Áú&Üëlóe»ƒpÈ¡˜”žpzîÑÅû·CМŒKy ª,cøçYÍãA©!¾×N@Ì÷Ñë*M‡ðÜðú!‰PkP‡jx!ìȾ¤càÔ™©G·CQjʆ[µÁù´è ÄCa߇¾òy]5åHŠÈ8RªAÞÄ|}á# TÖ }s¨;4¡]\3¨´ªvdå`Øv­ôÆû€çr¯äþ©^l|u­¹ÿrèL0v×»u{ òÄØÁÑ=ÀXÛ¸[ÿ„½\×rdÒà›OBæâìôb¸vÝë*Û1ä&Í€FÄb+ï¨ü6‚ÿˆyb‘Xþ ÖPk14ÙwϤ–}!ðsÛW¶µ°?~Ç“[gCV¥Ü>ù[¡ùuwVþÕ, Ìc@É‘ódÐïÕ5Ö€ˆgì!× û+]ßjÔnŸè_m%Ø´/åh,\õ;³ób5Èé‘u%g¸)q”…æ-Z\h|÷D-©Ô’?¼Ù/ã œ«~õñë÷C¥ƒ·V{h7¶e&¯ì-P·CúÙk¡7Öƒúî®Égƒ>Fü,ú€×ØzpÓû¡fr¹øÍEœð‚![·EtãRe(ËÀý†ëm×ã õòcù9ˆ,ñ¶èRÞQùm*ÿ{iN îùûZ£Á„\i 57×ήû,8G¸º5¸9íêùóaÖÙÌ«™_1:ر=#„ ÐÀîV ô{t•Yàg1·5ãã{†GA—eôWAÔ*’ /9“‚àÌ“ç_¾’—>»:âzÄlÔ¶kV¨Ý qjB+ÙÊe,”η¿é˜73 ›öNøç¡^Ð5+µØ'@þìÜs£àÊç{› ûæ¼ï ž„ÌéÍÏ4ü4œRû{n˜ï%#Õ— äºs¾È “‚BBú@ œ-ï ü6‚ÿƒ°… hAAÀ½›Ûf´7ÁáPã³ÆqpbÀáÁûß‚´ Â­Î q$ÿ&”vw¶w›ÁÿË.Ó°¼lºjŒKž9×Ôê®­õMµo Öšݫö‚ø! Æø† ¿К úžJ:ÿ* -ÜSÜBg[×[šAp[ŸÀpHKÎi— ™r¯ä5[ÏÈO*µ:QkŠWÛ3À}8µ8í9È”y³ …ÔQ¹éù‚ç¬;ÆÝ l]C¾®ª¥®ù9Èiž’ !û#öD~ v¹“×\­¥ùOó6óøœU%Îc§Ï­œ3Ξ>Õô„®¹xïÙΠŽ)ù À µ?®2+Êñc"? ÿlEóüƒœ ß”3€LQA«¾¬¦BézûeGd8²äm„ËÏ'÷Oíû$}™²äqu öÔª‘ Äï‡ú×뎭y ’´›ñ™°køáþ§?ãî“aç&A`±ZË{ ,ƒg?Pžw»Üƒ@9Ü<ðih´¹•®‰„Fi­¦´xs¨5.ê.odn:ª¿Qý•êÃʻқŠþ?Í^d<˜}ûG5ˆî3ä³\— <0Ò …µrºe/‡Ò›Ër–À ýõ¡Y/ƒûûÛ%{ÀÐTùPްúû‘¯„Ÿ Yá³CRƒ‚íRÀ‹Ö«òdЗ?A”ˆ˜ú«%§í— ò›ðøb¨Ü;ò±ð/ÀÖ9Àm€Â×J–~%K½Û´ÉРjÝc Z@Ñ—éÓ¹Y‡ãA®×zxƒ}‘±¸rì¹ C•õq=jOK†eß`_™ï`ÁW´ðwöºönöQpaÆù ç„äW¯]éùæ<–‘º·dmo>N4o×gCP˜ßDÓ=ÐÏ’e: †Zº—•Ê ;¬$‹à'úÒŠ>+™Túhsµ­Ú20?g 6*`üÅn°BÊ7Y‹ò[AÚò¢‹žhÚyU÷Lȉ͉ÌïÚ¾}(äß¼qñÚã Rµ—ÔþP¹e¾ÑСø§|ªm¨‘–øX÷Zúg–wmþ6-ü‚åQK{K<4Û@mÐê´¯SµÎ&ðöö¾îíŽ(ÇûhHŸy«4-RZ_ëpm0\͸±$e=¸&ØeéJ•´ÁÞ| ^®€6[{Ò›Ú­“Öx@N¦ ¨[9£¼C¢{Åf@Ó•-Ýñ¦*7ªT‚ÄM‰ÞZÉP}Wu}õ¦°sÁ¶[7@F×[×ÒZBÈ‹1ÏŬ„èٱɕ{ƒ¿Ã§ßë4,ïºügT´ðd+ù‰L‚âÈâÈb  UÁ­‚mPÔ¨hZaðyzz>ÆiK´P ŽÇdÐŽó²0Aö¢>hçd¨| ä[̦D†Ù¶Aøã •Þ['ÛwçAIWTÔ×Ô%êgpã±ös ô‡sñzðÛæ÷¡ßbˆY¹O\ú¦–ýŽþQ!ø þRT$Uð—¢Bðü¥¨|)*_Á_Š ÁWð—¢Bðü¥¨|)*_Á_Š ÁWð—¢Bðü¥¨|)*_Á_Š ÁWð—âÿô5ˆŸ¼\#1%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr8.svgû%ç…IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr1.png0000644000175000017500000002046112240014740024033 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>´IDATxÚíÝytTEÞÿñwÕ½½¥“Ng' [ØeWPAEE@pTQqÜDtDPFYTTtDAqCqQYd‘°…„}ët÷½·ž?:ç7Ï󓇜yä¾Îá4K’®úžOu««o U ›í #Ý›íÿ’xÛEt.xPH!…Ànv³ØÊf6»ÙÆàY ” ÐÐq©dÒ èFOnr ƒ.\‘îä¹Ã|¤I$¬aê"5Jû–>RÚJ&/- ¥·•8Š'A`Xż ê«›á«×ÔO òD;ñ¸ðfÅh´*ef­_ Õ•z[ªô#ì‹Ö?P]s„ù³õ.¬*hÁþQÙÄÃb-}AÌWÈOA¼'[k#A¾*7ˆ/jwƒ:Ì£ê^à ®n&¨F*ª¶zÉŠ‚ðòо`”*m^²JõâOŠfAùÌâãE+!0»²Iù P[ÍòpO“Õ³j0UxÄ£ ·ôŒˆ.…ä/Òo®w5dæ7)m¶ böù~нôMúA}o¤‹yvàÿ€u³õ7ë-(ºµpPáJØðÖsV)ȉ?²ãà3àðÉå¢1ÈË7;à\ïZèŽç]]PÂkfZéVð‚µßü¬KMaŽõ¼5Ãøù2K5„˜&žBçQðõî÷|¾Þ±žÝàéLpl9Y$‰÷îÄ«\°:ªª .9Yþ”êÆ"Ý­4ᡌFÐT4ݲ$p{ÂàHW3òìÀÿßänÍÍ€Ÿ—îˆÞrX]ªŸ /0÷TeƒÖCdí0ÈeÚËz)hoi¥ÚàyuÔfÒ•øQ™ªTSëu«ð‹*°¼ òEq-¸w8vë€ç&÷T× pº¾vºÀñ‚ž¡ÍqXì›D’IåW—1ªö_ Ö‡ìæAn—`¹£Ú}ÙñÚ.c!½}FÿŒm‘®fäÙsø?PZQ²º8ŽÖÎj~ ZS{~Ü ÈØ˜x2ýYPíÕs87ÅZó”úÔ6S ÒEÐït•yns²iZÀÚ¦*ˆ¦4 ýÿ =ÑxpÙäSV¦š¦æ€ÊVý™r“Ø)¯ñ+EVMŸìÏÃü’ßÈãRƒøÞ‰9IðÜáÝÓJg—¯«8 Æ#htæˆçÅ„ÿ|{D"‰Ä»ØÉ~0™¿˜}ÀÚ¯6*ú<Ç4Ýr»Ü,_tõÎvàÏl#ûÈÛ!¥M­>©Eµ(úßbÈ,‹‡à’ðacˆ_ÄRfüË7ªêY½ãÔ®HqTä‹m ÿE_¦uG¦ã„£è3Ãõ 5Ñ®—€ø^¬ó *¨ü—ŸsÚ%¢%M€iÌe TU]¡µ`ÞaUªÀ{ôÂèAoêx^Ÿéê;ìeÉ3$ +kAÒ;I­’AqŸÜÆAöä_*¿…ä²øûb_±·xu £¡õHãˆñœeJî ¼F™q™Ñ´K¥€c©;Þ]œ79§:.M—Çe+PûØG`bb×ÑQ\J¨›¬P±§rHÕ>fwïÆ¤aq{Áù³¹ë‘êNÌŒt#Ïü¹"Wä€û÷L×e ­rŒq¶€À=¡£Æ0çX)ê`mé8Ø"žX|@¦Ø">€‚ ùÝŠòà»ûV|´:N:³FݱWûŽD_×tXÞ¶4jÑôpÃC´%±"îgP *AÕòÈ£¸’KhêR¦³*_­jF–žè ›|³c€ã GcçäHWïÜaOiÎÔåt ˆ-b‘˜ò}m¦v9X÷‹;Å&à Ü<ÄcR¢1¨Lã `ZQ—’ëáÀ5?=°²{¯“›gAÞüu“~{ÙÆ[¶= YÑûÜÅ£JbÊ6›ÄvñˆØêN51+i \£U³ l[¥^U BiÖ“¬€¸vñïÄ+p=çêë¼,ÒÅ;wØ#üY#…ONù˜–äX ¨ïY*käíFÐÞÔ¾Óörj³™ö¿ëÛŸ™=Ÿ%±G¶Ðº\î¸Ëu7°’¢3¨¯•©Ü€…‰Åo­j/å@$9Àhn¤;˜‹NÇß&MHè©®Œî©{ ö ß ïF@GW^àÖ²c`‰E1ŽgÅ `Š6E¯ ZžôØÀÝ‘®Õ¹ÄáÏ’gzÔIoKˆ}<á礽ØN·Þ†ÊnʪÀ/RÙ@âE,Èbm–Öäz=S{T#±V¼ Âåiâàº=îÑØ§ zCt3ïnpîÓçêuA}®¾c=&Œ¤‘D"¨tÚ«KÁ\ªú[SAÎÑosîmµcˆk;G׈îí9GÙ?K‰{’IùØì±ë `Ù‚ÀÈn‘ç(è ê}õká\OgŸKC¼Ú8­•ö.0J¼.žÍïï ŽÙÞÏh›å§ò!P_ñ¯CõN™ßˆ;Eq-˜‹ÌvÖpƒÎÐzÐf¸/ò·Û{0ºˆ¿‹Ub¤«tî±§4gÉãõO%$¾—“|v—˜µÄ# »…*Ã…ÀaÊyÄ_éDK0çMÌ`<ZzØd­°ºƒc‡ëçÛà\èÕÄb™¸pªõ¼4C0å÷ç1â _@`QÕ½Á#»+qø.‹»*ã!¨•–q°NkdŽ´‡³c—ä,IÄñ8Ÿu­q•‚Y‚’>0bÔ ƋG~Û¼Õ Wø‰p ì©Êq‹U_ Ççο:7€C÷d»±UþUô¶ò¾úäߟWHÖ‹@ &x2Ô r+¼¤ìaðiqí÷CjtÚi}@®‘;ev¤«tî±_Cªžê¢†BxŠñ yc›ù&¨_UŒj ˆB°VÊ|ÌŒ`ð­ š¨yjhËèÝ@ÿ§ó!çq`ŽˆÀ/¬fÝó„‹®4…ð>kž i¡Íàzß³3j DíòÜà)v±‹‘®Î¹ÇžÒÔÚ¤>Ws!Ð!p¬r;&—}P'^(ØWÔ ’—ÆÏõ§X¬LU ¬:æ Fw³ÕDˆ ZoYä|Ý’‡ÉÀ‘j€ ‰â‰%ä Ñ[$u‡õŒú+T¶µ2‚u:Ê –ˆxÑ3ÒU9wÙ#|Mµöƒj¢u-”Î)¿<ŽõÍ}²#ew–çCèó°?ü(ð ›Ô« Zâ$¼«ÞæPϨûéœ$—£œZ?w€¸–δŠNm" 4¯z:ØÊo­Ì©z‚GÂïZKÁ쫪Z‘.ƹÏüÙªþ‡|^ô­ öƘ÷£'ƒ#ÃQ¬ßÅGÊæ–Ùñ'dþX(ö—M¨즑Ø4ábú¹ÃœaæÆp(¼GkuÐDt -Ð[t—­¨Ÿ 75Ya²{ž|¢`¨wdv+È{äÚ}g±?dþlUWÎd^nºAn“ÇxR‡%öo™ÞŒE©ã¡b\循È.912_Bþ€âz¥;Àèh†ÌÀügøR£„÷? g‚üB„Dôbmœæ±™LÀ˜ªÁÞp¤ìøÑëà„*¸¯d9øçÆU$Œ÷ ÏvÏ‘.ʹÏüY²¦YÇ”‚­‚ÁAÛ$âY ñccFO…ÚckÉC!~h즘‹Á«ß¡ïk£Õƺ˜ÄÛ,„ÐeU1ÁFP¼½`Gq=8ú]NϼȺ*{XîÃp¨evn®ŽûòVÜÁ1ÁÖ¡uà­ò¾u;$>š<1y8¸[xz¢#]•sŸ}Ñz– og@à³ÊK*³Áù‚v§Ž_h«½º_HK„†Ï×{7c6È5óAq`gÅÞ5 ÖVj[ Ô¸²*Ðò sUÞ£°Ë½OýÚû¢~ˆzD õ³úļ½™¸ÜùîCžÙÕ[éꜻì)ÍY²fZ¯›¯ñ`x`¸7È—X%ží™+¾µUmçg°æ[ëÔI?kŸh7ƒ|Óù‰£ X%*Å~`b¨Ah¸Ö™ÌLHYš05nÔ›—a¤…úÿ¬ýiê]V˜Ü1q)XËT˜ r×[ƒ¿¹eÜ•àêãnà²Gö?dþl‘O¨…|ÄP‡iÍPó'€BNPlàSV‚Ûã=î™ÑãûùcÀúÜñŠ^Ö¡uá1`´/É*}ŠK‹g•<•/êTµk¢•e%u“õ­ •#ƒsÂÀp™#ØÑÝbyèïèC#]”sŸ=¥9KZ_­›v8qžtÖs«•©–ƒa°Ê d°‘ÎÀsên5’6&·MÜõ3_•é€Íw­¿)昢Y%ó@>WrsYCÈ)Èî–{ ø‡§ìLÚÉGâ—ú_B¬ X?¨‹hÖ1R¼Zí}­) Ó9Ò59Ø#üY’±2JºAß ÒsÀºN…Us0ß°ê[×{ÙO¨Ì`Äíô¯÷@ê¾:W¥å€z6nˆÿmoj=5Èã•-£!¯ëñ‹òn‚²¯Ë–_ , ˜ xI!øY´•[d±Pb¹Ø+ò"]ó‡ø³$®eg½d_9T¢j£n5ßúRíNRH°íìwKgçLð=î»ô;ïŒ[ Ž7Üy®XЄ‡PìËoV¸*—T ¬ñãĽ€t2€yr³Ì±Tºåh „‘éjœ?ìÀŸ%}¼þˆ6\œq=æë'µŒuæ$³PJU@ ^\ š³VíͯÏÐŽƒwQüJÿ~puð>ìùTO«5 B¹•o À\n 4]hx‰#Ä19\ÞÂ-ß”s€4šÐ4ÒÕ8Ø?KZ¶|SŽ×î"w 0úY£¸ •æ+–”PIH!7¨ÇUWnÙB»_k®E¾¥ÑÀqȳØýOP ­­Àø*t<|XÝŒµ¦ $Òz€/ÑÀ 6‰Dà‘'®<¤P7ÒÕ8Ø?Kbè%Àt pÍk­¥Æ Ö~Ê1€';Y¤–‡Ä7b8†zºc@ûÔ1Ì!€GTºJÕÄ8bîåRƒ­þ@ Ä ãÊE/–¥Ü"Ö ‰‘®ÆùÃüÙ:}ÄÍ5¼Ír`¤^Oÿè*i?@QIp„-üâ ߀rìÑ?¹[ Èn ~ä+VºŽVª0O½Â,@¯>xX€8õa?‡pàÄSÝñ¿jùÍ|MEÓUÜb°V®w‘ õÑz:n¼@˜ JRJ)®×ÑDq—xÄ^±\üb†øU,¹Vû@ËQ(rPÎ ŠEX€S}¨>œ¼­‚Háüa¯Ã׸Xôçiåd}#ȯå‹Z&Ð guàK)Ìê_ XøEoPÕTÒ@¼)=2®¨Íî  tŽÓS€]êƒoèd±˜É@¡z‹F€AeDΔ:OÙ#|M5 ‡ø ˆDÙHûØ%É8@âÄ ˜„Ô©8 €‹ÚhLóóÔ`Pëôëõ_!ú‰ø/ýeàJóŒ÷¼|À ¼T ˜j:ð¨ @9Pé"œ?쾦¢¨O#à!E:ˆËÅzqhX}B‡ª¾qRõ¨,QW0¬s¯9+TWw-ïQ‡!}WÝœŒ6àßíOõ ÕM5SŦ°€Ã@…€Á‘.ÂùÃákʃ(æjîÊiW}ðé;Ê(, .íhŒU'T2˜Žðqc¤.¨»ü©¾‡ }bpzüc³}#@uQÝÕ@ „ÊMíD:›€¨þŸÃvFìÀל Ð…C¼hhâþê9]] ¨C{ÑÔýj§Ú fføËð·`Nq%;] }›Ð3Î þ­þ÷|)à~ÂUà\¼Î\>ª0 ºx7 ó<^|ö*Í™³_S~jSÄXŽ ËÄzNn&9uI¨E{šƒ«v)X¯…W‡—‚ÞÔ]à îCñý£À±ËYáhr…¨OM'8u÷`p #D¸G<.2(¼ÕW¶3`¾¦tRH2Åg|¤ñ"“ø=ðœ:ê† q­€Û­Í 0/ M2&‚~­k‡³ xžö-Š®±D~'_Õ]%p1àÆ‰RH¦.pŸøT.1F¬“Y@‰´ŽtÎvàkª & po¡pðÛ] ~«p:ÑTwµJsj¨YøWéñzp÷6z„Wî”3€˜¥‚*"l`Ù‚˜)_•kÅI­H­¹.ÒE8Ø«45M,uA cE!p“ø§Xì"…æœßM©\AÀ¥6)'˜³CCÂÍUGÝ}ôá@X¬c0?%Àê=5¬ª‡š ÒÔ8þâ&ç{®Å ¢ø»Höqê9¶ÿ/{„¯©h¼$ƒ ×pÏpjFrêô= H§½hj‚ ªt°F‡w†'o\n.&©fªP ²Èf1Q<Æ~s’yÊvT |ÎÜk½Oᄌ—â·€"_•ŸEºç;ð5uú8É!Êã¿}«?4Æ©›U_0›³Í§ÁzÇèaLUhÍ·RÝÌåSµE%Û¡ª^pBhälÎÿ¢¨E ˆ0P\ ¡ëAæíPðcÉ+mÁukÔ—ÑoAƒ‰Zb];e¶´?ñtÆì9|MUV?žžVœ>Oéô!§_U/OÆQH1sÁ9Ï{EÔRˆñûønÙX›+ëy4SmÀLµBV †† 089S]!ª‰çyÏEÀ«ÕGéØÎˆ=Â×TõÆ-uúÐß%Õ§ºÂCH',×3{ÌÖFp—Älò΄ÄMIuv€ÖI£ùAݤêªúÀ<-$X÷Hô †k±zð)ý© \ÎeØÇRž1;ð5å?õ ÆUÿyXõã鑽zyR  È«®j«:@ ­ù²ù68§Dõw¯EÜß@Ðæj_j·VñˆZ2 = "×ñ˜k#ˆ÷å`ýQ µHœÕ›ÔlgÄžÒÔ”U}ÑZJ˜0PY½YìÿÕ—Ô«¶ºT¥@Õq#јÚḠ¢ÞvQWƒØ+_“ PZÕ+ØB1æFõøÞŠ?”ø¸n‹êUÀöHwý|dð5U*NK9‹d’¥ÄÇ¿OiºÓڠ檮êvŽ4þfÕ9M·gœë{g'™"[ìƒBgIJùÝPº¨jCx<¤¾^û‡úWƒoGì-þK"Ýéó—øšŠÅÄã<-Æ·Š;ÅmœZ‡œzãÉ:Ñ„LPÙ\ǽ~Óœd¦‚Ø$'ɱà¼Íù–£XÃJ±ò¢Š—”€âÁBãN¨{¼þ™@ì½±=b¯t§Ï_vàk*‘$êÿ …ñYÏ©Í^¿¿ÓÚŠ:øA%©öê:O2†™• JH¥è}´—õ! o…¢.T)cŠº BItÒ–CL‰ï°o8nq\âhéNŸ¿ìÀ×”XýHa Ð…q3¿ùîÁ¬ÏÕ1¥ƒ9Üm­k§ù³9D%Ôq1©ô‚ª¡¡ÂpOp>õmô]³".*qp‡ÈöÖ³/ZkªXmá[PÏ©fV¨‹Õ5Ö`,ɬÓHÔ‡ðVã³SB­AÛ§žS+À¹Pö—Ç¡êð p4d©œËó² ú`Ò¾º—@jVÛ‡Û1ѹ¶ú9íCËΚ=Â×Ô!vó=(¯õ‰Õ¸Z)5ˆÆƒÄå´¥G…JB‹ "³ÒÄ€¾Ñ*5×€c˜èÀ›_š/@þ›¥÷–kTtNl,Ô_ëºÔv 9õ†ZHwöügð5•ͯlÕB¥©) †¨Ö*(Ãä ]è­U_K¡ì¢²‹Êo½©yÂú ib w‚Õ…µ" ‚ƒU_­èœ…îÆàÚéjâê 80~{×vÖì¾æ~e`¨<ëvÀTÍ­Õ@&fõÞš\rÔ Ðúɾ2Ü_x|n'ø_JÚï÷áØ5þIÀDçþ¨!àt¹~u¿r˜¼Bvˆtçþ|ìÀ×T*ñÄXÅ‹âYàF‹»«zY'É1SzäAps?çÚQEqc§CòÎŒ µ3!媴eµ ÍÓZèS"Ý©?/;ð5¥NÌAPLb*ænFñûªŠûÔH¯Úˆf¤€¹DVÉ‹Á¬íÞäiµi¤šä@«ØÖ6“Áu“kŽë×HwêÏË^¥©)Fà Q<¤‰FâmÖ±ÈáÇÁñ˜¾DßžéQ×E½U1º_dBô/±yqC æFß[¾ý@,ciéNýyÙ#|Míæù >UµÔ= v[EªPÄxádšè ê^qŸ˜ú×6O¤y뮿â*&y€wË~ÿl¬í?Â|M ų mÐKu*,Æ‹vú0\e ãsù†‡®1 @tw½µZÇ\RpÙ•PgW½Cõ?ˆt'.BU‹tCÎWÆFc™ñ:ó{ìh)d÷;ðÙÞõPØ1ûpV0[ýdmm”»}t3ðJSç´¸¼ÍÁ‹{CLv¬Ã¿„Ÿµlˆtoþüì9| éßé‡ô0Ô™\'­î>0¿5n/‚Ò„À àxP~sºÑ’þ^Ë›vj'Ö›Û`'x££ÇüÂO›"Ý‹ ‡øšº—;Ò#Rƒz©õ4xj—ÕYVo>ðµäG2W&l&Úí Ÿ–OʬH7þÂcOilû¢ÕvA±o» Ø·]PìÀÛ.(vàm;ð¶ ŠxÛżí‚bÞvA±o» Ø·]Pþ Ò\ïã¡^%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr1.svgö5…ôIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr2.png0000644000175000017500000002042612240014740024035 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>™IDATxÚíÝw`TUþ÷ñ÷÷Ü;w&=!¤@èE@£tQ`‘¢èª ÒT, –E˲,HAÖFQDD@PQé" e„PÒÛdæÞóü‘<»ëóüvñ‘<;a¹¯?˜„¹÷|óÉáÜsgÎ]—ë" B}.×’x×EÅ ¼ë¢âÞuQqÿ;é—õVmƒ3ÐùÌ9 ¨äçï«èà×e]ËúAAí‚Øü +:³þ™apjKFæ‰oá̱Sã3r!7>ûÔÙ\(½¥´fÉF`'Ûù1ÔUªzÌPŸ@•·“ìí×Ùú$Â{‹ ÌW6É?ìvv®}|^ßê°àá™c.&ð¾||Ã~s˜Ã@€ øGåëS“ê@2ÑXÀNÖê•P|k±U9M²Uö!8ýä©Zóáô¢ƒŽ‡CÑžü©¹¹àÍôŒ47@lë„Ô¤O Vçz‚z«Ljô ¹Æ½Æ éêb†ž¸Ó’ÿž-vuûÈKÌ­–ó&xzÏ?׃‚>Ù2Ã!l°uÊ|HVÍ7AMóÔ°f€ºÌ|Æs ”¶ô7-‹…àÕÁ+ƒ—ct±ó&ð8‚€9Ç8côµN¦ð!êÜc?ìu¶ØGÀèÀÃv0º«r·³:¸TýŠ“Ò\Žò&äµ/éaõ«ÍMÞ ¹|eË!î®øOªÏËãIóì u5CÏíáÏ¡°OÁáhßÃ[µ‚¬{MMkÁ« ;fÿôðµöfA “=„S íÌë=½Aj;ÌePr¬4Áß/gßë|àúŠÀ?mûSúœPW±êp§%ÏA—S RCµ4¦åk…œÑ'Bxb‘DüÂ)2Á1t[g8Û(”|PÍšV°^MV]B]ŪÃíáÏe“dª]ÀBÕ×|˜/ߪí@sZKWÀÀÐ €Bý'º¹[zÑ ôr}œHȯ]P¯¨.â½² ¶Ö¸­V„=Þ7âð"Os:ÔÅ =·‡?ãy“ç*°® ßiƒ“Ær™A¿ý`ða _8$PjÿÁà ¹œRÝ\÷†³ÍsçÔÿQûv†B­wëÕí g#Œø8ÔU¬:ÜÀŸƒO…_žqV'½ eslSo¢QÅ7”tÞc)«@®•«¸ì?w^r7Ò¨£ûëç!×_˜Sü&”éT©ÉSk´©qÂbÂþöC¨«Xu¸?‡˜üØ»ãÖA£QqãeÿÇÒ«ì8Õä즼) Ûê!úEà9†ÉÍÿÁKÀ"zyøÀ^­·K?Щo¬Ïžg¬yÀ+<Ã3¡®bÕáþ¼^ë-kTû!~qõ'ÁßÉé)ó¡ðdiÝ@:0‹µì:Ñ”ÿæ‰28ÎIçäeÆcñ˜Ï˜ß›}ÁØbXÆBñòªŒr8ÍYà_Ý7ð“ø‰“ 'JŠêú´ë jªyÀ3hH+é 8ärÐèÿ©WVw©qª=EýŠgÆ'×É–9°tà¢:+VÁÚÚkÖ­ÿŠ®(Š(n *\W+ŽoüçeS@.`Q‹† «4£ð˜:­†>þ'¯).nà«¶<ÌL0ÚYy¯ÕÔLµÞ½AGë\`2Óõ8 šH¢ùÇôdax–²M~„’†…×ïƒCc·5Û5Nþ¦Ñ†b8:ó‡/~\éi_¤wƒ¼+ ¦vY/kåc †¢€2˨IÈ ™Î[ éªqÈ<k¶¢¸„«C]´ªÇ üo$¨TÕ"fE>½ ÌÞâ°™PÒØ¿Æ¿ ìT{†³ dˆô’€Â˯«³ƒ|t)S¶ Þ:¾æÔLpj^u,ìÞi¾ôp`Áîo÷§@æ­Y_e·A"ä Hu≩M2  ººnöŽ_ßj–ù¨uÌëCoÐMîá¹PW­êqo<ýFj¨zU}5ޤÌOɃ3 üwå;pjHÖGšBÍ·ª·Ž{ "ÂÃöK@Ã®Š¡ƒs'w%2’ºÀôtݼàBÇÅ `!+YE*9Zú øKƒ1Nˆz$î¡øã`}îmåkêªT}nÿ;É`c³ÙŒ­ï-À^ùT2AÇèHØt#°°° ?A ƒf4^–ïd¨},ä;`¢3Æ ¿Sú®/ šÁK€y’$O‚¾FOÐ~Èlšý—ܵÛ6pÀüâû6Õ(ÂW„KøN W¨+Sµ¹=üï‘™yª;I'kì’Ñe£íG °{ñŽ’í i²RÞyXÊ­@*µi ²S:H¨ æNã0¨ÓÆ<ô°ïr‚ÿ±¢þ%¯½²lv ¨hu\ƒÑ@ý¬f@fÞÙE¹cáÌ´ì›sçCø£FÔk%VD¨«Rõ¹=üïõçè’˜û ÆÓ)©µcስó¶ã§ ä¯ùi%S ö’…æ*ðþÕêí *E,IÕÙè©0ZYñæJP'ÌB³è£öËN¼YôsqWlówðGAQ·’ú¥Åsynzþp8Ó<ÛÈÍÝ=|lÜFˆˆ‹˜±<í<~+²âäÜEWþ%7ð¿SÄWá…ß ÕŸOÜžt~[˜åì?åß~Ö†°Ý¾÷}OCõq“¢Oƒñ¼Ùߌ»¡ÓC÷élö3Ÿ1Œ£/8‡[ìg!¸¹Hwƒ¢Ã‹!c÷™ggÁ¾Æ‡6 ¹[ ,~j׬±¹Þ,ˆ—7¬V¡çFV‡º6U™;¤ùä.÷@ø'a±aoCÓûœªû2$èjq±÷ÃÉî™M³î…íöÞ±iѰyöÎöZ°;ÿÀéIwWQYÉAprÉçV6 t ~Ù»ÎÌ:{Ž&{##òÿP0³¨74¸¬¶U3’§%vL¼| Ã…ç‚w¶õ±w-°Õ,uUª>7ðçIÂäKF@ÄÇa½¬vÕ*üß ð¬/¬wÀYã$:WCYj 70ìaÎÃÎZáæ s¨Ì!F4è.vmçQð7-šXtœƒÁÖÁÍU;¢o¸õë׺¡Fâó«MŠ[æai‚:¡ê*\8Ü!Íy  Ž·K!mÀßqXOù—€K_mدÎ+‰$Œ³æ!£œizâÐéÚplç¶~N…üù¿òv¹¢ø±’µàËVß«iP79é` hЧΓ57ƒ}ƒmÙ³A¿À0†ï«×Œæ@s‰¨XØÉu-.nàÏ×ûìÂ{‹ÓA÷=MzÈ÷àÉ4ï6¿µY&`461[‚uŸeùÀSæ½ÓûGPÌc è}ÎpýØ e;߀ÚÁR½<ûÍlc8†ó©ó*+Jži.ÙR 0I"%ÔE¸p¸Cšóu-ýe<(Œ³žŽ ~Ù`ì=G§iœæz”~ œ€nê íá{½ Œ¶ž3æP™×ÅÀkôÖ½ÀIµŸ´§¡sÂ)®«ë«­z Û@ߣ8ù ïpþb/êAq¨‹páp{øó•(×0x[ 5L{Ô_ @<ñÜ 8”PÓëÙ 2M¼âã¨õ’§¨“ÆÝÆapú¡¥;¨Qª™j ²U²å  ”‰dêt`¡½ÑNÝÛÎ vmk¿>dQD¨N„ûSý×Üþ|]Å}ŒõšQËü$UÝ«&>Â2Š)~a ;@¦J„dƒJó´ñÌùÌH4¾:rO\©¾U×ó¥@Úƒ>M6y@2>4§¤6© Æ1Âé{Wø†¢P£ês¾3@Fƒ4163A‚ª½±¸‚æ4¼h±QÿÌ—d ‚ÙÚzÊ“ ê¬ÑÉÈšIoÙ¬–©0‘’©j'8Éi aù"¬fGãsµ ÔPf1Êvøçú'€“æDêËC]ŒªÏ üùºFa:¨ÝÆ(Ï« bÜd´ÝS?ÀËÀ6¶³8Îv‚,S-$Œ1žcžV Ä|ÆHÂ,}oU‰ú!qäG9ÂI )µ$<;ÍéjëÔô¿öŸ€à {Mp]¨‹Qõ¹?Oò®ì”Bðìõ>äý3¨MF7Ͻ`Ovbì “u*LŽ’ò‘tF'ocÔlc–árd&w€šg—oArÕ’¤±Ÿ  ‰Ô% Œ™×ŒW¬&Þ{ àÍ¢I%;ÀÞjw´_ÚK È«ê¨ú|o† ëÆ:ëmO8óDTsµ䨤JpH&¤uHO†±ØøŒ:j³¡ì'ÿ'e“ÁޱSìF¡®FÕçþ<©7Õ&ãopsbFb?ðÔòõ /€ìîy™- Ð7ðçIRåR¹ÂòÃæûæƒZn®õBId +x œ%ú}]8¬—²Œ©ÆÛª#D-ŒŠ‰è ž aoù®… clVƒ,W7ÝAÎJ¾øbòÉ«8˜R¨Ï@ù4=V?Í8`#ÙêjT}nàÏWcêQøˆtY©Ž£@o‘"e^L+žÞe‚ž ê ¡~€ðýà À¼=|€/ìjžtO7\c–ê’)c#PL…üc ??e ‰$‘Dù gá¡.FÕçÞ“«d’/ÝT¨oU–ù2È yCšƒþŒC| j²ª«–Aø_˜÷o`ŽóÍô-»¥õ±ç Ýh¯&#%JkÉ«¸¡äüêò=Êo>É‹˜ÛÃW2ùNÂåQ'”c|ôçYÌÓŸ°Ô8i-Éà}ܺҚ æÞEVè|ÏA³H'#Á¸ d¿Ô‘Ÿ€bòuùke‚€žË 1ß2ä¹  Wº¯—<77ð•íÙ+@~Po¨†@ª áEà'~Ò[]Ìe ˜µ>F.¨÷=͉ææ^'­êvubÉ. „ŠM°€E@;°˜Ë,×Ñ¡n|Õç¾²9òŽdi¨¾ºËƒ€¢ˆÊ\HùtãId5јrÈÓÇì’¦ƒ€Ž²Q6A +_¾°S ~òA®ä*†ƒÌ–ÙÒ¤3e\¨_õ¹¯lI[ ˜n b+v± ~Š) ȧÔcÆbu}̶æfR5Až:Ò§âÕ–åC»b…›9¼£?½“­™ÅLùè!=¸=Ô¯úÜ‹ÖÊÖ?%@ŠÉb+‚nW\VñSFyüƒ ]TµÔT#ÌØò‰ È„s`P~aÀ&ú ý!OèÁq`ˆtã %Huã«>·‡¯lÝÑ:ò?H]À¿¯ü¿{lMäsõ€DxT´¼ \­t 9M6åaÊal`uô gH´ž lâG¾r8õ«¾]ÿ#7ð•í9<¬E˜~ôG€ |“±_¯Ó´ZÉýr3à#ŽHÊ1l „RJ€"‰µVSû@5áC9ÎûVûgжި_uã«>7ð•m-iìý:«X'‡3€ç_ìÕTJ%@!YäNŧbÁmK>ù@MH#IÍ1¾•.m¥öFj€áœuÜýXÏÉ |eû#Ë‚LÑ£ð 9„ÊøW›H–P Kt ”/™çÅ d‘CPZ$ƒyÐld€ª¯^ ne ËRÀ¹Ýîm÷uã«>÷¢µ²}CŸƒþ–ãz=°?c(ïáË#ÿë{¢1z+‹u$ce  ‰f!Éóä ¨Au0N‘ÆDP¯Ú…²J(›P– ö;ÅžêÆW}n_Ù\@1ý°I¨øJ…Y1ób`€~XïÕ>Зé{õà0QÔ|r-W9äT i’‰³±qHÝ ê+©Í‹¼¾ì¥²'ÀÙáŒw&„ºñUŸøÊv  È›2FƨC]Ê·› þ|½Ï‰sF€s«}©³XÅóúm Žd©¹òÿô3´Ä=‚å[ëÈîÂi@ÃP7¾ês_Ù|¬a%«Ÿ×ÏPþÖ¾#xðFÅ£ªèáÛéQz4è½ö2ûkÐß3Ù€I ñ   —³XÄJ(ÜZüeI'ð«àqgĉ úDðµðí [êÆW}î¾²9ìÅX&1€ælE•Š?=˜”÷ð ´vF;ŸþÖÉv¢@>æ”#xvÀZÖÒô«z+ Xᆒ(ð+ëy³Ôy*±ib2„­ Ÿ–ÀÒP— *s_ùL:࣊_)Ò”ÞÀĦGè çê£úkXéÀ+ ›dE@_êI20—oôN(J(){œtãZ~€Ø¼Øä¸îà]oµ¶n‡ºùU›;¤ùÿá«òýTÅçé”Ϫ{_ÅVôµÊ/BéàüIg«“ê\ì“aª'–DR¬ó€³ñ€³‚iL½^²UãÌæ!`0p§%ÏÉ |å3+vÑó²¥ó€8¢ˆ>a-»Á¹C/Ó±àqÞsb€(§¦ | ô—Ͳ’Íi@C"è\µØ4RMš “å{Ùê&_8ÜÀW¾lòHç$@ù†ÂÔ§I ïài¦ý•}§³ ôÓÁMö3 .q:8›@ýYî“ Ÿ‹G²BNr ð‘,õA>P÷Oƒ,2V›¥@¸.ÔM¾p¸¯tú3ý€¾ŸtiÀ¥\&—WèÛt_–ÚÓ‚ÓÁél·±ç‚¼¥×r¨_Ì·ŒƒêJu(æ{€Ò”V ûŒ÷=ƒArŒ Ç’èù«­î]ÿ–øÊW>£€D Ô#…$Ðwéúy°÷ÙÑÎXÐ/Øiv)¨EœÐsÀmí´ÞÙdÜet¦êጭœCúZûZæ :˜½¬¥@[½Ãú›¹³4•MH•T@À Þ%LJØÌ€î¤³ô5 ïsVè»AËrù˜†·®÷¯zZša`uÚÙ§ tpÙ’²B0WY¥¾6`FŒ4Aö‹OÜÇ~37ð•o™^ˆIo@ôÓ\ œá$…ÀŸäéÊRÝT}åj‹¤ƒÌ0ŽÀ|ÁwÐúŒXs¥¹üË EuCŽ/¿+„íŽöÔÜñW%%×Het0†°ƒ}¡nzÕçi*Û|ÊR`2÷ê‘Àqp8Îò@–0‰‡Á¸ÚØ¢šƒó•+°¿ö¬4-ˆìŒ ‚¯Qø§acÀï ¼ü2Ëòf¾aS£rc:@â´$Ò% :¨[Õ€P7úÂáöð•m=ËôÛ ßÑKõ à‡ØX䀬•Y2ÌÆZµÊFK7ÙÁÎÖõÖH¨þHò; +!ê…¨ž÷C°]ä\Éþyv1x†×‰\ÑâÛF9@ Æ…ºÉ·‡¯lŽþ„@¡z+X#‡"àSãQ0ΨëŒnPš%cÕ{àŸæ‹ò¦Br¯šï%¥@ôÃÑK"—ÄQ b­ëÂ;ƒô6n4—ýÓñÜå—þŸ¸¯dúE§OƒNv,§ØÈxýà”¿±Cn¢9-@Ú‹)ž6~R7ÝÓ÷™5bªÇf£±z ‚Ëœ±ìƒ°­Qóbû€ç+¯ßwU¨[yár_Ùѧœ)  ûVà;ýú>ªQˆFáºÒ…ë€GÍ4ãZP½½}­Tðn³Þ·öBÑÜ’EþÞP4°ìEû{H KP{D~}CtX¨yár_ÉôWúý,0FgØ—GøZ÷,"©C.PH>`F{†xŠÀºÌ§|w¦¼ÀK±:ë˼“UPôN`4¼ù’FM‹ Ú›Õ¾ŽOu+/\nà+[;¶± xPÏá §É‚oøH#tà$'9‘;#'Fܱkb‡DÍçg£3JÇ;y²œ¾V›ð»=bJÄý`46šîæws_Ù¶I;vëåe5x…we+0JúÒXÁJÖÛØÁH~')§z/¨Õ9åÑóálÇüwŠfƒçùˆ:±ïB:µ‡ÖŒÙF²ñh¨wás§%+™ŒSÍÀæz+ t ž§èêÎN |@½øEgpêß\祔!Às§§/ËÊN.J‡·]â©Ù.ïÅ€ÔðDZYÍ*r<Ô­¼p¹¯daEöŠˆŒ«¦ëAÖy‹z‚±„þN>Ä΋ÞÕ¤¶(jÞ(§%¬åáÏE­†Z›ë<\+¯¬Ù³Î³à9c5±Ê7@8æ®yþÜÀW²ØÝÕÇÿµõoo€lŽ¥˜ gþZЦ´6”déaàìÐwêå×ÏÿŠþ|Mã¾N¼ \×lÔåTK­~6¡ÙùŸë×Ü1|%‹Û×-nÛ,ª½_§×% ÿ3cYT ØÿÝéë`oµkòž€â枯£'AâÁz]šì‚¤ö5?Mù3„w¿&lw¨[óßGt…PŸÈ½]ïÒ› àîü¸üÙP4±PÄB™ö.ýô0g¨ó.xãÂÖ„ÿ‘=;æˆù\äs ËHêVü÷qﺨ¸C×EÅ ¼ë¢âÞuQqﺨ¸w]TÜÀ».*nà]7𮋊x×EÅ ¼ë¢ò¿ìßÏŠßSÛn%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr2.svg±•ÿ$IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr3.png0000644000175000017500000002524712240014740024044 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>)*IDATxÚíÝg˜ÅÞ÷ñou˜°6vÉ aÉ *IE@A ˆ€QEDÁ€Ì¢¢ "Š’ƒ’Er–´°9ÎÎìĮ狞ùïƒ÷ñZ¸p¹ðw÷ßèïyrÊ΃ÛŽFØ J–{GáÇ7Æš.šƒw‰®PôIž,^ …©¹c²ÛƒÉ¯S‡€?¯ÆªZ£!¶]üÕñ`™kYoÍ:Бáîeåáÿ((ÃèO?z´È,9Aö“] ³þ™þ§ûÀÉ¡G“ _ó‚¸ÌHÚkÛ«? Iýck;—‹ÙÏN0ÊEFäûKòÜà¨8[^°¢“ªè5šCíkLl\jN¬•Z»hãõ%úqà^îcB¸‹RyEFø?JAAœ8p@a§"_Q,œ©zºÎ©nPÔ-ob.à¿«¬iÑ‹ ßüгRZ87X>‡˜ 6»%ôéZ¹z;p’ZƒX«¼­M‡„΀ #P3° ç¹o*¸Î&ûâà P‚ŠOÔ†[ê U߃(¢ˆ wM*±Hà'ÿÁ@ÃÀ(pu)ùªd xgy_(ÿä†Ð#ÁÀÈ ½Ü Å9ïåïƒÜÏeœ)×¼oî;õ {!öÛ˜hûU0Ì™c3ƒþ¢ÞWÝ ÆóÆkr? Oà\h‰ô‚ù€)O@õÃU6%޽IÞ¡Âäu*=‘÷ œêóËÆÃKÀ²Èòºu XÖZVXtPîTú(U.tåªpW¯òˆþ‚ö´ õ »áyÀxËxü®÷·‚¢ìž…7Á/žÃzò ³[œ½ BÃ|Qžm`ÿÞ§ .dûÙ´ÒâãFƒzj§'/½@ûXmÊ2qˆÏ@é§|¥Œ9ØøJæ§ÉAý»öÄbÇ Æ)é=€ã4”ž cçjÕL®s±9çùÓ{ oBü¸„…`ëáØäÌçVg±ó4"ܵ­D"sø žž£žáDqÆëÇG@^ë¬GÎîC÷W¥ÕA;Èw¡–`o ùå _'®•AÞg4Îî6¾­«fŠÓîGèfÖÉ`>i*ÒÛ€xSyVLé’˜\#'ÈÙ wr˜ ÀŠÓÿаAB€ƒ(, |§ )à»É?%Ø ºvï†s{ʆq¬jÔ½ZOkߪÃí TQnUf‡»º•Çå;ÂOb³!çžì@V]Èë|®oæL(x=ûÓÓû lEÁÏy½Á8îå¹-U´åß)¹vBcˆnçxÙ¶ÄtÑT¤½¸E|²5Ë: ódsLÀbù¬¼ ³1Sœ˜¸8À 2þ— _ £¡^üÀhdÌ•‡À|Ð4][ Éc“œ£ {fëÌ“PÔ:;óŒ šæÙsû@Lt\B|Ðéùúñp=ü.»^>#§È±à¹ßsÀ}7lë´ñŽuùP0%søñ¥P'1yZôͧ:î³½ f§é9ýK š£òKPâiÑ„IìK±8øíäU"ù/TSÌÅm`t6^2öAáÚ’a®‡¡øL ¹ê cžL› õ]Î6)„¸ñÝ⯠wõÃï²»ÒZ² XÝ{î\²}1hK|‹Jî‚+–&Š^ }œ‹£š@ÔsŽÞ tC[®lý:uŒº ”'”î ÄR…Î]ð_ ú¯^“ŸËÕ rÄwâUˆyÀ1ÁÖÌ“•·e,äíÎz s ”//¿És{¸«^y\vSšòhÏÇî¥pvóÉCÇÞƒ®è¶z¤ŽIH‰±h©ìRªÛ鎌$c¡üø­ø€¯¾pöC&ƒ3@ }é æ¦¦.ú[ îSžó¼ Þµž¨² ™ƒöÀKá®zåñ×ü…‘·b¹B -½ Ƶ¾-(Ûå#Ô»ÔÊ>2fËÀè蜿°T'|æönÊñl#o‘SATe ‡@É/‹3 vâeÐ#Ü ®þúSš¿ýUŽ”Oq Ü,Ÿ %ñŒú1\Œ,˜0!Bánüÿ\NWqTéâ=¥z5p¥Ø!‡»q•Ç_?ð-D‹áô§0•~t’БÀqNsUÜ*PÙ°/üÏuád¹: ÅÀ=J±Ä÷ªU¿D7‘¨<îÆVýÀëS“ â è!Ö‰:ÊAàgqß*å”ü¾ï½5V¬X@´åJZ‚¸QŒ7¸QÜ!ƒhNKš±Äàäÿ~Ò{aJã¡/Èβ‹ì ´éÊPêÏê›Ad(Ÿ(Éáþ%TýÀ_l´Ø AÔQnTOÓ…®ô<äˬÿÀñ]”R¢•hKsÝ”›”& +í„ ”åzÅ¢šÒDD-nƒøm õ;ƒ/‰#ØÃaN@è½É¸èJ+q˜š[ž°ne´zPíî¢W—_àûŠ3Êý lj©¶Ä"ñ7¥Д$àüÈ©Æïq/´ˆBŠAݤWgApeð¤ÑŽÝ~¬ýÉ1°¥Ö†ë¶m€-ùk«þ(àTÆÉÜÌgÀ=ÓsGùhÃÅPúƒ¨BJEKþµª?·‰ìÀëÁÆÁ`Ü#‡pÌŸ›§YrA}G9©ª¿ãx—‰¿þ*ÍEÄ{b¶Ò§þ¾e,¦ŒU–‚DþMú| (ˆ'ðÿãIï?1Ÿ¿R*n·3ù¤ÀFÈŸ“³:/ ~~xSîöUplÄOû·Kƒß†n‡F_w¿µCh6¢mæloD½Ÿ:è/Ër yÿâ{»‹v¢ÈqÆz£<x[ùîÀ£¾ ]b:3@Ï7Í4ÝÀÓ¬wõÃï²á•/T¶ô"kCÛ› ‡²@IƒÀ Ác¡«€YÊw jQÔKO¤’F ˆaâAå:È|9³Ö3°½ÿú»·~9¡õ·xAß³ÿð‘`I99÷Œ§zìÉ?ô<ä¥fUË­âU±V,ÐJ4ùy‰‰ ¹Z*´„œ¶‡Kª€û€¿Fh%T[ÍS}'ØÌ¶m„»ê•Çex[{G+ǨuëõŒï§²¯6²ºåRTF™1N~¬¯ˆ©¿ã€±¤â´h)¢¡hzÎþü‡àäK{Ölþi™÷e­ÓàòXo}P¸ß*_ .sŽÈ/„òŽ.{Ð…Q bIåwœdŠ«©Eð(?àœ0úBh¯4m‡˜±GâÖƒ~ƒÞDïîªW—_àOÚØ^Úo×u_1|MÄ»zœÛYp¤ÔF¹CÖq@¼Îd~[u¹Ø…eKUX1ÝÄËLƒò·K¬®åPòlæCYïoù¯ V­ËùÉÞ2(¯€`;÷žeêê¿ÅßH-i ˜p`ÿ¸pfá ŸÃ€ 7ƒüQ-0}âVÓûÖ…`jlg¶‚è!LÂîªW—]àYÅ“ ýmÓ.SˆïôîÆjõ[ý;à9Tz.¹—Õü¶Î}± ËEÒ… xA~ŪëðCðÁòÞ»@ž2¾¹€ñç?f¬7V.ð­u/ð¬…Pk_Š+P…4Ì8°ý‹öW,wÊxMÎÙ‘IÌåg}‘)”®ú¦×€dч;Ã]ìÊçò |Ìùuå´¢*µ!zPüÌÄ¡•ý||”.óŒˆÃIÈuì& ³œ'U0Ž…>µã— ¼øVÆS~=˜/½ÒFv`_ S‚¯„ÖË/X ¸*žÕ*V‹.þÞ7ÄãâA, Lî†RKÙGîs`a{Éñ8ÄLý > „OÔR"uÿ“Ën•æ±]œAH¹­J íkc½ÉeS wÊÙÕG»æ©1%ú7zU°÷ £¢%¸ ‚|Š¥ èOoñ²x¨Ã Ú> °²X~ Ô2n’QÀÓòc3È¥ødK`¥¼Éo·8”$øwí.ßñ:x×ú†CnRñF—ì9iRGAÒœªÌ%^|.ÖO‡»Ò•Ëå7ÂWuDKÑ’ÉŸ¥¼±MßLiÙ®’ÇÊçƒ;ÙÛ+ð&E,þóçeù”€,zÐÔOM<ê}’ö5ˆ‡M]µ…À ¢“H†_—«“Cˆyr–|äÛr(Ã@È¿1ØKy@Ô?^!þµÝ°D<åÍ|?^„ìÙÅ÷y²À¾!æDÜHî‘ü\ò ^W>U–…»Ê•ÏexZК6 fkŠ*AŸkžmñ1D±˜¶€t‰¥J ð íqð÷¤ÎŸÄ*FÞ¢0÷ЀXÐf™f›rÁ´Í6Ï6”;Ô­ÊsÀÖŠïÍ% +ðŠhA 4g/7V¼8…çoð18±ƒRCY$€4‹ÉÊðžÅŠïA9¥]i:êê^u/0‚‘Üî"W>—í”æbb©zLûÌ^[Ç« Vª_j ÀXcÄç€+q‘ Ô¡Õ7ÊnÊ¥r/ƒf¶¬1wË÷1½Ï‚¢Ÿ½N»Øî?ýj·ˆ[€(q£Ò ÄÊ•âI­…WŒ®ue2à;ÿJü >óêç—+Kõ2Ãý>..±ºÒ °×"«‚ñ&师ÜHð/D_A¨?cª ¶GœÍbêC°¹ìQÖ¼“|k}mÀ¼Ñ¼Çü ˆŸù’ ×±Ý@@zðk˜ÄK ‰hµ5î—Øá`j-²=_pµø–o@Ñò´T­Õ<5"JÄ1dºlÀý@Éù{r)§Ê8z0tN´Ê¬›ýÏ8·,ÿø§›Î8,À:GVe.íòÒ\ÄtÈÜÏô(Ø;Dw‰¹Í‹6—Õ€³ór[Z5 DMQ,vp~5Ÿ)ÅrŠì(€­ş⿮þXjȉ–ÛMµ Ðûü÷ˆIb›XJºV¬Nq“ò ’ b!3Ä(PŠ”wĽ .T»+Û øcW^Y#øéý9G³¡´—«¶ûiˆõF?½œ›£ÛÅ´ý˜>ß”î*V~‘ÀWP_U—kkÁ\j^mI‡âv®Ýë!k_Þ‡Á•_vÔS BGŒDP²•w•û@ŒTÒ…Äj1–[!¾OÂs±B/®ø¹Ö/Àñ˜,g-ðu'ÅçÀKìËAÝ ]§-m£=¡*Æ3Æ~(hRœ^Z™fÎçÎäî-èžñÞ½¾C`{"ê-KWHêpSÜ)ˆ­¿3!LÍ+,}Â]ÅÊ/2¥¹ÀŽx@'—@ 9بž¹ž4O!d­ÌoW0R—*®„Éu£e¯Å ²Pn6ø© öXÛ;QYö@5kêU°=`ŽþÏNž;ÛÌ5äBc;ˆQjSeÈhÀ³P¶Ó=dz2n9³9k<äÖ/è[x-DÝmõXVBÓIõJk[@Uæ‹ tUpªZŒ­s¢ãA{Lo¨oýƒ5¸ D_ÁiF3lã0T‘‰_ÆMÀ{æxCÏÏVoŽW9~n#È>òGù6ÂØa<ÁgBO‚8¢<¨nƒÒ„‚£E󠸪ÑYÞ r޾SëÆõ¾–þžPžXXGûœît¶)˜î;¶ÿäv°µ²æ[F£«ªàPì/Ø:CôNÇ{¶ƒà½Þ7Á— âÑP©˜ êQõ{õ0ˆ¦¢½Ò«¢3¿„»š•W$ðŒr£À8Áá[yàÜnŸbkÚ“z«Ð7Pþ©D`?”ò¾í…Ààòà; ׋. Ìý”t§D‰ÐA½O«n˻Ϋm3!¸Ê:Ú\Ä·þÓþ­ úµšÚ,Pjª‹”kÁ”ª_£ßIOÄi1ÏBœ­9k‚Y5w2•Bhs¨Mh#"W²xƒL:c¤OYÌ•sÛ˜îZVf‘ÀW0zqÆÎ d&€i±´sÀþ¢mGÔHz(!Í2˜Mº(ƳX2™ÇY»9F7ЮÕ>VÇBá=ù‡ŠfÀ¹Þ –@î´Ãå;@¹Ãu½ì8œö5PoVí9ÕAó® ãë6žf “AÌÅO0Úï‡æ½0ñ7ÝÅlÑÄÛâZºBh¯±%´ ä7rˆ\WÑ™¾á®få |ãec„1üû} |Wƒ­£˜ƒô\m£¶Ôhµªò ˆyL±€`Y@:vêC[PßTOj·ƒ>C›¯îíiSg½)(;ÕÛ”™ ~R^RÚ‚ÞѼÐ4ô7LO˜€v£:Zm 2Æð£A&Ê8ÙrÅ@"sp‚2Mí¨ìqH ”£!Ô'8?¨€±Ô°‘ûÞ/)²JS!4"Ô$Ô|·z¿ò-EŠ21ôG´Íêõ GÊ)̹VÉ06Èb Æ×2Sê`,”û¥ä,¹YfÜ sp«ä òS —Y|+ú‰ >m~Ø”¢·ÚZuƒ|I~/3@` ƒÜÅ~ŽÅ”ájœ¤O{M= ,%]ôàÔ àÆ7ÆÊдpW±ò‹¾‚qÄø8ô.Þö—øvR,N3´ÚD5èDsÒAž%—‚q 3ñă<É2ù%È+#äõÆxã{ÅXÑ ´x³Û4 Ô‡´6Ú1 Ód¼x;œ,ÂEJ<  Æ)÷©·‚rLG!x:P;ÐŒãgãt¸«XùEÁxÙZ†ÀxÔ8a\Ô‘GyÄ6ˆõüöjÀ?Þ½øOlÄì“«X2W“C€*òM¹ÄåNqhNs¡y(“ôÚQ Sœ‚÷ÎüæÂã'pp…€  {€_hË* ˜9î"V~‘À_ ±…¯ÆÊæ@5N±Hµ©ÏoO8]j +‰Ä‡ù„¯AêÆ1£ÈkŒžÆ3 ö‰a¢1h3­Õwƒ’ Å«3€bN“ñþ}àEMÒHv²Ÿ£à?Ø ¡~ÆRù:X:[ûFA;©uÒw+¿ÈIë­HÄ b-Iî%x ?þÿÃqâ©O-à+9TÞÆìà¢ÐÓ`Ô •9@me©â­§%ÑÜÔÚwZ2Oyšó¿‘êw¼®¢h ¼%M²” óô,_¾,c™~ÄìLÞŸ–!–U–ÛÃ]ÄÊ/ø ‚´Àø˜C`-‘@ føuã½KíVÓXô¡+ÈZ²³<ÁEÞ~¾q°ùûÎ,W •=`9eÛõ!è×™×›º¿ÈŸiÔ ŽtWk%0˜´é’ƒäkP4Ðõª;ü>}½ó¨·¤Êw©°%Ú:Ú/Li6†»˜•WdJsÁ Ì+A¬Q*¥ÀC2“‘ ëÉAò  Îßÿ¯ªV—ž\r¼<,Ë!8ÜwÆÿøn Ü(‚PšjW–€£aLçP°ž‰:cýäzV²(ªØç‚Ô øŠÝœƒò·ü¡)ÈË•À™ý^t Ðǘêëæp±ò‹¾‚vTO×€õ³¨åö$–£ø |ëýGK7XÌJM+¦,ÿ›z\#ºÓeŽ Aè_}ßRð× <<!·^ª…èªq›¢Ÿ„¨†Q[ÓoùŠÕ@Ì£ßÎ’Qñ‚4š@¨CÔE w¨3ôÆ`gZgòèH«Â]ÅÊ/ø QÓlÑö 6«Ú Õ³ÀÛ%˜a\ ÿPºd™¬.;SÅbèÿ~q…¸†® o—Ûå6ö}æïþÁÆÇ¡ ×[2Ì%àp:‡:žës–}æ]ÀF~`PDñ?lêêá G•º¢(7ê§Lí@ÌÕ›Û͘/V‡»z‘9|ë\Ë«–Ç yM•}U\wCÆ”vðeºšºÓ!É_7 ĽÔaÈ+>xan_ñ–=Ã%ûËY`¼jbÌ#Åo tà4²„äfë"óI°ç9²¹Á²Ñ¼Îô!3ä%œ$D3ÚÓ¤ßpÁÿr ìjÓ8kgÐÆÙF8ìÀF1DÔ wõþ<"#|íQífí pEÏŽ^A7kÕŽàqø_ š@NâS¹ èBýØLA €H&žuŒùr;„f†Þ ¥‚llú äj1H¤ªy€yX¯µÜeùô>Z-õ0È£œä4੸ðôxY< þÁ‚Ý x”ë·,‹lqŽý÷câÑä5 ü¨•ß³5_ ü?×0–ÇÛ”Þê×@W¥†6Ш)Ú¥dÿÝ.lÔT•R ´A60Ò!X¬L^1ƅƃ8%BBÑF;ª­e§ºWéÊk¢¾Ø ”U\pªØ6[¹RŠõP^îþ–p¦OÞKE»À>&69á¨9²æÂZ% úÔªjýpWíÏ#ø‹¥ÒS q•ö~ˆÖÚÓZq´æ*ÀKVÅûUÏ»ð¿ª"…D0–õäí8Ì M<Á»C!P¢Ä¬%A3Ô§A¢—ˆzS‡οyD¯‹žãhŽBÙÆ$Æ‚§o`“LÓãÖÛ¢Lõ±í­¨I j‹ôÈ+m~¿Èþbq´æjPnV³´_@¼­fknàešÑðò#‹¨œŸÒ ™FCcªaÐÁz¡ê¡ÆÛ ¤ «˜ju-C›"^|/J€ÆüÈù½¯¥ *þǸ;Ù€Mi«¸Úýæa V¨ïëÍ@XÏ¡âÍ‚¿Sd„¿X¬¨Eg%S¢X9¨vœ¢*-?eäþÝÏ_¸åÀŠÈîôs@®”³e B/9”ñJo¥Äͪ> »År CÔŠ _Ø÷¦ì$Ûñ¢âågÓhËzPºªùZd½ýß üÅ¢©I+`›²JÝâ¸øAÝô 8Ð ð[0/ü™M,%[̃@½M¦†³’¡n>Ñvh›@i­¹µÓÀD±…M@Ž<ÌaWP“ª@&ÙäC¹ðš|à2XÕ8Îâ¸Ì„ ˜D Šlýo‹Li.–NWÑÔ»ÕqÚhPö«‡´q`|$×H Èur>±ÅÁ¯/ã˜<ÉYPó¯z詺W·¯j[ÔL`Š~¯–jom©"M´€ö° ÓøIŽç (:ìò¹]P6ÅØ£y ¥ æÖj‹Á¡:·9‡þûÝ»ÜEFø‹ˆÁLd*è6óó1PVëãô4N¶ æ‚ÑCN–ŸƒhE#êòÛk.Opšs ~§öAÐWêëµ ßRmêqíµ)Z2(SLô•ÀÂ! Af±]îúÑN¤?rPØÏÕØ„R“wzðI¨útµMÕo€èOý¢#O6ýÛ"¿Øóâ]ñ.Xâ¬5­© ÙõWLñàõù@(º)ô 0Xô]øõf2é¢ /«(€rT)W¨-Ú‰Ù XµvÚs m7%ê³AlmEp„lbÑ e„P!xØø‚Ç!”(v¨íÁ´ÌÜŲÄñ‘ø,ÜEúóŠþ"b¾X >ë\k ê~ÐÇ›F˜:€÷GŸê÷@è¬Ñ˘ÜB?z¯//VQÐ]ìç`¯È®@K¦Ë± |¡%jó@“f‡¹ˆbœÒØËrVÕp 3˜Â½ÀWª]ÿÄ7ÚϦ</ŠÑ(ÜÕùó‹þbÏ2›7Á|ÚrIJ ´æÚ*ÓIð.ñûüŸC¨Ch‘qĺӉ_Wi„'‡R£8ô•‘Ir¨)úl­%h#­Ûͳ@œT~Oçä7l“OË9 Óå£ò;P¢õ¯LãA ˜[E]Ü&¶ ûéXDÿOÄd1MLósms P»ë÷é€Ïø)XÆh£ÜôhÊoË’‰Äâcü\æB¨È¨a|r²ñ1 ´|Ó S6˜rì-m¯€hªLRjýÏ¿3ø~ÈnŒ„Ò\÷QÏPІ˜‹­pžŠmw”MJ3uL¸«óçY¥¹Øá06o3ƒö²6Rÿ|¯„CènC•I€J{v**9@cQšz5´,ôxö½å¯ ƒþÏÁ2Ñvk”b‚ ›bG€:J3´ SFNû£ ÇSئô0-O3ê{HR’” ú ݤM,,“ϼœ 9{‹¦º&%ËþµóqH+I³UÝÚ}Ú$mn¸«óçá/6™ÉLó>ó+æ5 íÖ»jÁ7'pW0BFòà ¿¾‰›[¹•Á÷¼ïc_(]åZ]v|;d*CÀÞ'Æ=’$¿›0´÷ôÓÚO ï‘1Ò ¤Šx ]|¡¾ê#Ú!S´;´j.Ä‚‹v3ˆø7D±¸@]¯<¤4%¤¶Õš@ ](ÑøŒFò€¬´¦q ,X°€¸U<ÄX(·zz-EÉ¥‰@õ„’ö›Éöà¼ÛÑÄþ ¨ûÕ‡”Ù §Ë¨ ŠØâ5m¹ˆt5KÛèü­â +È-XdJs±úÔ§>pÇùv¡ˆO”`Ì”IÌxƒõ@6LüúÞTîå11ÊË<Ë(q.¹T¯y¾é°Î³÷zL¯ëïiÛAÄrX,zÒU6rÅF¥(N½ž¹(&u±¶3ÜÅøë‰þbV]ôŠÛ~ûˆçy˜ bE P—[ +¶ÀÓ±`q¸‹áàO-oãíå%¥ýËÊÀtÒR`îæÛ,?Yò¾t¤ àà FŽgxAÎdQ o¹Åú(ÚFÓøpã¯'øKmÄ" Ä»JHÝ´Ÿ‰|ÀG™œŸh˜€öÜ*@ðŒ/Ç¿ü›<½Êïýe³×Ò´Y—¹5ै@Ń\·¸‡–\ï| ÄMOz4Ù ŽÎÑβp÷þ¯'øK)ê+_‚ÈSÒ’€ëE‘Îù‡«&q~Js ÷0¼Þuàs•å»k‚¾"j¹å)ÐÏE͵LˆˆÇ EK§•m†¢wŒ÷kHœ:¬j)Dßó}Lò¿ßìˆÿY$ð— ÖŠÇ Êní=ýˆ7EePÌq¹œ.†hI ð&¸»¿„²wõógœýX,Î*öj@ôù© !29î8ߌÀ(¯h,kB\aü ûÁz§å˜eïhxÄÿ(²Js)ï(ÅK ~T[«‰@K!Å ®åa1B«Cw ˜Ò¸ÒtÈo—Ê› ~³ë;÷H U=R% jò» OoÒ½@ˆ_8ÆBú*9`\§lÖÞÓý&Åü(›”8åºpwþ¯'øKWó´X ¢®(U Æ2L<Â.Ê…Bw…†€Ìg3[kÙd}ž“Êux)j«»RŸ‡„c‰Ññ?ûÙ&·A$”ÃZýPîwYÞYÊã\î^ÿuE¦4— ×3i ï›ä&»xU¾ ¬ôÕ 8<ðj°dN=>äôb(º£àžâÝà¨ûQôBH¸5¾(ö'°í²N¶Þ¬_³¤Gê8A¼©=§'ƒZ×T`iâ)á7…»×]‘þRJä£òüFIÓå»@m6‘¬­D!éFc×Ê^˜·|ÎòxïÐ !!Z:›{‚ú‰ÚGÙþWýNc2¸Æ–íõ\ ÚQóŠ(7$ Šÿ¦J¨Ýµï´*áîô_Wd„¿”|ž€=ÆNc(€\$FÀ€Ðæ`YpxöçËÂVÀ¡AÆpôJÚ ê`=Cë ”×Ë[ xm°sðäŒ*êXÒ ´þÖ÷ì“ íoUU_ÚõÚkú®pwú¯+øKY'“€%0^âÙÏXö µ ͆òÛ=üw€{GþÒÂhÐF©)ISµò*#@Ûaîn o“·B`oÈkl…ü@ÉjÏ6Ж›gF•@ryJ“ä"Ðk_h‘»"ÿ¿‰þRÖËÞ´î2zÑ ~ân®„Ò¹¥çÊæÀÉ §Dæ;P:¼´uY)Ä»—Å=õîN·Õ»¢nˆjiu‚ôÉ—å<àYÆ‹h$RªÎ>Ö–ê§AÍT Ô3À;¼C$ðÿßD r-7Ën ïcŒÖ ¶‹9 ƒ’ žÒãpúèɳ™oAà8õÉ…„-)‹“ÖBµ;«}Pe˜›w™¢!Ø98<´B}åÎ^#ê Ç· õ6åZV„»——ÈIë¥ü Ÿ‘=A> §*p–Ô€òÍ®B·ŠçäÎ,x,é1 ¯‚c~bvÜ4Ð×jG´µ Z «8žþÞ|ŸÊ{øžžçõq$΀¨VöÇœvÿîÎþõEFøKñð‰dË&r*ˆAâftð÷.S¾<Š·•Æ‚%1z²Ó Q+c{FOÑW4ˆ]LeäÉâV¥åÕ©äN÷0¨a¯¼âFHv¥¼b w'/‘À_ŠŸfâepXœ' ¼Uy‚7ŠºÞs[!ik5sêHú0íí”Ï€RIùl)»AYÈ·0ø*”¾êßÎ:HXžÔ0åk°¿hÿȾ2ܼ|D)i"_ü ¨¡ÔÐÏc¢J«zUßïôù}} æ¢úËk—AͬZªõÙEÞ#Ÿß³þ‡ïƒÒLÿÉš öÖ1þ„ ÔV…úu¸;wù‰þÄ9嘺”šÚrý5ð¿zÝx |ï†Æ –¦úxpìqô±'ƒ-;êkoL î½G×y7; ÄHë~g;hÔ¥™µå{`­uĹ¢ú_ ü%ˆmb´x d©xK¹Š)N*MYÂ&¹ªm©:=u4ØOÙDýr±qDv„òÚ¾ä€u=·€ÞÏñTl!¤5®¶¦ÚfÐêsõoÂÝ»ËOd•æRn‹t57L¡eçÍO-:–M¦±¦%вN³Ù mà|À¹Ã^®O݃Zœí´±uH›P-£† F§}¸;uùŠLi.A\­˜ÔÏ@ob.¶´ÇÇ Ç,HÚ—øfÜs"öLôlÈœ–×´È …ƒ}9,‚„:Õ7×}ªT©šVݶÃvÝ zØEFøK0·ì³î€Ø.‰ÛS€íöÀà’õÀ`õAYCïÿUpÜ–s¤d/$ìªÑ´Þhëî0³Ó•`»Ý.*–ûñá/!n@üÉøÐ¨_³-Ï‚?Þr[Ì<8”ž»¼üv8[ú‘1¾Ú&¿ó3Ð|›Ûûf{ ÇpPJD¾Èþ£­ˆøO²B¸RÙÉ;äH9N”e|x< ’òëç= ¦DÓ•¦æP+±Nù­Áy·óCgd?™J+øß«”J€ùÌe6°™u¬âI$Ë}LZÓŽü¶_D¥ |Äe%2‡¸¬DqYùIÞ(¹ ™ô_%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr3.svgŒõÖ”IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr4.png0000644000175000017500000002447712240014740024051 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>'ÂIDATxÚíÝ{œNåþÿñ×g­uçž{ŽÌŒÁ8#D*‘BHE¤¤£]‘$E¡¢óaK¢TJTt ˆH!眇1ç™û|¯uýþ˜±Ûßßwï¾í½™Û®ûùÏíá1³æº>Þ®YëZ׺–¨JÄÅý h±n@\\UŠþ gM°^´^òGÊï(¿ʯ(ïQÞB_„ö„¡X·ð¿K<ðgŠì`pwrІúdBY‹²gK°mÙ÷æ'aë-;7O„#‹rWˆ¶˜‘À@zÒ˜ÃL^ĺSg#Ö ˆ«|,x4˜û&î;¾W Òñ‡E ²ÙwAIS0~ŒŽö×ý[ÍÐÞ€£O?x¬ûþÀ®=uÀey“’‹ cT–·æEuc Wa±îÕ™'øSíHÅGô’hÇhO(;RzWi2DzDŠ"‹a²ê Ös­y¨­ãÖ…Pn”æw‚#ìÝ»kä·=ºïðd°¯Sw‡ÃP7'crê]`L—cZ(»ª´kÉxÈÿºúÙZ‘¶&ÖŪzŸ¥ùàyÀä/YYYWæ?–_Ûúoù`Ó(½¸è¥¢‰@±ºÊ| "ç/Ø 20´0Ð\uôuü9ªWOšI¹rÞöQ¶ zw0~Ôæk¥ ¯ÊÕtk¦JR·€Ùßü«º ‘ð½áwàhyQGß¹phuá¾æ`_–Ð9iä,®÷rƒhT»éÊæ7€ç¯‰ÎÄî`,36{A.•~rPúÔuQOŸxàÿSµiÊYPº½¬¤l'ìÍû¥æÎ–pøê=[w< ©{Ãä:p¶1ìò0¨j¾ú¬o¢}#kÀZoNŽÛZý*yÒnô–yÆ«§c‘} èóõéz°>QIª°‰\ò@æðý†”±"þè„èÇPÚÜ×&Њ&–ßÔ­©‘ ÖãÚL{5ÏÓ Ÿ÷Ø7¹ÆCÍÉu_¯ßžÝh[낞^ñÀÿ›¬Ö «üËü5|3`ßä_îÙÙö¾³ûÖë \Züô±7 eyýìš UóÖ÷üê\u[@šJ'®êÒžž Þæ'J@mU ¸¡¦ª·@ýÄö:úÿ˜b0±°7 ×Ée\’ÂVyx@Z˜¢ÍIp¢yѾ’ip(œç.úü­¬µ2H9‘õlN>Ô×äX‹•}a­Wj}öOìùަ±®ò©üï"Dø…}ß}¾nå©pØ{ çþ!ðóýëæ};¼.­gäMhöjá5º‚}®­—q;ˆŸ¯xT>%„AÊc  P( Zd……~ï¿ÌÉã9°cÊ(ÇÌãCƒÕKÍQÁìi63—BxITÌ·a÷#7Øáènÿª ºLéžÜëIÈÊ«Ñ-{4È2RîüÿÚû_,>-ù{­e?ï“@CÈÝ}°óؼaoõl¨ö©s¿Öê=•ö 8/vt·y@>—¾ÒÔ>ŽáÂD±€ÌÊÏhåß›€õ/ý¤“ÿa .œ8AæAî=_»KKGMÛ«¶§Ás—óqÇg6Ó3Ò~ $5F›A8:òàËû¯†rÂu¢5PF¥±.þ©üïdM±†Z×ÃQudç‘¿ÀñÂCöw­mÀU\5:¤uJ4 mKò»ÞÇÀêf}¢ jª«ÔÀ­Jª}r$Žbb‚Úσª­ºª[ÀúHYê|`‚¬;¤ñ&^µv¥¿ê5!oÿ‹_w|8ñÀÿYE"_Džƒmë~>¾i”/(øîè»ÐzM£Âœ.qp¾ÑËÍjÖl R9bŸ<ň5 (ŇTcÕCÝî®·Û!eS¢=áG(Ìï¥ï•d^„ÿX7°âÿÔeʯ–B°ÏS6Ô½á ÁÂÿ^9´¦-HMÓ²@æH_*‡KÕ`PŸò«wÅÅâ ½r–(ŠGØ… È­¼pþCÍàÅÿ{]"/ÉO /²';ïÃëèÖHó«ÐZµS]AjRƒj±nìï`UN¶ D  Ãä> ­4Ö^Ê© ¨?ÆtäIñÀÿNúSúv= ²÷Õ:T§-¸ÏIº?í|8²¡ mñ&Ö?ž ’!ûdÙþó$ƒ4Ò@ºH{Îy@†Ë¶´¤ ›…ù×\`©AÕÁªiµWÁ¬kiÖpÐÛ/qî=Ãv‘c ¿ôXWÿÔ‰þwÒûè“ô¡þ‰†¯6²À;#ý挎°ÏyôƒÀ7?è ?2R<²é_8ðÉyw7n\ iD=P»S*MõçF°jX[‚êÁL¹˜´lØ0øõFÕÿÙ‘Ê;¶·ÉõÒ BO‡…€oVà™ÐðtLÎKžoã¤ù€'®XWÿÔ‰þw’€„$ ÎÛœÙÎb0Ú9¿tO…À‡VH{¬þª ç€Ì–¶øáo§ÿW+×­Ë…rm}’+ë…r ˆÖ4'›S!øTøžÈ5`¦X‡¬sAúi=´z Ùd“IÅ §àïèˆ vÅ÷¼ «JZ—߇ÉO*.‚šÏÖ©Wß 5Ÿ«=-gL )±®þ©s&Ï#œYÚЊ³AÚH+’K]”þd=›­_Åå~oñ`L–y¥!ù[ïOžm OËý µH}ÅÚÿ}XqŠ’ÃIŒ\Y › j/Üö=ppä¯Î]uü:°®‰6ˆŽ‡ÔQÙC3¯†ì­õž­}²ÞÈH¯v/èQ#¬w…r«–¿Ñ;:0Mnæ\<vG¾ƒÒÅ’h&$Kj­´àÝ’ø†·.°'wǺø§N|„ÿ7¥µ­ödõÐàþ¦ûZ,†ü¡¾£á8:6?»8(ÂGÍ@¹‚_{¼Zù@®-ÖÆ¿‹ïÙÀ‡°-°É½­+¬Zóñ ËÂW|? V}õ¶Z¸¾[¾´Ñ×;`çòmþ2¢îè—ÑN ]§”N¿Ù䊟hU.m6³ ¬²EŸ V™žç¨ FwÛãŽ. +åJüzÃêâÔ•ªåœå¸È!Ú<­mú!Ï“Ž,ð׈P¯™Ô¡!ÐŽLüz®®W¨2Hò©¶ZÆ@YÇ’kJü¼ûÛ‹¿ï å×o¾mÇ#YTxA±@zâÎ¥ùüü@Ááó!ø¡åG6ƒÕÈÌ1G3Ä'»«Á80€£¦”Cíã*£zÔxôöΑ®m ¦–¥}Î.è'ý»T5äyJî×c®j®; ëæœkêvÛÏÞäÉ· ðš’Ÿ!Ò)Ò#º ¤@¾”9ü$­b¤W›È…š¾Êæß’¬ïKV•~ ®æVk87››Íz`¶öÝîBGË×û²@õV?©" Fÿßhï yLî˧®QOAá%Å·—vk›†md¾”ýNNsp¬qNt5ŠuuOŸxàÿCúxc³ÔßÙ°]£—Á3*¥$½6zâDBáz¾®´VrB¾¨\Õxòb¶>5ÉI—¶Òôb.”—@~‘¥²N.SP{xŸW€‘ê/Œ¨T&yœ¤b]ü?#?ò&O€u­™gu†£w,.þL¯v¹}ÔqÖË­?\s]QW¿XWõô‰þ?¤/Ô?ÕWAúé¯WÛŽù ›Cñèò¯‚] ú¡Yl®1šÞ@¤rþ¼òœ^'¦  Ò¦hCABÆýJàbÙ¯= ”Wþ ©AÈÍz+í Ð^ÑêMÆ ^ Ê8ÈÑßhèT¹ Àj©¶ª‹¡è*Ÿ'¸”ah2?ΜuØ>³½k{,ÖU=}â³4ÿ©©<Ã40*—¦è÷Ýí“ÁL¤ºu5"a É”ŠCÿcª²75©¢k÷ËÝ ýb¬5< YúhílàhæÕh"õA»Ó6ÇVúåöÃ6¹Lªñ$°‹-l‡ÿ5g"Ld —J} ¿,–ÀÆ_õ–À ãrûÛ`wÙ‡Û¯šÓˆÚ±.êéáO1Ù¨µÓ{^lÝùÈMÒ@{˜ÅëjÌßaåç÷ÌeÈrY Ýú_œ]¶×8ª÷N^ˆ¦R‡Z w6ìúó Í°Í5êÅ0 ìýíiNrÀœmí°œµ›¬ Ø»_ðüö™Î›Ý6Pae(o¬«wúÅŠé~ÛVû*°}ç¼Ç}X^fÓ¬­«Œ_W)Ú±aÖ¨g™ r•þ²Ö lÃÝË\!Ðsí_Û~¶VØHO­…¶´Ç´‰š h(å œ|ŠþAƒ¦Êýr „¦‡ß ‚²¡þQÁ÷Áó`òiNHZ–R3õS C¹'ÖÕ;ýâ?Å’š§¬Içfµº@É4ÿ®Ð(~§,Ï÷Hm²¨Ò’FÔ¾á5´‘Úí*°ŸHêšz3Ût[mP'—)¸H%äz}ŠöÈd½Hß 4¢—eê(ÇrüAêMuПÖl²Ê"þHpä¶ÍßYÒª5Ír×\5še7¨éyUfÉÜXWïô‹ŸÃŸbÉ-RV¦œ 5Þ®%9Ó`Gðûáûj‚Ú¾T= )ï%åz3…©" Å!ÏÖO¿Z/û»®cÎG xÄö¾­)°¹òÀ2Éí-½¾^úí¯-S&‹ 4§ÖX–€š£®ÐFƒ¯Ž©Tðl ~ùzIrù%Pô•E¸=›èJú¼¿x7{Ÿ^ázǺz§_|„?ÅÜi®G\# eEÚ²t ðÖroèÌ,™ä+…è—ÑÑ•íh®µêA4!ú”YÖXõ¬úd”‘b¼ ÒX§uJ*¬‘BðÖG‹€ª-cµó ºÏüÄLHßhyônˆ¦›³M„„GDÀ¡ÃÇ>)H‚㽋¢ey@‘ÑÐ~+„óÂÃë ôzÈ:ìb;b]½Ó/>Ÿb2HzHw0ìú½)D £‰æVØ÷Ú±‹Ž~Á·}üý|Û›lKì7Û^ƒ¢ÁÅEmàxr±Yú È¢è‹Ñº`¤â¸Öë,æKð¿* ï…Îc·æ%Ãw~Úºu9ØW:v8s’ù™yp¾ ¢7x4÷y®QÀe–Ãz ÂkƒÙÁ¯ÁÖÞ~žý>°uµ-±å{ð‰uõN¿øª à€™íŽ¶Tí"Ð_Õ:Ð Âý#m#_Cä`t^´„„î€Àã!wØf{+×Ú*ÀR5_w+GC@íà:.s«µÙÊ…È„èèhÂÕ#Ç"Cè¡È½‘úy9z¾ù&$ŽL»Ü˜’à^jšL×V€½Ð>ב†Í¨cØz4 A¬‹wúÅGøSÌZcµU@D"†Ÿƒ„Ë\-ík kW½fµC£uÔü d ¯Š¢ï['¬žp¸ï¡G×ÁÑ×v¸vï_ޱÏV T7šÈ}ÜÍM0,áû1Èù¹¶/{\Øàœ©-3Á}^ÂÓ®`Ýd¾c}ª1ßóÈuT –"ü³À÷°}”ö7Ù×9’ÿ®á¶ÊY£?¸xàO±ÈåÑÛ#B°[pB0ì¦>Fß îUŽjŽàÜh_mß °™àl¡íÖ†CBsçŽcÀªð¡ÈqPïEŸŠvº«VœC °i¶=ÆÍàìî<àøœ+{í9àô;VÙ`í¶¶Zo€™j>m†¼–ùM‹.s›Üå˜9¡ú÷×3 áVÏ'žÚÀçþ0;‹ý_â?Å¢k"[£» œ’Ð`\ªw“§A蘆×>ë=«•5¨'5ÉãZ-¨ßÒ™"5"í}ßûsÀ¬šþ 0‚ÏX ˜’E&hu´ÝZ]Цi{´r°ºªGÕ7`}ey­AM·&©÷ÁìnfYË `jÉž²AÀ¸D¿ó¨uÖõ5ƒ³®³ÜÙ+ÖÕªzñsøSÌœa½m-€èf{3ô‰ò‘,ýÍ!ý³r«½0Qà8u© êekºµ " —„š‚¹"Ú?º_‡¤õ¤‘ ’¯ÍÖ^9O;,;€ÚœMKÀG %@[ êf¨%:1£õÀêÌ@îõî+Ü~©ÞGïëjU½xàO1éGo®Çt¦‚zœ|~5•Ÿù¦âKþöˆ…RÜÁ®m™¶L®‰H¡|L¨8®ZJ]©ÚcÞôÆ%Æà2nçf =ìIÀ ìá ;Áê¤î³Ò€¥çÐ?ÑWé_ƒ–c’ëjU½xàO1 H‰”€<®ÍÐfgñk@¥«qÊKjÒ8!=d-àЮԾÎå2zĺ:±üéÒšw8RÛ8jä[}ž¾0 ,”תê0œzwý¤Œóv÷LÇä»߃hs÷O®ïA•Ë¥RØÊlæ¶Ê ÿÿ¢ø(¨Cs`¼6A3@ÁÚNÀNŠTuqb'øÓDÈS²$Ekkò‰ÖÅø(Qk¥©xUm`ÛAšÈQÙ¶F'c5è¿8'9oyÉþ¬ý9°&š¯˜›@%[y– d"£é$àÄÎß¿S*LÈ% •GAšêmcADÉH¨ÅÙ±®NìÄ&r…ÌЀó'÷ž'@›ZžáÔHÏÈ-`[fÖMÏÅ.­lÞd?¨wq°ôÏìsmÛ@gËÕ¿µ6ðhp6„Ÿ l æ@xwtšÙä!šÐä-¦òÐSMc¨ÜI´CFÈîMÓÙ—|ÉŸp:ò¤xàOýcŒñ¤¿Wí…ê{!xqÞ.(:¯´YcHmšœáí¶:Æ_Œ €[9Jààb¼ iϵݶëõ+ AïT²²¸Ê;ï‚âú¥iå ižç ÷FЯÔêkÕT½f} æt³ŽÕ ô޶d‡ Fk»ËqH+.£T. þÓ‰ŸÒœ&ÆA#ݨ™³²öÔh ú¹ŽÏœŸÂ‰hqÒFcz@¶É<žü¨"ÀA"Ð"Æ F °ï4Öèwƒ3580t)å‘·Ž}||ȉûÀúÆ\kEA»VÚK„W†§GëCi»òeþÛÀ½<±ºwxLY”úðŽ¬” ±®NìÄšè^½Žž©Ò‡§u}¹m®s2ùÊìþó z¿ÙÉÊYÀ2áÃØpâé ¿¯ß¶ú.ýepî47™¡ì½‚>…µ ¿øD­‚0Xé–ßjÒMÚH*„´ðáPòDyº$¼xsÒ7|$¥]ê~¥òlŒuub'øÓDzKWi®•ΠΠåOÚv@°M¤ÐÌ5Hå©€^œC-*ÖÉ›T¼’FyIVò5è÷ËåÒŒs8F„Š}‰~àïW~¥o=¨°Z¥Žƒl–ò.D~2Û˜ó ||(#t+8¾wá>ž¯=O%&1‰)±®Nìĺ´£ ­AúË5Ò˜-“´$Pû飵õ ^.<˜óæD0A -çÈv][.AÖSFD?ö ]á'mƒ×©FªðŽÌeD‚QÌýàû106¼ œ]œ¸ê@B—„–žV Ê£2>ÖʼnøEk‘»µl¹ä)m6¤£ô—^À¦c§â=©& •oÍk/yò>Ð]®–+/(¥LO¸fÄsN¨eølPó飲@îdƒÔs£¹ÞzBþÈLó° u<討oØ»ýYû[ûÈÿÑÅGøª²Túk‹AÎÒÛë€ ¹é€ã¨|%ÎÉ'¢¢ôc àbºLޱŸã`Þù::L¸4–¨Ûy8O:Ò¬ej;À¼F¥Ðôïô¡Æ&nla2ÐŒf4‹u1b'ø*"+d¯tíb¹KË.¡›ŒJ)áÄ?ü–$’€d9›æ Ž±•½`vø"‡ÁÜ>+Ú øHÝ­¦uhJð­\*+@=,k´Dàn9"ýVÔ§ší8þ™xà«JK"l®$Ä@ŠbÀDþÉ‹£DÒH ÔNµ¬Üèæå`>iùÔ*žâ%ÀC5€+øRB ŸÈí1 “IòU¬;戾ª¼£.Wo€º]ýd-ð­š8ðñßg'/äy ¼æóePÇ­k­vÀa¾d{£ˆ<"~ €\¦Ó'€üEr%7Ö?sÄ_UÂÌV/5Dõ,T¾ìÀþ[ïf"ŒÛe{AÜšG›rŽ6H‚äг<¶ð3ðI=ÐÎÕîÒK»eŸ$źógŽxà«ÊÏê/t–¨šjPÊf¾t\$þÃ礼A T®~ô’-Y ½®çëß‚¶K¿Åh ´¤7½€\µA­+Er%È¥ú]ú@ûeŸ´uçÏñÀW5[õUÕA UÇ­qÀÖ²°“À?…b4  ¶QRMr¨š«õçA»ÚÖߨ \ #å6 —ïX “bmˆ¦0¾Ê¹!Ö½?sÄ_Ufñ ‡€Á\ËF`{T€Šš“uW¬oWÎjšxš àÐôùöž¶4Ð9®´ç=ùŒ—6ä±h&vYj‰–bäe™ö'ÜàŸ‰¾ª¤Ð…·€lî‘ÀN†´£â†“Š‹S¨( V™m¬ëÁ5£CälB¸ÁÙ,¹¿w:$^›úeÒ "m¢vD.‹®ÚÀrò®tûËÎÕ®\ÐÚëA}`¬;戾ŠÈ`Ù,gÌ‘Z!P—® ”P$’!ÕPÅ‘Ök‘E‘ݺ&Ü=2 I¶4ã Hά1/s/dê5·fím‰Ö^³À·ËWàVˆ°¶)x§% H€m¸­ÜžëÞŸ9âK ªJ_1´@Wm¡68Hi „( :JmjN"„Álª¶AÐcþ`v†èi’ò9dïh²º~24L¬ŸœSÚ"}Žv#-˜S¶‚ÃXçê Õk×”Ìàr¸‡»oàUfĺ±|UyU› eÌÕm¤» .¶–³—ºš¹}+x_h/˜Ÿ˜˜‹À™P}Wzsð^–1=½ xx¶&ô‡à=Á½áÛ pa©òϵÑs­k!d¾‘•Xã\p­pÞíœÅß6eý³‹¾ŠÈ_e•v+H¢æ4¦í)‘@ Êd0X/ZÙÖ›˜šª¡ûË”÷­¥5×ÚÉfÝP}48R<ï»Ç‚Z¢®P@u S-_4Ô/òØMO‰¾’_Nù%å°™¶³mMcÝû3Gü¾ª\¯-ת<«ïÖï©'¯Ê2YË"ßñGÁñeyÃóCÉÜ[ >û_ÕJUY{snÈžMI½½@µS'TÐhH ô7Yz¦í%¿Ô“Ž€Qù"ä8 >ÂW½ž`̽¾í%ûf°¨;ÕƒÀN~f „ŒÐ¾Ðr8tüТ#Eþb{i&$´öÜ“pÔ;VÿË:Br×ä!I @]cWN 3?È ýúb£:ˆ¥—è@9í¤”ƺ÷gŽø_EŒcö'íÀ>Ú¹Òå…è(óMk˜>ëMk%D¿¹Žo:òQ^{(ÿ:8+\î†iCS†BöâšoeÖ…Ä\Û=Ôwj£:tb¼zä}¬1´°qÔ& ÙtäÚX÷úÌ|q5w®wß ÃóÄ_Eœù®WœŸ‚ûš„žž¬®)‡Ð¸ÈòH°¦˜s „•·ðßÚ¶«Á1+%Ç{è×ôZ #d;Bè‚ðå‘v.y£ì¸óIî iÓﬞ ÒM†iñ™™ÿ%ø*â˜à<ì,÷Ž„RO?­|õAØé ‚êl–X]!4·|£¯ èwØg{\J³¤¦ ›´Ú\à^%G:BÞ¢¥að$%ÕM™ 7dædmííí‹X÷úÌ¿h­"öö Ç àüÔÕÏõ:„7Ež´6@´Qt—9Ì;ÌgÍwÀײ,«ü~°Ýá\ḤíIéÔækÍ@z³›ªÙmוm $A­$ÏI@Úò´#©ƒ\+ýeI¬{}æ‰¾Š¨‰êUës°ÎµÎ³ ´»d,häù£¢³Í( .¯íŸµÆg}áƒZZ™µ†ƒñ‰Qèj‰ºF} –°G†@¤éÆ{ ·¶Ow€ÞAŸª×Úq6ÃcÝë3Oü”¦Š 6 ¦ƒÿ|_Kß4p^o»Oú<}¥VÁ)áá‘zPêŽD"O‚wKÚäPs\vzfÐo6nÐ-ˆ>-U—Ë´GÁöVÂRïxУ6§ýïo0Ù±cu¯Ï<ñÀWß²Ae(YXxcA?p?éüÑ­D{Jœàëj\ül;dk‰™^¿Gƒ¤ùÞní¹IšBù2ßÈÀëji>o-ƒ”‡Óçgä€c†«¹ûOø‚ƒU<ðU¤üÙòþe¡$µhdÁG`w6sLÎV]ñƒÿ¼ÀÀÐAHX‘xQÂlp»Ý¸2Àh¤ÍÐZ{ j“7¨p6òG¢c¡QZÓ©ÍÆCêÓ©ëSÿÄû¾ÿ^ñÀW‘ Ý›ï øÞ-™[ä[P?Kó@฿Wð'ð}è;¸jõ­õK‘rVê#I·‚¹ÝÚ¦jC4!:ÙÅS"[ Ö~pBÖ²Zv¸Þr=ãz5Ö½<óź¬å{ÖzC½¥ÞóöpRð D Âé¾1 r­óÍ©PÔ«(·äc(oæ[ç›Mg6³5>ÊZžñ Dþi9eøßGI≔CÜ¥úæ,m¨~ØhëÎþ÷ˆÏÒœ&Ö@k¤5ŠW—„KjƒUþ*(z–Ûí¸lý¡z#(·û†N@d´ºV]^jøI!«Eæ€j7CÙ«à$Øòþ¾ÔÜqPãÆZõ‚†Á³RZ| Æ#Ædco¬{ûß#øÓÄÌ63Í(Ô —¾ LŠ–„"4Ï}…c=øæø¦ø¯€ò€ÿkÿÐ}ún}3¤MLY™4,ÍzÒ…Ë6Bä.Û¾„î6;óPövH_>½ZÀêĺ·ÿ=â?M¬k­.Vðoö5ö-uÈʰì`Û©õÿnþw…`®Š̳ 9%±KÂ8PÕÓ „#îüYÅE÷»[/A£îg5m=ÒûeÜy®|ä[Ǭü“þï·÷Ï"~šhs´O´5à>ìîçþ xR«§õ€@ßÐS¡WÀ¾ÐÙÏq94ÞÒ°wÎbhñHÓz ÖA´µu£ÙŠo.1_Ö¹÷¦œµ—Õû¼Axx/OZØ+_T©Çƒþ¯ˆþ4Ñ#zX· íÅ´Ò6ƒu»víä·.=èï žÅ ÝåP½]º'¥Ø;:7;Á¡ÏòÏ+­ÚzÏgi@Σ Ÿjú¤´Oz/“ølÌ¿-øÓD[¢½£½)5S~IYŽv ÉÞzè¦ÙÍkkìH…ÐM‘OUäi¥¹ÁÑ÷Hà"&@õkût&=š5i~ôŒ½F^¬{õß/~ºÔ$›l`!2êÜÞàÉFÏÑÒd—»cÿtˆ¯_JJæ‡pÁ²sV5 Õ£™»jè íå]ù8Öùãˆ¾Š¤~Ÿf¥ã€Qlsƒ½Ô™îZ á™á·"@ÊÖÔ÷ÒæAÎÀºwÔïÚ.í]m[¬[ýÇ#ªR¬ò‡—OùÀ|ÏwÀû¼Ék@Em¹€‹€aÜɽ@u2~sí¸K<ðq*ñ‹Ö¸?•xàãþTþÿ7h³ŽùAu%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr4.svg>Õ „IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr5.png0000644000175000017500000002434712240014740024046 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>'jIDATxÚí½g”TUú¾}í}NŮΙ†šœš "‚ Q1 ’œED%Š`@EEQ HVQDQ‘(Yr†tî®xÎþèfœÅÌ óμ¿¢éº¾Ôêµêìzö]w?ëÙ¡öª B„¨È`"Äÿ%!ǨP„ ¢B2|ˆ EÈðÿ?cl0£Ì› ä¨[¸;AþüùBA÷‚‡ žß·¾\¿%ØQVDh–æÿ#g8Ëi` “˜j·úR-õ¨ê­:9ÃgÜ……Y…{ 㡌nƒœè‹×_4@ èïi *ßQ¹f•t y\¥$JÔm@Ö—íÅmÀ)²EŽ  ¡¡»óå—áÿK —9 wÀÑ•‡¢M€Ü‚ìN™÷Û >È…fÇÀÛ éæsHÐ:ó¦ñ0Q.%àégœ”ç!ІÛ‚°ìȆÑk!-²fóÚŸBR¤6I»—×z°6¾æ¾tßPr¸xdq ¸[»§—ó ³»™j…Ú 2ÁœfÌ6V‚ŠRÍÍU`ÌÔó€’¼ÂFùÇ!³ù‰G›Ba•œ‘Ù¯¼`>â? ÎæÖr:DoqÍwÜá§Âf:€Ú¯©Pâ*°Ì…œ…ñž5PÒ(ü͘* ¯TÝÍÁݺhhA#°Ïrn k Ñubbb_ûÓöIöqÁV¯üQñ2|ÚÐŒ­Y1p¡þùç.Âé'‹§BÆÎsÝÏœ@’¿‘/ŠÆBð|âÙêM3Ý?ËÚjš¿'Dô·­Õ¡F¥”MñU ºžëg2]üMÌ‘,fq ˆÉ"Jüâzá?çP‚ªc.PáàÑXiô‚’!ÞŸŽÝtvzöGÙ¿hƒo6Då':*¯ôUÍæ¶È„ªzµ×ª÷í¨^I¿8Ì9²€X¢ˆ ¶ÈW/ÎðÅ•‹¾. 'f¿çèjÈvfÞ±= ^t‡<áMí­-ç@öƒ¸Æ4s‹ †Û°u@06µA~ÄB³Øìz_mDwLví»Íú¥õ"Ð[ c°†c¸A=¡æððËøp:ˆ€ØÀ;Àsê z¿Yàd 2ä¾W¸ªØùÇŠô¼ÞSj†lùïøFÈõaòâTZþíº×ß Î7œsœs‚­îÕO…3|V댌 nØòíææ€eyÉŒ‹!¹vD²Í Iöøëb$èä ­¨;§¦]èLG …æ¢#p”0ê°ˆ½`¾©ŽªhP}Õ8õ*àÆC1pIYñoò $Oˆ!â.Ñd‚øLÜ Æß a´€|[ÑÊâ»áг§½›À½Y´³_i½.o¶ÒFÖ²Õy¢¶EO‹±2È’I$!ت_=\û†711“dSg/ž®q²lºsm§UÝ!­Cì­Ž'¡ºžÔ#v¨ûù´¦!µ|Š( BÜ.œØïØÂnPGT²jfgµZ-€3ïfŽÎ= {§vfµ‚&kÚÜÝa=Ô»/}i“I`ŸcŸ`à('‚ý%\=\ûóðùP@‘`üâÐ÷˜?ûÂ<+@Vã u#hßjÈ:Àõ¤SÈ"·ì¹àKÅ zÑ•v ÷Éq²#X¤~N»E¿~ $U9× ²:ž~ýèý°ÿ޽+w·£¡QØlñ¯>®ýYš7yW!ç™Ü¸ÜηåâÙ› æpØJ[8Š­ñú\0_RëUe —BöV,AUÇ‚Žêçɤú@-U€s¬}µÍUj&ôŽ)„ŒEG¼ç7CÖ[öÿÌ7Í{ÕþÒi{vûK¸z¸æ3¼ê§îP7Ãé§ÖŸ<ç'ž9q2RÒâÆF…Èí.ÓyT–ªÅ€âê*ï.Õþª42•Á2€í¤P ð‹ÄçÅçê5’áê65±Sìà¯>®yó•/ù nÏ©{ñ](¬–;.Û„ðYÎ3öª`SÖÖ—€‰ê-õQ°ƒý\“$“BP‡ZT•¦òhJªª¨²È v°W×®áóJ_Ìg‡Œ~à_èù¼ø.0³<ûKv€ÞEKÕ†€L—qR‚ÚÏŽ;è?A€PJÄ€!†ó8p\Ä÷À"qPÎ|D’ì`¯>®Ý>¯ôÅØb~e.ÙÂüÈXÚJÞ2ú‹Ù¦ÒAÀÁ6 ”‡M\É$ *‘zªkÍŽj2Èûõç¬ù 5¶FÚV‚hÇ.^~ vÀW×n†O*}Ñûè÷jd9C³€ï‰õ~tÑÌ`ûçOˆÁ✠6¾’–n—§X_v¾ïš.ñ`ä.»…)’‚íÕǵ›áí¥/â¯â9T†|Oëj‘ئ ñ˜˜#vop „¼€;¶ÿàsÊ“QD1»°‹LwË;E 9éÔµ]íT…`.3W«ÃÿðœŽþŸ| b-³y|þ¦þ&Ûº`Fñ£àÑ ’ bêÆ6¯¢µì%K·ìá·`W×n†¿D>‚h°~nïâ|,ÇÃ\SÁ¿8iT#Á|ÌøD+Qû?h÷’a8q€xT ¥?ø3üŽÀ»P¸®(±d,Î*¬Z¼¼¼Óý}@ŒãÅ# Ò€:”Öäÿàs׋YbxÇù–æ@Îü‚AÅ­Áq&,Â5b>ˆI‹é¢™h':[ü«kÞðb<¯ðÄNìRiD›ñUšYù¹®ƒâ%yÞö‰eâoÿAÃf©áE2Iăh&ÒedŸÊöäÜ¿ŽØµ}ÿ °­íö*{ÀÙÖç6gä³x›GÅ#â^~„þùþÜMG7âÌeP|Øû”ïvÐûZØÞÇQçzç2Ÿ‰ÏÄâ`«õqÍž·ÅGâH|>yirÄ׬´¼ò-pþƼ›‹¾€Âü’öÞ) ]lذFÙôß¿AŒŠþ`>®þ¦vAQ³âOÝ}àTôû̇=ñ_Ô\Ÿ¢W¥¯Ë†}¯mÜúóJ8\ùH“ãõÁ»Ú[Ãwäò%Ùï ñ00øûB˜p‰<ækª9µÁ3Ú8L6èµm÷ÛæmµõNk,0“™¼lñ¯>®ÝþCÆ0ˆ$rX$PôLœ+~n÷¿*>…’…þUFu0ªUæ4`áS‹š@!%ÿj/8%³ ¿a5šÃ…Ó™weoƒÓÍöL=¸2=?lØú è?øZù÷ ¹ùymÀc³v²Þq b7Ĥ€s°ÓmŸæxSp†^øJ †(àWq À‹Æ!ÜJ4ß‚üؾÔu¬ö–N;h©š.KWVû⟸ö y‡ó-_Û>×ÔØž ÔHMyƒ'Ö{½ïE°}lo="Ne+¨/Ôf~ùçvD5QMØ!p.à6nƒÕNL:}#äô8ûÝ…ú±É§û;‚|TUS_BÑâ³9™™ñÊÏÖ_åvÝZ·ªˆºÂX±¢~ü˜”.0)·Šh *LÝÀTÈÿ[ñÝÅo‚çåÀ7< y)U ÎTWR„€qd[å«—k¿¤¹Œð…##ìPgQ½ý ›ï5¶ZÆÀ¹iYûr·€™aö7W›˜-&\¡¡Óçð0c Z#}º>ä8é’ñ ª*dxéÛÍñEÍ‹†‚§nFdV”ÜQ´¢x-øž ø êS“ê@ü>(žÌ`q¨»Õ“ê]Èwññ‚zP¸Ã7Ùü+ÔxµÖÇuÆBTt䊨r4½,*œáCœ/9¿…ê ÒŽÕ¨åršõdм3Ev0;«*ÄÇb ½þ};ê6Õ~ ½¢½£ýâ2ãÚÇ< a_D¯‹l žm²·Œ£OÙÑÆ2óP›üUüÉà¿ËßÛÿ,­ŒýF>'¢‰,ß´¦DÚSxŠÍ쀼MÅ7y%¸[˜Ú`Hž•Ò9%ùÎ0GV°Õ½ú©p% £hCÈ2O˜M7Yx@Ô I "U´ª“æZ3ä|Û Ç  ­rìsiÀ×¢¸3Ø¢–*\†'':ˆÄm¢èß[ÚØú‚6ÅRÓ:èÁ㼜áÀ·Õ>Îõ*Èy\Î…èĈ—Ãç‚Ó•q[íÙÞ5W\'bAw:vÚçý»¨ÕÀ:Ñö¼õi‡e¤Ü *ƒlr/~ zŠXqJnóœ÷&À©´óaÙ£ |olŸÄUP½o­þu²Ak§MÕ·[ÔòCÅ3ü%vr þ*ëÈý çËIZG è.úEäð{-}j…ZÇfUÈåW°¯¶Õ·öÛ™°šÎ… †„Õv,I«øô£Öy–å`3\µ‚>E¿IŸ 2^,ãU ˜Ü¿ž˜-[‹|pOó-õW‡Ó¯g=š\?EŸŽûRWõVë ÚͯU¶˜å‡ kxu’l ÀxDõU»ÀH0+©Iêcõ9ÀK1 !ÿ¥J%øñ¨&"ˆ‘)z2 ô—­©–ö`Ip¾é8 ¢‘|JÆ‚ˆ ò(È0=U_t«™ j/ÙÊïµ»Q6ï^OY•Œ¿¨¯hÞ6b›e©ˆXõCôí ú‰¿ˆž@mêR'Øj–*Þ õ[Åq‘ 1ûã¦ÅMãñâ 9G ëÓ¼{ ï€Ø}-œëÀ¹Ô^ǾTUzªÇ€ýœ([ *ÍÄÛ-Ú€|YœSAX×[ÂÁ2ÅÑО²³¬*΃ŠÔîÒê6ÑÒS_ò„Ì”³@NUE%PBÎ’·€zL5Sàb^þî¢\È_¨«†ªõŒ­eƒÈžQ…ÑiÁ¯üRa3¼$Ÿ‘Ó ÚÕÛ¥u€Ø_’W^‡GŸ¹/s9dÇçÕ/Œk£†±|3üSÁWÛß, ¾zþ¶ð-ñ÷Þ¾¾ƒÀ8A vÖ±–å@/ÑOÖn]Eð|SÿT£Àx |íü÷jƒo|àÅÀmà+ð·¸ ³i~Ýâ;!¿²Ï£¢!å¥*i©- üpxTx0\^Ω¸~,Oò8îpnsþ aÈœ ¾Çy+Ê:;${oxvnæ3ðjŽe’e ¾¨A†@àyã{³ 0R45áØsÇŸù r,JtŸ…Ø3×|¼¾ýwÁù¬‹çòï„Ýwpª)DtÍž“ÿ+øúkAý¬Æª=91otÑ`ˆ‘¬…·¹SÖÐú‚¸E4ß[¼òKÅ5|åÒAk¤@+ÖÖh#AÎMYò¢¨.Ø(†‰. be{Qäbñ€°iôõ@þ*Z«{@í©¢´7´g´û@{Èò´e3ˆm¢“h D²‰¯GhCe½….‚øDÜ&â@®U„”[Œ¡èê/ZÆ€ÖX÷逪Ì8u€YÁ–®ý#GW×qp9#´ˆO@¾,ÛËÀg<léÊ3×ð,X€Ñb4£A<+š lÅÉf ÷OþÖT”ýƒØq‰HàAênP§T²™ìR'Ø ¬RSX ¼¯ö©‡€–ü€8£r €Ø,æ2´Úr9Äazð>¨fm³3À¾¶håŸ ;ÿ÷LžNÒhÌ)[â?ð÷Sþv\„ºG¹T*˜?›×™õ%o«÷eÌR{@ ¡%³“ ØÊA~ñ¨h,bÁ2EF—`>aŒ4œàóxy[ƒj§ê©Á­üSq ©¤©D4 È I$“БÀ޲RågºÔŽ0lÀUM=ªØ¼O60‡o€Õ:0]Q9@g0€Ù­¶ƒœ.o—7ƒµÄrÒ²ÌÆ„@'ð´õô|JSn•lÑÊ?×ðe%ͧų<؉$`þÉÓJ ¯aÇj©êO`°Ú¡v‡ÕZÖ:+YÔ0FpŠÓÀ¶³Ä«bèÖbK_Ëz0ÓÌ­Æ"ð^ïmëiª–ª¥ÄŸŠ'Ĩð†g©Ø€;H¥+¨ ª5‹€“j (5òŸ)ktìX€j zÔ#jŸêåköò±é@6óTk @"|âvÚ“¢¹Èa1°]}¢Æƒ:¦«=Àa©CÁ­üSq ï*»÷´{éŸâ>[@­S¿¨Ž Fó$ (½Õ~…vÄßgiJ ÿ9xxHí¤ p•ìÑSÌã`¼ðŠ)@MIQƒš`nVg•76ª‚xPþ¤ÍK7ëÃÖt‹Y&¶[´òOÅ5| )¤üþ§*#d$MJ‚ڤƪ'€ÔÒÁè(µ¼^zDŸZ¦îU÷zÈÜaîµW-R‹@D˲ȯµÑÚ( +Ä `D 0êšo™¡8ßý…çhÙ f7ã°Ñ¼Åg6¨åÍÃÿ÷„ ‰b$o÷˶â= –Ï@€¢?¸+I"€pIÕØL1kA`£1ßX ÞÖèÛñˆï\‘›ó2è',­´Õ 2ÔI¥ƒÔå·bØXY÷€y—Q? žD÷˜’å P™jw°E*ÿ„  Ñb$àd[ÀÂSe%MáKšK[¢J/S¹æ\ÕŒE>æpð®·J;Ø> ¯ëZÑ2¦OÔ|ÐFk£ôÊ Ü Uds™-ã û0k;0Ó̉8p÷öôq÷u^W›ƒ-Rù'døK  øD„Ü)Ö‹•,JȽrISføhQ™J Ž¯KÁØa¬ ìÿ¯–Qz XƇýÍ™ »\ÃÂ>m›6J&ºAõd8È>¢P`©¯?ª¯Õßèؾoo ¨Žª† ]Rö_SqwK^Ngˆ7@|+~–Å †2H/3ü+ŒbAÙŒ÷U{PÛ,ÓÙÁÐ×ö²e›Þ„K[€&T'(¤˜ ’0œ@[Z‘œbª|.^gPL4‘Á©ü2|â:–‰AÌ‘d=7ˆub/àå"W:†Z¢¡©Ô¢:¨YæTó˜í ¿9ô'­Ö›@[cùIo|Á:6œåD<1À³j ™ÔK ^·‰ù «i^­-ÐEÜ/†[¥òOÈð—xL̇@4—ßË€qb‰ÈŠÈå¿xÿ¥RÆ_vÔ |øÀL7î73ÏhhÚo6‡åh-­ŸYN^Špnr)q£hE0ŸPŸª]àsøOøg€˜¢ ×»µŸíœý;ĉ+Î…øS„ ‰b KA¬Ýå) 3Ïò5ोÿâý.¬Ø@ý¦2Éu@  ˜‰ÆQ£¨¦fWs XRí¿Ù~-ÕÚÚ:ðQH1PÂErÉ<&c‡q›ñÍ,ùÒý+hÍ-5¬/Ax‹ˆf‘­@.‘;dháé¿&døKÄ2\ÌZ‹Fr ˆJ<)V>þÅ UÔ#ªÀ0^áM 5†–€ñ½‡ßòic¶ÑôÕö6?hÒoy•Ò _ ¸K /æò# bì3C~f‘·d\s.pV]s€#€—,޵y‚@|&K´– ‰i²Õ?øç… ñ„2|²Ÿöš¶ ¬'l‹mO‚™íŃ ðXà\` ؾ·æZ?ª‰J$·‰ëECP«[U<”Œ(™íÎwsO{ï`„e¦6b;ó$DäD<ãJ’ÕéÒ³)E’*]9½ º¦˜.ü€W¾¯Ç!ÛþC€¡ þ'„2|òG¹WžËX}‰%ÌÉÊÅ,0æQÆ  v©êOŒˆú0Þ`nWŸ˜ÛÁ=¯¸›{&¸õ=ï¿ä“ö÷ì«!ºĘ –vÈñ:pž d‡ÔNÑr€nÌE æhu´É n‘Udh+Áÿœá˧e¦<úzËK¨Aʦ>€ÀýF¡ù °}‰%DOÑÛA5¿S§ÀPRÙÝ|Ï;@{ÎÙÕ9Â{„ÛžÇ*›Ëš*‡Š@%“làuÆ©‰@Žè&¾yHjùD¤8§ý-ت\{„ _†V ÕÐRÀ>Àn³'‚ÑV å>ðUök|`)_ó3P›jTná:‚*T*<¯òh¹šUŠE ¨/1Äj ‰ °£ð•¨G]`žªF€YÓß;ð*ðÃTÐb¬÷Z¶€øYÞ+ÚgØÊNà"çT¨Iê-¶ƒq‹pkKÀì®M·Ý Ö‡­ímûAÞ +ÉPÿ?'”á/C½È»j.È:r³¶ÄnÙQ; äyPº­wˆj¢;-AíTcT:ÖøøLP[Ì6fCÐJ,©–;¯DŒìåF2ÀXc«ÿ&$ÏO¹XÙ v§+!Ã_N§Éå3¨AIõ°Ú A.p¿èÅ-àÏì ÜÅݯy†‚¿¡Ìóà8vÌñ)ÄìŒ~.bXësô¬-©î= y{"Œô~¥¾•kBÔ¤¨¯¢Î»Ó‡á/GA"PEl7©b½h 8ˆI >å=1J¬%¯x–ÃŹ¯ä ¶å¶Ö½Ñ,<Âõ è ´÷´f`ĘmÌåàël>-Ç€Úg©ç®Ýá7DôK¾e­å³`wºâš–¼œ*t·‚üHë®ñƒ¶KöIGÅ^VBþ’‚W óáü‚swg´ƒØÑßD¥CB£øÓ1»Á|Ь¯ªBQW÷QwOZ÷:Ú@ÌÙ˜Êñ@~ ÓK÷¸‡öDþÊð—!âiÊÍ Òµåº dm±^b·q'ˆ¶"YdCÎÈœè<œúõôÃ矀%µ¾¨Vê|T'²Æ Xdì2FÃo®SI¶€ØèX>mÙt28,ŽGœsƒÝÛŠG(Ã_Îñ£8 ŽÆaׇgz­è.ç(p·òÅûR@¿CD6…’Q3 ?¡èbqkh}"µj%7Ä\ˆÍŠJ‡‹ jGçkñÛOPin\ͤlH¼-©MÒ,Ú»«‘P†¿ q«.&Cl|ü/ aà\ž©àb뼜“àÝê;è ¢ö ÚpÛhë/àšv³Ü-}}Œ‡!£qAkÏuP9£æGuûCòC•³Rý@Ùd»——á/C®”›å.¨”PÉ_i¸Â¢&Ç´‡s%Ù¿å§@I/wk¯ÇCö¶¶Óö­Ët‡ ]s¾ÌO…ìïÜ·˜&8³«¾ ÕÒj¾^÷<ĶÛ?ˆ'ޏ`÷²â*i.Cè"LDBøäð©O‚M:'¸ŸãÞã[Þªþz“·2ÆõÔ~<íöª p’/[M„°"=Îyjo¯ùIÝÁ»%þ·„4°,²,µ¬ vïB„ 9·r+=@ž§ESÐY¿µ&€JÒ›Øn#C`<Ä|‘ë53Óòªu…ã•ó?ð÷†¨{~KéU®š\u1ˆ…ò{:fãª!døËÑÑÑšT#ô5ÖvöáàŒ oÕ ŒwT®Hóc³\¹{àôòÜ>%[ Æ¡&?]·ªMªeÔk¢™´ËÒÒ¥;¡Í`W !ÃÿQÑY1 ¡F‡ºSycN›‡}PøFñHs<8NÇÆUª)¤šÕ~‚èùÑ5£“<€û¯®ñJhÐúDŸ½êŒkßH€±Ç9!¦ èÅ1’×B=éûšå@Äì¨äè" ^|„Œ~•"TÁäjG=§žR `M~tþ`.PsÌÀù­³YXO°°Ú¬í@¼)>+‚mˆGÈð!*¡’&D…âÿl{žšEö~%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr5.svgµ#4IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr6.png0000644000175000017500000004235112240014740024042 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>ClIDATxÚíg€Uö·Ÿ[ÕyrNL`29HN’$HV ˜EEQÀŠ(M ¢aA‚AQœ‡8ÃäÜӹ꾦Qÿûî®®®;ëóCõTuŸ[ç×·oÝp®~ø‹¿ø@©kþâ/þ›ü%ø¿øŸâ/ÁÿÅÿ þ/þ§0ÔµVÜû@²Ø.ʶl.­•yJŒ_»‚­—mw@+°u¶=mû ”ʽJ—º¾ûÿ{‚ŸÏK¼Ò%‹äYWÉŽ² p³ì'Û7Þ‹· †º n‚ªëª†Ve¡Úà1h><|zø7¬'æN¦¶æuÀ­â~ñA€8"ˆj(#(§<ðŽõÄx"àÂÎ W_8ç¼gܧ:CÉæÂg.| úNo€»+è‹=CÜ¥àóxpŸÏ ϳžÅ Cå[ò3 +ϲ@<¬äfñ&óHS@~Ä`±Ä]*jo³”@õn0˜LGÌë è©P_øÝ¬§T¤¾ '¥÷HoÙW.åIu¾ú&ˆëy€™ •tÑø bЗþô«ë`þûˆÿµnI×h××z8›uÆrúJ(ÙU˜T°TgV¶ùƒ¯Ô³”ýºÛ»Ôf¼®KgyQXAÿP<«,}˜j¸Dš:Ûàe—¡‡á0D—€z@m¡\r·Vª…ž¦ß§9@<«?¤ %T+ðü†2Ögµ 3´T L¨Ù@ºôÕÚZÐKµTm9hýµ- xTÞ.'‰¢;70P¼ÈÕÀQâD'߈l&h-®PfkÅ£"Ä4å5äFQª< ¾âNC,hç•^¦‡€,ÃS$`VÍ! cPfˆ’G§îLß‘‰QyQ#Á0D­R¬ëhþû\r‚·_oÏ´'AÕéÊË+sÁwÂè™úý#ÍÎöEÕEPÔ;oìÙžP±ºÄU.·=«êaPšè¹ÞNÖ>à5‹lK,o™¶‚>K®ŸêJG7÷àØíéí[¾ÎRå]Pƒ _ƒq½Ñi j/õie=èoè¯h¯~T³ù¦€Á+Þƒ ¼sàRKDßönH2„~Ü&ð{à‘Ïc Z3„^@,™¢-Ð’6´¬èxqàÅá·@EÇÐp>ŠÈÆÒƒ– ;È;õÙà˜ëÚî^Åw—=T¹ –y+3Á3MkBÐ7©£‚e[ 3øˆÙÝ 6¥'Þ.j?îžZa #¶G.ë ë«Ö³@;Ù\×*øçÔÁ¥S–‚çVoCO ³žsx0?’tè:°Oªª¨°‚ÖÂÝÀ)!èËê8HÞbƒcð1`ÙcŠ7¬yÌ:(¯(!b=u<|Ã1òAß)ã¹d 7Ë¥ÀJYB0P<$ñ 1¸J\.z9r›üøŽ ¼ Œ!(¯Š±”e™âQÑ^„¡D` €äblþ£1ñ³ÿËŸýkÅŠ8ÂI΂L–—Ëá ëòfùèôQò}à~¾%*¶‰mà¸Ç]âg*/üPrŠ”êï]ÃÀ28´Gd"´Ö¦¤CSˆÛ—ðMâÕ`™k ³>Ê%_©s5×ÔµH~v{ê»à«ŠªúV€/nÝûUàƒwÙx½ÞÜ[™"SNÖ*€ÏåP½˜Æ©‡”.’ØÏz l“,ß›æ‚Á Î1d€|“ïe)0™wØ|(·sˆ$ 0A  0”6¤€HÂŒäŽr8Æy²„" PDÐ'ŽDà v$ðˆ\É6Cx˜9 gÈ%òmjëiŸ ý?ƒ††ˆ ÄÑÀû<+ñ©xŽûöÄ¢ƒèD^ðvõ©ÚýPÑ¿:¯f8uOš/\hÓE!ØÑ¯V¯†€™áOÆv†¸«’‡¥ARçäÉ)P¯W'©OÖµJ~¢Þ ¾ª¸jzU/ÈuŸ¹ò°¿ÅŽ™_îØ‡c 6Èœ‘8(f3˜æ™tÓPžT7€L‘ãYú'‡'ù¡üŒí€ƺ.ÝŸ/^4·Š¡ô1X„Šó .WŠ”ÉPct†¸®†“}rEá¨vû6ª3 $+61yd«Í­7AhËðýákÁ”mêkêX×…ªÇ‚?´õ`äh8ýÔáÆûâ ñ¤í¹Â+ç›÷€y‘Ù`ÊÚÒŠæ@A¼øêÚûú‹H&–HñßÖ@ߦ·„ó¡…_–>eýœsô6*i@ö@Hmœu¶Ñ 5,:-ºo]{_žÅÕÓªš‚½°ü–’W! ʲ×XÖhË:Sϋǹˆ$œÀ…O]{]ÿ‘9E.ˆ¥â1&€ñJuˆºâ.Dô ™Qçû›_€¼êÓ;ŽoŠÑ¥!%/×µ×?QoûáõÙ¾O=÷ÖØó¶+”‘Ê»bˆ6Ê.åSÐuí ½PƒPPêï×ûOD6, _”+ÙÒ„Qv‡À6Ö¹Ö›Àì÷λõl¯ühpµwæÖ| Àîºvêq Ï:¾—‡AÔð’Œ60S^ ¬’Û9¨ üň•®õƒ¤È‘ ß£OÐ[…úMRå}ú+uíìOÔ_I˜ä«²9`“·èŸ ¹|€™Àºvî ý§C‘ÃâA »X/*AkÃJèSØ,&×µ³?Q¯ó6Ï>îç @Ê œÀˆ¥®»ô-È$pãÁ Õγã)°¿ãjèk !ñQÄÚÀö\ z¨®½ý‰ú+xä[òe@È{åuäqæºöíæâøÀPÑÖÔ ø¶ò=Uß@iŽ}–ûmH’Ö5+†EÌrÕµÓ?Q¯²œ¾€äN™À¾ÀH@];w £¡¡ƒ¸L¤ƒ.® ;”/p<ê–`÷jw* ÙÔК¡ëB_ ­ªk§¢þ ~ oɧ€<ù©œ ø¨¦¨õ·ïéß@úëZï“H%‘X7‰áôñ©X*ž.òÅNP®‘¢”Tá9 ®}éØqàüõ+néºWﯧŵÎsh]”ÖÆd0·ü2tÞtMpg0¼dxÀ0½®oÖOÔi¸ñ!,áà˜|‹yÀbñ¨¨ÖpáÔ,i …€ ˆH âˆ"pàÄ2—BŠ€*ì8>t.Έù‰‹½Iá„¢‰hDД–¢L&©@ÑD6"‚‰!ð`ĸ¹• /²-ÈÛõz9èV¹Yι@ Ù Äkâ®u‘¤6å6ñ°p‚œ#ÈåüTƒ‹ÿÏSÄ>/ƒ·™Oø^„â›+>ªŠó“ƒo‚È'âJ~”)êwêJ¾fN]æSœR\ ŸÒ¥ è,—W€Ú[Y/GÅ{4æ°šÿ‚?̘€x¢‰š‹LÒ€2*©"Ròÿ¬E~ü"þ\H DaCh#šøž«€ŽÔÖÄQd“"\¤“4£“h òsŽÊÓ õÖîÔoÏÛÞW|‚ó1×a÷×àLp[< Àk÷ñÃyå åCˆÜ6"ä°f[&˜ž)¤` £#õ ~¸0ŠÀ=Þcö6‡3ûò]%1Р²ÑçI3!ÛÔhIãÁmŠ3ÅÏþ÷¥ò¯¨?‚ÿ˜OÙ z¥®é ˜Åò!PŠÉâMãÙJ4N_ þ®Ï»x‰7ˆYâyñ(¨§T”÷@­¯“9àZàíäý}\ýÝ•`¨Quõ&ZYòÀ`V«”ÁÂÁv›kG|Å@±@L™)×rÜ=[<Ó ütÅáÊg ŒR­âاT®¬þ|ïº^s™Á×Òu¿Û ¾®îÝž à›èúÐÓ |«ÒÞ;\׺[‚×à¹ÝãßX—ÉÝ ¼o{§øÎƒa£íŒåSH™Ô"¦q¤lËššÖ¢vEÝ®€ˆ1Âr†œ._úÙý¸8ùdޏЖ Éɲ-ÔÜçyL†sœõ4n œ\×bùçÔÁŸâ9 ¯•ãyX.Çs˜-lâ`wð*P†ø½‚7¢¢€¸Y<+}£¾I‚Š¡•¨:]ž^Ù ª×–O­z*T}SmcªÉj\ a=ÓÃZB@³ÀÛë`ˆ1 7Ü Ò)×É*º6HÚ2ošï°¿Pm®¹ ŽåÏ ®>ÿuþÛP¶¥ð³â…àY[e7§ÆîvŒ϶š ŽdðXíaŽEàû¸æ‡ ôqwó„ƒÑíú^Pº{ú&‚%—ʳ ^8Îö”]]±¬j7ˆ»Íwš>ƒÈu‘Þe²x] 9ƒý8ø©is±¶Ÿ"o•=â[Ñ”ž¦Q–[@ÜjØgJ =%u-–Nýüp†2”/”Í¢ÈWÅ:ñ èõýò¯3†sÀÆúKõ»Zò¢MH‚èÁ °Ûk¶;Úö¨-Ów„‰7wmÚ ÞÂóiùSA¿ÆùœóèO·›l ´ðþ¡Ý Hÿ!ú0oµaÝâßlß àz®r²}=¸eÕèê*Шú²z>¨c*/ØïÓJ÷0÷PòEiƒAm®¯ÐEÕ·è`Î×=zÈ“zÝrîÑ/†ê»eLkv‚˜ÎΟԖK×íôäA…væûÜPæÎÿº¨ X(o•׉i¢/€¼Z> ˜üÏ~«õÓçê~—L§7gZ×¾†‰¦Eæ`àeöÕµTþõGð—‘I"(¥J‘’Ú•ú;â.pµóݦoñ,ËÅË žªØäRÈ0À†# üㇰ†r^)U6@áÅÅ¥ áÀC{úœçžüÚ÷íPpœw÷Ñ•ó oTPï­}_1Îoûg@t vvJ`øÕ ‰ ¾òð_÷^­Õ&è©rTn¨jR½ÜßÖply˜ÏÙ ˆ¦¤“4é$C©¯|FÕ;P²Ä±Âw48ž2§á>ˆÜÕ-ºG]‹ä—©?‚†b”è#:@@ûƒ¡ù0)¬(jTÜX#\#ÁØTPZ€ùaó ÓÀ9C.yžJ¨}ûG±{_ü…j–R%m‹¢J†ÀÞØo,ßG€\~4!g2„4¯šoŸ Jxíåâ#ÿû\lHÙ==vóKð\æUà§ßGý×eúMÌGüÇ;ýv¸ßæûí2¿»·ýÂý þ;ç¿.˜XÂÞ2V&e†ì \†\@ùÙ \&²Hîf”¥‡*¨1Aéõ®­š¶ih‚ˆÁ‘ë#­u-’_¦Þöçwͺ:{;4þ´Õ³íìp"'rùëp>¿ð`i&ÐæÄ6L¨€ùv\œMéÇ¢5ß‹Õà9cÿØ‘ ö7òš.â:ï®õâ÷òZ#ý}Íò ¿½¸ÀùC¿Ýë·üv•ÿ<—¼Ø›±ÚoOûíÏæ«ü.Îùí-âÛA}Øü¨9Ôƒ¦xÓ+ ÂÉ ¨â,¹üÔ]ªø×Ìä{¾÷'ÚFÙ ÜI²§:‚6bÓ8Ó1Ó¡?,Üÿ1ê­à^ <4"o½:~(v[vèa°7ñt—7Cu{¯š 7–wË… ‰ÇÅ]üTsý"$€wXÏàÍÔnõmÏjÇwÎbкVî­Zr¾··ïào"Pé·Eg ýöâ(£ëïìÅ×Ký¶äï^ÿOÍÝ¿ØÔ¹øK”(úŠh0v ìð,mŠe)GÚÅüÀaÈ d9˜¡à+ð òÝz¦r­z?(éæ·lßz¯¡³±Dú:þñ¢Þ ^\‡7î \4RÊ3eß¾¡Æ1ÖpÎZx¶l2xó=¡õá[XÆ?P!Á?°³™]ìß­½>|½½ïú:ƒê©ð.öèIú0~jbü´Äúω¿É¤-­µúu‡úOŽ è]ÃKB_ú‹»ÅXàKÞ’«Aô&q´‰Z¦ö^^VT¹ ”ËÍÏØ!¾CâÛ).0´2~gjV×…üõÔ[Á_ÄúˆíŒÍÍ;·ÚÛzÝq œ:[tOe[¨içŠð´=A*_Ñœ ùÿ…ïˆ ŒP‘¢Dœq@ íAÎNqØC_.‡z³îõ†Zã}œÞt×*ó*S<Ä6LÉOl 1_ÄWÇ8€Ù¼É _•O3¸N4% Ÿ»y{±ÏÝ[xLû‚7F솖o\{Ù‹`Ýfmj½½® ùë©÷‚}ŵb$˜Ú˜^6}­Ù›>É­3ßhzNVå•—\ÅñeïT&€ºYÕÔ‰ öˆUbˆt’ò(§9\O?ºƒñ¨a›:Œ?˜Fš6˜fêjú°+ùÊWüçÚÖôýé_k½WÞ7$ƒïîˆÏÃn„Ä‘éRNC‚)î£èkA}Qm£¸AVQâÁþnÍΠ`S©³²h7? °ƒíñãÀ¶Ëæñª˜/^¨ëRþzêO/Í/áŇÌM|6±°Gë›»ÆlȆóO•¸+¹J3¥-„|ø7ëM`êb|Þ Ê.1J¹(äŒÌã—êZµ Œ³Ì˜:ƒzÔZnùÄnu¯:è©ý9›¬›Xêßßgmlî †wb7DgCd㘗¢nËósæPY[5\oºg@ñk{í?@õ7Þƒ¢oØ9£ D3#î3¦`.ØãåS¦È>Ö¬A‹Ásƒ .Ôu!;—N ‘E,d.hŸk[´ÙP}MÅ]åoC̾ÐW@àT㣬€Ó­óæåçƒo/[›l’Cp›¸J/à e œ}ìLTî `B ñMóT^á[`œÿó>©ëÿ¡~»µÖÈÏj­g¨¨Û z”·Ä; ~¨8vï©¡Á¡š9 íÂR_NmŸ¸ öÙwùî給£¶5`ºÝ²×2””3Êu]ÈßÎ¥SÃÿÚWÚÓ¾›ÀÙÌQéˆé¶Í½ ÁèÃáÇÀ6Íb3ï5KùNyÄleˆÈå-åvÑ Äñ†x ”¯ gÕËÁ0Çò°¥%ˆ&ênep²®KøOh^k.ޏ»×ZCÇ€M¶ÉPÖͶ×,ËÁÒÃô°)"¯Ë ƒ¤‰qg¢§AÌÈȨðÖ`½Ê2ÓR„Hj]î÷séÕð~Ä â‚¨¥»áu ÈMŒÅª5Åz54Ù•œòÈ4©ò°™Í8€aœç(gÕ¡ÊMèT¦‹,È[~à­£û@ñœª0ÎÙ’Úl+ÏÔuIÿŽÎ~Û¾Ö8ýýþQ}"o m:^Ö«y/H Mû(Ù A󃬟€<¡ŸÃz¾Bûô»ô¶²þf|Ó´ÄN©\ݵ×u!;—¬àiÂ5âMàñ:ÈgØb«˜Æ0œSǪ_ÛD(/¡hØ©5@½Cõ%Ýü¹%¬‰ml€oµá‚üIG…»Œ¯µzíÂv”^j…ò ˜˜Ç›`êišo\Æõ!C,heœ×^i•/X¸ƒ™À ¼@&Ð4Y^×¥ûý\²M2™ fƒxA<­‚ vН°‚÷@ß)]2ô™ú&™ úú*y ô§õÏeH‡<'CA<¡Þ tã¦LÉ ÌQº*ÁÀÿçü»N?ÊÛÂÿ63üÖ?@ø¶„ÿsD™ß.ò_×ÉoM~ëï&•yþcÿfÿ$2ýZoŒï1p4¨yß1¼C}“}§A ÙY^r)°D±X¬Œ¹JÞ'M ÷ñMÙ_ ]]õ÷sé ¾…˜ÄC Ö+Ä×À(‘#Î^ªý]jÿwŠÁOi¨k_?Èf¶°)=@YiZ`ôo(9Ê{ÀJÿùÿhÓ?ââß/¦ òÜÅ‘Ðy<ÎCàûV飀ïu¤R¾Ýêt5 ¼/*+•q µÆÃA›þ/“Ä.ÎÕ™RkÌ#üïßÇ9ÚÕÊ—L(»<ÜÕžç•âsñp ê,%T‰61\†€ïvm°ï{ ¹l,ÿÄ ;~-—®à¯b8S@´½” ^ËE1àÄI5øW3ýs~›Ù J¦š§¼F—Ùl~ÄUʵJ&ü˜Mëâr–äâg\̤à¯yÅ‚ZëóO2«ž¦H¥ î Þxä/‹rFL‚Ѧˆë  qhŸàùPq»©£ñFð^ï¿‹5úÝ~뼸§Ö7ÖZ=וî.‡ŠÕe+<àö>î ñšXÏ› â‰#ÄÇb•X„ñ™Üòr}üäÖËuuÔßÏ¥Û†7’ úáâ1 °Ð«6–ÜJ#৺ð"ßåu>ƒÛp¥¡'Ø¢lÑV#Tëj’*@;É\¥ÀAºß^Ìpñ à·þ‡[ßÓ<Ã\p$Øl1`þ$¦02 ¢—%î„´Êä 7‚ikàœ€}À¢˜¹àÓ\{Ü T?xþÀ…'¡JžZu~ TÝwa@aW°>âøÌ ˜šÈArH“Gõ7•´w¼¯xï×p{OÇ óuÔLÀK´O;°ðЂ¶t^•WÊãÀ,ù¬¾ xM~Èt` ð\]÷·sé þ8&âAÞO¤¸äXlô È_5J¸åR0Ž4¶24Û¹À`[Ÿ¼êxð¯€ñŒÿü¡~{qÖ£ÃoÿVk¼;•·”!àT0 ””̤´ñu¬åÆ] û¾–o4vCVt†ž2 ¬´5>ÄǃàIô.ôVÀñø“=ÏZàðéÝWôAî¨ïï‹-÷ä¢3ë@]ñHÕ P*åjy¸…£ä€ìîk§ß® îrпÓMú~ L¸¸€óþGT¬ ÇJ§¼äãz­°×ä­À@~i&þŸšKWð’,àc )ó·£½?žñ¯.O¾Áû`X`èc¨ëž€vÖànCÕÚÅó!~ëŸ~K„ß¾Skô›j­ýž÷‚N‚yv‹ÒFÛ ÏëÃ2ú½ ^K=––ël{¬ÛÀ6DzÜê­êKêC@òÁ@´¡Ôд‹_›sQ+^tµ¡U‰1â2¨ØbÓ-AØ-Ú6òB“”¾7w¿ 2Z6–õ4„ôy&èè!¾õZè£åõ2ô§ôgõEÔFÈâræ ¬K_°Í°Å[B@P€Á–9ýŽÝ™ó,”åäæåïyÝ™[r_ùœ|M´w}S}¥à)v4tnݤÔ¦>ž€ý(¬ VðÁ ?’Fýi>Ù—ÎÀhùÔ¢Až‘SåèºæïçÒ|CˆÇyDwÑIíšÕ_ÃZ¾`;¨©ß©SÁ’l~ÀüˆÃ¦6Æ«@÷ŠCâ%@J ðbíe¾¿Ù¤µ=ñå¸I¾¸Yfö>ˆŸ”°5vˆOÄãâ~àˆÜ)÷òS*¾_‹?SË©òyù"Gì€ðŽ¡‡B4wÇnÊÙ?tXÈ£ ÷7ø@¶õ=£¥ƒ6Ìù¥+|¯yò<¿¡Ÿ¥6cZ5Añ ?çå\àN=P{8Å<î¯ë þ~.]Á‡‚:Ð H þoÿÁ*>c –*Åêz°ÞgÙmNQdzÝ4ô µDÌ'Ž(Ðü+öû#f„΃°ñ™“ÒÚAÌ• î‰Õ èû€!Öm _‘oÉU w°‹}üó, ¿€<ÍŠ€+éDk0~jè¤îswëë'`’¡+‚í 7~aLúi­µ%€ËïÞ ͵Æ3¼|•ÚgɧHI$ÉT}È{ä=8LJ²wG^äÒüQŽ";˜€ä¹üi…~™µò ¹Ô‡Ôï•—À’eža> b¨ùqÓ· ¬vTvƒ<ÄúóY¤CP¸çcÞ‡ŒQ;ΚÖ{lC¬Ñ 7ÑÉX~žÉë75µ~äâõS.‘wÈG@½Ý8Å`óÊ@m;(ƒ÷T¡Ld(oxù:‚{œ;×}xÎzïòN’K>Ð$ïq­Ô@Ž—ôŽÀ ù‹ë:¨¿ŸKWðñ88 Ü$OÈ ZRÆW€†ø5ê2|JAi)ìb=¨FC¼r;(»Œc +@Fª[”ÅmàxÉæ°ÆAÐÞ¤•ñ= clÖ¼ÔR°Jkµå è×êõ?bƒ^ÿT¹•żÊnÃ\5 ¬ã,© ¼§>«†¨¢€]¼zMà™énêîžD¯Ù» 8Å9 €L2È™)seSt³æ^äaÙùwúú'àÒ| €¦ÂÌ+@4*»ÁŸlé—ñùÓs'båˆW©Ï‚lL3Nå[Ã*ÃG”ÁŠ´ÈPÜŠ[ýÄœŠZ‘Æ9ÆjÃX!2YvøË{D~Ì& Tƒº I–ÃæS îW+Õy üùqÄÇÞÙ¾àåîé ^Ý·T»8C®¿?>RDÌ”€˜G„LmÖ] ®àêÑÖ¿çÒü1j'lÝ A~B­ÐÿÝŽØrÈ÷0”ãÃÕ .SïSÓ@¸Õ¿©ÃÁ:'bOXXÒC> ~ÄPqF¸A4&'`ÇýcNš?‚Cl”›AyO9¨,ã0óHóç LQW+÷1þóô+äIÐ>ð=§¥‚–¥-Ô J¨ÎRN÷ªÊv0¿mبƒw–ç¼g3hIúr½â¿Æÿ4—®à“ü#‡÷bÁ¢Cíš×_½òÚ¿Y}èJ+[Ärñˆ½b–Øúr(o}±2Ké ¡‰qŸG7 C䈰± fŠib ÈÓòs¶g)¤ÄâF‚ºXq(³Áp³:[ñ‚ºL©Vf‚˜!Æ1¨¦¿0ü3ö³ŠO@9hh§îÃ;–Ñæa 2Ôjæ^Æá†à:ã|À©ƒ{ºû}ÏŸbÇÕ߯¥+x³,£ H”ŸÉÏ€`rÈä¯Û¿U´¢© ˇõÏÀ³Çköý[ç÷ðìñŽð5Ï×Öö–¾_“:4ùnˆž—´¢;í…<ÇbPz¯Ø >ƒV­¿ …ÛÊb*ß‚³zAãÒ\(p”½RÙ|×kõ- ‚ÄI±þ‡Ò_@.“O³ ' ߀mnÐ=ïƒxǪÎ_×ÚóôÖæyæ`kpMk ùÓ}@ ²I–ɵ|Æù†‰êµ`I5¦ªmÀ9ÊYì˜îµî¯ÜÒÅ/¿†KWðG9Æ1·q÷€\Ç6ðã®süÒ öEâiq?¸ïôÌõÝ†Š«Öƒ×U6­|x>õòZÁ}4¼8Ô)粟N‰·Ä/‹i Œa4Cçå òuàñƒÀ±Þu' œ?mÊO„=\{®68T8ì™ÎIî. ½²™ŒÑ8¢ùåÄG1LÞ¦å擦~.dpi¬éapõe Ã@oð¼õ3\|c`ØX›[nÚÓ’¦ —³/Á¸Öp¯zLša‡ú%¸?p7wåƒçœÇãùSæ'ùu\º‚÷âÅ SL1PC¬áWwŠþ¢·H†ªUIöÏáT~ÎÁ³ÇAë[<£l!ØîU¾T[‚±KÔàp7-½>ä°Y&™W­hL$¢ Ç~gC—€êg’§GõŽ/€¬ÜVŸ·É£]hÙr?(í]µJr*¦Um Å'b1FпÚP6–©²XXß´¬è^1g£nÑ,`†µ?xî6¶2܆ k:o1'˜ì`¸^Ù£ÜDø›4'9ÇPŒâYñ (/)ëÄýàÛá[賂6\­Õã}p/]Á hĆ P1 Ó¿8ÿç»â P.WF‰Ë ºQuJõ 8Wš3élÐ’+zTƒÀk,Ѧ"°5Œê±ŒaaNñ$‹Ä« šJà%&Š‘Pî©ÞZÓJ>µ›ÜïBÒƒ©ë3áYb«“mBÒðÔŒŒ¡´³}™Ç Usk’Ÿ€X!d8ˆ ¬ü ÿe;y9×€%Ä|½éiˆŒŒ ?JYЉ€«ÁW`9ev€úŒe—ùP:¨m”€·Ånað§ÉvÔîI%ÖŠÙbˆ3¼"‚Ì‘{ä Ce„uc!p*èÁÖ$KPR †$oŠc"ØÃæ‹9l€Ú&Ÿr©ü„O@>ÃZù1ˆeâ}Ö€˜)¦ót]‡ö·sé ÞàÏs,Ÿ’/f¶ò-€0üØÿó¦M Œ@.%T‚¬$ x¦Ù½5/@Õ‡Úv†òç½;½ñ`m¯E¿ Ùï4ÉÚ+‚&T¼_ï#¹¼údí m°B=nº í¬ã›ƒ¡½qŒ©9ˆãb¿Ø¢…²WBU_7­ñ¸rZõáx)åç©óþaºoy”3œ1EHQƆ\ÃJ0² Ë æ[g[¾Å£>¨æO‹]b9PÂiòøiŠCÁƒ^$Öï}¼>F^ ê3êfÃÇ žW©‡ë:¸¿G—*ø@N^”zÐEŽQ4`4Oó#‹åâ5ñ<è¯ê_èŠöQºJBÏ}~aˆ.ÅæÒ àéeŠ0~¶i /ÄM€äª”e‰ÛÁj²î¶„\̹|ÕZCí(º¿,·r (½,#+ ùhÌ””1`¼Ý´ÔüóMºŠïE(yÆñÆû€9J–>¤]Þ ™G)9€#VÀƒïÇ¥,üì¸-aÄGı ” õUàN7”¾e†aŒúˆ‰Ï6Z&“¦)Éă7Ów»fÏW¾­„ ³ì² Sš)Ø´¥®ƒûÛ¹tkøµr¦lò¨ž©]y§ — Áü|N‹aáÂÚ#Úmœ¸îä 3ÝàœûÐ;ÇÛB@÷ê÷j‚íépGh"´Š/‹éa)Á#ƒ`|XªfxŸ»Dðô÷­Öf@Nø…mÅù œ¶vzl×ì.°ÎµVZÿ,׊cŠS_ó$K$pP¼¨˜ÁW©-ÓvSYÀé$þ¸Nöç\,O5:>àG9 ”I‹ŒQ.BÅ>Pƒ¢Þâ ¥·ˆŠåaNÖÚ½°DWš‘ž^Å ÎáÞ®¾Þ`}ÝÖ#°%XR-•–ŒºîoçÒü!fÉ oлj&`•LÔŸŒÿ8ê(¨m³{@”ˆDá™%gÉ5Pxó¹½y] ¨üìœÜX0èKô!lP|‹˜N\3<êS¹J8 Ds„{Å zßñ÷ƒÚ§Jw›ŒOXÖõuÛ×¶# æŠ⑟Ü5„G߀и°±Ï”Ùj ØËjnu\úù¾ÜÜ!F‹áÿ¢ÜD ʃò è/é3µ™@€xæ 2®7¦%Êñ>pŽ­ò[~<]iI*¸ïñ~ã‹g¢{²ï°¶±~jíædÓSê-—¬àåIù]ANÖ µ8`“¬–³!Dÿtž˜(næð ÐÚk‹ÁždÄ¡BÕÑsîüMPµ¨È]ºÜÃm;­wCÒ“\é} Û6 b®Ø"ÞÖÈçåB¨Ùîlæ UCkB]FÞÕ7ö^ ÏŽœ â&1@t’‰ ð'? á†k OChPxßðF O‹Þê¨>Qç|äuú›ú`cö ìõïMÕ‹.¢ˆkI#t§¦i=AnäQ1 +ÍFs(—)}pŒõ| ý½Z ÃÚºK毟.ä20j¦…¦2PF+ÙJ=VM=vý8ÄhÙ ˆ×hKAΖËõ€™HjÓÐ ˆ(**ÀÙÍiw™!Ï›]ð¸–從?´ÓŽwœÀ=<¢"t9¤|ÚøáŒ{ ¹qRX½ 2EªÐv„ Ê×VQ3òo(»£z*$ôH¾?m#ÄŒˆŸ™ð/Ú¾†— _C0!î»A¿]Ø”å`ÿÂñ˜«+èÈ=Òâ.®¦×ÿ½h^;Rª·•/ë_÷2ßL- ´îîû¼W‚r¥ì/GƒázË!Ó— Æ* ÕÎ ÷ËÙÿMFT€'Š”×ANUZî%Uù\ý³nëóopé þ„œ A/ÑÚzã@éAúã BH$ƒG.•ÓJ˜rʯ( ©°ÃûîöÇ‚§Eî­ù!´Ÿa¯¡7X}q[c›BÂçù=ãÇÆ &p5ýADð…x ªÎÓgÕ¼ë‘OÄN‹³BØôÐCÃþ¹»j#5Um÷Κ r·@ýjnuwð>ò=idpƒèMËð_‰·Äsàë)öÊß« _HåØª`Üæ{Ï׌ŸYZúƒ¡~©<ìå}þèhø;EœÑ^é¤v¥‰¡Â´x] n®ë þ~.^_íâ=ÏYïUÞ7Áu»s§ã˜ÊÔâ}0ÎU·ŠÛ@n!… ð2!‹%ÊKà_ÝÃ~?äå[’ó=øv”»+{@àÆpCèiˆz«qn† «CÞ þ”n"ŽtðIÙM·ªÕÅö>à™…GÁEQ«âC`ÏàªS`jxÔpÇ?w_ž”y²|Oø¾ö-–sZÞ†9ʇ"xˆî¾ám*ø1'åED‚ˆ:Ô¼]ÓÔÑr[’·¼Êò+;@ÀB±Q°ÙƒN¤ƒzÆp¥að2äL š‚X$Æ0«ÚCMåzÃÑÄ‘#²ÜøÈ\o¸tjx'Pµ»ÊRÕÊ+ÝQ2Bo°6} ¶Pó"ÓÀ'œ¤x„©Ìš¡Î«œAõТµeCÀ½úÂäÂo z·§=sâ qE=¢ù¶F6Š 9d™ (¿ß.mºîƒÜWŠ^,_ò¬q²m¤?‘•Ñè&°Nr^:5èÜa8U}`ã‘e`¹Pô~Ù• <\ô˜Ó2“/ƒÔøÔ½I^|Ø6ÀšòuFÉ~ Uêš\LåÏÙo¹Å$ÎBÃÅiÅ鯂åo–=–_1PãÙîîéV ÿ¡¼èÜBPôó¾W!jzè®àwA]¤4PƒÈ=ü£•SKÄq± <œ#\Ï@EeñôÒéPu^k¯Wƒµ*ú›ˆ×!µ:uarl˜d2\jĥ߬? ÕßÔä8ΉêûÆ»!tnøðÈ0ì2džýårüÙ¹t²*g—w†ªue‹KÆB`Kk¸ùA°D›w˜šƒ¸›¥Ì>æî‚üwÎqa=䥟|ñLðªçÏ ±2ñ£øÉÕ!m~òhp¥Í†BCšú%Ø›Õ\ᬆ¢/*ž©Þ!Ý¢‡&´‚˜+ܘܬƒ¬ïZƒ(%¢ø—Ý÷Ýë‹õm€ªs£Ë7­õÖ¾é`›a âj‘*$°B®•›¨í•ñ6¬èª<'–ƒ¯ŸÓ㺪VúJ×:íê½`‰‹:q"c"…uSã c!€K€ÖE“ú\¸à)î[ž \nllÙ _K›˜~ÌOXŽY’ê:È¿ŸKGð I#¤˜›%d¯†´˜†ÝWƒò‘r« ¾vZ ß\pjÞ“r 8ßWšŒ©E[!¸CP÷ !@Úü[œ’¤ < Eùòr¬ò-(¶ó Ë£ÿ'ÛÁçb­xt»ö°ö&äîÎ\´ò&çdž]ÆçK¾+ŸÁZÊM `;±4l>p“è "@^%W xŽrÈ&´`h/)c'SÔ»LßúµêR;‰uèÿ õ^ð¾¹¾7}oAù[eýËŠ@Îò]*„ÆÙ¾7ŸeŽØ+bAH‘¤ôêYÕ!ö•pôšC†­ lÈùë/TBPœyµi ÄöofÎÞ‘¶„ý±Õ`³[?´¼Îu®D·€S‡sß,:Îêî€ÈnÛì¥æÓ ,!üXä' lU®R^ÿ÷Ë!·ÊV²ôs¾`oH—~Ä8 €0îüã?Ž Šxái•ßÊ8_}zây+œnŸ³ûl h=•ËE_H?ߨ,} $¿“quŠ BKÅ=À»—°bßn`MÙÆÑƃÆGî¤üªôÏj>æcЬ¾{}.Pʯ-ñ“e3 „¯8 誀¿‰eâ9ð>îä ƒ²…ê¦@UÔ¹©:ƒï‡É¹,ÎF«Ó­š›ÕW[gYïm¶†6d{Ù[V@ŧ5F÷n(ìRÝÝÓ}šèN™ 1ÓbnŒùØÁN¶×u°ÿsÔ_Áû‡¹µ¾¾§ÁÕÆž_Y Ü<ذŒ{ã }@» MÕ  ìÞÊáUkÏ]“å_g—ô¦Ì¬Ô5ÐèPÛ-zB@IÐ[MAî•9ò6(oÄ1.쯜ï*„Æí3nnø $ôHl´ ”Ë•û” L¿%“XÍNÇÍŽû¡jSÕ ÊjÌ5·1®ë\Sµq8`–Ÿ‘èxÈõ^å>¥”dT†•o…}/íùÛÁ(¨Ê­Ì¿ÂÏEn ›m"»ZÚö‚èfqË£’@<(á=H”“ trE@åðÊ:–|Y aW6¶.‚À¶iæ<7¢rä|:0ô½,g.”}[<»ô4Þ¼»Õ!Pmrö,ìƒÍb²·B3¥Å¸ÆÒ)dDp.èáúÍz2øB|Ç´[ ¯kÉêª`½ƒÕèE~WöÄÆ;À:ÒºÖv°¸_oÛð¹™¹³Îw†ÓNô:¶DÎ þ ¢û…u nr6‡(ý*ý:ýe8; G9k‚¼s¹Ùùó þÖŒy©%hO%y"„t ê°\ÅÞL_"ÒÎL‡škÅnËjèüÜåWöø"FF–E ýÏ•£|\Ù ²•PÖ¤xrÑZ_ü‚m1ް²ØÅaàiæñدt;=P<9ÿÖâ±P¶á\ç¼G!pcL÷('ÄoküLÆQ* Ê t¡©Z¦®_‰oŒ¶ÓÜ‘žJ(Ó=PîCH '¬4ø>±VÖ¼òVÞšr2à L› Ú ÑLܹž’6U{ÀeS'ÆCíÙ%MûCÚþô2Þ#ÂEøïvûÿC‹òmòšÁ÷„÷÷XPÎ+7 (¹Ê~e#èMõ…ú‡à08Ë]ŸÁ±¿Š;ÖÎ~z¦øüˆo—ñ\ÊYÈ>ÝlrV,4ø0Á³ Ä ¡‰ƒPøL©§b/ì¬ìè´‚>Úf ë És3Öf@Ìë±ã¢wmwç¥N½<›åDýQA2P{øTÞ'[áÜÈX(YV:©l9lËÚºt×lP¯Ãš4Ëþ8½(Å›J5}>ª°Ê’<­•Óк{§ñÝZAb»¤¬”20äî3¼ ô¥7ýÿ€rLÒûkñ “µ»|¯È2„O˜„÷çžÏ·WqaoáCpþÖÓ/å>jÑRé—Ùºœj7 ¢VÄ=ó øfú¶h·ƒ«Ò£yÇÁ‘öçb s„ᙀFÐaY·Õ=_ƒÈç£ÎFÿü—ʈ±þ>ÑýzêoÜGoCå¹x”\ÖBņʪ‰ݧÂÎÝû?úYNCèTÑ>£Åh¬5ÍËúNî½Ð·äNPFµÒÚ¥¼‘Ù $µK)ë ÷ax©øãŠ!»ê_h/€<©}ç ˲5ÊŒ—©/BeÇ ã+“a‡óë±ßî…ªÕíß@RRÚŽäLÈø.ÃÓ°Âï mÜÊ^©ôV?9å7.{ Bs,Ik Æ¥=œm…Xâ6ÅߦMšîü™#¿”Ùì¡þñ52xä[bŠÐ/‘T@ñ‰Ò¦WBÅ3USí¥”Ñ<ùVˆw%®Lèê ÀžAa )–÷B~€ØÅ wgÝ ÒoÉÌÀC_%LxEÅ_ ÙA/ÐZ€<¦ûöüŒ[e'¨Š«c…ÓNM;?7:ðá±H{"êÑð hUжCó<þDÈGà¨tu_%…Õ©î`ðä}AwAb§´îÙ‰|ªáõiÃÁ|ؼÙ"@d ƒ¨¿ÕÝo¦Þ ^­4®5-õãËíà9åÛ§m†ªâêù5M x|ðµÀ°vƒö\± –E/zJ¾wŽ‘!íPó†—!õ‘Œ‡37Cð{Á•ÁÀúsÅèøsd¹¬”U èÁú+ ÖÊ z výk¹rÎúî\ì·Ì?>‡Ü$×AÓ§›_ÛèshÑ UTÓ ï$‡@87³hxYc¨yR4üé›T·°CL·øÁ ¡`êjZdZ¸pý¸[øÿ õö;Ú7¢T„‰Þ÷,œ¦èpá>°™­;Ìà ¡*~VÌ8w[ñ+^òÄ\™x¤,Ȫhz8’2Sò -àžÀ£ âD„èóÇû-çËUr ¸V¸–¹ÞnÔ­¾·ÀrØØJí²HË`OÏý1G#ÝrÆžÝæw½­]Ch<¬Idf4ˆžÊñ$½Yq¼Jƒš²±©FNH8‰Ï¦¦ÞÓ"?ÊyŽK`ŸÕßK½|äQ磎÷ëôâìHÈ?Õ‰xOh\€±¹¡6ƒÐM¶>Ñ¥?¼áå™×B⽩;2>‚ [‚Ú÷¾g8_ü÷üÖJµ"í„ôS׎üfi@Cp·rº—Ïù™s)&šÐ‚–ÅÅ£S¾®kgÁ³ÚsÐSyÏå Í‹ƒ‚1Ç{îÝÅq§VÎ…ŠOÊŽUv„¤»Þˆm±5Ñ×Ẽª(çH÷b(\nò 0·/Œ]M{µnÕ¾D¸"o‹zÌQæ6æK`¡ÆEý|=C+Ôz,TßP5²j$ì;²cý—qpúÈÍßgAÔ‘çR °m`@€ Ê ¦m–Rpãe“¦‰!]£{BìÎäF©ñy<ë\v ÿà=¤.êm“¦¾¢*J„>úCè`œblßdãG½Á²?èÚÐ;¡¢§{œ÷ ¸yÇÈ(HÈJí—œ ™]²?oÒ ¢b£F·¦ð$OÕu©êÕðuLù›ekË@ј™ù}Áa¬ú¤2lSg6…Ðéáó"Ü`uÜt7Ø*m“lÀmH1Ô㤦uÅ_5|æ ß¡#¨œ_õBuK°Ymç­Û!@³9m>o…ŸçÅü‹Ÿ¿jø¿øŸâÿ;?A_\%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr6.svgDYäIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr7.png0000644000175000017500000004252112240014740024042 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>CÔIDATxÚíwxTÕÚ·ïµ§O2éôB!ô‚JSº(bA,¨(J(Á¢¨`C@•.]zOI ½Îdúìõý‘ žöêùÞsÞ‡ûº¸žkÂ콟µ×o¯yö*ϲnpƒÿ”ºvà7ø¿ä†àoð_Å Áß࿊‚¿ÁÚºvà¿u§4ɶàÚâÜì\ ŽBÇGŽûÀãpOw÷ï2__o{PøšûZƒHÝ”›A›£MÐ6ݽEß “ û 1`XaøÑpttiºP`¹ œ¯8;蝹U=ªà~Íì|Ô·}•¾• OÈ6Òa¬ìœ¦’sÀ’èr11âÐ[ { =Á¿£ÿIKc°,³ì¶œq»h%ëúnþ1â¿®—ƇM6€‡x€û@’}dO`6ÓädÀ&Ø;D1xŽ Lq«è%ú‚|Z>*i‘Yœåù)`ÀA `Æ„ ( €†P‘4˜€<ÊM`M¶úYµPðxþù‚ ÷‘‹ú ßCù³eËJ@õZÛTkØ´?çÚ­ÚöÚV`) 8 ¡~a >ȾjCõnÓÕtuÈcôd¤<¢4Ö‹Í òáÔ|¾b¾Æ¾Sø)cÀ÷¡ÜÊM 9§®÷ƒþ²<墙|ÇÛX¡6õ5ÙLm¯úßÈ0¹ä°øBÜ#æé%¢Áû!iÊpWñ˜î]ð|¥ýÀ´ Ò”Œ›î„´¥ ›¦?º1Úm%ð>óx¥®kù7®ÿæNÆñ”í,í] T|QñZùðttõv*`3WzËVƒ5­üÓ²_ :Âf´ZA]£ÚÔRÐw6>`\~zÿ;,÷ƒÞeH0™¡ªSEïòt(θüqΠNtéì}@|"û¨ù ÒEœu*ÑxFóºîe …pÑ|SÜÙŽs`.ÒE)ë!ìË€~ ¢_Ø–àÓàmáŸú¥ºtíã EûŒ¦3øvùf«aàâæn¶)öíÎP•n;jË€Š"ë,û¨ºÇ®8_oºÚLÆ@Ø… Vþ{ nm½©M à=ÿöæÖ ¢-×<rƒYŒ ˆpÀ…‚Ä4Z2è€#TDZÏT/‡¼ç ”ƒ¬®—»ÜÎo§@µ€¦2Bq@Jpê©É C7O_×ø×_ žlr@=§W@u\õÆê±pðä>ÛžNpúø±A‡Ç:Øõzõˆ|; ³i4Ô+ ]ø-®óïa¾ ¼ïûúªÁ±Õ5Ñö¡Î[Üp¶wö …€5~~&#Ô{3ìΠ“ ¿¬ýT» ÄhÄà½o|zUßü‡›Ÿ6%f¿æu¥/ˆ¼"¦gÉ’9@8à|sø°q´}@~ÅYª€áòM¹da*°’ur+pLžáÈ\.S"”`Ž¢%À½ô·‚Ë0‡èŒ¡Ÿh "ŽPAŽäU¹¤”,+å:YärСý‡¿÷‰Ô+^O‹A$‹¾ù€Ã=pvXöÚ¼!P˜i{Ý{ÄNÎÈnÕ’#ÒoxÂn µ‡µ¨k‘\O‚¯%?üò¢ËmáŒæÄ“GšAöèê)É‘ö yº9n`½C »¬[¢ ÒÀ?J!›ÅæñÔ#Äpp+ð˜BO` 7‹6ÀSr–\ ÒK†¼äNy€ã€jìüúà]wÔ>¢·¸™¶ ÷ËÜÊíUõlÏBáYë­Î»¡ì´¸ÃR7´8ÓúuH>“¼&å*¸×¾à§1ƒ—@=¥QwÀ–®›B6î†,å¸åàlè´'ãdb„¾°Ê,hNk>QF4$ !Àƒ_]æÚA4£) ÷qŒS`uuŽ€¢žUI+äÕs¾¡k MŠZ®k;R·¦¤Ý^×^_Ož&ž!ž;¡`mA~þ‹àzÒú@ùn°,×`=øg˜0œýÝ~m2ˆgÅÝ@(Á.Üxëº× á"Œ`jºyUð„y¦z\à¹É[ìÛ ¦if‡y è–èwé5uíìo\ó‚w®t$:öéÜáÇn±Àk¿R.ÄäFlý<í›Ú½ OÉ›å³ w²c€7jBQ×¥¸iC#‘8pá »u[õ·`ýÙauŸ‚ðU£ºe±Åa¹ b÷+\»Ý’ÎcP½¸ZØœpþÙ“›ŽU@ÂsA½õ/Arvì„bÀJ) J)Í@9 ¶ºvþ:àfšRŸÁ»¡|¸u}T ÷|§Q ñgÑ…Ñ?A@»€·G×óE];} ÞÓÀó÷28 ª‹ªÏƒa8«V€ñgíA¥4ß)iJ2¨»eu4Èwä6& \MÃ×*±a´èÀù¨w½ïapÏP»jšƒß|å+Ð5Õ5×Úé©k—ái¬F[Š5*Ž”§–æAÈC~÷º‚sc¥áïÈ|§Èæ†Ðÿ]Ô†0´%‰PGÄR1ÔÖ¼ª@m¡ÌÓþÚŸ´m´3'Gø®®þkVðU¥•?W½ËËÚ– Üí7Ö þƒM¥†0ïðÛJl8êÚÛëÑ…¶4ù¦Ü"/€;ËsÜóhö軚€i‰_gK?Ÿ ‹ro]{û÷\³‚W³Õ\ßð½å»Ó×”Å1”sÊ=¢P†•jjLÔºööúA„ˆKb¸/zŽy^‡Ë‹Ë&€ái³; Ä'%Oy´è¶é®ÂnÞkVðÆ™¦µ¦\0oõÛã7_»Wx;«Êý¶çI -hÈPæßŒh+ÊÄOàŠr¿ã9 ›–~ŸÿÅÀ8HÚ˜|!å#ÐåèüuêÚÛ¿çš|@wK€‘4:Ä•yöPW1ØÆ;ïs‚x‚~Ü ⇱®½½~ÇÅ[< žn¾o}’/ªº:º‚n­y…¥DeGUGÕÍóš4ÓêÚÛ¿çš¼ù!óyÓËt ØòXÎ;<{Á~ÆuÊsx@t¡1€ C]{{QÂA6ƒ)”q äëòõ߀f‰¶¿î -AÆ«sjÅUèÒŸtüue”Òt3ué%xšÈÎJ%ø^—ŸP>}„ÐY4§5/¯öºöú: ’lŽÏ‹#"”Jí]ˆæJ¼æB];÷Ç\³‚ÿµÅšeš8ðŸ´-Äâ/Úåú]`ÉânòCyÄÑ‹Îuííu€”edÍÁBà±M³¸KTŠ)uíÜsÍ Þ8ØtÙü ¤ökкÑ,»µcóá¢ýòØ¢ÛÀ3ÃÛÇ{D<…bg]{{ "@S;~,OÊLJø‚ 6(—•I f)-”ÙuíìsÍ Þð¼áÃ)H HÝ’vÄ#Æaþ“àòòÒ™•ƒÀ{—ï.U‚0ˆ]b!¿Íï¾ÁŸ#œ`‚@¤’@,8w~àºì»\ÑžQàß1°} L[L‹ÌgëÚÙ?æš¼V« ÒAè¡°‰aÛA¹ÏfîU¯¸æøÞuƒC*ÐI5Cáföž¯fA‰ˆ"‚P÷‹»¹Ä q@¬¥£h!, LPž·2K™,€2J"šƒ°—Èñ¨x@ ä·Ù™ÿ***ÐÔ¼Š®t %ˆŸÄz± ”•ᢠ(K•¯”) |­œW>åk¥LÙÊV圲 ”T‘&t šÑˆT@SÛrÿA Rˆ# è*ZÓª&ÛTû4¨ZýãVŸq$*¾ šxCðÿ‡xñàÝCªi9èï2%ø= Þ{|7«ƒ@}Vâ;"…Dbøí§úŸ¡G‡ä~sdkÙ•¡ 6PoRŸ_Oõ~u ø¶úN¨-À·Ü»^_žÏ õsõ”2N¶”}€œãâÿG¹´µ¨Ï0ƒ·AUŸV—¯ÚgS÷1o7ï:ðvñ^ôÞÞ[¼ßyÛ€7Á›ã½|Ôqê ³’µ€«6{ƒæzSÒE"Ñ@_:‰Pö²5ÅÖJ V‡ã3ˆêóX\c¼)´c]‹àÏÜÎë…2Ê(‡˜7âRãïOý\• r“ ?»ô3ø:†dû¿až`G`#Ò_FTa¥FP^ ŠpBAé(ÂEx·«_¨.¨>mÉ™ íŠÚ–Œ‚âÎ%1e-ÁVl3V·ŸÙ×Ü÷!èÓ ÷^‚wèA]!9,~]ìBî8Áh*‹5m€åÜ%G|MÞÉcÀI~’ûÎÜ)ú€˜$6óˆõ¢RœÙX¾Ì_Àú™½£äWl*N ·emÊé ¶æ¢ªx»:G:#w wøÞÔ®Ñö‚„MÉ/ÄÏæšõk”úÆ]ñòή ò+»Ÿ/‚¦ÿR¦ÇMI&W]‹à¹~XÓÿ­‰þ Úî‰ö7ly°¯éù×O çºy¢ÂÛ‡<ô —ýeͤ&¢IùS˜ žïmÞ÷¡¸wQUéÈsf@æT¸{þèÅ((¾=ÿɆ`¬¼Ãú4ønò>å› úx“4:!tETýð‰`›”qKšÂÆEyÂÇ€ñ“jÜ>_÷%h†i#µ¯‚¸Mé¬ôµ\}Ñ·¼o¹_ò6µ•÷}o<ÈIÞŸ*)ëX~ ä~vÞvq"dUžhrvTÍ-‰)› Þ¹Õìý@¾áíÝ®í<ígPEû-çC½è‘ù5,r@Ø@Ðgéöé6v&›üî~Z°àf¯Ü ênù=“Áý”ïùxÆÊJñ!&G‡ƒ&J£W®kü1×àõèуñãdc2ø¥L ܶï<-è ÖGs·×7žwÜA{«æKí`9le3ð¦xA< ršºQuB¹R9ÌZGnÝ?ûÈBØuð‹ßÅ‚!¨àH‘üw÷ñ|æ…êÝr (6–ȵà»M("Š#tQºùp±ÓÏýÅ€òJèìà40.ußæƒWF‚id`¦¥ ´Yú®ºtpßæ¼ÏÕª/o^q'8šW¼_õ0H»+Ñ%ÀÛ¥dPùrÐf–¾^>,ãª5Ž—!ü‚/Ûç2Õûå"P«¨f!TC/F‚sÎÙܬ&pz×]æ½àçó?jŽ‚ð•!§ƒß¾YòÀo·SÜ#úÐÔ¡ê›ò/àŠuõt÷¡Ñ< {ÌM,™n¥›rNÉNÖµþ×௼|½Îy@ýÜ×ÂûˆÏÕ^Î~›µï¢µ•Ûìœ-ú¤§¥šÀ0Qÿ¤. Ô")eø¦ûÆùràüÊÌK gÅÑØÓƒñdÎÊK½A¯u®p™ASZsYÍ~vÀÊš¿ë¿váÔúö÷3A.-Þ^ÚD_£Þ°Ü{ŒÏ>oœþ-ýz4Ë”¦ÀFïL_ø:º¤+”&®ùî)@¬·Ì祟ë)× Ð=ç™ìõÍÞšë)1ÀnàE‚”ö5÷ÛËæ€W_vÅ ¸äËži*dÜ“~.µÄâÐÃÊ 5÷O]8kt( ”pe8_p…¸2áÄž ŸæµíMþÂS Å¹†w5[ ¦XósÍøÆûu-?Ãõ#x.\àwLpÎ{=Û)ëK`yÞp§â‚â¸òÎîƒo*™PºÂÚl œÑ¡«B5à×Ìœfò¹[ze%ï,S¶ªŠ‹^.éÁwº{Ž‚øŽ¿¶†WâÞÚÏJƒk\Uk“ÕGÔɀФÆÊ±5ÿïý€~ê<`h°À°¦ö|¯²€ÛkÖ½ìrkþ_¾^k³½5,©1ºÃ5Ö±Êæî¶ç*«ìÞjO?ï@sÅzÞ"Þƒ@Œ®é}ò¼ëiâ}Š+ʆUÀéÉÙÑ—…†ƒZL|ê·N›Òð%з֟ÕÖuåÿy®Á;qâ„Ê;ªž¨lU•Öòt½` 1‡°#¦›ãNƒk£g‘Ç ÇCÏMÈšêjµHu@ʦø…1ÃAö“Pú…†úÐ 5hõƒ÷=e¦8šÇTxĉÚëþmeŸª1òÅÚÏW¦ÈVÖÚµ¶6é‘vníç+çkWk§×ž'ºöóßNq¾’ ûoþ~¥FµÇPûù9ò--[ñPÄWòPH5ë@fÉj¾á¾ßd(¼¹dXùfÈÌÌݒ߬ÉÎo#Ð4Ñ 2¼Æ)Æ› €ƒìÇZ{ˆºÁsýÞU#x륪ò*XV„B`‚ßQSzÍojà³àùÄÛÇWÔij…Z §¾Îüáb&”Š sU ¤›Sæ&¨û—ø/£K ¼8¡*F ‡ÿb:ñ=»xq†©5—•÷ÿIÿ®ôu_é ®µãjmP­-©µeµöÊüŸ?»ÐüÊV›ÀT ¨µýÅne>(IÚb­4šXm}Pú*”;Àê8ã< §²&ç< çvd¯Ì+§V-QºCÛ’N{º$@ã9ÍÆ·ª(¿×_?ýðžš~jû${¥ý08ž´7¯~ ÌѦ¾†Chõ_ç„ß²=È û£÷E•åc¿æÙP¹ÔZl Yír÷_î Ö¦N£+ÜùúOõCÙdÝTÝp7ÅÊ6`ýÿ§ŸòWk¸]Yñy©Ö^Y¥õ¯fTˆ¯µµ ¦½ÔXw'q;­¡ÚêýÙëÙë.» ÊáÔÏ翹¸²"óÒóG€ÕQí³ÇCõ1çb÷àyRùEÿ24ìß8©©¢ï‰Ys ý ×O ïÇÜ_º¾q ×û®\ï~R`™q&(¹J©èºÞÚéÚbˆÙ©„÷…ˆ°Ðü ³%¿~q ]z¦4ó%ðôöîôu…’QΜw‚õAÓv}í©þ@³Äs5y›dýº.øßPêÈ£¤ŽEŒg¸:é2µC@¡4çáô’ìØ¼ï!÷ö⎥o€ßËÆ½Æ·¡á/ɦø_@g4•øÏƒÒw½·ëO‚¹·ß·~.àZS3¢Z´º.ì¿Îõ#x/^¼àžâNwí÷IW óè»éúø·m•öÍà.qœ[@S¨é¥4Vó£Þb[F¶ »Ì«ŒïrA9£¹CÑÂÉ(ãíPVzffÖ"ЬͫۃYÚðS]ü¯k¬º‹xÊî×=¨}"ç&¶M†›nëâë°Bá-BbA¿Q»^¢D<ËJ“D•˜~Ÿ²Òд/˜—„ý!C©!hÊjjÆUÊõ#xµf¨Üûª÷ ¯¼Ã¼[=O¶æ/š® P”! öT×H x‘rˆ§y™bðkeÒƒe†ßZóDÐŽÑ•iPT:²|–F¼6tÙ£ò,€­zŽàÊËé•à°®&¦¹kmŸZ{³ˆ€Ïà¿vÆõ‹¶C£·Òz$_„€·ùßšÃÊûb8îv帗Á™6ÙgòB@¹lÊ ½ÉSSƦqqµ)(€__R¯A®Á×"o’ ² (ur/#s™b9n:ƒñrèwß?A&Ù¿O’ëkì{X-ºÓ”KZ­v˜-á–¾à»]¯½ÔÞÀ\GkOTkÝÖÓ3±µå©Mz$ã4fÍwx0ú©¨ú:4fIT0ú~Ðmi–Cå;à³ûËà*w=Ý!¯uÑÄ2'D¾Uÿá˜5Tš\/ež2¼fø²ŽÊöoäúyi½B•lH9`“ç("¸„°Šé_8Ï9“w@—§{\·üo²¤øµ:hÔn߈ÚïåÕÚº-¶x«Æºz×XÛíÆ1úiߨ(õ$ Jm•ô (”Ûx‚ò 1ø40‘ïÁÕÓ;@q·²PS¦\SµIb¨è&Z×mÿ\‚ßÁ&9ä§òy7PD 9Ôôcÿ+±g²H%Ô©r”º¼Oû}ï€.7ÈLàãÚï]ùüg))®\ó‰#j†Ä}µv@­½\û½[jí•L ÿ,D’sþE5ÆcÑ6×lgtH¯à®·´A‡äUàŒoýˆ&¢ƒÙT6§7`ÂE!p‰$†ì) 5s€ÕÊQ±_ì»$"ý»†¹~/kÿ­Á*»s(“N gó¿p¾g™)ƧÈÝØS¶f•™¶- +=}¼E  ªý^d­­ü›ãuµ¶¶¿]=DàYI&«À5EˆÀõ­øEÌ 'Aî®=îJFãÀZ«ü“óׯӲ¶ÇDæ™2AócŒ>Êޏ½Ñ !lk°P2ˆbqJür¶œ'?*)àБáb(o)okí •UšÕÀiNp¬®+÷ßÇõ#ø+mž‡÷X¸/Ç’RŠÐýKùiº0šû@MóLòºÁÕ£Zo¿ä1ß=¾m ®Ìý¾&]éW¿rG¯ì\^cgÄÑ Šz§î ¸ØÊÿ3säÄû51%Ë ¯éW€g'³y–šy1Mkí_q­Wkk§4x¿®±Ú¿~AXNBDÌK` ô?á7(`ŒœBMž¿öjQI>Atb$“@|¤ùQ3D ŧ$Tå'q·HkzþëEwAîšÃŸŸ¨ÍȂҒwÁ¯·;ÔmMí±£özmjŒ ¤XïV*`éõsøQhÓlH£÷!¨GÐÉ€^ æû¦©fÀC^~²¤š  »"ž¥—ÒYYb¶xTÙKÍ˰¥®+÷ßÇõ#ø+„QÈ # ÅC5 ¢¶¥’ÿ¨·áJ7 0€)âIPÏz›ø.€û{ŽÝ †Ù¾S¾ qíqWFJk'©‹iJ¸çVëÏ€;1þ`Ì[ ;½Óv%tèÓõîŽq¿268*Ä7b¯\ȸ°&·Ø,Ÿûµ‚â”=cYÕ-sº^Ê˧žG¼@™Æ}<ί¡’¼Ì|^‚j¡÷è"!ôþè—"ò¡Q›F…õ“ ðþ€§ýý@­”ƒeÍÃ8ƒ·m­à·°Gî6£ð*ˆ6J™fˆLe®ÒˆcWQ~÷ÿ-×ÏUm /Ûò®l²˜q²8M §3ú?Ø ÷·5žéb(wú½g“Ç žùÕß8úƒÚÒ;ß»¨~{%«™x²ÆV?(&ˆ pö itºå–ö{ õÁŽýZq‹böEYAwH×J÷ èZkgjN@ÂÁML œsWæøb—íûCe½È¯Ã׃:OÓ\³H®½î•?L|*‚(ò«4ÏCRÐ×;Áÿ¿®æRÐÑŽÒ`¦\$WðÛ/¡¥fãdi’=è êXÙSÞ¢¹Æ£yD/åYÍij~ ®á¦¿åúüöñ‘œ ¬—/É{€jJÉ4ÿs /ÚÒ„4`2o±\_¸#<¡àʱ/€œïèà¸h泩=ù-FϪ1²öåÒ}ÂÜÐÈÎñAÑoBÚSÍ÷5 „ʤ±#Á¸Á0EwÄ£¨(@¸üD¾¦.Æçõ¯@ôKõž‰\Í^ê°°åwÚç¦c­ß„êA»"ÁqQLÏÏÔ^¿»XÌ« hn` Ýz¿ æÎ ¹CÓBs D ÅK sȧˆšÇZјÁW Žñ-Oˆ·¥ohctÇô/ƒ®¿n‘Î˯y½Æ¸ŽŠRK¡¼›a@¶Œ‰ ½2Kfãÿ˜cr¤¸Wô©“I² TUØ4öÏÀÖ³²[Õ }Þæè Êõ'5DmK+‹L/pø+·ˆBÐi£wF~Ñ훿ÜHBôŠø7£3Áò’Ÿ×¼ÔÑê\¹ä+r¾\ r;‡9 j¨Ï§Þ ¾o}i¾·!u_ýù‰] iÿö“›—‚sNdBøëàX£ë¡û\ëw/&ŠÇA÷‘©¡¡èf›o¶ˆpB€YÈr~]”þë?­ES‘ÞÞÍ>=¸#=ñÞ½ EQ? t+tësø5ÍõÂõ$øš`d±<$÷‚|VÞ+%ì`; #ð×.¾€˜Ã ÆüHþ(/BÉ„²qBÅðbwi2èGØcG@ã“™Rô¯9Î÷–xX´„’÷L_š†@ØÚƧÓfÀÍž.a^†À÷XÌà‹òé}Ãù-[‚ò×/ÑrG8$G4ø¯3w4­€ø°GB€qV̤È[AæßÕtä•éÃÁÜIwМÔ-Ó}šËú}Úã@kF‹!@1'dæï zEðMiH}ðmô©j_ðè¼ë½A÷ž~¨a&è'è3õg¸!ø«–Ú—Nù®LR§Ïʃj)PÌqÖzü ûŽÿL|!Þõ~u€: ÜTü”µÈŸ] ~=<ó|wv"û8²KíqË‹’ b|øØA8:¾~Lį7!òkÐwׯÐë@îTOÊÿic+vìüº6WÍ2±üm‡--!qrúŽÔ]`¸;¬}È|°_Yh*a0h¤¾Ÿn/h.ê¦è*ÖŒ`(PÌÎÿî:WöíDkš€w›¯‘÷cp?ä™å]†AFÓ÷ ekXOM(¨ãºáúü•–è}!G§nöíJ8€ÿ+}âÿñ²XÄ+ ·È9ò(ÝSòXé°F•+Ó€a¼|F–ƒv^Í÷=3x›1àÉ6w6ê ÚÞP_D§&-Ž‹CWýZ]+Pú± 7²‡ƒÿ£ÿ5B¬ÝQÜ·AݨÚÀ¿ßDs ¤ïj”–æœè_"óÀ:SÓ]ñ‚ïg&ì [d8oý+¦þÆñ ÆÕ”‡#rû~wZÁ‹ûèÃ-àzÁ=Í3ªw8 ®=`ãàæUæ!~ëÝ¿8~q•sýÞ‰;È¿Èmê0à9Ù_ݳMÖ>è<í¹Wôù¼L‘Áu“íçê6à ·Õ¯ž Â%‡ÈQ j‡þ«×k •QP]f¾š îøUË3~¤á®úZ „t’@¶¢¥ìÍ?ßÚýŸ çË5êa0û™ Hy6qn\ ˜Æh£^€êJ¿-æoÀÝWÑ*ÇÁäöÞ þsý»øíqPd‰ ¿àc¾þ݉uµ‰¦‰ G‘k§ÛU»ªŸq–ƒ¥S@Z`_°L³Ü00ÔT]'\?‚oB ZÝÕ®j¨ïùZûvåb^,"ú×Õ@¿§6££˜ÁX B®ç'põ±ív´×Õ—ì•rˆ+Kó&˜ÆPDÔìˆHˆØóE½Iì z7à+ MI¹®æ|¸jö…õ‰§ˆub¡˜ âI1”;ø-ñÑ•Ð칚õ üEIPŽ‚i¼i—á50ÞX° ƒEø¥ƒ·@©P¾ã#æ­¦­`÷›f¬?ˆÏ€ïø–-¿+¯¶fœA<Ï]âVp®sò°Z©î9àÁâ X–þûüfsCðWr­üAîWcWKW+{Õ}_¡§æIÅ¢@L£°[æPñ÷Ç‹ôš•AòBeKð~íýÖÛÜÂv“í"x©>ïè Ò(çñ>¸¶ð /‚þÕ°Y¡Ý!&¯á#©  2øD ´?kV+=€,ø—(¢Ä>ñ‘xH§à-ô¾é«¾û}{e5¹'-Ô„Zj&£ ÀÆN~1‡çES0lòn^ z—¿Ï¿1¨(kÄ8ÐEé¿ÐÀÐÑ0аÄtf28À~ùË_ÕxÍËrOšžËÞIê:pš=-|KÁ8ß4ʤÝ9ݺAµþ܈᯼¼N¯Š?)žZü4ˆ7}­<ngùμ”©Êiñȇ™Ã'ÿàoˆ©â)ðDx.ú†ªÎÖÕ€{|ù†ªï@l©fÿ ä1@Å@ÝCÚ·ÁÄ5±YÐüÛ¶sš-Ë÷oY¬à›í{Xý’ßbòàš ^r«Tdp=÷y;AiiåsÖ¨v:p>b¸•ö "&ßzs²1ˆ>`˜á_ež†¦?û7_{ñ‘2”FÚO5íAÛ[ÛZó5p}Å­@޼øë:Y vp ‚P¨õ¾A½£¦(S4•šWþêûÿÒ”Œ«k^ðîi®[Ü­!o`NVÎs –z_u½Q~¡ w‚v’rBÓH‘}å³¼!ú‰`mQ=©ú8dÍͺ+§+x[ÝZrÌCÝ=<ç ⱜƒ2-Á´%n_½~42±sl˜Ÿ3n5¾r¥\+OƒhC© òÄ&±ÊæV³£‡ÎíÎî›úíÙxxœ›“Û5?D¹â' ¯èL«ß9¸DΑ‹U|Ï'ZöYènU>ìM5ÍNPkã5½@÷˜î¤6è%†ÐÈ%“<~ ™„#ànÚ‘b„˜ªœq—f¹æKDkeT]×êŽk~.»“{›k<\îgÌiw«6W+«ŠˆœšYšAJ=·qš*ÞgÕoÇ+•¢Øî´^¬„ f޾x|Ÿ•î«C &'‚ç}Ý}`iœèŒ á™I±q•Ð)`¦ÿË ¢Y¥Ì_žúªš b)—¹RÊ0i€¿ŠÁÖàÌøÜÝ…nÈVtª¬ºF o<,z|(î¼'ÈÏ@.c1xW”ˆÃ²'ôbÐ`JŽmçÞÓFhº‚<£í¬] Ú'´éÚt݉¤'È<²ÉõI¹žŸØê µ@]X•yÊ} ¹¬Û8D1[\úWjàÚâšoá½û=±žEPñ^ÉãEd¸·Êíÿ\s}Ó0P¾Ä} Êäš¿?^d‹hág®ÝëlEÃò¢óŸu»}´ãs ?ð Ø7ø÷óBòɦ™é™4¥þð¤±ÀQÌ„€zQ•Õ ¦‹ÇÄPP›Ê™ò;¨^æ8茆²êx÷p†Ëñº)µ%b„e]°Ø€gå\–gÉ‘ù¿sp'[Ù<È£Ü~Å~]Ì[ÀüiÀ9ÿ\pjµšžÀ+º‰ÚÞ }\›£Ín§=‹ä’[»åÏ- ³¤E¦CõJÇ-Î& ¦²MóXî <Ü4㵡º5xÛ¯Y®yÁûLÞHÏ{à=ïzÞÞXè»ìÊdq¯Òh/ZѨ¢;¿Íм›Nä ñøöyŠ=£¢r¼5ä× · Þ³†aúÅàìY¯OD7Hz £Yš’>Ihý ˆ$!ªîô‘ƒÒ[9)f€+Ð=Ã3?x6þâV¨þ‹ ÓÏ€ô„&÷6[ õ>ŒXú!˜n3tÐÍù5»9ËŠ¿Z$]j „P‚AIQôÊAñš4ÍEðÝ«©Öœ­I÷’.ôëth[#Å`Ñ8]“[Tó³X¾ƒêHõä®)¸\¼<•Ïu³ µ¤aXú,0õ ñ^×µúŸãš¼ýcû G=¨¸P1¤|X6J5`þÀðˆ6d'ù”œäÊb*¨éŽÓðû—°šY‘ÅHƃºÝÛÊ›®wl÷T[ž7Æûh~ ;²bŸlþZ£tˆ~+¡{ÌZ°Tù52o^æEª¥•*ð¤{^ö†u´]¸FBù“/”Ʀå–rˆ<Ù2òYnoùÄ¿è'hÓ5iÀ>ΑTḒ&€0jæÄ\$‹\ðÎô&{?Ï ošïgí•|¥ôƒ 3õÛÀ°Y÷‘îˆÍPà'8â‚øL¼¾gÔuä÷+õVnß4%K×:%mN¦xÓ`Óu]»ÿ9®YÁS¼¯X‚Kå¹oBÔ€`£¿‚ èé7äýLã= ²ß/¿MkgE~Âçlׇ®‡ÝÀUµ×6u-ô¾ Ò¬±é@ðžàMAßf»æ-Í3u]»ÿ9®YÁ—>Vú—âõP4»À~y-„·zËANËëþ{€'åL¹d¥Õÿ¾Sl+@¾*?”{![æÆçO†‹ûÏŽÍò€éû²ÌJhŸÚ þKSF%$CòWÉ âÆ‚_7s S9ÈErµzDWÑŠF y^¹,^‡ÂÄr{U:\ø¨hze¤Mh| Ù—³"¶G\5ØçWgTç€áK}#­ ô¡ºû´«€“œ'°aÿ} /zЋ.À|æ²l[Cl€µ¢jŒm#hÇiŠ4À<Ïè44Ã`]¦þ~¯Š'Å “<Š@:¥¢žÙPfª… dëzM•n™áqsÄÊ'@ÚѶ®k÷?Ç5ÛKãìbÕ¥`OµÖ«Œ“+öMK, ô·éÁ·Uõª_ò[ŽÆJ)e´ò¸¸Ô§Õ¶dÃŲ.ä,†óçNk2·‚úž®FB½¤í†ú›uNÏËO–×ü%h*=”›@–Ér"xíêóê9(_f/¬_»ýe‘› QDß[ Å'Š[” ç(Ç7Žê6¬Ð–€®›n‘öv` å%Àã÷ysè/†ÒdWù¬ ƒÊЊϫ.Bչл*ï}™öeM70æé·ƒ®«6NÓ¼‹¼½¼§¹YLۻ⨄"GE‰­„ ‰l³"N×ÛS3°Äòº®Õÿ<×l ¯v÷þè]¾<ù®›A~.mò МDzòwé-Ä(1œ»À·NM’#À~Оé¨ùæó_\ø .ÿS~©Ë,°&Uœªª[Dù™*è?ÐEé€î]¤în+ÓE} ‘$¢Aé.„8 åÞªPۓݸà‹Ò¡ý||ˤ¹°:éÞ¤ç@lÛÅþº®Õÿ<×®àùB<ðNpmwÆcd‘\ ¢©èÁþ®7F){•·Àšm»©zœhzòÄù4(¿ÿÌ/YŸƒ!Ü>ñünMœ—a±q©÷"¹Núß Â)òÄ  ˆgkWŒ»ÊW}`› ÖA¾Îš¾àWòid:Ä™^Lìº)úeú¯À›î{Ö» ¼}|g<‹AY&Ö‰PV+K•~ÔôÆ8ùýœšÒèFGà8+äàþÚÖ×¾< íçfÐ4®Õ¯ÍÃÚÖšU@¾ÜÎÀ¯f ŸÈGY ö#®žH(ik‹u=§BF…ÀwOO2†1u]«ÿy®™Æ—åËñeAe\¥³r øw=íȇ ŽæþúïAsD)Ñ 'Ê/Ù øãf P€+È…"[|åáe»*T8úê>Ûáöp9êRã‚ðyDð2h±ì¦÷ZŸ€¨}1Ç¢ÞÍ!ñƒ²¼s(öuq¡&ít±_ù%ëL8›ÿA™¢Ö'ý”®@â‹õ-i1`|Ò¸ËXò›ÿj„/Ï·|| |_ 8ÅZP6ˆÄ~ÀJ5Õ€·v;I‰ÐDŒ¢H/oã÷§ÕáöGÀsÈñs3˜¶‡ î ŠO íDr– w2ìGÁ½]ÝÊE0x-ßݦv~ŠÿYÐ4'4€¸º®áÿ®™Þ“áös; ;>+:kø>v¾ÂRy²ËÏ.¾ð dü²ã¸ª¶{ÇúCxd£u©ÁÐÖÙÞØr„…Î î ¾SêNÕò°4ËVP¹Æú”ý(|°ò[{ØqÑiý3în:F&&Žý{ÿÕõ¼zÔu¾h_cÐìS•$P+G•S@6lüš/F ƒè ê,U¨Àápžpí×K•wZM ¥³+ô½ü˜ö‚æ¤~¢îˆ—H%ÔêBõhK'Wô×íR§Ù ‰R²R§ƒé&sC¿Óu]«ÿ÷\3‚w=ã²»öÀù{Ͼú5ð,uœ¶B\YÔ}á% {D»@[ 2Ù D¼H ÐVfÈîp`åÁÛŽ½;Ûmúh[CÐ,*x©(>N3z4žÙ  ø…ú9Ì'@yMY§,e¤gÀûºo†š¿=Õ.«ؾÂc̆®·ö°ßž ·DŽì„öæÝûöª‡Õ#àKô)> (m”åÊ P.)o(s@ÚjW<]Ù¼½ˆNpLwNrO„Ü%—Þ(ˆ‡ê€ÂeŽÁåýÈ» ,ÇB ŠϨ\À:Ñ–zà P·ÁÙ/rB ¦€­µo¦+4ÏiÝz) \xô_©ëƒk&¤Q»¨?©O@E@é½Å?ƒ)ÁœÇ&0ï2 y‰šhYlÇ««v8ýâ™·3×Cæ» å“Ï É\ J¾ñvcwh±¬Y¿ôÓѾñ¤A7P÷½¶h>U.ˆp(ÿ¬²‘-²ü\2 d7ÓÜ #ÄF%–¶â ãG$TΫ›£óÿçþ˾ݾ7@íé[äÕ‚è*\ø(átœÒÉ~Ýj^Ù$v*s¡ºÄV\=N=w²Û¹O x`Axqø[͉¦Ž¼¸¾)ñ6hØ9`x¼žËÞ`Owvr­Ï)e£>ÖX:Ÿ…àzÁCî%[£ÓøÿÉ›qÕ·ðžážØîª㨀ü÷J¿­ü º֛»bšÅïHè¼*ˆwêºV뎫^ðEß9о‚Ì ç_?3ê­ 5§CT÷7z¨¬‘?È}3áRëüÅpì›}›ŽDAÙ±®£V(Ϩ[u˜{×ï0ºÏ¹cb·JHx$1$f‚ùm  /*p7GHÓ1ËåÛÜ®%7ƒûs}¾~1˜6Çv©‘£îo~Lm øþŠ\«?ÿ8{pA/ˆ9‘Xú-¤Øh}F"(§•2åØ"þ?ÅUÒ”„/.ª€ÜfY/Ÿ?éC#?ò[ ¡áûqŸxT‚ÌNñä¾pÁž'~}t¸«Š~)}¾Œ8– ±åMÛ¦o‚”Àú}M”Ð*gYß«îçïÍkXت}OèœÞ=þHR¤Õk”Ñøc²%´7hž×ܤû/d,—÷€œ® ßnà‹å£€Q,ç'ý…ž[@>%'3Ê©<]Õò/]ÚZð>8ÓŠt¥!в!¨ "nM.ޝÃaÃTýl(µržµªîsµ÷Ž‚Àã‘©1ZU"¶Fý Æw‡¹u]›uÏÕ׿Ë2V€z«ú:¬Ë*µå+Á^ösñeð›cüA÷"ø»ü›RÁÓÊó¥÷¸üI~I‘?äž9¹üìƒPòîù¸l;x<ÚuÚ‘ÿ^ãm ŽB£¡-onòøoöoè— •¬gª³áâÜÂ1ek¡ Ü–í] ÁoÄ,Oj)/4ü±ÉÓPo_=ÿèÓ {^wÓŸ a~%‹*$È}ê~Ÿäa_²÷È]ò)™˜‰¥0“—ÄsÀapòæ_Š/Pá\ßs“.,ÏçãÎ/!~~ÂDZáRœöZr5(=—r .>Ÿß©øn°µ÷dŠSÚ¤uó5p>(3蹺®Ô«‡«®…WÔújXMÖkø¬®§Vð_¡Qy4OˆÛEOà9~^(O¨x³òSøiÈËw…¼´£Ž¾~Óg%xŸ®_’8RâÛŠf—¡éªŒØÔñàYàí©> ^8ùIVT¬ö.Ö¬‚Œ¨V½Ú„Ôå ¢Òó!¸WHuè `/{iþ/d /2¼AÞÞÛÀ÷¤gš{(vyÎgñ4¿0 ¨ ˆgAŒ“èêÛêò$ä~–Õd?paAV¸ÖU©Ü±w‡?TúËÚ§4£A&È<^Y)aÏBïÓÞס²¼àpѰ¶/>Svßœ¶‚š…ï M™"-L‡œn“J?¿Ã!/GdBD‡Äµ©ƒ¹¥ßdÿ6 ´Pf(gëºV¯®:Á{÷xztp¡ôüÂ3cÁ²D]a{bvÔWc>Ï>Ã3ΔŸ\v. gì±ïI°NÉ|îâLÐ~äÿšù7kÜ¥A$þÔpxJ'ð}¬ª» òÏUÆ9ï—¿!4p?d¼ØøLóG ÝÕhAãrІiûjÐ÷SÏσîh8—uzé©ÏÃ֟ʧAòå¨=¡ @ßM×D«¾¥>ÍÀõ˜{¥{ä5º4©ðc(}æ’Rp?è¾÷)> ñþ©«“" xYXßà› êõêuöfõèåâÆŸ–±©õ8¨?9­WÚç ~fU×µyõqõ¾#é Þ Þžžà½ßѲú`ºöOð¦yô탬‘¶æv‚³êÁ)džCíäös—A;Ièx â{7qÍyÓî€mÑý?÷™á)ˆÜ•ž2 :ÛÞÞ°Œ8´oj?ÕVU a55i6þ6hN3Z{Žë ×$(äù ä6í4Ï+|,0#Òš4ñš˜ b¸r¶íÖŸí­àà”ƒk½ ¹qÇå…Cð%Ë»þ}¡å3-§4þ Â}ºÐ"([lÕÙ»@ù6g²ZšÈ°¶Á¾1<>"Ä{âcñE]WêÕÇU#øªìª¦U·Â%sÞŠÜW p·1[ÓüßÐÓM…üòï,ü lž´±ÁÖÞµòhù©õà·=x^àCÐ(¹éÍé…`\Ý6ª xŸ7t4aûê=—¸ bÎ%õKm 1yñ;!dHè±0-0€v¬ü{ÊQyoåÐÊpé|îÑœ<ð‹ÖžQAÐ6¿ úÐôT^S^^àIe¾"”À“èÚáúò+.ìÊ]Ö™.ᙡ “Ç…@ì 1ÏG%CYjUÛPÔÀú“çhнIZó7 ²0jB½ ä)¯(u]›W/WàK·•F–nì¢óGÎAxˆå¢©ü'iír0 (Xü2Ty*§Yû¹wÈ„ é·<ñ®8‚ßMÿ2m)è=Á'Cw€ßCa£Ÿ†”¹nš ç“S:‚%Ôb¶ÔìiÚî?QŽ’Ÿ‹3‹û@VàÙ˜ÓwCø –M 2#Ð`2É2^~„Їî ž%Þ ê…ÊŽÖ£P2êòÚ³`Ü0ÖD—¤ÕKîÆ%¦“Æ*È‹ÎßZÚlß)·š£¡C`Æò¦@ЋÁ!µÛâpCðÿ”«¦[²êXE¿ò…PP}éΜQà×Í8KwL“Œ €v¹þŒ~?4­³å èÒ¬ï‘îZÈXzÓ‡m“Àº@oøBJãƒÓ¦Cû‡n¾ýÖnÖ±á¨ô‡À³?þÿÇOr’ ·Ë=r;”î+šQ0 .Ý–½õüxkfYi<¡Óƒ< € I8) (‚òWÊÏUnƒ‹÷ä]ê ¥²¬^ù.ˆí‘xì½ÐpCã |P5ÝqÆUŽ]ÌÓ¥€Ÿ.$#Ò a½"G´ÃÃXÃÁôÞÿ-WM ¯[¯[¯ûÄPñ­fœî{á®Üƒ £¼[Ü?€u’½£k=X§Ò_s„…³«Oµ:ùè—u†í’ò£òÁ°XÿŒnÈa<.# òžÊùÖ¯`÷¾ÝOðÁ¹‡N¯Ê †€/ý³ÍoAËAíúµðçM?ÝspéPåi׫ÐÚ¯ã¡.à ödœ;áîÚ‹¡f…”ën§ŽÿWàÅñ¦X Ú)5ÉjýÃuïèÊé,¢=0™Ô_dÿž‡~ݬ½NŠÜ¤ŽWC{ší4hŠ}«\“ÁÐM?PWšT%GYŽÇœG\­áÒ½—Ç΄CÖýŸÍ!õëFAʹôŸÓÊ òÏ-êj~)jGìZˆQÿц_B|½¤æÉ7ƒ¿TóbÆ7„þ/rÕþï(fÙ¯;Õ]Í”ò1“@ŽQWyûfuÚDšÐ‰9 n­DœË\”3v•ìkyø8ˆÍ\%¢ŠbtQ6ÍOx,þЦ|6 ¢§&-L]õ»7mt XÂ-¯Z6˜%BE½ÿ­Óÿ½\5½4×,ò ÑII§VA¢§þmi1üxð°2:Á_剿Á¿…‚ÿ_¢Ù¦í¥y"~‰~(v7ä=挱§Â…ÙÅëÞG¤+Þýø¾Aš÷ ì£èq•ÐùàMé]CTóz÷G? ­Æ¨)ÜØXFÍ®ƒ7ø·#d-uíȵŠLZÕÖG«6X†ê±¶pk}p¯rMu¾²³\"OF« Ö}¦æ5æ‡ phP`ð— ë­ë§»·®Kñßà Áÿ‡ò3‚Aô)Vq£oå*à†àoð_Åÿ«“{O .%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr7.svgyupTIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/lr8.png0000644000175000017500000003711312240014740024044 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk><ÎIDATxÚí½wtUÕÖ¿ÿ¬}zIïžzï]š(E"ˆŠˆ `AQ,*ˆŠ‚ˆ¢ˆ"( €((½÷^$HïÉé{¯ß úýÝë}½÷¾÷½‘È3c޳æ^ó³×Yk®²…¬€ÛÜæ/€RÙÜæ6ÿMn þ6)n þ6)n þ6)n þ6)þz‚÷âÅ ¤’J*0™ÉL™/ódÈÑr¤ZšvRÛ Úí{mÈš2RFtà)žæi 3ér¥\)—vCKÑNÖCk¨U­‰ªJКká* ­Ñjoz)¥ ØÆv¶þ÷ñSyd7ÙTÖ­™®@ýQ}G} Ô³êWê‹ Jõ´º´2-U;ôáNzó˜Ï|à~àà"¹¸páªì ýß!þêiɲ×Ë °Fa£Px£à­‚SPä*ªU ê¾û|­Ÿý°_Cˆîs=¦ØÛÛßòû¼<#<ý ÿ½‚ýù/@VÌäÌÈï“›’û(¨ãÔ2_ 0œêTƒ€9ö€…ô\½Æõ6C˜Ö+ü Ðé”Ï•Ÿÿy¿:§ÑÙ.v¼Ðñ‚ R›_©~9Š¿*TP ºu“Å3`XoXeúb¿NX]­#$}Ÿ¼¦žÌÕÍÌ÷‚>N¯Ó—€>N÷†®veGãÿ}e;ð… ï—“¡$¦$¥ÄÕóïÈÿ e!¥ €älu3¸Ž8îvœ„Ò3%Öâ/ ´ øÓÂêPr¶hcá‹à{É÷•ï*˜;ZöÛfƒ£aa£Ü­`o«i|ÏøÚys äé¢n…/CA—Üê9ç¡$¾PŸÿ>ÈQZzè&žb88ºØÊü&ƒœî»ÇÁ±Æ¿¡…ŠH…€1§r@Wª‹ÔŃó ×®¡PàÊŸ˜ß!ežÒöP<¢ .ïe¸>>õÕ˧ kÝu¿«ÀQ¿´C‘tû” ¡‚î{Ãݦµ º[–&‚²Q+ðÓ'æpËqÐÏÒïÒ§€î ÝcºX H©¦[úöú†–`aon7@XnØ áëÁ0Ó0Ù0¦²£ûïSuZx‰Dm•ö¾ö”D•¼^ü$\>w繋pbÅ‘€C!£ÞµSÇÅ`¼¡Ÿ¶©æ0jnƲ gØçZ‚å9Ó*cГ–| ¥/9¸öBÎÆ¢¥×Àùºg‡7L¿èß× ‚ÀCöM–}a y< 6„Ü0ôqúÁº$Pz‹RæAî†ÂïKë¾×OIyˆ·¤4†ÝÕ;Iµ“kÔ;–Z–o,iy_æÄŒšpü§#é÷¤-¿\Œq²‘w0Ô¹Û8l>T3F¿–]ìcm“AËÕZk÷o£º@•p½GޝÀ)ùé—³__#5WæÖV&ióÀ½Þ;Þ×\>ß,­'s-}ìˆm‘ЯF ´yªý” ñ\äܨš L?I? ÄKb¦˜ô¥ý+[LÕ|ß»Ð÷¼.~tfÖéþP²875ã<ØÐ}ä› öú¦Sº“ ûN|%N€©Žñ}o°Ügg¸L«‘†B0$èŸÕT¼$€w¸¯žÏeñÎYîý੎Uσ¾2D9 æLc[ƒlý¬3ÌÍÀšf~Ãü(וOŧÀË‚ÀÍ~õìSÀô„ñAãw SdlÚE­†Ö J¾/Kq ‡¼Ò"si[ÐvÉ)Úe¯ËlÂAVku@]-£´ƒ Ö–ÃÅpº}íȆìÔ²í¾ýzõ½µWCý‰ 5²B¤1ªvÔhPœÊ %£²£ÿÇT™..‡É!~4­FjKH™zæÈñG áRÈ:ëP+46%Ê‘MCv? ZùµÌY?y'P*ã¹ ä—Ì‹…²1©€©À¡1BÒkˆ#@ŠtFÈ©øÆ+|2PN–Õ€†²ƒÜ ê-Z^Êpñ ˜œÆ–Æ“PëXü{QOB1¥;!3=ïlÁBÈXœÛ"wh}¼G}z°¶²¾ñÛ#‡…n„à°Àhÿ&`|Ê0ßp/hÙ²‘Œ©È<¾vª]܃?A LMðodµm‡€ý›ÛßêËÏÀDò#ˆ>̤1p”ã¢'x»{uÞö58ta!dWÏJ¾×.œßä>JO™¯=â9ñ®ÈƒB—….ãÆûŒÃ*[ ÿ˜[¿…O#‹lð.÷~ìý6-XwaÍ;ºôtîá^ÐããÖÅÎCËïKÛ# WKU6™I.…”w…þ›w¯G‡ÐÊË•FÙXö9An–Ù ›¤ø”oØ¢„ŸÄÇ HåÑDági<Îý€'îÿ€_ èÑŸð ߃,”µdwPMÚ*­œp± í¤ÎmYšµë6œ×bÔ­ÛàZ£Dˆ:=#ú0‹×˜ DAø±~ÿ€[>-)ó¤"CÀ›æMõ¦‚|S¥ƒÐÕSÁÐQ_K×”¶Êå#—¸F&ÿ}¡ßÄ‹ ¢¢‚2B©.$èæé²t¯ƒñŠaÞ Æq†$ý0„êkë^¥§’£,ño2(¦Ç²"+êÃ…ˆ™<ÉXPF*ùÊ·`:gxÖ0›ÄŠjýIð‹pºÓÑ-ƒKŸ\œ{¾øŠ|}C€qLdJ%ÔïpË·ð2…`pÛ\ù®‹ðK‹ 9ksàÚÑsßûz†´ùªq0ø_µc­ ªO]¨y*Ûë[/>TÀWþ€Rôº~PpOñS¥¯Á®åÇÚœ+¿~‘+ªï…äjÍ’[=5ÂjæÖ†=†lßH]·| /,s Ì/™_6¿r‰ÒB÷xÆû©-AÚåý|¢IDU¶·· 7»8LÁ—®®ÕÚe¿ÙmÚ­Þ­¿µÖlð~SÚ3ÿî{àýý9àúÖÕÓe­lçÿž[^ðøaǼÍ{Ìñ˜£xÅ×Jw „ ¼‘SÙÎVÆÈér>èVR”à¿Ö^Óö$È'<Ÿº¢ 8º #ïȱZ±úee;û÷Üú‚¿É)ŽsDœ’ª¼ Ê÷º-úÅ@'1†×Bnp¹²¼õ‘—¸J:ð£X.ƒ~¬®P÷9è_PvËï@„h?x#ÀìZàjZ¬){U¶×¿QeÒ’ ˆ2åŒnˆût»õç+/ˆàsÞ ¸âÚÈÊvöƈ°“cœ9AΔóÀ<Ø8N¿L[´7E18œŽ}މØÍ7OÝ ÊßBlU§…§"­æõÄ<À+>W¡ôe`ÇC)•—©jäQ‚С €Á¨[¯kŸ®2¼9Þž·A=­f©%•íìoTÁW´ðÊ6e¼.”³ºËú gK¤HEÖ’€?6ì•ílÀ+F@CC‚¯½­êQ :‚ñ-ãFã ÐÑõÖÅT¶³¿Qu¯+ŸÐ1¼ap®ËžjÞ"YG/àûÿ¹/†ŠÞÜ>ßµÜzô†kQ)ÃZ}Š~!Óõ«ôzô 7°›}”OÉW…Ú #˜@!Î+.\?€ã÷LO"X»t>~‹Ÿ 6‚1Änü x“¹|VÙÎÿ=U§…7”Oˆ˜&›ìÆ`ùÖ2Ôz œKQ–(O‚8-ö‹ïA¬Š7@£¸b¼+îã·Aú¿ø=$P‹àÑM´…üø¢ž%õ!/ºd½Ó ÕNÕlR»&„¥…„o¬lü1UGð“fÔU×/Ð_õ)YŸá õ”‰l"±ý3Wº+÷*~ùMVõ3ü\ÓŽá›Kk[Âî÷¶§ì{Šæ//õw±7Ûû8¨u|{|ÝÁ·Õ××—¾ ¾.¾“àÓû¾÷µµ@ujC@¶—w0PÊ¿™PþÆz ;È^<êãÚ»ÚYð=ï›ê»¾>‹oøžð=ê; Z’ÖU›rŽ\#Oƒ¶\Û¬) e´l 8ñàã×¼ù?MÑX$J/¸Ñ%ge~¤Ì3?µW$v®Û¢ƒbÇì¬lü1UáK÷w‡E5e>  Uw? xN Âp‘ ð?2Åsb ‚··÷ o8”î-ü¼¸è¶\ñ¥·…Ï”ØÊÞ„µ]ÜÜ3ÀðŽe€9x@«#ß­§w—ï^ÐÝ/·ÈÖ ·[ëZ!lEÜĨ— åöæç¾Aßõ[ Ò,wÊ‹ ÖŠõb)ˆvâq/ä·-L*~ÎŒ<Ÿ|ydõÏpfM—Çï¦ ËݦP7$yL»ÁZÛ:Â|²{d_Ï+„„±Ã¢êCȘà'|[N•1D 8qñ{Ë¥o®ÛoHMb@,³yÃ=©¾UàXåÙ¢Õ‡€AOË sŒ98\Ù‘ÿŸ©²‚ç$Cø lÕE‚h¯øéª’¢¼&>ù2 ? \.b3ð&Ÿ±˜+?—«€ y…õ *n% Íô¯ê\o7¼SÔÔÍpê|ö¹¼"ÐéOꮂ¯†h?‚VÍ;Ýû èÖk“d1èïò›hóAø½u<5žãÅ*¾€8ouOÜ0v6¼m8 §¿g2x—¸O{.@ÖötSæ8±îÀÎc)Ý"õÚµ¡àœ]òUÙ0®¶²ö‡’{³ŸÍ;æ+ö~Vò²®7Ì: bkÇå­–ùEËæE`}ÌüéˆKl¹B®gËßWŸˆ'†À$§É7A ©r1È=©Ëåeã\]M0X Œ*p˜2^«ì ÿ1UWð?(Ï* A)2¼n¼ ´…ìf"xžõ¶ðù¼Ô¤¸GÜ'ÖhÀO,1EÌ Á%`°8#ÖøVœRŠA :±¶x³}»ÀÞ´`sÑb R=bVDS¸ôÎEiwéf|Fûdû:äßÄÖB#Ûù÷€¡A½ýïSCã†u KÖuÖÕ1A7^q¸OŒ[@™K?f€r¤<]OO`30„Ÿ¥XtGÊǦb\ñO¥E ?½ØæÊóàÚ›“’ Ù ÌëLÏ€WqµvÕC¯²&Î `\åhç< –o7_2+¶Í)f Ä !›så‚n—¬O}ðù ðSÀnüÒp˜ ÆÆ÷Ô¤ p†½¼$Ðñ÷êO !¢<‹½;½£à²==(óUÐϱÔÜIwÔ”õZƒé^óOæ|šWvÌÿª¬àÍ—ÍuÍ 6#nXÂRÈiw}ÅÕås!k_ŽâšDìb,h/h‹|/€k²ûˆ; bJÞ-æÓæ¦ú¶öFó¬Ç¡èÇ¢oJæB°âkçÛè€ /Uxé8¢•‘\á× z2ÌNÀû¹gøbhO"Xú•_ç÷4;Äbv²è^þÿrE…M)·ºŠëÃöÊBA't ÊfÈ·<ä?&…ô ^ú=b›¢°ˆIœ‘¿½ýÿ;ê¯b­Œ2G´x >UÝiÃ3u¹;!z}b~ÌÇP³[­£µú‚ñEãR£¥²£ýÏSeoüÆ8Èt"¶F_Ž Õ¢ã¿ŠSÀåg5 úŠØ"ÓÀ1Ýñºk+dÔÏ­W0.Üqõxæ pë[¢¾ Wã.ß‘¶®™V÷úL°%9'¸ƒ¿ÊSÀ'ð*ð&P÷_ôëoŸ9åFdVüür…ͪ°¥öo“¨ßL(_CäÉtýýsíOB”¬5ªÚPð[0É_ÝiÑJÉ픫Aö`4ÏKäwò'à^ÑStåñ¸h ®]î÷ÜM øbÙbçý`}-Àœ ¶ëÍç JÅùÊò¿N•¼üInÒ~ï}Þ¾ ãåϲ5è/ê’t-ÁTßXb|,÷™’ŒvìæwÀÞ Ô÷´qÚz¸v!#4»ØW©¯©í h¥ûnÏÓ`® “‘ ßað»2ÿ,ÿÆþ-ÿ`¶@ -·Ú@zЊ*C”Ð/ ž¸ ¢:&tùÜÑêõd¥ä¶Ë7nî%Ì}LwwÁ©¿OßT«oŽšE—ÊîôZÙey?CÞ³eÓ½«¡šV»,qD¿³:¶]eG÷ß§Ê ^»Gë/Gó,r_qŠ\¹ Ûôt×7¹´ÞòfîÁ*žï]^“w=\й\÷j¸~þÒ–«ñ`ßîØâj †>Ôf üzæJe,:ºÜÈ ¦0 [7²ÁïPP§€\ú1´wð9È÷+jR:JsÊôÎWÁf³4C-à¿oÀª˜[™VƒûŠçª¯5¤Ó'g¨2íFaÞJPÚÞö@›g nüľ7/þMÊå· UWðSµaêÃàœéxÔ9D]^ñ`Š0ÞaH±Q|+6çd&(Sd1hã´»eoÈÚ›™s òßÈì™}´sÚ ÐïÇ ä;ö¹JºÁ›‚;'ÐÔÞ†‡ô›aæ0Óv0—™'™Žƒñ-c;ýJð5ð¶ö̓ÌÏó6̇+õ®ïÌŒß5_ºr¸X¥lßÑøëäXè2¹ÕÓü ÕÊûk¯]ºÒE¸Á“è ñ­c€1Ó°8Âzþ„çÌü«T]Á¿àkæk%÷–4(© ☩½–^–Φ– ‘.ö—Hã:ÈweŽ ß:ï.ß#à{Ñù®k+h}]CÜÝ€tÞ’‹¿PàÍìKP…XnÄÍ#¤w”Ÿ¡Ü:ž©°ÑåÖ[‘W¿ùÀˆ›3—7Ýß”só+á2é m­VäJ­™ü”â!¥=(ç•ÅÊ8P¤²Vy ”EJ#¥ôc” ÊLПÑ%)k@7I)Ñ­e£RKW”ÙŠWw”-Êe+\¾æV§Êvi|Fß×ÞG¡huA£ü!$=èKÃ+`Yg7b´¸,êmDðþâkä›%?—u+Û ZDéÇ)Ð õ,òÜ dÉOX¬¦/Õ* -7â¹r«í/·Gù kñ¦ŽÆ{`Û ÖV`^æ?ξŒOØ»ØÖ€ôh µÏÀYVZä˜ M ¼EgÀÖ¿l¢ã°ÕLÚ@EV†ŠäWñ¥°‡} .÷õðMí_†ï2È7ä$ùÐAÒò„|[–w“tè@~G€RS~/Ï|•µ< ¦ܭlQCñ‰Ó@ÿ§»m·UOð- ï˜·µw”+6šAfûw ’`:d`èêÏšÔÆƒ˜(ºP\¯{b½÷@n¯¼å…G@‹,©Q ¦·}£Ô¯@|OµsE9½+ì/˜1€æ%`ð~¢{\çîŸí£¬ƒ·u|Ûè`ΈYÙŸ‰Š oa!?‡Žuƒo¬ö2会Ý6·'8û_N¼Îî)õRÛƒnaNTÞ!0¡Þ¥Í1ŠY ¨(?‹-l¹Ð—îkêwÞþÞdÐ.hwÊÁ ï—s„È@%¿ŽÔòÓ‚±P“ ½8 >2Ø,rBNòð':jãCÕüÍ=¨ PQÀ{Ì»Ã#@ÉÐ2¼ ¬á¸V #æÐ„‘AÜMªØ®®Tw[Ȏ̕۴µ%MKƒ)Xºe*0œl9£¢¼Š !¹æ$ãœãp¼úVа~ÚÐR7îjØKß¹ÄÇ7Þ††A†ñ`hdœ­? t”¥”ûЧ­§;Î+Yd…m棶 ƒK“¶ö†ø©ù »‚q£ö±¿ vCäOrˆ…^—¯Èúî–žÀõ‘»Ð ‹í˜åiÅ´ù©ü†MÿO½*þå"Ȧ`’/Ç„Aƒ8ò븥 Pu_Fe7,Fþ ×9ûެÅ:ßï„9üXÚ™®|OæÒ¤7‚ Üâ28½®>®.i̘“ÚKe»,m9ÉwÀõŠrN–QÑÂûž«Ä (špÊï"„¹ï­—ÍŽõLì´ê/k^w ¥äø<¢õ”õ@n—ßÊYÀxq}ë¼#zCx÷ð]¡í!ãœKù/@IqnbþfpæØz|ȶe8SEWŠ–ld3è5ß_cÐ&;>s¶‚’5¥ae&°'ø_´ãlý³úÇËÿDöûêM£|$gBâšáãP†JBÅ5¡TªÎ µˆ" áÆÔëZú3p£súƒim 68¬0h,§ùóëd[9‚ò@^Å)±ÜŸº¦{€Ü 9qùo­]­Ü `š^þñ⑊r*òß¾b w“b¬†ÐÚu«7ƒ:Úe5ïíε~³Éeð+¶ZžÏBO;ï1ðð¥ú†ïõ¨Z||ϪA=¤>¥æ€î3qNAÒÀÄÓ5 £ùÀ9'àY¿×ÀyX,#@L¨ð«ÛØ ú«ê·ê6Ð&¸º.@IlÙ;ŽÁàmê«¥> â5žæ÷NðUØ ÊÌ“(oCU<Ƥ꾌RJ!÷hö£Ùñ—›õUf?ˆœbÔÀƒßw¶V ›2@> xpㆈIÜêEßEß&p­*{Òyä2ßÛê4Ð5¨øü +>(·¥±›÷ ´nPMh>®Ó…Öï@Ã= ÕU@œ)bȾ²Ãÿi‡•Þ“‹äWÀý ¢DF¤„M…[­÷ª-ßóá½B¦‚7ÉTht*þÖÌ)®øAưd²WUǃÇíâý´ãZum6ÐQ´úuýÍ!þÆV!ªŽà}åoØv_rÝpµw=×½Ž$0ÛŒ] ýÀ  /ù“ÜÍA~=A‹&ô§;hÔºÚ\ð6v»¼¦–ª‚È­øü›çQV¬÷Fk¶73hI âŽÕø<~D^ ¿’r¶œ-#åh9ÿ`ÓxÅ*Ey‘T®åˆ`ÚbüÌàÖûüJl3ÀøMÐì€A¹lzÒ8ƒß•9Àd,É š‹4qtï+þŠ„S|+V×É%ïwÊ×ãà àO,0‡‘b'°’îâíÊꞪ#x ò~ù‰–²£VCm tàW@´µè ¨åïsý•jtmA¦h»´2Pzvyú€üL]¤¼SFE–FŒ3^0¶Ý©À&ËÀö“_¡m0˜/ †D špB*Þ)õϼÎñæ1Ô¾òWÌhCµ®ÚS ìÊ]{°4ñßmúpÓ—FÈ;+nù0iªMù\¹ ”Í–:&ÀgM³üúÝ]º\ไ•ÿOy7¿müPðêÒØ"¾]C¼øëBjé«’àË» ŸËsÚ3ÀTmŒvHç—Š@Ûwâ$At¤5È,í¤fµÌë}´SÚJíü:p»Ù×ý´Üè&›z'€ùMÿ»ìSAIÓ½­ 9Eve8ÿûš¾e. @¹Cç§» æý¶ï­Ñ Üi°v€Ö¾âºx˜ÁàmcJ2ÜÊ·ö"û´5°¦0-0Ž5ìÙ›‡ä³ÿÏçßô)‹\\“ |)š+û€—D†è_qåmÁÿ ©˜\,kËm 'Ëã²;Åqù  ÃB'Dч¸ä9í°v|y¦»ß¹X}I}è\ñù6|y-Ý Ó:ãF°?¸×ÿ+ÐÍ1¬×Çchÿ»{DÿÕÛùHÎc èNéÊ—`ùÐ:ÒÚ”ï iúû@½¹‘ä;1QŒczÂô&è_¶­±<–îæ-¦m +V†)6à[ù#ÛùM¾á„ÚTm¡ÜÚkš¿\Êa]?ý} ¸t>ýr~=†¼ªPuÒ’7Y$åJàŠ\¥µZÈt~ ÜA0凨êgŪÇé|ÄÐ>ðRãA=ê^í™ 2U»_k¢bû›Ö„bÀé¢õ@ÿr@¢ßhˆÙL'Ì M¤O¦ÉuSÈï±…­r/(×—2LO“ c@<¤Û¥{ÔŠ‡J9Ã4]m³b²¾ºµ«ÙÊ[ºjJ ŠÍœ gÈtå‡ÈŠþ¢;À3Õûœw 8W»w{žË¶öl°¸¬áÖ7€!|Z•fZ«Ð³[Þ7—‹äqíqÏh#µ@»X  !˜ ¥| ŠjUÇk©àkímçmÚp×H÷× ç«]ÕM@Åšy˜)<Ås•%Ì=ŸÙ µgÔPý°Ym-“@{R› —üîÆŠ ð›äÒO&iòmI7¯sÄ0X‡˜óÁp§å]s<ˆ6¼-¦YÍ&Êzü6Vø’9â(ëáÈv^ƒ¼ãE÷”|Á%¡™áz¶¯ ÝX±ýºÒ³ Pu_ŸÆ4Þ—uäQÚ«š \a?3þ„€è-ÚÑx†¹|¥…ÎÃÎÙP:¥xQièÊœÛ]¡ ”¨ª6‰_×®ÈBYàT,IæÑ`ªþYè¿<¦QÔÏ`Ycšj:r—¼.ÕÿýíˆÇ+F‚jUj“À¡wÄ;£@ž÷ôž]Å ÚÔV´¦˜ì m€%Òo·= X"ÒÅ)` _ȯùus¶!PžuDä=ST­t;\]”Õ¹`D¼ýiܽõPtvt.à‡?þ•Üÿ·¾à×ð#[A Ñü5°O†j3@é¤ôâ%` r)Å<ÌÑdW9LŽƒÂ ÅÃJ?…"o~ná÷`Ð9÷»RA'å¹€ßö–v-E8Hü^°ñí º÷A€Ÿ_G»ôýuãuñ ’ÏÉß;èfþæ¡b§|Ó´éw®BLçPƒÔÏT8œ¥ñŽû@{ÀÓÉ{ä{å—•Õ3Œ1l‡ì˜ÉQ‹ zxôó‘;@Ù¡¤‰µ ûÈŽÜ•—'r‚ó È_äu(ªQìÜ 9ëJuv N¡—‚ hUÐÖÀ‰”Óü ß·úïrË ^ž‘ùRçççz ^žÔ0]2„è 4ñ3ó@nç—@<Æ8îÙ\¶”wCþÌ‚®EM Pɹ'o)ã]O¸k‚þÝòڑR”/ÄH°”ìð̱~ëì³Áâ[â3ìd凣þÞÈHWqzd ÜÀ6s8OYü}6§ãÅ Eù©Ià~­,ßÑ4§gˆWwWÆóNñïfû ⣓WÕ~—×ÙS= tÛtß놃L—ÙÒâ1ˆ ¿“Y2 JÛ:‚œóÁ§¾KwЯ°öñ«–uÖ(ëQPžU”«ü6æ©"Üò‚W'k¯ho@Ù eSË^ÞÔ¾Ôn€Õßô´ñ“D¨È¾”¿°˜(žcAÖ‘Q´üÞy‹ BaNÎÔü)`MÐzkŸ‚¡: wUy9®LÝ %B^ŽqBŸŠ8z ÄIQ&vŸó ù- tsbËQ~†ò°ˆY »_IQ>±Y¼/¾B åùwå‡Â vQO¸A›¡žSë‚ë`I¯ÒPCÝ=CAö2Äê_ߪàÕA¯Cà›‘eau ¤FÐTÿ7@ -D0ÈòI9t^åQÔÄËø¢ßáµD&È¡rQŠÄ£b =@Ìí…Jqìvµ„üÃÅ­Kï—ɽÃk€à Éöb hã· d9^¾ ŽË®E®•Pr¶°¸ø¨†üãEMÁù§±g.øu J È„¸/“§Õ!ÝÃÇ…€1_oÖ¿¾åÞç}ƒò¶²D¥Wý³áFbN‡‚S[àhí›±ÏÕŽ‹y’µúž-Àò¤ÕamTQ¹Wÿ­ü©¹åïûηÚ7Š(²5J´…¾–`Ÿcídú”%MA~@3¹D2Ÿˆ7A^‘_² ÜÁ®Éî~àþÁ5Å=ì9²ÜÊ[|ÅËà™®ï¡?Žý¡Oƒ„»?ª5ª…ÄvˆÎ1TLäp9Diùšù¼|œà«¡^V[Aú’œê5áÌ—g§;¡°qñ®’ÐøÄüjµ ´[`‚ÿZÙ2CfBFÛìky?õ·/\}tÃóß.¼Å'xVÿiqq1O@‹­mÒ›Mƒˆ'Ã;…žõ„ZWÛ²-ËÈuž¶L+‚ëòռApò‡+¡¡s°æØäP÷ùú½LK¬å†¥ˆQœa'UöåÍ·|—ÆÛÆkñæBNRNõ¬9€Eò½~«ì>PžQ¼Ê/À#r&óЊþϳIîu“'Éê|÷ž@„œÄàæÚզ醕 3~¶x‡}˜ƒLO~zÑ‰Ö ÷qœ3 LT|ÊZðŒöóùÁéƒ)o\½Wçäɲ},'ƒ€»…Mw0ÈBYJcÑXøƒ²OY­¼)}S6_ùNjuâc0õ(YYú÷§ûÚ/VÓ öËufU¯ÿ§v ˆÏ¹‡NÀh¦ð\}-âÆNHÍÎÞVXÆê!‰PgirnƒW!fxltÜ ΊTq¨M-jTvTÿï¸õ[øVÞLïQÈi”5?+WPÇ·‚V´Leœ TyÙb³È`%à£-Aíê=ä êUï·Þõ cÊ×àšUQAfú/€Y##þ°÷›c[ LeËÆÒÄgâ51œSÝxŽC®«È\Ú r;Óµ£—Qv̬½ùâžt…~ á_}`ÏkÞnÞÃ5,»4¯1\ >ùù…0Èl}qâ••`¹¦ïª›±«u©ûÔ?Óbp£ÝœüY`M0/5Þo %µÊæ•e•9 v•ùYŸ®&XÇ…ArÓzû7€˜oãÆwKk˽– •Åÿ·| ï›à³û®@áà‚wò×ǵC¾~à÷˜-ز”Cb‘ Ì—KäJ  ~ÀÃr$/€:Ð}Ô{?¨¹{z΃ÜÍyŠˆ5bÏG½¾<Ø(5ù5 ¨á74—Z¢5rÈ£ØÎF¹òz6,~Re†ç%ƒrÒ>'èNPG ³¸Ü%I{¡ÎWqS# ¢Cè£AÝ ïrþk…_ÂÁ½w; ™þgæ\Èe¾û¤÷QðÈ힇“Ûìƒ6‹[øÝýº;uÙàzÐý–û=Èœ·»¨>œ9––•©×KzýC¨öAbNýsÐäùf%Í]à7ÕožßŠÊŽÞŸ[^ð¬å^y´I¾îw@Œ’NíP–*Åb}è ¸ñàù1§q€!ÇÈlðôt W4x£œ€lB²H„²Åön6˜çÆÍŠ^u¿OÚZë0 ò[lÚ›r©Ü¼Ï'|>§¯º²^(,*í†ÝX–w r÷ä/-J€€ñæžúmèónèøŠß·PÔ¹ø±Ò 8µýDísáx·­i{wÁåû®OÌz l£k•$ô¾c‡Ì¸k 4Hnt¢®Ìš;qèÉ…ã]·]™ §æ§õ͇ ¹±ÎZÅÐêlûç;‡z=ìn¸ 6[ÙÉîÊÞŸ[WðË[Õ&¾|€/Õ|×AÊÎZ{`-¸° 36à¼Ø)¾ÏdÏó^?ÈIÎË(¸ž}I…ë?9€o“yô}ÂÜ!SÁ¿VL“Èþ(hÿ0|¥ÿAŸ"Ale!x}¾“¾áÌšË"},\x=}aÎX(í ElçyÞᄘ™--wAµ‡¢„|7”³²"a·agÛÃaOñŽ'÷m„¬9íó7BL礧j.ƒ¶‡{>Õé(4Íjº¬þþjèÞ ‘Pp¹¸m‰Ž]¿0èJGÈ;åÞÌ<ŒíR³>$6\Ûä¨9·öku.@Àì€ovUvÐ*Ÿ[¶ïúÀmw€âÇŠÎ>Ö¶úhe8˜¾4,Õu¾d?ç€éÂÊ]51J›—}å¼.žI™se x «³w€é¬Ûãñ€#Êšj ‚ˆ“5×ă˜Q õc6÷sU¬ZË\ÙÜ[=M}-!ãpî²Âk°gÖÉ~kBÑÏî+Z+ˆÝÕºXÑEAàû¦g”7ÁuwYÇã°kÛžV‡g‰«õÇëCÉÐüÆ…Ý!ÆVsvü èV³ÇÉN´(nñRÃ1 ûL÷²n”–vömH9xmOV:Ø·X†šêBÔã¶¥ÆíàÛRr£ÈÇçœyö¸øÄÙÏS’@µ¨v-j;{ÖøîwwÏîM¡ÎÊZµƒ­“u¤µds¹ ò¼ÓŠÖAÚ”Ì7ò²àÊ ÜŸËzA‡ ;>îð*´z²_»ý ‹ÕmÓíà¿Ãê/‚T¶#„s‡óKçB8]tÊsêu¸..œLÃEçÀüaP¯c­Nñ©`ïa¹Ó\r&—(µŸ:J]›wl›ºØ_mÂ-Á &œ~îYp- ³Ig»=Ø~-ôÛÒ_ôÌýPcŽq œp90ý*ìúðxÙùÈþ,?°¨l'×ôö€¹µ~/ät¸z*ýuÈq-íÆpzŸ: !â±ØÞÑ  eçV£›t‡–Zè!4%tA,=ÍûM[AISÄ]à}Ñ·M}väYyÚ2³Ë’Ô±Ð!¦{Á Ô:U§fÒOàÿžÿRÿ••[[¦…wû»?q ‚sûO¿}R‚Eï]_ÔǽÑŒƒ eú® ®)ñ¸\;ÝKáòîÔ‚ôÍ:÷ðˆSŸB^½‹i©q ¿Û¼ÉÔ}ÖöÝæ  ^ÿæJ£ {zÑ R3Ypæ‘‹Où¤´¦7 ôgŒ' Ü‹Úåg/:¿¹Ñêþ Ò ò'8ÀžpØ¿4ú¨IzéP'µîüZë¡î±ºgkZ±s£Ù[žÔ¶ƒâV ï)í ÇÃ/§ÖGqØò-$ºõMjµógÔ•à÷ˆ_w¿*;·.~Á#"ðœu·sŸ€¬‡o”¤ £†–@è'AÅÀ2NËà:ëêé ésÓ_Ϙ‡.ï¹q¸d©çRSî}/ŽÊñ`¸·ŽRÃÖ}¾öS`\gÍ´ ‚cµÏG\9{&ÓŸ¶ÂE» üi{[MÛrWç.…Ò×s y»À·@®ÇQñ W£ÏB£ƒmJšw…¶OµÜ,†>¬cˆ!ϰÔÖ¾Õ¾£ åËòI(«îô¸Þƒ´Y™Ãò•Iy‰ew@ÃáÍßj»ZYÚÎo¯ÝlÐÞØÁñۃП?½àeù<Ÿû ûa0¾¬<ƒCŽn©\¤„s 7È2®d¦ M¯G¶íñ?Ü.^ßÞsß,Èn›÷Fád‰«‘—àMOw lÝ.žÎø çØUãL÷KÉ`ùɼÄü 4}¢îìš} ¸Cƨ¬Eprÿþ_Ž6,®¯]õ!t}xíÐPkYƒ´¤XhÓ»­ùrHØž030?a±›¾ýN]]uí¥IÖ-[6”ã lŸ3Òu7|ètïK£ Ã\:Æíwû¼÷d¨õF┺]ÀÖÎ>Ù¾DŠX$Vv4n}þô}øb¥xsI}¸2;%ÿüwpê±½mY q3ƒzZúALçð‹!Ùpü§ã¯Ÿý.¾x°Áñ‘p½×™GBÎù ‚AR/ðcð_SÍw"Ÿ‹{8º5Y§ìÛkÖy–×A†iwi]álÙù).¸^óòÇW`zßû©·%4h˜<«vM¨éK4לÅé¢%ÔO0Äl;¶ÕÖ 9µê/ :ˆÓb1æÿXª@ú•ìwò2!íTö¢‚Q Œ³5Ž€Øéµj'÷††Ÿ6No €M¼WÙQ¨:üé[ø¢=Åß}¹®œøìHðW-AF 8z”,)»å¦ I?;Ùòéž½+ÏF¥<¾¥%e³OàÊÀw!²c\YŒ„€Ÿ#çDìÏu¬ÚB¶¬³_†˜º¡ËƒÃ  µhwñ1(ž\´³äÈgt”cÐ$®i«&{¡ctÇ/Z6‚jË<±e ‹R~ë€09„þà vï®ÎYn·g”mrvr߀ܕÅÃÊ\XT芅âAr¨ÙM’’/5-³[Mj³ tïë"÷ÿªÊnó?ð§¼g£;Ê}ʆ—–”>Zªo°/ 7Üg:¼ŽõÚûí‘« 5-8XœÚ\£Éxœ‹Ã…Õ†b?Ý9ýˆ›0&àuh:.yV­±P3"VD¤ÂÉ)§'^¸~¬»uÿž·@ ×­Qž†ößµ hô!Ôù¬ÆOñ!Òv"¸ØúZëX΃|V›¥mŸWë„M¼$¡ÄT6ÙÙÒÂ3Çæ<g÷¤Æex@·ÎþV j-OÚ]ÿgèØ°Ñá&‡!Øbuîˆn©ò&Ðëæ9 ·ù¿àO/xK¦¥·u,XWÚúÛV@ê6~ …ú−Á '˜øžÀ:@¢XÉvÈ“ï(<™Sr¢ó§@îÉâ™eƒw‚6HœãRëp{C°¥&…FAƒ¤Ö=GA€¨!l8„'D|5¢fD‹NqB¬K+»–ÿ:üéïÚ_çoƒðêG¢JàÌaß®€a}u€jÇ7}³É—´<ÎT} ´y¤ÓØ®K!4=twÈÇ`óøe[A¤Ë?ɰGÜ-¼f(\šãyC¿Øð1D=Ó=j ø?baKïr-ÇáÚ‹95 ³Á{NMÕ®AÉg¸{0F{ë+ ô„èjyÔYúõA`zÂ{dMˆtÖ¨^{ÔÝ•|Wòj°ÆZ ¬-(¿ê!~}Ïêmþ»üéoëfÛb}¢[ÆvŽû‚'Ç<•°œo³R? "E;cBç1ÝztW ²SdŸÈËàêíÖ»NA3wëYí$œ]{òîã™p>ôp 7@×Ú+Àz1‰Í ŒWÆ(—@IP¦ëý€KÊPå{”ýú 0½e-µõ€˜qƒj@=É;ª? QQÑ5bBÁÒ×2Äúè÷è«ë7‚~»^Õ7ýS†N†Ã•]‹·¹ÉŸ>KsïZï‹Þþɵï®F‚£›ã Çh°õ³»üúBÜgqÖ¸I {U7J÷hQšNõ@Ñ/E‹“!gIvJÖÓP’]œ[Ô Ä4&³”z"OLÞë8 ì Yì®ò™ÈÞWF)y /4l0<þÇü§lƒÀ½ÑÝÀ/Ó/Ó{ÅXQ³²ké6Ä-#øÛÜæ?Á­»ä6·ù7¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥¸-øÛü¥øÿEH¼¬%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/lr8.svgû%ç…IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ul1.png0000644000175000017500000003045112240014740024036 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>/¬IDATxÚíg€Eö·Ÿê¾9L„aÈ9' "ˆ€  I QTVÁ‚"‹ b@ "f‚Š DPA’$f†arwn¾Ýõ~`X]×ôîîŸK˜çKOè®>uêwëž®®:%d%TQÅe€nª¨â|R%ø‹ '{È.à7ø«û# |jy·òž,å+ö„ÛÊ QÒ\àœä8GA&Ê(i÷Wî îæ»)goöHÈ!k;$_Q{EÎPóŠ¤Û’¾cc+c;`9ïñ>`@E weÂ!ÜTñÇxã¼»½óàôžTNýÊ^,Xó.h-<Ëm`žHv%¤šÍO€’a…†ÜþÐìÚV}ÛísЬšUªZº’ªæB#›,2Áÿ®…ÕÈ×sÀ™é'Ú¶Báƒé©'‚åIùÓÁYOvôþŠ®}\ÂÉ÷´Ø»2oMÏ>=|“|=|MÂ]© ‡*Á_h|ÊG¼y5ó¾Î=gŽ¤Æœ°‚ŬæzêõJ¬9ªwŒ{ ª'¸*Ê—oó롽Aü› W浆½7í¹Õ Eë ÚæÇ‡8ÆI@CC w%ÃGÕÝ…Æ` ¤åÍn…³j¤Ç@ý¢¸–¶ÉëˆL´‡¢®ùYÅ+áØöƒiÇíPçžä1ƒ¸Ù:ʶ äF{'‡üW{·¸½ wÕëèÑ |¡+»€Ît¢S¸+{þ©êá/´r­TsCùéò1åMÀ½·ô¦Â Ûº§D†ìƒ­ýÀz§ùS³Êk”e¹¾‡ãýGœ¸Šn)n[6¬Ë4S'Hàìc9®-¥EE  h[ñýÅ·ƒ¬-dL¸k>ªàÛæ{Õ÷HyîdÑ HßYPãèÕöA­!:ð1è›äýrxƸ۸‚¼ZÙSó®[ª½±µ6mè« õ®©yWÂkP}:³3œŽLŸ2äB9C>îÚ†*Á_ ^óo÷%CúŠSo¸3°Ä“ ‹bÊ"»ƒÒXYª ƒ¢‡Jz–¿¹Õs~,(_Ny‹Š' v}ÔŒˆ‰P£~õŒ„`;lùÑt5øº¯+÷·E…æê¼$'Ë‘á®mø¨|˜ñw÷÷òße”ì/~Ý\éÅ^0Ý-šëûÀþµ£µ7p?mh9‹²æ.ƒ¬ Od/cgÖÊç æÅ‹c0Dôw6r|Êâ1Ú¸`À  ½|22“=lw­ÃG•àÃLaçÂ}oAN»ŒGÓ;AÜ#öc{ˆ¨icš2—Iò]šæ&zCÅÁ‚O‹öCÅ3…·–Žó绌o›ï1? ÄL PÎI¹ äýGíGÀ¦'ê-@4 :‘á®uø¨üyFo¨×ÑëCÙ‘²ieCÁÕ¹dTþ~×sàxÒcþÌ‹L/˜ŽCèDh¾& ¼›Ëã~<å¹ÆÂ›AV+»Â5Ì_iþÞä^àüapFo£Ýòf}§}³üN~n/„*ÁŸgü/ùoô7†´ÌÃ)@êíäê5ÛǬtNCM%$ws3x÷ùÇAÆ”Ì#9×€{OÖ Üñ`™éÛè_ öÕQQ`haYfþäC²· ïñ‚/Á±Ë0Q ±«9âëƒe¾­‡5är‰<Ê.1J8!áï1 œkÁ4^4ÐC†+Ýœ~xn÷¸<¡p{ãüS%øóDIIÉÓ%7CÆ‚´+S’À07Xè^‘#-} i`ßnÝhÙÊ×Ê¥7ð¬(?A°“¯Ü ,™ësÒ üTÅdÏQ0ýy,¢7Ôʨ}_R*8š9WÛ»‚~›~| Ä+âza‡¸­Qu"f€¹±’(GCÎÌì²¢Á·É;Ì{}¸½rþ©šZðÅnv²ä¹Y‚ŒuéKàTðȈƒ5!ùÞ¸æŽ ×Ë9Ѻôùоäj¹Ÿ£ "8.Ö$ðfО§‹Z––€û.ÙGÿª-I‡jM©q+8¾µ÷µµ¹P~"'ŠÏÀñ-ך%ß)ïv(¯WV§ô1vÅsðr½y­üÿr“\/·‚ïsïß‹àªV\Zøø)û¨ ;82ãs’²ÀZfI2½r‡<ÄI —|Ê@Ï”7ÈÙÜéKð7oNQlém±ŒË¢J#f‚Ýl?nÆÔÅjMÐJ4·¶ (§ˆž¢±¨$‹9òiýmýG N¦0 øH··ÎU!ÍÿÁ= Žpêo'BÇîyÙ„Â)œ×5â$Øb-Ïšv‚è!ºŠ¶ ®hlgû¡tiù4Wc(ü{Ž!¿ðÍ-ÉóJÃ&Ãã`šñ¸³ Ïލ·€ˆïò |Ì·lƒP(ô®æù±<… ŒM5LÇA¼­H%7Ü^:ÿTõðÿkqÝÁ;ÒÛÈÓNÉc‡eAä@Ú{þ RkÿPÍâß±ôÆúa¹Ľb•X¬á Y¹Ï»¹02O¤ªgbÀô]ÙšòñàðÆ¶‹n æï#:¶m„Wüò 9ÀK¢Ó‰RçðÆÀ7 ícKÁz…=Ù^ ªÑ𺺀ávÙù¤ª‡ÿì\\5\ÎòA£Ý×Á&dž< Ú‰Da:ŠkDÀ…П» l—_Éï xm~Lá‹P gìÌŽÓúààÐZ°½è8iÓÀ|«ó6ûËD_Q ØÍË,®£“h²Ÿ-oc_-èsõ¯hö%ŽîÎ`8mpï ··Î?U=üÿ˜ü+òjäM„”qÇn<ü%ÄßíXaÚ ±ólã |S~ DbÇLàè úÒ¤—IÏÓ¥ÛÊ@ÙÖüéE`¯9´™àhÕ>¢8ŸŽ• ¨4SþL’cå4à u9²·Ì–Ý¡ì ÷íÞ±êk>fN€ø'c“ãZ‚¹Ž©¿éYÀn_ªzøÿ–Ílã{×ÉòAÈï”»'»¤ûOéǯ‡8›3ÛúÄïŽ.‹øä~Ž‘r3?rPQP+-DCKø˜À¿Ã5Ñý=¸ Êz–ûÁÛL#šƒ³ au\[ˆ_”x þ*PÊÕŠä0zÈa îg0×< “eµ*^õZ øºbÄâæÅÙÁ$LÒd ·óÎ?U=ü‰üZn’[Àó…·Ø[‚ó¼Mݯ‚i“ܸ”=ô”àúˆ'È”·œ½ "ž(¢@nã˜<úaýYm+¬îéàqUtsñ–2s ÄcKOÊÙü7 xI<"&€ö¥v¿þ1¸Æºç¸WCà¶ÒPyc`—w™oh=¬M­‚=%úéÈ9͹ÜÞÄÑ]$säùà ˆ H%‚z _/^“‡ÒTõ€z·aª: XÅR^·÷Î?U=üI05xGÀ§'¦”˜–|ÿÐÒ+ Éܺõª½ê8%WÜrŸtÈø)ÿùz‘(DøÇ¶Ÿ‚,Sö†¼qàµL-6€uqðíGP̶a¶`jlÍ·®ãÃ÷êOŠ^:òaN’â+r(ê2FŒñ‚ZÇ0ÄÝêõ cåc̪¼yÿp{ïüSÕÃÿ‡ÈÏIæ.ð›}Ѿ'€|¸w2Z«ÈáRžVà!1YŒYH)ÿ^Ž2KùLL¯æ©æ'ÇÙrÊî`n«|;DLUvŠh°ôs¶=Ê|SºÑÌ“c˜ ø ”Êg¿,£ˆ¥)íA”)Ê)Êå*ÀF<5Âí½ðQ%øÿ¢ÜÂ&…ë åé㎶˜Rk+u6TïS-Âb ¸XÏ>yBtt$g#x b¼øP™!H®…¢NYwæôß§¥¶òÏÁô¹ú¬Zæ—[ P×™VöÛXÀòÊòô_¦À‰¦&°YìTzƒÜÁ:¥ a!"ÜÞ U‚ÿ)Uüca ¤ßpêÙ[ ê¨íNcâEtbÄ .5HÞ•kÙ ˆÊ7 NìX fLºKŸ­ßKn›§T,É9œÿwŒtÝUñ(YÆF†Áø“£¥} ¨ß˜Ö À>^“ï•¿ÿD!ˆAuà«D3à„x]D3Žp{/|T þ¯’Á΀̕é2 Ç|ͼoCàÁŠoJG€Z!^çó¯"HœØARBÙÏň&4¢ˆšÔ *†»kz‡CÑ´¼mB`BfEn]ÐlîbïgŒÃ ÁZõQDg0Ümbþäùsù«>ˆ7à ŽÚ æŠ 1Ä qZ L؉ ·3ÃG•àÿ"º_ÏÕOCQ‡ÂÌÂãàUvÉÃùŽõ5 Ì­ å:àZÆ‹jeòÒPe(sŽÛÅ(1è.n×Bæçg–dK8ñÂiG ÁU<¹t/°KΖk@úœÇ@H^YÿÓ:Ý!2#ê¹È'@JyBJ@GûÁ‡*À3Ô«€éÔoFæp{3|TÒüEô;µZd~™Qz¦T””Î*ì5zÆ,Ø棦 cÈFÙX\jœ e¼øðð÷ƒ˜ †s3äÏÈ^™W26û(e$Xz¤÷Ї(ÊLàt´7²$O«ëª5 "S"·8,”^Ç¿§ÎÓÑ F Ø€DGщg‰Êð„ۗᤪ‡ÿ‹hÏè4rÔÌg¾ïÚ²WЧCâúØÔ¨kÁ2ÉÔÀ8¤.ÛȾÿ~½hE šÆX¾:¬uOû¢¹Åeà~?gdþã 7 ÍÑ O²¾`Ù ê}q“bvCüÁ8Ól‡y0@Ž—Ú¯BþùbÃxTÌ‚â¦`â2|ÃzŽ*ÁÿUÊäBFA°‰7ÅýhݽAP›ªÃ•BQ,Ò@¦ÅoL»C”D=ð÷öï L‡´wO÷ÉØ %îÔcg>SÂ÷‹B ´]Zc0Nr¶v¼ÖWc¶EÍ#¦Æ] , Ä1©¤ó{Ó{C€„JÁx Š‡+ÿo ·3ÃG•àÿ„€7¨c ôtÉÖâ6`i/hoƒã ÓlÃëÀSò)ù$È™¬b `=;úòOÎ ?>%ÞS¦€¿ŽšÿH©~¼_ê.(û(}@Öf°}Ÿúïeœ+WƒYD,vu|tTd ‡R[yXÌp9ð›è„&Ø@Ü æˆ'ë˜ÎÀzy÷ðU1üŸà:Tþvù\8óQÚàÔbpÖ0×RªC¤Ó~‹s8ˆ â[qàÃA*0›îŒ…ÊÈýì !Ä-J!PÝWÍÙõOÍ?îfy{ û€å:¬,yŠÏy¬³#Ó¹à|>¶]t(¯©ý”- gÉþŒ¨,ÁoÂO°‘Œ˜,òxh)Žˆû@éE7 nφ‡ªþOp¿æäš 9£3W§7[q‹Ò¢{Dîtþ˜ÏcŒVÈ5rË/.<·ÅLÔÙáIý†È‰¨ïûÆ\ÎÌYy×@à­ÒGÊ¿ý0 ÁÝW] ˆìUcTBH*­36ékP_4ÕçAåùg[×hœý@Øvñ0`ÄÆDÄåÒTõðBð‰€Ûw*¼¥]‹ëƒºÓy$z˜sLm£ t«ÖN¯ òédg¥Ž¨E5€;Å0q”¯*¶âSÈÝžÙ)÷kÐÍuå»@yÕ«ø>­†h%âÁ—jÌö DÝ[cXµP3¡æ‡ÕŽašº@ÙAn— ÿÀ`^Î =èË\ñ7 ‘$€ÊöªOUüÌ66³´Tí – ú°PÝÀ×`è#‡]Àßd¦ž 2RŽâ]~žËb8+ôÒ\´ 1ˆ·YÆ|È;Xнè=Hë|¢Wʃ Ž+–¥o‚%_Ÿ¤?\kxQ½äžèë£@ĺ-.bwEõŒ˜ÊX¥¦räP9N>úöëø¨l"‘z îNñ<ˆ1x•û#v¢ÃíäðQÕÃÿ 9IÞ%ï†Â@ÁÖÂÞP¾©øƒ"Äü`ëa,ssãµêVìr-³ÙþU§®HZ‰G… \¶’5e'¡°{ÖäÜPBãÁY z’F>„fveuŒ9*Lqö~¶ TSº‹q ÷’Ð义͜ Y~Ù]›^`$„0‘LS $üÊ£€W¤‰!€¬zÓZÅ/ЯÖz)doÎZ’1Ê-EMó¡ZL¬5Ò¶úækLA>Ù‘áP“8b€6ô£¦{ysÀ³¿$³,ðj'´ Œ>{ºÚÞpƒá-°Äè‘׃qƒm™Å|)g3H/®Ê²«Õ¬1o±Q®ÙJ¾!—k”9ŠD@y]IÄP=Ü^U‚ÿr‹þ”>Š®ÎÛ™s#x¶”9‹—AìŽÈ'É`®fjjzd{9HÞû™‰ÀÔ¤#-AËô÷ ^=9Þ@~¬ïÐ@›Yyþ^Ó×F "Æ$Ή½,Š#h¼ ï^\¸ùyôçWˆdªúFé—1 uÕ dgPœêfµ ¨šú7Ã7@=ÑD4ç²¥Jð¿&šƒ¼Úà@±w&误õñ4WÐÛ¸‹Ÿc÷_s.´°h,:ÑB-ý#1Øàž wê{tø+ÓÝéloXvA­EõÚÔ~¢æÆÔ‰ê ò ’d ì_'¡ýÝÄÕ´ýfm¶€€1ø~è͆Æf`J4?mš ôäFúrÙRÃW¢ß¤¿¬oÏO'OmPÉ­¡;Áô­j"¨ÏQù °†HÞ&¢’ø9°`Žd‰ÆJE".žñÜé}¤ªÐ'ƒŽºP½ ¾èQk¡ÖSµ]IÅý]Ôy »ËN̹š2îß©À-ôÝ ÔZsé^ðõ tÃ^Óûë`Ærܺ0ð4ôÐ{‰SÕÃWâ›îŸçŸùwäÎý̪2‹öÝÖQÍd‰÷ÅTKXîß/Gôh 2SÆË«Àß$pM°:®uÏöƒ>Ð}£ç][ô ~Èg­–0lH8Û b·Å;cßÛzk‚Årª|Z.ô-x×ú‡úo“nî`é¶ŽÖ¶{AŒ“D•à«pm.7•= iËO¦Ÿø lÛ!Î@õ¼¸>ÑNPF‰ê"%gÊEPÐû¼*ž­…6Kß%ËËæ—wï›%kJ3Á`qãýÄýNù*˜–F¦9sÁöH¬Øõ`˜f\kè âuRñxñòÏ) ¿Ë#b7CÐ:­½ ©Þ»ümÁò¾íi[K°OwÞìèÌâ^ ··ÃGUHSI ¡°ÿS(“%Ï퀄æ1ß‚u†å³ô!r"#@F³Ÿ#üî«yQ JÄOŠ 9B³!÷DÎÒ‚§Á}¦pgI6Xj†6…š·ð.‹ÀÒ4ªaD=ˆ’xKü2Pž4¤ª/·É&²¸ Ðá·UÁ$‹ë Xjª=žG}C×@¼ÝRf•`ßißf?b˜.vЃïÃíõóO•à+‘+õ5Z2hëQ¾Ó éw«Ù D¶è 8¥C‚ ðóÚÔ¨³£1¢·èBGPâ”áͤ}¥m…¼úÙýóvûá¢Z%SÁü9‡y#•½Ê,ˆÿ¤ÚÕñ›¡F½:9I.0î3ž4j o“wÈÖœú•FþèÅÝÜ@×N蟀wgàƒP˜®5û,uÀ2Äb²…»no‡ªæûõ z?‡ v6ÉWõz@€ê¢!ÿRPQ€\ (9^>ÅK '“E„bƒ­BAéô¼ÕÀ—RZQþ ˆ QOX b’-Öj‚èêÞX«?4ú´Ñƒu¿£nºÎ¸ô,½Bv¬¼×_i¥¾´§h'õïõ)à—Á»µf`œkc²€q®Á`X `ÂíìðQ%øJä Y g‚²Ï€l¯ß§¶\K߉7ÅK ÎTê*gÀp@í¨þè¸I‡’…å“\&8¥§g€ƒw{2¥¤’‘î9%ÛËŽ€L“Å@p¿o~Ûd‡œwz’àØ]iÝ3ÇÀ¡^'¯OÅ+Jï-jŠÚ[ âˆX+VhG+ðs„sXðãVp¥¸äíâ˜hb¢R¡ÄGÙÈÇ@$‘—ó.~—oHSH!…@Kîä1гt·vÄ&ÙIÊãâmÖÇ„ƒ®ôo UƒŠ)î·¼A€ 1ø.h³õL=\Š»µÇ ekÝ=(|¨˜’VP^7woAžsµ©HÛgêíêK`0F|íx‚”•Pn¬¨í¶C i 20ŒÛ Ë I Ê—äAp.s,·åq†áIÃbˆ5âu‹åJ¹('‡Là!‘)¬ Lju9P$Z‰“l¦g¸~._ÁÊ'|ÁvÁCB}ýÁœdøV\b ÷1IÁý¡((5¸ŽVL‡c)[ÎCÁsÅ_”vs±©ž©9Tï]ÌHˆQm"÷€é3ÿÒ@H‰’+ô[Àûwÿþ@9æÚ†[—A|«j]âB›­-ç5öAû‰6¶î¼¯ûŽÁ‰µ§?Ë9uòW-»5\Yïˆþ6ª·ó0v2¼`èäSD `Æ@ 2Cø‹(PŸT†‹Îávö…Ãe+xy¥l/;@ÉÔ’u%[ÁsEEŠësˆºÇÑØú8d¥å-(¨§ûf^“SÚ{z7ý0D1ö6ðjŒ1ê8 ›Õo 2Îç˜E-ý ÎL9±!- L{J•9AÙÉßH±XY¢–ØGÚNýVÇ.ûFpªv“-L‡£;¡þéZ×ÕèZq²¶¶*+3w¸:y³½[ 15ö§h 8:Ûž±Î‘$’™ â¸Ø*ì >S¿PG#Ä`±>ÜÞ¾p¸|ßJ6”ÉP8²pDA6dOÍöf ‡À× ŠWÁÛÜó¾»-hKµÉò9°»l7Z" æÖĽñû ~FÌ«‘ó€Vb!7ÒX™¥Ì†Œ§RWé )õM:žêãee®C`_yãG„™\ƒ†ÀAe¾H}Œ¬'ßÃU†$µÔÌLŒ¿ìWÛ†[;À1cê¤3ã  _ÑúÒ;@î×÷ê@òâ §‚êS&?¡ôV†‚ð©Õ«AÜ&’” `0,Ü^?—íC«Ü&?“oCÉ›EÇ ®†sJ·'œh“vôLmˆ¸Öq—}tèÚ"ªQ/è0»EýF3 z^䳎 ¯ÑGêã@¤}©û!47ÔY[ɈÒ&àj’ùFîpÐ'ù÷Ç8TyãVâ.1D®R ( æ‹–¢3G¹Àb–±´¯´^Ú{à¨fëoM†VãO¨· Õ “TdÉ«^ø1” r)ît„k@l¯)ŸªÕ 7]EM17ÜÞ¾p¸|?ZN• ¡HæÍ_äªy×Cû¬fÁ†iPG­›kÔƒÈ~Îbû#`qšÏ˜Œ Ü©Ä*;¨ûA›¥mÑš@ÖÁœ`~vM;šù&(‡óž*ˆ¡µà"~^pm¤9=šâ€rÅâ àŸ™ÄäVöqD?QKøÁ¼Éô¼iÔ§Æ6ˆíÙ,"~êrüLêi(º·¤]Y'0Ô4ö5Œ‘  Ã5@¡)··/.»Æ7Õ×Ú{Îì;½,mÈ ¾“ååP÷Ö„Ç£>‚&Ýë¦Ôêæ7MO_}Ì‘ý@Ÿ®)_ò(àVP³UUý´u¡ëµ"8Õé¸=uäLO›–Á®IîY  “&yÈÔJ^£Í@ÌSÙÜ+^Ý€"Ðøy¶eÄÙ”2([Êž€+Nˆ÷Doú‚›‚mdÏ(˜Zxòúu)±‚©»ã˜| ÌwXVØoÃC¾¡°‡:áöý…À¥/x7n*@> ï•÷Ba^þýù`¯gÏ­ó¡Ö»ÚêÔIú0ùP§©í• ¯Ð_Ö7€|„T2~ ZÒ‚F ÑTF€×é©ïi/lp¬Šš¦Ê3Ë!b¹>T â4° H©´çZRÄ!Þ¯ƒøŒÃŒ:ð:/qö×/¿w0^ø@ëªÒ¿‡Èo.û›ÐüãWÕ‰…´[3ÖçÜþîÖÚ£P³I“+j}æw,Í, ÃÝ—~H³ˆ—™¥#Kû—Ž…âù]rë‚í;ÙÖßœgÌ{ ±`¹×œd²‚°‰ñ ÈSäRÈÏ©ìŒ1€¸Ji-PòEé å­àdçcSS‚ç™c¹§Ú‚š\pOñJ6Æð8ЭҎâÊc]Š«€eÊR‘Œ± ÐðälHó[“ÄÎ-ü¸‘qò>0ç™öAìÂè“‘CA¬3,7&ƒéÛRç=P7½Þ”ÁÙÆùŒ3'Üpápé ~ 1 rÞËú>s(äËì‘6j¬úÊÑ "gÙÓ,‹éd Tà!”ã¢ðÍ )jS›š <¤ÌW»CQ«‚çŠ3àèÌýE‡‚àð¬Q¹#Á\=Ð' ߟýfáH¥çÒá%‰Ûéb®²UÔ‰>åìâë`å™úïWG~!7ò=(Í•}â}0ï4¦˜u€ÁjV¿}œ½#Äý#¾qÂv0M1M3Uõðÿä’¼Ü'wÊø20ÀïÜ…™¾ÓÏAÙ7y/e݉McÖ9‡Ïcý ôL™ »ðs¶ßÊ­EÚÓäÝŒç>ì| Ê’× 2o<8éØJз”ßT¦ƒ•DVfõ-¨ü=Py¬Ï0z€xO|© ñ7a{ Ÿ<÷ÐúGÓ€­˜1ȯÙ²Ãä(P>`¨¡©ÃÁ¸×øñ`4­/çlÁ¿æ’¼7èÝï}RfüáD¨Ÿnr½b90ª†9êk@íèSö[[Òˆ:J‚€ö¶¶Q‹”Z§oËX ™i‡fïj“Ó÷fÞÊ`ÿõþ6@‡sVÏÍw©ÜfFÜF7F_*׊ãÀßÄf‘ hgcôË÷þû¨Y™•8KN’Sƒ|^¾ ÜHwzlXÂÝ—¬àý}.ï½pÚ}*âøk ª¡N>?T[»#²(!ñˆh2úr`:£ÿ‘J¡ØÚÝÚ5Ú|È:•é˹ НHe®Ëâò…]ÀÐE?(ã@®¨¼ð\Y•µô•ÇþÊ£J0+Ö\Ë 0n5>dܤžÝ¿/ùWZgQD9Ð…fÔCoÕ¤t±FŒåäv\*wÉ‚¿PÞeÂ¥#øÊ½Ž´ÕÚRísð4¬hãºÊ-ŒÉ½ [äáÐzp¾c[ní b´h$B ÉXûå&ˆ&Ô6É9,í–`P#ÐÇê‡åm 42 ^òV>b)Èsë\Ï¥³k|ö¬ühw[æ@Ô©X%ªØ·8n´½ò ù1_…äSôê»›ãd€xŒ[é–™æ¡ÆM`Ø#^" Üîo*f€6_;¦…ÂÝ8—Žà]¸pAѤB_Ñ Èk—=0s ÄÍ´ÝmÈçSVi\ ¸D"í8»×ÒÙtÒAþ@úú™êk†ŸÔ{ Ñ{¿¬?æ¶hÒ8 | Ä®‚Š6†2à  [ETY¦¨|ï«Lé¬ë¸ËÞ j“Ÿ¯)!&.zJä(`3x8%O‘þçÕ•9@*0_Œ}Á>Àü¸é-0¾ ¬’3 |By÷ò§!°<ø]ðµp7Î…Ã¥3_9Ï;¿WÞöœv·5óôT¨¹.rŸ}Døíºy.ÈÙša@nVðóÖï¿Gg:Ê›@ÍQj<$ŒMh»šO¾b{k"Wi,¾Ò¹'¾Ls€ï£¼zk!X½"Õ3´·ýÃ!äÕŸ“ëÁ—ôrõ›!nSb½x86ÛšZoLòùÈ<ò(€?ݧã¾e'ˆ3¼ÂJpì´°Þúní¸¨€’­Å­‹Ú@l›xc°aÅî6º¸ø¿#œ¹L¾.Cé}E¯ƒò'Šúä¾Í6ÆoK®¶B˦6 ½©/’ïòï (~ù•ü¶2•žd˜ë“Œhx_ãÏëφ«j ¨q5œxíÔÉÓ·BÖÕé?d^ ®²üCÅ- 8ÜÝËSöM¡(­ÄÞUcB)D,Šº>â0ÔSŸPzChcè!í.ôs|&¿•ÛAdˆab 8ÚÖY_ïTÏ4-ж¾Ph…ÀˆÚ.ßPàt¸êÂࢼ<,]Ò ¾–¾–¾6 ß öõ}†¹úœPW3èEPi/^tt9Ÿ7òýÓT.í«|ñ„qDdís[5Ë=ÐdN£.õÚ@½`íþIó@‹æOƒž®;ôŸ@"gs ;ï7ÌÇ®ˆõŽÐ2´ú+•÷¹Ÿ÷„ú3³~àÇãŒ`(XVšOšïÕã™çiï–í/ Á†æÕ•ÝîÖ ?} ïÿÜ?Ϥ N½2ÅB¶öÖ†¤Õñ‹£|`Ø lQ’Až” åPþºÐÏqN€•ãóò Ç8rº!g€²J4Tê€}—mŒõˆÍŠ™5 †Us&ô€j?Õ¬UíT·&¹ª½qí>‹í†M»aÈDi—øËBÿ'eTàêR“ê LPb b(ÉúƒLð|o€ž¬Ñrÿ?ʽIJ’pòŸRº»´OÉø¾ç–äï&Bd/ý×n¨ãˆÉ±™Àøµ±A‚p’O Èïøá¶úú†ò½è« Ú—e±¬¼Û+úC§¬îý{}ɲîâúW†ÛÊðsч4ºCk¬-ïR×ä²cé§-ÓbãçXO2È ‡8Æ_‘/6œ$Šf çÊYôfÚÂàÈSò\ZŽ á62ü\ô!üB_¡Åþ”ÿ5OðnèàÄJѶr• À…o¸­ý?D¡:I@–´Ëàkýz# WÖ’ÿ²ìKˆ‹VðÁžÁqÁ‡ÀS¯â³Šm`1+WÈÝ`JTŠàqù!Û€"*ðñçÃ; qT ¹JìÕƒÚXÀ#Èá6îÂᢕ@QNQ›¢.w&çXÖ@ˆk±Åº¢9Œ¶oANb”þÖ™K#vj{å|=ä£ò¤f¾á)™òß~épÑ ¾dKɾb+=œ¿5÷#ˆêàˆ¶Áñ}¾ÕÌ“ïÈÏ@–Vn$p©S†‚xo€2T.—_‚¾Co¡ýÅyçòñ\¦\´‚÷îqGVÏ—M*™–v¦ZÆ`~×tÔØä6~àà­œMx©¨ÜöFÊ(^g\Œ’NùËéÁÞÊlÄ—)àË(§xƒ7y äáfA ôNÁÕþ `‘tê?*W2´òš‹v°õ?À‰äclA€Ü'ç‰vÀ{¢@4þÅyUÛV^ Ô§#Ý!è¡«üí½]@¬ ùüY@'FÊ€‘bp¸ ft|À‡ÄqÈb.;ES1âçU þâ ô`h|h,z çÞ šâ_ãI‡¨C¶Õ¦—@-?‰8wñ¦ÜnkÃB Ù€G¬~ ¤lUß1[4Q¦üâ,#ÆËy'î‹FðÁ•ÁéÁqÑøLµôç@¦ê{k@ÍšñéQÛÁh1äªÍ@ºd»ËrΈŸ4~n}”} v©ƒ_]”Fby¸»p¸h/sôú*Tóð y€-¬‘ÓX %ãË›UÔ‡´ÁYzÞ0ȹ¾Ìì݉ûê4hT:mîÞï Žî§s([”•ÿ.¿¹xÿ+ ã ’òK sPº?M‡’ŠÜN™õÁ°B»Â×lWZD ]È:³GNÝ­»ôÝ:JÕ}¡§?Ü+Cò+Ê£z/`Œ¾@ö¹ZžÐ‘@S¦€)Þ°U–/L 7ƒ}¡õzK'°Ž³t3ãXCº:ØÀb10â'Œæ)9´;ôízrë‚= P;˜z©A_ÈþáÁ˜ÐcúH'ëƒ>”½ÌñªØ¢æo+C•û ØYŽQ[ƒïüA}ôvÆy¶%PmIòmuºB³¸æ¶ì Jmåêp·Ö…ÃEÒüš¸ZñÖ„öiŠj%W&ª³Nÿ”2ëÔ›}<{qæqÕõô(oI¯l¡”Ð>}>xÛy¿ó?ZH }r´~Lër«¶Fë 2N …îù~X{”XŠôÝ`iêbh‘&û`ËãëvN“q•ËcJ"Xn2õåˆxñœ(q ÃèÒJ)Ã!X;´G«ž=¾¥Á™àIõñÏ÷\Ÿ90Üë|CC׃…¶CÏí+Ú‰Æ ž2ÜnžLVíwcâ‘„ I×f£[ކ˜©qÏÆµóCæ8ó O )úµÃÝR­àÙÇIRV޹?æóØT°4´,³®…ºWÖ÷7˜ ò39†1@ŸËÓ Ëd‰lzgͨ™A6“ rwË«2¹Qz›l O±\Æ€|B/Ñ÷‚ªÿ]ß$pVl. ®+K%:ºôPIMööÏ/{ Ä5²ÜBUJEGCÔ€š †Rãa3`ûÒÞ=*,ûV;€Ä†¶çí׃-Þ^Ýñ ˜-Ë+ <¢^mâQG9DŠT“Ûœoù;8:ßqö#ÆÆÕÀ;ØÃÝ42mH.B÷j ´•àò¹|®T(m^²¶äF(ŸSj/½ü;ý½;eŒüÄ&1[$€¸Ci¯–‚ñYÓ@ó8°±7²ÏÛ^û»lml+í‡ÁÞÜ.ì§ÁÔÐ8Àp ®Ì 7U‚ÿ«œË"œK.¹ÀQŽrØÇì~b/{€"rÉ$Zåâñ³‹¿ ˜±DÔ¥ ÚÔ¥>P‡zÔêSŸú@ $ÖªüÿKª_ÅeÅEó⩊*þT ¾ŠËŠÿé$„&,IDATxÚíÝw”UÞÿñ÷­Îqr`f†œQP%ˆ Š ˆ¢˜E%WE‚Á¨€ Š‚(f%) ˆ®€$H40Lα§swÕýýî>¿}v®»=#ýú§ç0]÷ûϹsëvu•guP"=€¨¨?R4ðQç”hà£Î)ÑÀGS¢:§DuN‰>êœ |Ô9%øÆ®€òAö–çËV ¾¢ŽQ¯Uþ:<ä#òVy5Pƒ 7 ¢¢FzБ |c×´ƒâëŠ]E£aÏÔ]/ïÔÃw›ø¦”=TÚ§d‡;PM-µ‘täè#=€¨ßG~)såiðÿÅÿ?ògål>ù-ä-ÉžqôB0J1_»J®‰yÚ9 ¯+MNˆïü' ˆH"z-M#¡¡¡ øË&ÿI(½´èpÑpж³éÖ4К֟_ñ.´ÚÑtI“Û p¤ÇB>ÄÉŒô–“ᢼÃzÞʇÊÊ©HõÇ‹.i q&迨

    ´|ìØ¿õ­Í?‚Å*€–¾4%±/Ô¯¯Pÿ”ßYöaY¸:Ô½Qw/È›äå²_¤‹‰œhà‹³ë⊖] §gŸ|¤ˆ½9Õ“@w^è)_{(9VØ«¤~ؾ«çþà‰óõ vûgö^öÙ &0‰'#]LäDßÀia-O;>›w¸§ gÿT´wütB÷óhY›Ró0”/*¼¯øøzû7s·ÕÃ÷u;åOOƒ¥§cFìQÈèŸ9 Ùq+7*wEºªÈ‰ž´6p®® ëJa¯c縌^íš]~b úašŽ›½q< ¶Þµj¿å–ꪺjh¹¿ÃèöÚ?ÖéòNä½)+SŠAÔŠ¾¢¤«ŠœhਢE™…OC^ÜÉ9'¾—ZrOÞ›8Îö‰.êGú_ö¾ ?ûcÙO} <=¸,XM·µ‘i„”—Z½Þr $oMm‘:LëM‡L§>‘®,²¢KšB[¦MÕF‚ËíjV·Žgžsà È}øˆmÿvH}ÝaÐW€Q'©(ëV0¨ä[(Ê•Yw´jÝl&\ÐµÏøžË!!3õ±´Î /3Ül¼:ÒÕ5ÑÀ7.W]jí"ØÑö»9›?µkÍ Ò» s~¦=i6¤Šïï´AþΓÜyp´ôðCÇF€ù {íAˆ]?,.’Rw¤N„¦ý[|ѪXýöö1‘®®áˆ.i"L;"¯”ׂ'à¶Ö_å_mͽš~î¼ÉÐ’3㮋ßÁ¦Á[‚M¡¤àtlþ,¨^Tr~¹ÒË[~ÑìP™ö ¿ÑO2-„¬›Oo9lÙNÙS#]eÃá#¬þU×(—ªÇT¼Y6œšq€Hg–5hªõ2mŸÖʵŠ}Õí¡úÁb]Y\ò Ù²&·¾õPç¶sÁ÷exÖR‚©o¦6ó]ææ˜HWÙpDgøËI>¹ïijpzú‘²ƒ UÛÔãñAò̘‰6 Ô>YÛÂæî÷ý|*·Ut®N…¤I[ª ËàÎ/´{ rß­åZÚiËAQ•+tË#VGºÊ†#:ÃGˆ+çÉuP¯«™Q½ê‡Tu-Ûöaæ§Œ^°†-¹æà¿Ò[틇bÇé¹Bhª|VNƒØ>©ÅIå·(þHÌ0­±,².ÞQ²ô*p¾¸)‘®²á‰þ¦NWg«3¡jHÕúJÈÁç½WAL?s/} èÞRï€ö,/²_Ž#Ô(µ–sŽ=Ý:ârÒsSG\Ïh1tO¶˜~™ÙlÕƒ¸„Ébi¤«mx¢Kš?˜÷oÐ;öÜŸ°W¢—OºÐîòfZÚ»`|Ë`зU $x1¸®¬SëK¡º¸ü©ª¡éí®lµRe^Þü¦à¡ö`ºÎö¥£leq›ÞáŠÏ#]mÃáÿ`ÚêGážPþYñc…e 7x;A\§˜Kì… {T©UÞ‚ãmг!;áÄÛ9#@¾¡^®®‚¬î;NÏ‚ägš<´ÊÏ«}Äu18!Ñé™Ç3 Ž(~%z²ú¿Dÿ îî÷“®u/Þ©¶dƒ)¬{/@¯éstÃÁ<ÀõPp*§cþ¥:Þ<§ Ì ¶Û­]¡Éñ´Å)€=Õ~ýZ¨œT·ÏÓ ì/ŬŽÛ)½Sv¤´åå]eU¤«nx¢Kš?HåŠNù_œ«œÚMºÄ”›gB—¶–†8e+iƒðhu£ú=Ô­+¹½Ün]ÅËUÕskjYòõ`¾Ì±Ðþ ¨.í¸¼‚Vm…xôíŒÇŒ[ÁPdpèÇO³ê\¾*ò_‰þR½¸j^åB(½9qîPhs{âwæ× 6ÆÑ×R>‹¯_ œŽËXØJŽž8uz$è'zfù:CVR›yÍ»BlubLÜ= ¿–cØ •£º Æ*9º<`w±.ÒÕ6\ÑÀÿ_¹‚Á\a_8+lÏ:W|Íçà_êòUóýi/gîËùf£é$¸2]w»p²äDÛÓ[¡bBÙœŠ»À¾×öŽ%­µóµÜ ñƒÎ}\£|‡Cù ’u©úµ@Q$fDºè†/øÿ#j7õµ9TëªmUS@=Ͽܭç_ͺ! +º3än®a4„> ~ôB•µäɲ©à¿F÷£îYHž˜z5d^ÙtHÚÛà¸×~¯mÔ]é;R«1A|¡ ñ×7°ˆtõ Wô¤õÿH°upn` «>Ì¡˜äª«^-Ǧ}ô%˜ÚÞ7¬:³ŸBÐæ…Æ…Ãà=]}¸®-è7[f˜&‚SŸJùŒ›óM”"1\œâú1D'å"¥xBL»#]uà ü™¼\Þ)_ŸâÙï½ʵÂïs/yÄŸán‰ŸÅ}è¼ôƒô³uñ ¥|Ž÷ 4/4-4ê•ê¤Ú`ζÞgé‰-Óš§ìå*¥—Ròù´üèÏÃb9ˆU¢‡²Èt±)ÒÕ7|ÑÀÿ—ù¥_ø;Bm÷š6U `i#†ï‹KßNüòf¹Aº€Å|Å^·SW¨Á“ä™ì+‚WuEmk°:mƒ¬RL¯HÙºtý:ȶR‘©@HŒKzÑ]9Åt±%ÒÕ7|ÑÀÿ—•V–-ö@ö´#ï: ©ŸÆN°õ„&ŽDOÜO€‰œÀIÊe T÷¨]êZE¢ød™ÁÞ&¾2ˆ??vó¤V§>‘Ü t1:©[²­Ì’]±¼Ò/z(Ç•éltõ _4ðÿe.{í°šƒPÖ¦(9 Øß1_fˆ§jß`m ´ ½h€+T^YñQÕI(êPøbÉÐU0œn?$¦‰s ÄnqÎsA1)§• 'ËÇåL ¥¸_LÑO´cA¤‰)ba¤«oø¢ÿO}ȇ¼ÚPm°vh­Â3eµê ´¾’Õê· GÉ£ì. 7=€´­¡ÖSµ­f Tõ( ”÷K¶ušå)°¯pœ¶ÝÆ›Œ#ôs@d=‹y‹÷Dne4ˆÓÊ#Êb`„X*VDº _t[ò?¤êTMõ@y\yRyޏû¹FCbŽã'ó|0:õóu·ƒ¬¦ŠÃ@=ýxHæ4…àïæžîÙ ¾a®Mî$0µs®´×ƒ±ÜÚÚ² xŽ0€•ÂŒd…\(/¹”bÑÄhåJÝj7‰IÂén4|ÑÀÿ‡Â…½áŸ!?=÷ÕÓƒ¯¹«¤¦¤ÿ”˜×Œ%†bý_@—Íäj Ò¸˜6ÄCÐä¾Å{=Ý9ÞÇÀ.ºÄyAŸnùÜœ¬’“™rÌd"„—« Ô«@¥-9Û¬·”‚nœ®§>9ÒÝhø¢KšÿZ N ÷€’&…óK! óLr} ɯÅÄÌãk†Íú@9ZN®dOƒš¬¾¢Á_T£; B'=ã¼=ÀÒ1f“ãC0ž²ž²è€Ö±XÇF¶ªÿéÀ3j§fkI`äüÁéã_M—EïNðë¢3üÊ+çÊvN Tz¿íípr`3ˆq"S<´ä^ñ$ÐMÌÇ aš NƒšuÙõ¹P·©bEõµ@S_R`%$9RÂIe`/sntìVÊqr.`âjÞÏ`ß5þç!p£ZeXΓ+âú‚q¾éró/׿ßé¦4\ÑþwÒkokGÀßÕ¿Ñÿè'Êêp"ˆæÒLg.¯»9MˆKDO‘Á`P m€üê|Sñ,¨ZX9¨z˜;˜F®ƒ¬Û³^ÌxâÖÆYb< Gq“¼ä¹Zno­ß¨‡ A}[sș؛Á4Ï´Ëä‰tW¾hà'ïRßvßQ¨Ì.­|X{£Áñ¹e„©Ð œ ”îÊpq>K}‚äoÈ™Ÿ?j^¬ýÙ5ì«cqfCÓM¦¾έÎ{3àqù3€wùŠmà}1PL‚Ð<µ¯ö8&9—;Ö1ßð¹1º-ù«¢ÿªR+zVÌ“‡Žo>ò,$4±?féMÚ'}Â¥\¼!WÉÀ vˆ5 Ž “ þâªûjvB¸¥6\³€¹8fó20í0?bžú{tß)FB¸•|Ï1ð 8×C°¿z;¥àèàxÜùè§êSõ?Gº+ _4ð¿“w»ç÷0¨ W>T¦ùKý#J°ýdikÍI'äAN b¨‡@Þ¥RÛ·²zcíR¯Ê| ˜æÅŒsÝ:ýºË€9œGG@‡Ÿ:  +¨/ñ.EʵºC`l˜mX¢£ˆ!é®4|ÑÀÿV’ÿï))Ú)µ}Èa‡¼7´‘Bkâ<ÑOtáÌý` €zE<,_†p›ÐŠðõàO©½»®ÐO¦ÊX0ýìH´= â°R |,”wðÂE%`#æ :èŠõÇAÄëôAŽ•‹Yéæ4ÑÀÿV9œæôßÿ©Å‡ï õy(Ô3°Ø(?×á2°aÅ ¢=­hÁé¡Õá¡àmêÞé¡Kknq]º)òžã'va;¢J )»]¼,à¡€X2EÙ©ËtJ¬~ p[¤›ÓxDÿiéZ²æ„ªÜjgµO{Õë ázGy%uú‹tdy‹A4§À4ñ¨ 5]꾫ŸE÷..Ù2¶†:Ø:ëStSÀ6/ÆáH±^y\i r‘|€é@&$p+#ÄÝ tUÞÓ¿¢›._ï2Å@FGº;Gtþ7ÒîÖújí¡È^° ðÖº>« @z÷¤Ú¸gÀüŒ©Èð,Èž²™œ tmhbÙ<Õ¯V}Uó%¤>ž+ȇëïuë!¦[FUj8Ýqcšn¨n¯ò(Єûe,È(”U õG´^ =†@ùÖÐÏxˆ±Ü,ÞnzGºK _t†ÿ´ïÔGÕÁPÚ³¨wÁ7àÝæê\ûWHÖÇçÇÎS¥ñ°ñ±²—¤ÒL¤·‹GÅ8¨ßRÛΕ¯ï({ÂÃSÁ¾Þ1Ìî€Ø¬ø¯b ¼­Ë×->”óy4£ÖUÞÁŸ‚/…{‚n†¡ƒñV0oµ\iíüUä‹èÉêo üo•ÎI6€™'Ã}„3“}KÀ˜¤ÕMå3ñ¸¸äàD:©Àí<Ì=žÍÞ*p_W­ÔæCp7È>`ºÑþµ8\Žþö… d(m”\ B·…[‡_‚ºöž&žWÁxØòºõ ÄÌKŽ_ ÊdåeM¤›ÓxDÿ+äò ù­ÁMþÀZU€ÒT†Ã[@êeŠl¼ÏvN±Ø±^LØ€•„i !›÷Rß,ð][7²¾7„vŠ'Ås`|Ì6Þš¶­Öæ–AùNyOŒFp1] tUhl8ª·Öýèn æ‘Ö4û»8!©ÒZP~V*•@¤»ÔxDÿ+÷×WAuyU×ÊÎ`܇g€íVã(}à.º‘r;¹¸@t¤™ ‡ÈIò¯Tgª!¸Å}Ìû%m®Yî ®SZé^õ–Ñæ—À2Æœb2‚2K\'Z·‹Þ´…àÚp®ºj.tßà»L_[–Û…„£ñï'è@ì»Eô§ß,ø_QwgÍk57AŽ#ÛrbÄdXîÒï…&©‰±±ƒ8,>ÏÓX,W‚¢\†ðúp'u-)½²b>Ô]]œ\–†¤ºŠú÷AîÒS.Cª¥µYK¼i q)ˆ©¢“ˆtx(m´ÖEþþï‚χ—‚Þl¼Ñ8Ì'Ì›†€(y¢ Ò]j<¢»4¿Âý¾{Dý2(ÙSÈ{ :Ô¤,µñ“cÆÚßy ñ3ˆ]la(;u ”k ì÷o‚üíy íàúK‘½t6XïL€z}¿uè˜NßãaCÀ°´µ4íf1ä °Y$3ÔûPÅ"P&*oéžá7ŠW"ÝÆ'øäÅ‹XÈ›¼ Ús¡¯ƒc ÜËïyÄ›r¾¥ˆž¢xÔÛÔ5;Èl¹\že_’ ¾›}Ö€„¢/r óÀ=´bV`ÝÉótﻺ]kPÛË/åS|1ªºÉb™ºó•ƒÊVÐ Ú.Ù0ŠÅÅ'"À‘nUc ü?zšg˜ ¡ÏCƒÃ@%4%Ð, uïj߃q£þò.¨cµ‡äj¨ÙãÚá~Šn(½§¢¸Ó|üÝ nyÍÆÚÕpâ¶£'N¾¢I多/Á~ a.ƒÐ$¹‰K!ÿÓRwÅسýÐeÇŸ†¡R 18†Xƒš#“ÄŸÈibšHSÞ;;ÖèÍRÿmÑÀÿù¶ö¼ö”U~m騼ª¬¤äbà²ðäàEP^U¹¥:êãÜEž4ðÅø'€WàûÀ§ u‘㵨‹B;T'øFÖ(u€®Ü3Õ»ìÙJ® ú\ãë†^ ìÖ™t+@ö”fyÈ^<)AmO×ZOGðžÄ„®wØÿ ¶Ôaj‚:8ų‘îUc=iý…?!ÿ ÎUÉ'&9eÙW/¿Á×Õ» N~÷NQ&뒣ϿÜ>ïxßТmSgÚè1¹Ë›†C—]mo~9$n0^n8ú¤pJx(Í•‘Рޱޮ6'´ìšµ#c tÿ¬‹±Ý¸p@§qm›BÒûñoÅ _Q ƒ$ÔæÖMs¹À¿#09ÝwÿÝ¢3ü/ì˜1@hJhfp:¼›WžÛjU-] Ó²ÞH͆˜ÛmÏZ_ÓÃÆuÆ¥`*11 §Í^eë žzÿ=þ¦PÖ¹øÅÒo@ù°rqÍl0- U„‹@24Ê^c+C:݆V`˜iðè] +ÐZËѾ!eib¼®õ‡ºI×ŠŽ¢)CÏ~²Ú=Ò-kŒ¢3üYîÕî+ÝçÁɇ=v ŒOiY¾· s|ò‘ØXH÷'”XMKÒf¥¼ºÔœ$$®Š;SÆzãDýz¨êRõrÍ<Èrêí¼÷@¹¥n„+ÌkeO9,öŠ |¨Û¯¯.sÄZÐR´arÈyr›,{ºuåbHž f%ÄfÚ{[›R+ƲÔµªGk ¼Á¢/ûÍÎÝÀ×QGà¤iP‘Qvwé½pðÀ/î´@Æ„¸Jë8èÙ®sA›ŽÿxL¾Ã Ê1Z\ áÇTE½4›v‹ö` /=ÁõIí.W!”ùó>/~”Vþ «Á8òÌaÅ8±_üJ'½Uwĺ¿ènÂÔãüøñƒv@ _}•²P9 KÖõ Å„z^Ïëž#ž;ä÷rK¤›Ùxœ»_Ê[,†ÀçÁþÁóÁ¯xÇÔgþÝp®oXzèíb?7¬3ÞÊWÊh¥/ˆ«éÅ…@%5ÔME ,¢§ÁqîG¼ë¡þDùôJ/¨†ž %¨<{Ü;Å1–rØp¡>DSå%å4à§  " ²Nv•7ƒùGcœÁ©®„½1mÀWTß³n”(nZÔÔ¥ê êC‘nfãqÎ^Ž”·È«¡ÈWX^ A•³tJQ¤oM¼Ù‘öù–ÇMCA~BŒœr¶\.Wƒaëh½ä"-[Z ˆ" ÄNP÷„Oª½¡¤¤ôÓŠÙPU0ºXå¶Ê.5_€ð†¿ JÎßÃn?Ê:²@æÊ;˜ ˆ3_<{äbùë@‡îsåz°þ¿cè0„pÉÈÔ~À²³z¨åŒ>bþ7ûóþ&0J‡—¶+ùʾ(¼0o¤MuÔˆÝ`ílZ B»„ t “  Þò~ug..ß‘BkPLº£Ê [â¼Ý~Dë^˧ §žýÿÅg_ÏÎôr³Ø#¾q‰¡á+‡u=”" H€$Hèï‡Ä~*)²´=êÍ Uõµ (–ßEoÓñÛýy9ãx‚¹Ac°% ÎÛyú<¨ìYT—[i5ñ›íƒó´u©e#H½ìÎC€8{ÿù¿æÚ3B„ ƒ\.;k£À8Ç´À´º¬íq¢ÛIhîîvÑ͸¼å½™^ðT¥nLš ®»RF%NùBËÍ–BÛŽté<š\‘.SK@^-»Ê«}ì”ûÿÇñ,8I\”q´ê½êPÐZ¨jh pœoYéf7ÚK ‚eÁo‚ ¡¨gan~>Ôö.»¬ð4臇šy®„¸ùŽÓ ÷ƒi’qþ'ЬÚt¹‹3kv ÿ"î[âh—h­3M{û¡ëÀ‹’ÏKkWG©m/¾6ùƒøK ˜Zs¿« ³´›µ‘û\“œ”Wá<.ùä/¤šlOžô–åX'ÙÁ>8û1˜p’x¨ ä7Úçá{@[­n Þä-yæ“Öë"ÝóÆàÏø:ꨅÚÚê]UŰóï_Ùò¤ì2%k›¡ÕÌæ3Vþ=ýäÝ2]&/¢üËÿr¥\ËÛÅq LO˜ö&AÛØvi-W@³Í¶¦ïY­ÚÕ¹ û³’/A‡~’þ°Í¶¯µÆ‚.Y®ä< rϙݙ¿Q1b x¨ÞÑkU ÆÉ>êÕ CåG€ŠŠèΞôFýSžÖ €²åe¥ä­Ë¹9ûXÓ´|ïA|µ¯¡;ØfZ:šž¥9ù¬ùŒ\Æg€ò'§¿¦šê^\H;P+w‹°ÆZc-‡!ñdRQÂBHjßdrò&Hv6©LN…„ñ‰OÄõã†%†ZóËÍ€~þܳäQJ¨.£-i`þÖP­»ôÃE&ÃÁ³Æýû{ÔëÔ"ýKhø„<+ÒùoÙÿøÞö?æAÞÒ£ ~ ™9ÎVºJHÜãüÎúXö™?5ƒ-Ÿ‘¯ó·ýî†J|+Þσ–¬ÓÞƒÜÌ¢Á¥CÁ»W¼h¹2Úw.éù ¤•4]“ùØZ°Nˆô¨®Æ¿¤) B+åGr9Ô_\óaÕ%àɯí[qb“š¸²ž‹Ë¼×4è/çÉO»©¦.Òƒÿ ¾`û@;Åõ“m{ÏZÒ:¨¬ªÄŠ¯Ë î–„kSÀ6ÐJôÙfÿZ£_Ò„Mj7õ|¨ú®ª¸ê)à…Ð0Ÿb›šßÔ·C•¡½.”›D?Ñ d¥TrænÀáïÚF¹]î&rÃÀ1È>Ôz9˜Ê ^Ýp¨Ú^¹¿|1øòíõŠô`¾F?÷–¦BÁù¶¼µ ä©%ÁJ¬‹m:½Ò_ÙÚÒ-Û~š4¦ªå1N‘øéA70ßi\g¬C¾îîð8ðL©oïš!°kà  Y¤Gܰ5ú>x`»4ÞžÛ7gà oó?)½ÄýºÝD £¼VŽ‹ôhíÌÕ“è1 €Yâü«%ŸmSxJ¨H‹œ¡#=؆¯Íuÿœö¬¶F»|ƒÜ]=!Ögm/¿ã+úõ± ÷É |ä^ràßÛ~Œ¸_^¿ì!u¢?ý€C²X»¤E]n ¼®½­íFzÀ [ãá'±–c ÞÎqEøã@2ˆW´ŸÂ…:²†,èÿŠŠ]¤;ä`R@þEÓ«7?Èódñúæ~6ð¡÷C±áAà›ãéîÆa‶ í§l¢7à%|ö:ö? 8ŠðùÄ€ÜK=¦H®ák´/Ý\ö@i ·çõ8ÝRZÆØœŸåli{ä­<ÃR ´‘l?þ+³“ÙÏâƒH¶ák´¯±U®.€ÊôòìÒË ~¿£™5œÛl—[?Þa½ÜÒ…?gò>üA¼&¦‰1 Fˆkè µ3뽞ŸÁûAp¯Z /¥$5y,wY—ئþç‡ý³k´g¬,Õ¾Y$‡ÊÞ ;ð5C@ÞÄ~:€|E¾ÍÎÜ+Òر`æÌÓõô€=:@9û #ño^Zðïúåý9Þ/׼Ύã—q}hESàe¹T~ ¡çÃãµx(¸·ü©jÔ¬ñ-Ö¦@«cmè膸Õñ»¾‰ô/¥ák´Oî²=õeHÞФk†Ž×ä·.½ ‹ËŽWî~”WË7@ITe [¢ ,][åkåQPî݄ıTÌq ]éÌ߃÷ËwX¯_þžœ}q…¸˜ @|&^σ’*jÅP(ƒD(erè²”ÕÊXÐ Õ-T’!d Ï¥¢òâš¡z¾Ojã@™`»%6’Ç5iÝÄææËÍ-"ý[iøí¶d\fÜ}qBø…ækZ>þŸ<&—ê'øŸª¯€Ó¥•m뛃º>¸/ø°@û<Ü =tub,Øf˜Ss°·±Æ™?Óû¦®Æ£ Û¯|¬{Ä 1„«A–¡bÑ‹ 2h'ºlXOV>ª(ÂÔP˜ RÄb& á¼ðëêX|´?ƒÀº`ÇÐ~ŒU‡&‡Úª}Ak¯5ÑV€ö5b3„3¤¦Üþ<9Q·â¿L¿·ùSRš™Þ"öDÛkv'(•J†½Ù¯j´7¥™ô¦MÐäÇôØ #سœ;œ±prÍ‰Ž„Ü7OÎ8Ѽ…®;¼?‚š˜ë½Ì«ô?‹1ÔÜÙݺlj¬<ŽUZ{0&fêAœ#Å[À"9YŽù¼ Ê…À›<"×;9B6¦%Ù@ ú‹á€ƒÞ â2n®å61ö 2‚g‹o»6x¾A}à®÷Uz€''xEh„çª[äa“3Å[`Üg½Æ±’d<Üì6h[ÙáçNÙ|WjNê nnáøÝm<ç4þ«%=g^´~Úm>xºzr=o·ÎÓÊý¨ÕáoÂÝ t_pBàið}áÉt·‡º²š‡ªgBM¸rbùàÝïN©Ÿr¼OíúÙ:R4W§ªë!ðœ?ì jIøóÐB¯h_ky ó”X]%AùÄ(qBw;ÐRyNé¢H<¬<¦®–½Ö­`ßî<³‹b:Æ:À±ÈY“ Ö§ìÛG‚y°é ¹ÐWi¦¬¥@—¥7€)Ù<úlÚÛØç€Áaèd¸ ÒÍo|àÿM~‡ÿÃ@;¨_ݵúr¨:¯ê¼ÊeྨþAׇ íVG¨ó@×WIWcd¦ö,„tûA]¦® Y$ ²%P*(ƒØ%ÞP,À`åA±Hm•OA¼/â”0o²¬´\ögËœpnŽy:æ$8ç9ßuÁÖÃf²] úuºJݽ‘îҟ׹ø_žì‘G.¹ÀNv°ØÎwl²9ÆÏ@?ÀŠ  ÄÔRI9àÇ#ë0aTtÂè0`âÌ •Î\Ó¢Ç(è1MH§)ЖNt:Ñ…óŽgÿÝ’–´RH!…3»HvÁÙp;Š¢oKFEýÑÀGSþ¨å°¤ñ›%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur2.svgCÓ&9IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ul3.png0000644000175000017500000002736712240014740024054 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>-zIDATxÚíw˜Åú¶ïêž<³9»äŒd$‰€ÃEE@AD0¢ • F@E#( Š$£’3,›sœÙÉÓ]߬áx’~çüÎìêÞÿÔµ×Õ=ó¾O?S[]]ý–UPK-”pPK-ÿKj _Ãðäy†y’¡´NñžâfP2´è¥Â¥àkåçMYL„Ô€t2Iw´ÕC¸¨åßMY  ý¼þœßwæ’SGàÜþS-OŽÝ²ºA›Q\›AÃÃÍÜÍç‚å1óPË `û8î$ªµ=|5Ç¿Ø?Õÿ”üúÛë< Ö\c;Å/ܘ×⌉ےFƒ;µ†¯ÃW¾ä+¶€nÐ õ,¨äN…´¼ó;3ì Å3‰[ Á% ë÷ƒFOh° MÔ>j&hRS´Ö {ÈXêõ:D¬¨'® wÒÕ‡ÚYšÿ5/ñ_Apm(/ .gÙ¢’Óà™Y–V8,Éñ)=Á—PåZ å-nYvVÄDD} Ñ%‰þ¸D½qÚ¾ôáÚeZ"èéA¹d_ÓÔKÕNjˆ3"I4wÒÕ‡ZÃÿñWúçûzÀÙC§ÇœªþÉuƒ:3£?°Ç©¥aŠº0ÜÙ‡ŸÚ!Íÿy¯œ*ç€K«Ø_a€cs~ز%Èöžˆ ;4i“òhârÐŽj}µ[ÁõQá% hs*óÝÏCÔ¾¤ó Wƒ¹µ£ýkÈ/õ à)³ |-‡ƒ{ ” “ÇÀv½õ9Û"0l7lV? wöÕ‡Úþ„w•7ß;ÊW—:J`ûN$ÇAÄ(óÛÆK@{8TWaÌìœsŠžÎ¬—»Ì2”j õ÷4ɯ‰±YQ1À™Ä% /‘·ÊPQ¹Ã»ÄÀˆƒŸ@ÂI¥‰çÀ’hý«u“¨5~­áÿW?^4±hä&f5Iÿ’h[ "g[îŸâ3ùÛAúÞs#3†@é©ÒUågÁ¶"¢§ã=h4¡ñîúéÕ3jidO%2O¦‚|­œÿÁ´{À8˜¥ìçì6Ç Pë)£”Z£ÿDíæDéŒâ!oCA‡¬ BüÀÈBû8ˆU7ò:ð?ã꛹/ìËz*›ù·ù‡€}fbn\’¦$ÍŽìëmïZ¦‚ì/Èq4(ÃÕ ¦«1¼J µ¯2<ÜYW?j ÿ?"”hàÁÞ\·¨#õ© ¦*Q  Öà.¨‘¿¿p ÈÝò]Ù,¯Æ^ˆJÃwÆÛ Ñ<$ž.p’#@E£Õ†î îWÇFƒhÅubL¸³®~ÔiþÐÔP~èu+z¦Ð¡K<±ÎðjäVËU`X§öRŽ@勞O½•P¦ ,¹ B;óíE3ÁxBÄ`qE7ˆ|ÄJ²’ ¬äEù`b0w‰´ärPf©Ï’A9ªj†Ž@$}ð†[…êG­áÿœ> iÎ/;'!ôCåúŠº !=¦LmS ßCáÐbs鋳.ý–¬6@Ë’¼²cñ^á‰Áá‰ý!¦ ([”]ŠälYÉ(`!N<@ ¸DÅ¢ÚA´Q’ÕÆ@Í©­6ôwÔiþÛ„í†ÐÚà`(Rò³@èoDå4ˆnù c+žU Ê'Pøjî³…K c™í¼6ß5'c÷ă¸ÉuŠ’:ƒò”Ú^= òzY_v4¼x@˜E À£â^e"ˆÇÅTåaÀB=ê†[ŒêG­áÿË„Œ¡çCË ²¯ëaçßÂÊU`èÂèÐ 0´S©í@ ]D"¸ýeß—O†Ò‡óÛMïÕÊmJâV×»=éHq§.«s^5¬QûƒTe@&*!¼@Íh âåe30I™,¶Q‡†áV£úQkøÿ2Îkœ'3 ¿sΨìAu¿y½hQul]Í_‚Ü,ãeÐÆé9|ïT]‚;±lWyoð?b©gN…Èò¤Sñ—@R‡„ ±=A=®~¬Þ\Æ98Ï r@®“›KÄh¥ ˆ=â5õJ ’Z…[êGíþ?åÇ*éd’‹óºçZ Í}úÚã åì„!ö3×8âEË kr“¼¼#½[ý‘๺¤°lz•Ïr^FSäSgÁtµ=Û¾L>ãbc>èý´{´µ€Eº8rŠ\ r­ÜÊÝ úŠ'•A¬WÛ¨Óù´ݪb<n‘ªµ=üÊÓ¼À|ÐÞÕ4ý ðFV^圾MNQÚŒM”ûÄ7`^o ˜À#þÕ+ ýhº#Ë Î«²ŸÎûì_xûøÖ€e¥}­ lÖ÷ÌO‚r½Èb3ˆ¶¢1õ€ÆÔ¡è£å_åFmоԎƒú²á~Ã0~elg¼¸‰‘Œ·8ÕZÃÿ‡h=´TÍ… §å@w¯Š ˆûÒÞÚÔ ÇÕëÄŸ0˜à/ <h™Ö õ27€{LÞEËÁ‘¬ÇÈe`YìÈ´ÍÕjþÖäù¤¼“Ç'¸€¾¢«èz®ÞCÉÁG‚Ÿ€Zn8j8¦-¦¦TãÄ$&…[êG­áÿC‚‚“MàÔñãGπ粲†…7C³S^Ir‚õCóó¦® ¬àÐMÁm¡{ ¢_ÑeuÁÁ•ãΣհC –õkcÀ°Þô©I‡ø„ @Hú }éN'ÐOèýrô¦‡f²Ef8¦wL ¦FÀÜ#j ÿwÔþ?DFè³ôKÀ9´¤sá6õ(®¥`¿ßz“ù{P¿R¯S4 .t}˜ÞW¼K]}\»ÀwØ;Ô{/ £ ßCÄòøØ˜¹`¶Ø¿·Ýr•œ._xð½èHÐKä@9‚O‡–…º€ê5d+Áø•©½Ù Œc23­Nõ£ÖðÿŸxŸöŽöö„Âaù#òÊÁâ¥8øDxÌvµ=ˆ;ÅÍ¢5P‡KEWñ˜¸dö¹žO+znÏ¡ìPý£2"’!¥¢É ÎCÌÓ±¶¨}@WêÉî@eT€ÆU\š]{NÏ_ÿº`&2Í5-ëXëqÛH¯Š7ÅÊp«Tý¨¥ù­üøÔR\l G,.0ÂÉ3GOj‰KíýŒÝ î{…M.C&ß—‰‘‡AŸª™´‰(¬üÞýTPte%ÄÏ©[–Ô Zþµµy>$¶KqÓAæéNù4Èb~ Ä7âaAÈ© í¸Gûúã!v¾y¤%ì:ŽØ7€Ø,²ÄÍá­úQkøßŠøÛ?}—»Ó]@©#kέR·þÔØûÁvÈrÂòÈöó(ÈLò)=‡'å\Ж‡nѦ@°Ÿ+Ïý ˆ~æÇLÀÒ0yU°sHûJ0|j8¡¾¡ÁÁ)¡€ A<Í(q „¬¡qÚrpàëÉ›,m¬—CDŠãˆ@ĉ¿ˆSá­úQ;¤ùÈÛä`y”Ÿ+ŸWþ&¸O8ï(ÛŽÃi}*˜ó 7©ŸƒrFÑ”f ê“BWŠ~ôwÐÓÓ7 Êf”,)“ ÛUdºŽ‚m­¥ÌbûG Mã–ƒZ_}Y½8$ûñ  !ÑȺӴRÝ+§ï\0zŒ#Mïšú€¹—9ǼXÈB†[µêGmÿÑv††‡ –´öç·€K/éX0ŽMzð’8 |´;•Ö@SnÀnµª/µ†ÿ7„N„tÍ®:Î!_Cp¤§»s˜zëwŒ`Î2z @‰¯‹Ç@ÿFî—Ý@‘«AŒQ&(}A™güÄìñR¦¦…[­êO­áÿ å-ËÖ—fCÚ©ÓCO~QË-†3P'%ᘠމÕâeàqù†üð 4嚃Ø-ÒÅ–xÒ¼¹à½ÁÙÆõ È“¦»Œoi„ý m!Xz›‚ÆëAi+Üâ4ÈÍr'ÁÅuö˜)±$º+‰ \a¼ÖôÒCý"ÜjUj ÿk*pýrÜì¿Õ3È] ÎwŠëLÓóÊ yØZF[†7ÑŸ ¿ç8ç@L“Å(Ðcõú P™ènî=¥ÔSÞô®Ó]I`¸`^ln†8ó*3 d+£DWà:ºÐ(¹¸vFt¥--ÙÄ6poòvòÙ ¥’ êõاã?ÓaK¶uc¸Å«þÔŽáMZÒ¼÷{·ùÊÁ?ÑÓ±²!Ø* sô¯Aé%êË è;ä²5à&`Æ„DÈb„êjWi» ¿´`O±×”ü@‘ÓV÷Pï 0Þžt.!Ô;MíLA¾!_! ØÀTŠ%®}AN–Ûd” uÖsýƒt›ž„dµÁm©p t”:ŽçÃ-`õ¦¶‡ÿÚ³ÚXí8÷ÒíÔ÷Pr&ÿ™¬w ñCuÇ¿V[k_ÐçÈ ²þߟ/:о¢Ï> ö‚Œ§Ó¯Ì|œÖ¼ÌÂ¥¹JvÒ_óÖ-–u üÅôµÑq‚s@7ž_|àí\Cw`‚œ'?€Ò½Î¯ÝGÁýnàai‡º=ë «· Ý¥áV¯úSÛÃÿ ù•œ§O„’~Eu ŒàælQ>w­»?j9˜§›ÚÆÓån|ÇqNþ|¾øTäˆC =ê ­…ÒÌüyEðl+ÓËßsQO±ÞÙºÀÚÔ‘¦Æn@>Î~*ixÑ”8¬@3ãy(^·‚þ”¹ƒ2ì³GPí굪ø=™þ9©íáÍI¹‚™˜æ[ïù´ãϼ[ÀpÐðWÃ$PN‰ÅÊb8öK£#«æQîeƒxä‹úµÚ"ð<\ö]ÅÜPYâbÒCƒq¥-ßòn5e“<Žsü­á¸( Ô¡ *3 ç@|fxÉØ ”SJ’Ú'Ü¢Õj ÿ+ä^—‚¾0ØÐßôOƒƒ€¶Éå@,i÷ãÁ¿8ñÇ'¢CÄ;<ú³Zýsð&–õvšÁ?¬²•§10S‰V>S{›×Ò ÔŽ¦Jc>PÀqù†42H9€™z´2Õc&‹ºÔô!*nc~¸U«9Ô¾ŠÐøÐ—!'8gWŒ¬è†GÈÕ2Àö²)FMñ$}H>çülðª›KÑ‚F¤€fÒËe/Œô=˜â²òŠVøÈsÞë=A­T‚㥘ף¦‚åf›ÍºØ)7²(§X–:‚t!ZL¥ájÃ¥ ÚVqÜ,î ·z5‡ZÃWáÝî]ï]¹Ís~È–`]¤6æsˆ1êCû â€Xr+Øü‹­X±ÏˆÇÅ$ðÌ÷®ò~%ÉÅÏ–:AO+[\~h"86¸ ´Uæ>¦1¿,É/DÔxÔQò}–ñ+s)q“èOÐÞÓýzoðÍx‚!PÓLS-;ÁZnoâˆqZĈÚê¿™ZÃWázËõ¦ÈØ}~â¹1`m¸S܉Kãì1Ç@ô‘ Ü/_K~>OÄK4ˆrá' xlI°¼¤e™Ÿö(Ë’+V€²’( Œì踒¬÷PQÓ=ªIÄT`/Ë7 2È‘Éñf? v„âÁåË+^ëCŽ‘wBblò”ºãAIP.Sj_åûÍÔ¾ŠP¯ è ž›]Ë'€:ƒSò^0/2N7š€Ûø ý@ž Ì_œh#ˆùb=oûÆŠ®9PôNNnA‘Þ ¾‘`\cN6EZ?®Ot:D­ŠY¹¬–¥æ ÀV¹“ý K)à ¢TlKÀŸx48 ˲]ÁÚÎQ72’·'ßYg¨—«ƒÕ‘áV¯æPkø™©÷ѯ½Oð#Ÿr ¾5t0b=‰†ÎÅU "™8b€áâqD¾]îW<‡Àyeáñâ Eðå`[05²/°]–ï⿉ fÅZ`9j{¥›R2—BJ€@U›%Læ:¾¡íÒß§ÙÓÁß̳­m••yÄ“âYñL¸Å«9üyçáóÉ'ÂMÜúw¡¦ÁJ@çø_Ý®g Ùôåç#F wðÇ€ór¸œúõr±ld×\÷ûà~¯èžâ“`Û<ê –›Íñ³!2¯ÎäÄG@YlXih òSyPú…†³î=† Ò'"ÐçˆÎj[PΩ>ã fŠ€xèAj7þÍüi{x™,£¤Jê•8J’ÁÙ¸lGICˆ 8æZ*Àj453l±[ßjV*ýÁp¿Zª¾ò9y^*à>ã⛕…–†òPÎ}yç Ô¤`Pq$TÞ-cd>DßÚ0˜’ -¶ÙâXblm,ñ Ÿ×è3øyÿGÜg/p­h)žQÇÐÐ8DõEµ1p%Ýh DàÀn5kÚ^–Ë4y ù¥yw@Åé’ìÂæ<;¶Yä!°ì02u…ŠÖ•Nwpuª|ÀÓä–ÈmÀ@BøÀ³×ÓÔ÷%¤^x5óÈ™xªéù-`8äôU6—Ù8ʰ”â]±#!faâ±øÕ`HU+ ~gYH(¯)‹Ä&`›üŽ£ Zˆ ŒaPê+P0Æ™S·”<Õnõj.ZÃÓBÚ¥Jî+|*^.½¾ø Hq×µD}Ú­Z—ÐpÈN(X]¼Î‘Ù;÷>Ëå!¹ìSm3­MA½j â¿}õÀð?lúé[ ª>@þÊ•¨Q‹Áe6 T×BÅùÊ2· b¦DG˜A¬VÞ#@$rH ±WŒf0¨Ê¥Ê6àeº+.PCÆ9æW@٠ܥ¦«Â-`ÍäÏkøJN³¼îqÎ 9%ó¬ûÁ³¨¸sî`0Þn¸L‰Û9Ë:K2´ÜÞ8¶þ:0j†' »À·Æ¿Ã¿rÞO)k<(i¹“ó_ÅT²¤üJ0N6Ug@üªZÊKl¨ÿR½`~Û´Æô(œ]–1<'ü]¶`ˆîIJ¬ë,·›ß€äñ¯Å€²Þbr”ƒ}Hä Ñ À¤™¯´L ·x5—?Ÿá·rŽ255µoš{Oå|ð~åV\C@ëbqGÞ–…ÊC DO‹Ôç¡á¸z‹’σ¥‘ù³iO\x.s-”Ì’g‹(¹¢\‚, 5}Ú=·Øc AJ‹ò&·C“aÍÆ7l± £ #/€ïsÿøÀhðÅÈ]«Aß,[ÈgÀs•÷ o¤æÜ“¿ÌÛ#Ä•CìÓMÚîÇCDì s¸¥¬‰üé ¯½£mж@ÅSƒ*VBàïmî!1::Óñ=ô°vhØzXæ™n0ÙMœ’e š‹µâ(¬Á~ÁסàÌ;rß„³?siLy1ˆ|Áàÿ<"Óq4ú¼Ut“%ÐÀß CÊ@ˆxÑzµå~ˆ{2úîÈÍÀnyˆã:ZZ å¸l•_ÃØ#îS€·»óB( šm鶺ÿ.ˆ8ñIDr¸U¬¹üé _ñV…­b¯8z硎ƱÃ4â†Æ5o4l/X™M æ)YÊ“ —‘Î}ìœÜ9/äM)ürÔKÏ^ 2âBï¬w@lð ò9Éü²9ÔâïŠÙñ#“Ô„ç êåˆûÀ=OÎu»Px ˜Ç1 ×.¨S!¦2C©€†‹R>I^ •7È\óM Oè_j§!4:´@{L˜à“p«Yóøã>PõŽ©éâIÞúî7\¯Aþ-ÛÓî‡&uâæZP÷É„èØq O­ås EéùºÔÇÕoÕ oÑZèç!-áLzÚdÈ}îÔ÷çšetEŽó.PoÖé± æX:›ö‚éÞ軣nk´m¿µ©sÕî¸R‹>r Kà"(§X'ÖˆÛÀ¼Ë”gL‚Ôûê$'ž…Š“Á'Ä—P:±øxqKˆšÛ+¾+Ø^±eYím ä?€ýìZ Wà1ð,q=í|Œ³´Hßi0(Ü —‰¯Ù D^\óòcå09ýrNû}þ!gÞé i§ ´"}uV˜¦ê—Êf Tí‰jH5^a|L­lwXˆ·ÅLÑdK{~^e©  –‹Uä"ù‘ü äÝršœ‘»OÚ®[™éJƒ âóg¯׫Îïþp‹Zsùã÷ð;ØÌ&HkvÎsv ä L»÷Ì1hü~ò·1!v’ãqËà OÊLR10Ø)Ö‹à{Äï ä@ᚢ™%p›3dNÐ×YÊ.‘'ãdתZ_#Å ±ÄI!ÄóÀ&±Q|<.ÖÑlü‡ëè]TâìX0ašZ¡>J÷æ€o­w¤û*­ …‹¤‡[ښȶ‡—ŸÊ­r;øúú¼¾÷¡ø®¼cY³À%‹]y&ˆ›1ÍÖlë,AsÐIŽ’Ó ¢«è#’Ày™ó‘Êæ~ú|DÆxЮ+8Xü˜Ÿ ¼pf¾fà¼ø½Ú#Ÿƒÿ1×Dw.ø:z^òmƒ`L° ô`džˆ¾øŸä'ôª'­?þÞåmæ<&+åÐ;Þô·ù¶6QÛnuk.XÃßÞèÝóß̽ ‚Ç*÷•g‚}™R¢½ê ê%Ä>áÍ@RøË>Si¤ Ià28s+Ó!³ëù2ãAÎqžq]¶O¸? §êÄ6Þ¦¾ Þ-L/®…äÅf€Óì:á¢>©ÔÑV\B‹‘@ 1¢)°XÖê¬ùš~…¶"ÜêÖ\þ°†w wu®ƒC/î/ÞëÃãÁUî¿@Ó©=’§€¡¹ÚSùd1íå0.ö쿬Ò{÷1´ÆÁæ¡-à¿´²£ç«CY¡Û@Ô4~*£-ß½ØZŽ3BSÀ|yÁ{E­áÜ–#—žH„ì±Ùw䎺‹Þ¢0”Qÿ²~{$è¼/ëË¥ oÖrƒu©r©¾#ÜêÖ\þ8†÷âÅ Î'œƒœS¡àdî·ÙV^ãzµd1ØÝ†{I†ÈÇìÖ© Lõ… äÓr «øû*½:á˜!§ƒè,wÉ/¹†€PÕqZU{úbcØ$ß—{AÕ¼.Ÿ*¦–Ë&‚»cåUž}@ê4£9þE>Ai ´âAb²^šRÑiíù¹ÈjÙd‡[üšÃÇðV¬X¡àû¼Éyû!·wFJšêLˆÚméQ;íó-ËA[§ß!ƒ¡˜@ÜL… %´4$»˜ÀÄp‹_søã¾Š’å…ey7BÙ®üâì›!ñúèǃqÚ~-è-'ʧÕ‹ÿŒBŽrDHñ+_‚2Þ¸ÏÐÄa±HŒŠªŽ«Z¹(»Øº©Ê8ðÊøÜ˜; E¿Žcۨ߬þÓõÚ;äV¹XÎÛò_,“ÙÅ[`8cøPõCÔû0‹‚·û'ú®…Šë+®˜ ú³úlý¹p«^s¨ñ†×'ë3ô7ÀµÞõë5óŽwÝæ(ÎG€õ1S©ñ0lTÛ© wrü4óO9'·±”EêQu¨KLo˜öƒÜ%v‹A¶©:®j— _ÔÅV|š°#îNˆYzÉè—AÝ×ìL9‘³"ot,™N:Ù ÉCS׿×t“£äã`Úe‡~ƒçåÊ7 ¤¢8¾ø—ê)zízøßL7|àî@Û@4ä¾’›¥‚òmHñßIcc2"V‚ÒH<,‚ Ÿd=À†åa~…¼‚6²Xæ[ã,ˆß—ütÂ1PDoŒ_y´éu ëVËQ‰æ¸W ñÉv“[õ„–ºçuš Q·Æ¦F¯õ=1ˆ4ÀËÅýV]¸ñþ‹ïÂfƒQ1\oXÑ"ºØOƒï+Ïk•×Bi›bCá&Ðo—-uS¸¯BÍ¡Æ?xò•xc¼SáüÉÓŸŸè ÑAz>‡Ô»’žˆ÷€!Å0IÍ™!÷Èë8™ÿ¹z½§œñgâŽGo€ößtŽi{ 8ÿvæg·ZÌÏ€í K–ù8¤œj}kók uì¥GÚ}Ͷéß¼lSmƒ­ @OÖUÙ êÃÃÞKr¹Ü(·€úÚI €å~óµ¦b¬)È.^…åÆÒB-õ»äë& Â}5ª?5Þðz­GèS¨ÔËÚKˆ¼Ô>Sñƒy’©gt è¯È)ú\oɽ\¬Ÿ~ñÁÏ¿AN÷ÈÇÁ(Œ Ð:ñ³øwàÒ}"z h2³ýü–y`zÍðº! b:%ÍMx’vÔÙ”8"?Œ¸ÍqèÛdŠl^õ߀ߑX>%”ØÌÇâKPƉTåMÐ>÷¿ï}ôï<+Ë@Û£]© ÷U¨9ÔXÃêÌþ xœ•6çw`}^M‘GÁ¡fñ6È rœ ”É#œ"8ÿ[Œþ„@¢¯—‡Á4×4Äð´5·_ÑêAnñ–æ§A¶’Ëd—Ë ¬ Ú,}¿nü$Ò 0`@ýßo¼x¼\Íw¤ïQ.¿[kãCJøý´ õ²3¥ËKU7Î1ŽS]ã>cí†Äÿ!«w ¿—¬ÕY-3@vÄyNc¤+#w Äö²N7>;6Ú÷€|^¾#×Å”ÿøøÿwrñ‘¿vÝÄå\ Ô£‘Håâ˜<äsAfä.€Ì!‡üŸÎæW³ü¿1B â uäe çP×ôÊ— ´Ø?†×Á»ÁzâYhék;µ}$mLr'ÕîÏúO©±†?n8²ópHŸ}ê–Ã=¡YØOMÃ!jŒõ¼i (¥JoåMÈ&úéaQM"¡ªþÍ~~à(ȳz´¾ N;¿ð®‡ó³Ê¯Ð^…N »çôj ÒÝÓxP¸ƒ®¾ÔØYß ïýnxg9¿+¿Œí ÷ªsÁ0Ç`4œy’4Ò©¹Fÿ‘Š(šÒˆú`èkH1e„p²Ÿz'TºA‹ m nw°ÕŸšcx'.\ÀrVòÈE¡ÑÁ Я žö¿t××ê×ûð’ÀÅÍÀjNvÿ¥jS3­j­Ï2ñ—ë³ôÖ ×‡&ûƒœ¡ÏÕcÂlõ§æÜ´6æRúCàóÀþà9'B>Cžx[ßÂ*®çc ™—ˆ w°ÿ‡qPˆfžLzÈ/ôk€dÉ‹ÈÖ…;ÄêL1¼ÖQëªu†òÈòü² / }¸¢:ؘ#@Y.Ž‹q #¸E`ÛÂõ×ÉQQëéMw@¥­¸ÄDn !ÎÞß5 õ'¥ÆüÓµ ņt(î]´®°èM‚½ü£!6=Òk_ êMêÛJ'`°|„—ÃíÓÅZ–xðáyLKÈ~âR>ñ„á ã× 6(Ë”Ó}…cxbpRtç=Wß§†Ð*­‰nVðÇ«èMGþ¾VcMÃG?ˆ­â1 ”‡E áß×þ…þàïÌÓ£Àt³íш"0Ük´˜Æ†;èêO1¼š¢¦ª æå˜± Ø¸ÕR¥o»×®ƒÐë¡õÇ€n|ÇbíhM3~ªVPm~?ÆQ‹hK šƒØ.Þ³AÙ¥Œñ NS>QÆC°[ð© ›–î(ï Í "ÊBåZ­·zÔ°±¯ùpŒŠwrÕŸcxCCOCH^TgF°žŽ™°œfmœaTlñŽñßþäÀÁT«YËFÀ]µI˜ ãOk×ÃÁ/˜˜«â°^ü!Ê!Lä^ÐLÚ2½üiçB+À×50-t8oó÷§@flQçåÕ¬bMàñösq§ Õä¶íûC 1¯Åf…û*Uj샧Š`Å¢Š~Û¹§C¾ß¾»/¤.ŠšdiÍžJ]‘”Êíâ± H­èòS¹‰oùy§ëÿ+~ìÉ«n:Åpq5—ƒ8ÅÇâÉb§˜¹Á„ JW\£!íã¼S%>ðnÐ!plIˆO…º „AdjìKñwAÔöèʸ/!.5¡[Â:àð}¸¯Jõ§ÆþG*n«°–oï°Û¾ôâËsÎBÜ[æárÔ]Š.ëË_Lù JDaÙKŽ‘OÙPÂÏ7‡ÿ¿ü<`âa1‚+A<%šŠµ ®ÒZ@ååÞ'| tŠ«µçR®•ËXº_½Æü" ”Æ–¿€>Û0Ê’Q­ãŽ&ì&›4óCÌ{±«c­ tï‹­~Í£æÞ×WÙ+j]TTôX¸<£ïŠ~'`_Ÿ]ÞoOBZìéCǾó2ÓíæˆKgù+˜ûšÒsAÙ,šŠƒ n ]A¦“K1¿Í‹ñDãl§õ·õ5²‚í­ xú. DA±ÉiñÆAæsű••ÀUæ7í‡ åPÃæõ* óGšuÜ ‘F~µÄÖ³ Ds¥»Ò0²Œ÷Â-~Í¥Æ÷ð?Qr±)ßW®–Íœ”ŒÏÓgÀ¹vÇ”¾Èå@ðE¨kŽéÈ‚èÏ"vÛW‚ÚOIWÞý”L}ëÅJ`ÿùÓ¼¸ˆ~\J;šØ#ÞfÒƒæàí=ï_ §êgÞŸÿ ®U5Ë¥7¨nëúWBÝ{ë;Ý–ö¶G!°L¶Í·w…Èe‘õ"g€²L™®ÜnQÿxüq ÿ+ |Áq.miHˆç&zW’‚¼ÇLy%Fû„¶A±§|«s TÞãì ¡îÊ9Ó Ðß·œŒ¼lcc–$î„ÄÕuHyR§Nª?”mʽÊÍÿQªµüjÌ,ÍïÅÖÍöm tìÖEv‡Ô.Í3.i¡ÙÖS17AQ÷ˆPS(3¹ÓýGÁÝÂç œï|ß#màKðßœ ÞÆ¾ TŽð^ð½ ®‘ÞÕ~¸„·AàT(ÞñPÐÞU˜ 9w;ËB)àzFÄÚ¿†–Ë;>ßýèìì>é²YР Á û‚²Zª\n•þ|ÔÜ1ü¿£=é b±øLì†Ô÷êg5ø";DFF΂ü¨ì™™ äfüõìl¸Ð07#»)Xw¿MÀò¼áÃzµZpÞçmx‚d‘Ø ŒV?7Õ[£¨ëbÖ@£äÖù]\’ß,q ˜s­/Û¦AD|äñ¨[A‰çDp_¸…ùsó‡Òü3ôiú"}3”÷,_[> Šfæ]3\ûËO—\ ´ }á ò{í¤žŸ‰áÀ›êfàTyÉxˆ#†ÉÆd°¼kÇq+¤î¯ÿ@ƒ±õpT—¨pÎ÷×ò/ùÓþŸlì¼ ÊOUdTäg™û=÷r036‚˜Y±3bóqÓ÷¦} ºŠ&")ÜQ×ò{ù”WŽ‚ÓÁ%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur3.svg~³‰IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ul4.png0000644000175000017500000002771712240014740024054 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>.RIDATxÚíg˜Õº¶ïU¡óDf†œ%PÌ(IA *Ä„ Š""(ŠŠÁ„’‘( ¢€ä(’3“SO箪õý`Ü翳·ûSÍùèûÏ{õ\Ý«V=õÌ[o­ZUKÈrˆç@‰uâÄù;‰>Î%EÜðÿ[ ¼Á«Œ3ˆ‡3œá4`aaź“?qÃÿoÁ… œ¬s¢ó‰)phö÷Ì„paxox5#Ö¼øÑbÝ8ÿšècÑQä•äü GjîwíéæIS5ýbT˜˜Ú*LªàNËíe­£V%Ö½¾x‰gø‹ ¤”AéƒÂÙùóÆÁﺟִ†¼‰'~9ø9ˆíQ<ò?˘[ ÁuÁJ¡Î±îüÅOÜð*d²Íî§ß9>íH¸<ÖÒÀ=àÞ®—Ó@óª#E.ð¤è@àÞøùú÷‰þba ‡ÈËa%Zpní™+N=Ù?ŸJ<6*?™2ÙÕÜšs·=äË¢‰:yò ¿në¬_ë¸ø‰þ"Áši}c­†²ºÞ}Þ‰Pœ›÷Ñù%XXÔ)'ô%J Ñ‚ûÃ×E“ ô³ñ eAÊì™Ú¯Ù«ÙÅz/.~DüNëÅA™ðÎòv†=#v™;€ðúüÈ™ø+ç5ÉZÇ·žxôt!˜U”uúíРJÓ-¶ÁMõ»-¸çp¼æ\æz!Ö{qñ¯ú.Âz¨MhœùùDᱞ`H+ª‘`ÉÀ’"8–qäÍ“K!¹^¥™•Ú€²Pݤ=Ö Vuë8_;kèÙaPâ+^]d‚>Úv–™Ó+?Su"xv$ŒNÈün\8c½×?ñ’&ÖÌe9kÁ*µÊÌ'Ál>L„ã‘ûŽU€c¯˜rìHžèüÈ1 <ý7:§YÓ:iÝ eƒ¼yÞ©°³í–*›‚°Ü;Øìž°nÄòKénÇGý‡ÃFDÆò:£b½Ó±#žácŒuHÞ/C´jdn¸¨ åGÆûà“…Y…Õ!pyA‹¢-P¡IÕC™.p:]›¿@é¥KªÂÁ­¿lÚ¿l“ͤ@chP«r¥” îчØÎÁñq\{ÏCd¯!ÌË¡qBÓ’fAA¹$³]Üð1¦pOAÛ‚RÈÓ²—›iw$ÜàèârCF/ÿ2_Sÿ0¨g¥õK-e‰'Õ}ü]ÊÎù®‡¬ §glée¶·Ì)òš«Ÿý!Œž4R «[Ö¬Sn°MõhI‚Ö¤EÓý±ÞëØ7|ŒÉZyæàé¯àôîc¶Ã¨= µu‚lýô>ê l}Ò•šdލx‚+k¡ðþ@Ÿðfð×/s–Þ¶9ê3 üõvÁàïø%…ðüH™Õ ”kŸqd3ë˜ULQW¨kîtâÆX«ð÷q)žÕ.*JÙ{¥ÏAÉG…¹;ÀºßÜc<‘åÆ$«/Èb”¸ÒϦ-Nžî#ÎkíÏ€lc.7—5#ú~x)øOù–”m…Ò6ÅëKßßø²¥þA`o¡ö½Aë.üÖ àoáOð—€õ¦õ£•ë½ÿû‰þoÆèh\gÔ€œ'rR³›BtM 7 é-Å@([_vÀ·B5B­Â÷‚mœ~@» wyœî‡ÁÙÜñ˜ÍQJK«„‡…JC·@™ð¦—¥€7äPvë†&eŠ´2M|(®ó˜¹ÛÜr8Sø*ÖjüýÄ ÿ7ò¿>óöïù¹,WðŒ·*¿—Ú"áM(8[p h>Dô -” ÝœÏ9^{CÛGzep̵ ýh‡Äz1 "‡¶‡³o”6ø«ûRoCxQÈ^‘Ñ­†d.K˜ ÚÍZWí>·‹6âòX«ñ÷7üßLtpô±ˆç®?µíøç`9Ã]ýïBâ ÎNÎ.·åüs¹ ÀšíM€Ô•‰è¿h§´Ú, ?ž eÏ•}îó‚w}éKeg!óã´º© c\Åciµ@=«þ¨> á¼ðöè 0ºš÷™Éà8g¨3øßx L¯5ÏΩîSί ò¶þ•æÙ— 4|¨8b­Nìˆgø¿šò·Ds"M#áLøø„£=À0ûË&B•ô ­Bc°mÐÒZ@~·ü-E—Á©¯ÏÜr. áÕþìà»Ñ'==5ª}TýËÊ@«MT›CH "O@tqôcè/ëƒ5¢#cFe0µª›yà:ìùÉem þ¦~àƒE°á&%Ö"ÅŽ¸áÿb¬]ò*ù „—„¼ÁA`ÙÂÇü hý°^°§ÛŽèuAyKÜ#ZBÞ÷y·è•}ú™s•AÿX½Y9 RF&‚”QIÍÇ‚rR¬WÆCèÙÈÖȈ|a|j\ ¶áÚóšFEs§YÌ3òkù9¸^rÍuu혾T¿XN n6ì±V)vÄ ÿãÐ÷¢ïa(¸3Nn[H©ç¬?Éß¹Ÿr¶k‹¬&;€ÜHEPúCÁŠâ P˜˜“œïÇ îg]ÉpyBº{Ø:êNm8ˆIâyB¸8Ò*z¢§£Ùæ-`ËÑkê÷ƒu§ÕE> Ör™&[ã´s¹} hŸiaõ'à':ˆ§û¥8þWâ†ÿ‹ÉÙ—“™sWdº2;¦¶ñCå¹éï¥tâ#Œc!k ò¼¯·?Âǽ§}_€­Ì]Ϲ´JŽˆ= Ìg “@~ÇvBä“è(ã10ž4[ÀÖØ¶Yÿ¬©‘@~*± œ-í¯Ú P¨Ã´µ@1_ÔtÜ"^ÒÄù«µ ¼îÏoϢŅ—ƒ# §j׃ãû3¶!ÀËÌe˜}­ãV]­ö¶ñ̓pýÒ¨÷IÐ^s,±ÊaÛm¶W€¹‘ÀAq¢Ÿ¾`üdfZ A[«^£úÁÜ+Ó¬jøéŽŽötû{ mÔ–i+Y$¶6aô6¯ƒàá5 Ì»ÌÍP-õ1å(ØOغèAq©÷(ƒ@ö{è DØb­Rìˆþ/F6²zX_‚Ujô¦ƒ|EV•»@\!·AtXäPt2d-=}Õ¹Ãàå·*Z îTJÙ ¶eŽÛ0P†k/k‹€cl–{‰S˜-6€yКc%AàÞ^²‘õ¾9ôÊJoå¨sÔ³ê\PN+”Ö ¦(•”Z€“D’b­Rìˆßxú³¬eëA“ʹ “¬UÆdýäcÖ0ýI‘Ã"O ó6c—q9”$ä)ü ‚SÊ~ñ]® êHÕ îižî—ÀfÙß°­\œ hÇ8’@;¡uWgýi@1Ž‹C% öY­GÀö†­TÊÇ"Q|â.q§²X'¾xXkÑbGÜð)¤]º!¼+\5Ü ÌYÑÇ£KÀÑO[ªô‘/K_¸“»Aú̦Ö"ˆŽõõóßÁÏBW„÷€]jU´í˜’\”8UÓìƒA†å:ü¢™`k¯ß§íu±èÌxðßàWGA앳¥ ޶ÚCÚ*`M¹pRYd‚èÍQx m±V-vÄ ÿ'±YK­•P¸­ˆ¢{ úcxCð*H¾Ü“à̽‘z•Úxƒ• ÖwV„'•m ƒPAhTø°ìÉÇì×'5©(ñQpTq\eß ŒbºœôÄ`0(Ë…C`ôˆÖ1²›Ke  Ú¹CLg‚£§=b¢¸_|l' çñ…P€B¦^Ê5|Üðë3óMs}RPXp¢?†"Áí²+!ÛÝ´¦ÚÛJ)XÝå2Ì_ŒkÌÝëß0!Ò4rwôÈúLm¸ï÷lw]z±­•íIù% ž¥„¾¼,á¸çU(™íT¼Iàëä]XÖ”§Eqœ†cœãuÕÅP6ÕøA\ â:±PÔã ^¬U‹ñ‹Ö?‰%¬]Ö(¹®xYÑr0»D¦…fBRrBwWÐLµ§º¢5ŒšæM í ­S÷GükÁjkFMXm{Ð6 »õ'ÀfÓzißåíòçÄ1*ª¸2Í •sÓ+̄иÀ¶`#PßS&+/ƒ«‚ó5û(` sÅÀbqBôŽ !ž\x.å¹4ñ ÿ'±úÊk¬Ë ,èýÄ;´ Ñcá x¦¸’æ€ú˜š£.ß‚@³àõPtº¨GI'‹¼ }A²Z]€]ö¹úàœêøÄž Ú/š¥ö¹†×˜ \Ã`AR½„užõØÕ³Ý5"£Â_F–ƒxR©¨T½®m›íz¯‹×D`°xY¼\!ü¢%{9kÕbG<ÃÿIdcé‘^O¿\Ös¾±ôZÚƒÚPV*ïŠGÀû¨WúC^ÿìÉy@mx"x´¹f؆Ú‚s–sºcè>Ý¥Nf±D~ \ÉeÔÛvý&}h£Ä91ÂóËø‚¸\ø jgûXÛs`M”d!ÅR§€2O e¨/iâüqöË%Lùµ9Åœ ²Ðªo=(T¡.ˆyA< ÞG¼ÊªBÁ±ìªùOƒÖ&üqd h]”e ð¡­…m4ØØŸ³ï½ƒ:H« ì•9øÊ5ŠQ%¼'ü,øv]Vü)ˆzŠ.*‚ÞÒ9Í.Á˜ªÙÔ]ÚÚ@ÐGé;õù šÑšŽ±-vÄ ÿg)`+‡dOk+0ÎZku*‘I:Б»è Á[ý›ƒYPV\œX’ J#s˜yt§vP}ÄdÛL­´—´±êÅM"²b|@ðÂR88Å‚ðöPvø$¿›.:¶íŸØ}àÚžølÂQçDn‹ö½‰þš}48îstq®ú‹~âáX‹;â†ÿ³d±\NY×\mœÙCv°>4t ¾¸†VM #Û t›¿O`à0¿±ü ü¤5ÔÖ€òˆí}Ý¢—òµèâ9ZQDq ͉Lc6øÒýƒƒó pIáË%Áß¡ôHYR>KÞœÔR¯¯Ð(¥=„7E‡ã@ŸnÛhÛ ŽkœëW}y˜A±-vÄ ÿg)+˜Ò²ú˜×ƒliùÌ*\X«I•hB0kEÇG€qE0 €Ü*¯°úƒÒDk¬m-S¯«À½lß;X%^a¸xdÙ^ö„¼•ùÏV„ó¥ç‡äΞ0Λ½ ã“´!©m!å†ÔIÉû 4#²5*@¿Ý®;|àìçªïâq1T¼kÑbGÜð–$ŽÊ• 0·«€—­ŽæÓ€† ¨L3ÑÌc‘ôȓٸ:¸d©¥ÉZ Ö®P7‚zÌ6Fƒø\œg7È£lc7ˆÄŒ™,MY ²–œyÿ|8ßâl£óï€ûNO‰+Ò÷§uM^Ž“v­ø:›…³Àù†«‘û$Þ–øUÂGÀGÌà~MG|Xò"Sƒ.Ñ¡Ñ& TAÈ,P]¢3OIGêÑ™ÛÁ<]Ñ]UÁ4E–n5í1›b»ôŽ«I 6(w+A`^zð‚Ø¼.ûá…Òç ­ï†âM¥¹àš™˜˜0\ÒÝÐ],—å—@Y÷@BhT{Á¥¸—@BNBïˆÄTñ1ð!òa¬Uüû‰þbÜ}+º|ùùÁvR]%ڃëMתQÖpdUÈ~`¾É€èLÿ¢P LÕêgŽd[CÐ×»j;F»Å‡â#`†Œò9pµ¸ØÏDz „³½ßù,ˆÞÜZžziÅ©¯€ö¹ý¤m5D6ËW!  Œ;Á~§£«ãp>ï8èÈs˜Kxµ¿xIóñ¿x4Ð ë˜ùUÁý•­‰vw¹F9O_°œ…`>o^m6Ã>V•С瀲Úûµö '¹R]£AìSf*ï˜%獓²†<'}y¯lªO³q0't¹IO$|Ú1»°5ù¸LgXMøT¥XÙ©µÚ–w¼µ¨kõbGÜð²uÞÆ¥ïCN­ó­²úCÂõΆ¶4H‘ôu çȳ2ÍB["éYÜÚ ÂÙÉc£µÌÚ¶Uî³ÎþàY™4!¡/(¹Ê›Ê•Àµ¶c¤d§½•² Ô Z#e5ˆ÷(úCpkèòp8kfågw‚âöJÑ+àxWÏÓž€j}jì«R <­2<Ã@Þ·TV ÔÍ'rb­ÖÅC¼†ÿƒ˜"zÜè‘j¡[óAL¯¸ƒò©¢‹ö`9äKÖð· @Ô „«AYí­¡ý ŽÞ‰ež¡úUZbêP'©Õ\`“ØÇXíÏ <Ç<²çøPZTfø{Bz—Ôç“›CµªŽ©4± ¨+&ˆ·A|§lT¸‘/Ä´X‹wñ/iþM̯Í9æ4È%o|^7ðÏ.[Rò1d,MúÀ­ý¼þ–ö ȯ9J°NZŠ@Y°l_Ù;©Ì žÇFàS°•+ï³ò+=ÙƒÏ\qn \v¦öÓÕNB^_Ÿ30ÎÚŽ58õ00+ëéìzà˜âªët‚-5±’çKEE‘ ô—/ÈI€Âfˆwi ¶p€p¬5¼ˆþßÄÚn-´>„Üê9ùÙõ üœ¿^ÙkÙ -9å°¯±=¨ïêÉ^<r’å–¹Þž ƘHnô1PÚSG^ˆþ#ÅRŠKrK ^ù k!«ÊÙôsŸÃñ[ö~°ì Kw—é ÌKnž´ôbw™ó0\8D{à>åk mi Üǽb*ð#ðB¬Õ»xˆ—4ÿ&ò-ë«=«…é ’4ý b%Vto[gíM- ä3|%—‚¼Cʪ`,? ÖëÑÆ ª]hOt¸ {é!ïSPrÝé~YûàØá£sO&ñ{ŒBÞÆ#CNÌegxs$sž9öõÜýÜîêSáÌØ“‡.[RkÔ<^yyz$poíGµ©Ú¸‰kiÚóÚ¯ñ)T\õÛL ÎÍÎ ”À¹¼ÜEù+!|«è§ŸQQééIñºRQ¹PU‰µ¶ñ’æ7È-ÖDkä7Èév>¢Ówx»C—ª=9*<<"i hAõ~5¬SÒ#€\!³¥¢5&ægjê¹ ¬H09ôˆÑ FücQàßNèúušà…`þúv0]NÓ!¡OÊÖddìH¿·BTiV1-­df¦-KU¡hDIлòz9¼£!1œ|:õZ°²GíÝb­êÅCÜð¿A.âiÙ´C¢y3¸ûØœêHìæq»gƒ¶Xm£FÀúJ‘!àWë½Dgß™é ÞûË®õA~å¿"èe¾qØ\ åúíÌ–ŒòXŒ‚‘òáKyÆ~£ýM¨p bï´`{ËqÆ~Ø_ÖŸÓçAæ°ŒH…4õ »#Ùlig6†Ì/ª ¬V\ ÝsÝÕc­êÅCÜð¿ÁZm¾l=v»ÚXY ޾ú5 ”E!$QÚ@0À… ð:¯0ü·ªï„¢*Û‹šɾ¨ÿ2Ð*Éãr+ÿaôÀo6ü«)ó.´îtá£<í9ãê ™5ªVÍ|ÞJØà®ÔaçA­ªÞ¯´q«2^ÔO‹„Z ; ZZõmÕ‚«¿k¼ëñX«zñ¯áË ^^¯æÉË§Ô ?ë†å4~Ó_‡+K©@*Dƨ7«õÁÝ3q„§dìÈè^!ÜÙ®ÙÎ~ Ó䛲;ˆÉ àYpT¶¯²}V‚/a7$Þ“Ø=±=¨íÕdÕõoŠp Ïðåøn÷¥û"pæÍSsN¾޾êS2Ò¦¬Hœ¢¾Èæ[`81ÿ?ýÐ… 'ˆÑ¼Çðßâ›p@á‘üŸ‹î­oä—è °uùuCå±ø7øõ"Ö ÁºÁv£í(¨KJ=yôXBSÏ1°é]´ï@^Ų?0UŒ£ÀSÁÕÓuÜ׸wfƒUjí2?ù‹Ì—±V÷â!nør‚?¬À@È}ç|8Ë ¶ãê6CòÎÄ—ÜŸ‚8!¾3€ir¾üö?ýPÇŽ ¸IÜC7ˆ<ö…?†à5e}nàisŸYÔÇÊ¿ÿÏjxoyt“I¨Uì½lo€^âjï¼ÔfjG5D1]|ò]9“Å ¶3G¼ Iwxü®ê`Bו“P²µä‹âóm}/:9Öê^<Ä _Ž™f|Y»·¨ø&à%«¥ùè´¶ÚfàzZq5ȳdÿ—1m:Ѐ›D;0WEGGkAÄø>˜ òvk¬µ›ÜHúÇð£üMJÊ£‡Êd€6Ó±Ù>ôs®–ε j(s”@¹›SÀ³¼Ã E”}>*Õ–t'¸^Л¨ kÚ™§àóû'ùGÅZÝ‹‡K×ð{ØË0Gšß˜‹ÁHÔ ÿêµÖ²èµ ~–{Í@V•Ï0ð$èhÿåÊG-ÿ\‹h fÈ£D€lrŽù¡u ¨ú;ýùµÄI¾ðÖaí¬ãKÛ(Ðqs>¼!®°‘iòk“ä—òA±C,„ÔáIkÖ€ýõ*VAΙ¬ï²¾€à ÿÓþº±ûâáÒ5|kZÑJ˼¯zßW¥-ŠBRÇXí°£=­îy3ä–ÑŽ*.¼çåJÑ•[À|#²0Ò£|MüýÀzʼÌ â¦ßéOaytQ‘tÐjÚu[SÐû9k8@,W;°›¬Š(Å 4 6µ@9­LRç‚X%[ ’jï,Ý\k¤ÆZ싇KÖðÖjk†5²2Î8O_ …+sÖ+*žô“çF×ÏŽ: OÈtú ýZÒ\ÁÜæ¤È+‘FùÈwÐ_ äP+ź¸áŸüþ×P%å±— ÊzUý9P/·'Û‚(²Ùò¬\ÏÀÀÄØq€8"‹˜Ë¥ÆwÞxÊ—òg+Ñlkµ/.YÃs—¼\f@þÕ9¡ówƒ÷tá¾¼RH›˜Ô7a8ÏÚ_±y•¼[>ý/ÚQPQATæ qXùÆÛæ 0ê…ÇFêlj=f®+ÿþokø—.«i¤AØRPà™r{ÒH˜V?5”vêõàAn•}@0†µä€ö½ò 5ÀQ¨î“]!W6Í»‚ s]ÀH^º”Ÿq½ô _H1Å Ÿäyð¤qEäg•#{™Ç{€OT§m¹Bò_´'Ë à¤Ì6¨_+AôÑM½à7‰ `]ù÷•ÿEs2¨Æå>¥2x×&~⩽ꭽŒj°´ÎÐzeí]°¦[“å³’¶5W:åmô¼{·ó.¨y(#-éȵ² O½§*Ÿêyò X#¬Ç­þ±>±ã’3¼õ¨5ÃÚþýé~Ä£æ€èb°·R“L*íè6Jpþ Fñ¹\`(Ø»z>tWWƒŠ5Óžc»ÕæCôׇ·W—ÿîù Áßš< Á2ñÏ;¸¨Ñc NB•çˆ:6Hœ¦¥u£ú™zІò¿›ß~ Ê‘àèlÿ\ßf'nw_ þ+KûÞ ÅéÏ䮑•äïîÔÿ¿\rwZ ¯aAé§¥”N­KÍð¤ÚßÕ¶‚(͹˜-âð8ÿj”£PæR‘‹d¤õ¨Ô?ã~¸¬r³Õ„Óß$( <"»^îI°üѱF”áJ’r ´nÉß&fCâguü5  fÇÖ›ž‡ªá:Wo ö5¶9z?3­w¬@~#wücˆó?=¹H®c¨^µ¿ª½·í< ÀØú2 áÁI¾¾ [p®¼ŒzšÅ±>?—žá¯6®52ÁÖ7Ôw%¨»”4>ûi‡Íž b ÓØ r9›™@«exyš3œZÉAÖGPÓWcD•æ0Àý‰s>l­ï {:À)ÿ‘'‡ Ë;¦¬líóm)Pëõz÷ÖJú“¯¼þ²PuYõ}Ujƒk±{·ëU,ÝÚ r??s0ÐÿÛ£f+ÿû6ÎfË>\T¶F5,¯q;Ù\Â7¢.9Ãë=G’Æ$ÍIºrÞ6ÃTƒHb`C¨-°–µ‚h*¦óÈ^ò+NŽòјß%JäJ¹’ïAk¡ÖVBj¿´ö©­¡éí;7‰@[\]gßF*EÚºPí«Î‡Ä³ÉU;@êe©%ß®ÖÎTGeˆÙ ÖÖ(¹ˆ’€›ÿ¸XýgXØp²åI PÚe- DV“N@âÿ݇Oþ?æ’3¼ö©>DIZrç”# “uË1|"ú|B›#½ŒÙàúV©¬d€%ž ß‘Óä\ R¾|¤Rn¼_ ˜H"0²[5@}AIRöBUæÔŒPmP•Žk½-†Ù(·‚¼_ΔÇÁ:e½-}@-Y_^Öv¹‹Å€×?æÊÿ+ L, ÕÈzÑIt¾`!Û€ˆë€ŽüÇƒä— B–ëŽümœâ¹`ž2¿2G®ÅÛߨr?ä—žšzôZÈœâê!t¨° qó;p¾mïls€\Æ&Ž xpƯ/iú—ü^Fþ‰äÏç…9=J‘-¦A¸~Ômô ŽvÍúçV®[ûh·ú¦î&ƒš ¾¬®ùÛû_Ê%7JCMªPÔ¯Õ½jÔuÔŸ×p0TõÕ{¶á 8}¼xo0 ò‹Kù@´À¨gtÒIEÑCt¢ý7 ÿ«‘/þ¿-?Óx.ÌŸW ¯Ø fԼݼ ‚Yáe‘‰ ¼©otæ‚îvôwÛ@´¤?#c}bÇ¥—áÿ E7~YXö÷Øv^Ñ%Å2û¤l¶M³>‡Š RôÄ– ×*«í@¼*æ1ä7r5›³|<þßÍè”! ÞÃÄ#€À ‘ñ‘g¢µ¡Dø. ,„‡s¢ÇA™”Ô=sdލYR/jï«;¬îR+Ä~q<Öªÿý\zþŸ2<5!u ´\Þvz»! =“<£Ò&8¿Ãû]ĄҾp°#D÷K±@®Ìájg“ÿ{RÙ_Mù?’¸ŠzÔy™¼Möƒ¨n$?@¡áíîïY«Š7–@þøH'­=TïUooÃb¨uwpV &‹ÅbU¬ÕŽñ ÿO(ÜRp¸àV8yçá§×<µ§Ô»©Òé$;Tšº3q(©JõY`:Ëå6ŸÊ%¬å5õæ×3F"nÜ n×Ò”%J5e-¢Ágà {LÁöâ®û®ÿ”ñ*¸ž®0®Ê•Pßs¥rõ2Ș[±a¥Ê`?îPñY“qÃÿy#s¯Í_ß{ÿ®š t Î)ž 5ÕOÌþø óí p+Îû“ jê\å!÷È2 ò¹“ŸAT$dàuñ”¸„GüÂ"¹Žú€Jû@f³ï@T‰²£ì+ãs¢©CÞ7ŭʪCékÁ£Ñj ß¶—x< ìsOIµCÅ´jz­#Pïîú½ëŸµz—ܰäïòëEdy ‘1£âîJ/Câàv¯_ìÞ»}È–™ÝëÔåîYâ? Ömr“ôƒk„ã{;Ðv+ËÄ L¬çA¾ÅçÌ«²ùŽU Æåfž¹äÝ2EÖÊÄ£b°Š|aq˜%æ€ÕT¾`µàeaqÁ©»ò”º!ô¢ÚÆÕ.Uoƒ6Pýîšw×® …‰ï'ΓÅY 2U©kQ/âþßå]>àc(­YÒ»ä'8_ál«SûàÌÓGÖ˜ ¾ŸŠ6å]GêØ«A­ñ•[¦¹Àž¨oГÀl}mÕ…ÒHÙ þ7áÌg9à V‚/#4&ÚxOM×£ ühËr õõ¬Ú¬'å¹Ì;d*¨Ò°öûõs¡êøšKë^Is’ÓSê‚óU×W&(Ý•Ê%¼Òöï7ü¤¬ƒw÷#83üt“:”N/•Wfó€½´hWš-Ã^$p9È·ÅbXï‹ÕÊ °†+³ì§Úr[SµÛlKA©©¿e[ ʧJ=e ÈÖ²O¸Y43¡æ;u¶ÕÏT¼µbüõyÿÏÄ ÿGÙÊOlÚÊæòj07Z[¬-pzöÉ„בƇN\ Ñv¤¨ßhu$w©0¾B ¨cýÑ »@òô”PÊhÐ^Õ^Òv’¨Ø.<Øñ‹WPчyŠ!@î¦æÐèüχþBÜð1á÷ÂCÃÏ@à@I`Èï­¡Vw‹…% @k¨ÏÕ7sˆkŽËš®P·Æº×—qÃǹ¤ˆßxŠsIñq¼5¶fâ%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur4.svg̓әIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ul5.png0000644000175000017500000002321112240014741024037 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>% IDATxÚíÝg˜UÞ÷ñ頻NÓ=93DɈTEPQP"—Ũˆ" É*bAE €$ Cf˜ÀäéééXUçy1£÷½{?»ºë.ݻӟœkúê©:çÏâT²QQõ€îDEMÑÀGÕ+ÑÀGÕ+ÑÀGÕ+ÑÀGÕ+ÑÀGÕ+ÑÀGÕ+ÑÀGÕ+ÑÀG8é—Å2Œ ý¤þè3õ~z˜ÉÆ c#ðŸ²"ܽüÏ!¢gZ#[U¯Ê©•ìi¹;gçpðÎð®ª в †ŽïwêÞy1(“•”áîmä‹ná#M¹äB Q eà"(û¡øÖ¢£PÀ‰Šì/ ä¹“ïeO…’¬Ü¹Ç Àqºi^ ø;ú-¾èfë7EiÖò9«¡ôtI·’l8óSÁ•y3 å˜}¤ÍœÉã7­QhDµ öÙ3jw'([XZPöR¸;ù¢4÷q?B¡-ï½SÝ ç–ìV?ãQÿ:ï(êRPV´Žø_$Τçß}ª¤?Ý;+Ü|Z¸;U+ä ¡ãPñt¹§¼%øªÖ–:!peå+¥ÓàØ¬âÌâQ ¢Ê“ ºØ.·ŸfzÍ·Õ'À¼-ôe g¸GÙ¢[øá»Ð{Ê;~^õÓ|P?Ôó¼!>Çv•:v Ü™³o8ècôô±ÐxV£?g@ûNù‘KAî1?1zwð cJ*© ÷¨"O4ð"8& ü#¡°÷©OOèÚí^Ý,;”CêÇPS™áþbÚß²_ ™ËÓ$_ŽmÖÚ Ð‡ ‚BOé¥z`:Ó™îQEžhàìbN…³"Š2òä ×cJ¾B‡½·z^„Š å?Wì{¬Ø*¶@섘¡ŽþçuÅÇ4€ØmŽö¶E(¼ê{¼ƒ½«¼U /”Ýd÷p.òDçðg›Q×ÎcoÂéî¹O̓\çÑó?¾K‰[  OÅœêùfî§ù.HþÙ1ľb‡ÙÞ¶>6a)·dAâ¹±Ób2ÁÿfÍ‚šPѪ⺊Tˆ=î:ìj îAGŽèþl+­mÌIæ›æjðÜ\y°ìmð4/ï|ÆÎ)¶cÚ»èê¹°¦=Tu.iTž1×ÇLwlËVk3ë `Ûl›nÙ©Ã_‰<ÃÜ*2àÌâ¢; cAŽ7ï6¯ ÷`#Ot –Rû@î;§¼'gB0®úéòlÈ|6á9G°=oyZ³‚‡{lÍUàT5Ý]1…®9.ÔCÖ¾Ú$оS{«GÁ¹ÍQc[Á;ËT$BÍ ÷Ъƒ »Ë ÷h#Ot –ù÷úšùÞÃk(?Ýr‹/䎇s®h0&m5X–i3ÔlÜ]}‹g;öyF{'‚šfÐZJ¬¶I+q˜·ÅPžWš(ë@vÔ/ÖïãTH ¶³Œ7Â=ÚÈ üY&2¯Ößÿf·«| êZ€ÍaͲL^à[ 8Ê»Ê'ÁhäûÂí=Û£Ö1 ~nY¢i@›Ø(H šÔ¥d,“Å Ë)ûeúõ?¢?K‚¯…âBày¢úê!`#—è™`KQ¯© ¯“Ûe#pŸªÙï}¼Y•V¦ûoLç,W'ç~°\j;iMù./É7€Ê)ù-;åãÀ&ö2Ð1ð†{Ô‘'ø³¤zŒ{Š{”Z‹Ï/úâ{ÇŒ³þq»#Ý!PºŠG/*ªû–õ©Ü– Œ+Ì 0)é­„¯Àþ#ÓžG¾c¿ý ЮTǪ• ÿdÜaìnç ~/0]NºÑJ¶.§7ÏA4ô)ø³D.2gU 2lF3`»ÔÙb ă`Ž5VW€ÿñê2OÝÅ5bX÷¹VÅ\ ê*µ­ú%ˆÞâ~nYÅ#| H$ @2 (à\Þ¯ûÜøC]þ¯ üÙ2S¾dÙ×ܧw~¤‰¼äâCÕÝ!`º_¯éJO¥B‰[Àe‹™ ¬íÄL`”É$ÀŽJçºe‡¨=ÿYm+WÖ}Þ/܃Ž<ÑÃ’ÿ.•TRÌe> Av0ãÌ 'ïê÷åòyè{Œ5F|èþ® ©¾ÂÊEˆÀò¬kIŒÄgÊ8Ñø‘…rÙ_¬I ‘H*à ‘´ÿõyÔ_ˆ–äßDe Éh¼?8Ì€~n¨¬¯©OŠ{@ôKE7(/­Ì¬>ŠŽäï(: ÊšŠ¶•G_µHÖÃ.‹ó ˆMâyeÈrïA‚€ N°Oìá°Ø؉'.ÜUˆ<ÑÀÿ›˜ýÍËË "«ü‡òÀ¸$ØÓßâ/v¶µ¿ò Ø %–’¬²7áô”“_æÝÚƒžŠšxp5²}cmöQ®ñ®Ñ 2”yâq`3Y˜„N‾b³Ð«Äv¡q$…» ‘'øýXè“Ð\(ü±`y¾ Æê@¶÷^HߟTÿX²µÓZ¨8\z¢< Îôλ¤ð [¨FA¬Õ™Ó\oÇ6s•ƒ˜¨|"^æÊér6P»°„Äc¸ xBÔ~îˆþÿŠî´þ›è£ŒnzН=Ó©hؾ¾æ/†¤Ÿ’›ÇÙ@Û¬]¦ú 0¢f—· x§U­w·ùŒ1Ìül·9{ÅèÛ$~¸ë&P>‡”Ù §1·€E\@* ±xxLTzˆ )&á®Dd‰þßDjæ+òjðÜTé-Ÿê5\èë ökl)ñÒ= þ§@à­š53b6³ìßÇ>ê\q­ãºF‚²G™ œ‘“äb ‰O™Øk§4bªX+ÊA\&|¢Äô$ ¢×Óü¥hàÿÅämr¸¼Bo…Ž«Á|"˜î3€]jRè{ç‹ñ4¹LÎç3Зûzø_‚@¥g¬¯?(=Õ]ÊO`›»Ëyb.·³ ˆJå1 ä6ñ:ˆ 4ÂÄOènëö@Á§§ÛäÞÎåêX9âÆÙ_·\ò¹†å`Þ`ž0÷Bh¯÷zÿQLð¾âûô)–ç,ýÀ¶Íyu àì3É1”‡E‘¼Î|@ ˆ# Dªð+iÂTÆ‚$„»‘'ø±ò©e7–΃¼Ø“YÇæ@ÒGÎU/$ß’ÛÌWL‹y xö^îë û«ö$ù¾L1˜mµK´ŸÀ:ֲǀ}–Íc=D¦(»Ïä¹€PÝNk .>9€G|& ˆ%1ÜÕˆ<Ñ)ÍUB)eÀKÌåMp_1¨(½º éég¡éäæ­2¼øiœÛ¹|Pþjåúªñè\Õн ¬UÁÌ`˜ÏÆ=æú´‘VÝz/XlÚ u˜K äOòJ¶€†‰lØA¤‹ÇxèÇXò€#Øq„»8‘'ø?j¯2 ¿q­9 ŒF¡{M@ŒÑßñïåcÑ]>ʧJ¦²ô;õ»,(ëYzGeN¸{{.Û(y®´~µm¾õi;µgÔ‡Aô ¡h¤`¥000½öÄ“¨=Jó߉3@q›ÀGKþ_Ñ)ͤկÔÛ@ÞËy5¹­Á?ºzV¥Y7%‹ë ÖÞÚSêÕ /–+8úP½‹±ÊSËDEw_“ ŽÎ¢\XA˱^i-ežv‹ÚäÖÉ @joÝ3€v´¢ˆÑÜ-n>ám¶ÉYøðwu"O4ðþ|¨G8~Ó‘¤ÃwoRÕšÒo¡iNÆÌä¯Áq±m²e8ÈKxC®³™ñ³ÑÜÇ*»º¿…æíçëÖ‰J¡òXn³v·fƒ²H½RMŠ9D6µ·ò™@©$ƒ<_ö“ÃÀÜfºÌAÀt±A¸A¼¥|)vY¢1MÂ]È ü$×ÊFæ!¨iXu_ùÕ õW{‹Áþ”Íj»” E¥²8MšHs«™eÞ Áßó¾Õ`¤ý¡  dŠâaPϳ5²Üâíõ0P*÷r 0Ñ1@ŒCÄ0&ÇŒ‹Á;ß¿!à-ÅbX+À±ÑÑ>æu`‹ÅòpW'òDçð!õçõ~`¾8áËúë“Cb(ËÅ`ª8&¦»éË ­ò&¹ BMýO—¡‡ªt+(W)ëhmÛ¬nPº¨CÕ›€’ ˜ÒÀñ‘ø†ñ¼@o£/…ªë«·Ö4{¿˜AÉÅðU¤D7ˆ½â èîêDžèþŸœ,U]*“+oÛSÊår/Äì²V©÷kùš¯oÙOÐI ¤ÈÖæóæZзÞãR½Ÿ~ Dµ2W¼ ZŽ5Î%Yí¡v 8\øº¹û~ñžxük‚}Cí t©ûIÏESë› É½RSîe°2Rî*EžhàÿI¥·—n.Çž:òÃa$wwm°Í‡Ì””] -€\L'`!+åw@ ®£p|F.}šr Ìm¡Î¡×@l«•Aõ[§ZË@™«=©µÊ8Àa~ ¼8À›Œ„À²àz<”-tÇøNƒ37öœ„<0ùÛäŸ@Œ£Ã]¥ÈÒü“j–W÷©^%÷Êß ­[§í½!v¹sˆ}Ð  wÈq9^q'È¡fs)@ßîØÆµÁ/C³A|£Œ}@‰µšÚÓ æ©e?0† HíNk%Ð]¤˜œ€"âQÐ*,ïYw‚ö v¥vW†»F‘(º…ÿ'…ž žðgƒ¯¤úw P®%W®ËõZSm7W{cU¸©ŽÑŽn 4š„~®9áKãxpeèËE+áå.-Cû ”+”¶J PI>EÔÞ£*)³Äzñ™b¥T;j9LQÖ)Â]•È üï"Dø‘=ìbÍ7Œv é?ø¿ùŠ\iY)’éh¨(@"±8Á´ÈeRBhLð³ÐlŽñ®i FÛ@£à6`˜8#ò@tQ 5¼+f+³€e”²î93ÛY)_¦)3”»A‰±8ìO‚8¨$©ÑM¿)øßI®–käWàù¶¦_ÍÛX们æ1pVYÞSV€6F©?äNh@&i îwˆÁ=Ã#kn…’†gÌÒ@L¨ ó(¢Œ•F{ófÛh¢¤õÇrçP+µ-–á®Rä‹Îá's¡9Ñ E™…®B;x—¹TÜé$ÎqyÁÖϲFË©’(oZ“&Àó¬b”w*ß\Y §ŸÊi’74Ý}À3Ä«Lb:pŽ-n­§ú(;‡²hE*çïð)«¡æïßBnÕß1ŸÄ’oH9¶Ÿìc5á®Rä‹ná'#Vß Ï…S_ÿòØàQËç”Î…FÓïMñ€£­}¡í›¤”ççÐJ4ñ¬˜-&Cy°4¡âQÈ?¹ ïcÐÞñMìËšÚåË—ÄPqhÕÖÉ–S <¢V©o×qmA–ò<”j­Ý#À£¦†n†¬V÷7^±«âž{?ÜUŠ|ÑÀÿNrWÉLðÞä¹­êqýÉ× ¶×¬G,ÍA}H±('@.“ëøhÏtqL”³¼›ªFW jiá€â'B†®>®[¾[Ù®LÛ:Ûp[ÐÜZ•:hA,6`, ä'Péó”y;‚ob¨—™i)éŒcààÈpd„»J‘/øß2“µc½>θ䇡KÛ o(D{ª±ñ¤ÓĹ4!ä=r¶|ôÆÆ¹æ3à·Uå¸W‚ïÆ’5e½Á<©Òo³Eíjdwe•x ¬÷Ø4«´uÚ&õb Ä €o8H!øo õ0 ´Cf*CÀù„s•ëRÐTõkõ‹p+òEÿtE¿Ü¸<ÏTwßÊ'f§Ð1°-Pw¢Q(y2Là%1A<æç¦Eö÷ñê7k4¨YUº¦âV0) U~ ,ÐÙ ë®Y—óD¬¨m±å6-”,e’äpŸ;I4‘ªôQŸåvuÖÄ1]D§2¿[t§õ7”ï-¿²td78øÍ—!¹¥ógë!H^‘ìLm Úêyj>ˆÞb‡Ø bµR*^`³€5x޾rtù‰‡¡Ü<Ù(7\ÏÕô÷* Î“Óå» ××®G|"’“ÁoÄ›³Ox”i îªè¼Ì3â]PnR»io¹D­ÐvLGê:û@¸«ù¢ÿ 5‹«»@î'óA£w]'”"ð?Goõ8ùøé„š Pö+Ë@¡Þ¡\ U«ž«þö?¿oæÁ¯ bjnLþ p´1N'AÙ\»|qSmk7†{¡òÑ*‡ûr¨(©Üìi­“7%õv% Ü¼*îTÖ€2M9©ü Œ£Ñkf~·hàÿÚ6¶±Ì›ÍAæðïô…¼cÁ³·rOÙëpº»{™1 ^’ßwAõ ïRßZ°,Öš©óA×f¨gÀí«í~޵:ÔüØ¥ ÝU¢–}C9Í…ÀäÚÕ)Uµm°U(YÿŠö,Ë„¼‹F•Ü ÄOŽ}œ£b6; lì –3ÃL¾g7;A´ wéþDçðÅla63BîÆ¼âÜl8¢e_š½*§—}U6TC¹+4¼4£GêP¸ a»#-A§mì-úÀù_·ùªe´Þ<µÉ9÷¡ò“²DF0-” ¿>ñ·ŽÒ¿¶Õ‹Rq,SÕj0Z-Œ‰P|WyNe#Øo9Rr2Ž ?ñHÎ3PöIù¨òLà…T„»jÿ9¢[ø_lá @èƒÐõ¡®ë<^ql*Tm;óÉéíÐ41c_’e§å%•CfôŒä›!nœ³8f<ˆ£â¨Øæ¹"‹>`t©™ìÝŽ`ðáÐN^¼&ÔÈe5À¯OØ]Ûh׈ɢ7ØæÚÖ¿Úu£³&Æ6q%ùµ¼…™”èrØí Xi´’„âUg:Cª#=)]‚Íg+·GŸ6ö7E_GLE_Ÿ•¿TV•Ý‹ô¼HxÞ2Ò(ÎÁö›Ú| Öã–áÚÀ#´!Œæ!3 ÄAñ{Ž÷"ßa(ú¢heI˜ñåÖÊXÐ~ 憮¯[aÝ ÇÄÃu?¿(¤7hÕZ@I‚”%‰-âThùrÓ™ s@FÐ ®Ê•éÏBùŠ@CyŽ7;úÝár°¬°³÷‚tÒ±ow5#WtJS§¼ù¶²¡p`Ã>ïž|HüØ^¨Ü ­jôhÆT°­´Þ ÝJ±ò©x„Wf=ˆ ÒIñ¹Ø >‚ª¯+Ç»]¿9· ?ªÃÓÎû2Ø÷ðŸîº×µjy…y@&ƒñ]èRýr`¡¹P* ~ Tl`¤¾«¶‡ä¾ θËÁõµ½£å”œWtºpx;ÖdxV„»Š‘/ø:¾üš±5o™GO;• 1Å–[x ’/Mø&¶Èçä<Þsš¹CúA®_²°bà L`2×ôžñUA…¯ô`ÅPÖÓBÁòzÝŠ~yYpÝÎ*W×6²»±ÍHƒÀÇî×=ùZh2QŽ`<Èr™%{‚¥‹å-Ôybµø㽉5ÁxDŸŠ w#_ý |%•Tq´¤ £õñÁ»ÀL,ôNñ†ù’ÙD1C™ $‘L"àÇ÷(UÑPA\ ºr„6ëëô^8HØAi^mNõ•ºï‡êÚ_¡Ñ·¶1§Ef lötö´cy ep9Б!ÜèB @^,cHSN4›ƒœc,Ò‡¤MNwQ#_ý ü{¼ÇŽ yCý!øïßjжPex@™"–Èq@Yt@þÕrØI%¸Ñ¼S~ r·^c¾øé#.©û¾üËVÔíE‰%b û@IWh£A4P¶*‡7ÅœLY{=|Gq-w€œl¼jП |ä`f~ý†ÿÕ¯¿îgPwZå¹Sn„Âíý öCy»’]EßCæ°Äù±ùà|ÁÞÔ¶äÚË!€dÝÿ÷ðŸQwsõ¹Ÿ# ^¢Ý¯¦€åÛË—:,Pz€lË Ê©_:PÛè?ÖýÔújBÜEÉ}»€íHÌzGÐ ² 7~6yƒ|«l-½ mwü¼˜2¨,+ YE×ÎIQ ýHÆ„ ∨ÑðÿªÞnáåù¹ùäÝ›ûYÎ5Pæ?óCÁ»5+íÙÄ v¬ó Ç&Ù2Y^ôwT7Å‘‹x•E`oîðÚs ® ±">LÅ’«õý½ºï_X×^ZÛ—*RÚ‚ìß/v0dõmÑ«‰ f&é Ù {ˆtÜTPòéá|pë˜m{šêžÄŸ ü²¢ïO'Ú}´-ïOÃÃ]åÈS¿BNeøG{º§C°§÷*Ï!pt±¾nm ÚZõz5ärùßýåx¨Ær ¼^‡¸±qFìÈÜ“efΣ8&Õÿ3u¿Ð³¶}j[ÿ¡X—ó+Pžhq²Ù hwÕùöyqKzjê» Èýf5ÈbŠ)/É×ÁÒTk¥}qï9;Š!о&¶z1¸‡WÌ-[ 2Cž–Ã]åÈSÿÿ-¥FW½µžú@Cß· o5ñ¥òe@‘(%(¦ŒÊ¿³¼jÜÕ¿úwþ*y¯< "ßTŒ¾ ®—º´÷QŒô£1ÿxÐñËï…jo-OO! _’óAرcYÊUüøðÿzöõá«{AB*ñ$€2Z4½@ô¦Ï‚¼Ú\£¿ l–#å| 0/ÜÅ¿z7¥¡+Í0A,÷® 5>ÀW†øŸGÚýQ¿,'H(¦”r¹œ¦ðÖ]¢ðϮϨû= 0Œ!b$p†,sÈ#^_ ,fô¡ª¿ª?%‹‰À碥XÌTEG;Ä\1†_÷kP#Õ/ÿûüòƇ‹T£Ì£r"ÈFýb¯JSF_Œð«zx‘*r” ^j=iÜ‹G)c‘4û{È&H"W¸{ûp’N#`Y2ä ã#X ÛIï]øzxçͱãƒfÝ[ÎjÓÉyæH[8ýDiÛª¡á±Pl†¸yήŽ@бhES²€ Üxó7ޝ‹_ÿ¿ó{ðë‰-Ѩö+¹˜Où ‚ CsõÜhL7›€¼TýÞ2h"†+ÿ̉­ÿRÑÀÿâ$y‚µØVf+†67¶Kïpª£Ð¾ŽM9ðä¾óÀÿ\Á”ÒȪI*r¥Bƒ]i·'§€°ˆDQòCé—-AÞ%§°(¤ˆr Xw©BÝ»ŸD{ZÓhJ2q@µ#‚Ú£.q@: É.mi ÜÇ¢(-ÄN¦‚þ´>Ljƒìi9òAÙm7/@‹GÛ~Ðñˆ“X’Ñ·r׊þ¯¥‘L$|ŸHâTh²ìœ¬–3Àß50$¸ÊÍü‹r:Ái¥BV‡Ê%žÖ§‚­TûLMçdGšísp´´¥[_e¢2E4†0L\ ²±l"û€ñ½9ܘ æ1sŽ<rSøXAÈ“]e˜š7Ê'Áø“Ya*üA/1>†Ð—f‘ìÆrÙQ‘à¨Nu®Ôæ32¿„s·ÞѾ/ÄΊÛÿ#p#‰¾!$øß’ønâöÄÏ sz—ön„£WƶŠûŽd|nÿ8Èë—7ëäÓÕÚM¹ R’â„3:¸ÖÇŒu„š'€XÍâ~ë¥_¶†ÐN£‘ æ$9×À\B ^¾£Š2»ÍtÙÌ™ÆWÆì¡÷7úWö2ƒw©¾Z.η¼îh í_>ÿÃóLh>½åþVÀÙÓuÊõ ((½•â?Rÿ.õîjÉ?Êû°·«·7Ô¼UýJõ6ð]â]ì þbï,ïJp©Ê¨¸ª›T9*»|ß|Í< T2˜÷AyM;Omö×ìýSÀ~žc«£XZ[^µ¾ |Á²AN–é2 ”-ÊBe-Xï· ë=`;âˆÙ Z‚6Ã2h«¬P?†Ø×â×&¼Î^ÎMÎTAQ&¶†»Z‘'ø‘àG¡{BG¡òûŠQ•s¡*«jAÕë`v0[ۀ͸˜ÊŸÕCê°_d_l¿ll·Û_mŠöˆv'PB>ÀJ6²”4¥¡’VÍZn= ‹#Ûþ-ˆ[XHÓpú?O4𔎎ä‘G°›ìö±‡=Ôî¬Ö>tI`68€ 2h¤“A&OUIDATxÚíwtUÅÚ‡ŸÙ§§÷R ¡÷*ÒÁ‚‚ *¢‚(Š‚ˆt°bET騀T齆’„Ò{/çäô=ß z¿Û>ëÜÏg-׬È93³g~{ÎÌ;ï¼#düÅ_ü?@iì üÅ_ü'ùKðÿ¥¨!j´ UºÊ÷+ÛBaAArA-zªð0ßS›S» \]—\]Ûÿ þZG"ù› ©ú€ú¬úT ¯²Un†#Ùß6e¬Ý¾ª?l½kãÝëjàÜŠ¤Ngb¡¢iũР7×ѰãÀÑØõÇ¡mì üÅoD ?ýY˜?>_Gwì³ÏÚ+ލšth¶4°áUR^¡%¤g'-8¹ì»­nkGðÖöòì Æ4£Í䢭Ðÿ7 ÿ¯þǽ̽Å} 㠼ɩçöž „üï.ŸH¾BßõÐ+5Ðipœè@hÝ-æ­°—A·ÐZ=ŠŸË™xe älÏ^‘}ìíklï5öSýqü5Â_+X±bšC4¸¥[ç6A¥±bQEØžú=[ Z[¸.k5\Û*?6B®øùž·Ášš±šo”áÐõý¶ÃŸ€LQ:²öœõ;5ãøð3à€1>nlìgþøKð× &L˜ ô¥ÒI¥¯Aú‘KÁ©~p¹kê‚fŽõxÕGÐáÝøðð*ëØÉÏ Wj2O伎.Ž®þy>òRèXï[æýè(>æ ÚVv²âVpmwÆ9 À“ýÀ  þwƶÁ¶ß¶*{Un¯¼ ¬wXöÕn×m®Îî;ÁÐÆh¼!šÐ€°5`šdúÖt¸ÈVý“ü^±Í°Í†‚¸ünùk!>E{GÆ—iv¨ý¾HŸs:z&ÎÉ‚¨OBßì%§KÞ.ÿ Žô<ufèªõþ: ²?°(Ë•ÍJ ðŠ˜ÅiPG«7»§‚|AN¤[Cá®ÆnÍߟ¿ÿkqàÄ´ Žhpu­u½ùš¼Ó¹Yt÷iÓÉéãyexÚ!°N´JëlMH:½šö7 Š&Ëb¾ˆÆ\c®1d€4I¨ÞîR÷iÈ=˜“—-awïmÚ­Å ëbæ‡ôóí=Ì=wwìÞß{t5î…\ϼÌÂ÷aÿ‚ÇŽëà¤îäáó+ å-g4Û AýüNø´Å­¬#@í.§ú¾³ÑÊ>Ŧ´®oìþcøkÑúkÑ£C u#êž®›ûçïýnÏ“pö©£Ÿïׂ¢˜Ç•ºÁÇ,:;R Á‡¼C“¹>}µp.÷dÉÑ1©Ë8tå šh¢ÀU[cî û=öµÛ“ ïÜÕôû_í¹Oh§Ä- ÍzE„ìïb8ã=` ±;ë 'üŠ6Û.m=öÙ¶àU£[ Ñ·E–†ÝÂ_$ŠŽùL~ïâýà˜ÌIm.$¾ÚrB›ƒà™î5ÛËÔØûÇñ×ÿ q|å8à8åJ™¾ìÈÎʸœ¾²+S»œ›µw‡ä/Åe;^—fm»v0D¬o׾ňÞtÜg4\jyvgz:øülx½ôYðz¸\v).ånÈ]•¶ôâ{ ýØ–ZU !qžq!ð_·O+ÐMÔ­Òç§êzÒ Ó?É<çï9Spá¨y¿øJ© ÚÎìcê^­º´œž°Ô£2Xî짋ΗeÉ<¾I,$ôOT›»ÀtÙ#Íãpc·òÇ_#üÿ|]¾"§€Cg?bŠ›f©iGãõ„}·lûî»'ÁpÎúfÕfp”ÜZR‡ Ûk÷ÁáÍ{Š…,ÿŒGrÇ‚k™š«‡f˜v?T-¬W ©;/Nê g‡é·×Â{¾(l0àÝnï·OúÞåó ˆÑb‚Xîeî›ÕO .½î¨5Îô;šxz\xóôs`Úîý‰×AhÝþHËH|$áØb T|"’¡:½n§c'ÈNš0CWº>¸}p3ЭÐ>«½¥±[ýã¯þÿ ¶cíµfH+ºôyJ:dE]:zñ0ÔÖ•ž,X:Í›êgºïP䉗¡hTêÎË0úÛBl_AâÔ®ùíÏA°ˆø $Jo«¼®f)Ø›»ÚÈvÛ3ëõ -¸ÆTu(:íîˆ5„ÆAø¾ÀÙ¾/ƒ!AW¤{äHyFF‚²XyBŒ„ò‰•ÏÔ< çcΙ“OCÉ}çz¤¦ƒa„ù¡ºÏÀ?$! ~#ø 6Átá ýàhêLqµ™&6k‡jvho¥«òŽ2hÉÜר­þÇñ—àÿƒòkóGAN—¬aW6AáY7¦¯õ}sDy9(o×ù×쇊¡9åyC bà™­V‚• Qå í›ÇÆg@·Ò·uÚ b–ÏqïKpÁ‘~kv9ÔÎsÔ²'{½eÔÄØÄÓqßE, ÆÍúý3àŠuwp¯Fr „K¹^³ªVV¾VµÎF8y. JŸ/|±äyœxÌÿ+h;¦Ëæv[ 1hh€¬}láv¨.1Xû׿ýßùþ§ýŸjèÇdàÍ/xgWgçp¨]m©Î†ÒJºoÓ`S¶Éûµ žÞs¼y¿Òؽøü5¥iÀ]áNs…šÓ5 ÕK!iÅ™On‚ä×N=rä<0ªvZY>4YèïmešåÕºa|jõñÑ ‘E/–BÈ® ÿmüiÛwZ,ƒ¨}ñ7D…Ê®– Ö(8õYÊàË9ÀzÇËh¾5zbÐNh»(áþ˜<жÕLÕ(àzÙÝɽDO®£ð«ù¬'¬N{”M)Q2ò¦%祟‡ê|÷l÷z½y˦­ {u÷ä7AðÚÀ±þ~P!ªÏÖ^Ü%CÊçCÈ”ˆÍQ@äQ·E×€øD¬ëÿIÃç$§A>#'ÈIPvéw¥ÏÀÅ›ÏÍIjG"÷¼¶Ëg õ; Ù'3’/ûAõ³UTù€k’kˆ«cc÷îOü%øJ¾*éQ| vöúÞ¸e˜_+ ÎJ†%4Âw4U#~ng–Ÿêq~œ[³ûºƒo€wbáØâ½PS¢_ª“TÔîžV>p½ìs_wop.s9™)¹w.†ZZmí›Ðivóñ±ðCÔ±°xP¦(Nñ9ˆ!¢Lò)Q"rÅI¯Ê÷åH>é¡Ëá¼µ;z3¯‰^µ ǵrCÀŒ€gò„2N™þŸïïÿw#¼{™{{:TϨ:Yõœ½ãä’ãåùAJv’€¦óC’|ö@L‡°éªÚ–ÇT ‚}»vVÈûçÉO¤?žË,ÇëFë“§±"ïkq¤éQˆx=ææÈ`Owä;_ãMÎÛÓz€±Êðœþ Ü|Óõé]΂W®§Ù£¸.»ö¸UÀ„   €hE3bx^á-p-u•¸š{‹º—M„Ê½å «®{rð-g ¡gÇ·Z­„–m[ÜÙô%PŒJ¬’¶öŽT*{u÷‚ÏÝ~AŸ€æeí`Ý߸Ër‹ü¬£¬Ñu…P8· (ß i$79?ÎÅ/:8<ï•ç­ˆú\@¸kÜÁ5°9fS‡í7C†3µ(½ šx,ðZus«G”¾—‹ÒŸMß®×I×·×ÿÿï_&Ë^*½v¾¹íÉ-sÀ:¥lQþJH {Äÿˆlâ+XŸµM³C~Ø•YÇ¡bÞ…-©w6±rbõ‡àQsÌGÃ6­†s¯ßÑÅš®¿·É}PZû¢y1˜ãë.ZÀóuÓYã ß|,àCÐùhûiƒôåÿ¤¢Äçâpq¸îƒŠ%Uí«Ó n]ɧeï€6ÒõëEð»¾IjÄð êpŒÝôïé«@Ê`®‡Òõó«ªÁ±Z~'æ@ôéX÷xä{ñŒÿ©8ûËö1¶Áp¤ý¡å‡FÞ5Û&m.‡Â¢´#çïƒnï$ܹB? øÁg&ä/Íü W‡9µÃ¼ï®K³N€¨!§‚A|~ÔðÐ$pšê–XæBÁÜü·óBÁÝÍít—6^ÿÿ¿|iTIiÉÈ8”vWj¨Ž*œ›s›Ðø@ll¸!èa0½bè­o—Š/µÈ¸éŸö¸PÆéÅKn†3Å5 ”g<çzôƒóiÔunˆ©ŽœÚíºúû " æ:s„øŒñ? ¡£ƒZøýúWµ_€&JÅAÛ8ÀéÒ1+”ÏŰTZŠêzÃ%ë¥ó ¡ô©’9eÃÀw»Ÿ¿Ï`h{[—!m{@P§Ð‘AX*¿™-dW¨z©ÖÛ²ÜKùBy‚¯ Í; ÚeÚÚÇ »KÖ¨ÌoáÀ{{Âw¿åýsš¤¯$9¡Î"æøªÆ­Ð¤{hJ@(X™7Õ…ô˜ÿËñ •)à âˆßK¾)ФEÌQ]A§Õf릂ˆ@0DŽh#n"‰§yãéà¿WðS™Ãlpsu­€Œ‡®Ì½Ü²¿K{8åaˆ ò[d1ÍC+Fƒw„×sÝÁ:¬n´íHÙ}ö‰‹#!ï¡s«RGß»¶öö bn ]ÜbǶœ‘àÏ`ï¶^[À\R×ÝÚjOZZÛ@\aôð1;dlÐ' WÈ©9…|xáø»côÊÅ®l˨Z‹e6$'ß›ÚJ–WÝ_»ü_˜V Wvônóm ¼Å?T©šd`%Ûäpqïq@ž–§è |Ì‘E^…~…ýàüg´ßÜ48òhùMüSÑ-ANª[ Å•EÝJ@Î÷™¹-Á¹A5«Áñ~ì×Q DTÄfFÍ„ò›k<ÌýA7Ôô¡çn}-Ü/b3h>ÐФ4ž,þk­n/wGw T[½¤ª ŠWæNͬû±jMéEˆ is²éxð/÷~ȳ XFÕ­²…¼Vù΢x°¶Íþ$¿h½ÊöWÎ9ŠÑÔAÅ Ïšî…˜¤Ä§â²áº¯ëÕ©ü5~Ÿ (ÜVÚªò~ G>"ï…hÿ–Þvð+ôšê1Ȥˆ‡Ìi¨ìV@i8¹$‘¨ÀÛ¢DÇKÖ§m½¡<(ïö¢¹àº[©PÀ{nØ[Áð{Í·Ÿ÷>Ðß©³hC€õù-&ˆùà9иÜÐìUÎ@÷ÛŸy!C@vUF‡ôíØA¿ƒ.Ð?¹Óó-\à—â5ÕTC} ç„;1Ìa28…eš5ÌËÍg-/‚ú¬Ïƒ^ÉV”°!îzˆi}_ÄZHí’½ºðèêÒµ¡rfuÇ.N¹pöÒYp>^psÑuàó‰c£5ˆ“"Oì×›~µÞVðèùeØ“Ñ3ôz0Ž5|¡ÏyŒ–@ÓVÓT”G_C™þ6êzií@´`J©¤ö§úŠ»Å{9Ì)¨x¼rMõË;='(Ôv/R|+Œ (ó;‘]›ŽÙ†…úéúS R,nÙ“x”ïÅD1BÞë=ØÞ³ÔÕ| ÇËŽô<ØtˆÚíshµïSqgP'¿Qày³Ç\S8hJ•ÊHp/QãåP·ßvÚÖên«ô­š®áµ‰–1À¿=>.ðî:%h%˜Ê<ÐŽÑvÿùÑ™s Ð'â¹Ðî oª›§íBå ñ*h:)O´éš Å b˜èÎç ïÂOÞ \d'‚ú]ܨ¨À;¼%fÛ9 gCîè•z$%ér°­3ÇYfCó>öµýš™'Çe³&X3ä9S] øàG; †p‚AIVò•³`ö©Ye‡2}ÞYÓà†öíº÷ï-^‹¿-J‚Z¦¾ Wƒt©aêPÒ”µÊËàÜè8í¸²È¾5o ”NÍ6åßÚ•¶l·AÀ˜„{cçv°Gˆ© Ø69nvÝ^Ïu¾Y`,óxÙëÐ|¡yPÓ²¡¯f7žLþ{Fx3fÌPùdå+•¡ôá¢qùÏAÀ1ÓNMð9b*×§X£L‰@WZÒØGGâÁ‘fiëæ-%ûÊ[€ûŒõ&[O°ï«Ï¾æ=ÏŽþÐô@»{[*Ðl}ⱸÇ@´D4Hoé!›ƒ¦ò’Ò ´Õ³æM°§Ø79Ö‚Cq^p.¼„& ?|Mƒr¼˜Ëó ï‘wÈ1ûNƱ ¤¸4*#—O•·Än¾1.šˆ½)úvÐŽÖvМ™%«¥?ˆD ¡w7÷Aw Hº’ráÊ ¨]\û®eô9Üùí6S |hpGÿÇ@Lc‰˜øà…Pƒ (!JÅ–ÌíëVÃÁ>û¾>ö\Ö$}üømÑ”kR EDË¥ !à Ñ4Ñ4ƒâøªž–dH0µÒ´­„Îa¦ð€ÆÇOü÷Þ_|!ë¡Ì•ë!S¦]Jùbç…}°‚ïòoâ3+ß`ð*+X uÍíŸ;æå\µom¨º ¿ª¦ÀWŽQŽ>à쥛¥-»gÐçc zL³s±g!*%bJèç 2E²ød†ÈQ ©ÔLWš‚ö3·òØ;û;¯€óqg×>À«þ¨þø ooˆÅpkÝ«Uj—Z^¨3A™oî…‚PwwÙÚŠ+à÷^¸3¤ øŸ qÍãcž¡D—Øò;¹•] Ü':‹Öàº×-Ô¯àܽ—”Œ (»®2¥ú{hkM,‹K?/ïe^I Ët©¡^ðž &Š1â~°³î³Ù¡H)˜Vü-”„'»¼ ªÛTN©ºSAÿÏ yEË››å\¡9¯%ÚÚ16ÄÏhÖ*øyc‹ã'®}ÁßÇ£<®|W¹«Šo,èš7 Ê?*<˜g„0¯€ ¾ï€ï)ï—=sAÎb›AFËNrT|Y¥­)€Êµ%KʃîrMˆù (‹ÝëÔ g›î1õýôðÞ!ÁÿݾA{Àç²çXŽ ¦ó £@¾'—³”¥ÊãŠhkžÔ\×ç®™îµà uïu«€z~¾xZ<,:ÍË>Ññd.ÊÜ”·JnËk[8Œ7+sD4s·TšÝ~þwù·uºú¨{Èt® bøB,û}Žûœ&(_Sµ¤f)”w¨Pý0°ˆ 2B×.ô`èc¸^÷ ¨éR‘Í@ô×Ó”5b™xŠ—–ä–}©í/¬½ä¬ÈßZ˜zUyB)%1ôáàÇÁguÀ ß+ ¼¢7íõF][S½²=ä;0u3JãŸ(ÐÓ5/xw¶ÛæÖAUt¥RY¢Ò}Ü‘ ¾I½t÷€rH4ã;7Èw8 b ‹™2OæJ-~W4¬Ô%A¹ ?㢺‰ÖCðÇt÷{Çy΂}M:FŒCG™Æ! ¨·ÊÙ í8pER š!ÊÅ šÓÚ4Í`P+xZuœºO´hP-Z´ x*Í•"¨í\³ÌÜNl9þìÙ4È{¾`Xñ,t‡º‚o…ns»íìÐ ÂdždžDƒÚKí#'Žúò•sb‘xÊWUM¨î çßJ3fDA`k¿#¾+!>¿I¯È­ úŠ6" d¤ì'ñǨ¨Š _e?G só•97Á©»Ü~âIЗ?YiƒÐ^¾û½£Àd lï¿Jn¬|­f%–yNô­†& ñkÚƒv±6D÷\c«ã¹æ_WhùØÒÎßznæÙAiæ¸Ùr3$n‰Þ~?èŸÖÞª}ä Y%iâ%ñ<ÈPé!ã¡ÌVöTù ¨Ü]¼¹4ŒûÜ:u,ÔMR¾RžýÀ¨;ú@ûØNÖ6àßÁ¯—Ï0pÛÕµ%?.–É¡ˆ"Pæ*B©ÝhÍCÚG€Ùƒ/AÖÈmRO½à5€- ˆA¢ZÔ‚ã+ÛPÛ0(IÍ|!wØë\m\ÃÀ»gؼस ¦}Æe†Ó ï“OÈßú©ˆ¦—æÍ3P2«|cUœ¼ãBÍ¥~f ò P¡õ£ÍŽÆžå’ò¾x¤N¶ãFPú‹æÂÎGûÜ}!kfÎ-ù+¡@I—~ìó²×å)P3L]'¯@؉OÇ÷‡„üÖï'¾ Ù·”Úª.€¾™÷þk¡•gëqmz‚¾NßBCc«ã¹æo»×vÀ6 ®ŒJ{9õn`¥ÓhíÑaó‚m+í(M&È™(oq'73åh&ƒå‡šZËH¨{ úÍÚXÐ=…ì=LUÆB0î‰ì‰i‰+âïï:/‡çÇ 'É9r?YY²(¤4*Ê Ð¾¬¡‰VËrÈãr›LÚÓV4âˆ#j.˜Ç[4Pܹ0­äXÏ9Jï.^yV@È›1F¥€Îª×/q‰:<@DA🲠ìQŽžŽ‹P>¤º_Š—–u¯| ‚f4÷mQWBÇoÑSèD!p—|ZÎ¥Bã­Gœs¸³Î/¹ðí¥-P¼/yÉåŽàågÖYÚõI¯®žkÁïb³Ö±5¦éqO@Ö1Oýt“=Zzßa½Ãæ…-Í\Í›š·[ÿȵk–üž]ì5É­u-çfë9‹B1å?ª¦5€Ü.ïo‚¼Â%.ƒ0I(ÈRNpÔ‹®c®·@½è¼âú¸O8Y š‘~Oz+`Ììíÿx÷ˆ0yfŸf½ò$¨¡î#ê$À‰ Ee ,×Ü"Vƒn˜¶L3dٗ٠vVï—Ç9ÆÝ€À ²ïÏÍ-è çS“nN9öíåïW^†˜6¶M}›ŠŸ º6ºÚhP·«óå Y,@>¯¦«¡PDÙŠ3PÝ«v²ù™î×|C¼b=Â@+´·*-ÁÙÓõ’;úEª7¨¯Èëä°ä›oµ´†KQIk“5P~yrVg˜!ú‰Hpn OÙ ¦ÁiíÁs›×XEàêÿ`à0|fzÁãàžkliü;®ÙÞuÑ}£û5°¶­Û ÚÉ|ä¶v»’D? Wœ§€8Ñ„hÀŠ ;¢ò8)SA]ëZéþÜ9Ë]à9ñ¸†[<{z„‚¡Æó=q yG™¤tñ>à SN%;Â瑚5Êš ÓlÕ¼ î—ä8õEpSýÕx72„ :Ó•PVW\S¶ršd;ò¦‚«³î.íZˆz7.*j Äûat0hŸÖ¶Õìùƒ<#«A¹G4T·z‹:ÎM½™±ŠüÊFW¡ËWmŽ4¯`Gà*ÿù ^"†hÂA¬UÞV¢‡JÊÊ?€³Õ§ƒ.$‚cVšOf&¸wU¬¹ã½Oz ±_GSë)à39ðk¿iPë¨k/…Ȥ&ű} àÀ]A[ÿ7׬૶W~Zµ J_*^x¸©Ã->ò¹È“¥Tò£Û-ž" „T2AmæúÆÝÔû]Ñ®Í@?gè—xÔ˜öá5M½€t¢ ¾”KùŠÃt 6>› ­{%¬ˆ[ ^>“¼3@µ©7Éi -¸pƒØ&´¢ )p i‰÷’RA\h.Ñ€&AôQà¡‚‡ëÛ?ÖÒŒ7xJÏÇ¡ôtu_ËÐd~l|üqî¼&¸ª±UñsÍNi œùay‡!û¶ŒÀË jEÐw¾¥æWà9䯒 òu–±(kø¢o¼jŠ(™¡:Õ\p?ïž§N·“ø ô6“Þ¤C¥iµ1xB¼Á‹ §3ˆ·'ÞÜÀO‚Ï’y²GÓFñí§Úl­¨]ÜŸ«ÝÁ­¾¬æ{)äd…4ƒ«Öz—µ;¸¯³eÙ'Ç¿K¾Å ;áqÞØÄE6S ¢?>(À§b®˜ÎΧ] T¾S=Ùü:XºÔåZ%hoÐŽÕœ„ Pÿù>Ù`¡ï¯{Ô×å9äáD\D]ŽYÕŠ}ÌZ+ "Ðìpއë“"ÖE¼ ¾£|oóý¤¡g5¶:þ5×ì_ý]õÁª™Pi/_]ê ><ãMogOӻƱÀGrµÜ Tc¦îo¾¨E‹°a£øˆá2Ô'¤¢¾®dñ)/ƒÁÃcñc0òxÄ8 xI¼)f‡ØÇÑ¿ÉÏH%‹<Ð>¦ìQFn°¶›f?¸íî¾j<¨ÍÜÓÕVà>ªÞ.ßóN+¶›ÁZ^]V[ ò+kµM¦w½w{]¢©•1!…dÀ$4( Y­ PÜPÖºª_u+8öõ¹)ËÀ·¥÷nÏÑÐzrÂ긷AZ[ªRN([Ä 1œyÎ(×v8“s.,u?diNë/¶ñųËzAõ\í dk;¬Eè}~€­ç«àW@€ßP_$^Ñ‚úšâ¡kÚºõ†> Þ ÄŸXèW¹fïœc÷³9ÁÞ»n›ùèhÓ•c m­Ý¬2Lòø)$ÞUD½ý76l ä`9Ôg¥ànÃCÜ ºÏõžúÅ OÒ]Òq÷r'Æ%Òÿ&?µþBYBÕ d)¯Š ùTi¢T€Û®ŽWë@=*ÛʧÀ~ÞîãÈ‚Ë{/¿˜½ JÝÙÛ žŽtçÜr{ÀiðÈóÚàÙxQŽ”ÏÙ2‡ÀE.([Y±¬zœù(Åš~‚' ôëmeâuq9 Ü ”+[A]$ÈbàaqV¬Ç3ŽW-!µÇ…¦—< 0-å`údðj¿ÎañCȳßChLëë›Bó¦‰‡šŽ†ºÛ!{; Hû–ñ(„¶<­][Ý)ÝŸèöÿŵ#ø«<ëÙÄ7@´z«û óÔC¦¯ñ=g©É5𿯠$Úç-*ˆ6òQÎn†È£À×hñqIh„'!ꄆ]p`ÇþOê§¢âºÐCôJñÀÔ@u†úˆGÅEñÔ}hI¬{N7=!’B¡àPZxÆ4ð™!¶‰ƒõyÄça—ÀgŸ¯Ó{ Èå¼ÎbÓy v—ei7”Ú**ªºC­Áœl¡ö Íã¡I\8¡þ è”Ýb!°“œÇ2ç&ç`¨lV1«úq¨ÜŸùEŽ̽‹m¥=@47F¢ üýV#¦AÄ¡fKbnÝZU³ 2ó÷Í-¦ÎÞ= åâ6£Û&áaã%cpc‹ãçsí¾P5Rm Ò©¾ï~Doéãž ô"…E€"þM>ÎÁzâƒ/°K$ˆë@±‰‘Ê  Œà'À5Ý5Ï9 \¯¹6¸–{ØÃÔÇ€Œþ7ù›±áF1”® •ׄ”#J¬’N?Ç×ΕPz8çÕ¼³P}}¥¾úhº˜fÇC Opó€ÁãnÏ&+ˆ2ñ-ËAÞ/Ÿ—³áľ i—ÎAúòì{òÖ@¯Í×¶Y±Dž ýx< t§­@ÉQÒÅ (¨(ZX:Ží}ú>P›]¾;ûhóìÕŽZ°‡ º:úô|«‹ ­V´èÝl¸Ãäõòš+nª}4IÆýžÉõlÔ;ÑÍAW§+×I®®™E«z—ú¨ú T÷¬~¤z&È—§cøìòxư4{”Öb0Èeœãÿ§Âw`Æ xÑ?Ç)nMºæ9åÐzÑö6Ö2Û °¾díg yR&0 èäþÛ¢õ¾2º† 2å[| ås*Ó«JAyÂX× œº¼¸¢ñ ]¶["ešiì¾Ïø®öÓWƆ.àîã>¤ö„êÐÚÓ–nÓº UñpœpöwVB§ŠVï&t‚àyY~Np{«o©—@xœÛ@)ShºBU÷ŠU«àÒúó]RG€.¦tnùQ0vÓOÔg€27rJXD{.úz|Ò?Ê÷$G–¿_=ì-eŠr;hz™‚Ànêgš Àí_Â5#x§Ñ©qÚ!¿K¾9=¨ÁŽ)¶v" ÔW Ú)š&šdòKÞnøÒ†–5XáD€X«i£LÍe£¸Ú#²Z^Ë^ËèºëÁújݽÖG·©/‚ð 8à iÿ´¢!ã¤q–RP_•¥„¬±9ïå'CÑCUƒj.€ndÑÅÒÎ`úÈÕÉ­LOý«`z×t“1tNí)íl¨bQ·2yƒŠnå„p+¥ýAø³¡Û!ì™àÏ=Áô˜¡¡ ¨>êuÈçyœIàÈp^ç æ㫺CMDþçEgÀsŸ#Õ¹“Ù­‰_Ã53¥q<ëhã(€œ´¬Û3w€;Èñx]„¯ y# t‡µ&ÍS ÙFÞþo2rcÅèñ'xZ<¥œQ¥Ñ´Þå ¾×wÖ•öOÀ9ÝVnϹ[.ä Ft§Ã¿ÉßLfàañ’x ”Ëš ”%9KŸ…ÌîÉëÒGƒîËìºwÀ°^”ò`W–ˆ2Ð$+7)uàœà4¸NCþgÅkʾ€3“w¦%CdQè·A¡×ÎNçÚúƒ¡§¾…n¨g¤[†ƒ(Ånp?ä^¬¦CVӼ݅EP¸ãòάˠW[ñ)TÔè<µoƒ¯Wë͡ϽýJz´ƒ€÷ÆúÞ…;J¬h¹›J.U­†8[³œ› 2%:¡IÓÆVïçš¼{‹ëW4T´/o^zäFçzÇð;éÝÃëmÐTj¦iÚËYrÑ¿ÉÈ!ë0^¤|©d€©D*w‡å(9 “,J]_pÆX’¬.‡ŽÀë,¯fê°þM¾W¯¼…;¸è#[È^à˜å¸è˜ öªâeóÁu!·¢à}Ð$8š:Ï‚¶PSÞÇVÇ|×óÛ¥¨SYœ O‰¸¼2ÞΓE¯AxxÈŠÀ£Ð¬_Œ>ÒBÍô׃òx^ ™+=e+PLŠQ9 2K~¤€´!©]¯xCæô‹i=Á ±²ƒa_Ø¥D<˜x)nÄ Œñl¦õFÕ`†Ê µ æO TSó]]>„?¹)ª. ø2pOc«á×sÍLiäy·Úì7Õ½k™rº)Q½ôB×W·Èâœ,¹Zžf7ÿàÇ|lX°fBE0(ý•lq”Í3Ê>`<ɽàH­=i‰Ûæš[kUpø:ïtú€þC¬þ4ÏÓä9R¹BýN®ú‰9b:¸»;«‘`¹¯rWMg ¸ljEðy·jkíYP:«­Ôw@¢í¯Y öIÖ‡m>ysÞ‰¢TpžÓ¿¬«€ï žÑ00îº;>¾·yíö®1.×› s9ÍI÷ˆ‰Œ×5Rmµùµ–*ÈúüblZ(Øtåûä:é×Alxëö‰Ç *ªiט:ÐÅi›j—Ë0ÓlvçPµ7X=]±r0xy{çú¬ÃDƒMÿUc«á×sÍŒðòÙ^:A}Ò¹Ì1 äd×g®72€"Ÿv>ÿW­ž„àÂ"r•g·ò¼’ô¤‹š µE–S`‹+ )¯„â»J&—gÍhŸàh¢N¤ˆ=üdöôÁ„OîW±s•ó}¨Y^4ºäf cÅ7UŸ€wŽú²ú:hÖPI&ˆ)îMî ™gpä¾TÓ_Ù ïh½:áMè· ÛÓíV‚×`¦` ™#‚Ì£„¢¿éÈýâ åY¨ìSuGÍP8¯¿pðÒ`KNÏÎ4€2lÒ­’É¥(¦ZZ~F†ú†ÃÊfJ¨iS[¨¯úº*gƒØÉ¾ŸNõw4/é\ºR&=•œU UM«5ÀÃÂ*N‚üŒ­ÕO~&µÕ"+"w?œò8$N¼Zmî…ï÷WŽgÈ6 õØXŸö6¤ÓœY®~Pתª¦úX –qÖ à.r¿­fSä{r9àƒ7 îCr“˜u…Ö^¶^P¼4oHÑ0È™”üUZ,T—«÷Êî6¹Õˆ„ëázM¯;»¶ÿ½þí}õQ÷õp>èäN‡¬¶…3K瀫»Óä Ík¹®U˜>3y˜nml5üvþô‚/»¿´Wé!È=Ý!3 ‚·ûVx,†Àe~.ï}ÀvqH’éäýßù =>øòd>Èu»º¤Uç~ÐÉE_ÿyw7óøºµPãÈI+¨󆪎5»À1ÐÕÌ5T¡–ïBí:óšº-PÔ+»6ÿ4”,Jyïò9P†ÕÝnMý ÈmH‚0é¿kèˆ×íw9LP|Sþˆ¢!P{¢¦sÍa`…Ø.¾¼ðÁ«þ 4˜E ¨ÛÔt5.µ¿üZöWpÉëì„ä{@©-ú¤¬øGFÜú1„Ÿk=-ñCÏ+ ¹ ñúVú—€6É/Á½Ú½P †âŠÊŠš} îÔiñØd]Ì Ð{ë½õ!­†ßΟ~ÑZ1¦b`ù÷PhÏ›Ÿó´Ìiå±üñéá9Ø*_”w¥dþ(¦‡»áÀ†#FOŠÏÅ*ž|#r_üh 2©þãúŽ]Ž7ÀõPa^ñSúÆéÐ ¼_ œã#4ñŠp„Í€“®SÎó peßñ²³+Às|q«ÒŽ ëâì:b[¤íWGiQŸÊ“Ns%Ô.(]±œáÖÖö =«= ™Žcêuˆç.ǃHRÚˆ\p­uôtO+ëRnI_—–¦|vy3¸ªL'Œ9Ðya÷Ôë¡ÝÎ%­#À8Àx¿áÇYÏ[@,7Ŗ‚žàHu¿Èf`¦Jw - 5­‚ß?ý_Wb¾±öu¨^]q}ùð¸Þð¸><Öš7&¼Èe2ASÆÏ8/ÔPx%"@¸”aJš…ÊÃ@ˆèF'à¦úÏÛ©_KðÞY•^ãW NTž{ÎÄŸø,É —ç\©ÊÊ3¾ûÞ8 ¥/Ÿ=™ì euu¶—A·Dn‘•  —înHϸÊÝ“Aö¨x©ªÊzäv(\#‹V• W¾{Ž;˜"nSBÁì² ¶N„ŒCîœ"ÈМۓê5‘Õ7Ôè!`WËq͆@;m×Û¿ M3c-ÑO3˜ÎÓ ž“¹Rõ²4K¨ d+¹´ïë7nÍtm‘Ni¤’ÜØ*øýøó þª•¥ºA˜3ÔsîÓÀH÷çw@³e<Ж{ÇOöƒJªOâ‰aÕœVîá£ñÓ¼ „Пn "ú* A„´—Ü·©KÁ=$w_aœ¯Ü·øØ^ØtjÃÈmç îúóRæ‚ïÔê¢Úo¨·h4Œàü«QrRCþM]=]ëÁ{NéWHšøCÅ¡û`kä–}?è¡rlŬª‰àØæ,uÞ —?¹²)k%|³dÝ‚ïï†ÌþÉÝÓú@ôW‚Ê¡oñ c½46?üÆÐ×@}CÍWo|0⢋hC prtŽ)®@Wèo3ó\ú‡y&/@  ilQü~üù¦4Û9À1÷È×å7 ^ïúÆuÄAõW4ˆrÝÁáRÃw~ɽ¢µS"–n4¥­æ3MGPî×Þ¯‰ #n¬|€gý×”¹Cf‚÷-æMæ3P;ñò3Yå`vÜTä¿ë* ª#Àx‡ê­>,i(¯²!u7¤gA’ ×Áh¶I$xœ±ï³'ƒenfbÎq(Xîšêš[÷W ®¾º|ÏJÓ¨“7¹èu°T'5Kn­1ưB'$Åö€ÄÔæ[â­à}ƒwµç ×ÊtyÅóÜ ,g¾x,3êZX} â/K¾Ü2ô)X8-èvê½>=[¿:Á»ÝZ·ÊO”?YÞ [OËÇà?À«Ÿq"hšdE9D¾Ä*Žó Èã 9@w1•þ ]¬¿EWº‡ôAúÑ _s˜b80 èSÿ5aäVƒÇ nÔÕ ©¨ÙclÆš¯ÍmÁTGG.‚öúÏËn å7¤ÿÊTÚpTt®OõéK+ÐFÔÇ\µÄ§eeÀÅVù½‹îçi±Zyôç7:ÃÀ³H¬æÒvRó¾ÐôÉö5-Ó! Ïÿ€ïÛ  Ði‚{‡zZ½СCâ±”—¡f¤åκ£Pz¦JSë ao·ðJ<! Bz„Ïag>ÿ5üé¦4Ž£Ž7càbÀ…Éçëîª+eû ¡WtǰÙ`\g(Óm9]ž‘ž¿¢€$Îp¸Ÿ‘ÜƵF›A†ó¦o _û2;Ä ÞÜðùV iÔD6lºènÀмt¼@1h;Rˆä†Ï_f‰ÿ£>W§ W]±¶í•5õ©gSÕ¤Þ Qw›ÓêBüuægÌ߀ïj÷`¹'äDÐ$hYÑãÉÎ3¡SßÃÚ e“òò ¨7É;ä,Àˆ ¯?#V0EÜ–÷­í=¡bhíǶð0pt° ü'¼íÿà'¿¦ÿ¤üéïîè>æš…ûòl9Aà˜l 0O…&~¾6Ð%joÑ^Î yÿ¯(à4Çdˆ‘âIñ;˜²óÀ LÁU.N³Ô«±Û;4¤WÜ` ~TãÍ]$S|‰üÓè?Åõwé¨úD‰æ¾]¨l"G€v¬š##@­£¦O¢Ž„9 àñð±!!àá3Ïó<¨) _•oËOùqC®þ  0€6D‚³ƒû5ì»]{U_0Þfêè‘útMtü!í¿…?Í£HÙS{¨õœíX·Õvªº <jO9'€G¡1ÜxÄ<‘,Nƒœ@Oư‹õ$z4è©…ë»´~l½º¨-¢‚ PÖ‰G…›xUýŒ^†x} èö'–ƒ{ž0‰BÐ4Ü0'š5ÔïêsW[lÃÿŸÑð÷Ugaݯl€¿ÿ%¸ê6°½¡œÏ#ê^"½ ì¼Ûo4[ÙfUóZ˜4Ëß ¢·¼È*`4§hTcÁÎO¾>WñB¥¤vñ6ÈR±^IM•ö”æà#s Ýû¹üioëc{˾*úVŒ+»ÆVb´ú$˜¢tÏ+¾à.UKÕç@>#'˹ v“ò`%Ÿ²¨ÅA-õgLÝð£í¦!5iA Pš‰b¸Vº_p»Á½_æÊÝÀ³ÜÀ£ +qóðACÅùç\4lç«›Ê@¨ Õ ×žÀáQááZèšÔ#£“ B¾ :îþênµ`Á ÿ tyuO1y |ÄûŠ”*ÍÍ  'óÅÕk,û5î³ÿüi_Ö§ìdédÈÚw%þòh¯ ÈðÎï"Ý^Uù>%w–= EJn¬xªÚÔºÌÁñ™³Ì9 ¤¯|Múg©ä$`§7ІxâA«Y­Ùº9ÚîÚå@쬂ËjfzN-” )y ÷¨#ÔDPz××K¾ÙPÁÅÓ.òªug;/3XìýŽ×S`êÖ9x„ß^2 ¼z†{Ù]ŽWÊSœù›Œ<…'&`¿PEV -±¢)ˆ…¢³zÔûå[r(°\†Ëf`Ùl¶Ö-€ºæE–öà9PZ¤/h®®ùiÑ0E’kÅ@Ѩ5~g8¶*ÍZÍPØ´,ª¢”ÛÌ[jÁ¡8^rn1›bÚŽú`¯òMá#Цjæ(K è[ÿq¾yà,rupñ¬x d Û÷™ÿHOðcx„àìŒvÚÁ|²ærÕ"(ý¸xTÑ+Põ„Û£î=8àjzBƒo÷?Mß‹~4¢üÖø>æ5 Œõ.ý~Pz‰qðèÅ* „*ª¨ŸÒ¼ô£• Ô*”wÁ™êœélæä SÕf°NÓÓvýmìw‚Á.6r…7¤—PÐ{‘rB©òIæžupæž”Â˹à¾Gö“Ñ`km_éX ,%–@-N CåHù2GîÑÏV3›ú7ùj¿µ¯UƒÁý®»«øä>oØý΃üì&xWˆKº àè‡o9¤ƒüËW&¤¤@ë¸&[ƒ›@ðã¾w{ìïyM=Á˜oøH¯Ϧ&Æx0¼£ï¨Ó€&Fs§ò6ˆBžÏ˜ÉQÀVßÑW­ò-®°4_j6+ƒfxH|®»­íl°Ÿ4/·L^”áÒÄ äèFî¡«VŸ¶ô¡3h7èêv‚_™²Ï H¸ó}ÔSà³Ûç=ÏJ{™,öµ¢;%€7þøƒÒBñ%8æ»|;!{o¾­¸ dž.2”¿Ú^×NuŠ»Ð=¸ÜÈÏýñ¼¥“EcN‡ü¹·ç̃Ž™š´A ·87o„Ä/šÜº ‚ïòŸé³ô+t—´m@Õ«3eÈLé’¾ ‡òªœ ê2u‡Ü¼ŽEŽ¥ÞÏÝý7^½Êý¼ÈÀžêÐ9wBE¯ gU"˜—o*5‚Û»rQu p«¼SÝJ½9²ü"·…?yÕúBÚƒþnNûøã»É{'ÄîŽÌ ]A–Àãþ <.žON¡ø Êp1B<¶õö>Ž`ÛkïætCÁܲÑUý¡®ÖVg=Ž÷œŽÀw †Ñ!ÿ¬s×¼àOr’ ú©Qj0œÈ?•o‡3=Žo<¢ß«o¨Ï«O@JÔ…oΛ  -kñå#ÐdNà{Þåx¯Ïh/º ºû´ËÀmp¿¯î,X±S5Ì/©e %”ƒò˜rŸèì;ȃ´MW^É:gzí„„šïÏ>šlïïˇW­C)áLõªUæTCªÿÏvÈ?Ðà­)s8ÊYpßãØæü\l_Û÷#åIY=!¾a`ÿkJwS½kpr™A½j†¼êSߨB¿JPCšÃ>y\‹íªã¸L¶,ûq‹d‚ì DÒëgM¿dÕõ¿||(>@;Cû‚æ2øòtŸý9M>û+öëì± WÈ%²‘ö"~Oþ0Á—­.í^'seéþïéï–FHü1èJµ¾šB×3„ ¯Méïð@µ"SY æ™–u )ã\BêH(;}~Gj ?(x¼hè:»,®É Žs‘t õ?Öæ¿qÕ,™"·³ \ÏÙülsÀ¹ÆºÛÚ ¸KfÊl ’N¢õ‹ôŸ3P4œ;&y ³A÷­f‘f-Ä|ïß8mȼÒΤ&¤|¶lÛÛêÆnßÎï'øL²ÉŽÔÿYùlEfy8dD]z?y=øÝnZªÝQ•¡‚úƒØ*ÖˆÑ ;ð¨|СùÕ~(û@iŠ[٠󘺲õüüÔýPç“óT~&øìv$9{2œÉÌæ'?uÛÏ,àêçÒ_álH›7¤ ^•W}q„±!ÝÚð½«Ñ»ìü{®Z‰4|Ï>mö8pM¨cqƒyxÝëfp¶vÝëÚb¼!îøÏѰ¸—g¤—ì ºIÚ4 ļ>&ø ÀáY——Ê“_¿8l•Ö—­?#ß?9¿Û^zIEº¡fSÍŒš7¡òJ©oñ1PÚ;.›×‚ïIMà=Îó©\YîYj-Hä8ý†‚¯^esõ¤Ô]â„Ø ¶Œºxëp(˜›1)»;ˆ­ «Ú‚w4Oó!ÈjêÅ[ØÏU7૾3W_¾«‚kôÕ©Žl˜>Ȇèî "N( …&Î-Å~å [t¦ˆ\õNù2(Fõ¤êš'eº4›I# ~l×ÿ.W^]0žfG@§s¼à µº¦¥¹”(÷ª<^ |“|×RãZÃb?ó–½äCrX§¿Ù!@¢¥ðù§k…?9¿›àÕ±jµ$éO§œª…’W³¤ŽI‰·7ÙA7ø=áS ê9ÕCö4TÂOvó_kçõÀ„¨¡ ¸ŸÕÅà\bÀ1 \ãªZÖ M_Û£Ž›{xàÇÈÂe—ßÕXç #ò‚oè[Ÿº²êSëîæV¨Í6F"À5Ð+Ê£ é1Á”¼! húÔ°N“ZóªÙ|cì;Öv³L“Y ¯–ëú»ú4”CgNrôÛä}ê0U©=EK +M‡3á#Cww¾i”1@FÈá?£ý\ 7˜è… Oˆî`üX›¦ø€iš¦©Ü –ŒÚ™µ½À±Ùáx óôæ?Ë2ç—ð» ÞïösÙ¡¤SQ¯üoÀ²°òÉÒ dfìõÍ/€ésãmú(ÉrŸ ÜT’ÅoßÐÐüÝœõYy€E Þë¾ì¾\Ãm9v'g¢ã48Þ"¡z¦>Z× ÄPï ÏW€ÍBííà\ió°Çƒ¥.toúŠžB JvºÖ4/ô†G@êõ¢GxÄ<ç×¢ž‰›Þ¡_-½Û³Öt;_1S¹ ûg½”{ òŸ;ÿvê(”aÈ]¦%êÏõ(õ©xªáy2ÒשŠFX¢[]Oë=Pþ|é’ŠgÀšdm[Ĉ¢Þ?GðW÷+Rdù Y-Cð,¿›½=Àq»ú©H€¬®Ô¤}Zƒa«±¸þšÙkÑxó›ïlá¼É9JeñÚ’ z;YSÁ»Ì¦9 ºLí—š{@´&Qj²Ìlñûìܹêo¥»ŠHãiÚqºÅÚ>àq‹ïM>ƒšâ×Ñ7 Ô˺—´ï~tD]h9ÔˆëBKA‰0ú}šy’¥¸?pµriA<ªœRÞMáFýM ýÀ³Øc8x§úŸöÛáïGµ ûZÝÚb[³NÑ&´8È ŒÃ ¥ú© Fˆ–"R¤mËxN4ñÛìyí=§zd€Ü’;¦p ¸DílK1ˆÙWâœüœÀlÔ‚ôâ9ÜÇ?¸ú‚ûSåAQ–ñ–9uUàúÊîZâ%žæàà“µŸ…, ” ]äÓrnó»àó¨{Åœè›ñ\º <ë|' ‡¸‹q}⮩ÈðõüfÁ—Í-+-ûŽ·=ºûpoðÝ¥ŸÈ™k‰ ÍF%UÙ2VÆ2 è¼ö;>µáF«sy+9DWšß@Ÿrˆ¿£Ë;í:Bá¶àØ€‘à·ÄoŠo[h_Ú}D‡Ú1¼wˆ† ƒ Ó@5¨Eîû€×e7¼Ä qÄB1PX@4SìÊ PnÕ^§Ií^{×¾Ð^¦}dÙUvÙ^¶í ö±&‘Ÿ‚ÿ<¿ >(×ab«rH½ã¢ÚFÈŽ¼Ü9{ 8ØæÚ›€ôT»Hˆ%“ó –ºç¸V@õ±òq•å Ç£Îd€°;_ë£@ó‰%È$nâS –(ÿ‚v´ÕïHËS¤ú¡º¯µÏásÝ0í°¯²4«Y ö/m³ê¾¬ŒÀ 0`ø›öÿ“ó›o{®nªe´ÉQ2UhëŒòòË‚€e~·ûÜâ”è"&ÏÈ÷åÀäý®;w+Žì‡Ç›XB¾‚&Ÿ†™ î9ªS½~a¸¤_ÏÕß?|@´¦5‰@"0×[sH‘ɤ¬hÌtõ…ü£|¯Ž WEûÕÇŠqÄD‹(ÂzôÔ@ü´¨¿ú+–‡ È»å8fƒÔJoÙDŠØ">Vò6Ó€Ú¿»Ÿö">sÄp׺u µ¯Ô}f= W>+ý¸î0Ø;™zŒƒþràÐæO{ŸE>»þøîý­üâ)Œ•ÁÒ oÏŸœŸ  K¬Ei}9䃀Žà{«çj 5R';Ç/-ã7qu.YC fG8ÂiùÝß}²àÇÚýÑίW…ën0Ö׿hòdà ‡üîß6¹Z»†_´&1 ®Sº*m€òˆ<²’d.Z4¿é—jFýT©PÒ”£às£g…ÇBƒŠ:TeAµWå ZPÛ»KÜ»áï|Vÿ´üâe†Ü&7ËoÁú¼Õ×ZŽÛí:Ûð¨6®Õk@{P›©ér)nÓû‹ßƒ«¿u8°ƒ<ÁEÒ@¾+WÈ /p‰L~»Ð¯—G% ^S˜šËÊóÊPmÔZ5\™Ž']@ö‘õ@c7ÎÏç ^|%6ŠmøPpdpx;}¼ ÅÊ»V Kªõ3ÛYUâ0kûñþâW£ùÑêåÄ òçHiSïroù¥ºÌõ°O¾Ëc]ÙŸÏ/|Ž(Eævüûå…DÃå‡ Æ–½Õ]Ís¬'@ûªæ´æ.‰ÄTcæç\Xð.®Nõ æÇS|E°^>Ë&ÕäÿË@±B~¹åtÓ™^žUž!À¼ØÜd;´þ®Ã3]ž†fÙ‰½›ÿi5þ|þ°*kò4yš4 € à–úÔó ï×|F‚û¡=–&Õé{@žuþ`ܹ͆ÕSlo@Qj³î(ÑL~ BÏRbA©)ÔL\"]ij /[\ ¶R]à¾â¾Å º‡” ~‰Þ3=Ö€ÿxŸ¥Þ™ày«é€¡-p=Å#@1tB°™}4T`Ýh<$îà ­‰.“C.ð¾\Å/ò!›ArœœòVžfȯåwr7PH1åük_«. ÿ.ˆ‰b ж´fÉwåg O“Ì%êãôXø¿Ï\uihð`·ˆÞtÑC‘Š]LQF‚£Æì\YýòõÅ/@¶GéàªlPs|AbÇVo¶[aoG,‹¬’Л©ÿþ®üñ飼ášÈbJ(ˆ"î˜ ažauaEà>ïÞîþ ²[gmÍ̇ó[“FžY2Ïœ;lk놚‚¶F³J©Ãý†À¦Ø4½ÁÝYMPGƒÛíîâÚŽa¶7l€Q¯ùNŒ„¨¡A¥¾p[ùR9êCx‰Þ &2V¾Œv€8ÎTúƒh.|…°àB²DúÈ{Aí!?–Âã¼ ¼Ä8ž¥L8Å8PžUòÅP2”Ï•$Ð|¬<¨¼â¸8*N€xa ¦>ÎN-{غ^® S ª¨¡T?Uª@æËÖò P|”öJÀ̇¼ ¢-ÍiÉOæÃŸ¨®Þ8®oxÁì8QA­Ð\«O9‹@ݦ†ÈP½Ââa›ÛgÅ^e™·-PVÚ®étš ˆk÷2xžô|Âk;pg#+÷Wò‡Mi~)¶[mOÛž†š5•5Ÿ‚ínë«Ö@Pw¹ƒ]kA4GÄ{ d+™ŠPÅ<ñ=HEN“¯ƒl&Íò(È™j–z­í«méPvoñ”ÂaPt)¯ »T§”¯(ñù¼ó+ÇPî‘®Õ wiC5‚ñƒFßXK.]Àö½£ÄyêX=m à˜êìäz´¹ÚÚÎàÕÄCÇßz//S„<çßÎç Zããwxø™jŒi 9¡¼®ôžbŽ\ D#š : mˆ9›ùòU¨ÞT[n¹åŽóΞà»Ëû}Oèæè¶h_e„h/†‚L£„jêÏÜ ÀÐpÿlp½óÝh&‚€œ’Å`g·;£àÊm¹Ý [@v|á½eÍÀ’ªŽTFAüË-“Ú­‚ø+‰í[nƒð¤ˆ7#G‚Gg'ÏçAQE¹†/9ûÓþ÷FzÈò[(šQtgQ(ä=«æÄC¥»|yÙMÀ-®ÉŽã ¶tßâ\âcšÉ  {Vó˜f;È><)WÛâΖ¯ƒ«¯ú¤:Ô¦ê7r h”%Êë [¯õÒ\žr¯rô¹Ç•éxиÚ8B@žp/wƃâd\J†h.ž5I}ÉÝ8Îב*bÄ[Àñ¦¦'¸?g 2Ôû¨Aã'nU¿…£< ÊvÑQvºËå`,r1òQ9 Ô»å>™êPÙ D(ƒ”– º)µƒ³‹òƒ!ì÷sIú"ÏŸ®Ðêý6­ÛùCøŽÈÅ‘&Ð{èŠtÿEqâÿkO)¥”[Ù\³4+Yg¿Ü r»ÜÄp:œfg8—;—:ƒk²k¢kÈ0.ÃA÷šîMÝ"0®2®5låyåÍ =mi Ž7 ¯@ñ¨â1Åc Ç#»,«ä-Îy#먲—\þ °]ÝäòmkÍ>1\eÎ{œ»@~,G° D嘲”¥Úçu«ÀWðbPÐ4hŒf¨é[y]Å$pïq–ÛÏÒK~ïÞ,‘6µ ÄAj92C¦Ëpg»×¹sÀµJÞH.ˆ)Ê[Z-xùø~å§@óØÖGÚµƒ¸ñ›…€Þ1&&$"áÜÏ ö=¼ú/øïüÏ¥áU¹Lî’ uÒ$½€c刮¢£hb¢ þYÇOc='Áq»óaç8°?oëk‹{²mŒ-\N×xg+yr¬Ô‚ЊuÜR+3å P¦Rb°/>F‹dÚtí*/ˆÇ”CŠÜ=\œKAŽ”[dàF¹NvØ'_:à¢ØÁ¶ì+Ÿc&Б°MøhLÚ/´5àaõÜçu3®4%æ^Mœ¢þŒöºÆùKðñÿŠkàØí_üÅïÇÿ3$‚Ÿ¦ V%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur6.svg¶S€ùIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ul7.png0000644000175000017500000003353612240014741024054 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>5áIDATxÚí½w|Õþÿÿ<3[’ÝM/¤ABïMA¢ *ˆ"¢€^ñ"¬€‚¤ˆ"M±ƒኀ€ôÞkB ôºÉöÝ™óûƒà½ûýÜß§Ü ÈóŸ÷c’ÙÙsÞï×¾çÌi#d5ÔRË €RÓ¨¥–«I­àk¹¡¨|-7µ‚¯å†¢VðµÜPjºµü›ö°‡=€ŽŽÜÆmÜ0ÔFùïÔføkjAkIúIyhyú"]¡Vèÿ‚ZÁ_+”PJ èŸëYú¨Ìª¼Çþdäž>×.L=;ýÄi¸ÐýìK§ !kÔýüóàò¹†9+kºðDíÀÓ5B/zÐ*§T.¯l ç‚Î>~ê$黻Ŷ§ 8\<§uÙM po£ŽéMè= ÿÙ ¡þ; s¿ X1 åFLwµ7½kù†|C¾gœ´·ÃÅîçæœrAó䄺!ôËÓ-P¼½ü»ÊX¸Tt®òh^ÿ/¾ ȧ€B ž8âjºVWŸð7~máìoäO¼9+.Þ e£òûfÓÿFÇPḦ2‡yÚ¿Ü¿ ü<Ý=·BÔ¡?¾ž®Á¹ÅÕßõ)ð cSÓµª9j3|Mó$O1 ôÖz=ÝšG;¢­q^ ê@ùæ2SéOplà¡v>€°ÑJû@>„·!jä5Ë__¸ö®ß{ðÈÔ—}õÎЩI—÷:íçÍ•ë+úC‰µøžb –õÕ @ÔtÝk€ZÁ×0W4»VEïú ^´Fg¿=»l«C*Cö‚Ôµ€öÍÌíœ9bÞMÜÑÑî=¹°¯ávß>ò—Ž-9 /Ö5Å;Á4ÛàWëC`¡?Áÿ#x¿õ­òýô"•Ã5]뚣VðWm¿vPÛ ù÷äÈ]åÏ–°IPë)…ÊËpáëó‹Î%CÎ茣çA`œÿp`Ä.¿+±54½³Å/-æ‚ Û!5í´+@m†¿Bhõµ`MÀßy×ù'áâ†ôÃg¿ê8ê—Ì:¯„øM7ë@eû H—çÞÌ0¯Ÿo“¯¸ ^—7\éž ÞT0žU©ÀÞôbXAo°Wå)láSâçÇðQ#îf*O(kÀ.\‡¼)àÜîj剂²ÕÅK séCÎt½«=¡p ¸êŸËI„ìÍé¹g‚ûçÃÎá5í½+G­àÿÃhZ¾v*>/ßR Çò½·#¸sK·ç·†ƒcÛ‡U>Ýé»Nl}\ƒm3w} Œ'MŒ_ƒi¥ÙdNçdg‚({¤t[¹ªŽå}Qø&ù›öBâoœÉ/‚µ_øÑ àîæyÖW…+ûÉ>ò2rÓ.*Pò]Ž~þ(†•§æ= õF KÄ7 ÙjZÞ ÊÂÒ&ànèzÝQôÍúY½ÐÐÐjÚ«ÿ9jÿ¦lsÙ†²7!Ý—6ðL}Škt¹"¶Z ÔÏÁ;Ï}³güüÁ÷éë@Vêù¤ìlˆ±$l4dÎÎ/(~Â3CïiI'£"’áб=ÓÝÙ#sVæ†èê$G7§u|¢m/ˆ}¬ÎɘéPö¾=¸j*œ™x>&S@á†lÿùL°fè_ºwBJn\xT]œÓÀ‰s”³.„|c^lUÛ»V<Uß8îtü xðà©i¯þç¨ü¿Ë\æ°Ã#+¡àíܲœõMZûSoClý;LÙàÛ_õz•dïiq¨ œ‹<9>íu¯²åYÏAãw4ˆ†վñ©Ž{]“€G+V¥@Ù¶cagº€¿Â“îý‚“ÆÇÕƒ:MãÇŽÊÞÎÅî>P\roy>˜¨ã•ˆ­:5èWˆ‰ íÊBÖ²ÒŒçwde@ú©Œ×/ÀÛ#ÐAL›=†¾†C%×Ý$´ë¨*5C %àCþ¼[ò~„›rŒsÁ÷®½¨x%kߘ¿Bö°3 Ïu…C-¶nÙýYÍÙæ}›”w¢SâúÅìƒå[ÎNP1ª´ ¬ T´½X•§€è—»(?"Kº%~?DþüR’±EùP)„´Ó™‘›BɼŠzö h•ÓpD½ ÐrpÃgëMÓ·êïêÚûüŒ¬ÈMÉoXô¸úø÷êåü—ØØÀt½?ôHø"°fXTËÓ€¦šöòŽÚ ÿoâ|Ö‘å˜ »_ÙfÙUMŠæçCóä¤Õu6Á}Oþ¡3p|Þo=wµ„½%•€†Ó›>Üà TÞ,_gdýš;´ :)­g7Ù¡{”›”í?—–9¼™E›usuªÿ48ÑôP£à‹¤i£ ëí‹·ö-Ûÿ·ÀY¸•Ö=›´€ø“1ïD¼i ç»fEÃúU›ûíœIe ±[ Í³­‡4¿Ô÷MßWf*‰\wB¿Lm†ÿ?Rà/è’N®:²øÐ`šäo[é…àubˆÖв/>’× òŸÞßø(`îbß¼ õz¬4èØtKÃW ø7}¯Þ\ÍÝ%žÏ |¶íëQ`ãaÇ^¨0&ÇyXÈ\[KH:Ô¤qÊ~ˆèZ'–¦§fݶ<Ë»ABâÄ:u×Cäa­m¡ÔW2¸ü[¸ðiÆæì4(ý²dmÙ·ú…u˜e „ ³|s]Ï #(©¥êìšöî•£6Ãÿ‘R:dTõ«Ì©œ©çdê Èl|&ú˜êÝÕǶLßh?ú×Ãñ »&||ËRÇ_ȃàõj¥ú.Ò’c—€²Åê ^ ᙡÂv„õ²9-/AùÖòÔŠà(Ê+,ôƒáÚæ`0Äý#ÀüDäMáAàéáß¹M {§AŠš(븡íãÍ ^€ÀT­Të Gÿv|ÈÙtÈŸ‘¿¡è$«‰¿Æ/îû…Ä*C–©3Ä&Å?›8ŒÛÍ‹ÍõjÚÛWŽZÁÿwøðáÿþ®>=Ðsß{Pô}V^Úlhý\òº˜ž`j¢–Š{¡ Yú², äÞzèåOôÛÇTƒèq1s¢ƒup­1Àñé'²‚°‰ áƒF#ê®NèéÏ­ÍøÊ“. ËvBd$ˆÉU?éÕø{ çÝŠ‡AÞE¢4šž©_¿î·—팆_Ô¦ênðþÍ»Ò× ö49ôàñ¨(¨êœ=Å)G€oe"|[åõ hìjÚµÙD°Î±l³Ö´Ï¯ µ‚ÿo𘼽½  ð£ü¿åÏûW…±€y—6×D´ ¶<Y¿]HÏy=O¼tö 0ÌÍŸU4<”畈9и_}š÷h#›oob@Ãsê:õ³YÆ·‚Ò‘ya…m ì‘ŠU÷ùÝð:¡@£®-¶7Iÿƒâ&%ì_U~æØ õºÄu‰9C=¶`(ŸYÞ×ÞNk§v¦í‡ªòò8ûß ²eh¹­ ’N<çº~Rœ­µ°¶CÔ¾¨¦Ñoñ ããc5íõ+G­àÿ^|?´©H( ÎwMÛ|ÆAÈDoKˆ{8â¢-Ô¥ƒh燞i˜^ Å)©».Ôë­¾†þƒø<¼"TÛïÉ=@Ý¥õ Ÿ€e}pLÐ0®07„€ò¶œ"ã•Ò/+:AÕýmv…›Ã:CpND¿°ó`3„ ¶º ´ÐZßò „‡‡Þg A«ÌY&…m ?,y d˜tì½›>Sß ÅÙÖ¼þÑûìç'¶@ô|룦ñXQ§"ú^¬ñMôû *>¯}ÑKà®Sz ¼ˆ¥†f†Õ`MmÚ‹AMÍÏ@ÕzÇ­®"0ßiºÓ8 Ì;ÍßígÿÆÀXp+›^qô>††÷ÀqÌô³a%œJËXvq2D>$d5´u637Øêoj’úšhgõ©P8µèýÒ!pæ‰Ôæ2¡Á» ¿O±AÛ_Ú…µ<J•r¿r7ˆ¶j_£ ”³ê\ãI`/ÇI­iç_yj{iþ =YG/‡³ŸYuÚ;²ŠÏo…”û¢]¶}!l¯µ)TsD:‚󿜛š¡B uÖ7'ƒò¡ói×Q·™æ[!™´<þaðo1Üe(†‚‰¥1e+Àj° ~ ‰†¹†Àù‹£ƒã¼PfŸê~e½ò (ŸÙYãÁûf`öXÚµ2Ï…ÈÂ^°-‚@ŸÀ$-²eÍýr²³væ.³‡ÅMøP|FlÄãî.¾ŠÀiP†·›Åj¼`zÔ¿–üÕ ¾¹Aî–ÀÓÆó‹ç#Èš”þ\Z¼o•j‹á¦¾çëÙ gÌH*#9û87ïäKi@Ÿ[xªd#(ÍG´ïÁ÷yä‡Á¯Cƒ¼†}’÷€hg­~ÊVT¬©ìái¡½mg@KѲ´P¼:?½x^±°2´w ‘†P‚l.k]H:7.f#„·ùÖVÔRå55ü/è)z>&mLF&äÛs×äï‚„÷Þ= Ñ-£Œá{@¤Š/”àÉñu÷oó:ËÏ!ßCð›Ö•¶É@'Z²®¦£på©mÒTãëéëè¿ÊÚ–œ.¾ ä¯Þ3ŽßÁ²Km 7cÁ¥Žūު´GFù"{/(ˆºð·¬Þ ?uMt@k£¸•©à+‰‰Žœ 6{²á÷=.z]äB¼P´56ß6ÓÎÔª}ŽÇ ûŽŒ;²{\Éî&à^x>"òÝÒ:œjݸ1$Ì‹Ùñ:è¯Hl z‰þ»î‡ÜÖ™Oçl‚ÊŽÊí|ªQdý`[öuH;pÎsÍr‡Bù}öŽÎ—!|Qdftˆ\½*f ˆqâ%ñZMGáÊS+øjÊ=eîÒH8þùá¥z@È|õNM‡”⿌Úêz%ZÙ²—ü¼Çj×X¨:—ߢèÐwoöCƒÑÖ0™î‰{BŠü"ü ˜‡˜Tã« æ(ÏŠá`Ûn-µ¬ºóK÷(Þ^´®4Ü‘–‚à40³'ê(D¤G‡FÆBÄ´°§lo‚y¿q¨q!È›ä—rxçøçùu(º§(¢´øû}þVРWÓ[CèêÐî! Áìëþ JFW&:¿ðQ»£@´#úÁ˜€y• 5…+ÏÛ¤9ÌV¥wÓoÊâŠoË%9]3¾‡¸Û’»F7„˜"rÂ:ƒïQÿ@¨8XùBU3¨ZVÔ®ôcÐM¥ëË?wo½½v؆%¾w·z¨© ÖÜÖŽPvÐ=Õkuúšš æM3õÁä|Ðå€òÍå¹öÅPåµVYî…¸CõŸ®÷:4ÞYÿtÒa0=b|Ϙ´ÁËíàâÛæ{J†—ÞWžUS*ï¯êæc†_ .Hø=á·:»ÁRhño†Ò³vÍѪº{öù:‚í¦¾¡ $Êm=ìçNJj:(Wž7Ãä^FUëZ뮪HûFo\Wm¦VêsÊ^}äEÚƒV®…jCÖþìwò¾¢²7ƒ9ªr–3œoO›Þ‡È &¯6h 7ï¿õµö;À6Жc»x›¹Œ}Õ%jÈ©Ë7Á=¸2Ë‘U+–Û·€Ëgv™Þƒú7ÊJN‚vkšnoÐL‡› ¡Àx¶qœýÓÜ¥“Õ+oÖy†øJ!üÛqëyÿ5¤®u{^TO‚þ¼|G~Ú×2_´Ã÷ƇM! |¤ÔSõ¨Çu<Âz™VðúúHýaÈx;}|ú(úúbhÖ#P¿OÜ¡èï ,Ôæ¶Ø€7(ÃÚT­¹þ äEæìÈËò¾¹)¸‚[K§žÆgcOE }¸ÞŠ„ˆ›TgytÇ+ O€y«qœñ XÁJPø ¨Z(ÿ¼¬_ÅmP~Ö^Xµ”É!Ù6AÄ­1Zä[9>l‘­”ÊEe5ÐUŒfxxã¼ m-*.™†fêß”!ü‘И/@MV7«Ï‚A'êa¢‰²xC­0<¨ìV:Ò;µ¦£rå¹a›4²©4È*(ý´(©`?8¶”ï-qB‹-MÎ&,… ç±†û@n!¯èÇt;”¿^xOñ¨TŠ•žËsJKe?„¼”ps¬!ÉufÆ„CÐzÓÓ6P2”‘AFóIÓÝ`ºÝXd¼ –åŸ)Z… Ï•üŠÁÊthÞ »Þ‡PÇ{[ô0>­ú ‚Ö@Ÿ¬åh+ºŠMà]àyÀ7J,:_ZŠ®Þ¥Þ Vgèï6hγŒÙˆÞŒžTò•: ¼ªÎ3ŽÞé⛚ŽÂÕç†ÍðøHg7È7´L$ȃZ¦ˆ“â9\À01š€zâ¯<RÓï×§‚§OEߪ~àZV)Ç@ko(7L¨9‰}â ¬w´5bÈîŒáeÃä}Œs‰ùC“Ñž|ç~KKÉP è|a~‰¢òÂo]·Œk»©Å«4.®2¦#èUú½úd›ä\!»ÉAà9ç´¹CÅóù9…÷š²E”€yyè,ë» ¦ˆ± Ø)ß“ AŒÄ,Uê&õ5ýÅYUÓA¸úܸ‚÷%éOÜÀÓZŸÀw@Géc?ÐŒ6Üìã’@_ GȉàÿÝ1Èù 8šº³½ƒ»“Å u?k\V¿b×Åús?ý€§å89Œ‹ŒÇ A`t)ñʨü®djÙyp6pít÷„ —B’l›!åͤqY±5Ôbä+Ìf9ðóXUo¹zyn‡òìBCñðlÎÞ›æ;”•~`) ˬ6Q a!s@`‘2 äq»*cŒ¥5„«Ï +xáE"ä$ý.ýú‚Àà¿ñ#ˆçyZüüµ-àlë´»þ îö¥U½ `ð=â¯ÿ"Û#–ˆMJ(¨ã‡(_Ä´°Y@:Ðäl²Œñ†™˜žSCÁ\5Ïñú‰)âf:êÇp„ ²Ýa¦wo=¸»@&É:ò&È¿)¿mQ"ä\¸0:kÈ¥/Tš fl¤/¼ ÄâEÌJPÆ++ÅÒ, €O¤ŠA .*# 3€»ÅfqŒ¬þ37žà­ÄyþiÇ€¹S÷‚ò„ˆV@["ÄN±™UàžâùÙ» O(}®ýÑÊ_À0A{DkâÛàß‚&€µÌf±¼Á›Ì©&ˆHÂÖ²UîÓ#Æ|ã(r»w,q÷ðNK²)Ñ÷G6 {ÄÓÊnåMÐßÓWÊ3 VˆµbÈ0i—‘[‘==÷NÈçïÉžBˆ®" ’ö$yâK qJB¸ç@ùHY©¼þ_£µ•ÀCâmQÆûÌï˜ÃAÙ®$ª½k:WŸNðÞ_|ªÏ…ã‹FlÅ*ÍO!´…õxÐDPêŠÓb%ð8$v€c£c»Óe—ûȇ+92Á'†óPW7ê€2Xi¦¤ƒ˜+FˆûA:qáöÉœ³njj¬¶¹ÁcL߀:Á?Ο¢ƒþ þ-(ýÔ÷Ô‹ ã^ ) èÀýܬ–S˜ î£vµÊŽîU“œ#@ É´¥Bø©˜"C "9ô3Ûànúr 8vsƒÀOú|ÖCX—ð©á Á°ÓX×xn¹wà ޥ9ç;{AÖæ]s•/ŸƒønÑöˆoA”*óÄÝ€{¹Ü£\ýÝã ¤cAïâ``‰;ÅÓL…r>“AÞ'»H;ȯًE¥`@Å„cÅÚyL®íVÿž@&(eî"ųØ÷=èmµ£ú(`7ïóI2‰ ž3xÄ1•qàæØäl¾Ü Þ^`ø>ì³ÚasYg)ÚxÂÐØÉQŽƒ{¾÷ï ÐÇɬ`élM²Ý †ç ß|ÿG'^ÃÜpÝ’îPW×VÈ[™30óWH™–¡!VF~~'ÈíHÞvr#ûÜþ­àºÉ>ºjÈq7g@M“QúÐôÞâ >Õ3ËgÿƒÑÚIfÌÜÌ£Åp”;s®€²„RQ> ³­]›AÙç^äv€¿Žû~ÏP}¢þ0@¼E.èõ€l¾Þþ˜À ð {Û*+èÏcž{ ¨$öŽÈ—A}ÂôWc<È–²)ÝA>*¿’¿ƒ?(0$° ô ¼mÌ€àݦãAbW¾RÖÔt4®>7\†—¿ËöÚQÜääÑOÏ—w‚r¿²K¬ÚЀd ˜–¢1è™úÇzhwúÚûÏ‚”úDù zù¨ÏØó«fCñk‹Ã¡|¾=¸rÈ2ܸA¤‰ v@éMÅ=Ê$äLHÿ$«;†:ûƒø©j¶s¸ò*¬öï@ UhõA¬Døì¾9P|¢¤Cy2xšýV:Œ~·Óc³/¤©-ÔÖæI¦2àóåR`¿³´žÍÚ@s.ÆÁ&·q,(»‡²£¦£qõ¹á2<šGKÀ¯§èA@<íôL C€ ì¢iN# Vo¡}m`NÀ ò¬ôÈ0e1k@»Ûir=Y‹Ï=•±"Ý)ç’¶Bô+-¦5: ªYí«~ öeîŠ!ïdƇÙõ@ôòÜçm –®ÞG½ƒAóŒ- ƒìÝY7çN몈ذÁ7È;ß瀳£No>ת.ælÉ·€m—þ®‚­wØc!ÀðŽi£©°îvóí!ÐXKÑ3@ÏQ׋¯ÁÔÝ4Éd±Mq*Ík:WŸOðuø\¾ ô•ôRà‚Gw.=$ît$ˆ§ A/Ñï’/‚Þ,°JÛô•'¥Œ3.]Næ9ï» ò.¦ŽJß  ë O u^Šîq ”‡”#Ên(Z›9ôâH¨ìµ+w<„üìëèËkO-[ÆÈb3œÙupññ¹`Øe>aÚJŽÜ'ŸTëþG¿GvÞWfcíÜ"zEˆxÌ;ƒ{˜û‚|K>*»ƒ,g Áß]¬ç\ÉN¾ãÆþ¦¶ ìRžT‚€!5«Ë'ør<ãA =Bÿ仲‰< |ÂÂþá¼$Ñœæ ·éëôF ùÏøßÅ¡£ïá`0}A¼¬Õ,ÿ“ÙÇòêÁ¹{?8ü4”ÝWþ‰ýð^ðu÷7‚ʺ'ÿ’Z†»²gçM1Øÿià0­ºôuþaö¿UÞ™_nÿÛ¾û ÿ«ÌeÇÚ[¥Ì×-çe$€Ïjÿµj „¬Šý4zÄoNš¬­ÏXZƒl!ýÄÏÉt€@¨£= r#?‹D0>m¼Ë8”ŸD}åj½#·ò«\òyùœü XÉbùÄÍ¢zCt¹ ¥€{e'ù,è3üßhF·É÷å :Ë–Ú)½.}Vñ×ÊY ™OíIÓ¡dONFþ§¸5`Ô>•c A?¸»zrA‰€\ºŽzÊwÖ7 s3 Œà]T6Ö J²@ “ÉÙÁu;x×iÉÚO Û> ^‘ÁQq&:lmþ '3å‹À&~g hgu@ØhÎp0N5¾iœâ'e¯˜ÀO5“«É 'xrØÍÀr,næA&­è‚åÎó¢ €ûd 61]V€˜D%càòÜqñ&Mé Aûð8Š(ø¼¨~éb0½W}={µ_mÓ/YuÉ*3e uÁÖÓß.â§ £€g@%™¨Ú ~¬Ì‘b ž!CYñcc™a HŸÐ¤YÚïzªª[Îc)¨ ϪMAi!Æ‹D ¯¦ru¹ñ/årù)à—{õH@“¯Ê­Xûçå\šw.îPw+}@ÝdþÕôƒÒM9 2›Ó,®>ÿDµ­Îظ«mµ°ÿ˜z{ùÿ—ûÀ/GàòÛ²·ÿÓùÕ/ “›¹Ÿþ 6,0|âxP²yX‡YôàÀx³!Ȱ¸U®ÒZñ(.¯ÊIrÐQÜ">uƒò28)6‹·«¿ã¾šÊÕã†ë–dß3¤U¦ë¹ 2EFÁXøÇÙƒå2 Û•yb<(g GÔ)À2ÑG4ʪÏÓ/Ÿ_m«3ö¾|\Qmÿô¹ËïŽôWÛÂj[yeéÇ ©Ò­ØÅ<CÕçÕ|0d©Ï¨‰ ¬ÝD# ‹BŠû¥WÕ˞ؤ0p‚c Æ‹ç•ç@Ld"“j:WŸOðÝ±Ê GË_ôÕ Æ¢ðˆN"Lø@i \"D;¡ˆlù^ü ¤/¬öX ¯NqÅåiPAÎç¯Ü ´•bˆÊ(q/ˆiJS"šrqDªX+–_ËqŒìr;AÔÉ"!×ñcÿŠë¿Iã¾4Dn§èNÍ® }vàË@&hýµõš´l}²v ôP9°èwèiX¦-ÖŽCÀà›ë”#zO}8И~ʹiãljøZºògù9hýµAz,héZ ½ô‡õåzCЇëýVÐCåZù!ÈYJÿ¸Ã›éKÂôYÚþÞËr¥¹Ôù‰èIŠa;»@éà~Û3Ê)©*»´ŠÀ‰À=`\t"e˜ í4û¸ájˆÒÁÜ 2I >õ T¦U4,·õˆ#¨¤ê¥ë˜ëGðf̘¡  xÞ(È<™ÖëÌ.0× qž†zE Í€„Wc>ŽZÊgJ¼ðƒÖY[ªW€þ€\$íam“®ƒc™ë ×.pΨèØ bˆ+Æ Â£gÈ@ñUª×ÅjÛúÒûRM¹—åÏwÞéPܧ °h>¸f;ϸꀘ&¾f.˜#MÇŒH*¨S} ÔŽ ;A£‡]!ÿ«ìÆw@q‹¢³E+%ÌgNMñÊsí ¾3hÚÍš9PYÏŸOë ™·¦™ ©V·} æ»È“aƒö˜–¬-ù‰\ÇÀB0f`£y¤KZe3°›«9‡‚³~ùd{06pãYÊY.Íü}€èJs¹ß¾zŒ@]vÉê}CüùàèS~Þþ>ø¯Ã÷%0€ibȾò)ù:Š´-ZˆÎ?r 4‘¼$î d¿šþã™ ­ôìó§\)çÉw€ÀÕêp­®yÁ{lž\÷>Hû4µEjss]Cí  ÞBÖAp¥ùic(cD¥5Èt.RÈêY‘Õˆ â5Æ<%I'”w(¿Û~TúËÚwùí/Z#P3ȧ®ÚN»—ËXÝ=)ª§&è9ż«¶;h~ßlÐGLæ…øø'r ›Áx»a”!,Í÷›V¥³¤r6¸ ª*íó@KÒ,`øc(ìºäšhõš=ñFBÆç”Ôy`yÀ¿Ðý*$9c߈Œõ}¥±’úÝò[YXèŠù¿¸POî=@“÷s¸WºBÝ/·ž«‰» çõ»e6(mhÌ àKŸ^²ryõu. ³Wõq|µ ®¶Õ#´rWõqxµ½,ìïªíå&“áŸþË%£¿æŸ°€okewG]ÐZø_÷« îf/iÀ& ;UÀhñžø ·ª‡E*„%L‹µ ç‰ôyèÒéú±PŒ­§¡§zd¶)ÕdyÒÜÑ4´_½ «@)¦‹! µW)fÐ^0ø Ã@>güÁ`y“:\q€ì~i{6K ýOºü#½ÿ’ÑZƒçתãÎ… •øÞðß ´ã)1„¿ßÁTTa²Ÿ|”þbÒâ|‘-C³Àø3!¯ëÅ{.ÁûŒç>ÏußÎ!ôzPøRÁù¼ÙPoaò¬d¬‹­\oó»f_6¿|TùmP¤ôÉ›Ñ-C"ƒŒ–oëdþdˆœBpž\žå_ ½ù2“˜Ê£J¶h Ѿˆ/ÃWAxEÒìx@WRæÔÍk?ÓãAˆ|´þsuíjl”—²¬£oB1ìU'½{ÑáÒÖaG§}À67Ò>êuh×ü07YM PÈj’ÛŠ›Ÿü.u&8¦Ÿ_ž5L=*9úú1„‚ó±àúAQ Ì2˜Õ à?ošiZ Æ[ÃÛ†´5×t§q`$B~Dq7ø#ÓËUrÛ@lÛÄ)°¸‚> 2èXµ¤* ªÚ[Vl‚Àwàëj§ ªé(ÿç¹f_x$Iþ)ÈMÊ*Ì(‡”Ï"‡~.ë=¦ɼ*_™OŽ®ÿ悯ər!ˆÅ4±"î {9Äñß6ZòÔip{à–=!vYT4KmV·a3hЭ~\Ý® þ¨šÔ/@ýHýB¹Ê Ë/Tƒ¿®:]ñÃârb.Bç´Kõ âWzCN“‹7å§š% k©?ïðì[ r¹u™‰ ß«µ lƒÀðÄgã§‚9:¤…í5íiëeùlOÄ®‰j ¶@ÄܰRà ™&mÀzh—º3)£‚* ;·Ð ”ÆŠEù¤C¾¦_¡ïÕ€r…©'Kÿ˜·y]qÍ Þ½ÕqOe18++eCÐÔȵ±mÀüŽ)ÛØ ô³ò ''.þû¯Èód‘ÓŸ;@±ˆÑê÷«?¥îrˆR£¦EÔc7ÓÆD°L³´ Îc¬©ƒ1Ä\/ØB3 dUh]Û×Ðsr÷ÛoÓ{¦ÞÆ¿‚ão†[ATò„ñ[ã—Ä.k³®[‚ß„úzƒâz­áä3ûãlûêò{Ch¿°]ÖŸCüo‰êtkgkªõ ¨Æã† ³EÝÚ4íEýÅêJÝþ¼¼V×€ˆf¢5-€ÉòiÖË©z:P"ãk:ºWŽkVðo¿w,ø:º³œË@ùAìf4ˆ å´²(Ô*õ[õ8TîáÒ’¥( BðPÖ™Ö$Ë6é’c3­e;Ùô:r¸þÈõòèÙäÈy@?~¢ÔJ'%qa±?E=òu$“A[¡íÕË@Ž£D¾æy¦MÆ~³9¦gÔH¾7¬(&KNÐ pX«\Î0H~8yRâZˆü>¢uØ$0ùL«Œ€/gÊÍ ?£µÓè¯ëЬû_Ôïrgcµðe.t`+äƒ@3ùˆìdqêÒfƒÜÇK5åÿ<:Ík¡60@èKÖÉ–gA{^G]Ó¥þßT°:û  ¥”Pøª_”A$ဠÁ\ÊÔÿ—Db#¿2X¹·rß,ÝYkíþÀÐóL¿µ÷v€X=î»ø«5¸v¹fº%ý]}|I5 ³ÆAüê¾Ëa€ÄÕQ…ƒ[ýB=ÒCOù\M—öÁe¡›1aÑ‚¦¤€Ø 6Š/@”ŠrqÄSâI‘D"q€ŽþœÏ#€¡ú‡³Ž'å_@þUÖ‚<ËòÇšvÊ•ãšiÒø>öwó¹ »gæ‹›ÀðÎr6ÄâèÇ#>ãJÃnõ=Á² =«?ôQM—ú€¨ ?é\¸4F>&ÿaÄ”¯ø†Ÿ¿/ü÷f5 $:P@(QÀQ’htÁüÇrÃëk&Ãkk ¬¨xUAcоIže¦„dZP¨ã”xãä[òÚ.ퟚËS*4$`¤%Ñ€…‡D3@¥Ž°ü;—ÿssÍžÒ&g‚Œ÷'{îÒøuç© øP Dõöµü+DµŒX)æ @g´¾òŒü¡¦‹xåøó þ5N–*ý‚ú´Ü¢ý JNè³€¤STâC”?ZË¿âR>˜Py\šA¾"·ë‘@:«™RÓ¼rü鯿 ÷EþÿI0ˆÛXêëÊN±°ãA<×ûÄÖ“À¥(Š•`o1V ``²|™W€4ÒH«éÂ^9þü‚ÿI_«mí&Í¢¥ƒÚJ¹W õ'%E¼ TáÆË¥‡>­¦Kû'&øÒ™E… Ó¤uA m(£ »Œ‘ ¾ŠZÓ…½rüé¯Ü­d+Ÿ€i…©‰i*xk¯Ê—Á<°BÏñ2ÃÔ#VDðG&«¥šê©¢@l_^.{ÊYP´¥4¾üøæ³@í qþ¤ɉ`:”ôAMúÊñç|¼8,–‚ÑjÊ5O†À@õ.ð£ï§ôûä“ú @™ÌqíiÍ߇ÒoTª»;EqÄÍ‘œJ .°r^+~¶b4øÛŠ·ÍßBÊ’†ÞÆ­!ø¥à–åÿö·ÿiùÓ þ2âN¥¥º‚> ù4¢d/ÃóVp•zª¼M@¦¥ËF@1唯ãUêÿ¯£ªÚµê©nâ&šBàã@ïÀGà˜íÚà]¥ÃÝýôí L±4‰c’´ºóÁ¼Ê<Ï|gøkfjÿSÿhWÈ+Í]1Ò?91ýð›PÕ¡`Gæhš–4!Æ‘îPƒí0¬1DòØÂÀN.À„`#ž ˜xû¸ˆ 䓼Ï7 H!ƒ"_”ﲺ»SþIï—J“L2Ð_t£(“•l¥d¿˜?£xœvñ‰’AP÷ñf'Ú•CÃãÍ·^ñ†„Ä„«±“Z sÍŒ´G—wB2)Ô…U«úAÕÎ-ÎÆPìt/×W‘ÿËÊí`|M}Liâ>  К–ăÜÍ2ù°H&Ë,àwy“<J;Ñ],ÓZc{õ4ØæY²ƒW€)ÇØÐø+P—`’8Mpùîè‘—Zœá gl2É\8pB¢H¡9EcÚ&C pLfPã9ü½—ü»Vo¢åSŽäzvsøžìñ5oò$ÈC<+ïeÀª=¥_Ù²çBÁÙÊzÞàÞöEiÐPm>­UGˆ7$'låÒFçÒºkæ¾ÿ¿çšÉðA&Y  Ô ¸¡¼ lié!8Òà@ƒ}ŸBYiá3¹C@ßå;æêl5Z8A,å1äc²Dßò¨>U; ²Të¯Ý†uŠþ*-qæ P·{FÑ!ìÝ•–ŸBù_qi jPH9U@ ÑDƒxR<É“@?ˆ@õH Èä,pŒŸäÇ Ë¯˜ ”s5 ^á~:/ŠaÜÍßçÈ\¾\zuMt§%€_˜#^qHüÀQrÓAKÓ_×@Õ÷ Ï8: ýÝÜúümÌçINèüúíõ{FCäÍQqÑ¿‚á-ÃÃëüýÎ%®ïqŒkOðÿ„¶NûEûŠ ‹B‹>O©+Öòf}³v„.Ž0èÊ­4¶³ˆiÀP™ªo`x×¹gºËÀ1«òn{0Ø?+±< ®Ç«û ÷ øýÃ@ß*?–à¯òeþ¢¡ÒP$é ãrÓr0Gž1B¬sA®Ò»ê»AûKàÿ_AÕî}d;­[`˜CŒB擦iÆ™ Ï“K1°Vþ¯À7ü(:Ó˜z`øZ}[m–ÅAÏ››€MZîÞ ¥¶Ê¯«¡b•«“ÿs ]P›böÔmßp+$F¦6l q¿ÇwL¸Ô êÇꌚŽÞÕçšü wªg‚×å‹Êdiä~™}KVG(ß[öEI%è÷ÚøßýW¹Tz€åël‘(E4'™^1¾†bCOã]  V–‹w@_§÷ÓOƒ>!ð“oh]|}Oƒ>/°Ú×øUnÒº‚Ò]ƒäuÑ ™Ê—ôƒªÄ2ÜZ`­LßódË-aQû¡ùÖŸ´}"m‘ïDžø÷|t=pã þòÒ·œä$0—y¤Qú¤ô‰ú ý&u¤Sžβ‡Í@)ÅÒ¸ñ"á\ÚÓò~]èN š8ê¥ä“ ¤±•@6“FY»-±Põ}Õ•Á1Ú1ÐqIÙ`N5§šSÁôžé=ó{ Z(ÍEsñï 쇪n•Çí/Bù¢rgÙPˆ¾;Æû Ät‰©ŠA³ƒÓ‚CAP{ªO€è.ˆ¡Ü0M—Å+ø? Ÿ´hm(RýYþØÏ^é«öUú‚ÒVi«´1’‘b$è/ÊÉúTð{üeþtðùò|; hžùcó`~"èá ¡ zàaOM×îÏG­àk¹¡¸Ž; j©åÿ¥VðµÜPÔ ¾–ŠZÁ×rCQ+øZn(j_Ë E­àk¹¡øÿÄÅ\” HV‰%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur7.svg‹3©IIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ul8.png0000644000175000017500000002711712240014741024053 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>,ÒIDATxÚíw|Õþ÷ßg¶o²é ’Ð;R¤HU,HWDT¤‰ ˆ Š \DEÀ‚‚ ‚ i¢€@è5Ò{²›ÍöÝ™óüA¸÷þîSîïy¯A²ï¾¯ ÃÌ÷|Ïg¿sÚœ²„©(µí@˜0&aÁ‡©S„¦N|˜:EXðaêaÁ‡©S„¦N|˜:EXðaêaÁ‡©S„ÿ%Ð90ÝûóžYêªþRÛN_yèkÛ0ÿg|o†÷[ÈÓçþž“ƒ/¼r¶ õçûnù½ÜsuƒªÔ@‚Z-»³N·4½zv@Ój»Wá ¥’F;z@åìʵ °¯ø×¯v—ÿûÊòâBŽvl¶ëá‡c?Dí¸ *óM…Á\a´ê˜&îæºÚ.Ä•GXðW(A5øu¨x6»¼ÕCAëàmÎì<<êhÈlqdãÉå ·43Bì½Q+l#À8Ò„9 t©ºqúk»Wá&M-L® æ€c©ã6ǯàØZ)*ÞûM•+ÿŠ¿Ì—m‡ÊÅjÑÈßqvëù|ÐrÜ_»+áÚkºþÖa"T'SÌVÈ,:ßá|3HôHÞ·âIx/qÄïp ÄäÆ.ëdQ„£¶KÿçüŸ„üIî•G!T?D(üÉþ…¾(2æÿž_Y7Ÿ{øld8ßìÜ Þà}ÙµM\ó¿@ñö ΋ÛÀócåûKw}ôH[:ÔKoÒ¥AÜJ+í/C^Ÿ‹MÏáP+‘© Yõ:¤=-rÚîëpD-Œžs((uòñüŸ„ÿ5ÿA¿ ’óïÏ_ Gú¼"œ>³?mÿnÈûíLÆ™gÀãñOòYáæ7õì±’?M½+a,dOüåóßîýºöºùàl)Ó¹¶Ü[ñ%ôˆêú~‡ë¡ßœ–÷4UÁ2Æò¥3œ{¬@­ØeõŠº¼²A»½æÕv4jºø#ÿSвµSÚ)p”;–9þY_›sZG§ü¾ê×L8³û÷{Ÿ‚ êÞ]¿ŽgôÙþg»@½êèÎI Äi2t-ØåìÍïŠ!oZájðïr'z×Cð¢i§ñvˆMŒÉˆÚM2ÒΧhÐxejïä ˆ-·=liÚäÐh,ø¿ðµñF?ñ¥\ZÛÑ©=‚ÿ£9AAôöçú×BÎü ¦óS!ëöL…‚ä3ÛŽÞÕ×^´euå7û㎠íéØ;¢WBŸªëWuu@àIÿîÀV8òÍÞ{é@<]¶¯²=ø¼ }ÍÁòFìÅèapó®²S"ÄEEE‚ÊŽXg¸7xÓüíAË•ŸÓ”åºéº•@4õH«í ÕaÁÿÁhÕr |ª~«úÞQ ç¿;ãy§ÝoV6‡&¿ÇgFë!¸+wMá c˜ ëÚ¼ÒÜ é_4ì’Þtïy×úž†rWÁâ’P½Æø‚q4qb&CꜴ õþMÚ¤ßZ¿3dŸÈ]Zh…à O.:;ÔtííVS }M©@¡ò‰þI@ÒHt­í(ÕaÁÿAÈ4âAȹï¢õB$>ºÿÅß6‚-Rg ý­ÁQ>?Ü{±w®ÞVoÙýöqú€úàùohó!xønö×ÏãõŠÇChAÅ,»Ü1Æ­úÐüѶ›[Ì„6'›Îo8ÊbJÏU¼Μ÷ä> ÅcŠ—íõ'µ½– Ö_"WG=–>‘{£îñ$oñImG«ö þÿ•»Ë“˜¸#0Šb Î 2=•s¬”¬¹8÷t4ŠO곈ôÎð¾'FÞs"ü³Õç4ßÔüÖÆM Ñ¡Æ"=rbsÖæ7g~vRþz0q/öþsÆ7oC«z­kv4 ¥LK|Ž48â;91•o8\`œ lÑí¿50*øØNÆL‰íÑ]b qb¯8UÛÁ«=‚ÿï"‘H H€µ`^PƒÒwŠ#‹fÁîà¶w7—kGQìyÐÝÞæl“¦ÕÚ²ÁÜ \£ËVW®Œâw˃ žp>v;D·I­ŸrŒ•ºöºí»*³Oö7àq—*{")Ç•×Aÿ|ÄOV#ØFÄ‹š ¡ þ>p2îĺ³ æŽè³¶]Ð`GÃ`ê`¨vzŒþÞ`ùBôtˆÝ÷jÜ vŠâdm³ö þ¿Ë6¶²‚ƒ}‚‹áâ¼óã²È8±¯ñž›Àv|È;š¤$7ˆþ"?³œ1.†¼Ç SŠã $åüÞœ5`Pªâ}!nCýcÉCtqòù3ÐEۡ傽}ñ{¥ªTÅV÷fÅøÄ?Ú8¥"ÇGÍ´íoKŸÕoƒâ•e+5ˆÞÝÉv$H°Æe@µêâÛ Ö% "GAÌÛÑ+c~ñØ$~¨í`ÖaÁÿ;ª/™àÑà¦àÇ;+'#{%œß}zÙ± úë⯳Ðô™”ñ1k¡q µ]òA|Á÷àôÈS²‚‚õVå6ó1ó¡q÷¦Î†gÁæˆnî[œ3]ðg•ÿ\±ª,ÞO¼÷ƒœãŠ: ­¾oûD‹X0.7ÿfú*×Û:5.ôuè.ˆº+rID"Xß·ÆYZ‚{¡ÿºP"˜î°|j¹¬›"´¶^çuf×vPkðÄÓ¿A»O{Cûíí`ÿÀ=íŒ%ÖýlE.ôèÚV6½,o™^uºüXz ð£ïoÈ?œùÆ…–P|k…×~’^MÜ¿Z9Úi1L!ó(S"\øêtFV È¥]+8¿  ¹!¦iÊω}¡û¦ë¦tx|¡Ð)ÕyJö¡üî›døDߢ—[>7ϱSç×¹!pFýF»úÓ† Æï@¿V·OgÞ£?÷ÔvTk°àÿ ¥Z‰¡ä%8Ö,ãø» º“Ò2ð8$¯ªg‹ë¶¬ˆ­– ¤‹"oW=Q};ä.¸øaîýà*Ê|6{p‡÷]ß0®m²¢áˆñÄߣ@¥»lwekȪÜv6Ì/T]_½ôïÍÆO·c?i ѹ1}¢zAéí™û.~å'‹ K_èïÌ?šóÁ‚ÉjØâqBY"G7FÊ7ÊKºýÀ~†óEmG³ö þ_) "à ¶“ • Êo(k‡œ-<¹ºìmº#¥4<œ¼?Nù€œ,â…U†Ò¨Ò»Ê»Á™ÇbÎ Í™ŸX4"G(ÃX÷%ÍŠ_ ÆOMO'@Åæ¬ 9÷BÞàÌW.lËnD -$ôHø"$7z8í,èûé›è¿€ªñewWÞ ÕG*&Ú;ƒeže ùMÐ/Õ«_ ôN1”R}µñU ·h¬|_ÛA½r þ_¹ƒ! ßG~ƒÿ&öó¥¹ç‚µ•Î,[ƒ¡—î”h¢Hô‰ Ui”z ^L@Yz‘·ô#ÈŠ::íÔ`Êv.¬Ž¸EéM럂˜‡R>N|Ä÷úwôw‚šÃ^5ª~/›^9|'…UDCâÖ÷7_ _ì4üš1`H34Ñ¿ ¾Ç“œ“ ð‚óQ×7y{=o²”3ú ú¡ n“”‘ ìÓ-0ìqÒ_| cgm‡öJ ,øAë­%hUpêÐñ—å@¹!wÏ…O¡UYú𤠈ÙYh½ äpFÊ9 å¢q#øß ¸\ëÊfVþ ÕÝó»烿S¨§ö%4‹l°4µ4¯u»f,VǪCÀórùÉÊFœà,©¶»·©£q?té×tbƒ' ÅÝMW7šÚ·Z¹ì¾Çìõ«Ö<êqzãÁà°¾aú” †Xýp Ø$º8®ûA7#2•v5…«ªíèÖ>áQš´—µ÷µ àÞçê劂!Ùqç€ç˜½oé@HMŒŠ½ÖsæTS.ð¹<ÔŸCÔÞPø\ÑÏ¥‹Á1"ÿ`ѵ`˜UõsõzðN3®3$­*-ºÞ)Hý&õ¹”; |}åzG¸&ëË‚¾¿}@€?%rfÄPˆ¸˜´#áaˆš9ÓÚ*möÃU^pÝ]¾ÓÞ êMê'ýaÂÞ¸¶`8ašdœò ¼– ÌÓ[Œ@ ÞP<µÝ+‡p†¯Á—áÛéË„¢› Zaº*|ù`;iY®Ï¥\yXÜ2‡žÜÊle¤èÁëƒ+‚K ó³³yVBùŽó†œÁµ>àŒ„P^|³XX‹ãçÆä‚e¼±·¡-ä=œsWÁp|T4²ônˆHS~R>ÕšxL+lîˆoÁ}ÁïQ!{Eöµùo€£YYÏòs±Ògèiã<˜:LN‹ÝÜBŸiçd1£MÍ3@ùRw\·¤¶£{åÎð58 í»+ÛÀ©.LJ?ÛFýL™ –¤´MØ ŠMY£ÜŒe®\bÈû@ûL=¥u‡ŠöE ¥ñàšVþee:˜&‰_ÄW`º-êáÈoÀøEDcëN!-G&BÕȊ啃ÃWê¾ LÇ¢Úìй¨ë©›!=:½[ýLð†<-½=¡Àš§¦ƒ3ËWÏÿD†zÇ®‚Æ[“Þ §« õ `W×iqqÜö}ÔL0l2TÚÖvt¯ên†/§‚ ` âÁýhõïÕ_AÙÆ‚ò¼aöXãçÇBìM¶o@°BµhG@ÊJ6Ùb Øòkí´f÷ƒí:ðMs©žf—ò•Ò̽l}"›‚þ7‹0'ƒúhèIux{9G¸¸î ņž¸Vñ½cŸƒvÝÛuh±ê-KÞ–øTü\üRépd–}Vq;ø“™@X”„½qó Á–°7® D¶þ„n/hSý³µ/Á8Ú¼Ãø2(w*C”~µì+‡º›á²€¿ÿ ß¸üüw/°lÐý¤5]±¨’ƒ¶PÖgàÀDSÒ©òÙLÞ¡­Á@ðUð½èx°Ê®L·(Õ½¥Ü –%1££Ï‚9&rzÄý ³´•š„ÀnÅ»§•Nbèž FQÉ'> Q«#?·ÆƒÚ?˜Úþg„k;0Üp¯á Æ”G]Æi†1†# ËVb•™@?:ñ5Èr|˜Í L©í`_9ÔÙ /¿”Kå"È”;'§#Tœ*é[xL~:6¢vGXÖÜ,#åàv°XÌO‚·•ÿ¶ÀN¨,µ7p6µ¬òcG!„îô/ðßmK#]òkZRÊ8ˆÿcìO i‹Õ#àÏqe¹7€&´;¤ôXî±6Ã{†úoA÷´Î®$‚ M Å€w€sMu9èž0FB`N‹õˆ‡• Ø ÜL'™ tDÇb`ŠÔ´™€_.“uxýû¿Rg3¼ jEÚ(±-,| œ+•¹ å¸k¢>‡ˆy–E¦¡ º2СCÂ#*Å pî©þÝ}佟ׯàK/;ç‚ò±öÔCp§5Â’õ_o‘ÚboŒËˆž ÁµØà||ëÌsM>QÑzƒ!ÝÔÖ8ÄË"Sœ÷|ÏAo[px*;žƒ ¨üÖ±ÌG—€uFìkQ«@T*Ï+Ã@™!vŠL§ESâ@¡¶V‹AJY*Õv´¯ên†ŸËTîÏDWµóðû½ŸºÚƒõ”ùÛ˜4ÐO×åév§,’ë :‘BªŽ9;Í;èü[¹c@±;£]nпÍ>Pb¤+âiHZUojâÏ`þÂôµé(Kp¼êÌ…Ð&ûÖªõ Ä…6‡Ê@·Ã4ƼÌ*q'”¬.É®8y¯]H̽¤¬ìí¸b-ù.ˆi??n8(Êsb/#÷+A鯧L†Pûà°ÐTÐÈÚ9rk;æWuVðøÈáÈ>ê4õQÕ³¡íÀ â Ñp‹ÞàVŠ8è°$‡¹‡ NjÒfÈðx ¼À§«¼Ç1L‚Å¡oÁø6Møät§ß ù³²ÞÍŽ‚ò<}½Ë bÌ…‡r†@Œ70!PŒ¥ú¿EÝZvÈLpÍt}àögkiÓò÷!кòMǵ Çx£ñq°îγ¥BÔžˆÍÖàù‘l Ê(e£²„+ |Ã}]Aý\u©ºÚõ•CÝÍð!uNðþÑþÛ½¯@ÙçE“ò?‡øÞÉF>ÖF–sæ½à xÎyõø!˜<"I< p5r6týÎñޝÀÿ‹ÛìM©—‹å* ¬£ÿúÿŽí5Õìä+SÿëŸÅ¢ûN±+”Ú¡×IÁ´…> uÆó·׊–œK”q±áÄ^ˆÌ³ÄÛY}´ê ¨2Wu®ºoLè•pâòo®NqõwZ—6Nb5«X Ú¡‘¡G!ô¥Žç]ð¯ð¥zo† —ãUgg8w{vß¼á€éØg¦ÂÎÓ¿?tü{hô‰u¿3_q}ðgx‡øºkYÂZøÃ÷k¬iÉs5ÇcÄ* Úg •õA»Fª=ZOù’\Ú-E æ &i¬‚Äʘx[ 8µ*'AÙó¥?–Ž!‘ux"êêÏðpc äXñgÅŸBÖÂÌçÎ„ŠøÒ%cA¹ÆÛÑQnk|ì³ o ë£[)ߊkúÓax;'¸ÁʼnægLqPµE«ÔîzâkÀýû]Óô5; Ⱦr’̃â/ʦVv‚£ËO=ÿ,ä/xµ¤>DÛl¶ˆÓ[j»;2 lk{k7(~ª²k•ìC*—VÌzÒE¦çð×vÕÔW†_/WÉÏ gx¶'ûZ¸x&³àÌ<ˆzË|Øpèz‰¥"dcÇÓ_»9Ú Í[6|)­Úooémr´Ò´¬á{{­m°µ èv1Œ}@K¢1E°ß¿^2—_Ï3øeóûŒª_¡¨kÉ´²§ b¼Cs–CÙ[ö̪¡¬¿=¢ªØVïv€Gõ6÷¼êƒÁqA#°„%¢¿uõ þ4§9ÚòfÙŠèò€@–sJåèÓºëøvÏÃ-çzüÚé)èØ·uV³nZœ—p˜ß4Å5A}LsC 08=8ä‘P t“ì¯ LرÁ?Ö}ùÚ%«»æ’ì «d1Øö‰÷Å8hp}BϸÍpÑ.GÛ½ m¶6ýºá$P_–wÊóp²õÅçòÇ€~°±š –hóaó´æZ`9ËXVÛ•ôçsÕ6iÔ'Ô—ÔÏ jFUFU&^—ûƒç ±Úvƒ%b×Û:DÌk¢¹Èô¨fmµÜ 4“ãeÈoYÆÐò´‡µy¬ ¶µùf¨…ºÄ1-_®"¨$ž´‹ßøƒ pè’Q>»d Ir²œ¡*ÏKÞC ~ìsø÷CäËí–Î`˱= ‹ýVÝnÝ ˆžuÒöØûzf„ƒëÅŠêâ=èâá + ~ó´¸ô]`Á‚¥¶+ëOäªÍð>‹ï¬oä¾­¿–Çuý¤ö¬·0!”âeåPsÕqÚ!ÐÎ;œÛÿé~*5ã¢W7W­àݸvºÚÀ¹F§ÇÌ]¥ö½¿Ò†§¬NxtšîEfÙUŽä§ÛÄ×|¾eþ5þg¡âí ioÚ³Õîõ`è¡Í×ò–üÎqþø6üe_Z^2ò]ù¤||;ŽTµwUy㊽:ìZr’,’:Ðvh´©À!ŽrêíHü5NÛ/†/y ŠLÙËÏõ‡­òxùµ µÓ–hÇsœãlm×Úž«VðÚ~uw訮²o«˜Zç`J`˜^4<¤ßlâf‚<ÀI²þçÿ/œÂ'Nƒ»©»·w ¥Î-ÑÙîÁž%`¾‡Íìq3UT§ÿC¹<–ÁLÞåŽê]Àß½xAÙd(º¾ØYºÜë½C}7ûÅf±L:‚n•ÒB)†„‚¨ ‰Ðà†„2Û(è““sá(d?‘}2{:П¹¾¶kí?ÏÕÓ†÷ãÇîÞîÁîöPUTù}E2Ddëws…a°rÈõô# ôå ¹4(à¿dø"WìVÞ‘PN±­¬xÑ÷“ÿK0­©9ñY44÷×÷¬±õkìåfBÍRòjlA½¼Á{ÉÈU5ÇGkìñå[¶ƒeW°4´B'Kž*Ì-g>>?l3bs¢Ç@Äë)]u†:O­XŽÖ>‡¨»#ŸµŽ‚ô€bR&ÂÉ»‹Þ.x #Þ‰ž=m›_ýRWO†·_-)\p6äU_4eõ€ô;ãcmé?Ôv6B€,”×2páÅÏÿ¾†`xBë;ƒ#ÀSæ8ëÒ¡ \þÖéI‰­Ÿ³Ô†¢…0ºC<#€ºOLwš ¶ˆ·@}E‰‡@-T‰PWˆ…âqP÷ð ›A&Ò€4þ>,IF½—rìy÷¥Cíhå7Î8òÈ©[ÁþyyOûz±â!¥àÃOäçr›Á£\߬?™›AÀìñºÞŸßݦz2p”]Ô%\=‚O!…zP^Vrc±Êâ ÝyѰ9ú@D"Ør#ÎX:·É§ä @ÐÿázqD²|XŽ-IÞ&{§´ÁÚ &_:Mû€2*À¡éÌ: ¯7u3þ r?° ËÈ=kµZúAA[Yä(Yó|ôt(ÏŠ3JOD ¶Þå[tÝõÃÁל\òAî»t}qyBkâ¥'‰²üÒa°£k¸{3”=='o¸Ú:ÜÎ ¨kC´/€_8È ‘D`±I|!Ö€¸Aà Cǃ|M ¼Tþýésó×oÒ4¦+·@ðþàÈàH𥻆9Ûí»Ó•挳êïý†§õ]!´Y}C«4L_Áø¿@ž—?˰]ˆT Á/Mo˜9–¬µÙkÀ>+ ƒ÷‚á€%Ú4 ¢Ç4ì˜> RMII,ÃÔÈI–<ã¸OüÊuºO” {F·XwtõE®Èõ;ÿ×à=XÑÙ^ÕZÎwÉànWúby"ÈYNWõF0§kY²-× ?C 82>bD·K˜÷2˜ï4ûMCY¼É»@ét”š'ØqŠñ§äórpBöV7Ãä‡ÚI`CTÛ•ùŸç//øÐk¡wC‹ 2©ò»ÊGAy]mè 1Z{Û‚2T,!´Ù†Gkÿýuµ®Z¢v;$¤&ô+…kt}mØ_¬˜h?öÉ1½£€uMÌ#ÑàýÔžõ:Ï…qmŽ6ß ñljÙlg¶øøŽkånÀÀ)1pcÀj3íMu!”ä—Ä—„ƒŸîäð~¸8:ã—“÷‚÷ñó²`¸®ªyõö‰Ì´VBd\‹Mö@‹f½|]¿€$kýFÉm@yS4¤!¨{؉d1å8€þ°í¨"„³¥ t–§µ‰ ß—okh"ÆêÎi{y„èjBÈjÛ‘ÿWªó«wUφ#³3ŽlšÙ>¿`5$ì1Üê q c6E}P7JgÙF•ÿe±¢hÒÅÆA ^`rP@YvÙ»>ðNuñ¬C™Ágøb~‰;ó DÆF~Ñ ŒãCÐn´Žr˜S@vªRüøAär ø=É&`ïeoXe…Šm%MË£ ¤SÎÁ‚éPtöð¼!inê€zý ½K‹ˆF%÷ARfbˆ~"z£­ŒƒŒ ×€¼CÞ+Ÿ´K/¡+qÊ*å>ð¥úó1°ÿ›çÏÍ…˜“i›ß =–Üâ´,7Y7[M ÞcÅ µ]»<ù ¬ >HÒ@Ñ¡ÂbHüJc )ÄNpE Ð-UÊ”\à#9M.N‘Éù]y”sdèÉ7¬s¹©ØxþÔpaÚJójöƒ-ï‘ïƒÖZÛ¬½Ú“Ú\ù ¨ÝÔ[Ô¸4zäôôDÏ?>y©»Œh†F2˜>3TCý½)¾¤]ðqÂ;q} ɘútÊW0¾Ù²†!Ñ•pw\wHÚ:6úfºvÊB&í,íUyJÿé>—»ä[Èç@ØÙÁ`yÇ8Ô° ÄP,ZpŸwoqã|ó#æ¯An¬n_m×îÏ_>ÃW¼[>ºl lûÝ ÚÊŠ¼ Úto°1i4È Ù]¾2ƒlÊøgÁ]Y\-Ò.uN9ÍY.ﳄ/@N–Óä« fˆÄ“À¼Ê4 1i¤ ÿòƒú/(/ˆ"kƒ[CÓáìÑìyyï•QÇ’OBÃsí:]w7¤.N–¦]¦É¦[j;(<ýQšƒr%¯Ér¼vä7Ü,‹€¡ô§/Iþ!¤+•Ëþ)—ö°CÈ b…Q‚’¢” º‹–Bâzr-`®é|ÿ»ò­g' âÅI¾ë)ÓFc:([QµGÀÕÝÕŵBß«ÛÕ«øÓôù& ùœ•?€|U“ýÏd<‹z³S3±teϨ\ö¯&?Ë \$@Γÿ¼œw*3¸˜J!¥ð÷¡ÕS>ù#¿pÄmâŒðe›yñEð?¨ý&W;ÉUáŠÕ©.U·ówq¯2þú‚·ã§øŽ‹ò}@‡Nü 4¤>¸¢Eþg²…=Q..ŠL0O2½jªá}KúÁÓÆ5Èåuwh]hÍÿÿí®TþúMšF¢,”ÀÝbµðÂÏ¥¥Wb›ýÏf;åzN³¬CÍ{L7‚r§|Zþ®«#œÏ€ºE¬^ÅûØüõŸGGÆ3D¦r8,V ´]°FÌhp…·àÿó’'8 ¬ï‰×ÀØÌ0ÚpˆÓކïO®•Î5 =ZjZÛÎþçøË ^×P7Ol³b^‹Mí1Eÿ$T_ï~Ëíy¹K–ƒøQ,¯€H#™$ šH"=ú« a÷o‘…”Rb·q3èZè2u¯‚üH‹QOCà)_µ§hÏk'Ô±µí펿¼à-õ­ó¬´Zܺôšž ]¯{È|dÅæm,^Á'CSC]A 2X 2›Š;Nœ@àýzÞ‰¤~`›ä6à}|˜€Ÿ™ ¦ÒiTÛÎþçøË Þ0ÕðŽaÔo›vCZ&ð¾yyd1œ¨œáZ E¯”ÝmŸ ÎÕÉ®µÐ€`.Èãr‚¶ Ué%–€î„ÒJÙ ÊTq‚˜ îe0àÂsyé.ðá¿h¢‰1_<']e‹ò4èTÝCJtÛ•6ÊaPz E\1Lôç&þ1NþGÏx. YŒý¸”tQ(~å[å!ÑtnÝÊÄR1Š`ªz§º!ø¦…ºj Àf±ÇžýaÃ<ÃUÜÑÿËO<ý+GV™‘ YNe= 1ºj7ˆŒ1Ý£{Ì'L Ï‚þ9åzñ1ˆÎ¬‘vÐß§ô À2ÇØÒ° Lfã~C èê+_+c€MüÆ ‰X"A¾Î r&¨+ÔDm ¸Gyø?ƒ@|p|(”µÊ\q+X4§š¶ƒ±!Fÿèš(Nå ¢'ð@$„TâÄ 'rà[öqX!¿“;ËçÝ+ú‰žÀ»Lfˆ‰   ¨hû4—„f…BRCŸ¨]@=¯ÍÑLà·KBqPÒÅ.«ß`oã»Q‰ÿLO‹íвg›[Ú| ‘?E†láµ4W>~é?ì_U[ÓìßBî‹^:Ÿ 埕í.Yžá®[]/BЈö_ž•®ë«öƒõ¥¯¶ ¤'^ŒŽ†”•ñ¯Ç¨‘e©4ÍyZe  íi ò~ù¢\®)ž|È,Ï›U¼Êt̪Æ]Æ®ú–Ð,?5-é0$½}˜–W¼@&T —<ò¸4Sª’‰Åt£©¨b¬èKW` c¸0Õœ·ˆuly›|V¾ b³X)>oc(•‡ªž©~œíÜ˼^pžsã ®h¿.xÔ5†\k 4ý¬M§kàÚ]îéÖ L¹æëÍ/‚8#rDqm׿ÏU'øËh¿kÅÒ•Å•»*¾×m®³®xÒoõŸÕ£. uƒ`Ž¿Ï¾%î ÎP=±|nÉRð¨Ú]€P´Ïáž <®Ñ^í ¦b¨Þg˜¦o#dÔˆq$ÉúãÁâŠ=Tg¨_ð>¨<]Ò=x8ç;rAæ…Ö¢@Ü*çË[€•-AT‰ßy ôßév*ýÁ2Í8ذboìjÝ öØû£$ˆÇEªØ•ïUõ«ž 9½ŠõåCÀ;(ô–|Lo[WÚüõqüº„c`~Þ26òyÐo1N3 P.n1-ÓÖäȱØ3ùÉzUôlrTòòÚ®µÿ€à´üä>JÄñ¥8b§ÒE÷4NZÝ÷º£ºmeºŒ =ø[ð#PoQËC;€Ûe¥Ü \ƒÝ€•ù@cR‰†Ñž4pãjärCi°dnñ·ïÈ“íþýAÜñ„î Ý¡IB³- !bŽíA[’õÓ ßîNýgúý ”4¥7ˆ7ÅÛb)(•öJ[à7ö°hA3šÔvôÿ<‚¿BQ³µžÚ'àþÉõš{<8·8Ç8\ 6TуõKKžµÄ)ñ/ÆÍ]žîMÝ͵íõ•OXðaêùqø0aþo >L",ø0uаàÃÔ)‚S§ >L",ø0uаàÃÔ)‚S§ >L",ø0uаàÃÔ)‚S§ø'DÇ,nA`%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur8.svg c>˜IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur1.png0000644000175000017500000003046612240014740024052 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>/¹IDATxÚíyœWãûÿŸ÷9ï}›}mßWí%IZ©ˆJI$)ô •(’P’B‰ÈR‘,…’”Т’hßg¦™fš}Ÿ÷þ>çþý13ø|>øù~¶7fžÿœÇ<:ç>×}×ûê>÷¹îë² j©¥ „Û€Zjù_R+ø_cŸ±#7&BÙ̲ÞeýÁoð'ù] ce?Ù3ÜFÖòÅnþ0„ÐЀ[¸™› ø]ðpð{¸ðmÖ;Yý ãÛôQç.@rqë܉}’:'¿ ö2{®ý,ˆ\Q"‚@3ZÐ*Ü©åר|5ATTðßîäoÇ›>òýX(¾,{D†v¿¡„‹!·Ï™¤Âx(x.ëÅsý "&Ž$;4ìÔ˜¦€k ëkáîL-¿Fí¦ ß_?_Kȼ1ý¹Ùpfí¡¶vCáÑs NIp6–]½OÁ²ºy³ `jzêéé1ëtçcV(LÎÓsš‚ÿ-ÿÿ$àYd†»Wµü#5WðZÕæ('9…›ó;æÅÁ!{nÝéÿ×oç¶ó«¡AÊ+J•턤®±÷Eö‡ÆW&4Œx,ž`bùTÈ8ž}Ú ¹ur·æÖó>ï„»“µü#5wH³—}ì}ˆþ½Þü‰Þn/øž/kTø9Tô-þ¦è({Ä{±çb(n˜¿¸h?8{uodÿbœñ=£G€ÜIq¤ÄdIÿ̧ìM]í ~¿ú­ô w'kùGjl„— d¼Œ†Â]E÷„ò%……/BüPç@Ëq°z,›z@áuEKçéÁÇ\§/ƒ²äÒ¬òoÀz‹y½Ù!û ÖÁ vtO?p(RPeçÊÆ—µ­L+ÑÜáîm-ÕÔ\Á/•³åT8‘:1e!ä_¸p.óRh|YÛâ_f­šùF€-ÕÞš¹õ.ÌÌížñîîà)ï•_‚š,ºð$ßµÁþ }£*² å™3…§øvù–ûžwok©¦Æ žÅòy+xÛVhåW‚ÿzwŸ2ØŽY¾7]ÉM’ÎÇ‚˜-‘³]“Á—]Ö¶âQÈIÊþ>¿ ï/î_ö (-”ÊM¿,º4¢/pKàeO¤¯9ûÆ©åxÅ¿ÛW?Ü­¥š+x™É~>íµàc8Ðî 6 ,å;ñˆ×µÎæŽw!ú9—Åq/e“|²&ôÂRÈ^váDÎ*à^:ÐìÛ¬]­WévÑFÿ½ËÓ‹¼PJñÁ¢ûÁß×¥d¸{]K<>29òZ}Eh+H›vqèjÀÎYöák5J9öU¶ºÖúàêe{Ð6òœ?–õd͸÷BWš<-} s˜"ßWëxÓˆnw;Cv§ó3Ò{@Á¥?ä¿îN×RcgiDS’ˆtÝ ·9^ÿ^[”qFî®ÇŒÆçÍw˜ïóPçƒvTt(¸¥äV¨X•¿¾ð ˆc ¡°r€öµÍ5ÝÑ d¶8§>dž¦Ž?¦[l ÎPgnêž wïk.56Âë_˯ä6×è{µ ¡wІ~޳ XÄ(¦aþÆäs gÇg K»•OOYޱà(ë]îq¿ ¡Ó¡%šó2Ó"Ó)p\:ôfzC½I¸½Pó¨q‚—å{òCðò–x¾ÑXï:¦CêqåF`]‰y¿¼JNC[Ë*óW`ß™ïŠËßvÿ pïÏ–3Î?˜y<û2ðþàŸÜÎÌ`¨£„D ¨Ó9úmçÐGx{”_ i™)†³€±ÿj‹p{£æQã†4ž‘žrOίO7§ÓDÑTo®¤è1Î/@Ù%Öˆl9WîËF[?« bz&Ú⚀ûEÃdõ.({6wFþuª[ÊH<–x:Î ®;{lÓÁÐGýH-ƒºgã[Ç䩳´ÂžpÖt|ð‘6Ð(±ñðÆy`dÅn§Ô j\„÷}é½É{dϹð]V˜[( rÄîŒlèš âq…°ƒ~³~‡|­ì½ Þù÷ÔMÓw']WAÙÙŠ<' ß’¹%; ‚=|eþcÀÓ¢Pe«2I¹ ì»­Û-!âVË@C ÜKáü‹i§Ô…âââ'‹¯ ·Wj5.¯Ås ,»´CÉC°Ÿ/ƒc›-Çš z‰ÜËG —ËåQpôµ²Õ…ºýêÕI>?´}&j¸í6ÏêÂ[Kf€63p$¸ D"ˆµ Ëd ¹ôKé [AbFÌ=Á°Âô¢·œ áÈ•Àõ-CDÆEª‘K@t—‹K€nt§[¸½õ×£Æ ž9r&AèMôaÀßÄÕ¢D†h+’€d™ ãA.–¯Êu`ŒRíê°Ÿ±Ÿ²ã}‘×d7‹GÁ»»pLÉ>á+ô¯½»ì yü@)È=ò(gÀ:ßÒÁô8\ìÐbðM/½)³/”)êY0 |9ÞѾ °TXWXþ¢›è.jÿ§Æ iÄŠTrÀxÄ”l:òy„B¡·4ð_° „‚@€p‰·x ÏŽ«×iŽëg>˜ß6|ixð.(΄‚¿eòŠ dEÙÃå-€Ýìã ˆn¢ í@ô½DG°ÅXž6í…úçc{¹Î€¿¬tRÁƒpöÎÓ¡“wCp`R k¸½ô×¥Æ ^5U—UÚרUж3ž&àߨLæq—ŠN\r‘Ç@qZ|æo\KÃÁñ½9Î4L_•n,›™=SÕŒ}sený‚w|Â6ànîc@o¡?)wƒù„q®á}hšPoSb9è×{”^gåÉ›f·£÷aÏw@súP›mù§Æ ÞpÎà0Þö—}³A_ Fsð¶ðÕó»@–ãä4 =D'à[žgˆUbHóΛíCÁöœãŒMÓ–à ¡M¯Ÿß{!Š6åE<얟ɯ€k¹@9n<@Wq™è¢“H&0Øä„„10ÎÝ*’ËeïA°kpMpU¸½õ×£Æ Þ|‘éZÓÓ}iŒ?6 B˹â[(}Ù=Ò;ä'û“N`‰œ qr@YÎcFÖÇE‘3]×Bès­›6JïÉRx o¢Ÿ¼ ”€r‰âƒ¸e ‡âºƒ3?~ClGð¶VÆ‹6àÎ/í_æÿžòÉîo@¾Ì¼Xi+šQ)xä×|Ïq9I Ä}UêúbmÎ Ö7!ÝV?uäõÈÙ¡7È>rŒœ |Í.¾ ·÷þüÔ8Á«×¨65 \½œ£]SAŸNgEoÇ`—ð\ i ò"Ù‰+A}D¤\I‡ׯ7‡èÉ£w¢%Ú\ GEo·‘­Ý gë÷ËY _æ¤<"Ž"ü¼ìU€â1PöÓ_¶ÓIà nò¶r/Ï'Þ"oÈ­òK¹#ÜÞûóSãÏ:Vð<¨·fªs‡ÒJõ€~…xA<¤â¢1à H90_¾(ß1^ôu!âaçj{°§D=q´~ÖVÖ÷€}ÞU¾I¸¹$TÖÊ'¸ç»7€ö©v¯þ°XL“þÙù˜Ì—mÀ²Ðtñ"h¼:ijŒÏÖ’„|ά<ùö‰A|"Ø;nçýù©yóðUÈ ò!f8¬¾¨Î±HmaXœÀ,Þ*XÁ£ p†r –û¸ Œe†/Õ¶`š`}ËÚ §lñ¶º øó×­ïø|½È YW\x97æ‡ 0/û‡ÖxKdexÿy€—{¥CvË]¦#Pïdüð˜×áà´´ÔœApn²¯ž6š¥¶ˆhq˜›2LávÞŸ˜š᫱G2ˆe‡ÒD©’¯LbhEgÀ/K)”ʱ7~…r<3AYbJ7ÚÀ2ØyƒípÍTöŠ(psÚåÙáÌ„ã;ÎÚÀ«y½c@™«|$fþ³²€*€ûÅb<ˆrå)aeœÖ ð½ëÞ~³/Ê÷(È©ÏmávÞŸ—š+x .{ج´¾{•«€ QÔx~v¾ŽŽìâEVƒºÙ´ÎpÌÏ; ¶¶`úX}Z-ßú[ÙÇPØ#ë–ìÁøà&Å{Ê,~ ñ::B¶ðƒ<âK^äHè²@t‰µ:Rž<ÕãD(Ì)hY°9ÜÎûóRs/1ãN‹WEp’u¢5ÂE ü;ÁW¿lþÀ+òP·™6 `<ì¸È¾”,csøµü¶Š¯ âåìcyßb·ÍÓB·éó´C€3&À‰+ *¿èò–ÜÄN ÉÄCœˆJp ‡È¶[ŒHpöéÓ; dnÑ÷)ávÞŸ—š+xv"AÌçÄp D…xpK ˆŸŸ—ו^n”² ·›‡›ßkYäû®KAdo2Íæ.ò‡À¤ÌŠœFPøpî®üP1Ú]Ç;D’IÑ’æ4þYóS DàÄÆ<ã †P+Ä«‡ÀÔŠm%c pÒ×ÚûÈ™.Ó€ódngþy¨¹‚7"0³h(^ž¢‰X8Pq!$ÁŸ¯£¡ƒ”ò´”q>ò™ˆG¡þÛMÖ7ì Òç´8®öÉyr#˜"‹(9§zøDd~œñò ôÄåÀH1V ÿYû¡ª¡ZYã’Ë™(žs{ƒEéoZ_PÓÀ3¶ôÞâiPØ¥ ³àè~=G?ngþy¨¹‚WQ0‚¸œLˆ®LŒ°Q9ÆýìüªÒ|2 ½2"ÚGìp&Bý‡ë]t‹z b5èÕóÊû`hæ9ãíç??93åVÈ›}áíÜý Taäpr/àŇŸŸ†6Uc|ù‰DöóǦóÆ ¹ô ×WP1¹äÕ‚+!óÓó2Z€~‹ÖVs…Û™j®àÁ„ Šûx0CÌÀ† *âV£U½´•å4°¹,óˆ;+£ƒzOì”èoAŸb]d9zëÐ|-îµÙ·æ=žÎ… ŠJ!øVè˜ÖèÂMLÑŽ¶´ügã¤.;ÈA`™bjj|¶Ä¤F^ÞM¥/Í‚l5óPÆg =¥wÑôp»òÏCM<ª˜0ð ¡Jðü]„¯B¦’N(«ESqŒ˜÷uyô®Èy`œâlïxD¼¶Ok¦fùk CPìN=™ñ¤½unàù½à¿ÊÿC`ˆáÊÑøî“B9 ,¢H¤ÚJ­€v} ¯7Á–Þ÷ý@©\ÊØp;òÏCͼZáû0‹i ˆùâ1À„£jHú%Á#x‰Ñòz¥²¬£"#RÀ,\/9 AÙ,È `5úÖûï†Ò÷Ó‡f} )I§§îCÿÃþQ ï(òÏ_¤¬•³9rëØ<.—ãQÓ<ë`é,šjo@ɹâE à ªÁèp;õOýÒ*ŒØ0kÅNñ ÐKäòPB, â̯^ȹò Æ€òŠ:SéÎ1ßEõ뼈ï@JÁÔŸV\îÜÜw Â…&g»žsA §Ë¸vÑ ^Q¢¸RT*…¯óSÆÍBÞeˆ¢B¤B|‡¨~ÎW¡T ­W€Œ÷ÓΧ¶Ã¥¦Fæ^Ó5†˜p;÷LÍð 0FlLLØÅ4*m«:Cûõ‹¥QfHÔç FõY¨[ÒpBÝ­qeòØø~ा¨Ð¯—L/ûÊ™ss/ƒ@ß6ÿ)Ðïc¸œ DVNGb¨š¥©fÜ(wKxˆñÕ/b¯óo`Ë7îP:Cö¸Ì émÀýJù°ò9áv韚+x ¿xT€A,ÑT ?žÊ!÷×/—Vi“ÍÀð°ú75ê\]gOâIˆ¼;yxâ‹à+µ¯³mm¼xU< Êro?_ÐgäôË+‡œú™›r¾€²æeOWALÅhõ¨KòÏîs–t.—ЉV`Î6u4޵£È’¹PqYI¯¢;!øhÀí;n§þñ©¹‚7b' Äx¼Ê= îNñ,` 4t|Tüúår„¼KÎe‚RGÉ€˜}‘ý]óÁµ9^‹M¹?êŠÈCÀå†çÔ‹Á’§OÑõ®"Y²Ò.=}eÊTÈ=’ß·ðo°Š%@Ñ–Ÿh2`@åÇ\!Çòp§ÌÔ3Á0PŽ–ƒ~S¨Q`+h©Ú-ØÅ×|n'ÿñ¨¹‚—•_ZñŠ41 ¿2pRŸV€‘~à×¶lΧ€2WŠËiJ¢ò©h ¦úö ¶õ`©Ý62Ä1Ã0Ã>0ô's „§‚s¡ oVnN6”ÛŠ7–ÎF‹bD#Q÷7ÌîÄr˜Û—«:D/µ}a,²ŠÞ-ü †æG< rмMÞn'ÿñ¨¹‚wMˆ€òª’lTæ+víäkòeàu¶Ë€#¿–«é¥øTÎc?·­²8Àš­G\jgÃÃë Œ«ºÆ«Öúç`qf© ³<˼Ù@ÓpËo̶HŸìÊh°51_f BbtŒ5Âe–ÂVy pá묗Ï_ú%ºC/ ·“ÿxÔ\Á7-EP5õNÃ6Pœê×jOÐzéùòRзK¿ŒQŸDbáúªÙ¼”ãÉQr:XGÐ6\ãæÇÜ 0m5j U½PÊô=z<öWd{ï-Ó?0Ø ¨CW.̸püºÙ²³&ïs¢©•éˆÙñ˜³>xv”:‹VAá%¹{³¯¹C\n'ÿñ¨¹‚ïÏÕ S‚ùIÓL0š Û­!` ® ýmžz‹Khÿí”V&}ÉnÔ•] rAtÃÈK¡Þ²Æ¼ú$Ûk–}à¿¢òt¹W߯› ð¹[xÚBè"ÿ­h …èA'ÀŠ '¿>”ªÎËÌÍÜâI.Ð_ ^î;Ú "ï Š#¬ ·“ÿxÔ\Ág$ãÀ|Ÿå˜u˜^7¿ þ þ Z®•ë—×q•èýëÍÈRJ)Ù]ö`(D Ž|ܵê-mpgÝ"½¢^ˆÜþùêRõ:ª~Hw@0Ãs—÷iE\rÅò&ÞŽ“‡p`Áø 7¬ž¶ÜÈ!r€'äV0½¡Fr7¨ŸÉèÐ-àãéáiúýy½öåõGj¬àÅD1EÌ[WëvÛÝ`ÒÍ],ׂw“„ÿ:Õ&†¾q;øú7òàÅr¦|R¾¶-Öx‹bvÅ9c^ÃçñGczƒ|ÚzÞR r‡Ô»ƒ~½ûjÏ[¸Ü=Ï[þ–Ë‚I 3eœì¢ŸèAÇ_¿­|™ì²ÄZ1¢::­q`V•¹t†¼QyãrÞß,ÿBÿ’p{ûCÐ|Úm'(ó•%âv#ÄUô\8°óóµ°A€.Fa½@>¢Ò/€6&°É—òm}£V»mæÔ\Áe(CÁ¸À`0lããx“ü2x»Ö´3ú7úƒÀ :Óøw¶©€ž¥WÈ®`ÔM}Œ/Aóõͧ6ú¢Þotu½k¡bŠ-ÆjQ! øRJ*Êž‚’Y¹‡ò!lzäd‘r¢¬,îšC>…T¾´þü©U©$‰fÀ—r¹Þä´ÐýÁ^ÀAýs}p¸ýÇ¡æ >¢ªØ ¶óˆÉJ…r¤8):k¸XŒ,øÿn1wU•щv4q\lë@MQ¯RÇAÑš’»ËFÃÑ+Ï\‘6NÞ–Ö7sØ|Ñþ/VPŸUN)¥`Úh Ç€c²=Âú˜Í¦ÆP†ˆ 6ƒxBŽÕâ@ﬣ}$aghÚ½áãñ¥s}%h½ôïô­€—>~z5?}ÒÐ@|Ä}Ü ¢ Ÿ‰•@šÑ¨Š¶ê²Ê£õsý”> oJ}$c5¤=wdÁÉCàuzþæ]r;½åM .¢-Í~ §Ëùr9è>ýyýsPVë(ý ½¯Ùîú æó(y1ðïí¿óÉ»7o8È;ä­r àÆý[Kÿ*Ô ¾ gçSÎlh”ÞøÁ¦GÀô¡m…ó› «õ!fiÔ™ˆ`Î546®æ.yü껟¬JÐðƉ€X¬RVˆ ׋î@QÕù½+ÂÆxµ~þEoƒç©“9g;™KOÎLiÅŸ” (k¢»Ò^8#F üT ð,9€°‰l± ,w›ëš¬àÌ0ï7Ä€í+ÙÑßŠÚæõÌi%·–\[2XÆóÔ€¬ÊÚ!M¦M›–Blƒ¸ñOõF{GûTÝx¸¬˜÷SL7‚2H¹D¬ý}»¬ÞdÌü‹MVŽáu|a"šõ SvŠ`šx™T&}¯ºête¤5'tŽÎz5çV8Q÷`á±zý^Â3±ç!¦KÔ7‘ÃA6Є6ƒ<ÂNñÓÂSÕa%D@Ä»´¼ÉÞÐgz;ÈÍËl—¶ ¥–›l# jYÔ¨¬p?…ÿ>µ¾šq´Ç ÆÆw‹À¬ª£AùH¼%šÈMr,ð®ÜÊn*+ƒ™£½Ÿ"¼O@Ü)¬âˆwħÊ0  7ÑTŸ_uŒ¨¬Rl:Rù§¾£lHE4d^}dÊÉ·¡àþ Ãs{Cð™`Ïà; og"ÓAt¡3íªÄ««ë™2^ö‡Ïmý ZEov~¥Ûrg]9K3}çžÀ§¡~Èä^¹=Üã¿G­à«q`Ã\M_úù¬|È’Sde)¼Ê*¿ þ®ÿ«gi´ª1þâkQøT¹\œq3½¹~¬AS]ô©z€TõqH¹Á…¿¨-ÏÝyd¦wª/¤Ô;wóù ½¡m×¢A4TâEàì(¢” ’Nô£j˜¯¾u®Œ>êP@ý80Äý-¤Ì=óÝéHð½½Ï„ûaü÷¨|r…Ü'ó!8Øb£˜À `¸J5)]ž´¦E!e¿£A/éR+÷c5î4ÞoüÌŠ5Çrôk•Ê@Ы£iDÕ±êÇ$×TýÙS?"cÁòRÙÒŠžPÔ-=”¹²Îfú²‡€v»v™¶D*â‡_°£jh#Óh"‡‚ÓEsH\³'¢)¨j¨‡ÏçÜg]§^ÿv_¹÷îp?ÿµ‚¯B[¢ÔBà>ïÞV1 ûÅbÒÀ2Ç<Âø%ˆ‡¸‘ÞÀ·œâüïh°€< A~"?à3°ïp\m[ ‘gc”È Ýblo˜Áêÿ-ª‹/UÍôÈ„ªã¼Ï PšPû€>A?&oíº`r¨9ð¥œÏ* ^´¤Á¯›#—ÉwÙbœh.Bà|Ó¶ÚzvÈc¡-P6£ :§xšUt(¿´ Ú íc~ÚÛê/B­à«¬~|Ê&•õ-{Œ‹”ur6؇š1½,w‰A ·sˆÔßÑàYy–t`6³y¢c£Œ u‚õŸ­#!ØÈq›½øª¢©¸©êºª®ZÕ qEC©aäûâ§Ç¬ƒøm[¶ˆ‚æï´ø´É8P_1Vïý{ýs™ö[$HˆÊ½¥ì@¹H 8·JãÛ;Çv»á<ävºp}æF(œRà+œ ”SNy¸ŸÎŽÚYš*üýûü{ xgÑ®Â`|H9$*ÀÑÍÞšbo1øŽG üŒþõödnå‚ QW~(?GÀVdýb#ŽÄõclÝÔ$ x’½)þ†àCyP\ j™ùCÓ*0p4¶½®>{ "on~u£mÐ:±Ëîv@üuñÍb$¨ƒÕ‘j„I^>ã vÿ‚AjÕö›¥¸ñ€,–í.¿ý¸u-h›9¤Lƒ¬™÷¥_¦+m» >"ážøþ2YE¸ 7¹ sÞÎY‡î8àÜ¿bº‹íå !þIÛíê—`N6?j~Ä÷¬eȯøŽƒ¿¿}C_ójs(ùc‹6Ãö»·,üz=^ráÃ<3˜úÚ©‘`\eßbËgDü èϠα7×] Íïlú`ÃØ²½mÝâ®áaçÈ$à_ËSÇ)ïŠnPë[Ø {ËOöÌ uæ4ßÜ~ \º²÷ì~ÝAŒwˆ‰@GZÓ,ÜOë_§6ÂWl¸>°*Þ*=VÜâÛE.4ŒKgóÇæ£ G2†çA¶à8§àw•¬úâªÍÓúé/€£žk‹ãèsñ€{{%B°08/4Dºp°”Ë•¥¨ùÆk Ád4ï3À’hI4wˆ÷»)-€¡j¾=X5dù½iÕcs•Îbˆ ¼`X Ï-¹,8ÈçßE¾±¾`9f)·˜AtüsgYÖŽá«ÐëëãµÆû ¾×@Œ ¾>”IJŒ"FÔ! (¥âï¶³üÿQ%@™ í²9¾4Ø Ë ¶SüG1= ÉZ·<ñH<\§^âIˆ¿)Ñßb²¢gGŽû>Ûxëe ¬Í”† gÉ1r6È#œä,?íþ÷Í÷­Úa\ž‘Íä0|®ìPêCÝ q/Eú@èÁöÞvCêÅ)ðì_è¿9ÜOéß§vHSE†H›˜²¾©³ý£-×BË: o;>‚zCãDÔív½‡Ün+ÿóˆÞt¡=ÈrâiÁþÁƒ!ç*Š’<(Ý¢Üãì=¶öÊèý"Dv‹ÜuÉ¿{×ðQá«/ÈÆrè?hKƒ{@.Ñr,à$A´·uÿÅ~ËQNgÙÂZ0•uÃ|wjƒƒËÀ»¢|ViSÐZ mu¸­ý÷©|59²ž [õ'ôæ@–´Ël@!‰ºÿfÛdÊñà­ªÂÐÄ(¥§è¼z/èýqÿ+ž,Ÿèk´¿À¢ïZÁWã‘Ce2p@j€ºK…X’ÂmÜ‘êéÊB*ðÈ÷ئõ„(‹Yé&¿OãŠ*vA°ð®àýá6ú_§VðÕlãq™r†<£Ù€r‰žJåÖ8õÂmÜÿ€|J¨9…y"—9Œ¶/ ¶k‡õeÈÍÈ>™u=fv(ìncÿuj®à ( à§?õ=z[ý(#äjù)ð>^JQ~kƒ‚¿ ²¤jc‡…òMù8Þµ/± ²‹#Ê„Âiy;sÞ‡âÅ?YÃmí¿Nͼ·²ÚNi^e£\ âjJÉ(·ä_oe6¨ÜÅwó[¦ÆV`édªgœ Ï–N)žÞýîˆ?ó¨š+xŽ¿‹Üïˆ|Ñär¡èò!v 'Æ¿RòÔïB*3X&ú÷ ÷nðŸ9-Ô:¨¯±’×RÊ~Wöè„ZÁW!öŠVb È¡b,åÀ{Ä20£ã ·±aÀHqЃ[å!›C>„ºû;{{B .Ð/0hBWúþ»7ûßQsoÄøóE×bžh©<„”êk€G¬• >йncÿ÷ÈÛX)÷€Z$‹Xˆõã'À5b òà'Ãá6î,—F‹!Gm uêÄ¥Gî™hâM†ó-2ÓŸàÛÁYÁ»Âmíï§Vð?"JÐQ3Ž1Di¯^q‰8Ïj šœüXã/Ï•¥Äå¢Hìó×Fiì <+‹t èãß 2[ߣ¯ ·±¿ŸZÁWa¾Ê²Ì6bâ㣒>ƒÀP­1 |pÅužo@lóÅ} JÄn±šÊ:4 ÿbRîˆêú9 ˆÂ… ”7ÅUÂú9H¾ {Kå;€KÔÆ3%&*v¨÷ž4ü‰Ê{Ô ¾ '®v®“Ð(Ô¬C‹7¡bk0S>çëåŠB ü¯"‚ GÊÕ2 (£‚ ?}©´`ÂÀOå1ŒPùi›Éêóª« üÞŸIudõõÕíVßÇŒ cÕý?³Ãüã¿ÿtTv4Uý`­˜1¡ªôâ¯ùŽÓ ½©ëzpzß÷‡Œ•yëJû¸Õ¢:Ú@ƒC®jÔLš.˜þD Djóá«°þÍ:Åú($úê”ש—ŸÚx\Àù޹gÏÇ‚g›ïvÿ"hô~ñ k!jë¸ãM`¾˜ÇHíéÅ '(C¶p’Làùß‚|• ìÞàC¶¯Ê÷ä&ÇHáàÁŸîĆ Ä@Ñ‹nÀ æ‰i >O2ÄbîÀèI3 ¤€,ÀM6逇|™x(&Èæ<™ 7³m@€rò×åj6ƒÞM.…Ó° _Q œ¿<¿_é' Üe×¢R!¢s̉ÄF`ÝeK¶E€ø^|)6†ûéý~jÓƒÿ=]ßÇ Ž ?òäLÈxçÜP¾>à™–¶¢‹v?w‹Ú!`¬¾Nä]²—–Ê::3 7(ËE ˜W‹ O©±Ñb)ÝXÏp;˜’L_€ºF¹Ti¬d¶X«"î&Ê¥|9Ô@[Þ徯ü/ƒ{’w›ïð L ~ üÐeúryœàCEse>°B™,¶€X$Z)[€e ®e’X®,CsC†á(vÅ©tvÓU< ²ˆ]$g_è¨T 4JýÖr¢‰ßÔMº407R ¶ .3>*ÜOëÿNm„ÿ”tE* ÐfvÛØvk é“Ížn EOŒ+§?}ä1È:šûRöJà¤62¸ä¸P[ÿ» ²Gæ‚9Iu+W€}’å#ÃG`Ÿfñ›>›ÉÒÚÜ lÝå~¥+ cI1„<µl9DÖ—‡À—ØL€wÙS^ šÊop·ƒÒ9îa¾$ðn †€^HP"V鯎±SM1 1N¡®aWZªïºZMVïë÷Ö‘J041tTFX#ÖˆV ²‡b‚„ÃÉë¶€7YÙô5ˆ:Õ%z0ëÏs«œõ{³ÿÁ¨ðÿ?NU®o Þ¼$8*ÊË–o…€Ã_ß÷P*}r È%òœÞôyÚ›¡‹ ëKñÝž|wvExÎxîwO_G÷óKÀ³Èí«ˆ‡PZpžk´{µ‡Ajº.ƒüB€1Ù|Ÿe68gF‰Êçý‘Û¢`u¼âZæ—Ìc,­AÌQ¢”Ù@>EÀqV8€b“°Åkbˆ³ÂK9(O¨£Ô›A\$:Šk€8®SA\+Þ`˜§Xb¬‚m³í2ÛG`xÞpá÷îfø¦Vðÿ%g‚BíÁ}Ì-Ý ÁsÐ3ÒÝ<ÝÜ6ð¬pŸvÏ‚àŒÀ‡þå ×è´H}äÃ2è$ŠÄu`înþÐÚ\Ó#Ý‘C䱨AQŸ‚Óâ´8ƒa™zVîÞþy¨üšê¤´<òÈRH!8G*)@:i¤iœå PF1@¨j{LíÇÅØ*F †D’vt¦+Б.tZÑŠÖ@"‰$jÕlP-¿I­àk©QÔÎÃ×R£¨|-5ŠÿCâÍ€M†0%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur1.svgs\éIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur2.png0000644000175000017500000002374312240014740024053 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>&fIDATxÚíÝwxåÞÿñ÷=Û³Ùôž@B ¤HPE±!H êA‘&"X(* ‚(  ˆEDÅFW@ŠtHHH¯»Ù¾;sÿþ<çñz~=çY‘}ý3\Éä{ç“Ù{&S„<°°+€êÂÂþ/…vE >ìŠ|Ø%ø°+J8ðaW”pàî(áÀ‡]Q®ÜÀ«¨¨@œ ÇË»eoPõÁÍÁ9 .PG©½@v–WÉú@>ùä…ºè°?ëÊ |%ÕT±D %w)šßglyè«úðóä]/íÔCá-…Ž‚‘@kšÐ(ÔE‡ýYúP*2R"}Pù]åŒÊ.PôPÞúT?W0ÿôz(r†ò3h«©o îñ¸{âãÀü…9לâ&‘%ê„zaÿ.q¥^K£Ý£uÔêÁO™»>Þ¹ªÄÙ‚S³ c¹ÕCm8yMþÈ¢Õ äÛ~I -\ò»BÊ÷éÍÒ_s²Ég®hhh€‚r^^6®ØM$ïÝe7p4±¿n¥÷•¬.©€š 5=kÞƒzž4%¡+ØPœ|رï‡åßþåûKû—nù—‰pÐ/'Wì¦ã˜ÀSùid§ÈÙàŠõtó·‚íÛvuØ·ŠŽžíT”º–ižÆ ~rŸ®œ93ŽM<\ *XYÐ ¡IØ¿ãÊ ü5ÊíÊ`ÈèQ»gæ1°t°Íˆ9?ÚwÊ_ž†ÍÛ¾zyk ”.:û@áx¨W\ýäÿr\÷k?8tâ—‚=SÀcutU€ÔÎhC=ª°‹¹bZE+ÑUô€¤fÉ%[¡ñáfëšýšnÉ~J[~æH%ìöxâwwï ßë b}i2UÁ€cvé!Ø^ï‡qߥ@›ý®îX 1mbÊb›‡ztaÿ?Wlà™ÄT¦ & ©OJó”:Ùµþéz­Á|Ð{ëx:—®,óïK~ö‹ ºl¿!9úG°-IŽÚåjÑÌ3~8»¿®ed¯_;{+¤g§çe<êA†ýÞ;¥ù=}‰áNcoˆ¯òDZshÓªËØ+!kPý™3¡dì)Ç™h(iß§è0êdÕ)¯Ù ú2È}ì°uß68–uhÎþ©àp:2íK@{S›¬ õèÂ.þ¼oäŒÈQP«GÝÏë×…Äø”)BÌ›qbsÁ<5Òn}ŽzäèÈÛyÒ—;RúÄõˆ²Bó¼Ú‘‰³AmUÕ§x0ìhøýœo?‡ÃžR½(Ô£ » øó¬XFf@ÖÜ:;êµÙ]ßÔ´ÔE¦ŸoAâ¡ÌÚéã¡r}ÑäRý’Ó+oèk)w‰ZôX,¶B0Ü­÷Þ ¥› Ææ¶—Ϲ¥fh‡e/ys¨GüyæÁæºæhHö§¼‘’ ž/‚¯hí@}Ùðƒ1²&6~¾Á~08äõ² T>\¨+9 ¥ZÙÞÊÆ ^§íÕš@TV„ßTQš±§HƒÊQeo”Œ†šW#WîÓ_F8ð1`¥r½nhIƒøbgƽk}›ßÙèEHÜ™¸3Þ唵®|ö¿¼ï¦_€c½½kM'H{"ñÚ¸ÖPg[ʱ¸Æpbú¯h§“Nî=þl¨üï]%îa°BÉÒ«`úIJ(b!Ä.Š;ýÄtI)L,…Àdù¬œ…¶œ—ó¯o/w¥'"‚–\ó—9À<Í膚~­J¶A®jFå£å<¹>Ôƒ¼r…ÿ;¢#Å2пi6GèA7Íðù(È Œ}!ötznÊ0ŸŽLèÕ=‹#J‡€Ïå9íý´g™Ë"Ð-Wž+ º›¹“>ä—þçÝ7@E¿Š å6P§«³Õ™¡í•'øßNÑHÜ Q%±[âW€éë¶Žàëoh)ïÕ– 1mâãâzBeDéW«ÁÑË>´¦¼WùŠüÁ8Ð`ÐׇFÝ3µ´é ¥x¤c±/~ÏpuûÝ/‡z´WžpàGV¼J4¤×Î8VÛ¶ûboKp@iËêñŽk é™Ô§×AV»ÌÍéY _W»«ÉøãoùÇò³ O€îq¥ZY±Í¢;FžÍï»ÍÝ J?-|âl h©ï;„z´WžpàGY ¼­| É“w$gCä‹Ñkc†ò ö½®Ö™94òfH=–¶$ù!0Ç[ïh§Çêœ.üS§›æ] ôå!n½¦?­¦ n1Ÿƒ>Jmà;Χ;ì/‚·ÿG¨G}åŸ(û½§™ÆS`øÚ0@ŸúFÆãkà÷h߈ :´Rs™-"ò1ˆº;ijÂ`Ï.N.}ìû‹—º x‹ú®*Aù‡R_ô†„ƒÑõ¬]Aܤª ï@nÒ©% Òtš¡3¤§“~M¨ÿ÷ÞÃÿ^"‰$Gùõ ú+éÎï+ê¦Ü,Gá€˜Ê„èØ¡õav‹:  Ä5Ë3ŠŽ?•óœŒ=uðLðX< |« &ÚÖ5òqˆ¹×ú½y1ß™·$7*—TÌ+_êA_9¿˜ö¢@´q“®J¿dGÖ’q}⿎¹è}UïˆÜc`ieãJæ” †“EÇæ<žÚž½ÀÒÊ<ÒtÌ'ë«Áëq”WvWGuÕgì|88¸ž¾ÜêAÿ}…§4!º3A8A˜ÅA¥ÈWÃ~°ù#›XgAíGkýšvl›3×e|vCAyñf¨°µ-Ùûü ý¿‚¼›aÜ ºÑâ ¾…¨ͳuý@mé­åÌÊA•C*@¼ŸðèС õàÿ†Â{ø‹™*¦‹Ý š)m•2éÆtP Ä@qß7ç™DéÓÉ›Aÿ­e†éQpçT²7m^`L04ggÁÔØ°Ê°êN{7ñ ðMpØ+7ÀÑÊC¼ü ü/ûn õ ÿ¾Â¿˜™.¶€øX´W~zð˜X ò+ù´|””NJ$ÔK«“ü3˜OD<`i5Jebõ Ì L ÜRÊçxô}ô³uqðiìꨫAöf8³¡T;ûcnGð(®}î[@v—÷ÉB=ø¿Ÿpà/Æ/¦‹ï€ÑNÙÄh± dC©ÈÐ¥ëÒ åáô²äï "ÊÚ'B@•£²¬º¸]=l¤®Q›KØÄwÊÒ‡¾‘ø,ÙbaðA¨nW•]^éÞ¦¡üßO8ð£2@zE{å 1šå Ê,ÙtÑ:©[)•)S“êCÜU1¯Dÿwª§ DáÉ*ÛW/s| œ¤TV&¢‰‚T[‚+öHù0fœµœ˜rxÕÁ“P\^t¤ÐêÁÿý„"ML AtÙb4PO<(¦ƒœ(Ÿ”3A1)9ʈù.jžÍqý¢S£F®Œ´†‚&gç-…ò^eïUœÀBP—Æ"¢ÔÈ !r…ù:C”d$å}ŽÈêUB=ú¿Ÿpà/fˆX&Ö€ÈQÆ+K€îf$0—å¬q€ ,ãÆ!ú9¹Æ–c½,'"¦X¦AEûb_i7¨vUl­Z Ô¥‘h´¡3íAŽGØl’•ê7 ¬U]¾ ÕÎôý´þZ_í`5«Yêf\þ¿±W˜ÅL?(Ãt³AN£Ž˜²Lö–m«0cžãZ±4¢e+˜ÆGù#kÀ3À±ÅYÞÖÎé®Ý@™ÔRɦÈ6¼À§`|F?_7NÛ~1§ƒï¸³›c$”Ä–$–€ªS55<ÅùÓÂçá/B7F÷ƒÞ æ»Ìu,¥ 5ЂZ[4 ŽS{‚n®nŸîKàc™Ç|Ð×·,6F§í–ÈàìPqºê ð';ßs÷&“È­@Q¤€<&sd0îÑßé¿$t‰åk÷V} y9¹©9'!.-nUÜáóóVxƯM×{CdŸ¨íQQh¤žÐÁ;Ùû´ï`=_²(b=Áx*â”E–¦Ñ[l«!pÒ5ÆÝ¼5·;³@MR¨~ ãxè!GÊI`\løVß’ÇåG¿ >k‚ã (J={ ¯Ô|uB°}¨»qù þ"ŒóMÝÍŸATnLIlWðݬЎ«¯Çám,å}>VË™òeˆ,‰º×¶mÉÿH,jyvúN€}Kٚʛ¡òû‰/g©ñê`•˜/¦£&†ƒ#j‹rÐÞ$ùB0ÁWîÞ¸åË2ü¸î?-ø‹0Í3í2¹ j_ô–˜;ÁoPßÒà®öº}5 —ʵòK#¸C>±ëb-Ñ.Ⱥ7knÆ;`nbb¸*–÷©œy•y¦ÂYà÷û•ÀFE‘ì&‡ `:/ó^u¤ôÊÊ`x[y¿ô>Z_í-íp¨»rù þ"Œy†ÏŒ Á6!j¥m=æ©]µÅàžë+ð'o³‰­À“r<3 ꇨüÈL¨µ%ãê”× rm Q' jnõ¯Ž!·ñôü¼~à/òuñk ´SŠ«€§hB `ûÌ2ÄT":#¡üDéâÒ½à^æÙæ9ê®\¾Â¿ýd}ŠþW°5±=õ9ø{¨÷R žá¾¨`wà#~ä(`$€ôCuß+ƒi‡y¼y>˜ £_‰º‚õ´šj®©x j'¨£‚¾à`;Ä'Àëòcù%Ðki ©ß‹Ûñ©‘OXZÀɃǾ=ü,T¤”u(›ê®\¾Âgi.B4ÑÁPÇ0Ûp+È Êº$P_¤ ?Ë ^ìÀZÒtoèßÕŃi^ôó¶oAN.-+¯îòÊüêe ««@˜DSqä\ä>ÒIë/–(sœ_øz¨­ *»8«D÷6×Aç€PwåòÞÃ_"9Z.aˆ8]¼¾)ˆ&ºBý1ÀJu€Ê…r€8¤ä+€éW[‚õY ›L‘1àM®¾ß^‚Ù5Á[Að˜| 0`@ÏoÏÇ-E7ÑÈ–BK… Í;Öíí”Ú8`ý׸âÞÞòg„éÚp SbôKEÙ©« @ ¸¨vñ’\¢B (»ÁøA¤°Ý$yÏAàÚª»·€»–s§»ø§ÖûƒhL}2+˜AD‰«é|)?Óy0ÐÁ·´¸àà@§©ê49䄺5—pà/Umq##A´Öåé£@i¥¼£¸›!â~ ä"ùÓAlPžT€u^´Í–ÖæúdÝ$1UØ]P0ôì’¢-PÕÂþ}Í8`Šx\ŒQ‡L2@fËXF¾­N@ü­6»ù#ð=íêS£ƒŠÜʨJhéZ’êæ\>ÂsøK$1C¼ú× %Æë€»ô› Ÿ€6@nÖ¾¥¯+Û@¼@†Œ]‘n•R Q7Ä6Ž„¨Ö–hói°ûk;—BþM9+ò‚\X§m­èŒy)jÈ¢uAî–¯ËÞ`^aúÔð$¤7IÜû 8«1U7CÁ³ù¯äÑΨ®QAy_Ù«”†ºK}áÀ_ª¯Ež‚ù-K߈XäÙaÌÿJÿ°`PŒ¦Ý†PV‹)Ü J®.O瀘ã6Ŭ‚È ¶I‘6¨Ø8| Ê^+ÜQRj¢«Ÿuø€yâq18)3±ƒŒ‘ä0•?7¶$}\^L>”n=Û¥ÊÞ ó¿‚FO526z@Þ˜— <¥¹DÊDe…ò D¿›÷Y^‹8öÆ®T׫¸'Ø ø"PJ†’­ä‚Íaë¹L·G~Ñü}¸Mvç-•Juø¤ë[wp/1H$ÛÙÏaP>OŠ»À˜¨ÑM„`†o¢g)xßte8oÒ9ÉÆPwçòü%R~UÊ$ŒK쑸ÌÃ#Ò"߆Êì?9@à†Àè`40„khÊ÷Ê;bXˆ¨cyŒOXÇFd@`§xJ<ž›íÃk:CÀê¾Ö3 øˆ µ7&¬@ ‘X€Ulã8H½L–™ Ô’ÁàwÀ:Uú{‚?¿Å×äírªœê.ýõ…‰Än±[ü ñGâVÅëÀ´Ù²Òú8T]í¼Ís+ø×sÕÀ½¢3 A™%nuÁ2Êœl2‚áfËHó‹ ®Wêë^¿Õ1˹üß9º¿€àGêLµ)È~r‚\¢)õ© r¹8€Á´&¬wG軀q/"˜•¥­Ê›ƒo˜ÿãPwé¯/øK$òÅ‘æãæ'Mý@o6Þn ÞïýÏ—6Rk!·:\‚˜,š‰X°Ä™n4.CŠ¥Y¹KwT¹ ‰ö²šU`ï]˜T’K‹{•͇à†`3u!JÅ!` KäG ‰Õâ9HMIˆ‰y ¢3,ƒõ{à´í„åø›`¿¯jqÕ¡îÒ__8ð—êFn ·øZ,åQåQ ^ǽbð­èÎiäŠM 4W¶)‹ÀXfXehºž¦™Æ×AÑé×éÎ@„Þ÷¼¿'8:´-nyGÎÜ|ö->©¶ .e§n‘rˆ“|'>‘&JÅÏ71úuÛÛQe¦ †¢~gß>ó8W9‡Ô¼ê&ýõ…ÿGùÅW"Å'JwÐ Ú.ÙÔ;Ôj ^, ÿƒ´À› nOËi »E·Z×"v2Švàì_vPP{öl1xêy¾xnU¿Ð’ §®Tu Ý£-×¶‚è ºˆ—@Ü%wh¹Üî9èZÚÍþQÀlæ³pãÆê&ýõ„ÏdýAbŠxLyäBYŸë¡¬NU[û¨X]V=ìõj¸›Û¸ŠÈó¯/[ r ׂxƒ–ŒÇŠò U½èÈñ“nˆZ™Ü:á D×½!æ6ˆ¼ÍÒÞ¼Ò#S6$nƒ¸ÍÑ#mCÁøº~Ò,7è,ÚLP[&ùî‡ÀòÀ¸àq0”žÑŸæ2›ðóm~ü¤PW©gÀ9Ä]áé%õ´|½!¢›Énx¤™Ar-ˆ¶ˆ7@Ù­K×­ýÍÆC'`Šr‡Èß W–{¨‰UÏÛ[‚º(ÐX­Ú\yæï.ßk>”fWÔª5º&¸?ÏÞ¾¥À¬àDÿB(7”+l«ãŸMÚi7¦~ž1W Œÿ‹pàÿ ïßDÿ'P=Ñ^í¨‹EÔ3‡ÌU©#T¨=6mLr-ÐÝ¢•¥àoUº£<ŠGÛ¦Y;€r¼d¸¢‚>1x(¸b7»vA‹]Ùmêt‡Ô޵ÞHö›Öš ÇS0¶x;œiQØ ¤+Þ ¬êÁ8ÞXeاKNe‚¼QßÝ<’¶'½œ¬‚Á©<¬¼Drîfó+\ø—ÿR4å°ØE–ŦÃPgLÆÀ´¾1yYBó ªa$z¦ê`øÄ¸ØP”=Æú†|O ›L £ƒ $—ÿTe‡’æ…7¿îïPoÄTFém]¡ÞµÖ¦õƒ–ï5\_Oƒæ÷fGÖY)i‰¯Ç€ªEe©ÅoAþÛgºå®À¤ÀLÿtÂAÿpà/Õë,e¨ëT—V”j1š%S;²sD&$ÍŒÛýD¦Gô±\ržÜ*K@KÖÈ@1G¬eµnŸ¾ è+öˆý`^';È‘ Üe⨠¹ýN½uæ¨hQñRÕ<0ÖÕo€„cOEWA†.åt¢j¥ÍJ^ éÞ¤÷J öؤÃ11`œ¦ey–ÃÉÇŽ>zœk½œ-Cݼ¿Žpà/‘Ü!”ßë5×aWhÑö¾¹¿ÔV±ôÊBå hûµžòÀ‹/¤'ˆAºè>BwıOlãðsëWê{ÇùzC‰÷Ìg…¯‚ãƒê]޳€®tͪݥ½Á'TE½”Ãb¤¸➌γEA‡FÍó³›BƸØòˆ1p`ÿOswZ ,£äþâa@™¤vìØCÝÍÐ þ©ËÔÔG ha­‚à)¨é`_)Žø=ÑÙ`þÉk°´ËVòN@#@ðRD-åE%”C†«õIÀ}â(o‚(?¿þÇO¡æxéôr7øÇ8Ç»7€°ˆJPKd‘”S…Do:q5(›”‘JW0~fXo¼,íõ‘bèßæz^¯âU“¾Ïü=üWËXÎ’Pw3t¿D2]«ÖNAyyYß’7Á×Ö¥¯© ñ3£OÚÚá€á€>d;ɉ€DCAü¨ Ɖ_˜b£¸‹ƒ@zÒˆ>¿þþùÁà+É-û\u+ÎTu·Í»Û{´M²Œh÷‹Û¹ ä1rÉ9[®”kA~@´œ‘ó-OšúCú wÚ "ªxR ÀD¦0#Ô]ý¿ü%’…áÈ*mˆ6ä]Ú~¹ÄtÆŠ šÒDÔüç§2‚s'Àu˜ÐÉ€ò í6-(²äøsë×—±€× êQßnß(L>\râ>8t×¾©¿n…À$ÿ>ÿTó”-ÊÿòBcyœ< @ÌTî£@ïÔMT A©ñÿäùüeÎÇ«K¡fœ}¥}¨§Õ 5)Ô]ý¿ü¥òSÈÏ ”^­øH -øŽÙ ²7 ;t0äòK™²D;+ëûx•ÀÁs«ëÎ- S´2ì{ò— xí‰Ý9QX(çÜKÖ¶VL˜þ¥> ‰ò&9…A$>PAÆì„–1÷‚¾^p„'•» 87ÖÜPSê¦þß þRUsP~ ’ÍÕ ǡÔn@‡,t˜/ÌÇç—ús7„0™ìY‹µrð\%ß.<Àv~9‡jœØçlîþ|«ŸpŒÙZ®½l§+Í3FŒÿãç ÈdÙC¥“ò‹xjMLíŸð1Xú9Zm8ýÝѵ£ üö²‡KŠ p:p*°pá¤&ÔMþï þRÊïÙRUÇ«@–ö³z'ड़blÿ#ð?ÀO e éÚ+ :º6üVü,6ë.¬ÿü·M>·]"öX>ÝÒ¨{#ƒbÒQÞñ=É4ìÿŸ‹Ãì¸pM¨MUì*ÄlŒhnZi“mv£%ŸŸ½úÌ(Xܨh;0žqŒ u“ÿû¿TÇø†7A««ªï@¢SûJÈ,D‘ø/_¿—rÈÞ²•ì ©×§Ë”"hØ´M‹æ}A¾PoMæ2p N‘0 \)_&Î_÷zÃj»¡Ž³sZÛ;¡ÅºöÇ[ŸãÓ+¦= WÊæÚ @àÿR§<ÿÙ"Î=¯Fêe;¨œˆe–/!­*îÛÈ÷¡¼C=· úžÙ™Óü¹~£¿Ð1<êfÿ÷„¯¥¹T¹|+—6[<ÊmZ÷àPÀÅ-ä&š“ðÏ/—?ËìQŸ:²'¤MI–2:žiS\OúÛ  ºQÏ’ ·)qÊr0ǾušuhÕ²ùhxc#OýD0N6í1X@ë¨Y´Žœ›Â|ñ¿Ôya*¥{D“¼UN/€éÓã†ö;Gôµý£%™½ º°ääÙD(È;»4o2¤ïÌȪ]Œ1N uÓÿ󄬼ôõ)Ÿ‚Rª,Qîy½~áÀó/ÉxîG,O‹±àiíèKƒò«׺ûC^]ÇI52G4~¸E/h5»Í‘¶™¡.ú?'¼‡¿Ïf÷Íîd¨è]¶¹4,ƒ ¥ºO º­õˆ2ÅýâVàs¶²7ÔÕ^‚AT`‚œ'ßK'óSÄ$Z3Í#ÀÕ«úÖ²ƒPsMÕêŠÓ çɹò9 Ÿ³œ uñ^8ðáyijÇ3*¶•ï+]¦Rƒ[7l}"ûGte0€/å6ùs¨«½òüÁl>Å”ƒr‡è&š¡ÂÐX 1µÌoè³<^¨ø¾¢°bMjkõªPÿç…½þV¾ÏÁu´¦±ãúé–Š1`^m\oŒºÑžÖ rŠ3¡®ößp~j£½+²1èôJe¤µN°Ç8A™ ¶ó¯ü©y·žéþm¾•¾¿òTí…Ò"ghFж'ÚƒüZŽÏ³Ä»ôô~»ˆër<j*o–c@Ÿî´îQHî”p8öÜê}ÎÞ›Ûõôð?èÛæêbÿ¼pà/æ5í--¤E]”VmÐŒtãÂ5‘—í‹ äŽrÄ^>à50.ÐÏÕÇ€Ì6ÌÏÎrÇ =«}¢µ uµ^8ð³]¶”… ÿ¡éÕ;€²/É€J¤HuqÿåüeÌ@ÁNˆÚ/ÁGA\|ß—ê°à¨ài`ë8ê¢ÿ¸pà/Bî¡ðyDGpc (—ç>ýw.üeÖM ØB>N04R¢Ä` ökkÀ3ÇÕÎ9«1Á>¡.ú þbî]Ä» ¿»•- b”ÇÅ|P†Šö‘ç^QƒïüÅb—«b*±ƒ¼›gXqYQõ¬/@r½˜|kœÝv¦}NS(þ¶ä¡âËxœáÀ_„epÄRëdˆ191õ p¿ëߣAõÌ·ëWCÄMt±XL£^ü¡®úßpá4¥^`äVˆÚjíñ>Äí³eFÄByzé‰âë ÊZ9²2?ÔEÿqáÀ_DìÚ¸Ýñ_Aý£ ·7uBÕ'ž%Ú$ÈV:­Òçƒcµ8à%¹L¾¢õ©Åo§ý~[Уtço Q~»QDü6­øo¸°þ ?O¾Ž uEbÁ̹gQº@.o±äì£ È&l¦ÈÙ_vFËbí›Po•?.ø‹0÷4w7×…¤1© R= Œ³Þ •ó=RÅ¢üšª‡!œtýu •$Ðe)k•Ñ ¸”W”;@yEé#²@IÕâ0ˆOÅkây׋khÃo÷¦þé³=Ösႎ´¢9ˆb™˜ʃ¢µ0€®¡²YytK”7AIP%ÀO²·|Ζ+ßǪò_ IS[eØ ©Iò¶”—B½Uþ¸ðåÁ¡<¬ TÚAd‚µcä.¨[ï쇡ä ÃuzTµtØ0le¶ÞQFеÕéu[Î7¥¨·Ê¿/|µä¨  ì׋ÎãÎ à+õNs­–š ?hg´¾à]ïká= îÎyÎåPó #Ñ^ 5Ú­®g'Gc{_ðíó´qw™.çiO§´)ÚËd¶ú.È€V¡Ý "S«VƒxDé¥d‚.U‹áa0M1ë-KÝóº>|RUµ ÄbÝ.ˆhYb{bõ ó“î…èäØqOåfk^ä0,6¾bztqúžú½m=Ù¬û¬YÖá |§¼¢<Ê?ïÁ½L…ÿ_ì«&¨o‚k—ËçڎǃFp\gÆ^œSk†9¬àíî¹Ý³ä Y¥ÕJå1m °^[([l/Gk E¶Ôî‘.âè†énÕ7ƒjjfZ¼!ò”© þ Èo@i§[©{ "²-Œºâ÷ÇïOq¯Åí‹Ûæó=¦ËøIÿ®pàÿ[‚çï9-¡„à§8 üÊ!‡8À/À±óÿ.¢€|@#xþ†‹ @À¨Îÿ¿*üól‹«°1$(±n|#f¬@Ñèĵ\tà®2É" ˆ ‚ˆP7í¿/ø°+Jø´dØ%ø°+Êÿ(4åø(H…D%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur2.svgCÓ&9IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur3.png0000644000175000017500000002736612240014740024061 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>-yIDATxÚíÝg˜Uþÿý÷©ê4Ó3Ó“Ì0ä!猒DQQ]‚  QpqAE#PA% ’Eœ†É9vOçî:÷e¹÷¿°îÏmC¿®‹«ŸÌé>çÛŸ.ªNª²AAJ ;ô¿ ü•2È"d áÒ®ÆÎÎx(Tü¢eP–T²¯¤8òw;ÝÙ ÿ”.ÐøÝ¹‡Aô÷\·Ý= 2RÎw9ÛŽ¿v8ü‡Ž ¸u)†ÆP_£f—CÓŽ-¾iõ(R©§´’I!%Ѓú ná¯àÿÖ?×? Î,>±ûø7Ûéüú“@|cãR¿C¶[”/‚ò™ùiY!'=û±,î¥î)îçÝû « þ’Où޳àûÈ7À›9­2Fž{ìO—^Èo õ[Öø"º Ôé'Â?¥ý™²!pnÈÉ/Oü iö v{ t5ÁÀWÓNi)²¸rT8Wqû´`­„Éðõëüyýœ%-|è†øë{ ·ô¸ӷƒýÖª'­z žh,€/Þ@*èJÁÀWsŒr¶q4„ü®y'së€y³1E±@UXù…r#|öÌÚ…›Òaû[wîÞµŠŠ‹‡xoX‰¾7½ž»:; û –ëø”5UЕ‚­ÕœzÇ7ާ paa¿üã™§¯¯¤ƒ(Ðvú»ÀÑGæì ¡“µCÚ@h±½õ°¦eÐdÓu› ¿söºŒ"P'›n2WA‚;±{bï@*èJÁ-|5ß:ßoØW=c Jvñ $ŒÏíõ\uîIþZy{ fBñ¼÷žm 'KBJ×BY‚œÜ¡êhEUÙ2ÐtZ‘– lf [=º K‚¿ä¨|•ÀóòAÞ¡}® „˜±{¢õÐìí–Æ&ƒ üAs’y)Fç<‘œiuôáS§@V:«rW½gœm |qyÇò;À‹ÿ^ÿ¬@.è’`ૉ)ÊBe-è>Ô¡»üóµær3„f™G†ö‚Ú}êèkMK«¤ãm`ìê¹ V]°d?QL}õnÐѾu‚¬^KO—×5Ýu} GtI0ðÕ”¥Òt» ^ƒ 43å2à-:ÈoÀÜȬ„t‡Ð!5¾MPA|g^R|fë'¶I0)rH¸”a¾›]IyãÙ.§LàšêèX x= þgÊ%O‰ýzý9Ãà GH«Àÿ¿Ö”qjgõ0„¯OpÄöSËÐäðî.mV±Üš#ÛÙÜÏ;S ÀݾªAåðómòzC GÁÀÿL™¦<¦¬Ý&uµnÈi‘óÀwƒïvßû D¨Ë•»¡¦»N§”`ML[Þýö¡Ž“ûuö+ùõÁÝÖ!í!*,´ŸzЦåßœÛ*ÂËKÊ7z”AÁÀWÑ¢¦¸Ôêau ÈÎòv^¿ô+þ& «§vW³ ÎغcS?„ÔfuŠjõ,ø¤çŸßiï!ûa{ Ôœ Î<™YÉ™µ.ÄÝéÅ@>E”zÔ=ÁÀW9"A$€Ò^=¦æƒŒaí@[©%É7@Ü#ºŠx°ì wš{@äkñ±1£A÷ATgK_¨ø¬¤QùýàŠ«´ØŠÁtP_¨ëŽgËÓ‹F€íËò%¥§Áû©/ßüƒ•l ô¨ÿz‚¯&ž ”ù .Õ]ÐeV)×ÊHðÝè/ðzБ ›ªÞ¡†¯-3ÃÓ‹1ÉQñ`Ï­8b=Ž»Ë?©,CoÝ—ê|HjÙÄ<Ü}++¾N>qϱ‰à®r/ruô¨ÿz‚¯¦Û©ûZ] ¡·…Ì ]¾8ÿ1y \¿âNGyÂùÚÆµò2²ëeŒÃÓ!kÌm ©¤®tþü‚¿‚’¦öPî1UEw3°_©T×èËh7ÈÞòv0¯bj sæÆV‚ùÙø91Ó¡´Aö©¼·ìBRöcà.hûRó¹SÜ;5úƒG‘zÌ{á,D¢Æ ¨õhj~j ÿÜ¥¹‚hL1Ä#êÝpÃÕu€8Z‹îÀNòˆH&‹9 û^ŸÎ¦W¢/XAî•ïÊFP5¸à@ÑVð{áEàÛ]`.~Ê·•Þ Uo:æ;«@w·zAÉ…¸'"v˜>ßSŽhët(è’ÿPÞð«¾ß±@áÏ+¸Ks¥xÒDSå´ZÄQŤš(Ri¸ùžƒ çÊ e„¦,†°ÞÑ]£â!<ÔÔÆ¸h”Ÿ_t r×eü-»D Jñ&Í€ø°Ø¢‡”—â^‰Ê¢1Uµ+÷Bz›ó·Û– ‘j”€t‹u']Œ?ŸàþJ&jRÄÓbŠò8ð„¯ŒaqÄ~œ8@Þ&kÉŽ ÌT[ª'!fbRqB[ˆ‘Ñû¢Ž-œ¡®[ sì™VBÑ+yϽºçT²"[D<¶|SáUÓ XÉÏù ü·û>õ|øðº>ÁÀ_É$’¨ LP&Š UR¾h@]@Ҥ*=2t¯èÖ¨7@²=eyÒC³ºæ} ófå^Åe4/ vwùAôíD<èZ¨KÔ kÇpß ×âªUPÕÃö¸u øô¾ç}Ë]Œ?Ÿ`à¯A2A쯪7oˆáJ=ëä&¼ÀyN t¥· êqõõoÐ*nctˆ¨H8Û ÜSM5)`/ßSÑ \ïTzm´æ‘c@~-cew°$…v0nË#Æõ¢%´Í–Ó¬·XOZ§º>ÁÀ_©i¢#ˆõjS5„NÌP>ù©ÜŃ Ÿ‘3äjàˆ<Ëyà _ðVêïÑÃÛææÛ@ ²<×UTY3Áqªô¾òMàê\âÎÍ/‡Ê· Ñ»5ª'$|cid>éN÷=Þ —æwÊ3g9O:Á» ü þJw2”á ß¢o¡¿Ô…ºGtkÀ·Ñ¿Ù´áò3ù%P—$j‚h.êR”ÛD6_ƒ.4ä=ã 0}h~)´)˜¿rvw­kŸœYùŸ@ÆÑŒ°l#x¦ºW{z‚q½Ác˜ úzÊÃb;¸6YEY[pFTõ±Nÿ»~¿Ö˜Å|º8|ÁÀ_AŒ˜†­†V†P+tGugÀ3Ñ;Õ»´<­³Öè!:ˆ6€•Jl gÈQ<jˆñ[ƒ LKòBgCX¢%—ƒ}DþWÅ+ +äBͬà.ó<îi r-˜ºãjÑb6››ê€'É~]e&µ-šVðø;ûSüÁ‹HþkÁÀ_é~ÀðŽ!ÎP”­ê4ÝAðtöføfƒvB3i×=èDÀ'Ýx€Ã¬e#èÖ>70­ÿ4lèCt»ÔAà¾`˵çAe¯âCå5@3x¿ñ=RÇl‡Ï:@ƒ“_N°‚£kyí¢»àÔñãáGÏ€÷ w¢§^ ‹óÇœ‡¿Òh&2ôM ™F#¨NÝ6}xg¹÷ûn­·< '}x–¦€N«ä“r>_2ÿú„¯ˆŽzl=uÃt?€óˆss<8kØNÙúæÒši |ÚÑÔ-jÅæ=!MŒ?€·~žR²\ƒ|m•;@nÐÚhí]œ?¾àþ âñ¦øBF† úɆ /«{7 üfÿ-ÄÝô¡+PI9•@jÊN5+:Ôò$WÖë™zä –ÌðDpÜáËñµÏçU7:îYèß åƒèÃSâa ‰ö¢;ˆQâ.ÑÂF³ÚLNJ¼[ èî‚Áùàœåîìè*ýq±O?‚ù‰°ŸÌÁhjŠûp×Dwð¹ü+ü½€ÇÅú,¡„råšUÆ@|‹8ó$4êÕÔÔð,ˆy5Ê.@UoES>£ê{hSüIþq€ä&zÏÉ÷åF •(B¡æü¸fQQ7ÏÜKßNž9š}8І.-Ô_Öáà³[þ#ÁÀ_Aœ§Ä)Ÿöhø(0Ì6‰Ý`ê:îY¾%¾þa f1LÜx/ž•û8À!ÐÐ=«ö‚µaÓÌÄUqAL4Ž3¼ Þ†¶|ûZðò}áŸÚ÷Ü/_™EE@mj¡‡Mš–ƒ¡@íI2”=X°#w¸®·gؽ¼Ã®ØK0ðWZÌbƒñ:c®qè‡Þ5t×9¯Ç÷ øË4§œ ¦.kçG¢‡e/µ–ºP½Ì+ãêǬ€ÐOMå¦P-*³lG¡|zéåì^G×7‰^tQ‹d’@9£ø•`,ÐÝ©n€°dÝim ØOXï/ÿ*ÎU,¨xä½r€ìè¢ýq¥ë¹žëAi‡¬‰†g7…ÒŠ²ãn`óÅ“@}QŸTÐȯ¤Böï6| µG&<=lZ©¹ð¸`JŸ{¾ü»}‹}OºhÁÀ_I=PŸfâs¥ ðqP±'èÎû€Åÿÿæ²ÔÉTP?Ô·QwB„‡b!Êswdx¿w7÷Lƒü÷²nÊÛ •¯–u¯ â11›É@-êŠTàùœ †iújDµ‰aö³ rZÙ\(ù:ÿœ‘ uò]yW ‹öÇ üÕ´5D°]­Òç}…IYŠùé_ü}” • A'u1ºå¸0©a|/ˆ:æApÙ”×ÄL(»$±t8}¶iUЛ‘ân šš$€Ü΃r@¼¦<ÆõN]ÐÔ¶x¼àêe¶$ëÀÊÕà;áÓü¡.Öï_0ðW!>RÊÕtPè×­ F(c•À¬•«ùó<‰]è%ƒ:PMV7C쨘¢rÀ<#¶i´Ü]ŒVã›àÜ]ù“íoàkÏtæ-H? Œ8bŒ@Nb@~)×È ²2t’Q…yâ[È;%; «sí÷ºZ¿ÁÀ_…p(Õ¯@é©ïkxè':)ñÀ³²+¸¸n]* ä×r7Ai.ìâ4˜º¼úÛÀ0Øücèb' èßçíÖ¦¶µà-u¤;ó@ìbPŸf4ÜxðOË×åJÇÄj±’’ãÞ‰š–0Óßtg ýÔéA'¿€ŠFåëËr]­ß¿`à¯ÂpÄ”ò%X^‹žû1x,þÃò%°or¶q…Ÿ°‰o@t 9€Ò‹kkèO;Z€’£ @c\etŒKi u¨|Ò–¥ÌQÑ ªâí ?­Ý¨Í1ELÃ@þÀqÎwr!ôGÓpÓÝ`x^9!oë;%5 §{ˆ£Ÿ½ê²ŽWb£ê?îŸ^0ðWvcXYØ[¨Ö¸'åip¬óØ}ŸBùëû¶! '2Ÿ7€a¢¯è¨¨(@ …ƒ|]¾Ì› n5´0lã}Æþ†\0˜ìƒœ€mR§XBAt¡µD‚¯†¿ˆB‘ÍÀˆ=`lj ´~òGÙ”ùâeÙBûèæiÛÀ=ÎѺ*œ/;Ϻ @+Q7ÐÕûý þ*Âz‡u +ƒ]jÞ]ó°¿ëy\š¡l¿u›ý(0V.÷q .kèÁŽ(æç@¹Õ°Mo㨭¦u±J¶Ñ^kH~VÑ2Èœ•qSÖ»à=çùÜ{ˆÖ¢‡ø÷íÐæÉ ²„‡„véu'×8û>”ž)ø{ö;pîgü§~ÿsþ‘þ[]½ßŸ`à¯B}C½Kí æ¹aaaÁ?“VÊpWøb5ì! ˆúÄrYC7U8€ŽsÔ(ÃY}c0. Y2ŒÃDM%K˵Š÷ ,«`Añ&ð‡ùZù€ø\äŠÃÿ¢Cåh9Œç ‹tßAL‡ð2ó}àxÄšV1J{ï(ÔƒÜ"hã]½ßŸ`௑rJIP»ƒøB÷}@U¦ëÎ:’hl]ÖÀSø|ŽstC ÙúDÐZ`zD?¥³(ÏíU¥ŽÞàx¼üûÊ _Ôúú—ãÙ(Þåâ,ÐeëeäAŽq”Sb©²t?ê>ÓMÿqÏÎ­à™æZïØœ”ðl «öû üµJ÷²„I]føÈR“õY€‘š4饜ÜËþþÒ.M!Çå9P[ªô`hê4užU"• ྻª±£.8ãË»Y =çï®mŠw˜ÃÏgpÿ‰¢©K —oä Ð>÷ðŒm±·¶»)È]¼& tÑ~‚¿V1Ü%ÑR÷£n(©º›uívDŠ)  !ð”Èr`·ü’`º+44d'„ý#ê5ËÐâÔ*u1xV:Î;íà))¯¨l ž¡®G=O‚ß UÈë@¤Q‡d~9¾ôØÀ1 AÌ ;qºÐ¥&€n*yþL°Î­ZyøÆø6û¬.ÞïG0ð×HœQ¢1„T˜ë…Å‚šn˜bÚ ®¹‡×þ÷4·Ö Äâ:y2Bﳜ•^+ü‰°Jˆ]ž;ü«ŒÝ #À/¼#½{@K/_Zñ”&–ÐÕûýþ)qJWeÄG'Nª1B&‡íŠ%*VT¾ žg½_x[ƒÈb£xÈ$“` å›ÕÉR/| $>VsrÒ0ðŸŒh6”±JÝòÄÊ =ûÌ¢ôï¡dd©·¢ˆ a'@ÄMäezDΗo€è.L"â—Ř£ŽAÈpÝ(qdî=?îܰ½e{3¸ÿEð¿k¤^¯P‡B¢;qB’œãË Ï@AUî†ómÁb2?rB÷š¶šê‚V&o—-ADËÝ€‹i™q#XVEmŽXjû˜q‘ _c¬m°€ˆpŽu …âwró ;ƒýŽÊݶy Š’$† å-Â~é22"JAm©tTŠÁ¨„šƒéûØí1ƒÀPÇüRh3»ÐÛ¬7/¹\{ì/;ƒ@´áÀ=âvÑD"1DqñÀõâ?? G'º€¼QÛá; ZwïJ—xVë®õ tõ~?‚¿VýéG_ÏŠdq”zêlý ÍO¨Íg(QT’qY;¥z|yZºA™¡{[×"ò“&ÆW‚ÉiŒx|;½'|=À¾£x]ÉLð$Ú^°¿ÚGÒ#SAv”÷È wqˆc\\Ƭã—Kü\Ô¡P¤=¢õžõ¾ãžÚ<_œ· èJ:PèbN0ð×*œ0€›èHs©ê‹j]IºÚú@_ÑH<Ø9ÎþËÚUÏ£ËçµÞÚt0E…65ÅBZíæCÓNAäÚÞä¨zPFÉðÕ+ìW¾Ü‡óÏAaUÑÇeÀ~Æ1еäy^* {D-S_Õ¨.Vn±WßCˆÞÐ@·bü¯õ–’¯neµþAãZ{•R%„Od1”WÅV!€¢-@že·€®Z©[QÙñ“b |›]vE?L·Â󭮪S;î”íüYPÔ•¸j©3©Ö UC÷›ú[øžA Ú0\t†ð„- m¦(ãfCHìÝ6b!TÌ/ý¤¨èÒ̱–3U•u D¤h*þ‚O þWRPf«+@ ×ï2æé<©LÿcþýÚà¿C©Å€¼[fÈÕt’±à˜äìú*ÏW¶»ÁVOW¤zÀï¶l ¯ !ZQAÙƒ¥{ót3(Œ5¼b˜ b€~Ÿ¾ˆ¦º/t§Àþ™c¦óˆ¯D7ñ0ÔTkzå\œÐ+ö;j4}™ óú”Ä'Lë-“´FÙß„ê³9ÁÀÿJ†R£ÉT抈ù‘/w½ÖÇÓòæ½ZRëJî+×s·+Ú½ ä~B鯆{ôc Ìz[ˆGÖº«æ|°ùR›&¯ý=eG+eZéÏÒ<ﳂc žô,öœ‚šÃk´H(ÓMÆÆ'Á»Ó§øº‚5­j•ýN8Ò÷ô€óµÀ»Ä·G³BÉ-ŽþEP“¥OÜF Š)|@mzºŠÿ{Á}ø_)ÌþQxŠ>Ê-ÊÏ»E%I@Sg}—~¾Šª?nú9 ‚œg=cë YÎßž 65¯*”:Jo‘pY?‹(¢Äw"L4u¾ºFÉór¥Ôÿ2xU}W‘… ÞÌ{¼o{ô\èêþv‚ÿµ¦ÈeÚ.оöçykïËZrAÚý›vƒ&î:‰n¢#äŒÌ¹?o0œÛúSûñ`¼¾ð½â&`:êÍôMùnu»êËüDMÀrµ/Ûw/¸ÛWµv¼þºÞ†¾­@OfäeŸ§¡¡,¡¥¼t Õ.ÊJ¨Ÿ–Ò9qèžö®²ß ‡_Žï rJ©·|¨~§ÍeÝ&ù¾Üœ®nç¯~½ôtîp¹†• ÚÊ=r3Çtù$ &.[7ÿóÁñ,ù«@'j D zEw›n ÈLbî¿y#vœ€7PßýHËè”ÈUШw§ü6s!~F‹‰»€´Äc^¯Ùaz\…Æá†×@é¹#"b¿Kœw L‹BbL&=i*{]ÀB1aùŒ¼ k‚RG<.¼02*3üCP¾õ)îû!ï圼l<zš{"ý-ü÷‚¿Fr‡ö€l ¶Åú2xÖ8¾´}¦GŒ/J@Ý®PZ‚\!¿”[¯ý}µB-C¦BØóaBUh}´m›æ·CË7ný©çS?äÆ!ÝžçšFÙõZAå꺱µF€‰æo7Þ-··j>bÏÄÜZw­‹œôŒË+Ëþ KÖMP³!å„c˯§–cœ?yzÉÝà*uF9§ú[øï Y-Ðù½s8|Ža°}øÆÍŸ5¥Â¾¥$ ÚÜÓpxêxP—+Ùb h[e”¼‰ŸÏt^U>yVO¦dÒC Í¡lpÅ ëçPØ,ÿ–¢fP~¨puqcð$øÆûZBôÌ8[ìsÐðËF?Ö“`èm쯟Rj[ä)À‰÷ç™ÇvñÁÊbªÊÍ <,Ò•©pòï™{ Ê!ï˜}¦6zŸéÿÕ@ѱáqà$]…'ÏÛÑ;ÊÏ•=YÚô1Üë›Æú“ÊN €írÈÕœÏzn¹¦ _’tñ1•Ò'}2üç䩇ÈÍ–Œp?DåE.ØâH“Âó€®¼EÈmr¯lò9L[²³¶^^\àAå_ߢï_ ¿xÆ—=ò'΃<Á>†'Õlþ!6Õ*§£fU-ks‹ˆpD´C®Ámü.2 nᯢðÖBsa#8e:ºàH „ôu¾TÔ¢cï1"V‡Ï › "_ìaÈåvüŠº´¡:¦¢&5Iꈋóö‰Ôµ¸ø(=Ë™ ò;ù-;UØ/‡ÿP,‘D€˜&îwíŪ[í¡l·sžwx­á©5î‚d[=Ò¶@Ê ”SµZúÛùÏ™µ/¼ž¾e쯹û<Ô{&r‡: Ò"n¹ D¥Bét  ÍbJÿWéÑ¡Q‡dj€­íÒÆ@å{Îzž÷àì¾²Û=« öSV¶Ü M}-®k¹-ÐþÏZ¯ÂåÛêÝ žÏc«ì  VÖƒ®‡.Yw¨Oj…SèÞþ.=Qü$éd€nžN¯;ú–ºñê àœmý¾b¸>p>bwº³¿^0ðW!§k/hQ ×ûÆzo®×fkM€]dáüת \|¨ÙžZ½^ÿ;œÄ´OµÛ@»É{Úý"È%¾áÞL`ò`ÅöoÏ,ÿÎ5‰L–…@g¹J D²@¦^¨èÎý†ã$ÄYÑ„O@·Jü¨E‚<á»Ïó.xxú{'uiÏ îìµ ÎÒ\M#:âf¥6°„–¢/З(:ß¡^üøùùÖztr2ïÊí < Ž‹u`i:Þ¸´e¾*Ϩˆ¨¸»|Ä´Žé³ââíëÿ“É©@ ná¯BlT–+:Ïè¾ÒoÙK´ç Çd‰4\¸Cõ½ÿ,È©,õNõm¥ DgD8ÍË@«ç½Î=Jº¯+j¾Æ¾hŸèÎ^»`à¯B7^o2ŒÃ]¡O„ƒ»³7_³€k›{±»3(‹4a±C¼#f.¼¸ÝëÿÂ¥KûÐÖÀ|Áqð­ò×ÓBAËÓ¾Óx™'€(¬”ºÓ×.ø«;k ‡ZÕu5 UŸú»©÷BfÃÂðòÅPT¿lWEðvôÎôéA¦¬UÆ€²G*bAìoй š“FC~¹Ûï+ ˜Ký¨¾[hAùž¥à{Í÷±ö”½m_çé”èw˜* jaÔÁè0P“ÕµN qí‚¿Š(¢^ΆÆ›‡·¼d¬ù\Ì)ÈnP¹Æs²¢‹ÛY¯뽎ãîdpuðLóõwºgŽïðü˵Çx ¤ú6Fôè¹ö3¢¿Cu?ìÂ&Wó)_‚;ÑÓÓ›•[#Ü€Õè­ë!§#‡Æí‡Ä%IÓ“rA—ªë¢û´O<]«^´§-”fW<*»W„•ÞÖì²É%Ë /#S—UÝË‹K²!¤¯ŠÔAÝ»“Ř zÅþ>¦ê‹õ^ò:ù(ÈFÜ-Ÿ¹J~Å·ürÐû[ÿü¤ n·p=P$Or´wå9Î>›=¬°²ÇU¾êÊ€&kÛvïò Ô^Q¿IÚ `Ñ[ÆYúKùÏÿ+iûåpù”(Tæ„ó?œK8k„ʥ͋;ƒò”ïW´t×— ý›ÜƒþN1š±ýJø‰ÐƒömÈlÓÐÕߣžù¬<'k‚|Q~Ìf€^rð«yðâ’I Änñž˜ 2F–.pÖq}éI„¼{KuÑP:ʽJtSíØok6€ös:½ÑÅ–gdï@Wÿ×û3Í+üO)zñˆ11£cF@tͨýQÛ@ÞÅmÜÖ•ÖC•àØèÃg¬„ìwž? Ìq¯³W/Fî1 Õ¦«(ƒP“ÔÚþ6ur”ú"ZÄŽ‹Ó²„ ªøùŒè5«>R ¨E"ÈÏÙÎð·Ñ>×"ÁýÇë ¥Ûl÷9ï€ôèâÃöHÙ“¶¸Yè8·ëÚ뛃ñ°ÑbjÂÅŸ_üQ§^ƒ[øßˆ6Z›§-ëhk®õ9p-vúAè…@Wëÿ^p–æLY­ R®‡ÔÂÔQµ{@[k§ ]gC£­ŸïtlÑæmû µÜ— …-mž RqîöŒ›p¦z~ÛPçj· ª;/¸Þg]×F \qîQÞ)à\äšêùìi.›ç ”ìî£Pœd쫾¹!§¢î„”v 3›Õ†ÖÛɱÚ1trèš@Wé·ÜÂÿNøîôµô¥‚Íb½PÙÜÎÇÏCÙ½%/Z δ?™Ž •_”ßô÷ñä¾½è!g@Ä÷!±†w@¿^¦Ž×4ßþùàìâ&σéÞȉ±M qvêÑOAâÉ3ki`ù&rLÔx0:M)¦?Ðô⯠üï\å‹•ßWz!»C̷֢ÁuŸª@¶ð-öÑÚdï;ÀßÇ@+Ù_®ÑVm¬äGu7?„ð‘i1!nfÒW5·@äÞÈ;#_åyeœÒ'Уüß þJçe!¸›zÚz:Bù3eÏ•ÍO}Oš§„Ž60ß ‘,©–$Чë÷é¿t¯ïÿ¿ìå‹DQ%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur3.svg~³‰IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur4.png0000644000175000017500000002772212240014740024056 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>.UIDATxÚíg˜ź¶ïêî•Ãä!#A L €” ¢H³€"FTDPP1€Š Šˆ ŠnPD$‡ “ãÊku¨ïÃvÏv»Ï9ßµGœ¹ÿ¼Wÿè®®gžõÎ[ÕÕÕBV@5ÕT”ʾjªùORmøjªÕ†ÿ#,,,à8Ç9Œg wÏð8"D*û&«ùw©6üQHâÅññ5°oÑž{‘F‡¯:<pãÆ]Ù7YÍ¿Kµáÿcž±Õ(„²Fe³J;Àá#ûÕ_n†;v»w SƒODŽ—ƒ>Zo¯;+ûn«ù#ª ÿD¿ŽÖŒ]…ïäÏÊ/±%"Jß„‚Y‡Ùû.l|ýýÚNP¼¨pTÁtRFe010*ûî«ù-Õ†ÿ#@Ɖ¤P§ˆ|ðl±½$çÛk­ˆÜÇ^84ï@äFrïÌí¨hh•}óÕü–jÃÿ¶§ìWÙÎß2o¡Ï r²h£NæÚîH…ZãRf»@îÏGýÙsàÔºã-ŽŽËiù­Làöq²²{Qͪ ÿ8ŸtÔu샔E)2µ;Ä~6n³,ˆîŽ÷Ô“À¶\©/®†È'%}ór¡4¿`nÎr6ì Ìk¡õ™µ¦²{QÍDõ“ÖØ£Ñ+#ÏÁÚŸ^»øØwjÛµ[:€zÊꥯ„FÏy½~xr2·×鎞özvhýä…j;À'ý7ûWTv/ª©ºUf˜QÀƒ„Ú Ö€ÜÛs^:yè%ÎI”B²7åÒT’N©—Ò ”êZm$”ÞX t†²ƒyÏæ­€W¦LLê —œ«5†ÄŒ`Q¢šÛÎK; øðã¯ì>WS…Kši<ÅTˆï Ž<ôÄÁõðõ£+ZÞV–>¼èø©ëµ¿‹BpL  𘠬#Öuàîêãšɳ\sïCöS{æd¿‡û·e§Ù2~"ê«Ü šã€%¬d]ewºš*›á-ŸUfí…_vþœ¿ó<8!ÈÝêžL^ïè fkÏô”Ú`×̼Èû°wó/廓¡|uyjÙÅàºÌ½Éù ȨwŸçn(îtòÉÜÀ-Ù"Ú‚Ú\Ö1JAßžx$>¬}òù(ˆBѧ²{_u©²†—Ce{™ùÓr> ®o£s¼S¢ ÐÕµÌèÖ|í—äƒf–ùx¦»r í”ëSïËÄT±Âhb «ÔÜa¼es‹‹òk‚3ÊçUvï«©rƒV9‰9|f¶¹ÝÜÊ<ñš¸%S¤¢££b³  Œž AȦ@üáXyì2åt°Ú‚«s´Ýÿ6¯ËsاÛöh—@¬~¬cü&~ÜZ ¾ÛmÄ(Ð×FºwW^jî…`ô2zõ+[ªG•3¼è':‹ó@»T Ý 2Ÿå,D{}³á„ø²X8¾ ÂõB©‘ç!¼)45¼cc?DmŸøF< Î%va; Žæö¹¶ZàèºÏ9¶¨=–E'Šö”,…Z3RÛûžË=(½»wü\ 1ot}ô¾ÊV£êQå ¯L׉V`ßn?h? ÖÇr™°oè׃qoâüÄQHlŠ=¿ ,¡_¥×íKÅCpOwü -ûÛnõ-P·*­”-Äe¡žw½==ÅÀqk„\îÅ­Ëf‚2P´d8øíÎGm_‚3È݉ͧŸºúät<¸¸²E©:T¹Aë”9Êâ- È>šƒ˜$¾P.5Gm¤&AüãsãsÏZçY Á»ÆµÇ1Ü‹œÂ> l¦6MÝâ5ñ„2l¯ºG¹ý .ýEˆ_œÊs‡~—‘ ™ûR"I#@Æú„l8òêÁw÷>Z©#âœþê'±ÿª^†?C:YÔ–Š QÔK´îš¶åö_ìÀxE×r§qƒ¹Üç8޲߶ ZP5@ÜÅÊ@¬CD°OôLrÝ ‡øâ§‚ŽP0ãÌTìÛå¹R®öÞæºrkïwD‡â§ û|\ÙbTª®á£˜àU41 Ô¶š®ÀÕÁqÚÁ,1·›5ÀªaN3?WoG¶ýµäš‚>ؼڜbªR*>ŸH®ãÏõsÍÐ.€`ƒòvÁïÀ—‚–m[a»ÜÝKÜýÁ<.ËwÁ¨aþd¦}’ö fAbñ¶q>ÄîMlN< Êñò¤LMjëŸiE)S’§‚íuõR%Næ›pª¬/èWdå9q£èŽ û[cІá0`ÙãÙaâËcè°¶É ä„Êé¯GÕ-i¸€ïé!F‚ö½ö‹ú=8¹V:JÁz\¦K Ö«¿ìö<[ܶôcz®¹ ⥉ÍúKăŒ{[møÎóexìà\ï¹× Åþ¼†…K¡|}ѪÒ4ù™>YWö€äÑž»]Àì®Þ,߃¢f…mòsÀy›ûOøvùðU¶V!ª®ámxD ÐH,ãA}^}W[®Žëì­@æË±|Vûå°?dϱÆ8s¶±éz-µÈÍä’tc#/ƒVÓy›C{ÐÓÄõ Ä…f@âÁÐàp+à ÍX ⮇ZK2f¤ôûãáÙ‰R8´ñ@î¾k@ÛåÈr×>|û+[¬¿U×ðv¼xóy_üÚFím8{92烵‘0cÁÜ)Ñ´ujo5 Æ÷fŽÕô£µ1ØËz^Šd1I œ´çÚß­óG.D圛?bkCé´¶ZA}HY¢¬ç·Ž öÅàŒ$Y©¸!ç¥â !Ö!21¼ø‘^•-Õ_‰ª]Ã;µ¢ @MV/P½àÌuÔµ_D‘ †Ã|Ój–nu³vƒ9ÄÌ6;u¹µÊÚ œ’¹ä!öpÔî6U›Úe¶ol·2$ðDH…ÈÐÂDñ­PúQÙšÀ:0ž6˜ÝA1R âs¼r˜×'–Å.k·1V_RÙ"ýõ¨º^G`y½ÜÁU ¸Õ†J8ÛçÙZ€j©£•ƒ`^kŽ5S z{Ü™°@?ÇlöGwûa9XG€·Aæ±—Ý L´=®5Çëö.ö'ÀósÔ寉kswÀáÆ‡Íã3 Å ó:7q‚«·ã{wÀ'?’#A^h-1‚|LÖ°•-Ò_ª›á]øI1G©©4å˜ÒCéê‡ê u Øj)ƒ•= [Z¯˜@䦘_æ^ëC+ ĉ €äôŽÙl’;@™¤MÖ–ýsg‘ýað¤RÎfÇ ;–| 'W»àÔ~ÐNìÓgƒh!nW€|LÖ‘ÛÀ*7†ê [Z×[ïU¶H=ª®áÝxI¾ 1 D-q² ”×…_Ôûµ\b—ÕÚJ†Hv´4ö10œf| š¦]­Îj“A°ˆù|ö§ÏÛ§ƒgž÷&ÏDP7¨SÔDçŸ I(óŽ)þÌŸŒ¦ÀQ ƒÎz9 ÄMrƒµä ëV_ñ›ãñx_p‡Ãá@T¶vg1U×ð:6ì _c¬x ®ˆÎ¢¡\>ç;Ž:¸)8!¼‚ñòó‚0ÖèQc7(ŸŠû€´ò¦|œSœµ Á›´Ë߬¶N½bñP4|â/7FÙÀšg] |Éùœ¶Aj}u,$Ÿçõ¹B çÆ7D  øÇ’%Q¨ùN5ƒÚ[íª¶¯lñÎ^ª®áUœx@ôŸˆƒ@MžG@|,z°\ÇÓ]AÑDLL†Ð¬à'¡&à»ÑßÏ·’·ú‚ÞÇA\Éh†‚œ!“y lwÛ]ödðÔ÷nqÏùŽ­½VmCõ‘ o ÿ1Á¼Äèb®ë™-§–®}®”CÊ6ßÏnˆveE÷AI÷"{Q+ÈTÒÓÒïu¶ŠZÙÚÅT×ð…ã€OÅa1XαÜi®'SA¡ÌV&ClzäÇhK¨•ŸáO[µ¦Öø"Ýâ”Ø –­e?y+ØíÚ í+pnw5qÖØo³O««©›&˜¶p"¼bsb;c«@¯o40?ÍToPw@R²ïjw#0û'æÅBYÏÒÏKV‚%¬mVõ2âÿ3U×ð„(ÝD7`Ÿè$.ñ”X.ƒm¡ýGûÅ Æ)†Rƒâï%V‚…w‹ûQHäêÝ<Éxn9ž'™ Ú/š¥×ÎÝ›“lo‚Øg´úƒ˜ð…ƒ’K/ë ¡#u£© ŽVóÔYൻ}®U`lг㫠X#` <ÖPÙÅ:·²%;û©º%MõhÊbu¦–âåõR°fÉ–²6¨õÓì÷h*B<q#øqøcЧDدµ]bûô‹ôÆúmÀX–Ë/ÁÖÙæV³Àõ¾ëqçÝ@žý{вÙAÔî‘»¢ `xîì‚™PãܲîRð¿î~ÑùØjcµ-`7'!>;þsôsïK¯¬ž—ÿ?Se3¼hK'zmªí'ÛRP·i×h£Àˆ˜ªÙl\óDÅ&j@h[ɹ¥oƒ®ÄwÄï^BEB5Û)÷rl=Ô1Ú9àá¸Ï±xÍÞÞþhý•e9hã¯'–CQvnÂ{ 02Ð2XÄm<$îjÓd±ÕÔ r±9Çœ ì–Ë™YÙªýTÝ ?\ w€3èìïª Ñ6¶¶Žï!ž—8/¾ Ü[üÇ}ƒÀ>ÃÑÍ‚‚sâû ¾%–?Ôs¸ˆòÈbJ Ø/.QÐ:iÓÔ= fÛkj¥`siGÕé 6?0@poé+eù½<¼)z°—,®jò À Ö:kð£lm½ â>Џ¨²¥;›©²ž¡ÜÁpvq}ãj¶7íí› þ~¿1R/Nk™ÒRÞIÞ”4Â=ÊP¼¼xrÙFe„ÇG?f1E zˆ.´q©b²X e¤ý[”ïµæÚZÀi~f…!vExHd5è)ñhâG ©èBGN?P@^/{X¯‚ll®1Ž'Y)ߨlÑÎ~ª¬áÅXñ€x\ÃÜM=÷ƒ­ŸÃæ Al~b³. ¥wêËÉ» ó­ôûS»w9æ È)Ϲ?)|Q8¡¸Èβ»¼xŒIb,°•ÕòoÀMü ¾-Ëö’M¥ÖZÛr³la £E4‹€ÙPIoÔ¤ m8ým( ²ƒ2kƒ´¬!æÅ@‘\ÅË•­ÚÙO•5«lÏ>ª¬áÏxƃ«Èy®ó\pLr6wæB䓸rãHô3®5–€v‘£Ÿ}/8‡'•ù.…Òó‹RJ¾ø¶ÀW¡ëݼ.ç-èËgÀ7²9Û…MÜ ¶OÝ÷:GúŽ3ÝþÈ­fØjúµa36 Ì¡ñm‰M 2B;YB œûd­èy»8¡GCÁÐ"p_ê}ÎÛ1Õ;õýÏ©º†oHCs”Rå'­XmxRè ;Ë æƒ–íöæàÌOºË·ÌÖ'^Ìi ‚o„4õ¥”! ” üÀž’K@ìRT¥'Ø’Ü©îÐf:j9¶‚|Ov“¯ƒuwÌ{ŒŽñ!‰é`>h¶2g‚0Y)^ÿ6÷T×õ` =]= Åo­/¬žgýw&µd’%ý\Ù"ž}TÝÞŽû?ÏW.ã@®¤]ÞÇpÝïýÄÝ2³³Â5 húUÆœ_ôui(½µ¼nè*0î2›š_ò÷IC%_yV9¼_$Íô ûjÏ ×p06ZŸ[ß'v&2!±"ú]l;DÚÆ~Hd€üPž)òhÒbßð]ìjnO‡¼†9O‡à×Öå¯T¶xg/U7ÃÿÑŽé"ÄÏJ‘Z²s©^‡/Óû0Ôm]Wí6°O³™ÚUPº¿H)ñÁ ãdaîàÚì>ÏéÇE¶Q¶á ^¬µT6AJnú¥)ó ðVßLïr(ëB&ƒrsâ]ýnПŠÌŠæ@¨Ixk´58»Ú„m%øìž7Ý%îgÜp¨On¿|D²ÃûC*[­³—ª›áËxñ¡¸ ”.Ê^up—ü\<Þ¹žRר[R'VófHº/õÁäסüÊ Ù·ØqhDÖ†ó"Aà;±‹¿êR{©ù:7ÝŸšÎUþ ÷ˆíæŠAÙ§Ö‡€~N$YáÑÑQ Ö%r¢5”û•¦b+ˆ™òVëEHÔÍ\ ¦Ð+[¬³—jßáAqP—+#Ô€"&ñØ:hãµ\ðâ z§ûêd»ÿuˆ—&~ÔwCAæñ¶9»@ß{9þ (šÒI)žà5ñ"¨†ú¼:DDÝ£~¬"Ž 6)Ki‰c¡Ç#-!ص¼O°X³æ[… Ô]•F ýV®5ôŒè¨H6X+MÃèWÙb½T¾чbˆ¯”Ê2 ±˜)žq»Ø%¾íiÛ½Z287'ýýA•šA¨èÔ´¼íx°ôæò‡!þm¢Ž¾¬õÖóÖ^¹¡ ‘iö‘§Ûs49ÓÂ9Ñ;¡ü¡²®:`¾cŽ·¾Úˆ‰<Êq1Z.{cqÊj F·ø–è ÿ>®ÇK€‹éEÊVï졺†ÿ;âB. (tf°L>$oñ®Ø%îûT©÷8[)ÜyrAîepâæìYGBê/µ\5÷BÇ/¶g!·ÞñY§BÈ*,*¹<Š+OÇDƒè¦èTFƒŸkƒuÄJX€œ‰ÄÇ6§ö dþœt™ç\/ Ž)S!¿qÁ€‚P{q­k½ *Õ/†ü;Tgø3´¦€gxC¼´¥+]m¼Íb`’pŠB°mö$¹Ž‚÷#{;ûZpP)7À6åtsêS§£ñtb‡þ ÄwEËãI w[ÏÊ•@Gù(óÀ±Ö~›íJÈÊKONiñûÂM‚OB~~^an°¶XŸX¯U¶xgÕ†?CC:‹N †‰w˜4¦;ïñ8/‚ðˆñârð¼tÂß¼úv{æ€òS|S" 6¸ÿð"ÈÞ³óÀ^²÷\r$ÊzvrŽò}»AT”¢îéh=¥?jôãÓø‰i ¯”ŲÈ | W€ý*íYí$¤XþžHŽša”ªÅEÍ@>gÝhu¯lñΪ ‹¶t™3Ä›€EGÑäˆÓ¯î)•Te;¤Ý’qYê<ði+RºAì!ù…üİ‚áEõ »Á¦½?ÙaM¯å7¬™ eý÷^zp hï¯  *Ú+<̵F3ÆzýIc6ðˆ¬#/òp¢€øP¹[¹l6-ª=úôøêèDˆ- ‡B¹U>'Çfe xvP]ßA`£ H +Ž{‚ì /”—‚r½:J AV‡š[2Ÿ€WÖ÷™·ÁáUv‡-\ïEWDzÀöÄáÄñ`µ9µ.¯;xæß ÿ ¶ŸÍ€¤ŠöB§ƒµÜlg.scâ~=äd™%ÛÐJ4q#u¹Ä)1v`ÖïMóZ­[ئÃ|ÆôAuÿïQmø3XÔ& ÐéÇ%€%ê’ —;y”.â!ñ¤-K5“ÛBÆØÔ 0^r½ëú´Ç"z, ÜÑÐå‘Q ? XÍòƒŠvÎ,øŠV4ÛÌ8ǘÖ}•>ÄL±Zô¥Hñ‹y ÇÈ…PÞ£‘2R‡zk9ÝΟ[­ ¯eî°S—BÖÌÚÞºsÁ5ÞÕÛ5ª²ÅüóR]ÒœÁA;< Ò˜I}ÀAG¼ —³F~¢D|#>÷\çöuà˜àiêîÖýîÕ®z 7¨ÇÔÅ o<}9yUEìYqý3/o¸+¢ót°Fé—k!1'öEìH¼—°%VC|dâE½#ÄßoÕg@"šØ¦_5V¤¶òokÇýâØ›º»õ®ÕPlßT´³²EüóSáÏÐÁmÀË(âC €øR|&f‚rDYÏU`=låÉ•`t£uA÷¨M•ÇÁúFÐHÒàw·Å«W+jøØ±ÏâïAÞÞ¼õE'aGÆÞ{²[‚Ï›wG¡£¿^ßHë!넵ìïÛŽi%¨/{*c!䟄ÄãÑÑaÀý@õ¬ÍïRáÏàÍÄ@/ñª2¿rXñCì’øØDWÈ9§À[¼7–z .qž€’GË¢5••þyª µÛÖHO™[3nJóoHÊæd;`³Ý§ÙÀÜ[qÁŠY¼¿iHü×(ÚëiF¬D49öÄ:Ä&®½ÑÆ|ä*™+`•^Ù ´¨z‹êƒ´[“MZ&Ö½'k èó"W®†Âfys @þ`ͲFT¶ª>ª _»¹g‰§d-¨=ªnmˆ6Kt3[Clhܓȅ¬‡3iéà˜l»ÏöØŸsw´€´=5§7yÜÑÇñ,$*æ×)EA2ÓP¼"§ƒ²ÔØo®ùA¸EÔ [‚…¢¿&ñfb00B §g|€õ< c }ªvVàèõxgˆÝ¥> Ú>1ļä2î‘*[Õ?Õ†¯À=Üý’{,ÔM¯÷c½½àmïkèÛ ârå%ÑÔ:ê-J »Èßs¾ žÚU¿N¬G@ów†xߊ àÆÉ¯³2g¨¨ÝÏ_«)ÉÍ@rHŸ %µ‹¶”\á+"u£×OñãwÅõ¢ÄII¢ç€ÒG³œCm3Õtp8ÔÖÊ °Ö˜“­Û+[Õ?Õ†¯@½E­¥ºÁ_ÏßËßüïûB¾íà\ëÈwl1›Ü 2]Ö–À“ë^äz2£™jÚíÀlÿ£ÞnxZ½Fm ”“F*þ›†J*bÅÇ«læKPOÅ^ŒB5ï³ÂW ´&t*2Ä«â ñ Ü€vzY¤œ g³˜ÇHq¤\îÝîn®oµ¢Š/œPPñÅñeñ¯+[Ý?Õ†¯@þ" eXåÖ6ó-ðtquå‚7Í}ƒûð†˜&¦‚¼€käpp”Øúk_AÒhß…ÞlP—ûʽ`õ¶÷± jRþÛÖ¥±Âðöþ§£64ñ‹>Šþ\r„/ -8A<Á åt†wýÃu&1—¥ šŠ\¾„Œƒ)«üKÁ9T½[æÃñg~xä1õ e„•­îŸ‡jÃW ·Õg賡lsÙ‚ÒpÜe³)G éJoØ]Ä>/‚|Q.äSµÅ›b¨mÕ^jØÊÜÝ]-@­ídðE&ðÛSë£+Žï1w™u Ú%¸7äÄñPüuàq#ŽÿòÒù<¹T~ â°øṘäŸü=oƒýz?› ÿ…œøID¿X‘ꥧzZ²‚P8ürx*œìtÜs¬¸—ÛÚ¨-!ijª=i#ˆVBçjà^^ PSn§CySY ¶Sî. ´…ÎMŽ…€—Z´Ê~ÓüÍqŃ*YnM³¶CbEäX4ÌÕúI½!ÐŒKĹÀØùþ.s‚\ d:Ò lãµ®Ú&`¢UÏ< ‘‘’òÀL7V%® z1ÕþïDÇ„ï 7†¼ã'¿:¹½Õ X ©“’ÖúÖ‚ˆŠ­â/Ë÷ägÀFæÉÅÀ3âa ÷)×XÐN8ß³O’É"ƒ_K˜ß£Îé ?4_³Ž‚nD´h[0¯O|hôÒ›®œÞsòÓ“­â8L”È:røYî4_õ"ësý"02âß‚9ÅüÌüØÁNvT¶Ú•Gµá+°læ:#ù±îá;@¬–‡¬– S^V—Í8‡†@ å€í|Ì –‰Â¶a®úNh 6û…€›dÅÿº]qIEûw›çšã!>5Ô&< ÌgŸ$ç‹\¨â¿î£óäÍÌ—?€íu;$uvNÓº@èƒòö¥Í¡<x<0èDGÚT¶Ú•Gµá+?[~³-Ä·Dîs¥±Âø ı_Ä'œ€‰ò„ü†@Œ¹üêyŽd{sPnµÕ±Ý3‘iüZÒüÞ·&{W´ÿ€•b݉¹¡½áº`¾œx,ÑhÁ5\¨ØÿÕÞzò°¬O_ðöqÿìlµ½}’–Añy_Ÿ*ƒ“™Ç]ÇÎk5ßšYÙjWU×ðS˜ÈCõENE¶A¤ 8/ð18‹Õ]rhë•_¨<Í:ò ‹_?”z—Ë! tSç¨WBê¬ô¦©¹àž’Ò/iÄ-õVÕV_ÒI&V´+{V^h¶^£I|Z¢ X…Æóæaµh!Δý–¶¼@^'ï× ÇcŽ)>+i¨ï~+ÞUP…­òb9××Êód&U–*kxëQk¬5ŽÖ:zѽo,>ú4Ø—™ž4’ôlw] Öé’Wü“óß´f˵`sÙji/B³©ÍV4º25=xάó¿åm Æåf¥ˆvd’Æ¯ŠŸ‰gæÈ½â‘ bˆÍ´u6¨‹•^@„#ò$ +~p¿‡ÂéQHÔ£+°“˜òu£Vâ5`œÑ"ñ3Èq\&[Å”þáøâ/H•5<]dM ”fM(œáóˇ_i‹ü[<­Ày•ã]ÛF  wÊ)ÿäüÎôƒ@ݨ¾£^ãÓµÔñPû¾f¢‘üËZŽnvÂGü—y_€p' (<}ºXs:ê/s[4][ îf5¤ßŽÞ×<µ@®”#xÐ ýý)í¿âGÊp/ÓÀÑQÝÏIwš#ôO!Ü'œ6ÀºÓšoýÑRæ¿ UvZR®f6!¾%úqh(ÇbGòÁq‘}Hj3PQk©ß€u§õµ4þ»Zò3ù%At ß‚ã)ûÛÛPÇÞhP½NТW÷y‚£Ø‹mExècóÁ˜TvY ¬!V¹ÕÌÞ¶‡5¸ïɪQc7Ô\ÚvkK é××–y HE~)  XæU¼4rø_vl‘üžl#DW®ïRÇVí`"¼¤œò7Áù­3àºì¿ï)ûW§ÊÈe€•mŒ6YË!¼ æ=ÞúbÃñOζcC¹›_84°ZZ·C ™¹=£-øvÛÚá¨{eý‹kw‡OíÞµ }äàGJ@/Ž_—8®°ÿ'_4˜ÞtÇ9s ã.µ.üÒÞM¯—:ä:YlmyŒ¶lçï¬~¹’Mü âQæñ¸‡8—8R!¾My |"T F«´MFVµá«’0å@™¬+¿ŠeL¾ $È•Gëôü«ÚYGÇù7¾e3h#µ)J>øtko?¨ÿP£×êß¾ý)—&Ý Mê¶Úì[0¯1“Ìë@ëc—ö 4?y¡?©óÒW¤víuõ{u˜¬ÃÖúŠv<ü:hþ-1è –‰¸XÇíCð¹È±A 4홤ï éÁ¤yI­À–°9ªâª®á-N¿HýQñPL:?Ãè+M8Ê󜞆Ìãô¢­6â9c@~¼`=b=-?Ñž yÜG]œëÁ;¸îƒYÝAŒ®wE­[´1 ”/€ [_ËóÁzX6“#ÀüÞÚoü¤ý·5õ§ï_"ûéPbª¸[ «UK¦ClSÂi@(C¿KúÁ+mcœã é™äS®Ͱ­°5`«ì?Æ!+¨ìùOcͧÌK`Ã¥k—­º 7ädþÚîk²¼Nop°…µ÷ÀúLfÉ;øuYîÿ–ßËÌ¿EVùÐÐPàéÁ¬¸’®4èƒñ‰_¸6ÚrÇF>’:d$5Ùd#\8°ýÄNï€Ú@½I 4 65*û¯ñŸ£ÊÎÒˆ g Ø<Îá;(ÏÚ6ºò!z2þyb˜ºÙϼ”æ" ¶ÞŠõè:ÆÕÑÿ”3Fþ£øGè˜ ®}édŠ z‘Ñĸ KË÷…GÀ±C¥;£éP'ÔäÞæ« ±³éGÍǃºXÝ©QåŒ~†*›áe_y¾l‡/Èž–}ä>y4ù` °î._–{¤Ís²5‚déÝï¾ìì/Ù Èqrš|pãü§ƒÚÿo7ZñCPO¿A%ú‹Ké òqy=wÞÈÈ17@þ¾R=ð#”vNÜ¡ Û€‘UÎwµN´ýRפ I;VÙªW>U7ÃÏŸŠÕÐðºFñF¡Þ &;›—BáK‰¾Zw8¹ºtcd9«ÃWƒn3üÆ· Ï•WÈa .  õù÷K•ÿ-g‰˜˜@¾Ìãè;Æ4(ïŠG{AÎÖÀW ´ Éók~Vv}³Ûý2)Õ—úte«ýç¡Êføßo3cÙPpCþÞ¼8Úmí¼"³Šï?µjÜçi =Y“ÒÛ§,·Í5Ãñ*X¬V+åF¶„ù{Fþ_S1f·Šôn§ŸèV‰µÝœù/”´ t€ƒkóê—Ç¡~Ïæ Z„†ŸœÛ½ÅtHë”~núêÊVõÏGµá‡ƒK,:P ò‹NèGš‚uAxlIăñäP’u5±€Ìþ)›}ÇAë¡Þ£ê ¾ ŹÕ;…Ì©56ÖœTÙêýy©²%Íï’ÃIN@ãâ&Ç›Œ„ Ôv×u©Së÷hv=ä^F38zmA³r”Œˆø~ˆ\˜xר Ñž‰gÍ¥]/4ìééÛ r]lB€X·ø;úJ0ë›/X¥ ŸãEÞ‚‘r»eÉ HÔÑGš½ ¸0â†Â!åmÂÇ 7+<È<´ò”ûkõ€Žã»5¾ø]Èœ_c{ÍÉÿÐw\ŨÎð€µÌúÖÚ ÑÇ#õ"¹P>¨¬°4NN8zUöz8µ÷ð¸5@ý\”å1@´ó{³®ù#XÝubÓ{ÍBÝÞç$Ûr¨wKͧӯ€$»ï9Ï# ÎTnT²!лéåpdBÎE(h<?Þ.©]3×C½YM{7j×ÝÜàH:š¼(¹ pc¸³²ÕúóSmøÿ%/å¯ÎÏ€£êpp>È5r¯ â±€—ÁºÕ:hÍë¨þP¢È‘Ɖ«€cF¿Ä!Pž¶nŽ×eœ¼ÔâA9[Þ fOd»Õã@ÝêŽ'm€¤ÛÓ§d¦A½§ëÔPß·þÖþêwUÿÇTþßåL‰@G>c)óx™é˜èü:XM'Ä)§ŒÇgŒ¹Pv{©³ô18°îÀc{?ƒ²ÏŠ'³¿a7û‚mƒÝcÿšîhÖ ùPpÃà9A½Hé¤t¾[ÅN #]Î|õ»šŸjÃÿ‡1tó<³#D§GE`ìÕoл‚(™âbåe¸ßv'»{ã^Ç Ž—*û®ÿ:T¾š*Eõ,M5UŠÿð¨¾Ì»ÑÀ@%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur4.svg̓әIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur5.png0000644000175000017500000002325512240014740024054 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>%0IDATxÚíÝw|Õþÿñ×™™ÝÍn²©$B(zD”""VEQáb׋" MDDAŠ ‚ˆ X°£Xi 5¤‘^6ÛwfÎßGnÁ{¿Ÿ«2ÏæAáäœOÞ™ÇÙ33g„¬‡ÅrP¢Ý‹å÷dÞrZ±o9­X·œV¬À[N+Và-§+ð–ÓŠxËiÅ üoõï³Ìã¨ñ5è õËõ 0Òõcúg ƒ²TæF»“–SÖ•Ö߯œiÞ`^¿ŒØõãÏ·AQza  #¸&º†Ä.…n‡º·ìñ$lNœ–¨G»·–Å:ßB°KÐPä,h™ßÊ2òž?’e{#g6q´*ç#¨ø±ôÆâCÊ µõòÉ#/Ú½·4dþ*–—U<{Fì¿£+82#£jÐ*6eªó:ht8æ1J~)º4””W–|‡lˆvï- iÑîÀ]HûŸ…’Æ…—Ÿz âê9NÌÚvpwOü4©roÈi»oØŽ7\G!ã®f¢Ù˜h÷ÞÒu†?óˆÂ}íkBäœð•aÊ– «< ‡ŸÍ~ðÐx]Z=¿< ‰5kÊ7C餒š"ˆ9íQXN²ßP5ÕT71†) wšï€öò3ý ù³™w7 >QGŸ? Ùž»ûHÈu P€ºFÏ÷Ÿ BûÖÿ²çúûö ,'YSš†æ1yyH/×{Þ+R.ç{/m-49’Ö1å&8‘“{M~3¨¾ª:Ýó%ض)ÔîÙáoY{œè_v¾G‡ŽÝ;õírO]Ó Ñ›Å:Ã7$Ï•çÉžàæ_ï¯Piè™À[àÞâìäxâýq ®¦àžîé1nñƒøª¦Wî«Ú‘lÿÞ'!n²R¤ÿÅé…Wå_ U‹«b«\ÑÅ |òˆÌ–{ ªm•Yõ_ò-ó ¤îy®xp¼lëdË÷ùŽö±²ÏÙ9æ(4ó>.ü"üwúWCæ7Ưƒã-ÍÏ®†‚óòf_,b/F´Gzz²¦4 Èiæíæ()+>vb%xÏô*šû“æ'Ž~ŽÉ¶ïÁ¦Ø×Øo—pÍsVBQÖ»r8„{Ïõµ„ØÇ/i¯ƒwQþE×·]õÊ&+À¬1÷™ñ \¯Ü­Ü 4ŽöˆO/Ö¾ÙS&Ê0øæzFÖœá` ©ïˆÝâô9^íµ›zÔûeÚL°ŸsƒC…Àµ5ó<—BÐî™âŽ'l4;4y4ñ1çp¯¨}¸ò8òÚaÿÁ…jÚz;Ú£=ýXoh+«xŒã-< dý|}4(O(-”OAd³B,Å­mÖ*AM‹c¯Ðnïÿ Ý^{ƒw+ØVi Ô8ãâ¦Ó6€ü>ñ$@ö'{•_®à®@«ÀkÑìéÇ |²’ ÊAúd…,©I]‰ä²™Ÿ@ýÐö¦¦ö†c’}"™‚!÷¯H`‡ùN{†m& ê ø­'®òecÍ+ô—¢=ÚÓø†t üÀfv1ä—l—÷eTRòuž’/‚­Ÿã˜= bŸë»˜¼>4üÕçÖŽÏqßÿ8ƒåV™ ŽFê`‘ ¶‰òM½ x¨½·v„Ÿ‹ÄGÒ£=èÓ‡ø†&A –B9ˆ¥ˆ§‰Ax@ÞÅTˆùÆÙ$&g&¿’øغ›› ö²ŠKª7Cé„Ò—+…Pqdjä|ˆß;ÊÙú»¦Úr{i·â v¢çqÏÍÑôéà ü? 9›Ù€"çÊy€Y÷uy¼LŽ×O±[\« í®´'µ×­öA¶™PûYU‹ê4(ÌËw-‚P$¸>¼’ŸIXá¾RsÇ­†âw oÈÊËÊ?)kí!Ÿ>¬À7äÀÄ Fq‚bÀ†ÜÅýr8—Ålq4äñÉ/$FÀ>É5×ÙüÞÀŽà½P1¯liEè##/EºAÌ—Ž£vbŠí›µ®à}Ê3¸&‚Cýýü‹£=èÓ‡µߊ ´ã9@9Ùí0@Îã%Þ»Ûv—í(ÄgºSc·ƒöNÜ&W1„.)´²1øôš-žm` Õß1&€òƒR¥\ âsg‡Po0Ók"=¢=èÓ‡ø†õSšGyB>r+9òFà[–ÒøDnf;h/¨MT89߉ù”\—¸æq†L­¼"^ï™þÍ Ï1RŒ›€ûÄ ÆX/)Ì"ãQ`´tÊžÀH¾Âzîìÿ;+ð I$ ˆ"¦EòÉû„€<A|)c8¨›Ô;ÕÀ>$î'× ûÄ‘ Ák¿ò>f¹‘kA<Ì÷â3 ]±äß ÍØ²‹2j¢=èÓ‡5‡ÿg€‚”ëêŽ|Pÿõ ¢¢ÏË{˜ ü]tÃ㮡 ôVª”W dzæøn#V_fô9ƒ±ÀÏL•}Ajæ0½ °P>efG{À§+ðÿH N’Hœ"‰Ôÿõõ“~f¹\âeª¸lƽ鲃2QâmÐGÔ^ìM€Ðš€ö}§±ÑèTÊùr0ÈéÆëú] ;›ñæUÀó,e9u÷ã[güÿo¬À7CñÀ}d‹Ý îe·ø pG,`& r›\Âk 6‹'”›Ážg‹ÝÎËÔbõZP6Vu¨¾Šn+.€Êòê&µg€¸L¬çý9õAq˜!½M¤ B£à A†¥‹”há¯Ë |Cñ$ÄV¡—‰o…hĘDëYÈréÊq?ÄŒ›7â2_Ø3Aã­ò%@ÁãÇ>ο Êle/:P#vAÂù±ÙŽc`ô ÷„ªŒÊ+ßs y‘qa´‹ð×eþ9IÂâ"b2õ,„çå<¹Ä å=1âV¸[ÅU‚Û›ç:8/âÓ#PÒ?¿ï‰G *»üheØr´­4Þ“\œð B9þ;áÄÏE« UÐGÞ‹<íüuY«4 IbH¼< B€—-¢8ˆ šrs™ÎBP>¸‡%ô»çÆ>í:¡¶Æf3Âsk¾ò´‡ÐP_'{Жkç¨H¶%4‹_ U!(TrUq´Éi{^Ûåà€cÑ.Å_‘ø„«nJ#Н„Ä×âQ |ÅuÄÂÀ\9S> Jce›rÄoŒo7b²ÝÆ.„ðùÌçàC__ßÐï^º”r±Y¼1÷:¶Ú»þq¨¼2¼×…2+Ù×¼I^Qß™‚hWã¯Ç |C‰$“"_ â€#"(T ’€a‚ ð4/€h£ãÁ·*¶-8îøØ¾Y£îQóMï¶@з¾ ~r9[¸D7q­€ÏÛ"»Àml 8 ‰”„kA—ëå V‰×Äêhå¯ÃšÃ7$H¦)&Le ˆTTÆ‚xÒ^àm>eœè%Al×Lç-àØ{… з=f»BÓýóBd—ÿêà!0¯1š»@ΑY ñSc^° †ØÕê9ŠÞ/hŸ7<û=<Þhã¯Ç ü?r×ÍáÅâH/ïŠ\\ÄÔOi>›ä šˆ"±bžuxíÝÀ>ʼnqÙAë«ýšK!4ºvŸ7¼ãüzƒ9ß´™}!å†Ä w/H~'v½Íùîc‡Cå슡åK¢]Š¿+ð bp™ÂÅdb0ÑAþÂAŽ€X)æð ØZ¬úh9öGì;A Ó&«_€ý£pIø½R³À³*Ÿ©[3 ô.Æ# ’Šã‡Æ= ‰³b;mP¾«¨eAxž¨ U®¦0‹y@åTD»8~VàrÖ/Kγ…b–á¨ÿЪŒú»*رƒ¸„f¢ˆíZ†:l:–Úǹ[: ÔÝó·*政Zý èýô,ã#PÞW¾VV‚ò‹$‚˜¨÷ þFfäÎÐ+`øŒËÌ™À\žaQ´‹óçg}hm(€Ÿ0YŽa9PÅ úƒø™ÛÅÛ@GÚÒ‰ºG LˆÈïùTne‰¶F5@˵³—Ó)6 ;„;Ö.õ¥Aåy¢ª'èƒôsŒù Ë+i öþÚGêq]ÊÔø³!8³öÙê È?+¿6¯4Ënvi³ö ¡Y¿´ÿë ßP†hN ¯(‹mÀ<±IxÀÜbƙׂì&/—7餒BÝ£&PZwÿ¼ò²z©š ¶áöžö°ÏPN(ß@Dó_8<‡«{x¾³•±ÏÈÙ—åWà<ß1Ëv ´ÌM_˜ò9fÖl,ÿŽ\w09û6ПˆôŠD»6VàZÆ«b58¿vvr½Z#›a¯ÿÒঌ™Æaã|£Äqu3z(—»8 bŽö£š êYŽLÛß@i"ŽŠq`4 #› \x"°ÌÌ óz €4‘ ʹ¢ZÙ 19쎋A¬õ—‚¯YÍ]•W€üDfš¢]œ??+ð —h)ÚCâ­‰3“<3Õ‰Mš«k—ùšA¸¥Þ^_ âžd`ʺ©MûÉŦŽTÝ u\mÿÄe•2ŒÔHþ.DZ…û´Ë{ä* Ð˜-ƒ§|!– úÜÈK`¾º<†ÔŸÐ/vuþü¬À7  SîQ&BÊ’Ý®r·?~!”¯ô<èíÁáË"=â ñ`r2ðÙ䀒¢öR»‚–k·G@Ô*Ï‹§Áè§_®}kèÕЋ Û™O˜Ÿ]Å.¾d¹À'|ÎçàúÉ^£Þއ”‹ä.¨9§:¥z(„g†+#gE»J^ÖçŸÄ(q·˜)"åË”_ rNñ‰»ààr+à†¦¾”Ézkiôâ'_Á^²Ay^Û¨µU·?e€ø^T(O‚¹%ò`ä9Ðçï ¥ƒåhù2ð>ƒ¹Îkò`6ËX MŽ4ú)1 *;¿•7ÀásêÙ-5Åv34¥é¦Ñ.ÖŸø†Æ2†q¿®†hSl•ö ˆ(ò&ÑÌx6±è)êž@•”ae‘ÇA¼ªUÖƒ:Ú>\ë r§¢ˆÁ^éúÖà•¡;@6ÿ.wƒ¸ˆB‚Ü&ïgOÍÀ-b›¸¦Cp¨¹"¼ìb{áhúR挖W3€IÑ.ÖŸ5¥9•Ç•O•LPʵC¶ƒ ¾(6@Ê#ì¦îX TSH1(+(·iéÚ V‹¶Â Æ‘ðºÈ½Ùç;H9Æ\nÀa:ruÏÊÖñušØ®ÖZj;@DžÜ²Ú{=Yy(|4˜í¢üyY?±_IV“AqÙœ1s•ÊíÀVÖÉY¿Mˆ *€×Å"åY稆n%"Œ¡ÌðOôfûZBdbøƒÈ"0mr•”@nb dµH¡'Èùr¹äaýÇà€Û|ÑèüÌNv"Xë•¿™øSP«µïmËÀ>ǹ:v#È-´PÒÀXgt2¯™O1e€J€ˆå;1]© !Žƒ¶×H2¦‚˜^}°f”5+1Ëç€gWúnq›¸I Ñ”&¤ÓåFŽƒ6Q©?Clí e-„^\è› Þ/}—ûV€Ü 7ÊÏ¢]¥?+ð§àX3Ñ郤{RV5Ê„ðú4óð<X¼Æû|´%•dPV*ý”2P÷j½ÕWODa€ã†ðhºg¯w*„s+óAå¨ÊcÕåÀÌa*%²h ÒÉ@ù8ZÚnÒÎÆ‹“ÆuÿÓžeUí¡x_¹ÜœaNˆv•þ<¬ÀŸ‚{}ü£ñoAFÛæ{š¯¯š¹ʵªvžQ ‡ÉI< ¦;@¹O­Q_­Ö>ËväSb¤è¶uíi¯¦‡vAa±eùïBe¸<±jˆGÅ"1 8ƒ¶âL›¥”g€³CÌrÇÛyvã;yÁ«V..Ž|äãÃÝÁpë›të‘ÀßÌ ü)8¯r¦;Ó!­QãPúä\`¦AuÀ[áïLa™|ÈÂ4V£ŽÇ§Ž[—€ô([•ÇwëÚ“G#k"WBÍÊW•–s̈́ڈâ’=@'ºÓä*ù)߀:V±)GÁñœý íLˆü=ˆ?ü×y‡×Ür1d“hWéÏà ü)hªú¹úÄ>»>®D¶É&Ê^ée$_°Ÿ@„Š@ûTÛ¬žö;šÝ ²§²^L3«®=ó˜~@ ¡e+úCÐQ“ëYzs£ùÈ;ä"ùˆ6´  @c:ƒèD-6Ãɹ&Ò/´Œ¯ô©Æ `!Ÿ°7ÚÕúã³ÿ‰Qbžx ”¿©ŸjA¤*—¨O1$ÓÈe?¿€’¡\«4íUÛp-äáÕ õ -Ó¯5rÀ¼¯"Rý.øÖ—o¬º–œ×8´öè 8kR§Û=ŽcŽrg'ýÍœŠ] Í¡ÅÚ&I©IPáúäÇÓtǽí¡í®N—tYi¤}c½ð_³ÿ[5¥3½A™«\­,ž­”Á` 3BÆ^y$òåÜÆ §Êå…àÑ|ý³AÉQŠ•5@’ؤ$CÍø’Á㠯בW“߇&¾ôK›LÇ ŽõŽ 5Óë JÕk«§Ö\GZú&»š­Miíî }⺮ëð(tí'@ë§[þØÌ ÞLº!¾hkg(@<)ÆÐĸúõÇPÝA{6¼,2Ì/*·WÛ¡xUñº²ï ¦¨¶/ŒÁæ'fŒÌfÄÞçlㆬ²·dŒ…>㺦¶ß‰£m÷ePýN±žTͨ|ª¢ôÉú|}y´«øÇaþü]|éÞµPvVqÁ‰é÷yLÛQH¹,16þ"°]«¾®võmuˆâ–›Ë¥Æ7‘~úE /6÷Ê k}ƒ¥õǺ Z‰ÙÉÛ|ªÓÛÑÿ4~›WT†šÏ«§yâ@|(6‰w@¤Ó˜4~‘ÍW ”*ï‹ÇÀ±Î~6ÚŽÍœ”>’Þ9¡Ü{7íöï,„Ê•[*FF»ŠVàOÁ¸O<â‚Ð4’o?¨KÄñ#ØÎ±Ý«5Y)3doIrÓ òjhB¨„Þõ¼à-ÙÓØb¤'÷‹<ù²ÝÁöBÝQÙN‹| UòýU;ÁoúK5Àtf1°ãÀr­ü˜M`Î5·É ÈÇäV@J¿Ä/Ü—€«Ôv¯@ɤ‚ÃÇS Pè›â³Þøý?¬ÀŸÊéÓA.6^Ö‡€4å óLçËÉ,t!@F0ŒÕ¡ÖáÕúÖ{¶·5˜³b3 ¸¬¾½ú©ÌÉ[zÕùuGåó s:„²C‰¡ˆ|«ª_¢»èÁY€Š†ú¿ú$@H&…$ÅeˆͧÌþ`6-÷Ïc‚>-|OkΡî #ÕÑ.jôXo¨Á›ôÌt#¨_ú#¡wä,ãC]Ä nLYw?¼‡RJ@4U~P²Ai¬^¥Mñ¦øžÝ ´íŸ<ö­?¹D޹C÷™¯CÍ[åç@ ©$‚º?¬†ýTPP€28”ÇÅ›r*hßScx!<6ðE`„ÇGü‘À¼Á›Ñ.rôX«4 ȶ2I (iSüX±€êÇËo(9i) \£ÀÙÝ1Ä–Ò!¯‘›~o0]> Ž]8÷@|›”‹’<x_ûL›úÖ¨'ï]¯¯Ù¢þŸùâ^¥Ø®t¬°} ê7ÚFu ð­ÜÃAêÞûÏb­âJ–ÐIŽ€X[ÌŽ· ÉÍI¹î3 ²QÙOÅ—ƒsCÂåÉAóóšooÞ¹þïgL´«ýû³Îð o·ÀÑNG&ê•Wð6´ÔÓ½I¿@\ç"ÇK _“^ºª¨Ù_6ãkAþö`*æÙzÝ•§ÕƒÖþ¤oeKù ÈæF½DÚò((EsqJ‰@ îÿ± a" ¿—Ûù$ÿ&Ç‚œ.Ÿ’KA¥°þÙØºí·ÿàÿ“ÿïä ¶PŠ¢—Ôe…¦b\ wÊCÑ.úïÏ üIËd•9d™‘ ¯JÈ0—73BÜØê7›4ê·ÖûOÜ’Ï_·ž.ó(àPJ9•@˜úÿú¾ÿ«“íxðËp1í€X%FzÐ 3ÚEÿýY¯'Ÿ‘¦\ òk£³~>Èñæ!9G*¿è¿9ëþžNþáÔoÝ'¶‰çÅD`¡’$ºŠÖbp\ 3¢ÝÙߟø“–ÉŽÒò¨ñž‘a–%ò>ÙP‰§Q´;÷ÔÔ]˜RQzd3ÙCÞy'ÊË ÁÛ<²“6ЪgëgÛw€ØëÝ3â'G»Ó¿?k•æ¤lc!p–\"û6ɹ€Îdîvçþ‰“nqã¥0Ånˆü¤w3vƒ§Ø÷DÀe jóÂNˆY›š•ÖZ6ÍRZ¿±I±ÍbÇó?¢œ.¬3üIç Ù<‡!'=mÔÝ·nvçþ‰$≒G1˜Kå6)Á£ûÚ@ᘊŸ=Y ¾˜Ø*­ ÒŽfî:ã,HÉJ.Lñ€ö€6RëíAüþ¬ÀŸ”%ÉÝ îâMÚp˜€ŽV·ÅÝ„±_¬â±á„²+›ÔøáDzÕQßmsu’-ö¶ÞÜáBh~Q‹Ä–í@=¦¹µ3€i<Ä”hæ÷g¾ž™!ÿ.?…H™þñp¯¼‡§@Y¤\ ˆ¦uÛaª_ù½œœºÄÔ]ÐRf‹Þ"Œ— ›q-Ôôªíâk'6T]í[ þ°ò³s4ÉlÕªíDhZ¹©Å:ˆ3ÜÜ£]åè³æð'µ}”Èéê › áo ‡9ÂFž×ÏQ ÞŸÈâ.YJ5^À¬_®üuíü߯¢ÿú½ÿþûF2 @¹‚1ÑL1û@íhÿ3ÁaPpi¹¿¦/ÔÎc¿½¤ßÖä@‹'¢]Ý?+ðõÜÏÆ¿•p-dmß«ÓÙ ôé|Þ#å³O¼ ‡òЬ¸ÔE±)Àv‡R&Ú}“V¥Þê Ê§Š ÊÊ{b)¶‹\à"Tl ºñ0AÉRƈ3@Ý®,S‡ƒÈûÄÀ[¼$?óQs‘<Y¡âpð©ÒÐ }¢6*Á;'"Ù˜®>É!hfdŒh¹Z|}ÆY­—CâwIΤÙ8ÿûjüuY¯gmÈþ6¤÷nÒªi¸ç¹[ÄàÈÓ‡:çlƒ½=v¦üô°2RÈ—®])ú«—=Nöo´ÏÔOAÙ¡6V‡‚¸VIû€ëH ”‘Lg (kDGÆíµ…zˆ‹D[Ñä(fË.`t6¾’# :Ù+ü PÞÃsžÏ~^eþié™3ZÅC›KÛ ìü9´Îk›Ón8Ø_·oµ×ÉѮæ—õ¢Ý‘?i—)²7ø6û.ð•Aí¸šÕ÷ûÍëŒkA¯Ö'F†P›@¿+„—„eøe0û˜£Ì fŠQ ¤ m!’™¾‚»½_@p\ðÓÀÃ`ŽÓw€DÞaˆÊ8¥5¸'·Bü[ ÅIßBLšë>×ÕàüÖu[Ü;{»{’»¸žsmwmŠvµþ<¬Àÿ—äÛŒ"‘@ÛàÅÖÃÉáV`–šf1p5r!JMAXV_¡ ¡•Áqü>x[p ˜ËŒöF /^Æ€²GÉV{ABaÂÝ ‡Äó“&Þ öa¶—m­£=ê??+ðÿ­“P@PQÿžÖ0aÂüã>25ÔàJ(æPL1@ˆ@ý~“…º¯à,ºÑ èNz™d’ɯ¯·üW¬À[N+Ö…'ËiÅ ¼å´òÿó¯ÍQ'>Ë«%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur5.svgñóú)IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur6.png0000644000175000017500000005310612240014741024054 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>TÉIDATxÚíwxVEÚÿ?sžž'½WB ½÷**H¢ˆ¨Ѝˆé ° ¨ˆ‚‚…"¢4‘z/¡„„Þ{{úóœùý‘àî»ûî®ëº/âÏÏuqÝÌ™™ó=sæÜsÏ=B6ÀŸüÉÿ(×»ò'ÿ—ü#x÷Ewª»êî«Í©ÝÅG‹ž,ü .DC•®òƒÊ6 †ª1jãë]Û?ùoñǼ'N =èM*NU¤@òªsÏ4†m÷~7|C lÊX¿ãë›áHÐÁG÷÷…ªû«ì•[@}P¬Îþ«ò$’?'~7<XÁË4iÇlZ›Ù?9ç9SW²Ï-8¹¢¤÷Fq4=´×ð8®VDç_=gw|´Ý‰ùÏäkþª@@\ïVýÉÊVðŽƒŽuö%³#{Uv2?›óÜÕ­ [諾Zu]>:N˜aï{é•Èßœ~âÒ¸t9yß™ (Œ+8\0<+<[=‡®w«þä?EüQ½4%–4)>{ŸßÙgGÜ'°ƒ¸ÏB>÷é>Oy­3} ÊG"AXÀêpÜïì%M*ŒÕíàHVJT¶üÜO5¾†¶¸Ór÷°N Ü¡qil@:Ùä&L˜®w«ÿä_¡½ÞøoáÞázÄe€j{åm6;ÜÙô ˜¿5.2¼eç+wUo„üÎùí‹‚¾F¯Ó.‚&íã:6zÚûÇ—:uóLù«åi°íÅï»~û04=Ñ|~«÷ ¡G³ÒæUb 1…ü)ô†?¬àå‹òz‚ºO]ì9¼&`.(»•¹Ê"p.rutŸ†ä;/\¶€«§ÓåJŸaæCæ¶÷pä=!‚î;Í<å8œ9Ÿ¶#ó!ÈŒ—§==Àýšc”ݵæÆ?Ä¿ ‘™QÇ£îãtã|ãœÿ¥B­¸‘`{Ûv§­”xŠ+ŠîÇ{¹½5hОÒ|¦Mæ›|BÀÁ€;À8ÌØ×8àz÷æ‡?ì^IRìJ[Ðßdhjt€Z'§2”ÕÊçbð?áÛ ª¶Wö©i 'Gœ<|~ì_pàØq”šK3+.CÓAºDNƒA+zº;ô…€×5ý‹à¢é„÷Áûে·žþ¡roÎÉË–àQÜ)î -²L–¹ä’ööÕöÛ7Ç’ »ýX¸õ|ûÜWñŸÏ‚Ìëïÿú~À´o:äkòNçžwûˆ{O4€îëÝ»7.XÁ›¯xÏò6Aâ-¦´>Η8©Í…̧óûï Eˆ¹3ª4| x×èhgBê¶c{δœˆ«Úl/°‡:œÎ àSìg¼šöŽ M‚¶Jܰ¹±Ö¼3¼gW“í°ß+©íÞ\¨‹®­©ëÄC4dê2]] ɹ'KŽN€Fó|oÒzASBy/ß:ÑÉ™ŠR7©ÔgŸ<úÅ~-ì}ßæ½Á:Êú”u  G÷Ç}/ÿ÷ÑÌnàzWä·F ™«Ù^L{M‡Ü‘ÙYáìÙ’Í… ª$äÎÀA TßJ?¬÷W¥Ô Ü.•¤Å€:@{ZÓ Ì{ü½|¿…кŒ @ðYì}Ñëð¯ó¶›;‚©¥>WùŠÏµ.š Õ³jÆÔ^Ïj©å0~bÚçõ*¤?žÖ+í ÈÖ_™w1:|oŒ¼¬M*ã*VÀUwj@ºìµ…5IPÓªú|Õv°¥Ù»Ùfƒêh§6L’ ™†. i£‰Õ4ºÞ½}ãð‡áu«´“µC ¸WH»¦ ;j ] úŠu§s'&>— ñÑ„·C›˜vGZÔ€i‡Ï§Þá¢ÓÏ^p™~GOOëëQ[.xVx©Ÿ‚/¦ˆ•4Ñï^ßïá–÷»~Ðæˆ8l~YØáìGúí3Ã埻 ªVMª —f˜v?¸W¨¹jÈ Èx4÷ 8¼eoñ‘£pȰ£6)\%·—XÁl[Tµ’†ü¸yóD85íhÜ¡žPܨ¨ 0œ:ÇÇoÉ×äÔëÝë¿þ¸/ÇI<ÎxPnQâ ©æ'í.Ÿ‰-ÚE šˆ1L= ÷ë—BÀ­!£ƒvAÀøFŸD½ ®gÞ¼p”x'_¹<N/m^×d´Én[Õ²#-˜çû¨£Õ(9 šç4ùÐdLTxèàu“ñÃÈÛ”~þb&®¬:kÕ‚8,Ÿ–m¡4µÒ¯&B’"—†î…¯´ójQ9ÇO$œk ©’ Cõ×ÅËË@£›Úå·œ¥®ì·RGÃ1/ë¾Ú‘и¨Y÷VÞx¦Ù#-"À_|¯wßÿŽùÝ ¾vfí”ÚéP¾·,¹tضÛbmUòU艰»Áï?³_,èNèŽêÖý“‚V°–ïÀÏ7`_À›P×Ò¿c@T7©{ÃÖôßh š7 pð:hÓ¯³¥­ÎfåËŸ¥ÏÎ/yÎFŸ8™¼bÖÄôŽ\ÁãƒÒü׃Ôz–¹ßi‘ª”à¿Å'Ç{7úë—€ý'ûļPñƒšãPþf]cû>¸q¥Mí%ˆ×Gl š]ŸîÞµc3¨n—y4×Ê¿LÍÎh·Ú>±[Àn¾C!ø]}€v?¨ÔEêGAnlšõB¸Ÿrs<6¾ÔÄ‘»¢|¢V^ï»øûãw3¥q¿àêîÕ“«–VùBöÉŒKéþp¦ðX¿#ap$jï›»LpqPòÜsM¡ìÁÒÍ¥Oƒ|ZN‘/Ç9Éé¿/W|*ÖŠo!jOô15:5rK4ûSÉÐòסBTŸ­½ !냞ð‡nÕÝ.µÁo5kѤ%Tç{fy¦@Þ´KyWÎCÙÔ‚Q%£ÀvÂær«YË zÒƒöàžãéèYÚ6šW4 ´y'adl4Ûó\ðNà[狜úF`Lí´²|¸ôæ©Gœ‡s«Î‡´XñšÏNHÙpºûÑ»áâóÉœ» ¬›­.kkài^ãÃÿ¥à lbD‰º+ú(„EmԲǔL«’PuKíMÖÏA·]û‰&¼/™_ñj‹¿Ý‚E x ÚÂGJ¦Âyy¬èô~¸t>õáôç@¾!??(¹â$I>Å †Š¾teªâ_@žècáñÐqV³ÃC­W­¶vd¦ä/\®rÉÐKö} ›µ½¯¥/Ô”è—ë$ø$>Q¼’×íîqðm8³òT÷ó« ‰¹'¤)$(a‘~Ó îÍ¢¬K°³÷vãÖPòUI÷âS×ûîþ~¸n‚W?V—ª¯AYLYóÒ]P¼.ï¶ìPúTÎü+Á™½‡çœg3Žn?–¥äUçÖ_¥f³{Tì,8¹N¬?vöÈ>(l^¸·à~p÷q¿ì~ï¯.ÔŸþܦGMýLãÁÜÂÇËo7Ø\ž÷ÅNp>¥ú©A>!Ãe-hÚ4ÍDh6µå» +!¡K+ïÄ0PïçYÞ…ô7R¿ÎX¹¡™ër÷ƒ¼(ËÏ€ñ‘²O7ì·:nq^Ũ4V®@‹6Íïi2zvXÜr 8.… :•ûÊVõ‚šEÝÊž÷rw‰çQ ž×X ¢%Mi (((€ =p§»÷zTðÎ5×yµ…A{]é|ŒU†gõgàx£óŽ´îà¸âÌw½‘oÅŠjQ4?Òä(¸?5™%`^a9nŽ/.=~å!HÚµ³â@Tµ)­ê±íç hòzè9ß½¹4%ûœ€³wŸüðx9TϨ:Yõ xVxx¦_Gå]'®›à=]=.O)ÌË7/ \&뇖yŸ}Ø9ˆnz*øðnM³MgÝåöWÈ_ž¹4W…°Ï÷ø¾ ]ßKµ ‹ÒŽœö®ûñ…-åp¤Ý¡•‡ÆƒcŽc‚}ð_®ë•o>bއ˜ÓEÜãà\+7‹¹PúmÅëUÕ e½ÀØU¿D_¾aÁí¯F—#/€6Êý½ûe°n(ù¬ì=¨ø°ª]u8¸ ÜÄ⽿o¯ô’äÝ óÕöÓ,ƒˆ½!Ç?ó[¦³ÆPo½hK€ê°Ú—ë–A“oãG4zÚÏëõSg¨;¾)x-xújnÓmbåsÕAÅü [/ß ùáW»gÛdû4G1Dµ ¸ƒÃ ¶©eï䯋~œ¸u.”ɲ٥=®×Ý¿~\¿9|ñ4‘#Z‹»@D"è:­6[÷ 4jûxtˆ<â?Û/ä¡2¥b\‰M HÛ±ºM֣Ш[XJ`DÎõSÛÀûœœb €ò›s]¹,Ù±{ dwΓùhWhGiƒaÙá‡Á³œÕʨš]ëcÙ2[Ê.À–ËÍÜ1ltðAhsgç¡mºƒßÿßÁPúdÉܲajK=Ÿ±,•–"kPV)_ˆ)ß\ù#8 J¸(Aÿ¶þ íjÜ<à„N8 5=êâ@»Cw‹þˆ0ÄVG̓ûYtPž6Ïóê º®÷L0N/þ®´?\wÚëB¤§6ϸ¦× }ô qãCð#´Ìô Æª£ ç圄ŒCi÷^î¥Ñ%¥%®Ÿÿ¯¹n‚×,ÕФ@Ø›þ‘[@w‡é#ón(TãUw3DV4ÎŒ~"?hüM´®j9Û3 r[@qeQ×’ OÖ…éÖ@‹ï㟌ií¶4 ‰z?Õ~âʇ‹}Ž·>èç÷œñ:) È»Ð¿°ð [EÈÓò=Á}Ƴ×cÖð£Ü ªTMòfþ1hH@tXÓÁ§õ{ðFä+áÕP²²jdí:¸tîü¾ËÀ2¦Öb™ÊÅ¡üøW ½xíFSXÈG WÉ©…ÈY¡O q…1"@íIK+û¨+±v³usˆOï­Ðø‰3Ü`¶!¤=¨wˆ±üß·7w´ƒ¼‡“¿¾<RvŸ}üâh° ³Ž·¿>‘ÞÏzuƒØfaã!*Øÿã0ÈÞœöHÊ#ñðÕyé7ƒ;Ù}Ô½ x…¹Ìº^ªøïsݯ ÕvÒÞ ‰]}›YÁë9¿Aë oréÚÊÃës&r=„%lŒëµV߇¼ë neÙò2¸¢-l@úÒD²ØÆ 0xÍ6u‚¦CbÆ…Oƒ›/uÌh>*Úg?zå^Ø^µ9Y–!€ 5Èó.˜ß2®4´N‹/Åë@¬ ý=:»vø¿é×Ï' |Ž…/Ñ€{¸"•½Pœ· h8ãl£ì}€wE‰8ÜÐHÉϱ?s†+2ȤˆrðÿÁû‚×ëz4à^pZ¾%Àõ£ë÷^0û·ñ½zÌèñLÇãàóEb§¸£Pñ¢×dÓc¨Á Zï²×* Á6$ûÓü×2ßU·õkûQØéæSq;¢N†>ŽcÕMJgAñšÜ'3« ú‡ê«ªÀãíéà‰½^ªøïsݯh/%:t ¸´g/z™¡|U½?˜Ê¼Ì¦aàsSØÔà5À\ÿ½¾npß_›h™Ö;+ýªæƒu¿ý´ýfð|¨ÆËÛ@Sª¬RFƒy×"Ã"{†õ¯žQ_†O÷"ÿZˆ“"OìßO œ­À5®`PQ¸8õÂÙÔ³Pùju‡ô·ê®ho¿ æU¦×¡éÔÈsÁO‚zʪ¯§Ÿ¨;Öê¶Ö¶¯Í¼Îªüoêîº]ùµúW§fµæ!M 0–yÍñî:ó¿)`ïâ|Øs?h_öjaÊàÉ#ÂæƒvýEûPúJ¶)ÿnÈ";&o¸Þsv‘&®Šã ºÕéêv¹‹Û ù›ñ‹£ß…íbòÂ^‚2}Þž¬iPWW3ºÊJª’¯XX"4hP@¾._U׃²E¢ùš®I|)îÄnMŠRÀ¾¡.Î2 .g¤¸ÒÏAÎÆÜ¾…k€L.“¼Çbñ*àAE¥~ÄWøy¬¼“™òÃD7¾í½š`ÅšŽÊ›B¡²\¼úº&ÚW èPä³aÝ  KŒ'r.x¦j'hKÀt‘ý| ž™e“+§Á•øKÉió¡öîê¸ÚC _ÄŽ”±J¹ò$n‰õ|¼_ÖäzÔ‘ç:›åÏ”e—–;×]ç¶ÔQGÝõVÇoÇïFð!A‚¾€øM[&%ÚÚ vÈUšóڡЬ¢Å ¦y ;løª[WN­ž%—Ž¥¯€"¥`Zñ`9fK²;@<'&ˆ‘Ô Þ r™¼"5àïí³Âû´±%–Å¥AYÊ”êí<"UÉÈ÷P¿åÑI´¹Yncˆ"RÙ Æ Æ<ƒ’CÝÁ3ÀI„+´5X‡—­¯¸ e~¹ ÚCírË‹Vx´žµª âmñ²˜à'|ïú=°®q®îî$p vÝìº ÚÏ5>ÊRÐTj¦+M@öe¨"S\{ :%rjØ3¡irã³à08\½u3µ%ÀWÎ1ξ ê*ü«š€%¹Ú¯öX›9¾pÎÞ`k'äÛ¬€{ùÞç‡ødÊ´Ô”o ëáÌ5ß~øáw½ÕñÛñ»¼©«Q+ øµÐ¡›A½MׯTÊkúxÓ>ð]xÂï*(‰a„Œ½ª<®«ò·fÁåvÖ§zAñò’ܲ@Y'Vˆ§@ô½è ê©È¦`èkè¥{Â6- À;\)PÞ¾ê–êG |]Õ‡5ËÁñ€ó— Ä^±Z¼ò WÉuº:Ö³ ü‚î hM=-”¦wƒq2WDCÉym GAæ;™›ò¶‚ÝÛñœó1O‰GDG~: èÁæÙçQÁý…ûUÏzÐ.ÓLÔ\e¹2Nñ¹D®dˆé<ÍðM7?áÕÞ½)x/è§Gô ír–é>S?P–y6¨ÍA—^Zw*×—|X6*¾¬ÒÖ€Œ‘åP3YÅð;å3Çœ áÞSüÞƒò æ¡ø¶‚.yÃÀï.w[Ë“×[%ÿ9¿Á_C»Lª{%įKh†æçüª¡ä¶Ê7kÖ€ÉÔ.`?„õöÛï Úò‰•v8uï»NL„Ì-WoÉò ös¨À† "_Q²Ÿ|ÄM¢µˆ†øüF½£¶AP+ÿ#~kàüâ4cF4”]5¥º(Éâ1pâÄjoµ¯|"žˆh]çuÝÙ¾#yÂÜ!·CÞóÊg‰­Ç'ŸMƒÚN5+ê:€bVš)E€-Z@[ÿ NR“ä1P+xJÍimšf0h†*·(u@…”‚tÔ__.Po—³ÀÐÁëUãPMjÔ!òÐô‰3Ï9”üÁøŽõ9[ ”çv(ü 7 +5€Ì“¹R âC–1äù‡A9$š²üÎyõÖÝ¢ÒsÜ™ U1•Jex²=vîz«ã?çw'x½Uß\?Zš[MjÝôM}XÙCJíU !¿Õ‰‹ üžÄ§âo†šaêyó³7ä)P \žtå*d½š3$ ¸Æº’<7r³h& u²-·’ª| ž‚Vc›m|ÂmÁ¾*œ¼ûBMj?(™Yþ]Uhzköhžü¦FÈÇåË`J2®0œ†È`}`:øô Ÿò8¬îÖîaPr9óÅÜŸÀù•ýû0ýEµ¨thQ¨¼düQêÙ/A7^ó°öQPæ)B±9QÄχZ¢¶€€öþ½}‡A»Æm­#Akô=áÁú‚ò•ò<“<:õ ¨Ü]¼¥4ÊìeO–Ï&½d<0MÌσ\%«d"èŸÒÞ®}·Æl‹ JSç Ë 8{ò«g?k¡åËÍ×[ÿ9¿;ÁkæiiÞ…ð>áóÃ?ÝK^-|s¾ºâÏ4Y÷8ø_lÚªq Ø&zw1¯oÿ:¥-']ú0½œÿð©[ÁçºßU J…ÆG9 Ü+Ÿ’3Aô:QÑWÃ&„là™ÍüšAñò²n•OBùÐê~5.pD;{:/oò_ƒˆ$’P©XñM¡BÅŽNŸÎÞ›+Àv¦ÈYòw*L+I†š uÏX4@qDíh#š<.”‰ÀZy«ÜÚ9ÚšHÐ|¤)'€, )ág/|AΕÁÇêí4‰i‰«âïãÞ¨náÁàènª2‚îIŒ(`}°zQmc°ì©©µŒ^•ãy èÏ= Y#å жԎÑdBLEøü`€5.£­+\“6çòp°°°»ÞêøÏùÝn¹†aµéE¯íàûrÀä »Àü¨÷í^ÀôSȳgÁÔ/B =>·×õ³Ü eÆt‘Õ Të¹õ!ÑÐ5¯ÓãmV÷kÞ[½Â€ÉxczÒ‘æ =§½]ùüòí•¡%Aýü‹ úBmaÝ((:X¶°b„¯Î tX¥,P¦‚ÚR}]ºÖº/µ1ФC³=ñ¡Pê}yåÕ©ýÚéW·ÃùçO óÈ Ë  Å€„›ã’‰-¨µj7i¹O0 t_hßÓœe£fˆØ $Ñ‚1€ŠŠ¹P®’ë@3EÓC±€÷n¯ÛMÉ`|5è\À{ ‰òÿÀg:ðy©®B5Èõ½{¨­ÜgÜ“@–ÒçhÅPɤ’¢ «X :U»I; Äu§ç3p©¶dû$PcQ¡¯*ËýU?ÔôÞ¯‹—€¾b 7'DÝ®~ž6j©z´fí§š1 Y«Ü£t²É“Ôð*IÓñ¥\ÎWÀbÛ^™zƒþC¯SÐqŒu¤;ƽÔ¦îï=.“ ˜E0ü%Œ9O–R ô•OË…à{Ùë~c t›—¿‡ÒÙE÷„ª•ŸUíºÞªøõüîï÷°Ÿ¯ßZ?¹!r"T4±:]ÏjÎk+ ºKìëÑI`~;azܳ`t0`¨Z¾³} E^.½:Jýòî-œ¶Ãö,{È")e,ðk؆Qú›uó!8# À7´Yš'4'ÁÒÙZk“Pù^õþº·Àõ“ë)·|&Þ3@4ÂÄEn¥tOzõ3Þ†Y¾¯ùLO{ûwŽÀý”í^[7så1Yì#ð4WßP¿µ³çõmÐvÔ®Öz²Wó¨âdÉ<Šø‹àÉìã8ð¸x›—ÁPizܨ€^šö˜îχÌãÀó¼g¾úÈ Õ¥æÕQñÁç¯Ê˧„ ·ð³!äÀ¿ µ*x³_#Ⱦ3#(ý^(på‡çþe÷î÷Èï^ðb‘X f‚ö„î[C_PßT¼tÍ@}™xE ÷úŸ>ço±÷|‚ím†5oÕó´s5€×3ųÊzC–æ´þbk8““~y?¸ò\Ñî l«Ä3@!åT€þ´¶T7 Z½”°6î]ðká³Û<Ž}“Ü=e”µªêWÝ4k•[` ”..ÑÔÒ˜ ¦÷}v{Ÿù•­Ú®[yuYm)Ôí´až£ê]r¨M=ÓÕ–àqxnRãA7XÛU³´){•1Àe²È£ÞKóW‚çIf‹EâU0òzÔ8 ^^ŒŸ€û’øŒ9 >.õmàcî—ù€;5Ô»G U^5uXåZ¹ Ì=MïŸß)æxÓb¨t”¯-õƒêÍÕ«^½Þªøõüî ]Ý)]ku6Fk‚5Ò~ÈÑš5I<Ôd<„Å¶ê•ØÄžÐÉAÛÁûG§ ÓR^y .w¿Ð$Õ œO;ßp¶gÅ· ¾#ÈbP(åÊ6h#{Äå@È”À[ýo†3§Ø®œ„²5+ª“7Y¸l™Cð²-Ÿ¯<ïæ¶´-ô®ÀÓàÕÝyÅõ!”z²,x Ò÷¥¿œý#8Î;|Y •mä“àq¨Ï¨VÐ|¦4R*@ÉRÞ£@–PA5 þÍ i¤rÄ}ŒàПӥêžÝz³~xZó0ÃA,½ Y Ë¡€;v@4¬\£!…ŸL#“<жÒnÑܺ[´W”càècý±î¸æ:üí®ë­†_Ï #xÃ#ÆTc´XÖz|›s bêäÓ2ówÝÛZU³"5ý0v D|ÐrTÂ4ÍŒ1†h¨ëSl/í•û3Wçx ²iÅÌêqà\áÚä ìà$É è”Ýb!4Š‹ ,ÂÁ[ŸZCÝ%Û-Pj¯¨¨êµ»,Ë­> §ó&ƒ\É[,ß$?—ψþ"ò‹ðTð!~¡àPZDÆ48Ýä„8Ö,‰ÖgAŒÅÛ ©3ÔR¼ð:Ó]ô¥~*ó¿o9qààç¥!„Uh@¤ 0ß Åð0TÑZŽ%P°£íÿ[¾ĬE‹x“휑N™b¾ºÓó£Þîyø–M|OýI+7ÐpÃ^gÕ•ë$DOŽ~/¦hÎ÷›/Aa]ÅÀÚGÀ.{É#ÐrUó>MW@ßž‹;«` ;<´yŽjg-¨MÓ‡g‚ãÅGûœ~ *Š–¾JŽrE¬ºÑ––À[Ì`24^u6ìKè½¥ÓúÖ«àÊÊìûòÖÁ‰¤ i©É GÊçå,eâV‚×pó­&ù†4 ü4M3Ï@u¯J}õ!(=œóFÞYpù;¿q­åˆÒX9ŠQyS¸€1ÜA û?RŒ!†`/{Ùî7ÝÝ+Á=Ý=ßõ(£8Æ Pìb´ò"°K$ˆ€_üWÃó°àE$ЛÞÑGúz^éR?ð¼ ª¢F©­€rœh¸a¸a/¾KÅG`zÝôˆih–ÂMcÁÑB¦(Áåù@އ }@´Ÿ¢Ÿ‰KéÊSQSÃ÷€1I?JŸžÝ¥óÊC!uåùΗGAU·ŠU'A™¦,ÐtaÀ€õ‹öD›ž5Žé¶ÚÁõT^¢g ç­Ì Üd(ŸZ©V•™r1Ÿº†Pm}¬Í?¤;½è ržœÉ`›mëgG€­Ì~´—y›E ¹¢yV9â¸"Å€7áøNê°ýãâåTV³4o)‡Å`ðÝäõ´a7ÈÝn³sT¬.­öõ^u¬úôõVÇ/çw¿ðô0Çù ô½ >YÁo‚-ÁàòGœãEçn02›¼ô!šF4n •a9çò[Ra‡’1`é™ß¥(ên­x¤ª83\K]£A<Ï'¼ bœ\!©Æð¥áoòyPÄ,‰¨ ³@ÝZË{¶*Èœ˜×¿(šÚc/Eî“Ëë i˜Þ7 4NFÌú\0ÙÜ=/ƒîñ¢¢R7œÿüd«sÀ¾ÚÿqßK`xÚ_iTS „Òž€Ü~Ñ—AÜX‰Àö¬5жì/[ëg`~R>%;‚&_ñŸƒÈ×´V^¦2˜‡5üãòe ÂS ª¥yÂæøõµ¯sŒ]ù±ù»ò¿¯Ó^/G},œß?7Ìÿ·D¥Ä$4jqö¦9Í7AԪµPøSéCM!pIà~¡ïˆ~%ÝÛ‚Ÿw«öÍ‚ ¢FgÖ¾ ÚI¥+>ƒÂŸÒwf¥CV“¼Ý…EàyسL½¢H\»A=#=2 =õÍu/@ï“Û@TQØÁ·Â™ƒ—v¦]‚üϋו­×—Á}4—”Šp(Š20|+JytZfY߃Ìn—6\e E®ÒÉ ¤k>Q,À#b¶x ¨£âŸÆ¡ÇŠn´¹[.d)¸¦ÛË9àÞl[ãøxŸ·ùD•rDÓxJ<©œôx°aùÇÅKE¶–wî°Ö¤y"Ö…¾ ž`ç8k8ä¤eÝ•ù8';[;ÿɃó{ã†|Ð;_í…ˆ§¢6Ew…RMÍfk>TN©M¨ûLßUCÄÞÕ‚&¦Æ CRxjh"4¶CöÈœ~± ­'¤ ½ÜåªÈ,ù±z“bTŽ‚Ì•fÙ”ïÅóâ;üj€šö‹ÕG™!""tUÐQÈx7O½ g"R"Ó¿ƒÜÎEËŠÀ¹ÍùºûyЊcÊbÐ$8›¸Î‚ûBnEÁà¨*>Qö:8g:/:ç}esÙÂÝ àïˬÊ x‹â-‡ÃpÅZÎÙÜà|Á¢XoË1r&ˆÑJ”r7“ò¥’xL(à”Öú@“3å; ©ÔLÓ´ÿ“>ݽßùë[çV¨hWÞ¬ô(x¶ºtÇ\o5ürnXÁž3Øõ_·¯ïZ°™Ýå`°sMRû+h ‹Óö×~ÑÑMºÄZ¡qm«v‰MAÉ7ëBAáÕOs õÅÅŒ´æPk­ýÉò¸·ª«›A¼*žcÈýœæ$¸7»_p/‚è‘áCü¡W\§ýmÎI®Hy+cNn dÊ;QTŽlª}(CÅhÞåAµ¥úø6¯ÚV{(.{¥¢9X¨Ì¯©Ï>O'õs Ÿ˜+¦S¿úWÞÑ“Ž´9Dî’àlæzÚå öwkºÔªà¼\[j™l—}ʇš§•^ Ü¯d‹½€?a"¤Ë?á÷sšs Z % ï­ Ò9]Mtß ·õ}ËtäpµÉõVÃ/ç†<‰¥ˆ”×A»Ê°Ò$AÒœÒÆ€ú¼š¢&ƒ"Ú,l•’x:\îÛõ2ÔõŒQò¼í„m.Ø/]ÉÎ4Àyý…ƒ©·Aeߪ»kîe¿X­LþËee%—8B!xöjn ~ º>Õv tº»ÕÚ„E /ÕܬìÍ|G 3ÄTÏ&OsЬ£’LðÉQç¨o*¾¯újV/îb××®€ghͽ€/&ôüì6V‘"ö‚Ýè˜âlÅ÷–¼Tžö¸’ÐòJÐ\¨-²œzÒ¹Þï®<¯äƒ°ˆ\åiÀL(üËÖŸWvý A nãVnù’ûsw¨]+œ3A~/ÛÉ?Ý’ÿwèòŒw@ô»±ïĽÔèvwBѤ²Ï*;€'C}E=~¾>ýÌ»¡q‡¦ ß ­vôy¸Kø[ÂCT(ý¼Ø«´7$Ÿ8=ëÂ&¨2T~^54jÒÔ‚'”   vf™(ïÍWJS¥ÂNÝpöÁb²ûŒû*²]]­A·[ªÄ;ëë­ `/›ÀôfÍ¡ºGÀ›©ÏÝ—ÊÏ÷K}Š}Ë&TüÊ9e£ò<ˆv´"”pEQŽCõ£5¶ÚåpaÖ…Ë©uàÈÍ¿R\ >AîgÜ ŽÈ±ò`„ƒü–än<ÿkú¿åÚAÌu¸ Ï“G)(ÐÈPP§¹w‚ëGg´ó2È·e*æë­†Í /xÓç&/ÓíÐì±Zƒ|BwɲھZ:\¹û{®€:ÖsUûÚù>½4½ïéÒÂ_j9*¡T—«#d7ÈyáÒWi¡xyÞТa`-´õ¶÷9‰˜b¸¸ƒþ€/>xSå¹Hm—þföW þ¨^Q£@h¨)ÀµI†7¾x«Äñ%Ôž¨éTsŠæ* Ê[Ž{&Ðon¨pNƒÍm¨ÿÝ 7b˜õ.Ûe(y'eIz2õήÍ? µêÖY·‚*ÔÁò}pÞênêžu«:Ôì‚gNZA5xºÖ=c]Ê5ß½Nžà8H›:ßóÈPu‡º°'óAèáQ!çäò€uìâ8­ðwû$AÈ¿ ¯e{:»}f4”,í]zœT~à ^<(#ÁðŽa“!X§‰Ñ]gÏËl^§‚ž@c• 2YÁb0ÞbÌ2h¡mFû’VC›qÝV· îLGŒ[ uyJaú¸Z–2äJsp¿íéé™ âœÒ_D‚xVÜÉ`à˜8 6€ö¬Ö©™.ŶԱ j'—Ϊ0,pé\k@iÞPák«›ö†ú×Ô[ÝR×`·Ì·,íWß<^vÖ'“O½{>Ü«ÜO»¯BÆYss'Áå›O‡]h†­…KŠ€~™s—ómÉ åûáOˆ)|/¶˜(V‹¯FŒ€÷/:þò2™äÛä~yR}»{¿ ù>-½¡°w^Çœ7¡bBÅ­åÛ¯·þ57¼à&Ë\Ítm‘N€öýFÃm .-å; ¦Ë:é5YæJ˜Átž‚&™-1OB[m—Ú½»ZLj:j¢ªÔè!C“¼÷²/dÊðäAÛ2Øö0UÜ©„;ß3ד £‹¾. eÝsÛ.Ù½bvUpÆ]îy ØÝPOñ?­tÖ[݇r«¬„À2«Õ>Jçœ=yÉÎø%½}4 Òç^­ÊÊ3ñ'>?ç‚«'*“Ç‚ÏΪ+5^`l«~#½€ 凊®t¨Y¨<­ SZÞD‹HNj¨ù×Ý*‹)£äEÒɯõ¦qÆsàÕË0NÕk+z•okIÝmµo]oükþ8‚(h@ÿˆ1Ïä ú;MÉæ•àœêr[Á}Ê=Ú³DgÑšæ€/F¼@}[ÍWo‡ð×#n {n*b„¾\™7_ê–Ö¾ÿpÂíÃ!ýÓ«›²Ö€óGW©kT>Q1³ê9ص5iÎ=·§âÐà3·ô« h›¸{º¿^øõ¾&º†7€òz½õ{¥º¨ö{°ö:?%el:µqôÉp¾2iÙ±}àš›TXÚTÏêrPëO^;ö'”›é ÂWã¯Y¦9­ŒÌÄ8©¤úßèßkëm¸I@(³d<0Ú3Õµ˜¡&{NÕ ÒßÄïÿ^øãÞ /¼ pHд໠èÅvaPñ`·%,s¬Ím¾ÀJ^/tè@®—È£à3Àg›y$^n6;Þ¡Ÿ'œkÜ c”@eXªO5Mn‡Woxiû[°áÞU•ë‚mû¿òùþ(X¹çýïƒfpfbN+ð:ãŽ@³(¢@.þõ¾ VÙ`ÇÖã÷ê@u9è{”|ZÞ êœ§MŽMxz«¬Öà3¤nTÝPäO2~öØ~.g¸¸”‘Ú:ÍtPB4Ÿk:€ˆ %Í€ZŠ)ûýì$œv ºË¯éâ çŽ5Þý½{È(ù |ØÁŽ]oQü=7l,Íßá7>º ´{ذ¼[åEŸ]Öœº¼Fëö*ýÁoïwÞÝA6“·“ò.ù˜|t·i:jj °" Üo?4‰nw{‹WÁ:´H-I€Š¢ƒkO&Aæù¤›­g^Ñí]KÙGmAŸX´-¿:Õ¦V€r‘›èÔP¿ƒ öo# ¯MqŠlä}°Þš^svpµi,ú¦¬«Æy0¼H€¼Üð{gìþz#Ÿsytsô­õãA»Zÿ¾n%ð¤ØF/ qì]{·ü2äP9›¯AûµæE½w±±18_³÷´l„Rsé²Ò ¨6HäªOÑù{ ¦ü#ðfÌ0%ðÝ€=¸0h|ˆ*î¨ýÄ~,Ø:8z‚XÅT1Ð7l€0bÄê@y·œ Ê&e³ò4t¼©ý°Ö·@‹Šî;½ –ûBO¿~·©}=wC|º§ë¾‡èáuiÖ[ÁÜD5©·ƒríͽ 6»Áþ«»~Mø arh½Õv -xëx‘bÐ À†äµÓ·¯M‰ZÖuP½õ¤ó“X †ó¦ _q½ÑnÐ#ͽÀ9Îpñßïf9]ž‘f0n0”é6BBï˜á³À¶»êjY\ ¼ðÒùqà<ê\äœp½Eñ÷üqßÑKÿ¢®‘®Œwš:xåƒc·{Ÿê®öžïÕàZSï^¬oûµ,¾oÈwåg tÂ*RÀ/Òw¾ù<Ž‹x"4LŸF w‚.F?A? ´O¨92ta²‘J KY Œi¨ûoì¿K^ƒý NÐÜË%J@øS“ŸÝš?ÇÙ´¯7jƒÛÓ].N³ Âô±Û›²óAŒŃÀiŽÉsÿ~µdýåHÐ%j‡hS!´Q ¿Ÿœ/Ùë^¤<{N0x:x޹ç^!üsþ8Sšk+ƒ3Š Y­í©Y ²Rd)wŒ ³x¨Cý_W«±àˆ$Ä‹ò"_Càà.h:­õWÍF@qrÞÈB°t©«µ ¯Ù$ÐhA¥P?Ñøõúu\Kk—Vo䌆¿7LYþöΉ¦õVm8¾ÆóšX-ƒn»Ñfˆc_ÃÛú÷AØÅXQJ”HUz+ŸÉ* œ@ÿª¯=JjÃ'œÀzrhçk <šjãpc ݽœï­“½Õ;àdK¶¿ æbsOï jÄañÏþ?â#ø¿¥'¯‹õ $ižÑ¬&>Pžª9¤$ ”4üüµ -W½Ú³MÝ­ªº744øtÙÝ=£c+Øvÿ…ˆT-”GÜ_|L¯¹îpß Ê|Â7 ¯×q1×>Z—Ö™†=0cÀ³_v•Ÿk;ÆÝdSù„üÔ,yFî¾å2—ùKþ›k²Whôø1”… ù"Ä&1Y¼ ¦ ºe%ó<ãÕJ¨˜_1©,¼’¼û4&Œ×©kþš?¬àE'±PlÑZ ÓÔ‚hª,GA9¡ì‹@L_iV}EOÚ–ú9~¦èDkð9fžíµ"E„‚)+|HÈD`™Ï)ï‘ÀÈŠÉUË@zêÏuzˆ7’ÕÐþê.U@þÞ‚/KgÂ…àÔUPÓÌ’`óbèÆHpå¸ Ý x~ðŒð<\ ƒ À€ =tQ-^• ÒÝ¡«ÿu>·yO„ðüÐM³!°Æï;o轂•+u×Õøôñ`ìëuÒû%ˆ!¦ûï!Šø+xnb,o½ÅB1\ƒÜ3=þPþXU‹šPöDåÜêàîáyTâ xÐ7$9ÝÇl¶€¾³~™®8›ØÇ;ºƒý¬&O³¨5Ž7¬lâVÑ „®ÞM-¯W ‹†Ó¶5õiôÐ~--2*-uïXL`y¨.ÚºÔ¡j¾Ú#‹í PïS7ƒçˆÚXöÎã‘Wü1&ì" Do>ÓÀù _¸g@ÍÝ–“Ö@à–ÒT>Ý\m3Mw¨;áÜ.­P\´¹v3„'DûÄ6ÿËÜëÍVðò[¾`7x6yº¨f¨X;Ý2®Þélb; —F_=”óØcës@,åâ*àƒ=П5lãEC?ý} ¹,t¢ÊOÖõ´6Ï;Ê ¥øÿtSô›‹¸»Þêïdž˜ 毴´ßAÜgÝBCŸ¦mm¾]­nžî2¨-ÕOÕJà9&1›ú)Í* üÕò wƒz¿,ûÁÞÛ™åœ U÷WZ÷:äw(þ¬l7ä>Sø}éCPѧ®Â¶\Ÿh*¼@ÝìšEU WS×pÐm×åê ÀrVñåÿ}7ýa¯6÷ôñô€jwuDÍ4(?ŸQ>âú…ÛƒºAçØÖ~‰9 ¿KÛG7 ÔÃDÈ@-•”ÃäB@¾Ï)¹j.Ô ·@~YÖàÜ¡j£¾¥n'õ§vò¸HÒulpÃf±ºáï¯HôÇɺ•–çÀ}§m®½?7è“õŸ‚®­~‹®%xFy†¨o˜Ê½Äñ—VcÃ_ÈjÊ@–ñ|ôïé&h׃áÝ.Ý$ð4lʀب¨ aÝ 6ÅÚÊþ”ÆUo³6‚ì6i™SÀ]ãyF­¡½>êíúKšüÿkþ8‚¿¶ô½…R8çº^uÞާíå¶ýà5O;Js3„í þ$p.$ 5E/ãý†Qúq úJEVnLÀÙ•Á ®J/(3—gUn†€£~i>)`=ª£}(ÂE9È4>$ øêºµ¿žö ö”|OÝž­•ßUºÚâ)¥ÞP6´"¦J —uþ;As^1*  “qr % ÀZrA®Ü&^¯7ŒŸ€9ÎôªÑŠSY)Úƒ3Öà¾g+çÕì‚´—ò~, …Â™š´» #%¬6tDuŒÑ4ºæÓfwÂÿ]7ýqüðöúŒZuuu.K"Tv(?P~|V{õÒÿíG¶Òd´¿§ùMVƒ2WéªÀù¥k¦ÛÜ!îï<ànæÞçi îxÏ)O/DW ¦jãTÃr0êtk@cS„’"‘`‚ù{wäõâÚÊëhu£¼úV5Kj‡BMFÖ’¼~pù–TËÕ öýÚM–`'D¦ØÇÏÞ©Ÿ1]é¯ymʨ¥äGò[¶‚š/e[ðTCÕàºäžã”tñ® !}^òýîŠz>ømðÝ©,súÁ™}ÇÛÑ@Á‰üSùPÓÕ"5 8ÉINü÷»ç#øŠ)‚3œ¾íT!œ™yìèásÐ12a~Ì.h: æpÄ· ”+»•@ŒçîòÿaL‰‚Ä+bS€÷éLPw布:Í5ÂÝ(!… øE±åÿÈ7*+2š»ºemƲœ}p䋤G]P|¼$­¬7HAlƒ «©ðÆûW\¸‚jê€0ˆ(”£âYè·c½×:BUbw^ÍÉ¿”ûT§×Ü_Óä{r©ü?ˆ¶üã>–ÆÄAÙî’5Åc¡¢wñˆ‚Iµ.8Æ¿-øuõ~Æëx.©]Ô) Ï’B:`ª-ø_¸–- žh`´ ”]ÁÝÄþ# <{œ?º¾™ÃQÎ×»hðÖ°˜‹¤ƒ¡”†‚¶º|\Õz¨yïìØK68ÓÿÐí'À•ÆW7e%ƒÒE4PîR‹ú¹„ò㺠i¼åf¹ —ÈuìÝ:]˜vÝá›î- QmÐpŸr(“µ,ý¤ÜqaàùQ ¾­>¯>þßïž^ðr•üP.ÇkŽŽÆ OÖtçð?dvŸí 틚tà#ñ±ØT6ŒdþGú‹D½é ò™ {‚ÛdÏr÷2‡ê<ä$Á×»'¸¶ã©¢Þ¨#ë­÷R÷w>SWÚΖíøñ@,œzåðw§g@Ýq‹°öµ§:C~ b’xœQ¿âúº†)QCrVµ‘g*Á×Û{¦Ðf\Ó ºírùSEqpùÇógP]Qe­z <‹=Ó=/üŠëþBnxÁÛ³íëìk!íÌå„”/€ÓއëvCì÷áñÍA÷ƒæÍz&9„Yüò8m¥~JCEKà^™)³ÁµÎ¶ÛÖÜÏÚýís¹ƒ] "®wOüæôâ8¹ºNn‹û%0.-Wô#”>ÿÓåX8—‘œpy4Ô½jY`½J­ÈTÖþç——WɦD/†Òt¥Z?M!$„Eßò ,Ñ—F8™{,ãH{([[Ú­ô¿8xÜø‚¯´Í±EBjù¥·.¾8ÍÖ|ˆ};bBȃ {A»T£€<#½eþ:VäŸ"ž£ÄÝàjåáÞu÷[§Ú¶€{Jí‹ÄA{¤#аú3›þ9×|ô 9\ĶÛ°Þ~-F4DAŠf öZ Œk±4×<¿ô8xûÿüyå~^bøîvžsõ«oΓù™²íüë—÷ƒ% n‚õ'PÒ²ï7¸A:4è@¶g¬|Ä6±NŒ‡èʰ Á7ƒÿ]¦åÚ!#:õƒKßBåäŠÌòàHÃïg’ýó>à߀Vð2EÖ Û4Û·V ë Z樠<©~éš!}ù»A¬,QîÙ[>,Ÿùå勬gØîvœs~eʽ+µºfXÝã Ó9£ÝA@"»8ò] »¶õn"‰4·QÜ."À™«™¥1ƒC«k«}-´.íƒàšÊEp6qBµ!¼VN¯Ûðïtk°Ýìµ8ü†°ákQ xÀÔ°ìéô«XXõ8ÌËø8{Ø›[ãm÷÷Šbç_µçÚÑ8ÿ. ËÜ(wr˜Ï$ƃÏæÙ¦eàwÒk“þkP¤3½n=Tn,uo…êMÕ3ªô–Šü¥÷/à†õÃ;¿tE:ÇehmVí&0MÓÁøöªr+0ž.¢ FypË$Têw$ü‚'òE†HëÛJ{=[x¼t(È ÕŸÖV‚þGù€: èÄI6™ÿ¼‡Å–zë¾G aPím¯¶DßyÞÕàYïõˆI¾”Sd0Ìz­hw×åYŸ#¶{˜Œl`+èÆ×—'¯-v]‹Ìºö ]ÙKÿ¦>צ ‰ZÕûXç ðLªú¡f¸;~pþžÇåWê2@ånÀ3& Ë?Màô¸¶NÒp>­ÚI}GfBð«ï—Ð!5ñãFýFæwi*¸f¨{xz=Ñ·ÅM> ùV“©ù V²oXÁÜ›¿-¿d5»êJQðI€ïýÇz9TÆK+"³È4äý[#Ô^qD| ¶›lã퇠¼]é‡Oƒèj5Ùº€ÑÀF¾Q[ÿã¢Áx-N].«·j|½µ4lÖ¶Ýã%Mé Û¿$¦3$œk3»yˆ8×xCL3Z¹\ýœÛB¨]Sܦ,ÊÍ\;¬šª&àœ]÷†õ x&:œŽU Fº_s[$yXºA¬T¦jîÝCF«!ðõLuòXm e:ø}ìÌuõ}W¢ó4¸­ö ŽS ®ó4òô&ˉ¼lž4 ß4¿–¿ñëËKÒOvÓãú}$àß<¸4/ëPêýPr§¡·y;xN{üÝŽßnçÔ +øÂ‡òÓòŽ@ŽWÆ„+ë Ë=ñï†Ú h¢ß‹æqÀí²µœ²€K¤Â¿;*‰ñ<Å£àží*qoK¥Ò:œ3”™ÂkHÒOWWÝ-Ú$?°Sl4ñipÈM"I™RúÌ1‡©]LbÄnˆN븠õ,èrKæ>æk;Æ'€œ#_—¯€}£#ÄÙ ‡•ÕÀ¥‡/÷Hÿ ŸÊK) …ÚA•-ªî÷Ë–0ëYðø:¼;@~¦ÆªOƒfšöUíP0Dz¿mNµÆq»£ã Îõµ‚NŃ&Ì5Ûý5èZøuöMí ºlíhçÄ“ ±÷ïà®?õð·B^"“LPŽ “hºLí—šàSfè­9ÒìzÚÖJ(îU¡›Ã†ßºËºº~ýuoÁ_ó®8êO®p|iŸi5‚ãaKÇš`xXç9ôè¾Ñ> žSê(Y/ô_u$‹<Ç R@3TÙ!Æ‚æcž> ªw…Zƒ\à<æ=ÉK¿‚æ ¥­&J»È"ŽÞ (óD#Ðï1n1L‡¦ùM¿½šïnµ*±ÂÒ#º…e‚ß ß~>PÛ©¾êX ŽZ’A¿EwB[Q‹‚Ÿ‚ #zßàžïºÍ½Ô¦î+žs ãTƒÚäT¹[^ÎòŒ’D‘h ŠCé¯ùãûí ¸¤ðjI8·âØ—g€Ì®2UŸ‡ˆb·F×€w7ÿÉ¾å€ Ñ@yÃÜÝö/N ù•È Ù˜ ÉR‚•¹Ð"§ñÀ¨hÈÏ©1;öÀñï.>ܺŸï]Úw5DAÄÿ‚W³Ô:µ¬·YŸ²FƒšíH²­SvµXÚãšWÄ.iÂ[”µX¥úWñ¯øØ’ŸÉµò,øló9m¾ZÍoÕ3ÑQGÂ;…¤›¸/0>d~ÉÜDc¥Z\ PD#‡ÄÞm­nÖÁ/BøÚзƒÁk·1ä“Ï`PÓÕbÕt%š. ¼ÄcôçºBÝq0~khoØ â ÞâI¦íyF<x‹‘ÜøÌcÀ²Œt yHp‡zœžàÛ> Æ¿5ðð~ìŸÛ‚íÀw¦Osïð=îû‘OÈÏÔUòeàE`#¿}ÚkSœWär5ˆ%b•X£ýïò¥Ï×z›s‚3§€ý‚õ•NÏ÷ý‡—• ü†Mù¯àé(„Ì5™í2žÜ™)–3ÏZ\y¸ð4¯‰.f˜óMzãyPMêuõ¯¿žxXÜÍp-v7ñlWoW#÷yПԿ§›º5Z£v:ˆ}¢ CŸ†W¾ 'À ;pUž'd/zÉ{AFÈxzï×!/ó(¤Ð58ü[Ó0-I 0GLAĈa1œ‘Ür Ï2äEyQ:@¾/ß—+©‹ÿo†M¨¨HÀ€-h§k¶)ÝàrdVç‚§áÔЫS îþ¯Ý>|$ø6¿«åk }ZÛ[ ´§ýÏs¿ä¾Þ(‚¯9W3¥¦?ì»7ӶK¡Éèñ^=Ágº×hS{Ðøh>ÓŒùX}Bÿ_OC²Ñ‡x–×A¶·Ëñ Ü¢Vœ±A,e3qð^óFȆéÂY¿éZæQ2³áÜÕ*j¨£^n~ñúÀ¿Íµ‰A‰@ðZˆ–$Þø`Êäµ cIª¨¢†_ïŽüwih½f¦¢S¶BÎØ¢®%óàr×sɃ÷I{Ù£/4‰jñ@›á298)xFÚµ}¿¿è27Šà«|*GU øáÜwbƒ BÖëv:ÝÐqW“&‘Al¯Š© I¤;ÈBJ~U¢¡k¸ñàÑž–4n=DàˆJœ¢•~¸— ®¶Ê_T|¸Çº‡{, yQ©RVl8õoöý“ÿv8A´®§Ä&±4•]Ê Zˆ}b:8mÎ]:È<™?¹¨3\>œsµxTãY¨í áÇe4[ M¬Íîni†@‚üƒƒ¶½v˜¶ë^ÍfJ£ß§ÿIŸ qËãJâCÖMé³SOBú£©YCâ ›ê8 Æî†~úÉ ÂhN<ÈL (æç‘æOþ†k95¯ECjÐ àç?ü¼ö÷.ØúŸ©??6ŽhÂ@ŽãiæƒzÖ3Ú³œuª·®¥îƒîW¡f»eŠ-ά¹2.·,1ÒO_í;é¾Zµis¹í ¤ úÍ]´úíš{Ã,<ý-é±iRÝpñ޳KN~¶6¥Þ9!áãÈËAÍ!nDÔ‹‰à©UßUË@Ž–¯Ê%€æ_µ+ÿFçÚÖ4HT[Ÿ$U¬‹Å+ bEA˜Å1ñ)ˆ4Æä¹Ÿ½@!Ù\röƒ!@7Ñ^ ¢¨‡Á9ËÕÃåe«+ÆWû@FßüÇŠ?…’WkJlAר|ÎwD'ÅwH\1;⪚¦BpÿÐ׿ ~‡ý\ ÉÓäiþÔ_Ê 3Âÿ-áïFîŠz \_89·Á™-ÇæVûCftñà*¨~ªÄœ  ^ú·tIºq äBuÈ£RÊDÛäNCC À¿^â¿:àfŽ™+ž£ãœ'ä+r±\Î_Âjÿ‘ÛôÚÿGFˆÄâV[ù€ùÀ.±TÌñO0xJŒäv )ˆNs‘L`µÜÄN`Ç9x(ÀPn¢ЇDedsØÁa¹ ,ŸÙ†82¡òýš µë *­vž5\WÕ2©€f¦Æ¬Õ€˜¤ä)-A9Y¿1­LP·g«g¹çKNšrÔÆ”‹±àš'§*Ý@¾åmΆ +1¦½`ÞíW8šû¶YÛv€ýç0åky×U<@ ~ø€\ÃF¶ƒÚV}H] ž%êj(¨w¨ùêyPõªKæj•ËJ`KyØÂ ^e‘ðã@D/±0£Å ò¸,•]@Fð{€á ó¤è¶«% rî(*­êyKʦUëÁ~Ös‡\ úOŒM@ó™f½ö6мª¸0ªÍ<%àxÅù‰#ܾž÷Õ×ÀxŸ×fïÞ‘íSmZµ[Ûá%ˆ j<$. 4ý45ËA±(}”p Ÿ €0B 忞ƒï†Ò\CUUUµ‚ÕËrÚ² Û<Ÿÿ9d4I;—22f¥´K ææÊçêJˆÍˆXœM~ˆ9qL3 ]Ð…N" 8Nº,YÚ<å¨Ïh†  ÅÔ/å9¹\3]·»ß‚êþµOYô Ò·Ñ¿»}‚Ì[AÌašx8È2*G¶L–1SLOõEu/X«l¾öD(»¿2»ê(y·2¹æ¨º·®Î u9Va_ î÷÷)Ð/ÐÖ®¯WLã0Ö‡êz÷ÃI°¯rxœ©àÔº‹=Ÿº^ÄkG€X¤{Pÿ øµz4´›EGÆž†àµa #6‚þ¢a„1Ä<¥±Ò DºðÝA¨âuñ" Èr0¨±jœj™*{ȧAé¯)ÕÞÆ ¦—Måà»Û7Àw,·?0~p½Õòüßâ´ºÂ]“ ð¶ü'ómpé© “+Ánñ­9†¯iæ®ÝIõG!Èãjo÷  @Ý¥¦€²Y¤"@Ù nñÀrñ™X |„žà˜X#:€:PžgÀc¦;€§JnUFò ~²7ha·º˜)Ÿ÷Ù\fË瀮<@WPÚ)³5É ÆËTù1¨:袣Ë<Ú ú7kãôïË4#õûÀu¯»ÎÓ <êDõEP®*w‰‰ MR>TvƒÆ¬‰/‚ØÏ‡b$¸Þó|êr<é¢5()šmº‰À6í›ú®  ¼¢?ˆQe@øüðï‹AXÅ|qçõ¾›¿=8Á“U¿uŒu|Í— m²LæCÅŠì dÞ–±ûêfHͺØ#9êjª¬RA.TŸs»A;RüD hb5Ã5@Ä‹Ñdo|èLFÅÔƒb°¦/hnÖÚ‚oRÀ‘À·Áõ¹Ãc÷†jOÅeûAà^ä ò¤ÚMb¼ø’q  Ö­×õ÷EÏMr0P¹[[ þ† ñAK úÉF/4Þ¬±Á/AØÊ°åaËAÿ‚~ª~:pŽóœu‘ú–g!ØGÚïs ×K®ç]S@‰BQÚ7µ‹µï€nŒn‚îIÐéuÞº@ÅÝÜt¥¯¸¸Ÿ‡xÂP†!„ðø½oüñÿð¬õdª Ø?µ?dkV“妺౹vû9ŒÅœaIâ]æ·qƒ€³hñ®p“˜ü$†‹S >·‹“ 9ªí£›òSµ—ªw‚{¤«øD¶”™ ·Ë÷åh B4'„[ĉÛ@ºåp6ˆ 7huÚ÷u—ÀÐҸܘ †EÆ$c>è¿×}¡[ ¼Î½tþûöÉÅrÌyBž‘É@7ºÓ„KØDˆq¢¿ˆççlÿ¿òÿàÿäOàZiý“?ù-ø%Ën6šEé£%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur6.svg¶S€ùIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur7.png0000644000175000017500000003356012240014741024057 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>5óIDATxÚíw|TU·¿Ÿ}ΔdfÒ ! I¨¡7AŠ¢tAAEDPQ±‚±QDA±¢‚Eª ¥(½„é}2}æœýûƒð¾ï}ソ·Ü{‰žÖg>Éœ½ö^߬ì³÷:ûY ×¹Î5€RÓ\ç:W“ë‚¿Î5ÅuÁ_çšâºà¯sMq]ð×¹¦0Ô´8ûØÇ>@AAºÐ….€ÃõQûór=Ãÿ=Õ‚ÖòôeºZ¢~RÞÆu¡×® ¾—Ï5Òi‡ì‡2ô OAÆ­g§ž*„ŒÙgçž8 ™¹¢Ï·{¶}@åW ªgëg€J)©iï¯óÏríæ,p@@ásùÛòÞ€Ÿ¶ÿØc} (ôµ±Gn“p·”‹Ô§¡Ýæ®§o}'7Õ[´„Ða¡w‡ž¶³“5Ý©ëü#®]ÁRDP—8â@3úøÜ î÷ßî>ñ)±Cc!ffÄg¡ù`îzÙw ²Õ37ípÀ¦Ý _ìòâMw‚@ jºO×ù‡\»Sš'˜ÀxpîpÝáú|ó<\OCÔ¸Ð{‚ïÿž[=Ažöäß ™Qæ°£`ÊðouÜeå÷Ë9yo^ª¸4üCýü)5Ý©ëü#®Ù /ãd¤ …’9Å7Kp:íÛ+J!âˆåƒ _áà¡ýKvSçÅf%:ïé<°Ý'P¿yœuTÜëo…c‘GÚ¾ëbê:"ÝdC‰,5Hm§ÞÊ %Gq+xkº÷×.׬àÙÄ&6‚w»/ÃW^þ–þ0-4øU3§ “8yo\œg…_ÇøzûTèy¡©Ûã`g|8(ЦåvκÙßd¨û<ä¬Ë1ä¬Ç´ªÐªhr¢éì¦Ã!vZʸ×À€ŠZÓ}¿†¹f§4b¸˜ fÃä(9ôô6z?Pç+QJ%$(^;uýZMÖµC­Ò8ïvnt¼çBN‡œ~ ŠÆä¿—{ ³g ß@=µ~Û†7€)É*^Q’j+ýùÀHÞ· Öúƒb®ÒÊ,îÑ*ìÛúóÖmeЬW›àzCSšÑüçšµÚO­Íðî/œÃ@ÎöôÜ3KÁU¿øüÅÐo®Œ/yçÓ‡ée늗öçnWKOT ×o 0_§¬‡ðîQ[#Bø uǃʪ¼ñ…M 2õRXAo0žU©àJ÷lñž·Áëò¦ƒ¯¿o›¯¤Ëó/ešÀuÈÞµrÔ™â7µê8ê—¼ —¶¤ÿvö3Èð]p]x´úZ°v}}óÿŒÚ#x ôíúY½Ü ]³Ià ²–6ºB~6m‚ú‡£„%#ËÏå=%_]Ô/…¼ÌÜ´K þXö]å(pwó<é«kÿð£!ðS#gòÓ`˜éoøªŽå­.üÊF”î*÷‚óyg¼0­2›Ìi`-ßQ Z–¯eÔô Ö>jà=xð@Õ޾Žï¡êýÊ›+î†/ÌïFçCÎzàèê¸Ñ9Rrã£`ÍÔ?sï…Â-9þ YpfÆ…˜,eoTW͆ØÑuNÆÌ…Ò:ŽkÓ ¢¿©“ý䌹¸*ï78rìÀœ#ƒ!ñdt|D2„g…öi Y ó Š_„ˆñËÃÆBö¹ ‰99ðý[_§oº ¼‹Ü7x¶AÄÏ–õSŠkl¹Ò}iƒÎÔ‡²íe[Ê^ªéA­}ÔÁWwúb v0=h>t/x»:è¯@ú©ÌY— f¼°';”¥üÀ2ˆ‰ í±I¡³ƒ6ƒ©:YI‚à’åù`ïí|ÏÝê¤Æ5ŽaÁ‰“ã’À_áI÷~ e»Ž…é Üo_Z•ŽsŽ®™P¢Vîq|·6ÞÓ «lyÖóp>òää´Yp(ç@ó#­Áw°jVU%ÄÖéaÊì/ÒÚz ^É-»ØÆVoó&ËjzÿüÔÁ›1cëËËã:!4#\ûtOl`.”ô©ø¥êä¦ä{‹^„óùr `úZ½O-z6|2)Z^l(“¦CɶФJÒNg禂¨Rö*…Ù2yE¢€ÈgÃ:…Ì19÷‰üï!¿Éù£ â¥Ò‚²I`I ~,èFˆN‰ësâsó㾄 †EêpäÇŸ?Þ¿rFžYzþf0ŒÕûßk•EÅ; Ð~1,³ä¿–×)ïS¤üâšä??µGðW0cÂ<¨ÌW@}ÃôUÐCÐúÉVÚ €Ä²øˆØ°iíöþ{g@Zü…›³£¡îɘW#ž†Î´êÙ¤9h9þg!û•K û€¯n M{œH=Ò¨Ô»ØèÆúÏ7+ hs!Ç>-k"„PÚ+ÝáF¥ÕÂ&Û {sî}Å`¿AÎb4œ›:¼Áù¥äÞòCp|ÑO=÷µ€Cúü#g Yrâº:Û ªIÑâ‹Á°Ú.ËŽ8p>éÈvÌ®éÁýóSû¥c»ÕRu!½r*Ì1Gb'Çü¡YYÖCég%?” ãÛÌí9iPZ§¤Où—Ù7ì9[Gh•ߤKJØF[⃞„+ÒwfφЈˆ¡ ñH“ûS6‚dÈ|ÛZ¨0æltŒwüá m­ÛÁÕÌ]èù,gCÊ­] AÇÔv §iVø°ÐG¡²Í¥~yÓ!ÿüÁ £F(:piD^oÍ´;À”çm¿ ­=ðèÞo¡À_Ð5ÿxMZ+xãnó{æ$ˆM¬ûdÂ\k Ù¦.À@qP8!YMØ\w9äÏËßRt Žþx|ØÙtÌÖJµžÐæÁ¦†S EMuÜ›ZØ»8 <Ýý{ƒÀ<.²}x qßÇ£\»ÜEy……~(ÿ¹ü\Å ëesZ¦BxV¨°ÝÊ«'ø=0¤%Ç$,‡àMª]} |+ÏMÎȃãÓ÷M?< L_hßú7AÒÀ¨>¶åÕøLô1#dž;/Ï ªþö‹ö¹ ¥tȲší?µVðÖ7-»¬@cWêÍMg€ïgù¦ú"øî¢LdAOÑ#¥Ë(¨(¨ºÏ949rÏñðþè]åk †jªºâR¢@ê™úõë} y«‹Di<\|­b¸c4DÕO|¶îˆŒd„xÊ3Fæ8!}ëù2¿…F£ê­‹ïÂ&*„Ž/I?‘=¬Cëüs7DOŒy3j(HåxûHÈí|ä™BAÓô•Ù05QKÅ@h5)yCLO(ú:;/m!¾ïPÏ__ÿ‹þ›}*àǯ¦GýO­¼ñEãxãhˆú5*5úeÐZ ›a7øÓõ“â$$O8ç€È¡å¶*¨*/«üNk§ö¦„òùåý*û@ÄŒP-’ºÆu9•ŸÛ?vlÿ=¢½’nn¾»I˜_ ¯ú”¨èPu'”ŽÉ +l a6Ë„à–`˜¤nP{€7! áY÷Ö²Ù6ˆ9Ô¸}<Ó•§”x0¼¿ häõ<1õìjÈþ)#=ûˆdj¹Ìû´·=@åç…±—–@á»ù?æÏÉÛÛÛ ¦GýO­S´VYæ¦zÐôb£Éó!bYèN[S8”}hæ± Pغð’ç h­9Û$ <<ôNëP-´Ö·L›!d¨ÕÁ#ú‡]€À¾psX¨¦÷ÐÖ‚cZég7‚òŠ|A.ã'†ã†°l Ž úê­HrĶÉÝAàÓðŠP¬} ý‡¡8åܾŒ$¸pß™†é¥ F(D;ˆqÉAoÉo ¸psÚö3.¨ü½"¾üÑ¿é¿ïõŒÿŸ©½‚¿Â/ç(gÕ·'A´Qû] T)ƒ•Û¡ÍÆ¶a-NAƒ×~bƒ3ãÎ5ËÈ‚ÂÙEo”ƒ@í¬>ÔŸÔDõchãljn°¢¿ ²N¥e®¼ô<8Ž™¾7¬½a‰áup,›[q´ïý[À¼×|¿ñ%0÷5õ5΄ªMŽÎ®"ОJ5?Öôº±±Í@¬045¬wÒCåÝ¡ªn^»¢©Xï›á÷ABEŠè½Øz¿i2dö>ûé‰PœS`Í»ônú|}/ð>Ëy·¦ÿGí¼ Œ8P,ÆY¦ý |`Ümtâ4Ä´ñFö„Ûê&Çù~ñ›ˆ‹ó²›ç®€ì#9OäÚ€­r¦œ‘S¦ؖ¥uP}sð¬×€r¿-ÃZÔƒÊÊ4L)ºr.8qŒw|††· ¥`by9x4Ì() –¡“aDôO\Tw8È› «ÕΠLp¾æJƒ@«ìq—>‡ =ÎÏάUAΗ!Úö‹µ#¤´Š>jk{²·]Øg‡ŸY{Úz²Ž^^ÓƒÿÇ£ö þFzq;7³v±=æ –ïC6ƒ§‹o·¿ˆ=bµ2¢WE½Þâ‹;ò{å®ÏÿÒǧÏüä½›œ j©òœú$„'‡Ú’ ±"nbÌVPÞ±¹¬e Õ"õ‹ÀÙŠ1öX(^—Ÿ^ü:hûµ´=ºËö™¥/”W¬·ws[kEðK¿¤áMÉqàûÔúNpPš~×nýíÂS%£àü¢“#Ò&BqvñÌÒÙhy"ø4|+^‹ÙŽ.%/,‚ìwÓ'¥íOkÏFÏ» ·ÈýòzMÎ_¨õ‚ÅTñD®ˆ^³—EfEßåwVvt>ÎE®îP°- [Ò’O5Ь¿ìó*öÝÛ*ëñ‹Û@/Ñwê~ЧIl ñ‹böGÌ‚§ZF7n "Ó²ÛÒÜëOb€ W²» äôÈì‘Óœçª~uŒ†°Å¶ùÖ¼P´õ=1zCäRhаé# ¿_ILtäLÐZ+ne6È]3Ü(ˆÊø1»782Ë—UöÅ«vVZ€1ÈàRÇ€eŸÚ@or³÷Œc'”µ)9]|øzú:úï¬é(üq¨õ‚çiže:D;¢ï‰™ტöGÿ%cí Î/ÀìšàþB×…Þ²ôjxOr+ðÿæ÷ù[BÑ€¢ˆÒæà}ӿȯƒl/?“{À|ÐxŸq)DÌ {ÔöD¤G‡FÆ‚ùݘQGÁi)NƒâÝEJóÁŸîü̽l»­¥–O@¼©<)ó0“j|B¿‹\~L¦øqo€¡AÈXkhº·{AÕùüæE#Àkq¬sMÙK~ê&%ZÙ )w×ý,j„,Vûj:ÿô·‡ºC¹§Ì]YÓAøãPûƒ!ƒlõ­çÁöpHp診Õó«¯#xü>-Ð,÷Z|Á›!~g|yý`~Í0Ïà‚ª¹öÁU¡dTéåÀ»Ò§úèÂ-`a|ÝXíõO'nØoê?ž4 ª¶X«,Ê·—¯­|üç—óó¦ùÆú öW Ôy ¼Ì3âa°Îyßz ÔŸÐòÞÔž`IOh×ܽõvÚï ›J•ƒª•E-JO@Åqû”ª¦ ï—ÝåónÄWa]Àj1>IC(Zz±Kæ×`ßR±§,´]ºM7¿ñ;Gj:(5Gí|I$ò®’¤Ãׯá¦ÐÖÈ|Ñô§ä«ò]0ö4<­ž„ðÍ!õ¬K |ší¸õ6x†ùJ!'&»WÞtpÞáœã.&³‹Ã`ú͸Ý m×§înÐê?Ø(;9\>³Ëô:Tu©ø¨r¸‡Ú³é ¤._c?u¹¼B‰<¶A¶‹¶ÁpÃÁÎϵÛ‘AMžm Η§Mo€9ʾÀE£2;äl‡ìƒ9¯æ}Z¹ª=²¼D;0µT')¿@x›àzjKpÝVY¹ªU=PÕÄ@úÖtPjŽÚ/xµú˜€{èOFe¿ÒxQ­0Ü „‰&Ê^£¸‘z &«ÛÕ'!|DhLÈj04UTÞ¢Ÿ‹ŠK^ï]Þ8¯Ü,Æ2 ”QÊ%eDN[f+†ˆÎ1ZäË <2Ú¶ ÊÏVVý埖õ¯¸ ü#ªÖ¬Ž`%¨ Ì?'Ï€q¢±Â0âfÖù(:B‡'}Æ'cOE n%z>”÷Ë}¸àNÈ‹¼¸'ï"h³µfú4àEÊ0AX¨Ím±Aý>qG¢¿‚¢5—B³G@æ+é“ÓÏ€þ¢>F^ÓA©9j¿àÿžÎ"C$ò¬ºÈ8øVY©x@NánFÍx’‘`u†î´€¢«·©s ôTÑ…Òxðn÷¼å ¢¸Y$€øT<ÏÓ`|\½Ó`…:ÎØ›¢÷Aƒô9I! ôO(s¡ðéÂŽ% VæŸ)Ú¦[ŒEÆ/!h‡9Ït;(¯(ñB‡ #¦ S*„$×qÇ„CȧñÃbP*-”ƒ`­¸QéT(ŸUظxÈgõczÈÄ“ÁËͱ¦ºÕ¯€Ñúã7à![­é ÔמàoÛEˆKÊ(Ã<À'Ή! ¤Y@™¬¬Ó!ÆPWĬ‚˜ ‘¾ðÖ WTL±›àbFÆØìaß>¿MQÈDYG¶ºs'·é5ã+†Ã2ÄÖÃò„?õm¸ ýÅ âðW-rŒÓ Ã$5Œu ó  YÊ'@:Т|sÂ@lb|A?ø—ÙFX" `ððWAàÖÊU½ÀÙÆYéz ü]´ žâqñ0pŠŸød¦¾$°äLý6ýUQ$òk:5Ç5'xe·’ öãæWÍáÀ½âQþ±Ú*PÞUV)S!á…øîq“ ñ@¢§n !n‰-. Èyr+rææö&+e$ˆOÄb%è¯ë«ä+û•— bpd“°q`I6%ÃA–¸»{_€ —±›q˜Fó?ð³<"’0B x›ùœÉÖ2›Åò2ˆ/ƒ š†éÚ­èoWÞoß…'ŠF•F‚ûÏ÷Þ_@ìÛY ´!@'¢%"÷ê^,òÏ Œ¬ÄSÓѨø×´WÃ^c=ãmÖ5|vxC|§/f8‡»Ž¹Ž·ÓN‘ú±m „ŸŠy72ôÐ,Û9pÜZ5Ó9 ÜG+Õ*°N¾ÀÛ@sPH¹ FóÏÒ_}]½¢ƒ~þ%¨Óýý‰`{;x¼é 0ë¦TcàWy‚ó ¸ð€x[ŒƒAª4UÒA]gÜn¨–8ñƒnâÈ‚KÇr¾Êý [»~à+qD쥞8-VAhsëñ  X¥9ð!N.[° ¼}ªÏXÓѸú\{‚Êð•Á–.ÖDÛ  O”%XÁ½Ø{Ä÷"°—£S´ñ„¡1í±¹¬ ÀðuØÇ!ñà»ÛïíÞ9Žmζ ˆÙLñ”˜Ç3@$É$ûyƒÕ ·ÑŽêHñ¼çû”2wG­³ÿ@ ´-ò˜üÇŠ…˧­€PTºƒ\Ã/ø@Þ)»ÊJ0ÊÅ<,w§xn…’޽‹ƒÁýë÷DÀÆ@‚(U‰Û¡n·èʈ/Á\¥Ô•“ û›ŒEÁàÒœ‹½j:5ÿšvàj£Ä(·(³ÀÔÑô^Ð]àîÊ PÀ¨r©üRö*Ítõ”é5ãEú2t—-\Ñ£ó‚WT¶©Ê_¾?&p”Ÿ u¨Í•—™r¶¾DOÿf÷<ÏPö¹îv­C@I” (=QÞ ¢Ë]Òõ „?nímÂ,çÈ%àŸhkÁ÷•gï HÍû•ïPmòW} ȉÒ@"¸~­|©ªÞñóï4ú‚âO‹.+#Eø4pö-yÜ> ²Æ^ü%k4x²ÑwM„"ˆ¨é \Íø×´W½Ãû‡²ŒCMnã —ˆ­g`»ÖØÀN§X,W€ÚÊ<ÓTf_Hª-Œ~·ÓcOjÑO¥ÏCñ‰’åÉà«ôí ¼ bh$Š@»K«Ðêƒ+¯ÂZùˆïª:ç±±ã>çpqzúÙ ´}q÷2 "Md²dnÜP¾¸2Ø¾ŠŸ+Tê•ùU ÁàлÊï@J}†ü´¾¾vþ³ géïë™@0-Dc 5 He°²OlÑ_Ï—}!ÐÞ7Är§l§­éh\}®¹ /v)‡•³`ºÕtÆtô‹r“@àví°î¾ág@Ÿð;n2í2µ[ï°¾!éàÙ¢7ÑU¨ºéâŽ| œ}óô ó« ìÃð^!GAÿŒÇ¥ rÞή—ûh] ö•ÌËïýÞ ~P¦*s!ï‹ÌwrŽAýQ­Û6£·I‹_‚6Mû@ùî¼óEm!;öüÙLÌ/8W»u#>>¹L>*ï] ì4êÍõŽÀ[4ã;@Å’ˆ¦9PA[= (ÐgéMNÄS=(…5•«Ç5'xeŸò“’ ƾƦ“ ׳—càß«Åé#Aîbñ #äýr˜÷w7çBD¯¨×"¶ƒgŽ1Ýð1Øsòv †sÓ<ê…øùu:Fí=GT‰%p&þp«ã§ ²Ø ÖeZŽ>øÞ×ÑWöÌì5¹OCÑûY÷]ú Öÿ!i?è_é½õzµûÜ– 1—{nUú2Zî¹àëêjêøOȯå -µ[A/чÊ[ŸhJC@ç7$Pˆ†BåDnÚÊÃúx ëe/ÖtL®jükÚ«Þá½b›² Œ=CŒwƒÜJœH€ÀïúÚ à+yˆC ›ËPZ€Õk}ÂÒ êÞX\÷°Ö:×úx¬•›«:=éè‘SoÀ¶Ã_,ÿalýü³Vß‚¬æ»ÇþºÄÈÊíÀÔðrûb¨ÿÃÀ0Ü–³0o6œ©·+î×BøæôºŸ7þ›îÜp×ö»áü¼_vÿö8øÝ9oç%xF«XÂqù:Ò¡/Ó—æ ìöï¹Kï®÷E3šýM‡­„rºì(;€<¬ß ·>‘“™\ÓѸú\s^ÌV^3Á8ÈØÙ8 ¤…—úÌÀY œ&ÊGåÓä2§˜?‡ÈnQ+#~qÜöaðçµdm˜‚‹´’—ÁÓÕyصô!úòM0tqŸuߪ;p6ÐDð5(ïÈ÷åfúÆý¾g0øGŸËÍH€òúEŸ•Æá€Á¯Î}º½yÕòVd؃h¡Ò‡Ù¤È—ärè}ü_hqòFévq ‹«;«A‰`ïÉ­ [Ëáò=o³F.`bMÇäjrÍ ^i.šŠ ®2¼¨.yA.æQЂõuòÝñÈaì¤Æ)†r)Dµî‘h¹1x€ÚB™–‰þ½A´­È¶ƒügèÄ;.·+ .[a½l‹C`¬¬L°^¯Äð)°Xí°­ú Ie°ºú:›±S¢§äyàNYF8àe¨n3à$ëx8"WH;ð4Ã(êck:*WknJÃn±]lõå^å^àGñ¾xä³rŠœäàĬa­ÜƧ [ ·‚u¤åTðZÁA«Í½@fXbøä6sð[õõ7_i§ÚÚ«í•Ôrå茬j{²Ú¦W[gµ=_mOüÇïÉœËV”nÊiP­æÍ¦—AôP÷+}€‹—ëôÿ+V@“ÏÊ©€_þ¢ï¤üH^ƒo¼æ/f0ƒ™ &‹§”I€Ù›´•Õ¯’ϦbPÖŠn¢²Õ'Ô÷©O©ù ÝJ¥XäÑ$¥Õ äUÛ++þ+ W[½ÚVÏÅ©¨¶WJv÷¹üï¾wåX½•¢hÊYÃïê v+‹Äd \¦“ù7ÆBÈ¥¼ #AZeºž lãkÆÔt4®>לà%£AÔÉ"¨”ûØ ¬‘yÄ9ñƒX"šrqÄ%U„8¡<$­…]치Çè hPA\­‘”ÕVb€êŠ{@ækñ=ˆ¶B9 4.qÄ"Lø@L@á9cåF}p+V¹µ¦ƒqõ¹æ/a,ã@4UZ‹Ö  b=Tþ €¾X÷èA»QÿH/-]{Hÿ´|mˆþ-Èú99X#óxðãÄ Wíå«.Y¢÷Ô_†À,ß\ÿ¬Ôâ´ Yô%zh¡úKúÐ<úóÚ1ÐæjAšô©,Ðo×¶k¯íèH'À}yë¶sÍÝ´ »° ¨ë•íj:Î%n€ŠÏª 3àl¿ŒK@o ß¥M…@šLb;¸Þ¬œW5 Ê/O¨¸DKm¼fîÂÍS€é*ù¿î² <æèqÅCÊ‚³­ÏËLo‘ÚS} ôxíQ} ˆ'Å[<}Kú—½EöÏJÈ<Õ4ë°N ?•QÁ‘Á‘Á5ÿ{®¹ X˜¯Ç»Ž%U-Àq¿k´ó5p¶q›¨Ñûu8ÆYöÿ±kÿÕgÌh+¡…à‰t¼è ÷r×tÏJð(¾ ¾¶à©òµðùÁuÞs›·O¾UBøPÛ° õ÷nÖ düpþÆsÀ>Ã>Ùúx}¦>¥¦£ôGíÏð:::p‰"JÁâúÒÙ²*²6f$C™^6¨ìšdzÂø1Ôož¸¡îMqoh…­8qïõ4…ôÕÚ0íäÖåÒÁ~¿î×C€Ò9 œ¹JýYÙ(KåÃÜ–4åe4¤ªÉé 7@ûoÛ¼ÓÜZCt`Ð0vE|É~p ö,ðZà÷þçʲ,wòÅßËAíb¸YÝMÖ¤ÖivlClgCßð ßT·] ^§Yû3¼*ª€$âˆ{ZEÃrdq.øÔ72¤ƒ¹´mÐôý†ë R†©!¡`\t´ŠÀ‰À(ßXRUv (ܯxFAP »Ù¢'U8€ÓW©?WVkÂôZÐÛå;âQý!ýSPmj±:Ìc̽¯@Ð9ów¦z#¨i „ï±-±dCKoƒ ?@ÄBãim%d¿æ½ãïAÁÈ<ýÒÍàà~Õýà­]§×~Á/g1oBqó¢³E« ÿóœÆ™= hlà7W¨v  êØ£;9ÒtÌh1G¬ámp-tžqÕâ>…E‹Aò|å ¦Üêë·ºü~X.]¥þT¿ØLxôLÙÄ0WŒ;œó샿€c¥kµkhõmºúÝr™Ü Zm…^ÊÇJ]á‡øgcÞZ I££…f‚¹^àwçiÈ:™ÖëÌ>((È ï!þò²¸ÚBí|àòž\%ÉW!­ôìS§@γéßž¹šJ^w¢3à é"m‡Öd?ù¨œÜÅ1üŠ×áû }Ê/T¾ú ß0>¨+«Û‰ª¶ŽËËê -e”,—f06pãY ÎúåÏWv‡JsÕç} ]Ò*›ËpÀB0fÈ ìm´–¬-…˜¯"O†½©Z½vu¦@AVfç4dw¼p!­ h7hæ@Ð…´­é þÏ©½‚7\žqj‰š%WA•½røW9Kì ÁÒÑ<Ø´Œ·2äƒü@®gûß|¿xž) ù} ýaàÝZµÛ!@¿x/ ‚¸R¯re9RþKÞýûl¨n6“|ŠÀü„ö°Öìþò¥•û ¼Cùí•=@ž’ǤÄtñܨ–‘H$Èt.QÊxÑ]iÁvóãÆLHÚu[Èo»î«ližk~®xlž\÷¯5Ïÿ%jíMkÀ¯µÔîòyå *ö‚2/0Ý›!w™Ýª Õâg`·h/R ù°ìÁå“Ê·3‡g@»Ñ?Ë?¼ì‹ñ`rúûÎX üg¡_Ù)½ò€ô½ÕöÊ _EõÇ›ª?_9èôÊxõ‰òÊŸVýûWvEï¾l”ê©á‚~@&‚×å2»»‚{·«…ûÈ^<r›ØR}ÍÕã§… Ì ÷‘_Ê"P7*•ï!ñéXSä9ȱV|å^ ™ßœŸxnÄ›ãõ„H"ˆ`'Zjm†÷>á¹Ó3 òn¾4à’Œ÷Ò(0â|‘-B³A¹ClPºƒ “ýåþ"ô+¶<*†Vâ{Ñß<›«Ž;—‚ö^`Y 0¸º¡+óÛ+#]m·K È[«Ëh¯> 8@N2~c¨mŠÁo Z;eˆbmŒ˜+†¶ÙØÛ°äIsGÓ} sLçL&ÐzzªG@ÿ],“AVˆ*‰»èJ˜?€è&<âS±"+àÁó—ò†ÿ9O.—_€R(Öˆ' ¤m¼% XãŸéùÊ*:žß|«|K¼ïò9ßÕttÿ}jm†÷­õöñªP8µàÙ¼W!¤­8"Ÿ„è'#dh(­•»Å6à>ž•ýXÇ&ÀŽ;Èo¹ÄiÐÎûûr 0Ìy»[‚\èèâ ° H»Üž|ú²Ë/[ý EøÁYf8bXúú:ŸG™A¸¢wEÜÞÞnþIÀ›E•%Ë@9ïmìâÁ”f‰uÀ|S„KžÒÖjï€3²ðÆ,\[RÊ—kÜhD} ØÒÁú*ج!c­SSä‰Á@/Y)×O‘qå¿ÅÀ‰J{š~ŠA½Ÿz(m´›}óÁ7Å“ì~ôMº®å1åO™-k­àwÜ5Pu¸òΊaÚ1ت¥¥^ÐxË. ^¬§@®•[°Ø‘€ÂåHf±L~j®©Ü8ŒÃ·†´ß|çfW&Tæú¦ûì ?ðj·5Íé)ís±ƒogèÛ&°Îl¸4Ù 1{[6Iá†äÜ„áà õÅùŽBÎGǺœY Ž§ÊŽU|M<ÝvjaÇcÛG=r\ ‘ö8§—ì.{ ì%鮬¡ì•Ìý'3ÓîÏp=±S] º[Äøðµ ˜”¢ÈgHbã˜ö_*àòa³È¥dˆìÃ,‹µuŽO ý 2Šî(HËkæþÖwBn‚h¢FFí«é(ÿëÔZÁËoå=ü£}¼E ë=§¬¥¿2Y9 z¼ì$ûeTPÅ_§2AŒ“iÒ¶éáa¥PÏ×z}³p|7 ö5ðìplweC SÕiÇ- ¿‘ûpþó ;«{ ·‚©kãâ4˜ÚíËN …¥ýªiP/-ñ·º÷‚ÖA7ê/Á‘uŽÄ‡üz†â_ §ì¹á¦)Ñ;¢AèhÐÓæêÍAskqZ*dìÉt\Ì€³ÓÏ®¼°J~-šTêºÖ¥¬†ˆwÞ 9b«h.¬Àsr–\ !œÿÏxåSB9ˆ[yV¾Q„ ù”K†ãæw ËŸÝ-s˜.Yî =Ñ÷FýeêÏD­<%ò}9Ø$‡èËòAÑDSÑŠæ€K®ÁèHüü§]DmŽ6XÿâI|#î4Ü18³ß ¹ý[­Á9ÏÙÈù*ä÷Î=UxÎ>Zrª!„=1<ì3hyèÆüv­ ¦2>&öcý5,3d¨!êx5Ô”åÐæÁV½›þͦ¦žj¸Bf‡Ö³­1”L‘j¨ú¸:”§Ô/”uÔ'épBDÏŠ>™þ=¾`6„j¡Ú¾å¨xEŒ†’EÈ d“ÿpó¨ú5—r¯<ÌI075=a¼‚Þô—èià|¾btQ¸C{qM÷ß§ö ÞÊ)ÖMå¹0󉜲Œ$>ç²Ð%ÿív¹ŒŠ¬–9–È`¶%!cl7€ð‰é¢ø*}­ü= rV܇±]ÀöE´+2 lCÚZçAýn))õ’À<ÓØÙðИò#Ð'ê·è1@8C(ƒˆIaC’A„ ¸´O´~úRЖëßév Q,ÉsH°<<Â<lÛ-«‚''ÄEqôÍz¢î=V÷胀* <øð âÿ[ £#¹<µs€ÈTN+¿€ò€Ø|ÝçDó%{àÞ¯é ÿëYMM;ò¿M‘Rpoþ-°£Ù¦?†äaFÃ`hübÂKQ}A7êke  Ç_Ž«øW@\¸på”Q˜0c¢ˆ&0^®—GüÁýÁPßVPV‚ýuçl×b88é´–€zËšõj?Ú_ºiD÷å`N7_4g‚è(ºüe©õÌŸñFûŸBžå[ù-ÈÇäoúa`ȇ.—Áþ{¬.F‰$âQñ#@”ŠrqıU¬ÑœTR3&ŒüõáO‚ôÐSNƒ[]­ž€„uQ÷†„Àf÷mdß•uGæaðßìkäK¬ioÿyjï”ÆQýðòQiŠ$ÿƒëV¯âȂ˂ü‚ï/ÿHöÚÓŽ~Àƒdp‰¿Îÿd^Ë®<ÆU†ýê¨[]/b*äÔ³/p¶„œÏ³&fnƒ„‰Ýƒ óÙ?CÉM­Íð¨ÔÀ½¢)`¤Eõ¦ViÿT÷j#'Ê—å; R'*u!L ɲ* |3=+¡¬¨xmAcжÖ×´·ÿ<µWðRž‘ß:cõ_)¿gF,À¿;¥¹V(À‡JÈ TîÕùuuýÉžÀi“ókÚÙžÚ+øtÖñÈir· r+J3` ˜Ðêß¹.øÿž+«:v|èÀ!Ò)¥5'ô >.wh›!°2`÷¿<Ç©švùŸëVm%4Ò€çå3L`/3AÜ"+Á@ ºžý:ÿ5žêBëJ<è ÎRöŠƒ`(7± Ëüñþ“ O‘¿üÎÝ®µ‚Ÿ EÜÊC†}ÆHCEkÅ2M Yd6yÁµë‡ÿu|øÑ€*ÜxAýNI/ÚR(†‚Ö^³hé §ÿ m©igÿ1µVð¦£AÙAoAœ?ñ®äð-f‰ÚŠv”Ö-?z¹ì)€(»Åç€v=Óÿ®üçK"VD€x†¸ üÇŸè¹à}O{V>¦OLML³A¹]ÉQ>¨i§ÿ1µVðÁSƒ›[>‚”å ½[¿xÅü%\|®øÉбàO Ä~š!9 "‘8âøÓ-þ¯S½-n¢­€e2ô;å#ú(𡤃PÔÛÀh5嚟¥®øM¬¨içÿ1µVðæµæEæ· a|¢Vo1(/Xš… ÒÜýõÝàXèÚâýïzÞº‰ö¤Zõ)תðÕÕ“Å”SÚH-]6W©§ÊÛd/ÃïæŸ!èƒ#ì ú*-Ô=5íô?OíÝxÊ%‡‹`ĈhÖ½Un›™`jm诬†£Ÿ9Mg%~ý $-©ëˆ ú“úý0ð£ÜÃIçÉ&›¿–ÑþѸò‡).׈/Åâ9í„çA¬ài†HĸÉ'pOàÉ# 0„ž´ƒ@J $PʧÙó¥p®É¥áÅN9žÒÚÒjxûõÜÔÒßrù4´‘5=ÿ µWðW ¡C]C|Bü\@¥­ìy7äÏÊ?gíI®ÛÁð¹áÞò\ˆšvÂv7_1<©~ Jgß¼—XÜM_nÑŸ®´êAÿ±8Kò×Gÿ®loµ¡1õ€6¢>±€O“”ržc@)Yœ\TQX°a’H¡>ÐŒf4‚DpuiÄå; d åÀEÜdƒo±?Ò?“\IîÑàKõ7Õ†¾Sî’cÎâ71xVd‹d]+¦'8E>È#D±ü µOô“àŒ ÜOKÀb‹ù â>H)m¼’ŸIÉ«ŸQÓÁýשµÅcAþ¥*R ðbà•À(;RZPÒÌÙ¹£ÜÊG]²BÛõ¦%dBȧÁ£ƒÆƒÚD™£´Q*¾d&ÈäžngŠ\r§HüÕ7yÊ_2îeù_y ä ¹š _ã[tà.­ÅžÚ0H< Ä‘BS €.›X/׃\!W°(¦„ „pùYPG<ǨœVõ€ëN¸¸«0½ä;° Ww>è~¥þ¨îÑVy^mâ­ôù“åОÑJ¤”›Lm‚¾È¨:K¾„v3:=q‘DÝê7†BC0PŸ’k:Èÿ<µ_ðÿ ÚmÚÃÚ (èž(o7ä–eÕ¹pŠ»\üýBà¨g¿ÃáC-£ ÊzŸíp×Ïî›Áõ¨çmoîÓ^Ð~pž`8ƒÅÀ@q;ý@4$ð¶ôÍòOo•_jóAU÷ne±Âü4¨ï&ß1TÙ«tù©¼G>·ÿÃÀ{àéãò‚~A^Þ ¹”âaae³Áh\ –Cô°—!ìÁhgÜ;`{6tc˜Ì‚§G‚á ƒÙ0 X#R•Ç€[˜À,`/¿R‘íøÄ¥—Ú‚¢,EÖbˆ©k}Ôêíj¿šŽÞ¿Ï5+ø¿§ÌQö\Y+8Óñĸc/€ë×Êú¥7‚ém’üë X5 M  éE,‡@Š~?ÛA>Îù;ÈÞò>Fƒ6^­­«ÞIë¢5©Ôý'áú‰>ê^P&î1íu¿)Ñô(ó ƒLO€2@Ù¤4}­>F>˜ÀÿðÏõ½æ d®Ì•%Àb}@é'A |k8n| ":GŽŒ…„û“~M>"ETN šo®E'ˆý»\»‚ÿ»©ŽÜ%×Ë5 •k;´À󌻉ÛÅû‹CЦ@ÉÆbÑpˆ˜a\!{B[‡½†vÆ.†AžÖÏÈ3à›ê›ê ÞToª7H!™$°­´}gûBî™: [ § E Î ¿ˆšÐƒ!@uIJ( ä~v±“Ëg<~ ”S!+¸¼af¢ˆa@SºÐ D¡°ŠÆ ÌS¾Q~á&aæ³@+ZҒ˧4üoÂÿ¹vÿ; ¢ x?ð|áYžIÞ‡½ƒÁä1Å›º1ÈilÊb¶ò<ÈøH~ú1ý˜~ôÍÚf}3L0Á`H5&âÀ0H-Q×Ôtï®]® þ:×µvãé:×ù¯¸.øë\S\üu®)® þ:××kŠë‚¿Î5ÅuÁ_çšâÿW©?zÍH%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur7.svg‹3©IIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/teeth/ur8.png0000644000175000017500000002717612240014741024066 0ustar neilneil00000000000000‰PNG  IHDR^^úB-gAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿÿÿÿ X÷Ü pHYsHHFÉk>-IDATxÚíwtTÕú°Ÿ}¦fÒ z—ŽQ‘Ž ‚ˆ (ˆˆØ±]+EPð‚^,H“" (Ò„ z !½'“ÉdúÌ9ûûÃàý-¿{ïw¿{½¿xÉH­"(|ZEPø µŠ ð¿ÅƒŸÀ_ºN»\.7Ï+^Püø:ûîõÝWÓIùW ÿ[ºÐŠ&àÞâ~ØÝòÆäÌÊN†³§><E3 ‹ ŽB ›ßå? ¬á VÖtÒAþY‚Âÿ†@¿@•ÿ ûìÈžC¯À9ßÑðQ`ø¸*­hp`Ù¤åÿöØ€?Á¥wÿ5èk:?Zõš¶ SrÏeÁeSÚOÇË!2ÑxB× }èsaMA¹MÙ¥Cú̘WbÒ ù¹SbÁìé2¬¦Ï"Èß#ØÃÿ1CŒâf0—-ú3oÍ3<ÛÏlØw+øÇÚvTèÁûµ¬¨R‹~Z ¬oX7–ÇIÜDš>‹  ð¿AW_7^ÿ1ǘ0_…èû#¾ qú¦æHo~jËù•piÿÉN7­½slÅRpíp¸«†ƒ_õh_ÓgäïQ{‡4M©KØTŒ·¦‚µIù¡²=`u—e”…ôŒ⌦`Š· ±@ǶŸiý\È>æ=m…¼}—çdäAäSuû'îƒ ÓNéNÜÖû­3Ë_ƒèÉ1 âÚBTÿû"DMŽÚu Ê Rjúäk/µVxm‘öœöä>“½3k"\‘çûœ>e- £óCnlf³L?„3Ýix ê&'ÅÔy²ŠÎ¿dë‹Ö%/Cþ ŒÔÌÉ ¾(#0AV«ŒþWálHϰ/ aß&W›; ©±yb‹sP·,ikR˜ŠMϘ‹@_ GßÄ¢‡¾2üǵõ#~êiõõvøqØ®ÛgBYav£+h¾¼¾.6Ü;ÝÇÝ'àôÔË2tpÄ~lÚéÎ ¿/¦ì~眹®Þþe´1r: .¿ÿÁ»>‡âG*Š«6ÂÞžû9–Á¦÷Í.HîÙ²SËùÐj}·ö݆C‡]Gtû3Ô/Nú¹d\D~á÷ɉî¹v.µÑ¡Û!s^Æø« ø;û{û—»Ùžš®æµVxÞäMÞËÖÐ –V`òYÈ}à|ß{s ,K-1!- bdØòÐxPc_F‚usÅ Ûd0®46í–ßµy²y4È7¢'¡2Äý‰ûað^-ÛS~œwØç:B ÜÙuobO¹ æ3Â'BþækksšÀÅ1®]¾ŸÇ¿ùêß”pš<ŸøXÔF¨úªè«,#d¸øé™G ç•ì´¬5à?íßê_TÕtAÿ;¨½Â`@¿Q×I—ú€añðuQ¿Ñ®Ø¯û\÷=DîYe~¢ë úhÈU²^Ë«¹!0Gýºo½¹qû} 5IÜßìßú 'Èö%]Ë®Ïý¸  ˜æïLC¡¥­õ²æsAÿzü°ØT(º³|fÅ%ÈÛ‘þÖµàËñ<éíj_9Qžƒè“óÃ^‡sÛ¼Ûd0T(˜•™G[’û ÀVPѹâkÐÒÞÒ¾ªé¢þñ©½Â‡Fðóy””6º£ vêÆécA|#îQ* ä”i–ákˆkþÞ|Êvf—¤‚}¿5µâ$DîŽjq ðCôgQç@ßÖh6.ó‹•ǪÖÁÕzg?½\¬ÎÒ ÖV5"¶o”Æ9q_Ä ¸÷yàx)½iÖ{óhæÇ9SÁ¶ òɪ$Ðïյׂ𫡩!g¡é‘ºá1Ã!²“Ò· N6=v6u$”hņâ—kº¨|j¯ð¿eh¤|Ê}•q!0@ØÅg M¿MßBŠB™?ƒª1å—+:CåC¥£¬»@ß_ßX¿â3>štâF'Œ ´ÍÞJßFÈ}!½ÉµÅP~gÑ×¥ñ3Ó4ã`°¤Öy%ö„VîUR@³çž —‰º4J"J.–ÂÇd A>+×BÓõŽ&ÄCâ}‘:Ë]9ôòmç?kƒ²ÛJSYÍQ Ÿ kº¨<‚ÂW#¦*Ä6PÚè€&b”÷@¹¤ß®º»ŒsŒ.ðÅÛ';šgªíû3`H24Ö/€Ž/uÒÚ&@Ra« Í6BE†x^DBåÏ¥3­ÓÁ;ö³r"ˆïô?ë飼‰+âĊ‘yá±@–ýýª>pµß龇ÒäBwÉQ VÌ“#z:q‹è †[tD°lÓm’­À¿Þ3Ïù.x&y—x¿F0”A5]Õ?Aá¯3N¤+C@„êžÔ­&‹­¢(S Ñú80Ø,ÛM?<íjáŽÏãË*7–¢='ÏAóQMÖ5\ñº&O4x¬§L§ ø§Ø7Võט²óÖ†à¡úÔ¡ÐlI«›šNƒès ê¯{§ÀJíf¨ªÊëZô)86•ޱî÷í¾m¾{@Ë¡ }@F1F¾ Q«Ãn±(в4ùõ:iPlÈéví3¸pâì¢3Ù õÒâ´Êš.ê ðÕÄ[Š ”yúã@ÇåC´Ã9Ó3Æ' òã¸#1mÀ§Þ®~ŽQeû+z‚5¼âd¥"ž ›ké¡™uöÅ= Þݹ¡ÃAßÛÛÎ'À1¥H_zÊ6[7Û®Býoê¿8Â+“"ë^÷ ã&C0¼R¹§j3ØFç/ì/î)YêžÀ5µ°Jf`Ës}SÔŽˆ¾®3ýJAþЬ˜ŒSàLuÜâˆíUm©öuMW÷CPøj”žº³ºî`|Ó4È<ÔϵŸe˜ì!æHr7˜PÿA]c†Å`»VúpÙÈú"«c^>8¯9c]#ÁôE¸3tD4KˆŒ?¡‹r l)\X2 ró²Gæ» ä1£Ë0,E±[¢fƒ¾cXSË'±Ùçô}ef²‡@úç—s¯­ÿ­þ€9ˆAÊÑd6=éÊ"e…¨QBFé³Á0SÝà©…} væ·Ošg¿'½¦«ûÇ!(|5†­†JC=þ]Ä\ðU¨›´0\4®3Ô…F;‘ÜÂq½¢×‚ýª§®w=ä[r•‚dp\-Ü=!92¹[½tè\ØõBû`:y<¼lžªúΑP9¦|¥uÈ€–-ãÁ¸:´‘e?˜†E<ö ˜žÅzpÌ(ûÒš åí ãJbAû\½ u±AäŠTàAÞ•+A W6(#¡ÁòÄ6qû!|‹~®¬ºœñü Ø *XƒËŒ¥ö®‡ÿ Ê=ÊcÊ«`L7~kì Ú×íò èú—t÷C\ƒ¸¶1¯Cˆ'bâÁ›`›bŸ ¶òRGy"ø:yçû&BÝ_¯snšpSûæ; 0õÀ+©ãÁzÉí~ÜÙ‡9¨ßÖ©‘ ×…,1sÏð®aÅ ó(ª’U§mKªžç‚òœŠÛAŽÐ25ðqF| ²¡üž* 1¼ ѱáîÐ`Z5Ûý"”nÉYž ÎÉUqU÷kÈe(0 å@±ÄÖtÕk k:? oð"Ï<&7É7þtâ+Ðe)ÑÊ\0Î0Œ3œã ¨²ˆ›{ ÷.7ÊêØ êB` D¬ [e‰…ÄVÄÏݬäð]T:‰Áà{Ä©¸7¼ª­Ñ$˜£Âf†> !Ë£ÆF^Jtó•{ÀwΑç%Û„Jvù}þ×A~"›ÊÛA4!™º€ 'ÐÞ—õxtE¢R> !_ë~Ѓ÷n·Ëy x{ ¾¾Àû,⽚.vÍþ:çä§ò à©iб˜L'º‚xTñ‹#`NŠñ#èž4®2´÷jû†ªÇA{(ðdà"è&ê*”å`È0\пúI!÷Yš–¦ðf;®8#AžÑ¶ªVˆ¾;öûèd¨óSRÄñàûNÿ‘> ÷x—zçƒZj]a»¬ +Ø'ƒ{’w˜¯°L¼"žÈ2L„ˆ[Cu!› åxBÇèP(¿P<­à äh9õ³5_Êä‡5]ìš#(|5RÊyÔ9j+µÄEÑ„Pæˆý"„U™­Ü –9ÑŠX fŒ—ƒ_X·Ùv€ÍUÞÈö8ºŽ»Û€xU¤‹ 0$›Úß>Qj½À·Ížëxü}Ñþ…Ý'&-ò ¨÷fƒ´úíÀ¿ß’Ê í©ñ‘íUû»»4·þ'`?Tõ³óv.aç:t º2Bç…|h‰‹cÚF¬û òKPl)|¿àq~­P»TÓÕ®9‚ÂW£ ”wkC °É¿6°”GYij ìVŽ*?²AÑĈj»0æ^ˆ¡»C^ÙÊÚËv3ä¦\‹Ïi ÅëŠw–Ïš²V¼ ºMã ]AÙX­»*7C¥Îæ±oójÓÓ›P§~݇ã÷@à©0Gè4Ð/ I TØW8^gFZÎ8¨ð¦/D†ék1të•åÊ­ 拾Êc¸´Þã >HÜ‘p"þA°v>±î\\u_<™¾ ¯5ëÞÐM{5~¦AèÚ0lË_´§4è¶·UÁµ‡ÓÝ™‹ <²îMu®@ÈÇ–'-ý@n3î5h œ’= oóMð·†Êþ%+Ë€g®k›k8ˆ·EŽøÏÓ$Nܸ‘b4c€ñ"Aôù–úD`3ÈSj µ/àaΚ®vÍìá«ÑÞPjÝÁ·Õ[åý”5ìã5ЯÖÕÑÊ ]s¥âCâöG?1±ñ£c‹ ®«PöAq‹Ü”Â]P1£øTÙ‡ÀJÑI8A7SßW_ !ÇÅ3b<è’O»Ò «Þåy™BîîœgÁ9Ï9Ø5 §ÿ‚ÿMÐï‘{8 êJÿ1ÿsàXdml{üN÷ïBù"Jƒ' Ñ@&¸r½\ Ü!³ewà­Mô8)¯éj×Á¾u•ZWÕo“§™'Ä­ç-k@gÒmÑ}Úb9J¶‚è$KXzE¦…×ccãT¬³n²Í×ç%/”¹ÁQàÈp> Z9c¤Œ§õ'õÍ@—ì{Õ·ÊC®ÍÌ.€ŒgÏN¾¤ƒ¸–3!ÀÐÐþƒsˆ˜¨mŠÿÖÀà™fM´­_²+ßíõ˜6G.é% ŽÖ4Ê ! ðRH°ZžÒîl²¯œ Å#kñÚù`_ ÓÚ©‡A}ÅçËdc­ ½¨Ï·Àó<ÆÝ ÐOÒ]ÝIßõFljàfM®üÈÞ*¥·ÌìgÓÎ-¾¼8 ÝuAôPæ*AÔ÷žåh^£Â0È~ðà÷?ÿ çã÷ö=œÆäʆö„´EEiöÏ T‚z¢"µr¸ž·5¶÷×LϳÞ+ =²¡¼Äýb}€0"‰²8Ï1Ð^Ѥú'ÐÖjÔ½@µxMPøëL—yr(È?©•þ¾Àײ® ÜÍ10‚ÄÐ är–ñˆBv –#þÛÁ1$skn¸2ò膓¹`?“›X껞…ž¡ ¤k´p°,©ë\ºA™Ïæ6‡@âÕ¯² ÿÎó’w,èný%-ªÑâÀÜÆ~À1Ê"sWT@îÞüžEA¨=¨­QH–8‰ ¨ @7­·Ö¤_&© GË‘ ¯éb×Á!M5r…¬£Í-Qõ&Ü%OiA´ÃèÜÇ`>N =ð,Êüw˜§Þª®ƒC˜éþ«%·—O€ª÷=·{O‚l¦y´é`ºÅy“{ˆ|‰ Ìõµ/5ÀœìƳ~ýš[“ õùå¡þ;^`„=ï=íûJ?Èœ?rZfUæ¾ )–z?ÖÉcÀh6”ƒL“m¤ Ä|î¡ ˜„>O¹ ”Úr5\ÉÎkŽý¶ üXÄ Pz+]•Î5]ýÿ=‚Â_ç^9]Ó»}K€Ór¾6x¹¼rŸ<)§‚#ÙÇž×?9Ö‚þ‚7Ç»Äjí#¹LÉžl¯ôþµþ€Mc;(½µíc Œ¯«Ÿ7¢:úªãõÊ#¿åÂ/Ñ`—÷Ë)àì`ml+Û„²öÖ—AÓkaÚ 9Äh`¼ “Ý@|§ô¡Ÿµ;âSðÌâmu"d/É.ÏÒC£†M5ëa„V„Ö¢›ØÚ;¤YÆr–ƒ7Ýw·ox÷xy¦€ù°áC%t~åA1 ð/š‚ôÉf²78'¹G{Ï`gS÷pv¤:jáЦÖöð²¼Eö„JseYespZ«NW!:–ò-„46FN‡ÄXƹÌ0ð¿øU¾{ü§@¬ ÄNƒx;®¬Nþv'àyÕQü&þ=tÕ1®úx/Ëer-x_tžr?öwÊ=¶"(éS6¶¢¸Öû²ýÛ@–ȳRã2ÃCs°CBÍ€îTådW(=T$ó:€w¬÷.÷ƒ\®é¶øß¤Ööð2T"}P:»äû’1`ÿ©Â`}â­Q±áQ`þÚ$• }­%jc@ë)_–@k« ×fƒö9Ãe=`œX+"A^ï±ÿFRѵú—,g#xÓÜC=Ý o^jQ=ø)úÄØs›`ÿÅŸgŸN…c¦3#.M‡+weõËýʶ×íÁû…§¾»/¾ô¾íú´í1ÉÀ:Ö²ðUoìtƒSk…§]d+¨XlWþ68{ÛVz!ü㿘»u³m”½œ>|)T ª:à̇Ò¡•7AéüŠôÊï¡ü1›f/ƒÂ®Å3JŸ{ÛŠ9•?Á+ yWõqúó¼¾ó@ "1ƒîGî&¢;†±tÖC›”¦,v{[¸„f-R^N*زè‘d Ó@w‹øHäBÄ|óIÃCy)=ÿÒ<Ⱦ7Ë•ÕØ,×ÊÏkºQþóÔ>áWò)Ÿ‚¨5Ó@H¤ù¤y'xú©õá|«ÌòÆúª¼Gf@ë]M¾Jyn;ÕåôM@ƒ[ãzÆì€ðT±TŒ‡°ö²R®í/‡—úó½¾G¼‰ *@˜ämÈS_`ø ü3ýƒASל`~Çk|êW%äÆÝ úµºÚ´Üq¥ÇOž†Þ­º>vÓlð]µ?g=Eóu¹€öˆì+»¹È ¼š²Ö ïnæö»Ã!kpæÁk½ÁñSyUш¹Õ¦nèahöfòÆºç ¡~lYô 0ï0®7A}Um®>Ž å{m{Áõ‘­´j ?o°ø¸ú ìÿJ’ÿ€ëë^â¹J6è²Ô/´(^ÏEogœC]3Àß"P¤Þ èÁZº4ɦ ¹´Ú  æ¨ãµ ´¯*w@JϺïÇ…AÈT]霳ô×òÀâ¹ì¹w9¸ñ…¿Â.ƒv“¶\; ¶pëÙ²ŽPhÊZye„4|É|¨»/þ§8Ái.‚¶Oë¤MùŒ,”:\öw| ÎʲFåGÀó¨íTeKȧälàú4äÿkºñÿ—¿Žáæ,zh µ<ÐfU…:7Cù‚rYÑ<Ÿz7xgØ-¾úõâû%i–]åÐiº— éÞÄuq@gÕ¾ó–À•†ÇŸOç#ŽýŽøCß7¾ðèíõdÖù¬™ß;;ûÚihp[\iørˆËø:4tk•æJ0„tŽŠb 87»‡{n‡Â[‹ì%·{Ñ¢ÒgAQõ½c Ê\ÞÿPþ ¢/•T‚ù>vpÈrq-‡Âä‚w‹õàlâìåÞÂ.<ââÿ}yŒó\¶²˜¹`zÉ0QŸ Zg¢ï¨ª¬Ø]þ6hGÕÛjºÑþsÜðÂËir¢ …}ò‡æu€òQÅ ò—@²¯Ž)ú ˆ¶Î’Z‘«­ʱSÊ|e©˜¶º•uí>Hß{iZÆ@Œ+Î.; !øçîÑŸmìÎV?aTuìýKUÇ/ªãâ긱:¦VÇ«Õ1³:VÏöˆ‡«w;˜®ÏË¿äùÁû%” . /µƒû)WK÷ûEŽ8ò· Á/S¦‰äfŽQÌQ†!ÊHݦï‡*×Z•ogWg?gsÀ‹OM·âïÇ /<§ù‘íàñ:[W= >³ËíX–LËL‚!J?Ußä*¹•€/~Ñb¢r T¬*ëY±.;5é ¶~cS lTõñï§Œ ­úqµ¨2ž$zˆƒìõ ñ¾˜ jÒPdƒúš&N€'vŠù ¦Š™b$¨ûÄób ¨)¢¹0Ö€U,ÎO,(ÕïØJ›_怫ÔvÙ>›|ûý£GX$^ûu¨ÚàÀdìȃ;<ür¨€ä{b£Ã“!·*ÓtµäÉ¿œ7¨øevèFáÆ_ZàÆJ.È?©‘A -³~ˆ»Ä,ž±Uăe7ÙäZö’ ê£ÚÃÚjpœ³-·‚Òˆ¬·s€è$Ç8ç 2‚EÜ Zè/=¯¨7kÕ=¶§9äAÕ'ºîú{ASBêš¶ƒa²u£4JúJU;¨+U‹: ø³A_®vS߃Ѓ~s@È?«¥j9è«Ïëmˆö$huä0y È›ä6ùßúêáÃO&Ÿ–oC¸-ôxÈPÓ8& -)Ó™ –Ò¨>±åÐ<±yb‹º5݈¿7¾ð£Î``»¼¨m¾–©­€,ù­¨¬g T÷€F èïx‡Àüšyˆi8DnŽ3ŘÀw±Ä[>áá¶=`¸]Vqxr•¦â<ˆaáÃÁü—:oÄ•BÊ)?Ö/†.±'¢—‚n¤éã# N– d¨óÕ)jÐ^P‡kG@>ÎVyü ﻓÁ=§(±4ܲ#r€¿«»Òû>„†$>¿R6™šRÂÛGlS@”e>Ðïï¼oªýrÊä:^Ô»Àü½qa¨3<÷8îO²c²½ø_ó¿ç_†Ï ë ë€Lޱ§¦õ_çÆþç¹ r©\ ½Œ’-µ† ®Ê7än …Jr€³YD6 @'ZƒÒK¶ðð¤wƒó>[¯ÊP¨khúBÃbè8«ûÒŽ îlÜš˜кj—´»þ‰ú˜1aí’lÍXPRÄr†BÔÛ–žÆ6 lR-¾<°Î±–[wCl“Øb?=úÿji„¬¦¦ù½‘3ä*yÜû\]^8òøžˆí·­M^—ôÍÐmDÛ&Íg9ß”d´fÕоà×Ä7âK±|Û}üç riåðªp°>QÒ¬ôä¿âÌJ€’Yù; wAÝÏ~•ü($¤¥t©?bû%dÄÙ!ú§èìH˜,ÆÅÆk üb©x¨ƒ I4á@{:Ò8ÊQ΀Ïè›í¯Ž Çhç%°Ýj½É6üñ~³ÿ Yú­e,Ä7Œ:Ö ÆBãbƒÆzV‚¼D9ÿ„ıu­ ÖglwÙÛCY/ÿVý1P<ÑÓë/uêÐå„'…÷©¦[÷_ç¿ùbý‡¨CµIÚLp®pnsÞ Â­ „,6ö7ìQÁz^vr»ÜÌXRùõk ewÙGÞ¦ç­ HhšpSl<Äv»í‡È© áñÝ¡ô±²ÉÖ2¨»¶Î´¸õ½"j}D6ègëO‚–¢™µÞ ó5«Ö ´«ÜC¨~¦¿ÞLLÜ ôGõïêÖCÌ’˜üÈ/ Î70º0OlŸ€üA{_6­L5¨cA&Èod{‡9[=•iü§VnŽ”3ä|ÐMR2•Ç!fSä˜ðPÞ±hRe(¹»°qAø­þξD éוüÿ•ܰ=¼··w±wäOÉß‘× ²›ŸMûy#coWÜZ´o83ù)0Ž2ô×Ïí-yD:þV…ª…ôWßìe’Gð"/³ä›ò-¹Äb±@¼ <ÉãŒZÑ‚FüòŠ¡ðÇý>ÕêóhH<ˆN"U¼Rs†—¬üK.Ä6è¿jè¸á~ˆ}:nMüã5ô¿Î ;-øNÝ«~ŽîŽ.Že ìBÕ&å‚i‹1D¬8Ï—Àföÿ:¥ø·¨¾É»>æwÐ“Ž º‹BJ¢bPŽˆFQb(ƒ¸_‡F¿þÿ•ëù…J0œôù }e! ÓŽÇå~ï…q5À +¼êP¨{ÁYÇ1Øb¨<,×BÈnóCÆ$q\| ò{ròè¯Cd”€œ.çÈù #d‚ìòM9O.yLòà×þüúÿÿQùŸC* È¡ˆ àsùŽlòuy·üÈã²Ü^ÓÉþûܸÂû›ÀÕÚQä8 "‘ùò˜Ÿ12=¢L[âXMgûàúEiD¸„Ÿ€oÉ”K ¼Õt’ÿ>7®ð;ÕgÕ¡àèSj”{ä4ù=X†›™ú€Ðs‘T`+û塚Îö€¬þ^`”X'<À"ÑPÙ4½ÅøšNòßç†^›Xhîkì€ítà065Œ5\6ˆ%âOÀ y®v}Œù·…ª¾Ã0bFZ‰.T'ÅZ!€9"]9äÒÇj:ÙŸvZR›­SŸÞSåªr‚%Êü èéÒu;@­ Ó¶€, ¨z/寽üùë;F¡˜1ƒ' ð‘xILm¶öö&¸nuÎ÷øA,®èŸ‚ðãQŠHÝ{ºúÌš>‰Ÿ·‰m$ÓØÃ1Xа–­r7H7¼ü²¿ú[…¿âǨÀŽdù‚@¤±üO¦ºÂÕèÜ-E+A»U7Ñ<Z.kUÒ¶'„Գ̳ü‘g›þInئ֟4Ì3¯ˆªˆ>ž®Ú"¨ˆ¨\\•â#ñíAçÔ=ªè@Ù¦Lí@Iâg£En\ÕÆïÅõùøê(žB×@·Wi­œª›¨@×@Ù©L±P¼ &‘DÁÿ=ÝéÀ…Äq?C@™.Ú ?èÎ)-•] ¨Ê-b9ȳrжüZ` ?ìûª(|­tTÅ\È?gãX,5¯ +‚zm’nKJÃtÃbç5ݪÿ>7ìOŽ;úªËpùð…=òù9–+}ÁpÈ÷´½ŽG‹ðgÁmHÐ[A×D™­xA¯ÓOÔÃãú×ôzÐ}¦tWÌ ÿÌŽO³˜µÀ—r—< У‰¡¢0Œî´n"™8 †BA\ÿ; Ft€ŽNP¯iZgð]ðÛŸëSO¾·/h£´Yò0–>ÖçBèÚ¦‡A÷®TyÄÞJ¨ÀÜEOÚ‚Z Ý«­¯Ç×ÍŸîÙ¾Ëþ ð…¶Sæ€<Á}"ïhå£àiëÝá6ïu)ØbÕõº£Ð4­u§ö¡Ã˜Žë:å×tkþ~ܰÂË–2E&‚·ç ç 8ùÐñ G/AÆÃÒNߺûü \ ViR ­ ¢y(æ-q6tBHÄtŽœ¾B2Mzc Èr¬|Ä6ñ®x˜ÊH^ü¨À{¬f+ÈUr7Ç€£dÈB ˜ ªøeH¡ H&°âEÞ ¾‡ü!P2§¢¢r\MÊÏ+é¾Þ¾cËÿiÔkáÛ¡Y\òk‰Ý!ì=Ë[f7ˆÏÅâ>à4g8¢•ð‰+àlêŽñ΄¢±åsl:ÈÉ-mTY ®Ún¥XƆŒì±Òt,_…ýöÄ=[ÂhðFã×›4„ÈþQ ¢‡I˜:šn€Ù™ëܰÂÿ–’w‹íÅã¡ôpñ’ÂHð~æ*v¬­‘w øx%xÞv¯r¼ öGËG–µï ר*„l×?/>ƒ”ŸqßBÌS‘»Â_ù¡Ì—½ ,ºâs»€ŠÇ\=À½À÷†ª}´ #åÍ|¡½¸ ò1]쑬e´CÈŽˆéQ ¦UBjÒ× ‹Ðï2|î0ÇêÊy`‹*ƒw˜SØgƒÜ0ûßåEP|¨¬V^}¥9*t1„숼-Ö᎛•0̇6ŽØ†Ófè,º©ú£`\br™ÚBض°aÃ!&1¦wìPnV…ÿß,úv–æ·Ô™•‘°ê0'ð-ôIÿUpnrq»Þ¾Ô¾¬–W•u€Êö¾Åî_†Ð@ËW©Ñ`mé­‹T‹c¾_‚0Š(Ñ ªÞ–÷7‚÷Mƒ^çšrAnÿðÀKê@'¤Y~lÄ$| Í-u-À4Îòvhˆ¼V¿8y,´ù©ýèŽ?€iÙh^…OÌ+øªôþiòcð7U›èô ÞíKðº@yDWêõ¦²Ô²T0ö5}jšIQ v¤t‚:†„Y‰Ã ”°¬°PàkÎd’ p¡' 8G4·[EŒèº=º8ýí`ˆ6ô4Lq^ä ¨CÔöjø[ù¯ø?ÙG;®.ù­¼_6Ñ:HZ‰Á îQ~TSÿªþèúú{A,ŠOjºø5Oíþ_DMV_P÷‚U+Ã:\÷»“]… ËÖ¡dBÄ€ˆÕQazgØÜÐA×P9¬L¬é¬ƒü– ðAj7ì<| ‹ ðAjAáƒÔ*‚©U…R« ¤V>H­"(|ZEPø µŠ ðAjAáƒÔ*‚©U…R«ø?«ÝµÒÆ\N%tEXtdate:create2013-04-12T11:30:09+01:00^0m %tEXtdate:modify2012-03-18T22:59:27+00:00ùe3ËftEXtsvg:base-urifile:///home/neil/openmolar/hg_openmolar/src/lib_openmolar/client/resources/teeth/ur8.svg c>˜IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/appointment_shortcuts.xml0000644000175000017500000000317012033133562026716 0ustar neilneil00000000000000 Hygenist HYG 14 20 20 minute Filling FILL 20 30 minute Filling FILL 30 30 minute Filling/SP FILL SP 30 Exam & Hygenist EXAM 15 HYG 14 20 Denture Appointments IMPS 15 BITE 20 +14 TRY 15 +14 FIT 15 +14 Prep & Fit PREP 60 FIT 15 +14 openmolar-1.0.15-gd81f9e5/src/openmolar/resources/appt_ov.png0000644000175000017500000012741412033133562023706 0ustar neilneil00000000000000‰PNG  IHDR)´ÈÚ«sRGB®ÎébKGDÿÿÿ ½§“ pHYs  šœtIMEÙ \³wš IDATxÚÜw˜]UÕÿ?{ŸrÛ”;“™´™Lzƒ„Pz‚Ti¾"( XEÄ×ׂQ,(¯• (?APT ô’¤—I2Éô[OÙû÷ǹ÷f&™rîžç™gfn9g¯½Ö^{­ïZ{-Ѿk»f”.­{ßZÑçû}½¾÷kûó¥µF¢ÇØûtíïôîÍÇžüìù^´½yÜ‹æ"sû¡±?zÞnr<¯{Ò^¤k´é“R²jõäh[S_ÇuŸ½åû|û;ߥ»»›\.‡ïûäòyZ[[Y¹j5­­mø¾ëºtuw¿í˜jÛ6Sf°ø'ñÇþñxœl6K*•&›Ëá8.étšûîÿR2é J)ÇÁ÷ýý~±š¦ÉÖmÛxæÙçY·n=÷ÞÿG:;»èêê"•NsÌ’¨©O:&Éày™Lß÷‰Äâ|ì×"„ ï8´µµ“ËåöQpûÝBÕš»~û;:äp>òñOòõo~˲ÐZÓÑÙКN“ËçÉhîîî&ŸÏ“N§QJ½-TMýXjÇNäÄSN#™LÒÙÙÉ#{”U«Vã¹.™L)%¹\þM£ÏøÜg¯ûÒ¨íûL?Žgžž³Î8ƒk>ö)&LÏcœ7֭ò-žxr)5Éj^Yö*O<ñ$GyJ©·c…ø¾ÏM_û—^xó<×õ¸ë7¿ã™gŸÃuž~ú6oÙʲåË™3g÷ÞÿGª«ªX¹rÕÉjâ±Ø~M€ãºüíÑÇ0M“•«V‘wžxòIV®\ųÏ=ÏùçœÅïîþ/¼ð" ùý=÷2mÚT~èa¶67ÓÖÖF:âû?¸ºº:fÍœ‰çyûåB.ŽirSÿ~êi>ýéOsÕÕfÁüùL?ŽË?t5 xjéÓ¼øÂ‹är9ìˆÍ'®ý í¬Z½š3fDx»]Rh¤|õKÿÃúõغm+üù/Ìœ9ƒ'—>ÃÖmÛˆÇb¬]·ŽÉMM£ºÑ!ص{÷è*)Û¶¸ý§?çâ‹ÞËòWWð®w½“©S¦0©±CÔÖÖÐ4©‘¼ãðÒ+ËøÜço ÕÕù¶Ù…Š&oº»“T*E*!“Éв{7 æÏãðE Y»n=sçÎ!™¬föìYŒ7ާž~š8€éÓ¦í·‹µ}©míí¬Û°žóÏ=—ÆÆ_¸C8Nž‹/¹Û²1 ÉAó磴bRc#cÇŽe÷îV˜3—d²šÅÇËá –¬©ý™æL&Cóövè!ìܱƒ%‹%ÐÑÑÉ'?þQ’É$O>µ”K/¹ˆöö^{ý Ö®[Ëá 1göl Ãx[)(!®ãrÜq‹©¬¬Ä¶,b±8¦i2iR#‹=”ŠŠ¿¾ë·|øª‘ÍfG•‡E%%ÚZšõh>HkM4%›ÍRYYÉΖT$*PJ‘Íf±mÏóð<Ÿîîn'¢”æíz9Žƒëº$“Iº»»K/¥Äq‰éL†t*MEE‚ŠŠŠýÖíÙû², ×q‘†$N#¥Ä÷–ebš&–e‘ÍåP¾ç{Äb1º:»¨®®¦»»˜¦I,c$En´°­5J©~O)†aÐÞÞAccÛ¶5S]]…eY,}úæÏŸG"Ûx{_=]U¥ù|Û¶ñ}ß÷Ùµ{7S&Ou¹-bR¢}×v­µF+UGXöd;BH´V@\Öºð!%®ç!Fi{ž=š“+(‘%Š ëž‚0@©ÑšwÑóÑ#{_@£ hƒÂ¼ŸÐÐXí1Ò#´x5˜œÈ÷ý‘£µ”‹}èØÃÎ=²üžFqœ<Êy¾VTT’J¥z rôd¸g´ ÄÃÂ[†aຣ³NµÖÄã ÇA«Ö¼†YœìD²=„ !"Øyöa’Þ‡þ}®¿?4?[â99²™Ñx†e eaª¿yˆŽþÞ.íЙTŠX¢ô†ÏW R=ÌPÆ9‚|²zÕ ’U•Œ›ÐRŸ¯J‰%Èç2ô» ákÌŽí½7›n¥4ßþö·øÌu×¢´À°ìaóÕ0L¤¸®ÛÿZe€u: k5‰ñ«_þ‚#Fcc#&…Ñuò81f0‚­ž6ñòÜlÉ|'GUe%élß÷¨SG{k+•U•tuv#¤ØÇ°-!$®ãî…ëbHIÞqñ•?$Ás\Ïõ°m;%ÝÝ9dS\6ch-ñœ<† †ï ¤,¹‘HÏuITÄéîN¡z…³uÉåq·„[8®ƒçz$ º»ºC\p–a²vÝ:¦M›†aX¤:ÚÆÐ¯°+ñxNï"‹aY6ñhŒÎîN ÃD 0MƒìÞ8“Ö$ <ßÃu<‰8©Tà&FíŽëàzÞ°Ü-›·›9ƒl:5ìE«v,Îý·ýˆs.?™în„Dl¥–e‘w* :;:¡‡üj­‰Å¢X¦‰ïûHià:.¶m¡l6‹ï ѺÒE¹çÞû¹ñóŸ££³r™á©øH;·¬ÇéneÊÌxJ‹Dq\_yÔÔŒ¡³½ Ó¶p]o×.‘Ï»DcQ²é,–eÜ\Ã2Å7 [ÂCý•Ó¦ÐÔÔð¹{«ì! VÝÿ5œFòÉKÙqÛ‘¬ýÇï©;‘O\{ÍÍÍÔT'™1s.‘xúÐÕÔŽ‹ešX¦ðMkž}ö9núú·¸þ†ùëÃpãÿ}øoüøÆ–-›ƒÝ¼Üñî­µ*XÈbH4R0ù³]¤¹ª'.%ùàá<|IV庻»Y»nZ)~óÛßòÆúõ¼ç‚KH¥Ó˜†iRbÛ6k^{«>òQ~÷û{øòW¿ÆÍß¹…çž{Ïóøì 7R[[¸C£Fõ°buÁ5"_•ÏÎ_Θ¥g¿};þ~;U5cyþ¹ç¹ä¿.Ã4 Ö¾±–U«WqÏ¢‚h$R¢5‹ñ?_ù*>ø0­m­\}ÍGI§RlÚ¸‰o}ç^|ñe´?4:‹4›MÁ­*_¥ö?¯$ñÏóyWîF~~ñªÆL¥xø‘GxæÙç¸õ?dÃú œá%$*☆m™ 5‰wÝõ;>þ©ëøßŸÿ‚/~éË<òè£|òºÏòù/|‘-[¶brhcD£xž;d^öZN7þ‹™½þcä{«ù±hŒ_ÿßÿ±yËf¤tða8®Ëãÿø¹lÓ0B`™õõµo|›5¯¿Æg¯¿M›6q×oÇO~éLš¥KŸ²ü‚Æ÷¥XÔçæHùð‰ ‹æY2~Ü÷Ò=ù@ž}âßÜøù°-“®înî½û·üúW¿âc½†ÅÇǧ¿‹––]\|á{9ðÀxcí:Î9û,˜;—çž{[nýŸ¿þ3,Y| ¶-á9oÎ,BQ]]ÏæÙ3.:“íý#Áõ<ž|j)¾¯¸àüóx衇ùÄG¯æÅ_䱿?ΑGΦÍ[øäÇ®arÓ$.ÿQSSÃåW\ÆGË´iÓÉÍÌ1kÆtZÛÚ1¤209R ²*ÇÍà‰%7Ð4·Ùñ†aðõoßÌ ÇRІ†þø§˜7ïž{áEþû¾Ìq‹¥¡±‘“ßy"_ûÊ—ùÎw¿ÇâÅÇòߟ¿WW¬Ä0 :»:ËGˆaåL‰¡SÃãO²žS—ÜĶ¥ŸÂ½a"º³›ÝmmÔ×eññ'ò³_ÜÁ;Ž?ŽW–-cÕª5üúÿîbÒ¤I\|ád³9N;õ]LŸ>ïÿð6þúð#´4oæÇÇ­?¼¯ëfî¼ãgtuuYöF mr€õó±g}…Ím_£f~Sà(Uò0:::xâ©¥<ñä“lÚ²™X,ÆŒéÓhkë`Éâc¸ìýïã—¿¼“{ïÿ'xï»ä"¶mkæ?ú ±X”C9xˆÑÍ}é”Å—ÈA éí3á¨rÈŠÏpù¦+øhˬ^ÿ ‹9Œx,Zú\$b³~ýêëÇpÌÑGqک¾Ž|>ÏĉãS[Ëw¾w+Žëð£|—SNy'ë6lÄó\¤”%0³ì1ö$~Èt*Æ×Læ“þFÞÿú'¸lËe|åŸß'‰ƒÖÌ™=›­[·ÅØÝÖŠ¯7næ›_ÿ*³fÍä•W–«¬`Ù«¯òâ+Ëp}ïÞr+¾êJ8`±XŒöÎ.ÆÔÖöÊ\/÷G÷9‹ k(÷ñÑ|:ÑÉMË.彯}ˆ?gÖ@Îã¦/ý[6oA‰”‚–Ý»ioï`Æôi\öþ÷qϽ÷ÓÔ4‰‰&pþ…—ð᫯$“NqǯïdÑÂØ>mt%xȲG—Cþ‘ËYgž†aC_'UÚZš'È0ÉeÒCÞ…•VüùÅ¿rêaïÄq]bFtM* .@.—#™L²bÅJrùMMM%WÈuݯq]LÓ,ýv_©!í'Eÿ8RUSOg[Ë00)Iª+ÅK;^fNãlâ2F"R`šcòy‡X,†çyX–I.—gÓ¦ÍlÞ²…ã[B`®[À,t0Fß÷‰Çã¤ÒéÀµ‚åcHƒææf¦NŠ‹Ñ¶k'†1tƒygk ¿zùÿøôIŸDy>–acY&Ñh´iŠÇ㸮‹çyD£QþòàC,XpõuuTTTÐÝ`l±h´”±l°Ž *7ô Í /¾Ä¬Y3©®ªVÈ?fGùуÿËÙÇœ…mš˜XÄí(Zì‰:G#l;º¤R)LÓäÿîú-W]ùA::;±L³À‰iš%þƒ ›Í¢z¸0åòÕŽÆ8óÌwóïÇ£µµuÈ÷È{¯m}ƒé SQÊ'jF1¥I$Áõ<´R$“IÒé4žça˜žë±æµ×˜6u*¶mcš&¾RD#òù<¦i"äó†iâk¬¬¬äÊ_Ã5¾ŠÄòWWJJ)M*&“N ÃUTF+HåE§Qšð°L+H óÜQõá4PQQAE"‰Ò¼m¾ï ù^†4ˆò¾ƒF£Bú–eaÙét†QËJ Œ=’5IbÑ Â´uËVÌn2”Ë4Lª"U´gÚ )ƒ+‚ŠŠ ²Ùžï.­<×cüøqttt™§ˆ zV“¨!•ë¦JèÁ•žTUVÒÑÙ9¤M¥¬ a°rå*N:ñvíÞM>ŸòÜ !°Í®çƒ¯Õâ$E"6ŽãŒj~”iš¼ºb%‡|0cÆÔ²rÕê OÊ÷}ZZvímûO¹t!Ê”¬®¦­­\>ÿ x¦8‘HˆÇéèèÀqÜá?³Üq¿Itj¥©««+$“lÝÚ<üô ±òT+ͬٳéîì ï8´¶¶! ù·V•¯?~¦V­y­‚ 5ù|Žššš·MösyJ*ÐІaм}cëë1MƒÿÈ«@«ïûìÞÝÊĉð\ïMYHoÅæcÉš.¼èR¾ýío þƒi†Å¶íÛY¹rÇ-YL6“ý£U)…iGÐÊ+¤¢{Bâ‰cjkÃgSo‡2Ùå~¯”é[þ÷èQ^À÷}ª“ÕDl›ðY»¢×½BOe Q¥MBÑZpA´Öär9PW7'ï„Ç0Êo”=?Ã<ÎRœ'Ã#ƒý•_þâ§A¦²Ϣ✔"ïB˜jºàz¦S)Zvíbܸqtvv†ºxS×ÝPŸ…(¥ˆÆbä2©’H›=oÜ39Øe¾ïŸ×{Ö²”­téè„F÷†1uµ´ìÜ…aÈÒë¥èzO­šÂù=­5‰ŠDpà3émé QªáÔ—^‰Ø7ˆ î @[+¥Ê²-Ë Åo/ Ñ–BdI—So3AèÀŠé9?BÉE:{ÍOàªÙv„ÖÖÖÎQc•V}êUMð  §(d‡Íg?O…(åSYQA* Žuô˜Ë^GD ×¸…”ÄbQÒéôžã2…×Eaw”†ì%+J+êÇ£½µ Õ<ïñ, ò°7ÍB¤aedd0v$R–üB «¶e‘ÎôwϱùUJ}éGf”ÖÔ$“xžG*5¶ÛãuYX”⟅(Yð¹àh—! |ßEk‘¯UUUtvvôžK±g.ɰ.I2¶mQ‘HÐÖÖÞsë…ë¹V)ÈEeE%©tº×ÆÇ{nd½õ‚eø…cb{¯K³/¢Â0wÛÖ­Œkh¢¶nLéuÏóؾ}Éd5U••d²Y,ËÂ4ƒÇ8ŽÃ]ö!îü¿;{í:étš¶¶6bñ8ucÆÐÚÚʘ±cJ“ð‡{þ€ë¹œ{Î9D¢ÑÒó\×%•êfL혂BS%€@)ųÏ<Íü¹³ú]¤aµ½çû¬X¾ŠÅK–”ÆÔÚÚJmm- éN¥‰D"ÒÀ0$B6lØ€’I ÈB”Óó_˜›ÊÊŠ}ˆ“Ï‘îjC9dZ àe÷n–¯|sÏ9§Ï ËóïÎdS[C>ŸGù>–m—¢ÿ®ë²iãÆ$+ûÖ7C¶BûÈÛhnnfòä&®¼òJ~ä-ZIJeËzåA,¨gžË)§œBSS·ÿä'\pÁ\sÍ5½ àÈIÏü¦l6Ë£>Ša˜\{íµÜ~ûí!{çЈ‘K€“=À­·ÞJSSmmí\tá…}ÔQ¤Rݽ!=’‹óÓÔÔÄUW]Åã?Îa‡Ê+/¿Òk.d!|ÝsŽvî܉纫KdôüÞH¹E%Û37ç¾ûîcÉ’%|îúë9æè£¹öÚO•¬…=¹Fb¾Î›7ßÜu›6m¢¹y[‘êñ¾iYûäÉd³Yþùøã|üc#Y]ÍSO>µ/­#æIçL{Ž[ìů™3fòÛßü†ŽÎN6lØP*«ÓW¾V÷ìë~EIzzéRvìØÁI'ĤIM÷´ÿ°‘ ¶§EÖó§»;E*•bÅŠ¼úêŠBt´·,Z{ÉâóÏ?ÏĉùÃîáüóÏçúÏ}n¾KÙ[†^ãu¦NÂ7¿ùMî¾ûn¦Ï˜ÁòåË{où5ò){*¡0®Quu5_þò—9묳˜ø`éà@×m·ÝÆ<À¾ð^xá.\8¨_[<ùžÏçùîw¿;$_¸çç*‘Û×uøá‡sã7âº.¿þõ¯iii ’þCuu57Ýtçwcǎ塇bÒ¤IƒŽÓu]fÏžÍK/½„WÈ?*ž3”ÀÈ©§žÊqÇG[[‘H„‰'FÃÍ7ßLss3;wîdÉ’%¬Y³†9sæô9–â½b±§~:UÕÕ\qÅuÔQCÆ=Ëåiò|üñÇ3eÊxàjkkû•éþžWO*•âè£&‘Hpçwr÷Ýw—6¤‘ÄÃÂò¸¸i,_¾­5GqD¿%¾‹/Z´ˆ7FY´h‡rÈ Ï©­­å7¿ù gœq,\¸Y³f…æƒÙ‹eq‹nZ4 ûFi¡ì]Ë;™LòÅ/~±ôMMM(áX°` ,`áÂ…û~Vìû¬D"ÁYgÕïý…}ã }Ð)„ bÛ%·PQ(Gáîñû÷ºÕ™gž ,¨²²’ººº^cèËÂI&“ÜxãýÎìçPqqQzè¡e/´¾K,#›Í;¥e¡|¿€hz+Ã0¨¬¬¤²²’qãÆõ9ßýÕt¿ì²ËzýßSAíý½žÖÀâÅ‹ûåYýß¿‘Qä«aH,+Èí)Fsí§˜0a»vífÓæÍÔ&“ÔÕÕ!ÔÖTѲ£9TƵ”’l:8HÚ¶»R0´†IxcíkìÞ¹L6d9!7¶¾pc efòÏ?Á¦M›©¯«#žHðÆÚµ4LœHݘ1¸®ËÂ…‡‘ˤpóáKd³9„öiÛµ3´’ʧSLiš„›Ïкk'åq‹Ø6U•ýF·´ÖHà­½'Ÿ|ŠiS§ðô3ÏñÇþ'Ÿt"Ë–/ãÓŸú$±h”† ãhÙ±mXÇs²±8uµ5$bv·ìÀua[H¾¯¨Sj£M§Ó<øÐC¼ë´S¸êêk˜1c:;[vññ]Ã)'ÈG,¤³½5Ô鈢­<‡Šx”Ý;·“͆[ç‘H„ÊxŒöÝ-ýzûDF•Â4ú?hÞ¯T{¹ KŽ9†ùH>ŸgÒ¤ID£QÆ‹çûDcQ"ÑHYÂåûŠ9³fPUGhJIi ‡|Ñ56cjªC+)9¦fÐn,Zk’É$gqãÇ%O ÆG"â‰D‰aÓ§ME÷UȯO¡‘ˆ‚2«ªª ­¤@¬šÇêÕ«¨MV‹†WÈF!$?Nä+Åô©S@]}B©­­¡²ªÇq˜=kV™U.¹XŽñãÆR“¬ÂÉGBÍQ4eîœYŒ©I‰”'GżŸÁÜøŠDóçÏcÍk¯3nÜXÞ{þ{¨©­¡&YƒçyTT$Xxè‚ b˜™ê‘h„iS'S“¬¡6YY‚D†çÆ…së‹%º9ä`Ö¯[ÏÅ]XêXÔØ0‘L6ËâcŽ*+©WJƒ|.Kcc5ÕUÄ£v¨y°l›I S“,KîÂÒúUR©TŠÓO{¶m“Íå˜3{‰MMM¥zÏûTtñjTÁîÇè+l[Ìi ¾#Ë‘Aw ¥õuuü×¥—”jZWTVP[SCeeE/‰ [ˆnl¬Œ1+_÷8ÕöyáqÏó˜;w6ñxœ ãÇ“Íf™5s:¶Á²Ì’eR>_{àJaù*e©–v¹Ï 6Ÿj9ø`<ÏÃ4M&NÏú ™:y2¹h¬Ëàë@>Kñ^º¸I‰áY)vŒÇãœðŽã©I&¹ìýï#“Í`™V!Ÿ1بˡ³ˆ•³îŠxæPÖê@ ÿ€Ày</1|üرè‚97ìžboâÉ›°ãÜ'¿¨ª7Øüf_zˆÏìóJišš&*Iƈõh§5äˆá"QzX¢0X«ø©­µ{¹¥ '–Ôˆñªq¼™rSìØ0q"Zk<ÏÃ.”È.*¨rƳ‡ý–гUÖÐCXøo‡K„ð÷ÿÓhnhþíÊ×7£ëîþÆ×‘Σۯ”ÔÞù{¿7¬ƒÈbdÉHï‚#Ak±€WÙCEY Cë›ÀÎ7ͺ Z÷Gå>Ò´Žd"éH\æ@-æ“D"œ¼ƒi™¥œ Çõ˪Sä+Ïõq× VʽÎô.ôs0MCxÊGzåÉvâº^h¦I!q„Àq|„P!»ÀqG¯ízÐmY‘Ëe‰Åb%×À´¬ #Œxž‡*³–ãx¡Î¾Ù—çy¥ÖKZi"ÑHPñÃqˆÇb¾ª9˜ „몷¤ŠH±‹v6—#‰” âår9¢Ñh©¡‰Öá 5¤ëùC¢Ç÷Žã# ªh IDAT¥*ƒúN›}ãŠÚ±9óÌÓyzéÓìnÙÎ÷ný>óçÏçµ×_çC—€ŽŽV~l»Ûß:W¾ÏSO>‹²$“N‡>™ïäÛ™7§Šé#¼xµÖ˜†ÁòWWð_¸‚|ï=ä`¾uó-˜–Å{Îy7óçÍÃq<~ßRÕ"wHHº»Z †“e)åu¬öÜ‘H„ŸþüêêÆP[SC2YÍ弚¯Ýôeª*+yÇq‹ùÇãÿfå Q†’Ê£½íœpübòoU­®½øj[¶låÿüÍŸÇÏ~ñK>õñÇ¸í¶ŸðÃ[¿Ëæ­;¹ëžgHVE3<%kš6Ë^YÁ9g,,#ª5rJª½£ƒÛ~|;¼ü2®úÈǹåÛßàŠ+¯æ‹ÿ}#çŸ{6wþîaÚ:ceÜS’NµPO•Ee<ñô,[­Bçd)¥©«µxÏYã8*œ’B€—å¤w¼ƒºÚ18ù< :ˆªª*­é¦nüáTŽ© ­¤|^}õY¦Ï>Žî®®€|f'¶½’Ñ@ÜUá`í»Ï:“©S¦PQQÁ¡‡ŒëyTVò¬„‰ŸMã¤Cc0 m­»@u²¾¬:ŸÙHç®{GE˜•R46Lä¨#dó–ÍÔÖÖròÉ'1fL-‰x!ÍÛ›i˜|)–^ ³Y‡[FkŸýá*Zǵµµsô‘L›:•SOy'Éd;bsÊÉïÄõl;Áô™§RY]?lѲlع;WjVúf+åŠD‚sÎ>‹ºº:Ž:ò&ò¡+>ÀŒéÓpœcÇͤºþ ð8„––Õ´lº³Ì("–˜Æ”§‡nƒ¨4TÄR(ÕÞ’ Nù·ñÑk>Œ±ikÙÅQGïûÌ;ð€ d‰(œ¢k)(ß­ð(¯QÊ-`CC󯊕R̘>•ïßú]R]¸®Ç¥—\˜Ëùüž|åày ­¼JJ¢ü4 ð¼\ék8Zó½ÜÊr茎ãpÆé§’Ëå™?o¾ïóý[o!“J—\Z) |/‹á-)ßOƒv‡¸Â†‹›ô¿p+++¨©™‹ëº\Tèè‚Öœ~Ú©d³™Bʉƒò‡«$Àð)Ȇ5¢¸W9yR  ÚPÝüíoÐÙÑÁÇ®ù™l×óPÊÅ÷œP…D5Až”ò½ÚÑå·‹ïeÑÒ©¤4ÊÏö;.s s¹««« Ue ŸrÝb×fyȰ0@H”(©°˜”Æ µ©ˆG0Ëè>ì+E6›ïUOjo:…¸®G{kkI(ö´²¦G]#­ò¨JJ"ÑÚdðrr»´G4! E¸I à{x½ò×úøL&[RXí­m¥÷K‰²Ú+(ËcVù^erÂ*'!‰x„h4R´©ñ|E.çöß`¸0J©R•TjÏ±Ž Äh¸d‚hÄ&`™rØÀ³”Jç›"¿‹uÏÛÛžvÖ¯m€Bk­U¸#Z˜C´.à¡•ƒ Yd%0@Š˜oçýY!¥ ,ÓÌîö SÌpt”ÒY—3N>Ë2B)ñ]½ª@¾‘AÝïá©Dˆ¡ ,!,„C†´¤‚µçùòÜ=¥¶mãû¾¯ˆÇãÁ¡EÃÀq]Ð>†93’ Í á»8Žä mòN}¨ïÙ¶ÉŸþô/rnXG M+4á­«‘b༠â{¦i–•”Ã{µ\’…Ìâ/´2Â,sQ˜(Ùˆ¶Ž ! “Ö¶—i˜à!¥=àœ@pè9Ncš&¦dšOób„£³¤p,Ê-M&¥¤­uc›fƒUWÞ20\é~-•"_¥”AdÚ "·ŽãÇI§ÓAeØ‘5¢pœn¼è°éÿ–¾@‹ÎA5EOZ3™ F¡¨^±œº˜Õ_F&¼ÄžþåNF92¤µ €ÜrݽX,ƽ÷ÝÏ ÇOuuW_ó1®üàüíÑÇøïo «s3К!¡(`Q;|­]„ŒcZ1LÓM¸—7 š}`\Êó<–>ý ñxœ]»vÑÒÒÂ˯,㽜χ/B£ðÜݸ¹m¡Àa!$¾³ÀÍç˰¤4ÊkÃ0bXhΚQ:œ$ !0MƒãO<™<ú0ÿøÇã<ðç9ð€9Lž<™wŸu:RJR]›1ÍðÀy.—ÁuºBïÒ=ydšQL+^η0 Ö©i6Mƒ+WóÇ?ý‰K.¾ˆ'ž|Š]q9çœw=ô:Zwâðrˆb){­1 «P*Åö}M]ƒ*))%Û¶5sÓ7¾Éoîüë7làµ×_gÂøñ̘>=XxeblûSî[¿š"V‘`ûö4Nöó|㦯bÛÓ§O ]¶¡¯ER‘ˆsÏwNµ‡¶5DEnÄ£&EìmÃÆÜöãÛùÌu×rúi§’N§yÏ{Î š=–žé¡µ2‚%ÿJØTبqÑ:(±ê{éJÊB3ø¸lÛæ÷wßÃ?}˜?ÿå!ÞyÒ zè!i/%ž§hmÝÍû?0‘êdMèyÌdRüí‘Õ ­€.oñˆp|õ}ÅÔ)“yïç3iR#“›šHTaÓº×8í´3yàþ{èìjÃÍm±:‡Õ÷Qk@ÅðÝ6”š€ïçñ½á—jQž,”°ØïÒ:híuå—³eûvfÍϹï>‹_~…oø,—_v oç&Pý*)庴¶µ²uãZR]]¼ÿòrÃg?Ã}ú?¼õ»t´ïdasÄ´rÑ(’cÆcZãCïRž³ô¦Q™­5cëë9ùä“Bð»»ïaûö,}ú®¾òƒÜÓš€›Š™‚`e‚ZÑvtBY±Ïøî.ÜüZÜep”–P1xiÏó8~É]t$¯¼ø,üùAîúÍï8ôÌœ1ƒ‹/½Cä/è×òÊf]œ2’sEç­«h1¾üÊ+<ñäR::Úéìê¦yózN<åT^|f)™L0±"ÓˆÄ& {G" ­z”׌— Ïn©çx݃ä¬I)Ù´i¿¿ç·d Ë^x–^z‰^ñ.<4(¥SN|K¼ ””‚öö¾ùõ›èîNáº.{ôaÒü’BÁ:ÏiÆÉ·„7ß÷Ð*4н+2jy'Eì-™LòÑ|˜|>ÏQGa˜ÑÙîTäD¿0î:´Dk!Š¿ÃºA Ón$š˜ÀZa” Äó!æß§®¾ŽU«×ÐÖÒ̧Êùœï8¸®C>“!–H°lyv$ü"ËdÓìnuƒÞ@!¢|ZÝbF3ŸÈu=Ž[²„SN>9&HIg{;¯¾º‚¶–í=0)5lUü~>—§~êæÌžTŠžçò<† Å×¹sçpûD.—ÃóÃ]1Ðî?` BGG祵k„®ƒÜ +:ˆQU†’RHYÅþbyö Uwww—è ð±í”ÒA®I˜„ÀÝË#D”¡y÷e.Îm*Ÿhßµ½”VÒ³”n"ǶLvwŽÇ´*C?>ŸË’Ê®cýI&k†ÊÃIÄM:»7¤È×|>¿O|û®{E@å`ÞT8Ë£Ðòª¢"Amm ùüðs¥%BìtpAMP¹v’v÷Ø­BÐ3!œLhÒÐØ–ijD(1´-*€,Txà|tRÊÄöçkï„}sŠÑ +T~MPOÈâi´ÊàûY|73¸¹©5 ðBÓº÷ß½“ƒŠr‚_¦¡ñUŒ•k«qÝŠP߉F ZÛ­·„¯{^Sø~ ßO–µÆ7âÄ¢7I–>XAÃŤÒY8ëDfy|í©¬÷È (XôF¨DX! „4è쎰âµ<¹0JWk¢QIÞQ…µ2™SSXüòÜ=ßW$1@Éd°m»êt]! €mZÜ}ÏÈds}ÔL™«W¬À2-~ð£Û8çìwSQ‘à°CÁu]âòUl#| ‚4r˜bw k í¡Ž²åzímmLŸ9“?ÿù/Ì?ð@ìˆÍÚuëXtØ¡€DÊÒL {@ÒÑ#Gm]ç‡E«ïûlÙ²…†¦É|æúÏóÅ/|žÿ÷—¿pмyL2©Ìu±'EÊ0m"Q)+BñÔ¶@°•ˆñRY–”TšI„5¤»'M“WW®ä·¿û=¸ü¼øâKœvê©faÒº°˜Â+) ØñÉØ^.ß݆ÛFÉvÄæ‘GC§žüN Ã`îœÙTWU¿HYùK¸Œ­¯gñ±Çñ¥/~êêj&75ÑØ0!$Jù˜¦…«¦ƒ_&¥²xºCv¡D¸Ð»!*äF%!§X©ò•eËùÛ£’›62¥© +gñ“ÛÊ1¿¾ƒ ÃY[A½Õá})›¶mã›ßþ—\t!Çs4ýýq>þÉë¸ù[_gö¬éC#Q+„êÂ)|²!ùÆãø³‘:üÙ=[dådœt¶·ó¹Ï|šÏ}æÓt´¶ñÞ ÎGJIUUåž.Z¢oa™YÌz¥pl$ìl£§ )¿¾ãgDc1 )©«*ŒTãÆòÑDÀT:*Ä\zžÇ¬Y³øÃïS¢mÂ{Ï/4B(U,ékƒˆ†<Š DPª _{ƒóUƒÒfðœQr÷|ßgþ¼™3{RJ<Ï#‰ „àÖï~‡\6ËÊ¥´fRc#7ëÄb1òù<¶eñü3O‹Fƒ‚CšH‰ ”®@éè 2¦5øÚ,œÑ–QîGè¿ËЀÇbŠÍ {6 -þ¯µÄÛ°d[h»ViHí7p{OLª²²²¨y G¥ÑªÛØ’ÙpGÖ1Ð~vP¥²7a"î žÑÊD 6…¦XbÚ ¥T5á\Ô}bøÍÇ0ŒRï·žtÇc±Q‘Á`‹;‹Ïð‹×Ê>ÝŸþ`‹ŠD"À uë«*+Kýµ.FÝÂJ8* ü2ËVt¡=¬A†4`eξþî)ȾnÄÓá3“}| 1DðÑ*WÚíØªoPàqÿ«ý,r,ŽÒóS*äŽA…" ­RšäSËðÌðŠÚqóøîv”¥Âå)ß4Jûø¾[–Ϫ•ª;õ@‹z4ø. 7¿™l÷ xž;\1 ›qAO/xádx_º4`¢üV²©Bϳ”’|¦uÀ³ oÖeÄÄ™)è^ågQ¾(£|°Ú+ÛlÔÚÇŠL!Zq¦i„^ê¹Ôм7Åÿ‹ÕÇÁ²,rù¡âåö_ìñäÂûe¹%Å~w¶mÑ•B=wA)Ýx²Ðày.+ljïh,k·ßÖÅñÇÖ3¦n|™óêÒº³ÿ¹=7XÓ00 ¼ÔJúâV ù×ô@meÄO´Ö\1Àûnˆ«Ê’)]r_Åþ©¤ ( –L&Y¹juuuX–Å+¯,£³³“ùóç «SW‡ßñ¥‘!0P²e=BƒèZ…®TôÙ²u“'OâÙçžcýúL2™Î®.ÞñŽ“†0bå·ã9¢¬òÊoÇ÷;q–B«óÁA)­LtÌ ¥˜òù<–e±rÕj˜;‡ßüö÷ÔÖ&immãäwž„išxùm b¡ëvùn×M³sg'™l.Œ`€›·vСVOqÉX†&“Z_BºººXþê 6mÞÌÙgɶæf¦N™Âš×^çóGa9I|· 'ßÊ£þŽ?Ž7Ö®¥±¡•+WrØ¡ŽÄI³À;sØ’+ ÊÕ3ì_ýÚ78nñ±~ø"Ž<âp6oÞ‚ãº$“ÕLœPÀDÑÐÐ@PÃÔþ©¤”RŒ[뺾ð0ª*+±l‹™Ó§“wêëêÐ:Ëöö2}!´Óu5&U••RFQJsÑ…pöYgOÄ9ëÌÓ{o ¯¢BÆ‘FmY¥j¥hCÊ8†Y‰©Âå*)M¨ wÏs™:e B–{ ‰D‚|ï"‘¹|ŽÙ³gñðÃbVÖaZU¡Ç¬T!«pý8¾ WÊS DÏO u²¬½Ë×9ÙAe©¾¾ž^þÞ{ÞyÔÕÕ±ð°ÃˆD",Y²¸çVúž ¤Q…iÕŒˆ˜> v0hžéjãO÷ÝC]]‘‚û~à µÆ2M ÓDHÓ¬½þ¤i¶Jõˆ()]è Òóš8aB ÇèìôQ^¾žÙ¾ï¡t~¿k&™H$H$öDkj’½plÎṴ̈QA1@Dùø‡¡­Š^~Peìy> Œ?!0·Dg<-*»{k/”?ÄqÃ=Ö¦,<­¬½Î”d­5±h”ÉMM%^Ž­¯`Âøñ¨QÉÀÜ# #—q>xtºX½£H·ÖšÚšš GP:h¬Ëyò~Üt hÁž÷$¾×Žç…/€§”W(74_k>ÁQ‹BŒlpœ¦¿÷öüVxî&òi;teN'”°ÉYµeu‹qV£‡ôõ*ZÏZƒ4 òÙ5øn)NßÝUö¢”F„|f#ÚÛ^Ö÷ÜŠB$ûuEúŠböÏk1"UÞêå¼w¨÷† ñ½ò¹WCg^ !qò»Òi­@ùÐWƒö°"S‰Èš2úîy²ru â‘L¨3±íHh¦5oÝ€¦°úßQ$¦ÕD$q`¸¢w¬\3A$6¾,wÏWkѼô– »ò}"³Ër÷„‘E𙲓•ŸÇŽM&[Ö÷,;‡Ö­”“ Ú·‚rqr›É›­ÃÒRZƒöbxN ÐûÂêM¯Â0«‰Äæ…6YƒÂkprÿ"—~×Í…šß¶`„û/†JA(i{kl]Š“–“Zº§|Dؾ¯hl¬ç˜£„®qðܳ|?| BOaî¦/ØeÊq±nB#Cºd¨Ýqp—`h;n1[9 µˆq…/rxCÅ-ľéAÝá½süzò¹wÇ ;:‡hb܈Tæ4íq=¼o=¼Œó2}à¾Ê íá_±-[Ý|´a`E'MÌB†t€,+Ë~Þ”TGG'ÕÕUd³9lÛbÕš5(_1¹iR;”Ë•oÞ&^û T.”Ï«…‰Ð.é´GË®‘H8Û\)M*­B1hŠjmk#›ÍÑ4©‘®®.ÖoØÈÁ "–à È!Š…ÕB­Á|!»>ègnÙZƒft•Qgg 2™ 9¦ëytuu³yóf?|!B ¤ð€\¨–ò¥yÄP¬Ulp!köõ˜W9èt ‚>t[·nc[s3‹FWW5558®KUEƒôF¤2gQ1¡U¥†W™S P¾$L™–H4Ê¿þõoÐ0uÚÆËîݭضE,ö"(ß+´ Y™SH$~)·, ÆV²A´RùÐ fµV Üò•TWwcÆÔòÒK/3sætþü—iÝÝÆÅ½—êêjœ\W™‰Š{£tˆ“¨)]¶mðÄ3 ÓtC?$›²0$6ÐZà<6lÜHóŽ]<ñÄ¿¹þºkY±r?üÑmüñ¾?ÑNð"¤œæ .Á¹¯ !C˜<)¥.¿ÚÓN¥Ó$qžZú 3fNç±GÿNeU%ßùî­üüg·cÛ6‚²ŒCÝBä)7T-¥$R´c¢C×ɇàÔ¿lN… ­­?Üw?÷Ü{üñ>^~é%Ž8|¯,{•3OBx€Y¦’@¦‘¥&²ö:tF”œŽÁ•T¼²†|쌩­åc×|˜sÎ~7Ï<û,Ù\ŽÍgÎì(í"e.´å*‘AIaôè2fÃ$8U¢œÐŒƒ†¥n¿óeöùL™<!‘hÃrýuŸ¦µµ˶ˆØR)‹Öešù…I7,0¬êP<€V Ä-­Ð…BZzPë"‘ˆ“Î=îÞyÒ‰TVÄ1M“ƒæÏãk_ý Ù\DP½!leDSÒ5ƒø½¾'«"‚4- ®TŒT0X’k±uWcÃD<Ï#žˆ3}Ú4^ª}™÷œ{6sçÎå yðð#aFªQT”ÁÖ ]̰TnW ¤È#D6Ô ,ÈÁĄ̀ª®æ½œÇi§žÂغ1uä‘D"6±Âc¥|w-Ù(úá¸{F)v‚˜ˆaÆ s2¼+HµÊ2Ø©‰|ªƒo~ý«LjœÄرõ!8øà¼öÚëX¦hL3Nί.)›0|Rʵ [nBË\(Ù2hs'­d(H—gIFu䥯‘cÇŽÝÓšÜB5˜‘].©îŽ-­$+»¯á—Π.AáfJ)ⱇ|0¾ïsü’Ÿ®K"‘ ®®ŽT:‡çî ŸÝ:ºçæ·aÚ ûþ…×â ßËÓÕ‘Áq2¡ÊžøÚ¤*¢AD¡„‰”’Ž[‚ãº\zÉ…äó‹;”hÄFkðò[Á¿È\'‹ç¶àæwà:aëI%¢OO@ªú²ÄÈ×y»ûÎKMPãqfLŸ^RÐãÆågN<á8\×+”yN t¥Õí (Cë7¿è‚t&Ù§Ÿ^Z³žç1¹©‰iS§âû>¦®ÊÒ™oF’IµãéÈtÓ•Ií nÚÞ•µ’´Û ñ Þz(+*‚ö;ñrëËhªñM¨ ¬çEeäõHzS=âÿCÅ´Öd²YÎ>Ý¢«+®ƒq$Æßù7ÙŒ=jyE%ây^©¨}‘¾âk–]‡i+”›Ì10,!ì!‰|UÅÎ?;N*nŽM+ÂË/dñ}…e…£Õ-ЕÏ;\ÎŶ­‚¥›Ä0Ã[R†Îb˜Uf-*dЉaU D,(¬&ÊV n=7…âl¼˜ë8 )ƒîÒÒœ„§Ç—òh’oz;¨¢7à8N¯`ïû¥´aH&hŸ#ÈÒÝÑÆ©×žÄUﺈK¿­!bÛh¥ÙÞÑÂØÚqAo$¯ Å9OÕ㇜W•H³.T©â" †™!tóþNÊ÷—‡Q®)eÛ/-‡ÎN#”Ò1 ðôLìHkùIŽ!'¨¿×öÌ…@Ê(Òˆ‡:V¸mñž>nYs”Í×óìKˆÌÒ˜êÐ÷¦?(ÂCá•”28dØßçòÉb}qYöü„=OÖm}ÙÛjÅPûÏßÂ}ñ·$ÇÆã*kxöæxáõWøò/¿Æ¢Y‡påm×ó©3>ÀO¼€ñSëлRÒR˜›ò [ÂD‰2Êk^Áµ ¡¤Š®žeYxž‡mÛäóyLÓ,í·-›Žv]ÀÊ “Ò¤£ º»#á¾)š*¤ìè m c÷Þy£Ñ(®ëRQQQjuUî)„,q¶¼DÒ1::Áɇ³Ä”ÔÄîRä«iš…îÁnkš&¶e•,«°i`ÙÓ$Nn ø-e=-Hæ¬d dÎ`ƒ“FPîÚó<’ÉjR©4•••tvvâû9 V3¥q>¾?Œ\: ñXœêŠ®^)/ÑSQÆšò}Ÿšš:::HÄãds9âñxé=W¹…Àº¤;ÝÅGoÿGÌ<ˆºŠœl–Ožv‡MÇÜ©pãoäkW}²i”òˆZ[˜ÒÐJ6){† IDAT®c,á¥ç¡Ü (× IÙ¶ÍSK—rÌÑGsï}÷sþyïá7Öòñk?ÍEï½€ÕkÖð…Ï]‡Ÿ_‡Ÿ3Ëè£Ðª«@U†@ !} é‡;1/ŠÁ]]]8®‹VŠY3gòÃÿ„Ã-äsŸÿwÝù+"v•߈Ÿá0))ñÒÛ±âS1¤ óáíÙ™Cйy:ò‹/2{Ö,:;;©¯¯ç‰§žâùç_`îܹsô=šf–'bZ¥É§×ôè÷6È7T7¿+Ú€WÖÓÌA’9‹ÊöµëXþê ÌŸÏ¡‡/âøãNà§·ßÆ‘ÇǪå/ÓÖÞAU,ÃÂCÆ£œá%üJÛä‰Ù´´û´n÷0¥1¨ªSJ1f\Ó¦Ná5+ùÔuŸáš«¯â–[@WW3fÌàš\E§Îó²³L¸á7챸4#ùx)³‘ .¼”—ÚVc[œŒOšüöÞ;LŽêLûþS¡ÃôäI£QÎDHL2Lòbãk›%9`fœãâ5ËÚ$cÀxm N˜d²!’HJ ¡4 “§sW8çû£º{FÒ„ê‰åý®·¸Ш»ªžžóÄûÞwAcèñ‘¶ÉïÛF!ûfh+YkMÔÐ1žÐD ®ërðÂ…d2iN>ù$Òé€ÅøÒK¾Ìïï{€¿îÞ\³†C $Dp‚KÃ@+U ¼ ¾i<<^•÷Uû¾dJk7Ç™& 7XJ)^~¹_MÒ×… -Ÿ¨®Æ÷†ä\E*á„“Oã¿»‡ÓNÿ(KŸyŠý<Ÿƒ¥B"¥°1å¢JÉFGÀÂ,-ó2¡}s¥üé%´Ê"ôv„ ‡c%´ º0¢Bv fÍ™ƒmÛÄkjhïèàsŸÿgœþn½õkÜrë/±íÈ(*ž4BD±£³F¸À¹©Bš5EØáJ˜ÂåKEñd@nû›_ßF¢ªŠ‡þög’©$ +ÆÞ= $ï~½| hÀ0ÌâºóBgÑ8¹eíìwÆDN9nWRÒQé))È$CZ¶¥Âc¥™2e ×]s5!%ÕU1’F-[c{WðlƒTÕzÆ­|‹ÂïWáø.Z Ï€¬jËÆÐuXÑéÔIi +=¤ ƒ*©X,ÆmwüšíÛ·óöÛ+ùä'.àŸÏ¿@ó¸q|í«—óì3Ïpò§`.K5¢¸¾Ë³+ß`fs+S'Lîwb…€’­%%0F‘ÔhÏÀÍh¤®Ê]i ~¸“èñÇŸàÑÇgæÌ´oß·?| ÉîvþíúoóÚë¯Ó¹i¶´1íj6tlbåæµ,™½?µÕuàÀŽrú~1G.‰È"’ ¯E†Å€W CZÔWõrêqÍ2é]WØU|Ë´xîÅÕÃεÖÔ75ñ±ãOäîßüšsÏ9»î¼ƒ·–¿Ì+¯½Æ5ß¼ŠººZîû㟰ì–¡^]‚0†‰TáâEÒ!lL7!| )ñ•?²Ÿ$@ú CœÒµµ5Ìœ9ƒÚêjkkøáÊ>ÿY~ø£ŸðÓŸü‚Î5ljªjúëÌ ‹§Þ~µà°ëW/í{ƒ×¤E«°£1œ´G>åã:z§Øªˆ*ŸÊ:4îàÆ;Y.<ï\ …‡v[·mãÁ"—Ë1¡e§œx,†0°e4´?.$XRaZ6¦4xeý*&Õ51eÂÔ` ³x/ îøg+‚6R&Â΄ô€lx%•Íf¹ø“!¥Ä4Mòù<'œpŸÃs Ò$Ò0†µ¤ºÚÛyøÁ¿’L&yæÉLñ¶%‹ãy¦i ~ )ÕuäœÙB®hºë]â-~QÌê…®La2×Ù@ˆ°jó:æµÎ¸Û"1œBÓ²Q¾¿µ½í%ðDËriC7551~üx|ß§··¿îr¹<7þì'¤‹€H¨5D¢ÜòÔý€`ïé{³¡í]Ç¡6ž`{ª‡ù§ÓÒ4‘ð‹Ô>‘ê¹w»ÙþÐÛ8þ^ï¶­£à{,ž¿Bq<=×a8§^e]šO™…°‡Ÿ×žž®ùæU¤Òi>rêÉ8ŽÃg?ý)(Æ!)f¤5:\—‡î/&•BБêážçä#˳k–sæÂóÈò§ÑlÓâøýÇŽ'ÐùLÐ?  (?‰Ö!Ý=°v‡¦Y/¥4 …™>Çqv¨+;U6î?}o^z÷ ž_ù2 Õõ¬j[K2›bïY ¸áü¯ð§§îçã‡7*%å£i±ª™mÁˆWó•;¿Ç÷Ͼ„×Ö¯bù†Õì;mïnßÄSf³×¤Yå‘.ä Ãf\úesqœ]c)¹\nÇ`´ÖÄí(Kö:„›þrϽµ”—7®á¶¿ýš»Ÿü#ýЩ,ÞçPÚ¶oâÀ–™Œ›QMF‚Éu3ùûó§6cÕÖ÷8rîAüìwsÝŸã;¿½•sŸÀ¾3öN5eÐ+7 Ã*)äd2‰Öš¾¾äî}€Jæ»T›ß½ýß8|ÞBŽÚïC¸ùL°èuå"œ’y/OJe+vã=íÓbM`\4Á×ïû§.<†“<ŠÞ\Îñ –ðƺw_ÛÈôÆ–4Ÿoôj5dÍùÀÞ5ÏóÊk:› ªÓét±xp°—r9höþdœ<ï®{‹Ö,çžgþÂwο’ß<õ—žr]é>öš8cKAiÅ8«Ž©±‰à9åm/dùùonæúó¯äÍ×ß µ¶‘¾\š…3`‰áMo¹wtøyÍd³åR€\>_´ÀÀ¶G_¡µ&‰³`úÞì=m>§Ýv=ÿxå)úr)þ¹âefLœF}S ©¾.N<àˆþDŠvº‚¶­ª yÄ:©ÁwÞ¸ã뛘6~2†”Œ¯mbú¸V6tlÁ×ŠŽ¾N ­iIÔz àk…¡\f5ÇÑ.¶!‰™)4 Q:·4 Š’i×ã![>Ëñ –P‰!¤äãKNbkÏvþðµÿâµõ+h®k¦Ú²i®ªÞ¡¦¬ÂDQðÞÊ£>§:#*!bšDQ`â±Xñ„ á" "ïP2j­™&M±~õÛ‰Ÿ|‡NœÍí¿“osét’úDR˜e¯¥ }ÞrÅ ðAyœ|ðÑLlFa_(âÛ4P:Àìåñ W1¦mC­i4 ªM‹…³÷cfËtæNšÅ±ûÊÔæV&7µÐÑ×U”}×û)TqNü²”¶€Ó=ž½§ÍáùU¯>Õ‘Jû(9–ƒ®H™ µ_ÇÒž£S@ƒaàôvòë/ÿ76®áCóâ­¨«®£©ºž§ÐoFË(†ÙÚÝ„ÑGèŠóRªº¾¾Žžž^Ƨkû6"‘–e•³7RJLðrE­8Ÿ>á‚~ß])æMߟ“vŽÞïC('Ö^yâmabiÅNú48yö›ºûM ‚O[|¸¨¤VX#Ä¿Ê`ý¦Ä„ ›ÍÒ4®™do†aÅèjïÂÀÏgß©óÙwÆ‚~Y…¥8pîAÁŸ}Ÿé͓ٲq¦iaÈðÙ2Ã’8Š%³‚€}&Î)¹þìËÁ0¹æ¬KÀ´À zÏPF±däLfmm-™LË4ñ|š†&R=ÝT×Ö }­R›Î²ôÇ1¥¶™Úhýq"XXñ†@Aé~5©$RËþ¶1ò”ñq1µ ¾à‡ŸÈä{¿ïQìÕ:ŸRÓ.J”¿ki9l¸¬´9MÓĶmÇ èããñriIOo01ŠýiÅl³ãpÑqçwwÆÕã”CNÏeþ”y ‰XÍŽq)AP«&$¦6@™;0»Ö™q¾xÜ…(ßãøG ß0ú?£† Ö„(Að<¦ ­t·o-ïÛªª8‘hŒ|.šfl°‰â5Í|숳@y $ûÍ>|i-3Ê®îô¦ÖÀ¶MÀBi:CL×бÌAÿ&‘HpåW¯âúo_Ï¡KãÙ§çÅe/±î½uÌš9‹ÚÚ2Nž‚ça8ºÔð?²yïûôä{©±_³/d1§Agg;ËõV²UF±‰þ>±S@yÀBí(t0¸CÄ.„8ŽÃêÕkH¥RøJqÂÉ᳟ù_»òJ¶mÛÆ#=Æ×¯¸’Í~7 g~˜F^!Ù¦ÚQ<:É…œk­É».oê6^¨~·¶X 4×;-Tå0IïÆÆF¾ó½ð‰ Îcõš5LŸ6³Î>—ŸþøüìÆÿäŠËþ‰æ™Ø{Dlcß«Ut/¢Ù`›¿nаAÁ*°^l`Rï‹x^¸¦híVá÷mbY|±«ÞiN‡Ø8uÑfê©EǡݽuëÖ±bå*öÚk>³fÌà‘GeÚôiÜuϽ|ûúëèNæXën'U(ìXÃîVnnÄEŒÎl7}šDâÝ]K1D…Æ‘€‚é°Pì‹9Ì×”R4M˜ÄƒdésÏðÍk®ãÚo^Åýü™'ž|Šã?ŽcŽ:|T Jiů‡õù äB¸:)Å÷ß&jÖT”ÕÆhö4Î8¨’Êd2\{õ7ps9üˤR)^[¾œõë7ÒÒ2‘HÄÆ/¤Ø?˜¬¬©ôÎ¥{”œ{9Ï÷=e`Å7âš›évÀ Û`¬5žñÖˆ"–e1gÎì¢uh°é½wèîîAèéëãµåo€i³)27±ÂR²ÝÙÊ‘[¶07%ûã7!²e¦œÎf]îaÿ@r\Ówtãc=–Z~zzz)¤aÐÕÓÃôéÓƒBG­qE„µñhO´†B‘Î%ŠF$]‰—©­t¹Gàyc~˺ÍöPcóÖŠJÛ|¥Hg2DbQlÛ]«Ž_˜lŽÎâÄ!¸!64`Ø’¹¼ÆIÙIµÅ¤«¼!Ã3æH¾mÉt¾è 0 ·ØË××ÛNÇjµKÅöðÊY–9É‚–ˆ°­AChüò ñxœ?üîÒé &Là”O £³²"õ-v,_)Oè€ïq`ÛQqbD±^(Àä)µ… <ö'LÌ¢ôŽsçÌæÏ÷ÿT_’žy&Zkî¹ç^l»’q.‰(S¾‡ÊZu¥Ü„áâŒZkæÏ›Ë‚ûày¹\Žs>v6žçñ­«¿A*•,Îi)Ö%G­LÄŽ>lQ~cÌ}|ýÀwCË,¥¤sÛfò¹4]Û·sû­¿$™LrÁ¹çðéO^D¾P(g÷F§EÕ#T‡qq­Ëâº÷Šk.Ò/ЀLc¿W;\g’9”©¼3ª¡ëº;Ä£‚Ô¦.rá…]^Þ˜úï´ö§5µõ¬û Ã(g¾|ßÇuÝrÿ^e—ìOý'{XÙ¶–ŸüùVþô­_“N÷bÁ g•ú›öpcê`ì½¾ïÓÓÝ´TTÅŠ É/ÎkÈ ¡ö]‡n@DþY¥o©a¬Ü0îûxE0±RÆ •J!¥,²i»DlÆÕbI ©ß÷þ½™mOG†a”eË ‚l[ŽISV*¸µ~4ÆמGW¦o|˜žÎmÄ"QL!1¤@Ô:ü˜™•,ðOOåwã»ùÐ(? b£(å'ñÝv‘p Zk”JQ ÊþP4Ü…R9”ŸF©(R¢T² «±l^þ,—ŸñYÞ^ûë;Ú˜Ú<‘˜afË´¢²×ï;šÿÎ ºÄ¸ì»Ý@>´’ò¼\PçR11Žï¦ñ¥®ˆwÏ÷JV¦®hÝÀ÷³Ør%û̋㹣'óÔ@U¼Š×–¥É:êe‡úï˜QGUßÏã{!iݼHàň`¿ Ãà†ó®ä‘f}G‡ÎÙŸ–Æ 4TÕ†^.C²Å”¬¥R£q)ˆ­”*VÏ* ³ SWBÄà#Et4ÇҬÊLÆ4ÃsGxîðû;ã`—2›¥öÃ4вk”×ëlF+?”’òœm |¦êx5ß¹øÚ`‹9Yöžµ \G£‹'}…lC£>u¥”åÿ–è¸wTV Þ€eUz—G›+@+ӮÌ4Wô]iÐzd<)!DYÞRsµïûX–…ï{Hiâx¬ßèãûcýX̧/©‰Ä%ï÷U²¦Jk7è\AsþX´”V(¯¯°/$N˜ÔvY3ڞÃ?| èÊp AöÖÉÙÅUh÷Ýj“õööÒØØÈ3Ï<Ëa‡J¡P`Ý{ï1cút¶lÝÆ„qµ£ bPh4ž¿óQI×uÈf“¡‰´Öø®3¬%Ure=Ï'›Íà8.ÍÍMôõõ1iR+K—.ãÐÃeë–NÌÈd¢ñy¡(µ¤;ßDÄm+ÒY ÈèÃsœï`ì`%ØÂØc4RJ’É$±XŒîînZZZ0M“íÛ·ÓÔÔT6½µÊ£”ÚU*‡Æ/¯„›SQLÛk¥Ð~¡"™µvFD|€ lÛöíÄb1&ŒÏ˯¼ÊüysyùåWX²ø¤Œ¢å:ºÇmÄ5Dò-ÔKÈ2ÅÝØ­¤pójYï¾»–X,Šã¸Œ×̦M›ñrò1èîÊ}w¡á@a‘•Ó0QZá£I !ؤïÕÂÌ1,3úiÛňõpJ)yô1{ìq¢±/½ò QÛfÚÔ)Üwÿ,:d!JUžN–Ú£ÓžF!V_‘’*èÍzMe@c!ï]ßÜÄñÇÈ=wÝÉm·ßÉ'.¼ºÚ6lÜH<Ô”²'`ZÕ¡cRš,Òhǰš‹€ú#_†™Œ#õ˜v#•™¦:;¢¯”â¶ÛͱÇ~˜óÏ?—{î¾—Ë.»„ÿþå-ÜòË›Pdpòk)Xc.A@Åq Ûµó1­q Ü1*¦ˆÌˆ! 0xôÑðíï~Ÿ9³gsì‡æáG%›ËÒÚ2‘3N?iÔšRH£"rP)¡ÏÏ–Ø>()MC 1ƒf÷r¹gô,4×¹˜X,ÊÉ'Ÿœh^JòT×TºÃƶw{ {"Vl.ÚWjdÛ&ˆ£±Ù*CæÉúÐÅYQ~7ž›]Ìéù.ªÈ%µ#üòï¿£±ºŽÛþñ(ïÞ¾”ÙŸ^ÌúŽÍì;m>Ï/{ŒY-S‰šDT¢‘Å)#ìv±HP¼ß¨ù¡Þ[ÒÝ7ŽßßßGÁ Gõä+“֦舨šÃËÛŸóÝ.ÄØ>ƒÎ«›Cy=øNO¨õ 5˜FbTe a7îp¿ÛÇ_óû5Üx½lK"f¨˜TŽ’Æs·U`I)|¿€ Jh¶˜]¹ä·T £Ó _‚ ¤‡ð]Í_Èo:&pbM º¶±é¾wÀu‚c)—ß$igûnø ä|ÿ—†'ž¨ÅtÂñî) B¬«HÞ’;[JѬ!2¬FL«&ô+•Ã07bØõX!‡Ó´ŠdºŒüpÛ`h;˾çÇûx° Àê/Ã( ò¡;CD©SB”;&*áS²Óš8,1È.w£—Рw¥TuWw7õuu¸®G¡P ®®¶L›cFq!TV‚P.YÐ.¾›…¾ìÓR@ç¦AçF€+®K”å*djVW‚àº.–eÑ×—¤º¦št:M¢ªªŒG$¤ý>*©QP—èp Ù0 zzz¨©©aûövZZ&°eËZZZÈd2D£vñ$Ô>>¨—x€*»'ˆ!D‘©Yå++APî°ÍéeÜ3­éíí%bÛ$‰ ‡O ’©M ;8«»mö”‡Rþ葆„ÔÈ…È¥yíîî&Î0yò¤ Q=Ÿ'“ɋŨ­©Âq’é¾ÐDµRJú’iR©4é´ƒSGÄ`ÛÒ©$étOE–”P颻Â’*ÀµµµQW[K>Ÿgã¦Müãɵ$û’qøaTUÅÉf{brå± !Ø&,:‰ôköa„7„¤WØ(Ѥzëh1@š\.‡eY¬]·Ž®žº»º8íÔSxoÃzèa¾rå×øÿÃeÛ¶·SSSóÿü'Ç}4o¼ù6ï¼»–?ÿõ¯\òå/aYö( )’ÈpÂGà¡ü¾Ÿ¬L1ëpG{WWË^z™ùóæÑØØÀ /,eÞ¼¹lܸ‰qÍ;hø±·³ˆbÜ/@¥TžÃXk|Oltò“5õu\zùW8å䓈Dljjkyë­·q\‡©S§RWWˆ÷–Ñ2¹!ÂÅW…Èú>öšŸ¦&ö$žå†Ðª`š³ftRŸx.´å¦µ"³Ñú@ëjÔÝó<8ÏóÈf3ÔÕÕ²uëVœ‚S¬ÞÕ£uÓàix9ÚDÚm mz*aâàâ뤶*fvÀˆh•’úúz<Ï£ººš7‹Å0 ßóI¥2ÈØÕhâ…B}öžã¸466’Ëç™>}o¯XA*™Þ¶òDñTChIOƒÒ «&HÙWpIcøŠó²Út\f͘Á¤I­(¥ñ‹ÙÚ– Š\o ¥ (?3ÆìžFyUhå *L«~·h–ˆíŒØ,¯ÁW>§ž|"ï®]‡ò} Ó¤¥©‰šê¤´Iö.çÒˆ'%ÙõŠ)ú“d;Op)N\òZòÀBa7 @GèîáݽÎ’”’H$B²¸ì’/ã8¾ïM¸½‚­=F›¨…l"DDQ„0~.à!‹n^%l·jÄÚ—’»0½jêë9óŒÓH¥Ò˜¦ÉÞ{Ígþü¹äsùÿë•T?Ómp"Ι=›)“'ÑÖ¶…9ëLN:ñêjªYùöJÌèXâÈHiq–Ð0*²cB &h­?~ÍÍM˜¦ã8,:ä`€%%¢¶@øcÑQi Ê즘VÈûôõôðí¿Žd*ÅÔ©Sð}Ÿ½öšO:•BA!¨®+°*hUT6…¦wˆÕÄÀõÁŠƒ—#•ʱyKó÷ž^­¢R@.ž7ô‹ ‹‚ ”¢¡¡¡HMí”]†€Â*‚“]A>/*êÝSª‡\ßJr龊D«>tH j4FɯonnBkMMMu?º£0Éû~‘2(\о mñÊíLLšÔŠçy´´LÀó<"¶rÔo,\ÃH3F>ý&ʉUæXÆâ1Ž‘ÉA Ï”þþ6€ÆÆ†bŹ@ˆ(Ò°Ç^qn€aD(ä:IölÄóœ1ÏY&§Ñ*1b\U)Emmm U"¶M´)XÏ»€.ŽÂ3ð\Ÿ+7ÑÑ™äÄã÷çšoÞÆ×¿zK—®á¹Vqâ ifÏœ@cSõ(–ýP†ÃûÖÊÅŠÎ "«+@Ap‘²†Hb>ŽÊ…³¤„ÄsÚbëßÀƒá—°‰rÙ^z{¶‡‚¦‘B’êÛBU¢™÷Ú `úÛt IDATYÎïXb2ÁFñèíé½9óÑ…\/‘ØLìHSE,ÏfÄGëäc;R BÕ¡q^z{ÆÎ³VÑÞÞÅÉ'ÌâÌ3'ã¸îî˜-Ül׈'ã8a;e4È¢±_Rššª‰D,6lìdŸ½&SUSͬÙ-²d>©Þ¦¹gš«CƒÞí:á:pßd´‚™,, BÆÂ—.kmZbX,:Ðæ°Õ-/¥ £Ãç™çyßñ…†“sçycí’/Ç0}l+É…ç4‡F0 Á+ÏkV°*ò­J02"ôÜî,«ÇIÑP»†³Î:­Ê@fz„ .É-¥ÀóüjÅóˆF£eœñþD õÎÊ÷QJ€T„Í1ˆÒÆ*mH¶fÌSø;Ï«a˜EŽBaøå ¹í‡~vð¿eQ…ìÝ3ì¢À~°*°¤½¥´pÅ‚>‘H×uˆD"ý ÃåÍ=V(c‡ò ß;|pà~‡›W˲Ê5RžçcYAñ¥Vz‡Ø«¯õnÓ$¾?ÜÊhî$ㆠ§ jI™¦ÉªÕ«Y°Ï>\síu,^¼ˆ9³gñƒý„D¢š}ìÍ‘GAwûýd3Ù È/M íl^w Ž“ å ·€r%½mÃ`î,G&¹)/ Ãúó¹\žT:Å¿¾‹³Î<'Ÿ|ŠÍm[Èçsì½÷^|òðÒËcZÝx®bq Òé>z»Z$*Êún7uÕï°uÃÍø¾K˜â¥5Fs#JMv<,ËbíÚuLlÈy|’?Ýÿ{.¹ôr Ó$—ÍqÅåÿÊÖmíØ½wØaq9ñ<—í[×põÕݧ+ Iw×F:·ý–aU¤¤¢rB9ä¼–Ü“w׮㩧ŸfÉ’%,Y¼ˆ«®¾–/~þ³|ï?â?oü[¶¶±üõ'˜8QâÆz‰F°Ì2iÍ Ïÿ Ïõƨ¡ àäÙÁQ˜†9¤¥¤”¢aÜDªkªyäÁ¿°rÕj>|ôQü寒Íåh™0ž3N?ϯåoÝ4@±Œ8ôœ<étõBaû—B}ÉNÕõ!‰Ç½PSÓÀዃ Û”VÆgÓ¦Í\qÅe<öÍåùÈ)§ðÔÓOsôÑG±nÝN?¹žºæ¦ ã.³è8De3lኖÎÊ7%G O>"‚ž¶D"Á¬™3èêꢱ±Ç‚Ë/½„?þñl[2¹5Í’C+q;Fy²ŒN#4 Bq|^{yd$M¥¦e±m&On¥/•¦­­C9„eË–áxšw×¾Ç÷p$ 6ý2—аÅØ~*KU—ü˺º|†ëÛÖ”Vûï¿?Ó§M%•JqþyçPUUÅç?÷òù‘ˆ`ÑBÉâÅÆn°¤\-:ªxŸ°í[#Yg½Ã‡¤D‘½ð `¯ùóI$$Õœpüq(­°- !\>tä§Iæ†Fr—RxkÍãœpòÅ!ІôH–¯ø ,<°}õZƒÍ£étý Ù»×Û×G>_`s[=óLÞ^±’ ö愎e{{“Z[ÉæVSëèг¸ÂÞ—ŒÒš|A…ÊÈe2Y¶nÛÊ©§žL_o{ÍŸÇg>}1Ë—¿ÎwÜJûöÍø^Ñ%x_àa+t,Ql¢~LÓds[Æç›W} Ï)pÿ}¿§³«‹¯^y9ñšnþ/—BÁ ÒÌÅ9ÞŸyÕ€ëú¡úK'Mj-ÁUWK ¹|Éõ³ûºŽÞóZØ’¡‚0KuwróM?§³³“X4ŠR ÇuPž_nþvœlÑŠ’¡ZëRú;iŽè‚.Zù¨ Œ•ŸR˜ƒ?Ègê”)å~ ÏóØkþ¼r¶`ò¤I¬X±Žr×±ØQëÐq‹––ñ´¶NÄ÷}ªâq h§˜5k&½==A£²è7ƒ?hr†Ë’Åœ‡-Y‚çy444]݉ª m"®v"8øÀÍ«Õë7°a„ åÖ§yóæâû> öÙ{§˜Ñp ‡4J…x¾Ï¤ÖÖ &U< §N™2 þWÙ”¬cS^®Ó‰çäý²¶Aû-=B9\¬fgÅÕï6øcάk­ûÁà”Ú‘û²XH30è·'ª¾Ë=^J—ÅS¹»#øY–Õ(Òye$¿'®Ò³c" ?U½[䤥‹„;É:`^÷¤œ]ÜçÓó< ÃÜ]ÛaNwÙ´{pý”·$›ÞIî€,YŒáÞ&BD‹9!>/íÝ®ðG(AÆâ×cZÍCÒÝ•B+Eã„Æ" Œ‡À,œl ;^…*d+ÍÆ*iý=•ÅB°µ­›hÔ¢~\K9&'Ph·€°"h'W!ÿÜèÈP%»CI•6˶¶^Z§4#´#äŬ¬Wp1Mã}A ®awÝß)¸Dª" "”ú#À/‡0mT!·Ç×ï`uR;Ê:ÚqH£ÓJ t¸¥aÞ¥ ÊŠªN$Ð:¨÷ˆÇãÄbQ‰¶maH£Xn?¶Ëó|šëùÕ/æˆ#.ãòKoæ‘¿¿Äa‡]Î ßù¾}ÃÝÈHÕ«)MpP‰,¨®N‹E©««Ã0 "‘õõõ¡3ÃûꊎŽ>Øÿs\õµ[ùÒÿù9ÿñ“?ÒÓfú´O¡d|Öº”浪ª €ú¦ w²¾¡Û¶ihniù´;bqýõÿC:™cΜ‹øÝ=O±es'·ßþ.þìM`E÷¨wU² ྮŽX,†ïûÄbQLÓ¤ºººìuýþè§f{{–Ï\ü>~ö Ü~ËC|âÂï“ìËrÓÏÿ„ŒX{îô+ΫëºÔ7§¾±± ½ Ô‰DŠ€r¤D¸a´(þ ƒr‰°«†WR±XŒ[ï¸)<ò({ðïüøg7rÙ•_eÙ˯°æÝµlÞÜ/fP#̰x{Õ.¿ìN{ï…ã8Ìœ1# ø”‚tÚA«Þ±X=?àk ¢A<â=‹¤Ø8dýÁ÷¾Sp8áÃG’Íf˜ØÒ¡‹ÑÓÛ9j·¾LÈé ƒÛ%S"ÐŽ» Jæžrù^{y)===¼úÒRúúú¸õWÿ•ÉG=žZCe`×9Õ¾_lFÞså’…ÖÔÔÈon»ÇuH&S{ÌÑø¾ÏþÇOÉd²c·vupaOÏ©”’®ím¼øÜ3 %=E…|æ§qÎÇϦP(àã—;D@“w H!‘R–Õ«!$y·@ÌŽVD«þ¿¦¤n.ß÷ÉårŸJ°èJϱ*‡2ÏüÿòUzŸt:`géoUd2>cy˰µ{Z!ïü>===!èé XDR©õ¶Í˜gdD9Y{ððI¦RåÍ\RÀétÃ0Ç”uOÎé@ÄÕÏ* åÖÃ6Êo£µæÍ «Értf’4$ê0´¢:– 7›ä¨}–`ðÁºäP§Ðû‰ý¿}}Pš€ÿŸŒÿïÚÊy¤Ï2{šëšy¯§ÎBŽd>˦îí6÷ Œà~²ÁØ4M<Ï+S¹®K,Ã)ˆD#½þÀnŒ´/KfxÉbŒE£e¢RÏóˆÇãd2™eü nv „lD5 ß÷I$$“I,ÓÄ(Îõ.–ÁR±éó^*æ”!‹8fAÆ:›ËQUUU¶šû×ðMÖp51ål|u5©TªŒŸè$Ê÷ñðËüÁ+ö™:—}fïGÐJQtúœüµmXK*˜\ƒU«Váº. ã&òèc“L&ùñÏ~Æ;ëÖñÛ{G4£:!¶ýTƒmTðylìè€?ü=1©I Ï#Wšàd2I"‘à‰§Ÿá•W_åÍ7ß"^UÅ~üê›[ЀÕ@¥ïlW86Vñ;‰Ðrb› ¬"–Ïð¥cÃ0øù/n¢±±Çuyþ…¥¤Òið<§@,f‚UÁóm ìXïl×@uEsŠm"l »ÊÖ2,e÷::ºØÜÖ†iÔ××sýw¾G__W|õëÄãq¤ÐôƒV…ï>Ô8Tb†¹Ÿi†ˆ¡¶¦†ŸþÇåƒg{{;·ßq'¿¸éfîÿÓŸÉærXB"…AÐShý+¹ 8… FꉄÄd´ ˆ’Jj¥„ŒÊx÷|ßgÔ4Žã´œÂ¡K–pè’ELœÐÂüü¿øò¿@&ÝÁ½,ÐÕÓÚ%TJ±zåsìwà‰ò™µ2­ÒôõõQ]3®|R„9M½BН]!Èf‡·¤ÆOOO?üñOøúׯâÕåopÁ'/æûß¹s4÷ß÷{ž[ZÃ;ë·„ÄÂär©â‰VU‘Ëì:IÖ¿·šy{Šï…ëÌ÷|˜9%NË„áTÇá€ö§³³“ëþýÛ|ñK—pÔ‡ç¨#ŽàÒË®ä7ýœÃ?Œÿ¼)‰e‡çÝs]—Lz‡/žK!$š€±yì±?0¾õp âšõ™Ó N=A’¡S#“ÉðÄSOc=ótþå£g‹ÅøÄçẠ®Í_®áõ[F¢1Øv¦i³îÝWˆÅª™Ð2«2¨›!äìKf¸ô šhdh£JkMpÛíw2yÒ$zûú¸ðüó8ê¨#P¾"±‰Ù6[´ÇF?؆yº”´«±aH;‡•Äs6Ê¡>¯ð-AœÐ¼{‰D‚«¯½ŽW^}[~ù_Üu×=œwáE464rÔQGrß}÷q奟gK÷\b55¡ÍCß÷xcù¦Ï:‡t*î{ÂÀw6¢ÅfZZÀ2#áL~4Nîm|ßvãzžÇM7ÝÌo¯äØcçÚk®å”“NàŽ[~Éwð#nþÅò“§Góø…èxIBôto5µv…oÆÂÏ¥×ñîÚ_¼ä2–>û$±h-ûì{Õ5­å~³Ñ*©H4Æ{ïõ«jeÊ´Œ>Xê³ e:Ô<$S)N>õ¦M›ÅÙ=‹_þêVÒé43fLç³Ϩ&™ PZl‰ÔïTþê2Ža«ˆf]I†BÄTI¥Ói¾ñõ¯–ÿü¯—|‰½äK;lîd_ÑHÈê 0Î]¢Ñ(UUå‡ÿžgV‹Å‰ÇXV$¤%¥:´à ÓaŸúä'Ê“÷å/|¦Ü"sïÝws;J¼*ŠVÑ0ë‹|>âñDu2TÑh”xÜÀ4«ÃM²¦Œß=œBîéØÊk/-Åu=^}i)hͤÖVŽ>ú(ªªâAl.Q…e%*X”ApU"VdŽ¡ Q'‹WaÛ•ÁÂØ‘Zg‡ÝpZkfΘÁÌ3øð1Çš_ßö+yð/$S)¤ÄãUÄ‹Ôóc‰}F¢‹F‰ÅbÄ«"x^„1_„È «¤¤”ôtleÕ›¯¡=õkW£µæß¾uMÿxÙARX¡[¯„) t‘©¯²xº,R×!õ± \̰îÞ`½@;oð`J”Êà{2´vVÚEëÑ€‹ ´Êá{}H yè*´Ê3gÙ`Ùï¯Ñ(•Ãw3¡Ìx)%ÊObȪ=ÍWBà ò³øN(/S,ì­XW,o@ãÒ]ÙAÆÁ!°õÌ”(Ç÷|r( ,´@kå§Š¿¡Ö°ö=´Êã¹<7 H¥FQvw&mD"†¡§2Ž4jú1ÏG4¥<„M}ŠFÈ(Ò¨A!Ý=­‹MŸá²^C+ã`’…ˆ!Í*„ ,‘²º¸J?¸©ÿAe×)«FuhwO²HÚú¬;G Dl=¦˜@Ä61 õ-õÐab5¡™¢¥”i!DÃŒ`¨p€AOïFAX‚àû~ñÿ |_!V —Ëæc˜3Æ$@)kî*”ÛQ*APEâH¥†”x¾_þ»à^²È…&C¼'eóµ2dƒÀBÝ“›´TZbÛ6Žã`Û6®ëbšf}™2l,ÍàƒT¢<Ð (É]®ü×Ë0ð•Âs“TYopÂÑM8…±ÖÅU¬y3Ãö·ÁS‰ æµ4Ÿ¥Ã0н¢N¥+™SØ.N„â:Üé‹•Ä ¨OÊ4M–½ô2ûí»€x,ÆŠ•«˜>}]½½Ø¶]Ctb’ Ïú"= ÷þ-g=òû¾O_2ISC«×¬¡±©™ ë×3oî ŽCWg“'OEùí൅:q…àoEi ÏQ)*å÷ÊlÜH$«¯-gŸ½÷â™gÿɢŋyèáG8êÈ#x{ÅŠ2°¡)·bŠThËÈ ‹(³Ü~0¬&²{éL†šêjb±D£QÖ¼ó.‡¼°È¥hlDrŒHÚDk‰ö“xN'ÞX)­D 5T ²(Õ1>öØ?8î¸cyã7™?mmmlÜ´™ÖÖ‰L™ÜŠSèŲÚP:¬ò“¢´QFA b§RxΖðs­QVÜU4‡2õúúú0M“—_}¿?ô03¦Oçݵk9éÄã©««£Ï E!²¡S쳩âƒvyž‡ÒŠ_Üt3['³¹m×]ý V¬Zͯn¹•ßÞ}7Rxh• ”L.€EUáq¢&=Õ,$¥$Nð±s/`ÕŠ·¹ï÷£5üÛ ßææ›~ŽmÛ¯H± ‘ ¬Í5%„ ­m ï®]Ç¢CÒÐÐÀ³ÿ|Žƒ:^|‘C—,Â0¢dò“x~YflÕZ‹IÚ;%†á£ý\hÖœáÖBg¤A¬ºž >ùiÞ~ýòÅv˜ç_XÊÊU«9ú¨#i8¥| ‘-#Ç–¤ˆ2uz¥â£UEør¡àð…WR…BSN:Çu‰ÇbœyÆi$“)&MjeÊ”)Dl›tJЕnÅU5á³{J t%1b1–¸òÈ…p†aÐ2aŽãpî9Çó<êë§¶¶–Y3gpÑ…à8>fd:œêùBF=† vt|E¦¿çÓo­éÝ»i³Ù,Gù!r¹N¡P@ÊJÌd[Gã˜ç‘¤21ššÆaE'#vä»-¶ »„2}üâÆŸáz‹Boo/‹-âˆN"‘À² bñf²îìðà) beåkͨNJΠå¤5VH‡s÷J¾{¶ØTd£%Œ@*Zòç=ÏCJÉa‡.ÙÁºjØÂÔ)“I¥ AÀQ„W¬BhÐ ­ýЩXÐh­Šò†O‰Z¿4¯¹\PÇtÁyçR(˜4©•ÖÖ‰ì·ß¾Ø¶…ç¹Ddøù ÜøFx)&USSCmm-J)\Ïcú´é(¥ˆÇcè¢å$¤ÀÜ ¸t¦Àôj”„¨1ÞO@‘¯QŒ¨¤2™ gÿËY ²Ù,‘H„É“'•;*‚’¯[ ÿjT¥(²*9DeøŠó ©D(¸sÆBJ‰Nn%ù¼ mæûÊCé>r©µäR½á¾'$Z¥pó›É§¦i…ÝîxN;0žáØWf¸Ü⾯‹f»Âw·ãæjCǤÜ|†=aæ²Æ+l$ŸZA¡®0RiA]$7¬Vè’ !È _=Ï+“4˜¦”&…Ì›xFø:Ÿ|!‹ïmßcAÿÑÆ¤â›<`KpCJ;2«É‹ú±#’:1òÙ­DÆÅ©‰mÁu1k)K*Qúqª†>|JóY’}G|þàī̅1Êùô½-äÓ/#C>OkMD„˜8h8(T  1'åbEg•õ¡÷¡ï»Hñ'"U3qCBò !ñœ˜¶ Rµ/¦róhEN¿E8Æá‘$†Ùˆ¼ AÅP±ÓÅEQùâ7­ìø^`ªJJ‚XêY;˺³ÌJùX‰ùXVMø j¤1ŒŽ\¼qgÙvù3vl‘ªI!Û†¾¢QIÁ­cÆ´*Ž9jbxÎaÏgI_×¶û‡“5øª²dR+B/G!%ùl;RZ¿·4ljï:p®µÂ´“ óá,©Úm¨¢¿õC•˜ùeÍ\1ªV)Ã!‹xÍ¡F9Ô†Z»‚²‰!‚dæ*•³Læ}wt÷*“wpÐþ¢Á^QéÄX,(±G>:ÜÜîâšÀ˜H0Jõ‘™™ c÷X•ÁzÞHœ2XöÎ2#,[ú×~뺊XrV¬4xýÍU%$ª.±(®ŸJÊdå”V¹|žÚšjžxòfΘFSS7n"‰‰ØD"­ò(?úU”ï¡ñ$ÙßÓÂD«|ùYJØ¡¨ÒaIZk²Ù,«W¯aúô鸮€ýåsÔ×דHÔŸŸC‡¨8WZ¢ý,H­´ª`wi=–QZÌŽã`š&O?ûOŽ?îXÖ¯_ÔÒ˜:eò.ÃS6;¼—‹ÖNè .ŽQ˜çåóyòù<ÛÚÛ™1mÛ¶o§uâD6lØÈœ9³vûK!p=ÏÓcB8íNªøÒ¶mž_º”CÄÒ–±è…lÛ¾åûØv„è¤(†aÒÝÕa†SRR ’}}H\”ôJŠs£ü¨x©ð ÆZ!T=Ä^4pnÝÝ݆Á_ùÿúåÿÃ> öáé§ŸeéÒ¹òŠK©¯«Fû×éß`¬|”ŸÅu6á:}!Œ%Zõâû]xÎFPácRÊï µ˜S©4o½ý6?üÑOøâ¿ÀªU«¹÷w¿çsŸû4O>ù¿½û|¯×Y_¸Žd*{n;Bšx…ʨª|¿sÔ±€‘.˲Xµj5Ó§Oãs_ø«V­äœó>ÁÁ bÙK/óóB$ÅóÓø¼‚ò3è"MWeçt TºÂ˜‡±Ê6ndãÆ¼¶ü >õÉ Ù´i3ãÇãÝuk™7oÎn> :eÍ;)þöÐ{xž;æ{f󊓎®Å2‡&èÐZ¯ià”œIº·“üèÇ<ø—غužç‘¨N0aÂx&·¶ðÛ»:ö&¤ •ÎÆqœ÷ðœBÈ}¥Ñmcvîõà‰‡œª"#¦‰³8BÐ×—dݺ÷xþÙ'éîîfùò7˜>m*“Z'bšµµU´÷M'"ª+@APF-ѪɸþäÐ^“çlÁ´M"ñ}1ÍÚŠŒÑÂèèìÀ²,~}Ç­lܸß÷ùÊ—bÛ.þäE¸Ž‹™F$>?Ý´”`çìØ¸Š_¾²Ñ¼¸G””iš¬X¹Šyóærÿs;_þâˆF#,<è@¦OJ{{¾îD©@id˱B%¥•ƒ„e7Uº3m­Û‡u3µÖÔÖÖ2oÞ<::»1 ³ h¨Ôv aL@X3Æ|!@ú¦¿À…çŸG>Ÿçcg”B¡Pô$¨ÀK¸àüó‚½:®dðκÍüøÆgˆVÍF†ôe&š ì™lÃå„|Ê D±lp~îv­I[.ΛkÐG{žÇþûí‹”Ïó˜8q"S§N-÷èi¥éhߌ Ÿ¾”ŠôÃV°êÒ¿µWL£awŒÐÌ\ʌ̛;7h'ð<&Œ¿KÉE*«(®‹¯ñGQ‚à–”¨lA‡ "g2.<ÿ\Ò™ ‡|0ŽS("@””˜ÁsÏ¿€ŸQÍC‡Ú IDAT ‚"‡4×2p> dW=²ûÐ:q"BæÎ™C>Ÿç„ãŽ%ŸÏsÖ§“ËeËíKc%†í϶KÐj¶ùî‰J¤¤º:;¹õW7ÓÝÝÃg>õIÒ™ K/*— ¸®Kªˆõö2 ƒ\: èpûUU7x(|<´´ùÕƒ·±höþt§ûØÚ|â‘w=ügz ‰:„i¡\WûCÊj»ØYqõ[ _˜Œ/¼‡Î›á!W”GL§qò)¼BoH®{‰ïµ£ñG9ÁÃo\­5®ë–ËÜ¢œ;Î5ÊíÄÍo U‚ ¥ ¬?kB ª47P~^¡· §$´±p 9É „(“kd VUÕÍ•6ÛjíÃ(²cBZxNBB7¾ À÷Œa]èÓð¥2‹2KÈ鹸ÌÙ=I å%A´ò~^‰¤åù-ìÔ‹XIœ±„àFèü˜(.È"x¦ÅOÿr?ûÔ5¼°f9ËׯdUÛZ"¦Í”¦N:ä8^\õ ‹æ@Àü2p–€ÁfàSSj¼ q`ºhþ¤5Ò¬FZ24èÖÙŠÜÊNAâ侮CÎ…”–ƒë¶QÈ%ÃÞ¾Ó‰ÕH³Ãz'´ l %çPó;ndp*†=çuep±•›4ªV}EÖ”.è‘ÝË¡Óòº¬Z¤¬Á0Ƭ¤ 3†0¢¼ß×Póº{T^¡ '»ÇɇÙâH/´Ž °Ýw_ö3fŒŸÌ>Sæw >ï@Z[‚CM)&Öñ€3‡;u•Rå®êŠ‹iKÚDe$´]+ñ‚ž ¤¬ m)Å&¹âu0>´Ýòý“-þ¿öÎ;ήªÚãß½O¹mîô’^IB EZ @h¤ƒE¥ˆÅ ¢RQ± (‚ò&EPZ’TZH!eúÜ~ÊÞïsïd&™sg&mž‡ÏdfîÌÝgí½Î*¿õû!d)#h ±q@ˆ¦5+ÒÔÏ7AH)F"ìËBݟ׶qÄ(„Àq]*¬UØvDp~):ú1»§‹÷µ<Þ-!sh2›tR+müï€Ù"À HCÈØ€jHZiÁ…Ŷ¸zž×UiíýÓþ“VVtZÂ9©H_<¼Zkö™< ­Uuz­Z1ªnX·ä}YçRJÖ­k¦±±ÿ¼õS&OÆ÷ý⼓Ä0Œâ „£ÐÚ°ÂÔ?C8(?‹’^ÈïWEªßM/¿dDÇq‚”@Jêëêxùrª«ªÐsŒ;Žöó(¿P¬‹õ¢*?‹!A !Ãk](ÿ°‡$½3 ƒ–ÖVª*+q=Û²X¹j£G¢³£“H$B6“á¸ÙTV&C×iÒé?ÁWý9êƒOzW:Œ®ë¢”"‘HtëGJ)éèè`ذ¦ïÉíá*ÙuÕª>|Xw9—Ë“J¥H$$ñþ«(kvBFB™2pÿ O9A"ÄžWZã£6¹ë;vEe2ÉKßä«_¿ Ï÷øÚW¾DeE’ÎB†árLèèäß ^‹œËÈÅb1^_¼˜kïÿM|ú¼OñìßžçÊo|ƒW^xikm¹­±«1 ƒ{ﻟÓw#‹qÕÕ×rëOn缟¦aÃyâe…Or9ÍÚÕ&Rn?ˆs!àÝ÷ÞÃ2-î½ï~>~Öé<÷ü?8â°CCc…v'UYÛÈ”]g🥯s÷=¿å„ã?Êßž{Ž©S¦PYY9Ð;¤þ!Ï«ä?²š‡íñepœ+*Œû z­L™›zQCC=‰D‚oßpß»ñz~{÷¯X½z5ÑhŒX™l–i»îÊÌ3ð<¯›a·Üš”l;F"QO$nm¦i#‹Â¦"ôÎÑåÎ{Þ€R‹Zkð{²ç®;ãÐZó³¿Þ‡ãy,|g1Éhœ9{ı{¢·þÉ^c&o°™C3ýi­Ü`4Eé°E˜bý¨ï4±tx•RH)»áP®´Ýv);†]·ÕëðaíY¾ÓÐHi‘-Œâ?ïUá:U¡biË&TÁ|@NªUD£òùB@æûäòy*kkp2YìˆÍšö–îˆ*fG¸ü䋺¾ÏÌI3Šå … ö‡[»,g@:hç-Ö¤"¡o²v¨šT飲ª’\6‡!eЊ¯ª¢³­mý{Äm°6]îÖØrT)Õs]—š†á´¬YI"8ë]·8¹@‹Ë{eïô>…€–©‡‰m[Ò •NSÓPOW[;•µõ´7¯ Ø#tv UTÜúéžçyÔIGËZjêêèlo§ª²¤À÷<ÒéL‘ü®¡±Ë ´­þÔ7¿zï-ËbѢט9s?¾ívêkëØsÏÝùÂ_æ°Cç²lÙûœxúI z¼6{Ó¢î\Ø+)µ¦Y“ë Mz§¼ÖîÔ-ì^ší£è¨™t_)núÞÍxÀl::;™2y2?üÑ­\sÕ•$ž³’B.rÀXàæ×Çn-cÀX`Na úf. 1¼±t)'L`Áü£xà?ñüsϱt雌Ÿ0žéÓ¦! ¥=” ?ů´Óω‹BnÊk+ qî:BÄûL÷V¬XÉ{Ë–‘Éd˜7ï>}þ…|ñòÏó©ó.àî»~NWª ·°‚B®s€éžF¨8¾Ózë#Î뛚8áøã¹ã¶[ùâ¿Ä…œÏ-·þ„L&èQ#ùè‚cú)€ªÁ_‡ï®B¹ùPß®°ñÜ<Ùl*4ìA+)7{ëÕI¹®ËÌ™3¨¨®a§‰9b–i±÷Göâ®»ïáÚ«¯äí·ßfO1&t ¤{B`ÚÃ1­DH'e࣢™ò9¨ú6°!%ø¾ÏþûíËÞûîÏÍ7Ÿ3Ï:‡»~u'‡9ŸçŸûÒ¨Á´F†Gœ›Á[0¬¦²Àœ®ëõkÄ$Œòù<ùÈGhmiáÌ3Ï`Í«9î„SXpÌÑ|õëWsçÏïÀŠD™í¬$®¢ÝŽcs^H;Yþ®RøenB“¤\Bp'D­Q’Gþò<ô“'íÄe—^L2™äk_ýù|00¬zLkÄ€ï¹a%f5[;ß ô%-.ZÄôY{ñ­o^KSc#'ŸtB ße™D£Ñ~ü\°-ɬݒÌÙ;B(Å/ vÄF;1¦L^ÞIi0-‰¯*ÍÌÅøÕÝ¿aõàkÅÁsæð›{GmM-—]v)/½²Cç†Z”ëו&EñÉiŠ/*·#CóI)”Ÿ£/0§ïû<øÐÃ<ÿØcæLn¸þz¦íº3ï½ý&?¾í§üãù§éìÊ eiÄP!À„R „G FExòºnМÞ"›¹®¡c?zÕíÍT Q¥éPi.+ÒÙÀ™xíxÎr„¶BJßïØì¦)¡u?ìPŽ<âðî¼½Äí~Ù¥“ÏeFh뿯¼‚‡ÞHP!|[\öIÏ)„ ½µ•»ùs<ßç»7~§»û3lXSÀK‹«FVT!¯g|ÓÞýÕ"²­«QZáûЍÁ6­Aëàh­ñ”ÔÌ,»÷:]·úp¸œTcC…‚Ãç/»¥×\}e1’Ha¹7»mýKA{{;W_ù5|ßçÜsÎF)Åé;µû^”>ºF!Ê{_ƒµ?ÌÍY{3<`ψ0XèµáÂä|ߣEŠIòÀK´ö0íÑD³0C¢…”ìâ͆ñ=[Õ¥ÛsΫÛimàhT¨÷,„ÀwVãæÓe‘ÞyîZ V2ªi¹\¸–¶&éÎJë»ÈZ\gÏötioX×Äì(ÿúÿ¸î_b]ºƒˆáµeoråI±×N»‘ÒšjkàójÂ0ùÌm_euªû.¿•¼çõ=, ¶i“4ÌCÚáño½Ù(ªíØ ÎÞÎkÏ5n|~…Øq×Ûo‚P ñYäíDèØÂó53² :#™P>Ê4m–/[ƒïåÊÜiQÌÝx}¯YBSÏ0¼)‡ï÷͸(¥%ºhëA9çAùõ–fæð ™X(ÊVÛ´y!³r³ç·lÈãðÙygrÊ%ó‰FãÌ· †Æ6M®½ÿGüò¢¸ûÙ?qéIAH Íf¼,ÿøÏ«ÜrÕíL9g?ŽÜó`½ûJ)F×ç†O~Úx’ªx¦¾©°-á[³&õá=+zÝ×CÆI•¼q"'›Í‘¬¨ “ÍbH‰,2"Q\Óa"_Q(ä™6 üLÑÚ•ï“Ï›hC•Øýú<¼}— ,eù†ã8T$d‹Ã¨‘HÏO1i¢Á>{ÆTVû¾::’<ñŒ pUe¥æ‚¦lžoÆÉ'%´]o²9oX²k,£P(F(**d2Yâ±B›["Áu¸þükÖK}”âăOÀlŠKOø dÓH!‘é½+ŸSf/àú[®f¯i{³û¤·ï<_üwVµ­ãýµËéHT2mÔN¡œT逆Ä4-bÑ(©tÃø~ÃXOzgé(þe+ûÅR]µ¶¶†B!èÈ–´÷lËÂ)r¥ 4ÝÛ®œ@$ááÿý sË/ïú5‡ÎK{G;ííŒ1œX,F:•ë°äºð2ëÒEŠ4ùœC{G{(ï‰Ø¸ž(’”yh¦ÞgjV2psK Z)V¯YÃN'ò—GãÀfÓÞÑÁÒ¥orØ¡sioKÑÚܺùߦ#)ÉÚu-àåˆØá ˆòÞ*´0Á¶Q+p›Òß+ÝwÕ·t–Öšx<ÎÓÏ<Ëî³fòÜógÏ=vçþßÿ‘ý÷Û—¿=ÿ;eO{TUÕqî 0¼a$§~û|>{è©<²è)Þm^E:—决®`ê.{¡ÚÖéYˆè"`vØ Ïó8ÿ¼s¨ª¬âþ{說¾{ïù5Æçá‡Á«¬Ã/C4ï%ðúPoéí2¤¤í¢­P(ïµ1¤ˆöU 1‚OŸ÷)N;ådÆŽMSSÑH”/_q9¹|a6bÚMNÓ ;<¬f°Ó½tG /<ÿ ¶m“L&Ig2»à;t.ÉŠ$Ñh„ùÚdá¼”ÖTUV©BN˜”’œe¢QÂ红Ø%+Š`‡õP¬oã«2Šç}ëØ÷”ã–Rv¯uìØ1ø¾Â2M*“IœœˆD’_ø Ÿ¹å‹üîK·±Ï”ÝÁɯ/Ž’ˆ"+¿º[µ-Õβæ•Üúè=Üqéw¡Ç÷=Ù£U«‹) V7¯âœ›?ÇiC¥iqØUgpéü³yñ_‹0L‹t$ÂéWŸÅÝ_¾£ï´l#» !¨¯«GkÍÄ ð}ŸI;íD4AiH픑êxˆrée„ ßžÆ:d4U e9)ÏwÉä»6¹ïJ©›mY >œ‘#Gây‘H€Ç>lX@ŠrŸ„ª,l£«4T¼ë.»tCg”RÔTWSW[ƒRƒAØî ç[{¾ûïý‹ìïú(¯-”ü„ÊO!èÂ-˜2rS(´N#ÂÐÓžçwÇ8ºg+×´øÏê÷ÈäRŒlɘOìÅ[?~Š¿/}…ƒgîrŒ^FZ”V<¼ði†W×óö²±ðÅìµÓtlÓfTýð½?_ù oÍcWÝ…¡AÏ=…ïŸ-pÕé—¸óâÑéD¹¯{¶ãKjmƒ(¯%œÐcо—é!ÄZF½\)dÌÂH”Çu¤= ·éÔychÉÆðß÷‡ ¡´gKB"=ÏmÏ­;¤º{=>èÞ·¨hÚ†ÕžªEeÐTáëF„Ž„t !7¯YÖs};ç^cWŸ?úl>ò%¨ÎV–ÿf º«ƒgì‡ö< i|hfPiM}U-_;í°cM±Ó˜Iîë›ú•Bévì«Û`ë¡Þ¦Öe–n¼Þžÿî~i°ª0¬ªÐf5¼(RDËN÷ñ‹—¶y'>PUa0nTß×›¤väƒYN$ÕÛy ÃŽ»Ã§{®ëbÛ6ÍÍ-$“X–E:!á¸î€ ïý‹ŽU B’ÆD‡ jéAùJ‘ÍdˆÅb!ˆD"tttP[[‹_ðŠA`К§£9vµ†ï1aÞMö_,ïÊR>àzàvÞÈqºƒŽ.d1íCû¨Í¥PzýŸR‹>ë3=Ó=Ã0hmm¥±±¥ÇÁ¶z°˜ê-oÕ`àY°®­Ëj(ËIiÇ­›œì-ú¾O&“%Y™$J‘L&éì줮®¶gx¿CGRRJººR$“4·´P_WG&“鮹F£ÑAQÙnÒ=)ëÖ53uê¾sÃMÌš9ƒ}öÞ›{~{/cÇÅ‚½÷š¾õÆ”„Dy¸ÎJ´²ÃZåu£Ù¨Skçyd²Y~rûÌ?ú(ÚÛÛZð¯ÿ›fïÏ”‰“èÒ.-ª€’™³U;˜Z€* tø ’Ö.mªÀ2¿‹œ'%•¤€ê³ëe’ÖÖ.ªª*¹èÒÏóÈÃpß}÷“J§‰D"0{ ÃØªPˆb¡ŒÙ=!Âq&¬]»ŽÎ®.þòècœuÆé<òè£{Ì1üæÞû¸ìÒ‹¥r(• ýðÛä>òcè2˜#󪪩æÒË.çG?ü7}÷f¾yÍÕ<ûÜs uuuì½×žD"‘¡ã¤ h¡7·¶°øþ%\÷íoóÀÿÀƒ?ŒR>>ðgœ~-­­1z+½M]d0‚NYÈH*,Ãå;ï¾G.Ÿã¨#`ùŠ•,~ýuüIN=õd¾wóøéí·³xO…+Ü ÅY³ ­Ë**{Ö•¼hÀQáܾ6I޾X "‘(=ñ$g|ìT›{o¼ù&×ßø]f춯¾öO†eYø[mûxN·¬W)>¡B:::hmkãØcæS[SCSS†i0zÔÈbMN¡¼6|×Põ[†ŒÎnDRÈ÷üæ^~ò£°à˜ù¸®K}]=®çR™LîÐQÔ&”’޶Z[ÛhYó{d/–ÿ~#GŒàà9sX×Ü̈áÃYÝ®·–%f VdlY³{¾ÛI˜.b:fåÊ•œ|Ò‰¤ÓÏrÀìý¹ðÓçñÈ£ñã[H.W a¡6±s¨¦—@¾6 Ò‹7…Ž8…€¬~K."a×`éšp‡Vƒï÷mlÓ`Ū•xžÇ± Ž¡Ïs×/~ÆŠ•+¹ø¢ ;v >ôæV|è á ‰–Ev"¿©©)èdÖבHÄiiiAù>ÍÍÍÅ”ÐÀ´GcG‡ 3§Y³Õ°¯æª+¿ŠRª[‘»««+ IîewH8©B¡À‘GŽešt¥RX–Å矋RÁ 0M“Õ«— (0 ‹ðí®ÙhUDœ‡¤tŸQO)ŸŸ½ÿ~˜¦I:fî!/ö9g‚L&ƒãúϺޘÉaïY 4è@Ê;,‰îæe׃ +NËwpÝ7®¦½½††úîIõqcÇâù>Ѩ]mÜJ´ÂÚôƒšTYñ—é u3›š7*½÷úú:ššñy6™L†K/¾ˆ®TW)°ƒZßìÖÛÄIuvtrÅþ‡öövær0…Bcæ]ìòùäó…¡W8—R’Ëåȱ¾ÙÕµ‹ãºn?Ôjé† (ŸVJ_>˜ÙÓ*òÓ(á„>ðèaÄAK´Br¹õu T*U4¬F«<¾Ÿ Gz§ ´ŸF‰í¦0[*¢¶··wõ´'€m[AeQ~ض¡ÔVú#%DYCã%qоX@{ªõœ5Mñd]]C ‚`ÝçèPùÐÃ~(8©ð-ù~&ïh¤†‘EP¨G9n#šã<¨IÙ„ÁHõeL@ʆG‰¾•”!¬¢nûkc»öÖ¢.y!£á%ÞihÛ›ð¦l;”Øú²ëP¸ÌÍygß÷1MßWÝîyCÊ%à/®  ,oÙýQάšQ·è ¼º^F¾¤Ó–!OUº7å-ý5=sDÉ=q5%;L=î\Y²ZÛWavcœÔÆÔ%†aôˆàĀű·µ_ØØŽ¥ Šž›!Ç‚Fùå]wsæé§qå7®å¢ /Àu]V}ðAP„ŒÇÉå xÎrœÜ¡ä+×i'f¬Ä‘m¡N—”g%JYƒ¾ønhíÚu8®ÃŠå+8øÐø㎟rܱ èêìâõ%K8jÞÑå€aâÞÇɶ–Õ]ñÝf|¯'û.'ÊÿøÊ@Ç ›½ŸZk***¸ïþßsÈÁñäSÏpè܃ùöõ7pÉEŸåbÁü£{4&¶f´¡u´¤t×®]‹4 ^}õ5öÜcÖ­[Gmm ?ùW>ù‰³Ðäq +p2á,›KCñbxN 0j«;¨šš.ýüå|ãʯñ‹/1{ÿýøÇ /òÊ¢WÙs÷Yì6m×~(oçN*—Ëñ©³?NW*Å7}|ï&žzæY\Çå ÿó9 ò¹ìèx"ÞIù>v¤–œ7Š‚ΘB©Eïm›¦ÉèÑ£¨¬©æù^âøãçèyóˆÇb¼öÚëÜò£ŸpܱÇÎ#ÈCÑDèN¬ÈX"‰aåéîéef‘Ä„>¤[7t›‚ÎÍ:!©TŠO8×uùí½÷2cú4Î=ç“ÜúãÛùå¯îbÊÎS1LȇµY¿Þ ý•,ײ(±ùPIDAT¾@ù™AU0.]ét†T*ÅÜC!™¬àégŸå°¹‡°`þÑ¸Žƒ&Vt2‘ÄÀu÷"Q0# ÛDw3ÊãO<É·®ý“&MbݺfºººXpôQÔÖÖbY;òµÉÂy*FJIÛºøøYgpþ¹çthI)éêl¦í­/#ßPEiöDa!R™ S6øÖ/…þïÓÞÒʧžÌç~’ÕkÖ"¥äÀg3gΤҙ"®ÀÇg„Ìb7Ò/C¢J£µK0wXÆFU}ç|%»f2%ñ=wýß÷Y³v-W}ý+\ñ…ÏSQ‘àÞßÝOÄ6ŠÓa/£ÿ)_‰x®œÓ-‰¾Ž?®X8×dŠÌZ)ºººÖÔuÔYÿ· t÷:[Öòø#d†‹x<Áìý÷£«+…ç{XÚÚ…óÒA.Éq¹î@6¤Æs:ðœLH'%Qn+µÅŒÜ³ŽÑÕ• 8—6¨kQ´° „„ ˆ#¶£BòÆö,u½F Žã8†Qªº¡E„° ¤ÁKtq+é²O¶0@Ѳ^*„,ožAJÙj—äË’ºººâ÷(<·¯À€Ò=CDQ~j›ØUiEEE¾ï‹ÅQJaYõõuÝ÷bÈÕ¤zÛÜN0ú}[Q~­²„!ÙH”Îoq>ŒMYK›Ùw[pó«BI  ˆ‰šÖ0¶ÇÙ°ž6íIܯ ¢­l¦ ÃpÂÙY@!ŸÅsóeÃR¤a’K§q,£¬±˜Ê¸Ú샲×íFk ªoÉø!¨ü]õ¶±§êe~tcÞó!•î…bèg}4Œ ÇòB_Ò‰"B ªœÛorà „ˆ (*äìž”ñbÚ·}\½ÙõÃþétš}fT$Ã×1²‡WjÊ6 !H¥ LßURSc•8·-×óB¥¸§öoˇÄy «n›Úuskré^©¥éyUUUäóy|ß'wCï;ÑHaB˜aKR†…Ó ¸üÃ:) D)‰¯)ÄPüÞ† -‹ÅÈçóX–8!q=|!‹4’V2äXŒa:”ßÊ/²PþÓÖ4M”RTWWÓÞÞN²¢¢»oY&¹l–É;Õ‹‡ÇIy^”wÞ²Ê:èB@6[`ü¸$µµ•e®Æ§umv“€ÌõB €ištuu‘H$Èf³T$¤ÒP×0m càºah­= g¯s…°«çyÔ76âäóSg:]dóßW8Ž3ôÒ=Ã0X±r%“všÈׯº†ƒ:Q£Fñë»ïA)Åî3g²çž3hi~•–V'´“RZÑÞ¾œ¿?s'…|.t*ä:)&LǸ ˜¦î©«5¾'6ë¨J·4ëôçbÞ‘Gðüßÿλï.£"YAMu5;팲Ó6!l|÷ÜB¾X8) ê7oGHn[¬^³†Úš.øÌE|÷¦ëùÒ×®$™HÐÑÑÁ'>~;ï<•?ÿùÏeÁ&ò…í­­È2|Ïgü¸q,zùåâ„~øXªªª’qcGo€šï-jø`õjþôçY²ä ®ûæÕüîþßsô¼#¹ãÎ_pÑ…Ÿf]ó*^|îgÔÔ4 àiYï½ý{ì9—ˆ¹©Έ  Îæ@ÁJ)ê‡bß}÷áàƒæÅøôyŸâ‡Æ)8ÔÖÖ°Ç B øeYï/_ÁÈÃH&+X±bu55<õ̳Ì;òòy—㎞VÔ¢¹1}Ÿúä >þñÑÕ™ éÜê˜%o,eì“HxMã&‰Ñznè\.Gss £FB)ÅÚµÍ<ðÐC\vé%üù9ë̳p÷(d¬Ð5©|æìè$L{LôÊàzÞm´·wPW[˸qciináÉ'þÊ>ûìÍ?þñ‡ÎË!‡„ïye!óù<‹—¼±;d߬߳ë.Súu€Â Í*_ÑÖÞÎ?__LggЧLÁ²,¦í¶+ŽãÐÔXÇ·¾qá  Ð#‘(OŸããgÁç.ù,+V­âc§BW*‡iÄŽínvOHìh!ÍòR8¡»åÄ·\‘5°ñ‡F4ã©'ÿR$3Œ#„øüx¨H×õú1i0˜Š¸Á¾¸èÂOsÉg/¤¢¢)ÅMÃPŇq9Žu³Épñ•_@×e ÙnþÁÒ××»ÚÖñèÿ>HC}­míär9jkjPÊDzìõjECÅI•žR DWÉd÷ßë£Q|ß/;Ç-}»`û˜3*åéÕÕÕÔÔÔlðyÏ÷»ÛópY Òé,„PÒ)s.[ÂM•ØV§N™‚RЉãÇw3:TTTôZ§Û"Oƒ­dWÓ4I÷­RŠQ#Gv môì† Êïå;˜Á²«_Ü«Zk†55¡µþÐùr5©Þº·å‡Â cÏ5ôò$ p}Ɉڷ1|uèâ¹Öš%-o"ed‹­·r°ÙnæÐ±ko{z¨ìßM­­·½;ä!ƒEØŸº›nË÷o†¡éJ7`¶V—Õá“–ƒV/o±¨±·VuÏÏoŽmlÛÞôPYçÿk‚mÛ8ŽC"‘ P(`YRJ …Bwø8˜!ó¶4pi Ñh4hÓ¹|¾Kˆ’Ïwöãé¦È»µ¤sÃMœH#×'_Ò@¢(Û¶ñ<ŠŠ 2™L÷šc±™t×ó†ÄÁ… –‰D0 ƒt&ƒmÛ¸®‹eYA?D¢Fß÷©«­¥P(Íå°m»žP‚ ©tÏ4M.z•=÷Øëo¼‰ƒæÈ«¯ý“\.Çasç‹E±,{ØýŽk`E&“!—Ïñô3Ïb¶eqøá‡ñÎ;ïðÀCóå/~„Œ{…®€Ð.BøÈ²f÷¼-Râ ÔY",yc)Æãò+¾ÌÅŸ¹÷—¿ÏÚµÍ<ò補÷©s˜1}·þ—Þ{ss ¯,\H:æ˜c޿ŗ^bç©;ÓÖÞÆøqㆯ”Öšº†zÎ=÷Ž?îXÞÿ}N9ù$^|éebÑ(Æ5QUYY¿<ö$]]]ds9ÚÛ;ÂÇÍ¿M.ýùÌÂ>?réW)d^B)­ ”"܇am±‰?ß÷Väý?n,¸úšë9r8kÖ®2ÑÅúõz,\ô*W]óMÖ®]G:¡­½»îþ Û2N áÙ¿=Ç×®¼š\¾@"‘`ùŠüôΟóÊÂE8®»C¯ÑÜTZP[Sƒã8Ì?ê(¤”L?ŽÝgíÞÝÆÝTjGL÷,Ë¢ª²’ƒæˆeÙ\wÍU$‹@Î]¦N%—w1í‘DâÓP! RHÌl¶ùoâæòbM*ܽJåÖ Äàsÿ”Ò‚ªª@Jþ´SOÆ·ÿøGÔÖÖpû­·‹Å†”£ª¯¯çâÏ~†O}òljkkÖÔ„”’‹/¼€|¡0dÒ½ÎÖµüïCÂ÷<*++Éf³yøaÌ9`6Ñht‡æ’Údº×Óx=¹h"»×C¾£§¥u##>ÕÕz¯aX–E¡ ÂD)Í?7иóÔ4r^¢ >m;¶ ­ÿ´ÅÖÛí˜M ­5 õTVV ›ö¬I†A2YA2Y±Á׫ª«†T‡Z)E]míëF£D£Ñ!qVÍ0‡¸¿_ßÑœÕæ×¤‹5©0ˆs# (jÿ…ïîñ,Ûp­C‚0T÷nokjv5ùïÕçeЉc»Ø{ß<^ˆü^k×fxý·L6øïMÿïõßkk;)­NKß÷û…P`ÛîI[TUFh¨×äs4Õ7SQAèΊ֚ů¿‰çI”?doBiPªÈƒ³mò«~ŒÅ|ÏßÞf²KŠœRjÈ8­ƒóZîql1RsktŒ;Ç)¿ÛPUY…al£$!¨®ªÄw x^8>)å)¦Nn ®®2ÔÖZ“î¬"ŸŸÈ°z× «1h°eÐr¤išÔ××o’• ·Ëó<&Lœ°íl:È—ïû 6ŒD"¾Ã+—öb,eܸ@8¶UWW·åœÔ–îØI)Ùÿ}Éåre •– å‚Í=ñÊ~ßB0vôH:ÛšC¿¾"fƒ€®ö¶²¢…=gMg¿H …5eÕ”nÄóÔ€×ڟ˶,&í41 Yr\—9Ð @ÜúVܰëºL›¶k0@¿%±b˯¶TŒ¯®®fö~û’ÏBÛÕó<&Nœ€çyƒë¤´Öx®‹òý-þÈ•UU™ÇuœÞy„ y”ï¡|£¿?üæè¯CÍçòäsýوqœZ)ȖΪœâzu?ö€žøE­œÖ¶¶@Ta+¬uSW¡ƒÄ`¿UìÎy®K:F ÑjËÖ/}¥ÈM9ëqðàQúì–¢mÝ!°"1L¹cóÎlîéãº^!ñX|H*½v»+Ï Èö ‹x<ŽVzÈÚÕóCýB”fîÀAÆÿŸµ ë:ü¹üA¬÷ìûøÿ_½´‰¿…çIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/demo_data.sql0000644000175000017500000003564513023776357024211 0ustar neilneil00000000000000-- MySQL dump 10.15 Distrib 10.0.28-MariaDB, for debian-linux-gnu (x86_64) -- -- Host: localhost Database: localhost -- ------------------------------------------------------ -- Server version 10.0.28-MariaDB-2 /*!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 utf8mb4 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!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 */; -- -- Dumping data for table `clinical_memos` -- LOCK TABLES `clinical_memos` WRITE; /*!40000 ALTER TABLE `clinical_memos` DISABLE KEYS */; INSERT INTO `clinical_memos` VALUES (1,1,'REC','2014-06-10 20:28:10',0,'This patient is for demonstration purposes only. Any similarity to any person, alive or dead, is entirely unintentional.'); /*!40000 ALTER TABLE `clinical_memos` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `feescales` -- LOCK TABLES `feescales` WRITE; /*!40000 ALTER TABLE `feescales` DISABLE KEYS */; INSERT INTO `feescales` VALUES (1,1,0,'example feescale','\n 0.1\n test_feescale\n Example Fee Scale\n P\n

    Diagnosis
    \n
    Preventive Care
    \n
    Periodontal Treatment
    \n
    Conservative Treatment
    \n
    Endodontic Treatment
    \n
    Crowns and Veneers
    \n
    Bridgework
    \n
    Extractions and Surgical Treatment
    \n
    Prostheses
    \n
    Orthodontic Treatment
    \n
    Other Forms of Treatment
    \n \n 2013\n 8\n 1\n \n \n
    1
    \n CE\n clinical examination^\n \n clinical exam\n 2200\n 2200\n \n
    \n \n
    1
    \n ECE\n extensive clinical examination^\n \n extensive clinical exam\n 4500\n 4500\n \n
    \n \n
    1
    \n FCA\n full case assessment^\n \n full case assessment^\n 6000\n 6000\n \n
    \n \n
    1
    \n S\n small xray*\n \n small xrays 1 film\n 900\n 900\n \n \n small xrays 2 films\n 1500\n 1500\n \n \n small xrays 3 films\n 2000\n 2000\n \n \n small xrays maximum\n 2500\n 2500\n \n
    \n \n
    4
    \n u[lr][de4-8][MODBP]*$|l[lr][de4-8][MODBL]*$|u[lr][a-c1-3][MIDBP]*$|l[lr][a-c1-3][MIDBL]*$\n filling*\n \n filling\n 4500\n 4500\n \n
    \n \n
    3
    \n SP\n scale and polish^\n \n scale & polish\n 3300\n 3300\n \n \n please add scale and polish to a treatment plan conventionally\n \n
    \n \n
    3
    \n SP+\n extended scale and polish^\n \n scale & polish > 1 visit\n 4500\n 4500\n \n
    \n \n
    5
    \n [ul][lr][1-3]RT$\n anterior root filling*\n \n root filling 1-3\n 19500\n 19500\n \n
    \n \n
    5
    \n [ul][lr][45]RT$\n premolar root filling*\n \n root filling 4-5\n 19500\n 19500\n \n
    \n \n
    5
    \n [ul][lr][6-8]RT$\n molar root filling*\n \n root filling 6-8\n 28000\n 19500\n \n
    \n \n
    6
    \n [ul][lr][1-8]CR\n other crown*\n \n unspecified crown\n 35000\n 0\n \n
    \n \n
    7
    \n [ul][lr][1-8]BR\n bridge unit*\n \n unspecified bridge unit\n 35000\n 0\n \n
    \n \n
    8
    \n u[lr][a-e1-8]EX\n extraction*\n \n extraction, 1 tooth\n 5500\n 5500\n \n \n extraction, 2 teeth\n 6500\n 5500\n \n \n extraction, 3-4 teeth\n 8000\n 5500\n \n \n extraction, 5-9 teeth\n 9000\n 5500\n \n \n extraction, 10-18 teeth\n 12000\n 5500\n \n \n extraction, > 18 teeth\n 15000\n 5500\n \n
    \n \n SP\n \n \n \n \n \n 1 visit scale and polish fee removed from estimate. 2 visit scale and polish fee added instead.\n \n \n \n maximum fee already claimed for this treatment. Add Privately, or start a new course.\n \n \n \n \n \n \n \n 2 visit scale and polish fee removed from estimate, replaced by 1 visit fee.\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n'); /*!40000 ALTER TABLE `feescales` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `formatted_notes` -- LOCK TABLES `formatted_notes` WRITE; /*!40000 ALTER TABLE `formatted_notes` DISABLE KEYS */; INSERT INTO `formatted_notes` VALUES (1,1,'2014-06-10','REC',NULL,'opened','System date - 10/06/2014 20:26:37','2014-06-10 19:26:37'),(2,1,'2014-06-10','REC',NULL,'newNOTE','This example patient was added to the demo database today.\n','2014-06-10 19:26:37'),(3,1,'2014-06-10','REC',NULL,'closed','REC 10/06/2014 20:26:37','2014-06-10 19:26:37'),(4,1,'2016-09-14','USER',NULL,'opened','System date - 14/09/2016 13:18:01','2016-09-14 12:18:01'),(5,1,'2016-09-14','USER',NULL,'newNOTE','New note added whilst preparing a demo database for release v1.0\n','2016-09-14 12:18:01'),(6,1,'2016-09-14','USER',NULL,'closed','USER 14/09/2016 13:18:01','2016-09-14 12:18:01'); /*!40000 ALTER TABLE `formatted_notes` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `forum` -- LOCK TABLES `forum` WRITE; /*!40000 ALTER TABLE `forum` DISABLE KEYS */; INSERT INTO `forum` VALUES (1,'USER','2016-09-14 13:20:13','An Example Message','A forum is useful for inter surgery communication etc.',1,'EVERYBOD'),(2,'USER','2016-09-14 13:20:56','re. An Example Message','thanks.',1,'EVERYBOD'),(3,'USER','2016-09-14 13:22:05','Another Example message','This message has been marked as important by forum user \"USER\"',1,'USER'); /*!40000 ALTER TABLE `forum` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `forum_important` -- LOCK TABLES `forum_important` WRITE; /*!40000 ALTER TABLE `forum_important` DISABLE KEYS */; INSERT INTO `forum_important` VALUES (3,'USER'); /*!40000 ALTER TABLE `forum_important` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `forum_parents` -- LOCK TABLES `forum_parents` WRITE; /*!40000 ALTER TABLE `forum_parents` DISABLE KEYS */; INSERT INTO `forum_parents` VALUES (1,2); /*!40000 ALTER TABLE `forum_parents` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `forumread` -- LOCK TABLES `forumread` WRITE; /*!40000 ALTER TABLE `forumread` DISABLE KEYS */; INSERT INTO `forumread` VALUES (1,1,'USER','2016-09-14 13:20:13'),(2,1,'USER','2016-09-14 13:20:44'),(3,2,'USER','2016-09-14 13:20:56'),(4,3,'USER','2016-09-14 13:22:05'),(5,3,'USER','2016-09-14 13:22:24'); /*!40000 ALTER TABLE `forumread` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `new_patients` -- LOCK TABLES `new_patients` WRITE; /*!40000 ALTER TABLE `new_patients` DISABLE KEYS */; INSERT INTO `new_patients` VALUES (1,'PATIENT','EXAMPLE','MR','M','1969-12-09','19 UNION STREET','','','INVERNESS','SCOTLAND, UK','IV1 1PP','','','','','','','','',NULL,'P',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',''); /*!40000 ALTER TABLE `new_patients` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `patient_dates` -- LOCK TABLES `patient_dates` WRITE; /*!40000 ALTER TABLE `patient_dates` DISABLE KEYS */; INSERT INTO `patient_dates` VALUES (1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); /*!40000 ALTER TABLE `patient_dates` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `patient_money` -- LOCK TABLES `patient_money` WRITE; /*!40000 ALTER TABLE `patient_money` DISABLE KEYS */; INSERT INTO `patient_money` VALUES (1,0,0,0,0,0,0,0,0,0,0,0,0); /*!40000 ALTER TABLE `patient_money` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `standard_letters` -- LOCK TABLES `standard_letters` WRITE; /*!40000 ALTER TABLE `standard_letters` DISABLE KEYS */; INSERT INTO `standard_letters` VALUES (1,'XRay Request Letter','
    \n
    XRAY REQUEST
    \n
    \n

    You have requested copies of your xrays to take with you to another practice.
    \nPlease be advise that we are happy to do this, and provide these as Jpeg files on CD-rom.\n

    \n

    \nThere is, however, a nominal charge of £15.00 for this service, which is in line with British Dental Association recommendations.\n

    \n

    \nShould you wish to proceed, please complete the slip below and return it to us along with your remittance.\nOn receipt of the slip, your xrays will normally be forwarded with 7 working days.\n

    ','\n
    \n
    \n
    \n

    \nI hereby request copies of my radiographs be sent to:
    \n(delete as appropriate)\n

      \n
    • \nMy home address (as above)\n
    • \n
    • \nAnother dental practice (please give details overleaf).\n
    • \n
    \n

    \n

    \nI enclose a cheque for £ 15.00\n

    \n
    \nSigned    ________________________________________________\n\nDate      ________________________________________________\n\n{{NAME}}\n(adp number {{SERIALNO}}))\n
    \n'); /*!40000 ALTER TABLE `standard_letters` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `static_chart` -- LOCK TABLES `static_chart` WRITE; /*!40000 ALTER TABLE `static_chart` DISABLE KEYS */; INSERT INTO `static_chart` VALUES (1,NULL,16,NULL,NULL,'PV ','CR,LAVA ','MI ','B,GL ','MOD ','MO,CO ','','UE ','IM/TIT IM/ABUT CR,V1 ','','','GI/MOD RT ','','','','UE ','','','','','OL,CO ','B ','FS ','UE ','','','','','','MOL,CO ','','UE '); /*!40000 ALTER TABLE `static_chart` 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 */; /*!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 2016-12-13 13:51:43 openmolar-1.0.15-gd81f9e5/src/openmolar/resources/hdp_maintenance.png0000644000175000017500000002672213021557654025365 0ustar neilneil00000000000000‰PNG  IHDRddpâ•TbKGDÿÿÿ ½§“ pHYs  šœtIMEà 2L˜ " IDATxÚí½wœÕýÿÿ4 øj|þ_̿쬕TfËAù´tv;5 þ#_Œ„€Ò6¬º˜ YLϲ (ˆŒ@ ! !d+yÒ Ö.ZÛdì*vÖ¿NuÃ[XV1#zÝŠiä}È¢2l¬zŒ ;Æq›‰{ ”0âXfB˜€ÆUI²N¶ÛD:»ƒŒ½CF(É?‘žeS)ˆÀ'Ë7²ykÉT–ÝJ8æˆ_òyÃq›X³ínu¿ÉŸpÐÚa[íól¯}‘æÔj·j£â "`Æ)ŒN—øéåƒ&Ÿ.ßÈÍ¿~œgŸ}§¡°ZতO7^žýsŽÕÿÿG€h b_ ´f÷X»ý^z”žÇÀn7¢t!LD+Óåªéìv²NZ;a`1‚V93ž;oó–j/]M]}3y±0¡P€w,ãww<Ûr?›p@òÙ§Ñ«GÙ> Z;TÖ¿Nyü´Ï±KÖ\ECâc„Œú"¨oþ )M £C˜…ºQ×)÷\ Ó.ú%Oÿýuˆ†¼›¹üêÉÜ÷çÐZ#Ä¿—wgî»êI°|óÍ”|m¯ç¥²[Yºv‰Ì@0¼×­Xf!•õï!„‰Öšš¦ Z…„¬,#)-¤°|Ã.r¦”í6‘ÊVâ¸ÍXFѶv¢gÏRpmÀÄ0Ù¸¥Š††V|¶-½zv£k—²ÿ@·‘E«.ÇQI†÷¼­Ãól·E«.ÁuSHLz—_Fyá×iH¬Bc—¯-Ll§ Ûiò-†ð<.iøêL£µB)¥ÝœT¸ªš| ZÅ4¯¾±‘V¢äpòq]™qý•XI$ÂE£sÒxÎ;gÊ¿? Éì>\uÉÌFöùR;°Š×ÿÇi ¢áþôér)Z»dìêvCÑ&lÔÚ7»Ç9­UŽV0-Yͺ×AÀ­ X‚ñÓ‘Øò8מºŒQý¦s¯çù——QZcìØS0 ãߦÔJ>Z{ ¶ÓDaìºÙṉÔ:Ÿ"e­lFõ½!,2v5J;9ëóȽ9 A+Þæ•ßüö ’Z{ކ£™>©/=óÞãúñ«)-TÀÕðµ#³ô鲊fßÂ??YË3¾Õ&îù·ˆÔ“™M|¸ú ”Ê …d`·ïîõƒ’ŸúœC²ó Z¥¾ãÓpÐn6¬Èý>sÎ;Ìzâ0 ,SrÞ”>ô.ü«ÏXI—B E Æ‚}2œwÂgÔ­„gçÌBiõï#!uÍòÏõßCk…Ö6Åù'Rý9˜í¯oAIÁÉ­<®ìóXJÛä‡ûaž­X±z —óWÍ#”|íø†”ÀÔãÖPQJKmù3ו ï—E±†gÞ¼ƒtÆfúôó¾têËlÏ€ÿsý÷@+„($CzþôsE<ì‰F …eÄZOçÆ÷„¥DCÝý‰U|çêÛiR iL=£/½ ò­ÓWÐ¥DãºÐHJi@+ž‘ýSh±†§ßû†”L›~Þ—Ê56wª®¼×MaÈ ®Ê0¬×mm´ŽF^x0–Q€£qTºÕ;û¿µV2@~d@Ýúo¼þ!äå1þkÝé•¿€+OûŒ.e m‰)5‰”Á#¯•0çœ\C,¤QÚÓÑ£ú§r³ßû#®«˜6ýÈ2 è_q-»’ÆÄ§»à–ïGu„ç†=2ëÙwùå-./dò׋8¶ßR.þÚzvÑ(G£…BMuƒÁãóŠØVi²a›Å³ïÅIØÒsŸ…\Žì—dê køä½;™5ó ¾@JoßiJ­ ²~®¼¡ÐÀà?ÎMÆ‘³J‘Ìl"•݆ëKD×¢3P1ƒUÛÔ~0²…&Åy£rnöæ­Õ\s툂ÿ5¦˜‘=–3ý„ÏÐ3ëͰHCP“0yúš“—Ÿ^É9ckÙ´#Èœwâ4Û†'°„Œè—fÚØõ,[xOÏü;®ë~yTÖòM·äðqÝC{ÞL8PÑîEëwü•ÍÕOáº)`Ê(ñ¼#é×õúu½†Tv;*¦wÙ%˜fÞ>r_»$U IqÞ(ŒV1Ï©güÊõ\|ñpzDßåº)«()T(%†GÙ;Jðøk¥¬ßjñÝiÛ©(viÔòÜ{qæ¼SÈô±u- Ú·)ýÒ±–™óï k;œwþ…H)ÿµÒ”\ISê3_4y‘áTOjg²\>ÝøVm½¥2ÞÂÄ ('‘^Ïû+ÎãŸë¿Ï€Šë0d„¬S‹)Ã"¸O@h?Ö()8º ^ökÖ­ÚȤɽé÷>}m%që{SM:#xà¥2¸qÚvº—fB#„fh¯gÛÀúm!f͓ȄÑòí#ú§˜vò>[ügž™ýÔ¿TRL€šæ…L@ t–Š¢ñížÜœ^KeÝ<‚V1Z» $Gô¿‡X¨B8n3Éå|´våñÿ"`ùö%Œ]·W·6(&/ÔÓˆ¶qWÿòàËÌ|úMÆïÎÑ}–rö kéßCã* B#TÖ›Ì~3N*-9g\ ÝJ4"§5‚a½“Róì{EÌy§ˆé§Ô4HϰÖ?b-O¿ùÒé,ç_𯑠`Û5»rÊ¥0Ö~̱¥zи:Íè¾wŠÒ.ŽJcÈÅùÇsìà'pÜ&6U>ZaùvE±aÄ£Ã1X0Þ^°Œ«®ü §ZÎQ}W2eÌZö´½SjMž7N2m0å¤Zz”g-º•}Þ7ÅÄãkY¿%ÄÌyqY‰È1È‚‘ýÒœ}ò>[|7sžy ¥Ô¿FBv…Pi„º´{ruÃÛH ;œÂØá$3ÛhJ­ó)Bƒ€UH^¸'*n ®ùCv6¼NQÞ1è”jC0jí° )ŒÊ}fë±cgÓ§ÿœéÓ‡0¸ë".9m%Ý»h”ëM 4ÉŒàñ×JØQmñí‰;éVf{’!rú®/§5J†öM£E Ï¿WÄ3o1m\-á€F»Þ78¬ )Ö3kþí¤R6çÁ<šžJ)Di…Ð.–÷WtÛ‘±«È8•˜2ŠÒ¥ã|Še{ÎÐ(2v5©l%y¡Äc£qUWeÚ‚ ±ŒE±ÞØô náè#-비)'¬¥k‰B¹þäJ¨®3™óv!v®š´ƒîeŽ—‹÷—´Å·à-nïÈþ)µÌ™gÖ›qÎ[OØRí];² Í:fο›g‚S§û…&à«,Aß–ì9ÒÙíhe{ª@;ä…yªKeöЂRHšÓ[Hekˆ†*B¢E[Ei‡df;¡@I×Úu5Ó/¼…ܱƒ63á¸Õ êéx"4Z@UÅóïÒœLWK÷r{ bwÉ çåiß³RZ0¬OtϽgö›qÎ[G4¨PªERÒ Ö2{þíØ¶ÃôsÏÇü$Å(ŒŽôõ·FcÓ^•í6欀!«œ½ÅRB(¥)¹n£®<çÁ¦1¹†¬SOatHîßÞñÑF†”måò3WP^â«)ÛW%àé7‹X½1ÈMl§¢ÄÙåV ьֵ¢ú[NÑ?…44sæ1k^œé§Ö²”Ÿ¥ö@¬cÖü?˜œ=õÐKŠô¢é0ÅyÇ¡´í4á¸Í{œhÈhKæ)˜F !Änª¨=dän`´M0 r¿8÷}Þyóô‰/àÜqË(/V(WÓB£Õ'Lî{¶ŒTZð½ ¶Ó­Üö=_åÂÜ–ß ÿ¾Ç埧}à4‚¡}2L:©ŽMÛÌ|-N2ëÇ5Âedÿ4SOZÇ'ïÿ‘ÙO?yÈ]âœ_×§Ëe€D« ¶Û´Ç‰á@—]ž˜Ð9¯©£ÉÞ—!„¬Þxë#¾ï^ŽºŠsN^Åð>¥ü¨Z@u£É“¯ÅilœsJ-¥Z‹V´r½¤ Ò@ˆÂÿÃ!wïÿÖ/ÍÙãêØ¼3ÀÓóâdlÏûj´‘ýÓL³š¥ïÜÁÓ³ž<¤4KXxÑP/.¶³g̰Š1Œˆ§ÖT–¬SëIŽÚoJ=ê”6m©äî?ÝÉð^Ë™vâJô°sêGJ¨n2yúÍ"R)ÉôSêèÑÅwmE âK¡Fa„Œ"d-£àÿ.DÄû)C`ÒÈ©º!}ÓL:¹žMÛƒ<ùJœDÆExØìŸæì“×±üƒ»xvÎÌC&)rWz4@qÁIhåÊnÛóD ìƒÖž7“uj<@ö! ß3úp‰» u'™¶¹ñÆïL¾Èw&¬b`o»…šBš‚¬<þJ1«6™zŠgÀsAŸ!2"2"2Š&†Q´ˆˆ¡…ÿ·Œ¡e-£öÀ1‚žÂs‰§Œ­eëÎ ³ßˆ“¶}g@ŸfI1iÌj>|ëvfÍ|â€Ò&­ˆŸÒÙížFi© ’éÍžW`D;Åæj³‚È@êë¸öê«)rçrÝ„&òƒ.ŽŸÏÐhvÖš<òb ®£¹á¼ít/³sAÂDÈ ˆZ„ÑDAÄ@äy‡ô#ß;Z^Ï”ç]'<‰XHǤ™þõZ–®ˆòøÜ„)‘R ¤Êèá)η‚óîàå—_=è€7ß|óÍ9µdÆI¤×’q*)+yJ;ÄBÝ(Œ¦¹¹™ïÿ¨ª9\uF#G °†@Xž*ªn4™óvœ¦„dê)uô(ó½))AZDFˆHN:„ÂFˆ0Ò á*ߎÞ¤ ðœKa’ó„_[,¼±¨À¦¢$ËË¢l® 0 gËð¶%e%Š.ñ&žÿÇG4e 4hðA£Yöø”þÝfÊl‡vrαÐL³Ô%– µ‹a„÷ÑÔD‚åä…ûbÛ6·Üú 6ÎæS9zˆéc%½" !xf~«7…™~J-=ÊmßKBÉØ²n[E@ÄF ÈCÈ<´È#íFyém›Ûndæ+¶ì  })"߻ƗOb" à FH1õ”:6l òÔ«qšRþT r#úf8ÿÔ,}ûv^xþéƒF³ìFÝ º ´ƒ±[¥ˆa„‰{ÒœZE*³†Ä'ÆFûpîç°¹Ó Q]³™ïˆªå÷qýYõ êÂv5Â!4;«ϼ§9-™qîvº•Ù»²JÒDˆ Ûj<óš 1¡èRæÒ»ôèjRP""L“Gfíà¯ßFC“M4l0õ¬2f\ÜÂ| ÚAè,A J µ§šÐ¥5Cú¤QªŽçæòÌ›qf±”çeiÁaR±šgæ{9úiÓÁOOп‡G÷ ÂT7j!ck®œš g™ð\áéx„…A\`õFM:ã0|P„žÝC¼³¨‰ [³lÜšš‘Ò«n™ËäÇ‚DÂ1´Wýàõ,-)D‘sM!]´R([Ó£K–ËÆïdÎüBœSÊ´±uDC^VUe$ƒ{Ú\têž™ÿ \»™)gŸ³ß’bv”/Ê;ªÝ báAH!H²~ŽC~nÞ\pËÏþÆÎOŸà·—¦èQnâháeH‚»žNóñZÅïgèÝU lx€xiWiLY½!Î8µCÞ\ЈÞçi­ÑLSHF /cè€8U5 šñ‚Z8­Byé\-òáâQ¿.B8há"Ñ í›QdzóãÌž_ÈÔ±u„-– \Ñ'Vkxú;˜:mÿªY:,'4e¬Ý×C2 #‚R Ãò§Ûhw¡”‚††$Ý?‡Ôº'¹a|#eñ¶ãÍ…6W*y%KÚÑüáú}»ynBáW4ZذÍ`î»6¯´‰„ËV¥X°¸‘DÒÍ}yásäaåL>s G /§{×Íi ¢†·EØ-¥§zt #¬8hé •Ò× Ã¦A5ðØÜbž™/˜6¶Žé¢½êdFI!ô*|ùÄ‹Š9é¤S°,óÀ¼¬Ïõ“eC†ÑÚ!`–´ª½Ús5¤’6sf¾Á¦ÅOqå×<×VÊž*ë5ÎÍRÛ¬¹bB^]EŽ‘E€Ví&BX”…)ˆiNh)ÅkoÕR×àøªI眇€epÖ×1mÂHúõíB(£¬¤ˆ`02 "ìÛ£€§fEÀ?‚€ -,ýöY• é“äÂÓªØTiñÔ¼8ÉŒWz7-Ñ'Ë%§n`Þ3·0wîKö¾öËy–ÂBi—h¨O.¾íñdS!sž˜Éåc«9zéWÂS'Yþò¢ÃŠ-Š«'Ð]æè¨]É ÀUhÇ,òc!N8º€AýÂh-)&Ž©cãÎ3߈ӘÚEÁh`dŸ'Yâ/S]]}èQÚsE‹óŽó©ùfhUÙ(…IÄêÃâ–Ó·h+#ûÉÚ:gfª4¿Ÿ™¡º^qËe!zWHÏ•»èrÝš0w“à4’Éj^žßħ+S¹ü†ÖŠ®]b\ö‘œvj?Â!““Çô§gEI«Iõ$@ë Zz«?RNJLïuðß·|'ÅôÔa o¯Z †ôJ3åÄ:Vo 3wQ>¶Ï0´ðß#û¤Ñ™ ÔÔÔuŠŒì4 ®Jãº)B2ò#ÃPÚÁq“m¶©µ¬–¦¦FŠ€Ù’ örziVlR˜&äå )rR!ØMB„Œ¡êilØÎü÷k©opwåä¥`èÀbÆÐ›ªª$ùù!N8º7ËÚ-"}“Ù2áF«ˆÝlÅÕ·ý[ ±+×ÒjÁäç)®–ÊÏHzZ / µ i"ÑH§Œ{§I¦7b«&JòO@IÖ©Cí*íÌ®£¬k!® ÒÔX†O›JA÷Á÷Î °½FsÏì µÍÃmÀh±#"ç*,Q‡kW‘H$0M ”‚wnáç¿{‡÷mfÄЮ èWæS!­„OZÊ]«¿ (-çm“)Zú‹M´Nñ°|CˆG^*æø œuL=®ëIZc;‚×?Š/L0`Z•UÛ¼´ë×m ’émí„Z+FŒŠsÔ 'òçÛë½2O´—çÕÏà‡ùxµâžÙiªÕ+0†·©ŠPH´lêêjˆ†ÒL9³+yQƒTÆå³•ÕØ¶b@ßR "~±C+@än™¬Ü{-Ù¨Ö.£• hd›4ð§kü¸ Nߊ4“ޝ'/¬¼9ð?fùÆo¬ÊaGžI—.] JÛl¯}ž.…gPE"³¬ÓñþxQŒüä;l³Æñðë.µM­6a Ù×àûßòñ*—»gf©iÖHs—”èÝT—Ђü¨vSc-§Érî„‚–çîF"Ön¬áÑY‹Id²ì‚Э€iIp‰VS!Úd;=âÑÌ|º.̳oÇéUžaüqõ„ƒ*Gû)¥Y°,Ì“ FpÊ™×0eòéN.îm4&—ãê #ûþ–¬SOSrM‡;£´vÉ ¤¬¬Œ?ºŽO'rÿ\EM£ö\__…9Èä'—…øt˽³²T5¨]!¶n;G–!(‰K M6R×rþxŘ#ÙlÛv)*аuG÷ÿí}¶U6v®êön¸­®luªçph–­ óâ»ôé–fÒ õÄÂ:WWà*ÍÂÏ"Ìù`0G»†‰“¦ìW´¾Ï€¤³;X¹õ·ŒîûG´V4&×¶ †Ö.†´(Ê…iD±fÊË‹ùÙ­7±AÂï)j²ÕÊÑ×ä¦ ƒ,]årד6ÕM ÃØ­‚Ävl\y&Ѱ¤WW“ãG[$ulÛ¶ˆ•á›çŽ$±xäÉ÷Yº|«ÇOiÖš¬ë¶D,»J„´òí{‚¹ßµ¡Â'«Ã<÷V!½ºd˜8¦ŽHHå&ÐÕðÁŠ0/.Ìq§\ÏäÉgï7ŸµO€Øn#*àÈ~%ìIÆ©Áqí¨´,¡@ %ùG±£öÆGàº.Å%ùÜøãëø¤q yÑ¡ºA±+… 9r°äg—Y¾Fñ3³TÕû µZ̉¤bÅ:€ÑCtïjPßè°à£&ššm‚V†£†4S[ÏE“Ë9¤€ç_úˆW篤9•fþµÜõÀ»Ì~é6l­Ãq&i-Ô‰ÇT!P,[gñÂÛyô­H3ñÄz"Aí®5ŽÒ,\æÙ÷s̸ë™2uê1¾mTDz5Es[l7AÚ®¤ DÀˆRJ8PÂ'J$Ø` {› –¼¼G5šÌßÉÖ-Ø"!™ó¦Ê‹%}º f½æ°i‡fØ@ƒXÄ£R´†åëàϧihÔ\0)Æ)ÇÆ˜· Á]í¤¾ÑåÜ ]¸tZa3Tu ê# Ì}c5sßÜÀã³–ðÚ›«Y°h+ÖT @EY€ å€¶}²1 :¤Ñ:Í'«áùùAzwM1éÄz¢!íïÆ(|âù…C8jÜ5Lž|ö'ªöéêüÈ0?zm©@)ÍM~,Ü“Òü#)ÊECâ#Þ]>×Mнdú©`×U””rÓOgðiÃqüßsªÝ]’ áðÁ&?½"ÈòµŠ{ŸôlŠÞÚ]º"ËÎ*Eq\rÔˆ éŒÃS/Ô°y»Í ¾!.žRJ<ß«-¤É¦*1u-o½³Œû™Çâ%«©««cÇöZæÎ[ÁO~9Ÿ§^\IS²!Òh•å#„ͧk/¼ w×$Nh ðjÄ´+p²ðÚ›¿>_Ä']Í´iç”’Ó}’T5̧ªa>¡`WßÀFXùÉe¬Øü Öí¸CFÝï8nšTvG»{c±'ž0‘çÕ²iã ô€hÄÓ¹Ò€òbAß³^uزC3t€‚¿Î²YøO—#GX\u~>-ÏpÇýud¸òü2ÎPŠe€”ŠÚ† ¯¾]ÉÏï\Í{‹ëÈf]Ç!“ÉL%I$ÔÔ4²ô“­TWo%ÜFya%&5¨L —ÖñøóMô¯H1õÄf¢–BÛ ³àfo.´yhn cN»‰‹.ºä ¥p;ÕëdáÊ‹I¤×ø5ZJg±\7íÑÖ¸5ðaò#èiZ‚í$÷Dk—p ”‚è`ªªªùŸŸÎ ›œÅ·¦)ƒÒž·©$,]íò›‡²Œ ™|ºÅÕ?KóþR—«¿á‡ß.äw7rïß›ÐÛâ¾_÷fÔÐ<,ÓbÍÆ ~l;/¼^Ïæm™Ïý^ út“\8Éâ &;«4>“eHoƒ‹Ï´(ˆ ߬\^]˜å±7J8}ÚÍ\xÑ¥ÆÁÛ¶Ð)@\•bÑêËH¦7úÁ`K™ŒÂ2 Õ÷òƒ°&ª—øy’¶î¦¥Çä®­ªªæ‡ßÿƒò_àÒñ¥E"hC°tµÃ/ïËH‚¥ŠDJsÄ“¾=LÞ[’eãVEïîcbš¥ï/IðÙêt§w6Z;Ò ¬NmqÙ‹XÈÏg)PŽàõÅ6Î-bì„ÿ檫®>è{H:ÝžÉQ O}Õ¿A:»ƒ UJIÁ ”柌e"„A}â32v피FQF`·Ž UUÕÜò¿7R!ŸâŠ)J }ÞðR"KVºÜüç,ó8düºÝïºu]õöî&¸î‚—N°(ô%Ck/ùÚY{½Œÿšò?\|ñ¥‡d›ÂAi`æ¸Í¬Üòk÷ø1 ©i\’ÛÐ6é¢(ï°vËO«ªª¹é{ßfpá \6Ñ¢,îwbðK:—mPüà÷iÞZä’ÊpHFïn‚. péD‹XÐ÷$8.Ì[lóÀKEœ:é'\yå·ÙîªþÔDzo/;“ÂØ‘2L"½i²±Åv„‚eÖ—––ð»ßßË6{½àPÕ Zoí`hÉmׇ{´AÐ:4`ÌøF€KÆ[ä…E®ß«aÞ‡y­”ÓÎþ_.¿üªCºÕí€>Yé4®¹SFèV<‰¬SO"½­]ÏJ r…ÕÒÒþççw°¢n<ÿ7;KeGÚùÌ£J~ýݧg\0n¼8À¥“-ò#"ÇM¹ ^ý Ã/•pꄟrÙåWòrÿÁ°Y´êJR™­ô*¿€¦Ôz„4Û/5b2´Ûgh²Y§ÍQ\\Ìm¿ø•êŸ Uu éç½0´¯äÖë«;_8 SIDATBœ|$¥w7Áõ­$C+-q¼±Èæo¯UpêÄŸpÑ%ûåC‡v˜û{á¦ÊGI¤W´Jè?G¥pÜTûµYZ´Š÷xù­w?aÒù·vãbéd‚x¨éÌf.›¥q‰V*‡ üæ»!~t{š7îŸMzU®¿Èâ›,baÏ€ Ž‚WßÏððÜbŸØ¡c^bÑšWpÝ$Ç zŒ Uöå’ÛmdSÕH ßß=k;Míò¨õÆœ–‘Í:4n«aç¶ÚÜQ¹­–Ûjh¨Nb„OâíÕã˜ùº"•Ö^©öÒE#Hîúi˜£Ft6 @I\pín¼$HaD‚ò¹ ÞXlóè+%ô9º''Ž[G6[CÆ®Fâ¶NûÈú!k×âª4ÅycÂ$k×vX·(„eDÛŸCvx¤³iž™=“wŒçw$©ªu½ªBå1=Jüï§Ÿh ìûý÷ê&øÉ·\6ÑB%ÚÕ9Éxea†þQÄÀºóõILÓ+ÄÎe ñèôHÛ;ØXù8¦AãÏóšgö’¨’Âêü—ñÙï`(Âm¿¼‹ ÉÉ<ô¼KU­7y(ïæGôÜvm“Ž2öÍf\÷ ŒÂ¨ÌQî®ëIÆÃs‹è}TN>=èåm¾àž4dGíKÞ®ZA«Œüð`7áïÆm_F üü½ˆ{ee¥üúw÷°>1‰{gg¨ªó@Ñ.h%Ñ×àW3‚œzìÞ }ïn‚¾àÒ³,bO2ZÀxua†_.fÐñ]ùú¤ÿª¾fNáÖ4½)#(7Eqþñžtص{ÿ'Â<à-+-å–ÿï.V7Œççlªê¼&eÂõ¼¢ÃúüâÚ ãŽnß%îÝMpýù.ïEàJ‘cÞ¢,Ï-å¨S¿ÁØ3Â^Ã3ýoˆë&I¤ÖùÙ;E¹ßÃ7c×í¥ãœÆ0‚ŒÇU”•–ð‡ÛÿÂÖìTîÎöÔ»¨ûa½ n»Æ¥µ¤ô®Ì8/À7ϲˆ†…×€@{{â_[˜å‘WË8mêÿòÍK/DÊmw¹N’ÈlÀq=ÙˆQÖ.¶JíY—•ƒC#eè Ü¬Öšh4s.ú>ï¬:‘ûžÍPUïÒÒÂoT?ƒ_]┣=›Ò«BpÃù.›`‘¹d ëÀ¼|©˜±ãÌ¥—^i{ñs̓üì®n÷hKÆ*ªkX´d5o¿÷)k×oÇvܽÎuJ—4&—ûMó5‘@7LéåÌQvÇF[ë6­–ög45§xèï¯óèCsùèÓõ8É HÉü÷JˆFøæ&yÑ] Œègð›ëCüèî ãŽ0¹þÜhŸµE ´fñ ›û^. lX¦_8dràš`(Àu3þdsÈ XvsBòòBÜ{÷ TÕ4pçÝÏñØc¯°qK¤³ÞÍY…ÅùL™x<×^3™ÃGö;0@çxÕXxPŽ’ß½mÆž¤bdä)YÛáð£¿ÍÚµÛÑ-¾mÄ8¡‡s럑JÕpùxƒ’‰«¼‰ØÝà¯?  ¯9^‘«áõEY|µÁ'ôà”³‹W~—²‚¯Ñ¿âš½:–aðÌ ©©mç kM×ÒBîÌÚ~ÔUlÙYïí‹·üÃõ‰ þýu¼ïÜñç̸jâþ’Êlñ¶€iE,ÜdÝÆ½| ”Á\{×Î)S‰«5‡ûÖ¬Ýá`;œ{šÌnj¦¬æâÓ ¸@¢•@ (+Àk.àsa®‚7–dyôõ8ýŽíÁØ3‚–ÈcgýËdÝ[رJ~õ垀€+àðc¯aËæjˆ„:ŽJ‘ˆX˜¾ýRÍi~ô½söφ¤ìmHa p‰†úzÔ»“ìÐ`+íì'Í`H¶ï¨cÙª­ th*Sƒùõ¥Üÿ¢Cu½B¢Ai´+¼¤Ò8®âµEix¥'tçë“‚9×Vã%Øš“Ë ‘!¨¬ndùª­ƒÑöÎ!¿ÿþñ},ø`Eçi)²‰Ð´Êý„Ur¯în,ÔíÝŽ}ðzDêä ~?³„Gç:Tֺ勄£qmÅ›Ú<üz½éÁɧ‡üD–ƒÒ6Z;'!C´$‰ c“Û3±—k¾yÅo:ˆR¿‹ƒÂ0bD‚ÝpT ¥ìl¹K,Ô³MµÊ~L롱šSí4ÕÔ ƒÔ¤‡ñ³J¹s–¢¡Ya4¦„'^kæÎ9%yVo¾>1ˆ4¼ÅÑp?ŠóÇöÄq›ŠkŽÐØÌ€Ý?þX†èMŸ ²ê“5<öä¼ÎÙ†—h*ÇRÙ^K×\³ä]»˜B¢\7êú~ŽË‰cGqÉ…ÿE~~„ÙϾËŸ‡Þc«˜a’f0Ëš7rþ¯’ô(M’J¤¡7!ÌÇ»HÃ{.Ɉ޿¥<¾ëY([ªg±r˯1døÀ:ᾑWïj"úâÜEœsÞÏIªJX£1ûûë\0}l'ñK+òƒ=¶ÖnhcÐf!† ´ŠZE¾Ú’i&L9gŸº9÷Ò´‰c°¤ä‘'æÁî™;½zYÜtK9«>:'9ˆPØ¢ ë‡”-EJo«DïòËÛ€нdÍé5l¯y~ÿ;5§˜8ýä6`œuÚQ\ù­ñÜùÛ'!¯Ç4Xùñzjë›÷]e {²VNΠ·ìœÒÚ%êN<6ŒüHÿƒ€cóË[/ßãåÓO?i;{ª. åå.yùš£—sÆÄ^;6KQ×}ìR˜”Žk÷ßUMôƒ¶ýT]Jñ“œßî[×~{bÇL¥Öì¨i¤¡!±ïâ=sP …$žw„·X¥H63ÿàr®KA·2†ê±Ç[奅H¥Úmó_ÑCãºàª6Õþ­í69 )£¹öµ»¯Uès»Rt4©áâŽÝþâú÷éJ¸¼Ts†ö8iÛ¡º¶qß%Ä^?FSÆÈ õÇu“­¼öñ-YmíÀ}ŒD:f#Q…«¼æh®Júû![³Ãö馌!EˆýëU±hp¯®%žç×¾KeUþKˆ”A B o—ª£v‰¶¦C.ë Z˜¯$äÒ½_,v/çß]C;nç"õ UšóB\7Ó¦ùä—åBuµitü8d…½‡ÔìZ¤ ”JÓfSJgÈ×Tf¯êÛ¶½–óÍBPXíܲº ”ç8¬–!…qðUÖ~ŽÍ›ä^sì®Ja;õí‡;v Jígž$jùlÕævßÞ´¥Š¦µ»Ú înLIIQ~ç‰{bùwqý•ämÚ·Jê`$Ö¯—$“‚ökÙ4ZyI¶öÆÎúWÛÄSûcØõû™í¾uÿ#sÉ=Q¦5 )ÈtüÈ0"n¾‡—Í)à><ç ; Þžo ë²ÉÚí÷М^ó¦´v¨oþˆÍU˜êÍòè/1ç…d²žZ´—…‹Wò§;gCA¬£øTtSXëœ ‰„zù ¿n ÂÁ.|iFPñ·GƒŒ=µ£‡‘ Ð.‹W]F^d–Y€m×Ò˜\ŽÀ:0«®5D‚œsÁm>z%ÅÔW7°ôÃU$l:*AMg9ò¸aäçE: H »—hÑøûA–ŒaÊè—¬Xl²usÅ%MH‰§ÇËå—ù¤ª!°…­†E+À4ü† {‘¼lÚ ;Ko2L4Ô¥³¹gFB]¾diHlº—\½×\MK+'ƒ]φPûo?r¾«ëï^bJˆ½dc’‹®˜ÈÑþ³àeçÀ70dÈ«nW.¦%èÊ—o¸ÄÇÓ»üR²n}'œßdy} )èݻܣÝ÷QÅõTÁ=w^ÛÚ/éü0d` h¯›Ø§ûq5ض÷v?²YT¶j_i”›…t;×¥m”kã:ITÌ Åu(mãªÔn‘ß®`ŽÛŒ”!FõýCî!Jµìm¹«†O>úΙz"4&¼\HKWè©ñ,=461ftæÍ»£ #±_¾ª&ñØp4‹…è9´7¡`°ÉwéRï:é6¸áPpϬ®€L&KÈÏ¿÷)¿‚.…§±bË/©iú­¤0}•ëbÈ ]ŠÆ3¸ÇD=p8{îþ‚hX hì­1¤àÉÇ~ÊäÉ'rÍM÷P·Ñ¾Š”xõGPÒ·‚ßßz9çO?yŽseÕ!eBâCê3vuÍKÈÚU êI~df'í×£ÿEl©¬mÿÉs ôW޵‹`\¸x% ¯$•ÌP^gÌ1CÔ¿ã,ªÉ—|Ìçu­RºÄO;àÒ™qÌ‘ƒ8æÈA‰m¿‡NºÝNn_Ð_~ ùwmÄWòe_ò _¯ù ÿdK}h?þ+/«“#Î@*ÓÁ#É3ü·/}¤þeÿüt¶ã´+(®«>´‘h3ñ _Ù¯ÆÞÆÿºH?¾î™ŠTIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/hdp_small.png0000644000175000017500000004150012033133562024170 0ustar neilneil00000000000000‰PNG  IHDRddÿ€ EiCCPICC profilexÚSgTSé=÷ÞôBKˆ€”KoR RB‹€‘&*! Jˆ!¡ÙQÁEEÈ ˆŽŽ€ŒQ, Š Øä!¢Žƒ£ˆŠÊûá{£kÖ¼÷æÍþµ×>ç¬ó³ÏÀ –H3Q5€ ©BàƒÇÄÆáä.@ $p³d!sý#ø~<<+"À¾xÓ ÀM›À0‡ÿêB™\€„Àt‘8K€@zŽB¦@F€˜&S `ËcbãP-`'æÓ€ø™{[”! ‘ eˆDh;¬ÏVŠEX0fKÄ9Ø-0IWfH°·ÀÎ ² 0Qˆ…){`È##x„™FòW<ñ+®ç*x™²<¹$9E[-qWW.(ÎI+6aaš@.Ây™24àóÌ ‘àƒóýxήÎÎ6޶_-ê¿ÿ"bbãþåÏ«p@át~Ñþ,/³€;€mþ¢%îh^  u÷‹f²@µ éÚWópø~<ß5°j>{‘-¨]cöK'XtÀâ÷ò»oÁÔ(€hƒáÏwÿï?ýG %€fI’q^D$.Tʳ?ÇD *°AôÁ,ÀÁÜÁ ü`6„B$ÄÂBB d€r`)¬‚B(†Í°*`/Ô@4ÀQh†“p.ÂU¸=púažÁ(¼ AÈa!ÚˆbŠX#Ž™…ø!ÁH‹$ ɈQ"K‘5H1RŠT UHò=r9‡\Fº‘;È2‚ü†¼G1”²Q=Ô µC¹¨7„F¢ Ðdt1š ›Ðr´=Œ6¡çЫhÚ>CÇ0Àè3Äl0.ÆÃB±8, “c˱"¬ «Æ°V¬»‰õcϱwEÀ 6wB aAHXLXNØH¨ $4Ú 7 „QÂ'"“¨K´&ºùÄb21‡XH,#Ö/{ˆCÄ7$‰C2'¹I±¤TÒÒFÒnR#é,©›4H#“ÉÚdk²9”, +È…ääÃä3ää!ò[ b@q¤øSâ(RÊjJåå4åe˜2AU£šRݨ¡T5ZB­¡¶R¯Q‡¨4uš9̓IK¥­¢•Óhh÷i¯ètºÝ•N—ÐWÒËéGè—èôw †ƒÇˆg(›gw¯˜L¦Ó‹ÇT071ë˜ç™™oUX*¶*|‘Ê •J•&•*/T©ª¦ªÞª UóUËT©^S}®FU3Sã© Ô–«UªPëSSg©;¨‡ªg¨oT?¤~Yý‰YÃLÃOC¤Q ±_ã¼Æ c³x,!k «†u5Ä&±ÍÙ|v*»˜ý»‹=ª©¡9C3J3W³Ró”f?ã˜qøœtN ç(§—ó~ŠÞï)â)¦4L¹1e\kª–—–X«H«Q«Gë½6®í§¦½E»YûAÇJ'\'GgÎçSÙSݧ §M=:õ®.ªk¥¡»Dw¿n§î˜ž¾^€žLo§Þy½çú}/ýTýmú§õG X³ $Û Î<Å5qo</ÇÛñQC]Ã@C¥a•a—á„‘¹Ñ<£ÕFFŒiÆ\ã$ãmÆmÆ£&&!&KMêMîšRM¹¦)¦;L;LÇÍÌÍ¢ÍÖ™5›=1×2ç›ç›×›ß·`ZxZ,¶¨¶¸eI²äZ¦Yî¶¼n…Z9Y¥XUZ]³F­­%Ö»­»§§¹N“N«žÖgðñ¶É¶©·°åØÛ®¶m¶}agbg·Å®Ã“}º}ý= ‡Ù«Z~s´r:V:ޚΜî?}Åô–é/gXÏÏØ3ã¶Ë)ÄiS›ÓGgg¹sƒóˆ‹‰K‚Ë.—>.›ÆÝȽäJtõq]ázÒõ›³›Âí¨Û¯î6îiî‡ÜŸÌ4Ÿ)žY3sÐÃÈCàQåÑ? Ÿ•0k߬~OCOgµç#/c/‘W­×°·¥wª÷aï>ö>rŸã>ã<7Þ2ÞY_Ì7À·È·ËOÃož_…ßC#ÿdÿzÿѧ€%g‰A[ûøz|!¿Ž?:Ûeö²ÙíAŒ ¹AA‚­‚åÁ­!hÈì­!÷ç˜Î‘Îi…P~èÖÐaæa‹Ã~ '…‡…W†?ŽpˆXÑ1—5wÑÜCsßDúD–DÞ›g1O9¯-J5*>ª.j<Ú7º4º?Æ.fYÌÕXXIlK9.*®6nl¾ßüíó‡ââ ã{˜/È]py¡ÎÂô…§©.,:–@LˆN8”ðA*¨Œ%òw%Ž yÂÂg"/Ñ6шØC\*NòH*Mz’쑼5y$Å3¥,幄'©¼L LÝ›:žšv m2=:½1ƒ’‘qBª!M“¶gêgæfvˬe…²þÅn‹·/•Ék³¬Y- ¶B¦èTZ(×*²geWf¿Í‰Ê9–«ž+Íí̳ÊÛ7œïŸÿíÂá’¶¥†KW-X潬j9²‰Š®Û—Ø(Üxå‡oÊ¿™Ü”´©«Ä¹dÏfÒféæÞ-ž[–ª—æ—n ÙÚ´ ßV´íõöEÛ/—Í(Û»ƒ¶C¹£¿<¸¼e§ÉÎÍ;?T¤TôTúT6îÒݵa×ønÑî{¼ö4ìÕÛ[¼÷ý>ɾÛUUMÕfÕeûIû³÷?®‰ªéø–ûm]­NmqíÇÒý#¶×¹ÔÕÒ=TRÖ+ëGǾþïw- 6 UœÆâ#pDyäé÷ ß÷ :ÚvŒ{¬áÓvg/jBšòšF›Sšû[b[ºOÌ>ÑÖêÞzüGÛœ499â?rýéü§CÏdÏ&žþ¢þË®/~øÕë×Îјѡ—ò—“¿m|¥ýêÀë¯ÛÆÂƾÉx31^ôVûíÁwÜwï£ßOä| (ÿhù±õSЧû“““ÿ˜óüï5”‚bKGDÿÿÿ ½§“ pHYsÄÄ•+tIMEÙ ‰  IDATxÚļi´fiQ&úD¼Ã¾áÌ'çÌ &j`,DfÑ+W¹ÂÅéÞV[½Ò.¥ »]Š¢‚Hƒp•¶'¨B¤–€T_@ j ª€š++ç<™yæoØÓûFÜûûNf¬î?‰ä:kå:뜳¿½cÇñÄO©*(€D@…2ˆ¡|þG Ð5”A ¢B;ê(,’[N‰ÆJ© Zªh?“XˆQM Ž U4D %“2”€Lî•ñ­øg'ŸNÓÛƒ <ùµ?RÀ‚@XÀCª‰€¬(Jh`N˜%žZÊ@¡¤ ˆ€*LûÙ¢DÊ€¨ˆ*à LEÆ¢oDíûŸ|«tÞï”&oub)´Ï%ƒ™U9 ²CZµ6%J'£Ô (y‚ƒðä-…ˆ¶ („ÀD¤ª 8y•ÔÞ á[ôTuâ>í_hÖùÏßœNìE;~Øþ!A!ªÄ ®€2j­ Ë]hªÊ“¿ŸœâÖ±0„É©!.U…È)(Dl Mm#Ü CyzÿÖžÕÞ‚‚¦¾3}mØAUˆxêYQ·‡"* ‘%¥à\Uήܜ޷wo/ÝK”LN¶a©=ݤ@l/oŒn VÏ]É;ýÅù}ΧD“Óª©R{hI¡¤h¿Ó{³KA¦`âY %¢(¡iÊ4ͪªp.r j AajˆÀù µÖäîu{Eyö¶;>ÙŸ‘N×ö{sýþ\æû0­g®nk¸®Ë£ÇmB˜ï_±éiÒ÷>`“l¢ "Ub n"ƒ­Ã·ÄRCi³À“ (+(”Å6H³´7Œ;Yh™ÛdT)Æ!QðÖp#ËŒ7qmøÈ÷}´¬O3[fcg6†]Œq8å¼(ÆDص{yßÒÁýóÏa<ã3Ÿþ×~ôSwÜñð`XíÝà?þÊÏ¿ä…W õŽ,©}ƒPVú–+B#ÈBͱHê°™8ÛÖ¤ÞuëF½ë£2f(¢Òé6¡ T>rrksüô§Þh`€&„mE¹>>snmes{µ*!6ý^/I;Ö${÷\b9›M–:|øõ¯ó—>÷Pšì~ô±3üPÜÜÜüúÆ™×¼öÇþð÷_7®5±TŒšnÇU¥&9}K|kÇX µP…X•b­ †á½í¯®æ–Á UµlÖIÏ´rû—¿¸z¦¸æŠg\uÙ37‡C"ÓÍzD j!!ZIåÈ3ùb$ýêƒloŒž÷íßp]YŸ Óy–óK[›kdÂì,½ëOï‡^ùV•@Ö(@JJߊÏç3â…ØTB´ØÕÎF¶Õmw~:ÍDˆ”Ô˜Zuãìø/~ù“ÇŽm÷ž™«.»rc´±µ½cUƒ¢…hHg€eÑýM8XI¼´ª—¬îQt.¿äªgßø¬¢Z¯Ê±áÅ?ð·[››>YÞ{p0*}ð~ 4 cS´ú­¥çí%;É‘@ŠFµöÄÃrý®¯Ü›ú~â˜HIE¬­Ó›_½÷þ[Gãõ<ùIW•u FIâªfsT³u&õ¾›¸œ)L’Òp´–wÒQ1ÞÜZU‚.Í/{o &<üða@C¨¶6êPnØÔ€6!Ša'kÍÿê¹¾)§ÔNíT4 €ˆH¡RQÔ÷=x÷ÆÆêóž{ƒ±¢àc ë„yxfû«‡ßÖÈjžçW^qýl~p}£1ä@MˆÃ$͉ q4®¶ãF!P1Xç ñP.š¢ß1äW×OïÝÕA]Bo}û[»ýE`F‹{ìZ^P (‡3nl6þe¨6ß‹f8ž€vµ*Y V… BY­­Öñ/?tó‘S_ºì²}ÝtŽà BÆÚŒÃé•õ»V·î³^/;øœ…üYZï Uj,ňÔÍ©ØkM’º4uin²ÜÍÍöb(TëÝ»õ¨ØÜ·ç s ÿÙÿ§ÕÕ‰U=ÞÚxÖ3¯ý¾W|O‰a·“UÍ.mAŽî€â¯ÿ¢0ÔÖ¹tñbV”cc¤áñ¸njÁðúfyÏ—¼éôê KnÿÞ‰™%tT\!H+ãêˆñÛÖâ²ýÏvzy=&.ἪSX#ÂD#Ñ‘&›ÃÙÞ2í¯mx›Ìö楆Ìñ3å›Þôû„,4‘DöíßóÆ7ýÚB'3*€eQÔ‘§uÏ7²¾þ5À·/ƒ ¬CšºˆXwôίÝrnãDâ{Ký'Ïå—ºòPcLP®¬‰±)FŶ÷f÷ž%Ò (‚n ­‘Ûd7AJ„Ö['OH†“4?wnµ®t÷òÁb,ÌCÝîW~õÍë›E§›§ÆV¯û¥Ÿûög^±] %’‚-' 8{ÞV =ψпA€W"R‘Z)H̘9MêŠú¶÷¬ÌÍ,Ý¿{÷uA:–ÓP±³QÆ–9ï÷³ªv{æ/µd ¥è¶`@\‘0Ø$P™€^R@UÁl‰l–ö;·ß%Övٽ禸閺6–ÇuU_Ã¥¯ûÅ— µœy‹¦ ‰cV4‘ŒÑ <ÔÓ¨ô8“Mª«‹êYL¦²>ŒŠMÐê÷|¬Ö#³ f}}<×¹b±û•ˆÉr"EÔÆ°õ={p&½r°ÖórÐo‹'ChI!†ÚèB P$(¶·†KËûC4ssû[°¦ÿ©ÿï®?|Ë{ËÆøNZ†¤S}î ïoi‚̳ˆqì ˆ@H#T&p‡hÂv'šž/.Î"ˆ4Qygüå>±9zdf6ÙX/Î^yÅeÏažw&•’À¨¥R…PúûvݘƒÇWFAÀ1Y&¯ÑkL )“Ê ¥€*ãÒ´³¾6ô¶?7³·ªøôÉõ?|뎟|¯—°l¬o|±*ª¡¡¦¡rÚ¿oÂ(IIU@Sn‹dJÀé4êù"÷¢R:|>ÛÂÇá‘•õ»’¬.ÆÌq×Ó®þ‹Ýª¾ªÆÄCð–Òé"œW§ªf]PíZ<øÔëžÿÈC§ƒ( Æ²a£b%:¨ &tT5 •TÝÌÌòÂܳ綳Ìýõ_äÿˆ±™õn¸vò_nÿ¸$†(ÆÁ9ív-šªNˆ-*Æ”ºQê«NI0`.n$³ÓË;â¤Á‰{¸ÅgU3¢¸tíå/í¸«›1™Qæš“«_‹º¹¶ul4¬gû—²ÚÅÙÙËö Êé0Ùõ­øêŸ{í¨(šçîu¯{õ¿ÿ±—#¤ìÒ@ˆ ‰PUbËVµ<É…ÒþBôþëMöÍ« ‰‡ÃMÑÊ[loTûw_Õ`2 T«g׿FvݸlaöÒ«ö=GÕmVƒ~gq®sùòLyzmíž{zæÓž•R2 «Îw«²ÑE„ÙäY§“Ï3eÌYÙX8ƒïþîWÞu÷½þ¼e÷Æ7þÂÏüÌ8 ˆä.Ý­cºéÁ*·è’‰(%)©*” {TÁÜFt¹èAýëbMb£Êµ¨X£õ¶M:Z­)؆ª¤ç=ýå£z±®ÇÆ.Ÿ]-ŠñÊeû¯¸lïÁ]så×î?qÉ¡KûÝíÑzˆÁyïŸçÙŒ3=Õ¤j,TC/{ŸÿÃÝ~¿.¶ÿË›ßü³?ûCÝÃíÂÙ„áS?ëm¢âªZñ„^. „€Äib‰¢PU"²Ö¨_`¯oE£J-«¥Mšö Ï‹Øn7Fì¢LPΞ;i\ ¡n*×3WåöòP÷Fíu—ææv=¹2*ëªÒk¯~Z>~ò”O8I ÔdYÖïÌYÎB4"ÆÍ<ýÂ/ýîç>ÿåñÖ¦ÞþÇï|õ«(ÏE§“æ¦BÂ=D7ØYj¬ˆDÁŒz÷©S+÷=ðÐ#]9»^ŒH³{©sõÕOzÁ Ÿ÷¼ç=ç’KçÓÌZkZp‚)ä _DRõBŠÆö:{-–Cós(Ñd1c2"‚ålyñ íuئl΋­Ng6ŠZgš8²¾>|üÞ~?YZZ¨ëÚZ?,Šíñúl/íuMŒ8v|ü»¿óGçV7zÝâ_¿øùë¯îoÈ3ª¢Ž†M]nÝqûC·}ñ®Ï~ösŸÿâ§|Z²8#Jˆ=i\Y9}ï}þÕß}ìÞ÷”Ÿÿ¹ŸþÑÿß/Ù·U™L{L ÔLºˆ1kÚ€ÏÜ!#ËišŸ={æ‡öDɘAÊ@טTšº®¼á.`‰ÃÖ`ÃøÊ:vÖ7•¨®K²ãþ,€:6©†.¥>p#u» `k»ü•_yí¾ð±ë®ÎÍ7øI—÷F%Μ:uø±Þî–øÄ­·~ غ|’ˆA£2Ô[k³ H\šÆ°Ÿ@++£7ýúÛÞñž¿úðGÞú‚g^W«UVueUc‰ÌE4íð Ý»÷ò­cYh"À†Y¡$°w]®c,T€À,Æ’1ÜT¡,KUÇlAjiˆ,‘u®»µ½½´¼k¸­Q¸(Â/¿î?ß|Ó-?üÃ?þ7óÎ:ö·úçÛoð³Ÿùç;n¿ðÀâòò®þì“ûýn§ßÍ“Ì:ã Eá&R1ªÖÖ7››ƒñhíÜÙPgýÙ]B¾Õùò“WO{ѳ^yËgþò{_øìZ€¬÷Pùf@‡Iq%¢»—ö=³gcã0”*R"@:ù‚õªÆÕ:Pƒ¡Úˆ£Dç2Ì€Õ¶Eíuf×Ζ*èoÿ£ÿqë§ÞûÞ÷õûö×~õ7?ñÉÏÝ{ïví¾äºk¯ûí7ÿ¡µ¼°¸¸gÏRš÷;iwמ™nÞaëÏ"(Ëf8®®mn¬mon¿vßWþñwÝyÛm._N:Y5 ŸIȾêÇ^wÛ—>¾<ßccˆT/6€°;=@±£Ù] W=²ZÊ å1µ€xvfωÕÙOmlž k\ˆ•uÎC˜˜4fe¶¢È• !êü̲µéßüõ‡ÞûÞ÷?ëÆo×»Þ!û?ûs¯Z\úÅK/»dnn~q~w¿wk§h[þ¶=~ôºnyqî²K禿óÜú¿Î½á o¹å#·¦³ §L‹Rç÷ßúž?~ë¯)Œ"J³S]£Ø2<Ã1Fç|4uUP+›iËråÅÙ¥{òÔéŸzÕ«z¥¹¹þøÝÿràÀòâroiiÁ6Ûs½~YÇQѨFgsž US1±1 iÙ!Q‚ BƒÈµW.ý·÷¾åGÆoøì¿~UÊZ|º¸¸ï̱ûŽ=ü0€q­m«•¸è^U°Æ…èºö²ËÝxìØ‘C»žH‹ æ--zŸÔU±²ùèîÙë’ÔÕU„Z¢D68 $pÞgiÒO¿¶9xùÿñ½xߟ½ô»_æ,çTU c{´*ÚÌtûÃr5K{)X•5€5ÎX…¨*³5`´‡<Èh\íZH®¸bï=÷Y—ª×é–Uå:‹CY£“BÒÄÒÛ‹i¯cAZvˆ,îÛý”ûøòVLn0ï}.ºurå‘=³W8kêÊÆbnOOTQ‰`¦$I2Ÿ4ªÍÝwß8<†£²¬·@ 7Ë:c²çÖŽ;“Ìtæ²,k[KÞZUˆ™¡P „ :'ïaLà%/zчþúÖNÚ F¨·³ÙŒØ3\Ä<ø¸˜e “Z‰Q„yžîY˜ßÑeDFÄ<íš|ìs·øgÎÁUe·Æ©wu]¥ZUƘáp41[KdέŸÐÈ"ƒ‚*ÖÆXÍ:ãvJ3§MGÖÚ4͈Œ*T`"ƒîs+*PmBa\’8çüÆÖȰ3n1ZŸéšÙ ›¥ä^˜.~¹©(³qQ JL½ý{Ÿ<.š é K”iâûD̶)±ÅÆX“ÆÈDF!€ÐŽ,O™HÉ(¨VŒ’¸2¶fS±-Œ«È”‚aÔqe]06‰j+À4-ÏÉ䙪Òä‹&ê#klhj_ùÊWê:ÝÌX0)š:õ@7eÃTã‹m¬©ªN" j˜[qÚ½W×¥Á$Ž‚Òn¾Èœ £bÃv6 QÄI¯ej0¢F¥R©€Š¨$ªØTÆÔÆÔD•H­‰âäóˆØXðP#€‚,`ÓÊ\U0DÀC=°vîdQ %VU5XØ=ÿ²ÿój@U£Ä<˾ Z‡¶ŸDk …Fœ™Ï’%šêG°½Î2$!’:Œ‰™ÉK`š'wº8˜›Q¢  Ä‘XˆDJÌD& ê*QšgÖù¶m&Ê Ö6M£Õ’‚iÂÔ8_[‹ëëCãSÃbŒÎÌus[ÿÐ>/4Mƒ/º$â| "Q5’‘¦ 4Mæ PU•VlCÝ|^£WDïŒ Dˆ9щš8‚â}M™~‹óÿÀMþGãsfî÷óísGã7Þ”[8Fš•H–¡ñ¢ƒÒ–ϪA%(xë[Ï'%¶*BÌÒÇ–ŠíAÅ´4?» Xl´dSŸŒ¶Gý¬Û㜠MlYººi¼s€ƒŒˆF¢¦}`c “‰%XËy–Ì&~†E`vP¥ mD 4£ñ¦÷n0Ît™“:‚wÝýèý÷=˜÷‹áöê™aofæõ¿üò °Ó¤¥Ĥ©ÎþbƬVnÎD)ÁO F&Uâ4FE±=Ö‡ö=˜ âTc”1›Ð„qUM]7M-Ò¨*“7œ‰Pˆ!„¢"*""¢1P Öpžç3Y:cØ·ˆÔLZ× RĪzÔɳ¢ô;ý¨:5ŽñµûŽýþÛÞgÓYïÝÌÂŒóüÙÏü£´W©NÔt‘àv¢fÒHv¤Ê¡·B!lʲ.úäéçfwÏ]Ó4¾ÐFD|"Q7]ªÞ+5ˆ ÄÅàU âI›˜`T[‘³±L.ñNÖ·&mT<í$k+#1Ö@\«^w®¬Q•M¯“¥|èï¾xâð]Yw±(†ÕxõÕ¯}õõ×/ÈŠ@R¹‹>¸Â­:k2@!€è4÷C¡Q5˵ê¬T«×_{]ñÆö9ÑÆy£[¨‹U±*F"«"%cˆ̆ÈB!%Í ™3½<›Ï³k’ Tgv?[p׿e¸ªÖ¦Öng¦(ôÞ»üÝßzCoö€KÒj¼zíõWÿöo½¦ ÓÎdC tç‚•Ïšˆn[˜Œ5(ŒM]{osçÝ_¹ñ†ÍæsÛãceˆi’0sY Ô«:0º¬JC†™\ƒb =THÕÁ:“§I7Mº†*«‘¸xL¸sja_ˆÙK:¼ª4Ëè5¯ùÀKŒãÑÖþƒ—ü“)ðÎk;¯1=|AKìbrð:9ܤçe¥$Ú¦Gæq­u§ÏmÍÏ]~`ï%u30NÁ*êâõ>K:y§4ÑmâZµ ±1Ö$¢*ÎPbMnmžú®s™a7½i3$Mæ;Z3Á· VXUò”^ûšwÜqÇíýÙ=u5šëwÿà­oZZZPm߬L°K;¬¢¸è=D;‘ÚNÔÊa:= D¬jêvfyô]ó¤o£a 5Þ¡,k‚8›kæ{³'VN‚Ê:”U½•¤†­ ³i&‘·6ËÓ¹Ä÷˜=)ÅHP»34Õ§0µ JI‰Œ%Å0KâèŸ?óÈ}çŸô»ËÒÔLú ¯þ‰W¼â…Î`\6Îhœ“ '.j€ü„ÅÄ^€*±‹*„&Ïw(ÃðÜÚ)gmU–æ¶ë³Nžô>×­—^~!í´i¥E¬DKðy6ßÍæ™2O fjûVÄm@c$(†’ŠÖ-žTÂV iâéê«^þØáSÞûáhë¯xÉÍyGYÁY€T´²“©¨v\?&yñX‡)†pÓ/5D¤JuÓt;ùÌLW©­RCû——ƒŽ––{ÛÕåù®Oš¹ëïW7ëvÉ9U ÌΘÌPÍU¼µy'ŸÍ³žád ëh§ÓL˜‰YAˆ1†(Qcˆ#©"qšxzÎs~øÈ‘£U3lBqÃõ—Ýü‘w”#x‹Áp@Z·º¨ÒµoØdÅä=¨Ô*ª&ÂFà Hˆ£Óg­êµ=ûº{ ‘ÍÙÙæ‘S÷Ýýå{EÌË¿ëœé4"¨Cœ©XF–¤½lpªF¦…‘*hj²¸"J!бlȈÆx<Ãüçÿýï>á—vÒ^Ç}ùž(FQ"êZûݼªÆYš´ècGÕMßc]À©\ðrXÁDb —õÀyM<=òØ£¹knIk9zný$k¦’/ïÚÕ“Ÿ™¤óƒ±ÖEBÁ)%ZU6Y–fI 8´j‚{.˜%™Ì'(b2mµ<™© AϧOÿôOßöìñ¹¹¥~Ï9ò/MUÑér›ýŒq“6ñÄTÚbÿ2üb6YŸ¨^ÎöM+Go`v/îmäÊÃG¿râø}3Ë[³s¾)}æí½r¡{‰4ÝÁæØ w®CDu]i’øN6ËþñèÙ7Þøþ¿|GaAl«ª¢4ËB#Iê%*ŸŸ­˜ŒR @ 3Ï}¼æAu:+¥OcÿÓÚiC:л0-ç`ã#ºQlÇ¥OÚ¿ ‡d{´vâÔÉå¥ÙF˜Y'ˆ¬7í1>7¦G*˜yR³¡CÎȪ€&ÝA"Ä`Xmn„Ï~úÎ~ðÀ<ïù/ú“÷¾å²KfŠjç4Jô© !H0Æ>ah§= JA­þM¾ˆqªRšú·N!ùC-^–§ƒÚæSál”dj6"ÑíšRƒY–jºãþ¿+ÃéÅÙC›2ÜÉ”"ã&Œ5™_2´¸PUíMŽŒd5Q­ˆ¸iUŠQ!bÐ`LdA&TMùš_øõí­êÛžý‚·¿ýMW]9?(ŠÔ‡*”YÞUe"¨–Ä•õd ©B•T5ÄF5´¥¸PU‡aCKôDÑ!ª¢P[‡n®ÐÎTÆŽiwüÝ´';©¤tŠ(¨!jØjJ’5L=Õmåͯ>üÉÇ]ú´Q±MÈ™bŒÛÆEØPjiÒETcxRF;hµ-*&†ª%KÌm\¯ R"K êï{ÙOŸÙÃ;¼¹uÎt›tyéJ ‹2P*U Qâ É©äœ ™'åët¼›‚ ©Bt€kÔD`Tà/?úñ—uôðÑÁöhff¡Ûí|ïK¿çç~öUûvó¨ªCŒÖŽX cªasæðÑ{W×U®4c²ùÙ½÷=i.[ÝHòºbbÔ¦ù´S‡2ëÌüÙû@5<ÈŽ ÕÖÞͬom<ÿ…O}ÖÓ/WÅ[ÞögúÛ›6΋á8ïÏ]zÙÁŸøñ÷#?òb²^•¼Ó!"{[íÐ-±í.£ý7AšÄh9 ³OVM‚œ%nT=SG%*"UÀy«Zcg£Ú´V›`^‘þ®=õãõú»6ÅÕ×|÷ÚéãÜŸI|BºzæŒIº÷~ùOþü}7ÿäOüàþŸ"*W+»íäéû„Æ>7ÌUqSÕ§×^Û¸7Iòg\wј8Á’V(” L\^Øõ]7¾ÆÑS¡š6LJa¬*ôÿÔ÷?ém¿¸wñ—åÎvÒtÎw—?yvý¡ÏÜúÓ¯ÿO{ß÷þÿúÝ/¾aÜ($ÎTuu>¦Bù|˜ÁdDW$†•t¶Ù’HŒ‘fº¢ø&nkKš©xU0+¼³  ­ðR nµÓÑõÁö é/Á.=òØÉåþSÖÎŒÑÝ+Ò+6BS¸ÎÒRuTf77õ]ïzß»ßóAÇ~XyàÑ9zò¶q}Ÿõg×Î=¶98YÇ3äVmº¦öLÎY¹¯ªG1Ʀ -ÉÁ,E9\Xš†lºÖÏ;«Hò™Ðdß¾§\rÉKÁ3ÀL,“í-9süŒÍç«ÆÁôÏ®~òU¯}÷ŸÝì iÚ´‰é‚5\Pìl¯š<ñúúª³ <›ñX ‘‚ŒˆÀ§Òn©Tˆ2¹AAb1ý$iUqùOþ»W.ú6DGÔ%ê»…K)Û5Ú”læ@ÒÝSŽh{³x÷»Þ}û—ÿùÔÊC‡ÝAöìòžÈ~sy÷b¯ß³^ÈT B1Ž::sæ޽"X"«ª0amý,Ïôæ­K|Ò‘À£Q¤Î¾·þÞ»ëÂu¡=›ïŽ!Mg*—ö’¹]Ö÷ΞÙ|ûÛÞó¥;ïï8b‚÷–ÏóÖYÏdf–4QõD`VF=®N‘jèÌuŸ P4#2l*ðˆ¸QH½5Ýú·±ªE-B 8h{¢ƒïÍ ³íïÝÞ:•$ÜuŽCÐaq2ãñFDôgÓnÿá¿ò±üëQu,Í¥q££ª.†ƒQ]V#¤gt/ë<ÔÕaèSb—ƒRQKˆÅl·?àîæhcs¸Z Ã͘4õi1llÒMšjk´vR©nª­PUQWãGê=rÿ±ÿ÷=Zß³Bâ„3#œ—´€´mçZ€‰P×Íi¡õrÔÙµðÔ€² ¥Á‚ŠS5²J¶@Öô{eÕŒ4gÃlFÀ‰t–º®!šur¢²ŸªÊÓƒsGâpÅ6ÃŽï¼xPŪŽ‰–'GåcÞ7ÞÛm¶Ö3 BbáŽyzj®°XPŠA‹&D2®QYÁ¨‹ØMz1£ã"³ ±®Ê­,MXŽÎ<û9W<û…×YÞ’f-ñBÎdùŒT†ýB2{è/þüCw~éÁvÝ… /àµ%ËH@£5ˆÒXgbcgú» Q5Æ `€ í÷–7kmÚú¿"¶ÍÇiqÏ;}²Vë¨Õ(j•fþM¿ù†^Þ?òèÚ>xÓ°l¬uuÁ@¥¸÷àâ¡Kç+‚–ªªb¬!FU•aaá²ý‹/î§×DŒšÃÿÄÖðˆO|âMÁp.¢Q%€'»A[¦ÉÒ 2^ÿÐ?¼ýªk®ij:òècÿϾf»'½…8®ÐDdyS zÛ¾úüç^›fÎ~úhÚnÅ™b‰Píù™¨h£Pg¼KRÃÞP–¸9K½Vê9½ˆ^Ð:/bÐXú†D¶Î~æî[®zÒÕ39šjëw¾óï¢ÒÔ'I]Tdë—]º$tLQ+¢C1 »ÝÝ—î~îB÷FÂ^ ì¢_ËÊ}œ1nd½kšÀ<‚²)õüÚ‚É–AÑh ÕöÆ­Ÿþ«¾ðš¶‰ö´«v÷nþ›W¾òßÖN÷v]Z+KYZ›܇oºùU¯úž]~¿¥.ð0š¶- ®i`Lfá¢4"5¼ïtÓ…^²ÔñK†{DÉ”>lkPÑ ËÐIçY¬w Xo®}ÿþè³o¸ZQu ^ú=/>pÉ~UÁ¨0Æ“%­¶ç—ìÒî¤k ŠHUؘ¤iÊÄÍÏv¯'Ù«~¬ç{÷ôŸÞÍö2‘¢Pfr «ô„úWT+F•vÍ·=ûB²ˆ§Î–ßùâËÓœ’™|°½É*^›vïýÊÝÃaÁü –kîô*‰ÙÙà$éÔfû»FQ+"bò†:L]¢Œ4i¥§:¡Ðäö;‰)l®õ³¨þ·—¾$i‚Pc4Â¥—È36Ö‚¹ØÜNÓ4æ]­Ã™€Dg(K|‡eÎâÐck ¥:†ö¥vo]Q]E€aBÌ+O¶uN™(c´Þ:ý/~. ÍM쥼w9-k¼do±½.ˆ0]·x£E鉯ºp“‹Nå,@–÷%Úå¥ý B¥U‚#¤@*’NK;ûå¨íëã‰3ÕØÌ_r°Ü^†O{êµ­ÊO¨Ó™Je ®ßÇpXتµAtÄ,D¨$–g æU(Œ.°+5—j˜‰Á[뢌ÀãIË “ ÒÝnh®¼üP'Ãp°*UÕÖúÚFêqÕ—a¦ßÕ; »Â¨$¶@¶=D|¼ÖkÚgì˜+FXaßÕàgz»B­Y¢DÕ·ËLéñêýr"¶ë'OqÞCwiåÔ± ±×Í$*€¢qb¡©"²QïÀ¼uæ4%²*ô:‰1Küü €Pפ± Ub1ø^—‰7 qsÒã÷·LyLKPÀ%®önÖP6²,5ƨ0Á‡† ç×4MXkeC®=Ò²£jÕ—IR׆«ÞÛ”˜´aŠò<‘º`"45’d<*‘ô9z¨KÓnÓ„àœk÷/K¬€†8M5&­ass™‰LUÕ¼BüçFá:] ñÈ‘#ê*lUðØ‘Ç\Þ¯›eðŽU0\^îá<‚¢7Là¸NUty6«âS;$Ä&4µŠ Z½Ýã–UO…{Ùã…|v»…{B–Q+¬Úù©N—!q„p°ùÖ¨Y95ˆ+ ™™™‹±TàBhC±’dTl+áÒÙ*®4²í0sYŠ5ùt´ÐN‡B96Ú™[ú§ú,—vC0Æd-Éwô±•Á¾ªJ1V1”€O|Û¸y¢í鼨´+RˆpÇÌBR‡^c˜›ÐdŒˆùx@;Û†¦ ÷…𡵆¶¸„i‡¡¼€Üygj!Ù£ž=}b”§{Hó´ª âÊú0(ݸX#ŒAC¦µ³›wªÃQ·Am*`kÚØaú¶ÚË“tƛ㼻ôá›>cˆ#<±cƒ}øKuã…¼ Dz4Ý4jc=;—Y†¡Çëñë‰ &Mdt2ß'JÇEÃlcŒÆXkÜteàt_ûãôüu­ZÒ–[cµíÄó6jÓÖyGs¤#‡·N;Zêv–ë*$)³‘(M#gùôÚè®@'œ_]Üóð‘ÏÂnxo›ZU‰™UwÜö‚[RÎ;ó6™- ~Ý/ÿáþêãÔÆ?ÝúÈ›Þø»ãÚx?6h¥È›P¾ø%/è÷»Î²ý†©ðü¸H† à好ƤÃQ`ã€*MçÜù•UD 0)§'©z§N$ÄÖýmÑ9y:oÊNžZkfš‘¿ïž“7Üögò‹4su]2¹N·Š{î¹ÍÒ.k°¶uÄøµ™yG4W‚Ç&„ çjÀvûÔJ:;g"?rø ÿé­¿÷{ïÔ†ÖÖÊõ&4𠉲"Ñh)ÄâÔÿØ›ççg¡òïˆ!hª ”cÐýY›@Űe¶ÞgU·– ÓE_üuÖ?/2"%%}\–Ô) Rs^‡¤š@»G]­««›:((Æ:„¨¡kmcÒ•z<ŒºVéÏSÇ„ÙPu)2ÙQ!ÛZcÍv´Àˆ4ðŠÇ¥.çw=ykpjåÌZ··k{-ìÛwùés›u)0 ›XêÁxÿe×<å)—#Ö5«ÆV"pÁSMŸ–&³h~qæR¦„Ù&L™¡¤µ¦N–—sÛ”VJ-T§—‹@ìmÛDx²?³µ©Ó‰ÈÉ@‰„ !å!ÌìZ¼Áò²13ÒØ4é¤iRÖƒ¨£´S罪‰k6©œsEÑ …™ƒ÷Àd® Í †ÖŽK ûv¯Ÿ9QV’uG£ªÛ_Z9u&Mûd,!Œb=@qîWõ§¯½ö h‹¡j(ŠÑŽŒ­UÑLZÌÎYb,Z\Z–°Æ¼wñjÕDâT½7™ve)í¨ ªil”iFÀ†§Æ#$*™¬c ŠPÔ55M EâRk( ¶z³^Õk+ RŒº‹ÝgÏtoX?ãzÙ¥¡2œK36˜‹M2Îæua fœËó.ƒªÔq_C”mÛÓD‘¢f@¸cœ†G^úòo£A½=vƇ#›ï®kF<[ºyêç_÷Ó¯ú©PÖy›g9 ֙ǡ‡ó«Q'ƒk-·e­ˆÄ¹¹]Q)q¦ D‚ZkFƒ²Ûͳ,SU‘Ȭu-9€|*Æpl6ëè¬MÇãñÌÜL1e™áSar ŒÇÛMØçŽI4³s{±*H5/êÎuW¿ÐûæÄé;"ú6óƒQâ™SKÎpÒTxÎ Ï?rúÈÉ“'šºô‰A¶··œ÷UÒÈX#&ÐÂP¤j¨vû–¿ÿý§<åáµÕÑêÙµÎÂÑÚÛIAuñÿww=/rTAø«ª×?¦ggvv7»‰°‚,zrPÉIBž‚wÿÁ‹/žÄÿC< ‚7ÿœÕˆÆý5™™î~ïUyxÓ³=»IXYEعÌ0ôÐ=õêQ¯ª¾ï«ùÎÈ}øà£Ï?ûT`,¨Ñù—ô§zpÒ.0%¨­šZyáœä€ªæ¶ f<WÞGÇlf!¶âìiôîÝ7}Û˜då Ú¡mêçoÝym·X]/„µ(†£±Ü¿ÿÁ½{Ç$EP)³Q]/blvvÛÛ7yýö»¯îß~øð')þ¤pCF®‘w¶nÞÚÛÛØ,výäNÔ¶(ƒ¼Ÿs¥Z ñIbËOŸííß:úó?úöëo¾ûáûf‹ZòmmïÝV>ùøý÷ÞF*ë¼ rbK€÷¾(çUd»cª2s”SU/Ì­ªV•OòkÌ!DŽ1êœ4mÃä\–¿H ĸȘš&–ÅÆ‹øòs`–¹9ô$Q4§ói:íäTÕ¾É]£fÎ-A)ìz›ÍêÉVõª;.WeE;ÿ]ðs=û­ÈøåÉütö×pà'[»ã='ÓÙxc[Ÿˆ{ÆTºwé4àÖUQi•NQKÈ”…3W&I•,“TùrNºî¡¨’“œ˜Í,±êLAâ”ÏÂ0Õ–²(–劕…c4bŠÑ°¤ð)Ë€P(†j¬7«¤wΑ¶j BËÈ ªfB7 Ȉƒ¹8ÒœŒÃ¢ŒSmÔ³ä·÷+¡jɵµðæhhÁ˜ ’1•M«îLÀžC8뾤ž£1ÀÌBÄ"« ,mW"‘³¹DĦ“ÉÑ•YbÉ\ZޤŽëø @§øa.Oq“8³¥I¸pÅ`Õl‰‰Fdª0PÓÔ@F”AÔ"1Üìè´,ÇÐSL¡õ‡¾Žãá+ 1‘pÊ\ bT…sê.úÑÚi‹Î}^–`Þ?å´=Àʦ+tk·“/˜œÎ8¹dÖIÛ¹ûÚ±¯ƒmwiÒª´šâa¦)ï!œ)¬1˜ªédk÷ôð×$û LDVdã¤Z³ržz)^f,=Þöeé+ìHϳ/­]tÁäçV†z,J:Ϩ¤µ÷>Ë` MßÁg D4=>>:< ^Uá2ž9)37r<$pÝÔ“Íí`D.‹­A9N»áâŸ¥Þø©ÿgèÖñ¢^³e2™<~ô8´ Ç Ægê½mÈ„ëùilëŠÆXˆ)ëÜ™^êt}Œ…>jxãà È˶™ ¹Ó"wŽÚä¥7–¢±±Á]Šñs •œkçÆ¶)—e(ðÔûCïT<‰/ríØÛq§fv9«»–Æ"¢étê\eêšé˜…ú ê Ø¬ à0^*'ôBùe%¡ˆ®›Å2ŠœeÅ—_|5ÚÙ2IZšÁD&`T-2IL„çc(IЕ™Ÿv èõ§|ÉÂýƒ›x„„¤dä`@Ûi(1`˜.¾Ì¶}¬óBî@í ìÅÅÅX°`,XðXköÇà===8}ú4êêê0<<<®«H$¢E‹PUU…‚‚‚Àdzܸqû÷ïGssóc©Í¦NŠêêjÌž= ðñ"øüóÏÑÒÒ’ ¥233±víZ,]ºr¹<ðxš¦Q__ýû÷ãÎ; T³Hrr2^xá¬X±B¡0ðx‘ææfìÞ½ sÜÜ\lݺeee €Ç²ŒŒŒ`÷îÝ8wî\´ÜI•HäJºþ* ÈŠM;@S€r€¦)€r€²™à0Âae3EíüÍž=[¶lW¤qpš¦Q[[‹½{÷Âh4FÆ;¡Ð@¢J‡ØõÊ€X©…@\. í°¹Àî0 Ã:ò¶‘°"ó»D"¬Y³6l@RRRàÑ–ÎÎN¼÷Þ{hmm ï…OÒ@–VYZdÚ|ÄÒˆþNÊf†m¤ÖáØFºaêMÙÃöÿ4 þîïþ3gÎL<âp8°oß>:t(,P Yzá¨Ó RÄV°„vØ`é»SïmXúï‚vØÂÀ¸X»v-^zé%H$’À#%CCCxë­·pûöíï[’’ƒ¤ egM…PÙ{4e‡¥ï.̽·aî¿Ún éþóòò°mÛ6äææ& ÉöíÛ1:::ú!SA‘SENÄJm|Û#v+Œ=M0t\…ú(­D"Á¦M›°fÍš¸ Å ÀišÆçŸŽÏ?ÿ¡:d±* ªÂ…PdMÆ[d¦aîkƒ¡ã ¬C]!Ûmyy9¶mÛ•J•x¨dtt;vì@SSSh´QòP-„„¡ý2Lo…dÙÙÙøùÏŽ'žx"ð`åÁƒxã7Ðßß<°ÕYcÀ~¢£ØF`ôv-¬ÃÁç·«Õjüìg?CQQQàJGGÞxã ù¶P"GrÉ2$M˜‰„¦‡7¡k9 ‡9¸ó*“Éðú믣¢¢"p¾ÒÒÒ‚ßþö·An9Ó¡.Y¡4)lÏ‹¡ý ô÷.vîu …xõÕW±bÅŠÀ¹Jcc#Þ|óMX,–À H¥)SWCªÍK Ù‡8Ì: 7u°#¨ý<÷Üsxá…÷'—.]ÂŽ;`·¥S.€jÒâ Ãæ!’EýÝó°t‚¦¿ÿmM”y³!QG/Dß~ ºÖ:€¦ÞGMM ^|ñÅÀ½É¹sçðöÛoìJÐÌXYz >4CÇUèîœóK¤š PæÏšwÇ6ڋᦃ°ÞÇæÍ›ñôÓO'î)ÍÍÍøÍo~pØ]’’ÔòˆäêØÁ¶Ã†Á«ŸñöZÈÒ ‘:³&âù.Îc½] cWCÀûøñŒåË—'î”û÷ïãW¿úL¦ÀRE•y³‘\²<¦( 7†©çz`6„* ÚŠ)R¢ãiyp#׿Kíå *¯¿þ:æÏŸŸøàà þã?þƒƒü‹¡)eÕc‘ÈSO3†›‡êêj,Z´v»½½½èîîÆ™3gX¿Pš„ÔY ÕäDå7X;1øÝ íü}±XŒù—‰z6bTn2™ð«_ý ÷ïßçà" Rg=YZAÌÛn@ÿÅ~IIIøío ­öû\‹Å½^Š¢ÐØØˆ}ûöadd„¸‰ÕSVB¢™‘, B©2²¿E߇Áú}p˜u¼·•Édø÷ÿwLž<ùñ¸ÃáÀo~ó›€*Ü…9R+6FM³ù“˼ûg?ûfÍšõ½v´Z¡×ëõðð0vî܉®.ï¹#Rm”¹³Ç¢±ÊŸq˜u¬ß»¾÷¶iiixã7¢–»µJÓ>ø 0pË”H«Ü³à¶ và^ºt)£ÞÑl6C§ÓÞ"FƒŸþô§>k#­ƒjØGuïÀØÝ‘ß$’'#}ÞfHSù§Ë `ÇŽˆQˆ À/_¾ŒÚÚZþ'Z‘‚ôy/C¬Ê@¬ŠþîÆçÌÌL¼ôÒK‹Å.Zb0¼kh©û·ë×@s˜u¹þ5Fn~D<± ÚÙÏC’’Í{Û††8pàñøàà Þ}÷]þ*U"mîK1WYÃЮÃݰ2+ù«ªª\g‡ÃáÜî^ˆÍ›7cÊÿþpãýk¼öç ÂíÜí)´³_€X•Î{Û}ûöáÆãà4Mãí·ß†^¯çmPjg?5—wí}žñ9## .„H$MÓ¬´Äë… ñÚk¯!;Û¿Æ´ôßÅÀå=pXôáŒDŽ´9?à­h(ŠÂÿþïÿF¼U^D~ðàAþw±@€Ôòš¨†±¹ˆM×Kÿ=Ʋ5kÖ@©Tº¨ ß –B¡ÀßÿýßC­V³ÞÌÿÿƒWÿòr5v;H…´¹/B$ãg8ŽŒŒ`ûöíåãøÝ»wñ§?ý‰÷v)SWÇVèÝ‹˜z˜Å©©©X²d‰ ˆÞ‚X4MÃ`0À`0Àf# ‡SSSñ“Ÿü„(ú¥iš˜ø`×÷a¨aPù$|ì!íœ!àY·zãÆ œ8qb|Üb±`ûöí¼5˜ªp’&–Ç<¸AÓ0=¼ÉX´xñbWß?‹ÅŠbÑh„ÍfƒÝn‡Ñh„Á` ÖÍËËÖ-[µ4MÃáp¸ž®s=Ð>fxF@Ī4h¦WñÞî“O>!üýq ðýû÷ãáǼ¶‘¥!¹ø)ăXÚAY #qþüùJ¥>µ·Õjehm@Š¢`2™e0{ölTU1Áä¼)œÿÇuÓt5@ïRD~»<³ʼ9¼¶1صk×øx__Ž9ÂÛc¢)«F¼ˆ©‡éÏ/**rµ?³Z­¬O.Š¢\Å€ñrj}ϔ᪪*Ì;— *V«•à亶30÷µEä÷«§,çí><þ|Èjl£ ð={ö°rK_¢)«Š› Ún…ù³«Vee¥‹{ÓÞÞÀíNCl6AW¶nÝŠE‹±Þ0ž´i¸ñP@ÑGÞ""µ¼B ¿VÌï¿ÿ>olÄÀoß¾K—ø=*•y³ã¨tй¯ÑBM$¡²²b±ØÅ­ Ë_–³Úô6›áu …Ø´iAWXo>‡WöÀÒþöÑ"¹š²u¼¶éííÅþýûãà4MóæYbU:’K–!žÄ2ÐÎøàU­­­EMM RRRbàß~û-=zÄýñ”œŸ§hŠÈœ6mÄb1hšf¸Ãáàl>Ü'/V«1kÖ,Ìš5 4M£££ß}÷¾ûî; 3úÏP=®ìDeÞlÈ3§@ âß\¬Jƒ2. í—¹Ù2V+>ŒÍ›7ǶåðáÃü´÷”qÙÙÕ:ÜÍ(I(++s¹öØÄݸä ìPO? …(,,Ć ð‹_ü555HMM%n"ÛèC 7Aïé¹y”•‡1UÁ<^7Ç7ß|N»¿sç¯Y”òŒÉióâIOòó󑜜ì“SþMx8n“””„•+Wâ§?ý)¦OŸÎºm·Âx¿}çÞ…ñþ5^ÅBi¯\"‹Å‚S§NÅ.Àù†äUE ¯â ð)S¦øäßN£Ž°áÞ‰R©2™ R©‰„±w÷¡ógeeá'?ù JKK½î›²™1ró \Ù ŠG•½²`/£õôéÓ± ð\¾|™óúRÍ„€ÊŸbA(›¶QfòXyy9D"ÃCáM{sÑØ|5·X,†P(dl/‰ ‹!—Ë!“É ‰XNWÝücLœ8Ñ5ëÂPýŸ8ÏÉTPð°±zzzÐÖÖ{?uê¯tXeþܸÕÞÖÁNÆ£Z&“¹úd{ãßîþgTĨœ@$>t¶uœ@÷Fk¤R)Ö®]ËÁþèÁÐwŸs¦+ªÂù€€;ÔΜ9{磽EŠÈŸ(‰_zâщµ¸¸ØgôÒ pü:Þ- ]7„¯ý9_R©”ï»ß€3fÌp¥¸{‡È¼ó»¾ãv½åj(²¹7g:þ|È’°Bððjޣ̛×3ql#=ŒÏ%%%J¥ (ÊgW\.QK¾¼›m}7‰'U¡iE¦i…BLÊ£D"Á³Ï> …BÁXnè¬ç|œI938¯k4ñí·ßÆÀùhoXדhÊ›®Ðp¾ÜƒžÜà7_¯ ò á³=…4 V¯^ÍXf7 pî+.Õæñ*M‰8À™Sâ2j麨º>FtN(ºæGr}¬†Âc⩽ٞlâp8O§övƇƒpõ¦§µ‰˜8q"£õ^ƒ­9Ó9¯ÛÔÔ’±ìA¼¯¯÷îÝã¼~¼O6³Ž<`|ÎÉÉ\.wUÖðu 6íí äžë˜Íf¯àÆz´{[&L˜àz_XXÈôñ%ñH¥¥( ׯ_>Àù4Å2Hã4°ãâߣL€Oš4 ‰F£Ñg;„PyLüÑ_ûr¯r·ó¸­V+Ž=ÊØ&77×Àò¼AÆ ÈdÎ ¯öo¡(i à|ŒÙ“c®‡7“éÿž³eù‰)HÊ lÂ1€Û‘6(€óIŠ‘¦äÄ5ÀGoצëe,‹ôœvϼ·›Åf³A§ÓùÍ jooÇŸÿügæu’JQUUŨeËÓNž´$à'²T›Çy[NTGÚ€><<Œþþ~nšG(†8ù‰¸·éÁ±\h7ÉÊÊByyyÔîíe±Xüº,àáÇعs'q¬ZµŠQ6võêUtttx4Ÿ—7„ÀƒH …çk¤KØÎ‡žHÔ™qË¿íú~ŒÜ8Jh¹×^{5ý4Üàö&EÁ`0p>88ˆ;v}ÚçÌ™Ãätuuq‘L…Ô™ÏKħ¶'÷ç#×dòI®’hⓞÐv+†ö¹Ï›7ovõŒ¶övrd®i£££¬èóòò^“þþ~|õÕWÌ'@MyMHÚêñ™Œà|ü“Ò” q ðáë_c­Ÿzê)Ì™3'âÇÂæ­±Ùl~Hw1ؾ};A-³³³QUUåºa†‡‡ñå—_©ê’ejBs-%ã àb¥6þxwÏu˜{o3–åççcÆ Ñyšü%ÑÙ‹o¯u£Ñˆ·ß~0S 222ðôÓO»ŒJN‡MCÙÓBZ¤"V¥€ÇÒüx.â°è1zë8c™R©Œ8ïöÔÖÁ8ØÀššŠgžyÆUa4qàÀ‚›ËÒ CÞÎZ ’B¤HÃ俾Á`Àðð0Qˆ6#“¦iΣ·…yܥǎ4EÖ¾òÊ+ai-nyôèÞ|óMÜÉÉÉX¿~½«ˆÁ`0àÀÄä©f"Rg=Ç«ä,<Hœ× ´!P@çÓÏ9TK#å5ñ¨úòË/{­DUihhÀ‡~H$Âeggcݺu®ßÓÕÕ…#GŽü^¬Jƒv΋aŸ²!à1"¢ÜWå q—òœ¥-1t^%z .Y²„Ó´áX’óçÏãÓO?%z³`Íš5.oI[[Ž?NPM©&©y# HƒKcTƒsM‘ ííÆ!èZNògŸ}6®À}ìØ1nN7Å(À233¹Ñ^‡ ÓpÔO¦¡Ùß#++ Ó§O罟††ÔÖ2y|jj*rss‰jõêêê€ÇN"Z;¸'M9¥«« ½½Ì7^ærÕà"‘(`#=à8º¿yŠ m¤ïꉴöÂ2ÀìδjÕ*ÞÚ»¿¿»wï&¬ûÕ«W£¾žéWÏÎÎFeee`7£Á@´2.,,dídëɽÅIZ(â M5í°qž¡Õjo5 €Û£ p½‡öÖh4¼=4McïÞ½DØ{Ù²eèíí%ŠuŸy晀/Êþýûá~@€… I­ÜÛÛK´TP-ˆ‹ vžt1ô䱸Ã4Lô7Y¾|9oêpáÂb8ÓôéÓ1iÒ$\¹r…ж3f–ÄÔÖÖ†‹/2–M:•õíɽEŠ” zFàÃ=œ×ÍÈȈu€÷EíDêÛ¯0&ò* Þ†ßðð0öïßÏX–’’‚%K– ±±‘0.Ÿy晀ŽÕn·cïÞ½Œer¹œÕÍØßßööv¦ö.˜Ñ‚…`Ä:̽ß`0]|>ÙÙÙœµ MßOô‰„PV#LÝÌÿ'Ÿ|’w:ì§Ÿ~Jd®X±f³™Ð¢S§NEqq`•cÇŽÁšE‹XÙ¸÷ØLøˆñœVçK=ŸA\$qo@IÓDAoD<'WÙŒb±K—.嵫W¯¢¹¹™ &999¨««cT¤ ‚€µwoo/Ž;ÆX–““CLv>QîÜa¦( æÅM_‡i”…[¥L&ã=h $çûè° ´GÜJ÷ìé=oÞ<¨ÕÜÛXèõzìÛ·IT*,Z´÷îÝ#|á‹/v …åkÀ~òÉ'Œ<{‘H„eË–±®___ψ  % $M,G¼ˆu„;ÿ.,, ª]^P/+ã>ØÓa€»›i+W®äµ}ûöÑÊeË–A £¦ÕjuÀ‰.\ ¦eTTT°–:·oßöÐÞ•1•%è <žæÁГ ÎÇS`7qj´*1õ0¹÷Ì™3#ñüIss3ÁsKJJŸŸK—.ÀþùçY¹²?" X_n̺º:FƒP,ƒ2wvÜ€4 ó£Öø¸F£áõHŽM±ë`í%4/ç›Ãd§Ÿ~ÊX¦P(ðä“O¢¯¯¨`Ÿ6mfÏæ2Š¢ðá‡ìÒ¥KYËÄØô¤¼9qÕÜÔ:ÔÉküwTÎW‹›ûÚ"rM˜3εZ-k‡7Ù¿?&wz_N:Åà¿R©?øÁ:Î#GŽ<~Ú´i¬.X‡Ãºº:æÅ“)¡*˜‡xSo çusssó‚bà–þ» ,†œY€0wî\ÎQÅ––¢æ±  ÅÅÅhjj"Üxk×® (•³µµ•ðšh4,Y²„uýk×®ÑRuɲøjMMÓ0ó¸ç Ú¨¼´´”{A(MÚ5ôÀûD×”X›Í†½{÷zÙ²e0 D„1''‡·áêôÎüñ$rÉW¯^Íz.u:aHSs¡ÈžŽxëp¯ô阸L&s5˜áäÝèi ëI4õ\'s\3Oœ8Ad.^¼J¥gΜ!|Þ/½ô¯Nùøã m¼páB¯!é³gÏ2óÌB¤L]…x“Ç ]_2a„´ÙI\×ÛcÕ«È#ŠÅë HÙaòÈ;᪽‡††ˆ ¾ &`Ú´ihoogõy»Üã*§N"Gùùù^gnvvvÿ[™7;拈kc·òzzRˆ6€Ï›7¨2‰†·ôÝí–  9ODÛ¿?£-´P(ÄSO=›Í2ŸwWW8Àô‚$%y¥9v»Õ°Lž´ñ&ÆîÐvîm§ºà²IDAT·-ó Àe2¯2=¸Éb¸èIii)§úѶ¶6"Ÿ»¬¬ Z­gΜ!:›âó¶X,øàƒˆ’¶U«VyÝWmm-áÍQ—,»™G i¢/ÉÎÎ("6€có#¹?®,¼~0§}:l0{t‰åò˜£(ŠÇK¥RÌ›7wïÞÅ­[Lވϛ¢(¼ÿþû„¦¢¢Âë…¬¯¯'¦I–ñ7+Èü¨•W-÷=ê/--ålÌ€¡ã 1.$Xï‰{3©TÊÉ…yîÜ9bTô‚ àp8ˆ~Û …›6mâ}lûöí#z§<ñÄ^Ÿz„ÇF(Q„|”_¤ÄÐq…óºb±«V­Š=€óÕâ”Í CçµÐño(éäÉ“ýV³F:tˆ±L"‘ ¬¬ µµµDõ΋/¾È»AÐÉ“' -—˱fÍVÌÈÈŽ;æ1B[Mùú˜i¹ÆGl#xå~/\¸0à&Laø“O>ÉËm6¦Åm!8³æ’ËlC‡퇋‹‹qãÆ tt0÷7gÎÞ#¼ñÅ_0–‰D"TWW³f5:+é={ªK–A¦ÍG<Š®õ ¯õ«ªªBúÿC ðôôt^Õ2”ÕcWCÐÿ—²ˆª!ïîîÆ¹sçˆåyyyÄrFÃ;ÿþ}"˜Œµ‰s¶7ö”ãÇ}¼ÇFhWÆ%¸Í}m° vp^êÔ©®¾æ1 pxöÙgyÛêï] ºû•§öV©T¬螼سµ°D"Áµk׈€Î–-[”Ä}¤ÞÐÐÞyçbÝüùó½&]¹r…ðwK’3‘2}m\‚4Ý퓼6©®½r€gggó²‚)«ºÖÓÁ˜Z¢¤¤ÄçMV__Oä_;o Ï#O=õ¯Q‚f³ï¼óѼ´´Ôk ì;wˆÁPB‰©³ž‹‹)u¬ô³ó*ìÆ!Îëgff”‘q€¢Å] ¼ ‘`ø·Åb!x±S<}ÎYYY¼æõ8Ýží‹'L˜€åË—{·gÒ¤–¯«!ºL‚ ú;çysoAÚ]„àôü¹qŒáæã*vã‘\å àGŽ!€ìzªz$?½òÊ+œÉhšÆž={póæM¦¨V£ªªŠÕøniiÁÑ£G ª¤.Yiœ• k;Ë«È<33+V¬˱„­Ç_-n×÷AÏÃ_úývý„Aè-}µ§§§Nâ¬Q¸FÓhšÆÇŒK—˜ †Äb±×¡V7oÞÄñãÇ #4)w6”ùsãÜÖÁ»¾ãµÍ–-[îÿ5€çççóÖâú;çy—µ9AØÆÿ©K–AU´(®Ám7 £aüIRR^xá…°[Ø. ñÚk¯ñv _?Bhgi查££ƒÐšòŒÉ°0''Èd2¼üòËþy&Eá£>"n:¥²²’(”½páëúêÒUPÆYÑ0­n<È;åbÆ ¼š0Å,À±Ä'¾n ÚnÅP߃dV#aи'ê áÝwßes±  ‰ÚÀ 6øm²nµZñþûïýÝÝ]žÁгgϹæcc´×@™7ñnC_¦{Äk³ÒÒÒçœDàðÒK/ñ¾cmº^ 7òj• Ed¶ 3Ðd2áwÞ!|Þ²´‚þ”––²NOp—¡¡!¼ùæ›hh`Ïq¦yº§§OŸ&× ™^W­Ö¼•7¿!F2r¡&Û¶m KP'ªW*•ø‡øÞ?ÌÜÛ‚‘_³~'K‰†“z½‡ï½÷Q”jó`eR¹\ŽÍ›7û<†{÷îáw¿ûÑlÞ]ÜÓûì3Ü" Rg??.Àm~ÔŠ¡kæˆÆòz¶mÛÆ+è·Æ^ýõ€ú>Þ:ýÝïýÉÊü9^‡.Ñ‚ç I΀¡ƒéùHKKcíErñâEüú׿Æõë×Y8?3§$''%%%¸té>Lä Å2hg¿·Õ8 ZÒsý/^-ïm_~ùeLž¹QèRRRP/èÚê0rã(@Ó+Ó2m-1›F¬JGZå&ÈÒòá0Q¶åË—3 Þþþ~lß¾ü1ùŠ4±œhuQRR‚/¿ü’Õm(Ve mÁ+¦NŒ{p:ë1Ü|8 lϪª*¬]½¢¨fÓWWWãÁƒœ¨axv5ÀaÑ#uæz$M˜©&g¬¹§Ý‰: òô"èͽ-Ä *§±ãp8púôiV Œ5ÚÑÎzn,‰ÈƒjÕÕÕ1¦2¸öŸUŠ”éUqÕ”Þ«·äîèÚêÚvÞ¼yزeKT?êå"¯¾ú*ŒF#kÛ¯ÁÓwß~mÅó+Ó V²»ŸìFfã¬Y³ðèÑ#\ºt W¯^%šÙ»€š3ê)+@YMDu MÓ$¸¨‹—AYP÷À¦);Fo¸f¶¤¤$¢þn¯6MóÈm “8üþ÷¿÷DñkÄ(4HUI2{_–áÆƒ0=üÞm'‘Hu—Äþäj¤L[Yz¡Ës0xõ3?Ç †fz5¤Ú¼¸·Ý8„ᆼ#”NÉÎÎÆþçB¥REý·ÄÄPE‘H„ú§BIII`7ˆi—vÃÐ~™õ{‰š |_àNʌůºÀ ŒÇöª!„"¨Š"cñƸͽ·Ññƒ[­Vãç?ÿyL€;f4¸‹Wø¯ÿú/tv>rP¦ÍGÊŒuɾ?Á”Å€¾ ø!ÓæC5y ¤ö–½ú;ç¡»ÃLÚ’¥A]ºâ¤Ôq@Iеœ"ܰ|ÁýË_þ’wöècp`¬ð÷¿ÿû¿ñàAà-–…9R¦­…<óû'‚m¤C‘LQ’I93 È™‘ÜžŒe ãDòdˆUi)4b}ˆ‘ëGyÍ÷”ôôtüò—¿ôÚó%p7ÑétøýïO4Ÿä+If ¹x)„Ò$§e›®”Í ¡T Irg¡íVèÚÎÀpÿ¯236ÎýoÿöoÍ1‰k€c©©;vìðšwÍùŠ¥H.Z46,N&GŠkÞ:Á«ÄŒM ð‹_ü""¹Ýã àc —ÆG}„£GoÈ&i .YùÅ5°í†AŒÞ®…Å£Õt RZZŠý× h>hànrøðaìÙ³¡8T©6ê)˽ºÇ-°õýÐß½Sï­ èˆS*++±mÛ6¿|ç(/^Äÿýßÿùtññò¶¤@™_ÉpŽG±éA÷<¯ñ}>Ÿ„"6mÚ–>‚5À±Ž­Û·oÇýû÷C¶O±* ʼ¹PäLÛ>€,Ü–Á;ëC:|7-- ¯¿þzÐÓ‡÷¥‘þ2ËòèÑ£å¡ % $å΂"gºÏÀNLÓã LÝÍ0=¸‡YÒ}———cÛ¶m1À·wJCCvîÜéµÏ`pZ}¬úGž5Åk~K¬e3ÁÜÛSOsP L½ÞøB!6nÜˆššš¨ç•|ˆ#GŽàüùóD›ˆñį—,Y‚§žz*äV±Ûíhnnö[a/"‰P^^Ž¥K—¢¢¢"lÃS®~ãÆ \¾|W®\!†¹Æ2¯ž1cÊÊÊP^^³Å €ÇÐ4¶¶6ܾ}­­­hmm KÞK "“É0uêT”••aÆŒaŸs“øc"}}}.°·¶¶¢§§ÇÕp?\’ššŠÜÜ\×kâĉÈËË{ì©Gà½^þþ~â544»Ýîz98×{±X •J•J¥Réz¯R©œœŒœœäææB©T&Nrà I»§ ! €'$! €'$!±'qgŠGÓdˆes%šåd±\Ê&ްú[/ðBÔh>Àâ»¶õ=Ï—}Fê¦GÌžË}}ö·®?Ðqd¨Ö æ&àsñC&_ë°}ç¹Ì×g¶ïØÎK8@V7¡?:߇êo07A 7ßå¡Ö²áZά¾–¹ÿõö—› f5¸7±ýu¾@GÜþíëå¹àûÓð|(O0Ëüiu>š™Eàó7ps²;€}½ØÖ÷t÷Ï4Mò°RoÀf{9s5œïÝÿº¯ã z_€çKiÂe ðÑâhY®ëp´/p{‚ÒˆE"‘Ï¿îëÑ4ÍØŸ§öŽ)ŠÂÜî@ööò~_ZÝý3Û±x£1‘0zà r.Æ] \š Ô€Zw »¿(ŠrÙù×)Îï…B!«»1X‹ÃAOؾçJQ¸ ÈùÒ–hyuørnoFZ Àfµû2oTD$¹è®Ù:a±Ý0îׄ«Æìñƒ»ß‰þN®óNf{±Ýå\9¿7 s1L㢄‹–x^_†£/Þíí&Š‹@»ãží±âþÙk±]DÏ“éÔ\47›„‡{¸·mýȃñ9‡èÞŒD¼ÛùbãᾌÌP‚ÄáÔØî€v†·“çäjžÍ£âØÁÒ‘Pz[¸ñyê„Øx(@ …3oÏî³»ïçó|Š€eYAAAÌ+„t ‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAA }‚ ‚ ‚ HèAAABŸ ‚ ‚ úAAAÐ'‚ ‚ úAAAÐ'‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAAABŸ ‚ ‚ úAAABŸ ‚ ‚ úAAAÐ'‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAAABŸ ‚ ‚ HèAAABŸ ‚ ‚ úAAAÐ'‚ ‚ ‚„>AAA$ô ‚ ‚ ‚„>AAA$ô ‚ ‚ ‚ ¡OAA }‚ ‚ ‚ HèAA }‚ ‚ ‚ HèAAABŸ ‚ ‚˜¯ø|>°,K'‚‡ˆéAASa·Ûa4ÑÑѣшááaX­VÿÅbÇã…BˆÅbˆÅbˆD"¨T*èõz¤¤¤@¯×C¯×#55¹¹¹Ëåtrc€€¥)AAÄ3˲0 ¨®®Æ“'O`4144}ñ) ;;‹-ÂâÅ‹±hÑ"deeA ÐE ¡OAAD“É„‡¢ªª 555°Z­qi‡V«Eii)6n܈ÂÂBˆD"º8$ô ‚ ‚ .ø|>¯Ú§V«ý¢¿¸¸˜,ý$ô ‚ ‚ ˆ`F\¹r7oÞ„Åb™mNKKðcÇÈd2ºˆ$ô ‚ ‚ ˆ1 ¾øâ TTTÌÙì8*• »ví¾}û””D•„>AAijKcc#¾øâ äiK!MÈ‚H®¨´“õºájƒk°®|Ž‘¨üÝ•+WâG?úh0Ð'‚ ‚˜û¸Ýn¼ûråÊÌ¡X yÊ"ÈS—@¦Ï‡@wŸ}®AèðjëuGü·4 þê¯þ kÖ¬¡ABŸ ‚ bîÒÓÓƒ_üâhooh¡DyêbÈÓ–@š” 0ÎEªXî‘.Ø;«àìy–‰,¿YY¾óï@*•’Ð'¡OA1·(//Ç›o¾ §ÓÉy_‘2ÚÅ; O]ð´ã²ÁÖñöŽG`<Îûgggã§?ý)²²²HèÓíBAÁ†Áûï¿sçÎqÞW(Q@½p3T VGÍç~¶a/U°4 Æmç´¯R©Ä?üÃ?`ùòå$ô ‚ ‚ þâõzñË_þ÷îÝã&ö„"(sÖB]° Bñܬ.Ëz]°´Ü†½½‚“KX,ÆøClݺ•„>AAÁ?\.þýßÿÕÕÕœöSd,‡fÑvˆ󣸔Ï>sÃ8û9íwôèQ9r„„>AAÁìv;þõ_ÿ aï#M̆vé.H´é1i£×> ¯uÀÿ]$SA¢Ëœµã9{`ª= Æ~ŒÂž={ðñð4.„>AAÄ3„ÕjÅÏþs´µµ…½:o4KvĤ}ŒÛKã5Ø;'¯4ˆUIP.XeV¢ègÀñ9-©> ÷pGØûAANŸ>ßÿþ÷am+MÊAâª#Jä1kŸkЀ¡ŠOüß'ZÇÝn7¬V+Æäekk+Ž;‹Åð7„9YÅP-X‘Bµ¶1.+†~¹7ä¶2™ ?ûÙϰ`Á‚y;–„t;AAðƒÚÚZ|ðÁam«Ì*FòÚ£1ù`k«ð^¾|9vì üu:°X,˜hCÎËËÃ?þã?"==0ûãqÂÖz}7Á\ˆ’ÝY(S#yÝ·!Ñe„ž°¸\øÅ/~QuaúAADøÚfï~õ+„ãl¡ÎÛÝŠ1¯pë³À5ÐâÿþÚk¯A"‘ÀëõÂf³M¹ORRþöoÿ “ÿ“eak»¡‡Ÿõº£ÒFH‚¤Õ/A$ׄܶ»»¿ùÍoHèAD¬±Ûí°X,Óþx½^:Iļ᷿ý-†††Bn§ÈX³ô™“&#ýŸóòò›› –e'¹æT*•%ÀkíÇÐÃϼî5„3—¨M*V>áG_„t zÿý÷QXXˆ¬¬¬y5®È¢OAðŽŽŽŽ" ü+//‡Ûí¦“FÌYz{{ñÞ{ï…!\S¸êŘ»ëŒáèyâ¯D«Ñh°bÅ °,;ÉÇeY˜ÍfX,Øl¶€I@QQQ@{›Í½^ïÿî1uc¤ê«¨ùìËSA»8ôê‡ÇãÁ[o½…ù–£†„>AÁ;†‡‡ÃÞÖëõÂl6ÓI#æ,o¿ývÈ€PX†Ä’—!KãÖN{ûÿç;wB*•ÂårM²æ;°, @ŸÏ»Ý>žbÀîÝ»±yófÿ÷h4ãþôξFXšnD­Ýª¼õa«««Ãõë×IèAA3çáǨ®®¹®° "…6níttÂcéB!öìÙ@‡#°*®Ûí†Ûí†@ øñx<bÿÕW_EII‰ÿ»ÅbP8.K­†;pt?ŽZûµ…{!M FóÃ?„Õj%¡OAADŽÏç +_¾"c9ËãÚVGçød¤¸¸‰‰‰“¬ù,ËÂápLùc?>Ÿ>ŸÏ?Yøþ÷¿ïOÍ `ÒÊ€©æ ìÆGQqãEH,9‘"!èv‹~ø! }‚ ‚ "rÎ;‡îîî Ûˆ:è ÷ƽ­Sj>÷Üs‹Å“bcÆ,öŽP(œ$öýâ[ À+¯¼‚o~ó›P«Õ“öeY¦Úóè¹üŸ®<{g·-rÑ+Q@WXr»k×®¡­­m^Œ1ʺCAc, >ÿüóÛ%¬8W¿|ðZásº³ˆD"‚eÙWSºìLõ3æ¿?ÆöíÛ±eËÔÔÔàÞ½{hhhÃ0`f4….ã³·ÎÞz˜BÈSA™µ2}ç¾Èôù%çÂ58½gYÇÇOúSúAA7¾úê+ØíÁsÆËSCš”÷¶º þÏËåðz½jÆÜrž¶àOüðy""‘«V­ÂªU«`µZQSSƒææf´¶¶Âjµúƒ•½^/œ½ pö6@¢Ë€nù^H4iœú£Yò\·t›»w³sΧÛ$¡OAKáìráòåËA·EÐ,ÙÉö¶ú?C"‘Lª‚ëõz' û‰¢õËŸp;­×h°yóflÙ²>ŸF£­­­¨ªªBWW, †ÇÔÛïBž¶ºåû ”(ÂêD“ Eæ 8º¦ö³êÿøÇ?&¡OAA„ǵk×BZó• Ö@¬LŒ{[YÆ÷p‡ÿûš5k`’ÛÃ0ÓZóLúÖ±Y"‘yyyÈÏÏÇsÏ=£Ñˆ»wïâöíÛþj¼ÎÞ¸ú›¡ÌYuîzeªÐ“‰EÛáì©ËL_]ûöíÛxùå—‘žž>gÇãAAÄJ8³,Μ9\œIP/ÜÌ‹özFŒ`}£¢^¥R!333 {Î>Ÿ/¤È›„bª Á˜›Ð‚ ðòË/ãïÿþï‘““ãߎe|°µÞCß7a®»ŸÓô"¹ªÜµA·a&äµ"¡OAAAA1‰sçλBT9«yÓ^×À¸Ð_½z5D"Ѥ´š Ä̴Ê7_ @,L„B!$ är9ÄâQoó‰Àjµ?øÁ¦œ°>†+OÀ54}vXråÄn·ãþýû$ô ‚ ‚ ˆé1™Lxü8xµWEÆr¥*^´—ñ8ౌ¯>ƒeÙÑ”—O Ê Ùv À‰DAWär9d²ÀU–e‘ššŠÂÂBÿïòòò —ËGÿŸñb¤ê« ~øÊì’>ý×®]#¡?q¸}ð1ì3Ùw¯Óã{&ûÎþéÚ3ì³yí]n/3oúÃ0 \.×쟷§*@Ò¹#žÕqCc.rîÝ»`‘ž Uî:Þ´×3Òåÿœ’’‚„„x<žI}Ë‹©ËN¨”œcoâ„eY0 –e‘˜8´¬×ëño|RéhíÆmš]G Ažº$hûª««1444'ÇܼϺÓ=ìD}§Ã67Ìv/Ìv̎ѯ…€J.†V)V!V)†N)Á½ K2Õˆæî\Èáöá‰ÑŒîaLv/,LvÌvîQ‘/ ÿÔ÷ñs ×ʰ<[‹DµtÎöe¶šº­0ÙþtÍí˜X^0 ¡@õصWŠ¡UH SJP®FAª B¡`Îößl÷ ÖhF¿ÉÓŸú>6ö]žQÑ!—Šüc~¬ïi rfk¡–óóÑàt:ÑÖÖ†ÖÖV Ãn·ûs+‹D"¨T*¨T*¤§§#??iiiœ2<Œ½<º»»a0Ð××«Õ »Ýî4“ËåP©THLLD^^rrr&Y™ø&¬ŒF#zzz`·Ûa³Ù`³Ù`·Ûáp8À²,„B!”J¥ÿü)•J¨Õjdgg#55•ÔiÐÑÑ‹Å2é¹4(ŠIç8##YYYaY;皘ïììDwwwÐ1§P(üçE©T"55ÙÙÙHHH˜·c¥¼¼<èÿK³!Vëù#ôÍ=þϹ¹¹H$Óf šIðíÄí‚åÝŸè24&ò`xxØÿ{F½^¢¢"Ÿf³f³ÝÝÝxøð! –.]Š5kÖø—r§Ãn·£¢¢þÉÃT{‡Ã‡Ã466B(";;¥¥¥¼IÁæv»ÑÖÖƒÁ€¶¶¶d ÃÀjµÂjµN¶.ªTÈÏÏG~~þ¼¥‘Æ'ƒ---þÁ¶·Ûí°Ûí|ÏH¥ÈÉÉA~~>ï'Áp¹\hoo‡Á`@{{û$î©ÆÜØ`Œºº:ðO2³³³‘——ç·ÌÎuÌf3ž°,‹ááa444ø÷Óét€… ú…¾Ïe 1ÁÊP¢ãqL»Mee% ýx Ü‹U½xdÍåÎ÷2¨i7¡¦Ý¡@€ü4v§bY––_/[†qãI?:úC ¼°ÅÕ ÆAÎ>ì†^+ÆÅÉØ¶\Ï»UŽ^“õâq‡)j.)v—ÍC¨h‚X$IJ, ÊV¥!;YÉ«¾{| nÔàNà -ÑYgY ¥×†–^¾º×…ô96/Ócã’dˆb¼ÊÑÛÛ‹;wî ³³3¢ý=z„ÚÚZ¬^½«V­òtMÅ=BeeeD™†A{{;ÚÛÛ‘——‡ 6 999.ã¡»»0Qs±Ùl¨©©AMM ¤R)òóó±nÝ:hµüzÆ›Í†ŠŠ 455M;ŒdRÖÔÔ„¦¦&ÿ¤qíÚµÈÈȘçd6ÆœÕjE]]êêê •JQTT„•+WB©TÎéñsÿþýçH–œÏ¯wŒ©ÛÿyáÂ…°ÙlSöA(¤× ·0ÖTBÿikþÄÉ$˲`YÖ/òàÔ©Sþ˜Nç¿w&®<ˆdšà O]{gõ´›466ÂívϹ‰çœúNWªûp½¶VýŽ–EsÍ=V,ÎÐàùÒLd'+âÞÿÆn NÞï‚qÐ1«Ç0»pª¢ 7Ÿôcßêt¬[”¡ ¾®-f‡çöànãЬúÛ{}£¾Çí&”ä'âÀš $kâ{£³,p¯iguÃd›Ý´_=#N|~Ljëµý8°&«ò‹+_QQ»wï†ôg WL•——£¡¡ô[|qæÌ˜Í樴¹µµíííØºu+ŠŠŠb6†‡‡qûöm´¶¶ÎêqÜn7êëëÑØØˆ¢¢"”––†\)™¸Ýn<|ø•••S!Fí=3aÒ˜ŸŸ7ø󉡡!ܹs'&cîÁƒ¨¬¬Daa!JJJæì$³ªª*¸à•*!Ѧñ¦½>§ŒÛîÜR©tÚøŠ§o¹ˆüéÜv&þŒ¹OŽùå1VÀ0 jjjpÿþý¨YðÃÅ`0 µµ………X·nT*~da±X,¸{÷.b:æ|>jjjP[[‹ÒÒR¬Y³fι‘555ýYR.¯Úë1»í¤¥¥u+‹Dä ý‰û}žø¯ÃáðOs‹¿ýíoý¿ÓëõX¼xñ¨V1™P[[;.âS‡l‹4)±¬wz·³ššú± wĉß]1 Ï¿Èý1w™ªÖ<¿6ÛW¤ÄæÅòøê~nÔö#žIczMN¼}É€%™|w{.T1 Þlê¶âýk­1ŸÜ==ɼQÛ{MCøÖ–çÆf²ãtûðÁ6Ôv˜ãzÿu ØñÆÙ&”ä'àÕ-9Q_ðz½øê«¯B“™éDâôéÓ³.Ràp8pèСY$µµµ¸yóæ¬Z˜Ã9—åååxüø1öíÛ‡´4þX#gÊàà Ξ= “É¿÷ Ë¢¶¶ عs'–,Y×sòäÉ\¿~}REÔXO¾îÞ½‹ÖÖVìÙ³gÎî …ÌÚ"Óó×m''''è¶ÀŸ3\žÖÊuÇétú]vÚæñàØ±c °‰Dؾ}»ÿÿoݺå·ü‹UÉP¤/Ý¡ò”Ept×ús9UõÄhÆjŒ«ÈZô¸×‰?ÞlŸõT·¿½Ð‚ëã+òÄL—¿8Ù€ž‘Ù·vݪÀ›šã*òŸÞï^1à|efûr ˜]øÏS qùydÁŸnŒšë˲¸xñ⬊ü‰ÇŠÉ¤¨£ׯ_zÛoݺ…«W¯ÆUäOÄjµâøñãqsƒÁ€Ï?ÿ<®"ÿé ðÅ‹qûöí˜ZÑ'޹›7oâÊ•+qùéëëÃÇÒ†/466†ÜFšœÇ›öúì#°dzÐ俆^màšáìé¼ù>˲°Ùlp:S¦ò|ï½÷ÜÆvîÜé÷Í///XÖ,Ú6še" B¥ÙlooŸsUrç”пRÓ‡·.µð2ÿû½¦!üêlSÈL/3zÿuªõ]Þõ}ÈêÆjÀãìˆPÃâ³ÛF|~džguXçöàý«­³æF46™âËäv"CüÇÉ´õÛfü·îܹƒ––Ì7jkkñèÑ£¨ü-·ÛS§N¡²²’wýôù|¸xñ"îܹ3§¯WEEΜ9ÃË—ùÇqêÔ©m¢‰ËåÂÉ“'y)¨½^/nÞ¼‰úúzÞ«Pn;bµ"™še WåwaÑjµ(--¾Æmg,#Ót†Œ'N¡hÚÿg]]]$ô£~3ûX|x£ 'ïwÏ5ŽZûløÅÉztE70¶±›¿BÏÿ2ð0xëR ®ÖôEõïÚ\^¼y¾_×ðzŒV¶ŽàÎ4b$ʱ7žôã7ZüuøˆÅáÁ¯Î6¡¢y8ò‰ìÀ@ÔÄ0¹{÷nÈŒ¡0™Løì³ÏÐÞÞÎë¾>xð€·B9”h¼páBÈ<çñ¦½½Ÿ~ú)FFFfýX###øôÓOÑÑÑÁës2„~ssspÉ£l;–æ[~·@€×_=ê&fÚ;ÎØÄrºÌ>À¨KÎ¥K—üß/^Œ 6:;;qõêUÿÿI´éH(~žS»" DrmÈ{„~4'–Þ¿Ö:#KFlüêLzMÑqeiê±ò^èù¯ |u¿ *£ãzáö2xó\3š{¬sâÚøŸ3°EɵèÚã~/ïœ|Ç&ãZ"»Ooܸ—„XŠÈ›7oF>áµÙðÅ_…á3ƒ§OŸž3aY–ÅÙ³gÃr¯àÅ{fd'NœÈAml6Nœ8Á÷¥`„ãVoB¹$òÅ?ß=l„Õ0¾*÷ÜsÏù­åÑäi·¯× »Ýtµª¶¶ü±ÿ{FFvïÞí¿'Μ9ãw-É5HZý" ÷¶…ÈÐÃ÷‰ïœúgt£¦Ý4§NªÓãÃÛ— °»f&Î-.¼{Å0ë¾ÿÑæÜÃnT·Íìš±þp£=ê«#³ÍÕw¯¶ÎøšÕw¦Mk|t«ívNû477£»»óƒÁQ=¯×‹Ó§OO[’¯tvvÎhrK¾þúë9g¥³Ùl8}úô¬Äix½^œ9sfV'Ñ"'''¦©l#=Ÿ¡V`Ī丷“ñº0R}c®ÙÙÙxá…fmrÍ0 <Ç”·iiiÁÛo¿í7èt:U+‡F1Ú¥L‡Û«Ó ³Ãƒ>“+jþÿÍ=V|QnÄ+›Dv‡Ã»ÝñªANN8‘HÄk¡588ò¹$”Ä¿…¹ö|ÎÑX;‰D‚?ÿó?ŸµsË娩©ÁÛo¿íîÊår<ÿüóËåðx<8uêÔø¸òh"Ï„(RúsÍGŸ·B¿cÀŽ?Þšù¬I&bi–E t(ÌÖB)™aŽúÙ×tŒVÃ0ÏÌ'¾±Û‚÷:ñâ†ln³j–Åû×Ú¢âþ“‘¨@q®Å9:d†Ý&›Õí&T· ¥×6#áëö2xûR þîù¥Ð(¸ ³ÊÖ\xÔ•‰ÍúÅIXœ¡A~š éô×ÞåaÐÚoCS·åƒ3v¿¹]?ˆô¶ê¹Mð<>¼uÉ0cá- ŸªBQŽ+èBøê39ñ¸ÃŒšvÚúm3Š…1;üðC¿ñA"‘àÀHHHð[ò'ºEé–í™±T(ýhXŒ–‡Ž±V§ÿ÷Ëz˜í‘s©åbìY•†MKô‹"«ãÙÖoéŠîûˆ¿º%ë'…½ýÉû]¸2àÖâ\¬Î@ZBdV›Ó‹Ë5}¸ùd^_äÖ½¼~|pQØUt»‡ø¯S 3ZY‹„ز,»‹Ó"Êïïò0¸ú¸×÷Á剼B¡?Ú» 9–zûR Ï …¦H(ÀæezìY™u„µ LvÎ?šyÅáµ “ðímÁs/WVVâÖ­[œþîÒ¥K±sçΠ/ø‘‘|ùå—‹¨„„>|&¨ ¾téçLA{öì +zkk+NŸ>=£ç@ZZ6nܱÈf ¸{÷\.ÇÑ£G¡V‡/pG…^þÄÚn·ã£>‚ù{ B¡@ii)–/_±à4¸sçÎŒ-èû÷ïGAAÁŒþ†Á`À™3gfô7RSS±qãÆI“ð°Dn7ž®{؈Á{ÝæÝwß Û`oDÿò/ÿò/|kÔÉû]hêŽì¥" ±»8 ¯ïÌCAš:"·ÿË^%źEIÈMQ¢{رk‹¡ÏŠMKõˆB?”zMNüáF{ÄyÙ ÒÔx}g.v®HXèÇ¥™¬[”§Ç‡®áÈ^†#vTRd'‡±ÿûë­èp%E(`ýâd|ï¹|¬ÊKˆ¸“X$À¢t56,Iðèr ’Å –ŒƒvlZª+…ïã3ÎÏ`%cíÂD|oW>Vç'Ψˆ•\"Š:”ä'`Äæ‰øzt;°8CƒÄ •£+++9˜&&&âàÁƒ!«°Êårèõúˆòº …B<ÿüóHLL þð‰““ƒÆÆFNéU*UÈàA†apêÔ©ˆ­é عs'¶lÙ­VñXÐëõ(**‚L&C___D+%cv . {ŸÞÞ^N¾°+V¬à”äæÍ›džH$¬]»{÷î ¹B ­V‹åË—#)) _ó¾¾>qÎe>qÌ>}:âãët:ìܹ[·nј‰DHOO÷ûÝ÷öö¸½Ì5‘UUUA -‰Z¨¬‰OãXC?…Ïaò_Ç¿ù›¿ º*5ëMbYœ8q"`Ò©ÑhpäÈèõz ãøñã–uuÞh—ìŒNØÚîÝdïÞ½ËåsbüñîN0»p»a0¢}ÕRüäÐbì[™$z][–¥Åß=¿¥ “"Úßîòárux±§+º#²¢ ì+IÇßX„Ü”è•JOPIðê–üÅ®‚ˆÏ鹇=aYèë:ÍOð²’øßG–áè–HPEg–­–‹ñõYøÿ^*äd•»NÜo ý’eYœªˆÌïO,â»Ûsñím¹HRGïᜪ“ãû»óñÒÆìˆ'Ì_Ý|ÊÕ7w÷îÝ!E¾LdeEä^RR‚””ðü;¥R)vîäör '-buuuÄËÃ8zô茭»O‹¯’’|ó›ß 9šŽÆÆÆ¨ÆÌ„¡¡!ÔÕÕE,Ì_yå¬[·.ª½… âèÑ£œ&C1›Í¨®®ž‘tÌÍ´íÓ¹ 6à•W^A~~>”J%V¯^=çD>€®HB±"nm›*•¦J¥Š[{†Áïÿû€šIIIx饗˜˜ˆÞÞ^|þùç+ŒÚ%ÏA³dGôÆžL ‚±™¦K~¦…þ©Šîˆ|ÃóÓTø»ç— #qvn±H€×¶åàÐÚ D"y®×„̱nèµE”aH*âÏvæaoI:³t]V,Ðâ'‡–D$$Í®=î1ƒNÞ̺–‘(Ç_í[ˆTlVúž¨’âí)@~jd¿3»Cº?ÝkBoÕ…5 ~¼V$ÎÚ=¹e™?,+ã0íývTµŽÌHôŽ¡R©ššÊéøyyyÜŸ%ùÜü;³²²8 ¾P}v»Ý¨¨¨ˆèZ­]»û÷ï{2‰È}ùå—‘““Ñþ·oßæÅ{&Ò ³YYYxå•W"žì„B"‘`ß¾}'ºÿ~Dy§Óñ˜+--ž}ûfÍA¯×ãÀøÞ÷¾‡M›6Í9‘ ä*X¼q½Ö€Tš»víÂÒ¥Kã:!:vìîÞ½ëÿ]ZZ^|ñE¨Õj´··ãĉp:ÿô®‘Ptª¼uÑmˆ@‘\t“¹‘Š—B¿­ßQ¦•eYZüõ¾E3rU —]ÅiøÖ6î/9¯ÁÙ‡Á…ìW¤S”ˆ„øë}‹°2/aÖûžž Çß=¿)Zî‚úJMoP×§ûÍCèŽÀ=(-AŽí[•lv¯½T,Äÿ*+@Žž{Ñ“̓ëµÓc¹½ ÎFಣUHðÓC‹‘“¢œõk¿8CƒŸZ4˜}ÚÉûƒî)ÓZ­VN™"ñ3ÏÈÈàäÊ ‘H¶æû¢B!§ 5‹ÅÔÂ÷àÁƒñ¶mÛæ/3«÷‚TŠC‡Ed½5qOcÙÕÕ…¶¶¶ˆ&€‡ŽÉrýúõë9¯£Å†"ì÷îÝ‹h‚°sçN¬_¿Dˆ÷ˆçœ NBß\ÙŸJ3++ ‡æ¶¿ÙŒòòò nIá2<<ŒÿøÿÀãÇý¿ËÍÍÅ‘#G —ËÑÐЀS§NùŸ¡I%/B‘9;½„byÈI ýˆ$oxªNŽ×wäB$Ĭ¥ “°{ewkK󺇧~W·f;áÊ·¶æÄDè¡’‹ñƒ=Ü­».3m!­p&AS_{þzߘLð€Qßõî]QÊÐKÕ½Ó¦J½QÛÏ9ð\,â/vçõ6©:þ|g>g7ž³ w¦pÇã*f“’¸»ÎI$NËЉ‰‰Y ““¹åÀžî%aµZQUUÅùøEEE(..ŽÙXؽ{7çIܹs'®ÅѾþú눮ïž={bjM^¾|9V­ZÅy¿êêjNÓf³9@\…˪U«°|ùrRñQúBiì]w\ýÍp ¶ú¿¿òÊ+œÊoܸþçÆïÿ{¼ùæ›3ªlÞÜÜŒû· ˆÉY²d‰?ëÎ;¸pá‚?óŽP,CRé«¥,œµóÃxƒ¿ŸfkÕt^ ýža'Zz¹ ]…T„ì·\ûôZÖd (GÇi–n×OmÙ½U7À¹ e«ÒQ’Ÿó¾§hex}g^Ø™tƸÛ88¥ Km‡9¤[Ó$ѧ–â¯÷-‚FÛ¨w…T„¿Ú·i:n§Û7eÕX6Âkÿê–­.Ì”EjYÏݲþu}Œ¦(m£±ßÓÔÕÕqαž••…­[·Æü¼ŠÅbN~9×MÈÉÉÁæÍ›IÁs¸&A…˜XÛ± ÌõWü_KJJ°hÑ¢°w?þ<>þøã€~E*ôoݺ…_þò—>ïkÖ¬AYY|>N:°J%’©‘¼þÛ&Ìnº^Æã ¡mª#ðMyc6ôZY\Ú+ðÚ¶ÎÖ䚎Éýt¸}hî儚“¢Ä¾ÕñËq»4Sƒ+¸YóÜ^SÛFrí®Í» S´QÉÄxa}&çý¦Š¿è°ÃÄÑš¿nQÖÌ¢O~(¶,ÓcÅn“ÜžçŒëR<  NÛK$ìÝ»7n~Ë*• »víšõ~Æëü£î)ÁÒ¬Îö$µ¬¬ 2·÷—<ø\sæËd2”••Emrû,êú1îØV½¶µWÀkò Ö#GŽ„o´ùúk|õÕW“ûÀq²èóùðÑGáü£ ‹±wï^lÚ´ &“ Ÿ~ú)Z[[ÇŸwš4$oø.Äê”Ù=A,Ö<“Ú\¨ßÀ;¡ÿ¸ƒ›ØËNV $ŽbuåØ[ÂMl›loê'F3çäç×f"ÞÙÝ+Ó8»ð<-v†Å#·Li:9Jòâ{í—ei9»LµôZ'Ââ|- q`uFÜï×Ck38¯èÔt˜@LÕj圕¦¤¤ …"®íÎÉÉá?/¡ÏµæAFFçàìÙ‰kÖpK½Ø××–ûŽÙlYÌéiÖ®]Ëyâñ¬Ê}ÐçŒ]Æã€µyÜ}í¹çž ÛõÐh4âÓO?òÿ ÃnƒÇãÁÿ÷ãæÍ›þß©Õj¼ôÒKX¼x1ŒF#>ùä g¬“§/Còúo‡,fsÚ­”,ú1Ù=0p›ÑâЀK’9¯*Ô´ ÛÇÅ^a¶6âtÑD!qŽUxÜa¨ÐÒkã\vϪ4ðÁ˜´w·IžoŠIMu·k¿my tªøéHK£t·ÉÖãvúÁ˜h¹ ëþS(PRR‹¶oÚ´‰Û3ßdâT?!ŒŒŒp>&_ÜSŠ‹‹9§< ÇRÏÕš¯Ñhb 2_µ"4–Ã>Xšn€ñºüíÚ·o_Xû9¼õÖ[SƉD"Nñ$çÎ ¨ø‘‘£G"%%f³yR Í¢mH\ùB̪‡#ôçJ±,Þýšv§Qù©*,ÉÔð⊄΂¯¦}$@üÕur›Íï_Λ´­PÏ©ú¬ÅáAû„ c®n;©:Vç'ò¢ï…ÙZ,àè'?Ñ‚ßgr¢Ï~@êh1¸TÞ\û½%éœ&\†>[ÄE瞸Z¹W¯^Í›—Mjj*çT¦\­ë±>¿¹¹¹HKKãÅù‹Åœ­úáœ_®BíÚµsÊe/„¶è›cÒ¯}vc¥ÿûáÇÃ^ùàƒü«?O»m­^½:ìX€ù………8räˆe²¢¢Â§$K‘¸ú%¨ 6Åôz…#ôg+Åî¼ú\ÝvVÅ!5E9:NYº‡²Žú5õXáô„oÑNÖÈ®2“Hˆ"ŽþÚ;Ì_û²Uéà“kè>Ž®[ufªÉ§WvB±4S—Àóit*)rõá[YœÝ´žÜn7:;;9íÃ%x.pm׌X }¾_®éL»»»ƒ¦Ìt¹\œ“AT b=K„²è3gHŸðh`k»ïO§™7†µß•+WPY9>AÐëõþÏ"‘‡ » Ÿ}ö™_ÈUð‹1²Z­¨¯¯÷o«+Ü yJìïC6D ®J¥š3Uq€NF\ q œmd!e¨QÏÁ2ß;âD’ZŠžan}/ÎÕñnçêPÞ~5ãž?åËw{ [¹=Ü®×öãÆ“~^õ_„½"åò0±y¬‘¢‡ë¸Ïáßµ_‘£C+‡´°‘{0™Lœ‚ÙRSS¡V«yÕ‡ÜÜ\…°û1Ñÿ6p9ž@ @nn.¯Î¯R©DZZz{{ÃÞÇb±Lk±åZ733“|ó#D« íWîsš!Vëg­ ŒÛGçxåäýû÷‡Pm0pâÄ ÿ÷‚‚‚€X¢M›6ÿ`ÔÖÖäÜߺuk@"‡Žæ*¡H/ŒËõ eÑ·¿$ôÇfN,Žð—ó3UgmŠè8 }³cÔÏÍdç&t‹y(ögh “áò„÷‚Ë2cqp/8Ñ1`Ç\Çìú\ú/°<[Ë»¾¬ÈÑâTEçqOµÊb¼D§4xÈdÈÊÊ È… ÇÇ÷#Ç·;ügmFF/-vùùùœ„¾ÕjV”pɵDVeš%---ä$Øç0ͪзµ?ËŒj­””¬\¹2¬ñóöÛoûÅwBBRSSýnaR©ëø>ŸŸ}öYÀxš8™¶Ûí¨­­õWåoD¼–ïC¥ÖŒ¤~H<‰»ëŽÍé²jæ´º4/O$×vHâ’ZQ( 7…ý‹œÜ‰Lþ¾?›þÚ‘\û­ŒS,DÌ^`:9§ÌK\S‰’П^ˆò.‚#›‘b·Ûgµsñür=÷|='s‰DòüͦŸ>ëóÀÞñÀÿ}×®]aYó?úè#ŒŒŒÆŠÅbìÙ³'  ßŽ;ÂZ­FÝÆ\ÅD"ѤÚ•••~—‘B å,U¼ Ë0` îÒ6×,úqú\­º:%?#¹æt7ÿiƒ‹ðQËÅàkêb.ý·:F'wϪuw¬ß\ªáò!ÓN4Úf±S0n4„>×"U±‚kf®ýŽÕùå›[T¤çwb".ÿcdggÇMèÛ;«üî(jµ6l¹Oeee@¬íÛ·£³³Ó?iV(سgOxï<³gÏžõ/))N7îàt:Q]=îV¤ÎÛâ'OÝ*Ï%C o…>W ŸVÁOÁ£’‰!…¯ÂÇD±§Qð7o+—¶¹k™ŸQë®Ùî×ÇpJ+Ê×q:m3‘ëÎÔ“_ŽÖU¾ }®íŠ•ÐçjÑŸ/©hZôùzNæ‹Ð÷Xf)öŒe`k» ØC¹ËÙív|üñÇþï¹¹¹ÈÍÍ ¨P[VVö˜8~ü¸?0\¥RaíÚµÿ_UUåOÛ)”©¡ÈŠ_ W¯u>Wð{ƒoú¼úfŽ>>[6¹ˆ±HÜ7´ÊùÑ÷Ñ~»Ÿa¡ïõ¯è̇qÏ¥mN·"r!*‹!•JyÙ¾ ýùbыŜb£%ôe2Yܪ/Ï,XôÿÝCm³’yÇÑSŸctµ@*•bûöí!÷ùâ‹/üÁÚ‰;wîÄ7üq.Z­;vìëø---¸wo|¢±eË–€‰†Çã pRç­ƒ@?£¦kÀò^ÈÉÉ!¡Ïi²Ér«+äqÕm!‡Æ1,À°,¼>v~ô£OÃø³|=sx†³Ø•Køû’•I¸¥ütºc+ôíúÈuÛhÂ%ãŽ@À߀ós 6cë{f¾œã©ŠùMÔ›3À“ efœÍQ?®­õ®ÿóÆC® Õ××ãÎ;þï›7oÆàà`@«_|1,c˲øä“Oüß322°xñâ€mª««ýcQ(Q@™ß"€®ÁàBáÂ…s®–DÜÕgßv[Íœ¬óbÎ☫8¦}çk¡’@£ãYD)C€g™ØÎðJKKÃð©©©q«4ËÅ%c,[ áê"+Ë9_W"™:ÑIQËeòCE²¢cpÈÌÌ némˆê1ÝÃþÀR¡Pˆçž{.øön7þð‡?ø¿gffbéÒ¥¸~ýºÿwË–-CiiiXÇ¿qãŒF£‚úôj‚ÛíˆPå–Æ¬úíÔ“-/ÜÃÆ Û<=Q™ Ä]iqú|ÍÚápûàö†oŠÄçšÏÁ«\ƒªµ 'ßîy%ô¥ôÒŒ%©©©xõÕWáp8¦7À_™‘ïBLPO f›«B?Vž| æ _ÛE„Gqq1ºº¦OGìhËx£æºâèzìÿ\TT2[ÌÉ“'188ZG,c×®]¸ÿ~€Ï«¯¾Ö±{zzpüøqÿ÷+VL:þ;wàpŒ¦²ŠeP嬉ëõqý)Hç“пEŸ³o7?­Ú\W"ÉduxÁWo.µÆ—ùs0›(d$ôãrÞ (•Ê)â)òî–m®‚úYúóÅ¢OBn*w=ëó„ô–ñÁÙ;^evýúõA·ommÅÕ«W¶÷z½÷ýû÷‡•ZÒãñàwÞñ¯<ªÕêIUxûûûŠg©mƒ@ß‚l¡Î½D"ÁòåËIès~ÁÉÅœ|ÛùZ0©c»"¹>†E׃w}gXƒÎ}V…þÂ45b&‚w,5ßàÚ.¾ZôçËù%øEaaaH7¨h¹ï¸ú›Áx]þ‰nQQÑ´Ûz½^|ðÁþÏÔÔT¬Zµ W¯^õÇÑddd`÷îÝaûøñãþ• @€²²²IAä×®]óO¢I…jÁê¸_ŸPþù+W®äe!½PÄÝuG 4rqØ.9íý6Xhxæöñ¸ÝÄMèGØþš6²’¼ê{K¯ 6Wøý±ÕŒHÎA¢ZйŠR*ÂúÅÉX W¢ÏäAD*D V­ZÅ«>x½Þ°«âÜ3ÈÌ©T ±Xì/ÈŠÎÎΘUíåz݉¹‹\.Gaaa€%{²@oXfÆyäÝãn;«W¯:Á¸|ù2zzzŒúòïÚµ Ož<ñÿN àµ×^ +V£¦¦&À§¿´´tRlBmmm@…gmá^Ä»HÏa‚×:t›P«"$ôƒ¢•…-ôYµflX’Ì›“èõ1¨ïâV|$EÙ ®º}ûVó«Bau›)¢¾Ë$BhN±GÖg¡(G‚˜Oèt:‚°$»»»áp8âîr4‘ööö°…4$$$Ä´} ï¥ïó¡½½ .äÍùu¹\èîe޳uëÖ BŸñºàlƒLŸñ1®–°ªÉdÂùóç& …·oßöÿnË–-ÈÏݓɄ>øÀÿ=33ëÖ­ ØÆétümeV1¤ ™q¿.¶ •ƒ§B$MÊÿ?WàEξ ¸ ·*ŽÂr¶©ë´p ÄMÑÊ¢Lèw;Ñovñ¦ï Ë¢º}„Ó>˳ÇKf/_ å´ï…ÊzSó™LÆ©Ú"˲¼³î67sK ˜——Óöq=^KK ¯ÎokkkÌÒ‘³Ç† Bº8zjgt go=Xf´ £^¯GAAÁ´ÛN,f¥P(°víZ\¾|Ùÿ;­V‹^x!´`¼÷Þ{þú 2™ eee“ÒÁ^¾|ÙŸ9J(‘C³dgܯ ëuÃn¬ ®SW¬˜³ifù!ô9Zhë;ͼñÕg\¨ìå´ÏL-ÒçñGìÞk‚ɾE^!aaº:âsatàq‡ 1ßÇb6‘ðFø äÙžþΔ`bg*ššš0<<Ì÷ ËT%%æö¤>” ˆ£»6¤Ið‰Âÿç§-ê1 ãjëÖ­hhh@[[›ÿw/¿ürX+‡Ÿ~ú)Æã víÚ5)ÉÀ½{÷ šÅ; ”ÄUÒÞU ÖÜ€ºyóæ9;æx!ô“5Rd$†àÀ8YÑÅ‹ø°eÆAn“Ž™ ý‡-üÊõøœã8é(ÌÖB4!øzq†2ŽÅ Î?êåŵ²ºq¡²Çïvý¹ö¸ŸÓŠñlÂÕâl6›ñøñc^´½¼¼œS^vµZ”””˜¶Q¯×C£Ñp×] âÉ“'O022B7Éüÿ/B*¦2òÄÔèt:$%%ahh(ì}îß¿eË–Å5h´··—³›K¬­ù[UUöö­­­èêê YèhVß3^/îÝ»G7È,׃n#‘HPVV6§Ço„þ½’sÚÈa›ï\6ÀÇľŒÔ­ºÜ®ä¼ß†%IQkÃåhî±Æ¼ï‡o_náìŽR’Ÿ0¥›NQŽj9·Å¥Þ'Þ<ß gŒÅ> à7ÚÐ3ÂíÅ/ •5ŸβeË^’áÐØØÿm–eqþüyÎ.%:.nòŒŒ ÎÙ~Ìf3Î;—xˆG¡¾¾žnŒyÈöíÛ‘œ<{ ÇÒ&3¬É÷PkÀód*Μ9‹e|èÿ¾mÛ¶i÷õë¯áa¼ùæ›~/—Ëqøðန¹,ËââÅ‹ã±.V†H‘À‹k`5ÜÏ\CmÙ²Z­vN5^)çK¹?ü[ûløä뎘¶³¡Ë‚ãw;9ïWœ«›±ÛÎD†Å»WZ1h‰]¯Á;—[9à£.:ûWOUD&¢lUç¶t Øñ› -pyb÷¾PÙƒêvîÁÀ—$G\;xvÐétU^,//y–˜[·n¡½½û½°q#çÉL´“*t†Cggg€r,hkkãMŒ}ÄbqXÙl,×Á2á­3n;<–~ÿ÷¥K—NÚ¦»»; Ï=0já›È¦¥¥áÈ‘#Aãt:ñë_ÿf³yTH …xþùçb`X–Å¥K—žKšEÛ!KÎçÅù÷9̰µÞ ù¼8pàÀœk¼úK25X’ÉÝçþ^ÓÞ»Ú“€Ç-Ãxë’ ÇU¡P€ƒk¢oŲ¹¼øåéF´öÍþÒ®ÙáÁÿœiB[?÷cmY¦GRbW›–ꑬá^ «µß†ß\lžõkϲÀ¹G=8ÿ{Æ#±Hˆ=+Ó@áPZZ‘?èùóçcœË0 ®\¹ÂÉ×}ŒÔÔÔ¸ç¦/((@z:÷Z$?ÆÅ‹áóÍþ*b]]Μ9Ã)À™˜{ìܹ‰‰‰Á©ËRŽ11755uÒê˲øè£&aºK¡ögôùãv»qìØ1å[Ø»w/ÒÒÒžçÏŸX’§-…:oν¹árÈ ÔÖ­[±`ÁúÑæÐÚLDâÂ^Ù:‚ÿ>݈aŽ>ó\„Þ©Šn|p½ ^wQ¹aqRu³SÒâðâWg›p¯ihÖ®KÇ€¿øªí¤5UHEس2ø‹U$àÀšŒˆÚfèµá·[`qxgéüzðëóM8ÿ¨‘¼v7/K†VIÖ|"<”J%JJJ"à×®]Ãõë×gÍÍÄápàĉxòäIDûó%sE¤©òpüøqØí³“Þ™eYܺu —/_¦œùω$,_}kk9wè1çµk€œœœIÿ_^^´ÞÅÁƒ§Üo¢Èÿõ¯ÆÆFÿïV®\0y÷ù|8{öl@º]YÊB$?Ï›óîè~ goCÐmd2¾õ­oÍ‹qÆ;¡Ÿ¬@IAbDûv9ð'ðuÝg‹{0Œƒ¼q® —«#Kë( ±·dv«Ùú¼ÙŽo´cĽ O·—Á…ÊüÏ™&ÎvÆØUœ¥,téì’üDd'GV¢¹ÇŠÿóY-Î<莪ß~S·ÿ÷Ë4uG ¡Qˆ±§˜¬ù7JJJ"®z[SSƒ/¾øÂ_¾>Z´¡¡Ÿ|òIÄÕYsrr••ŋ󛞞q@poo/>þøcÔ××GÕâÞ×ׇãÇ£²²’n€gˆ²²2dgg¿ÿ¼nŒTŸ ˜ë³ÇË<¾Ön·ãĉ~hRÍËË têv»ñÆoˆüäää€ ;^¯§OŸÈ•/O[‚¤’!Šxq¾}LO.„Üî…^¹Ú2Wó±Q×dà‰Ñ‘`³9½øìŽ×jûq`MVå% Ò$7ƒÎ<èÁ#Ã0fò8ß³2-fþÙÍC¨lÁöåzì.Nƒ\ÙÍŰ,î6áÜØ‘ORu2l_®k[€o¬ÏÂg›ÀDðu{\¬êÅ×õØUœ†­…zHDˆúþÄhÆ×uƒ¨ï4G|í^Ûš •\ ‚à‚D"Á¦M›pùòåˆÅè矎üü|lܸqF/¬öövܹs‘gù‹Å¼+8³yófF:A.Øív\ºt •••Ø´iÓŒ–÷Íf3ÊËËñì ‰ðƒü?ûÙÏ‚N]ƒ˜ë/A»lÏ´Ûx#"|"'NœðW­Še`&ˆ‹ÅøÎw¾3mì̘ȟh¥‹ÅxñÅýß=N:…ÎÎñøEEÆr$<±)³,FªO‚õ÷üÐëõ8tèмc¼T Ij)^ß‘‹·."|0`váý«­8©’¢(W‡âòÓT†Èm9lu£¦Ý„êv ½¶ˆ?ÆÊ¼슱¶×ÇàrunÕ `i–E t(ÌÖ†´ª{},šz,¨i7áq‡yÆé R¾¿»bb» M…o¬ÏÂåÆˆkwùpò~nÔöcka –fi™¨šÖ”eG `U´ áNà ç`ã©Ø±"5®uˆ¹Í²eËÐ××‡šššˆÿ†Á`€Á`@zz: ŸŸ.t:󱆿---0™f^‰z÷îÝHJJâÕùÕétؽ{7Ξ=ñßÀW_}…ÄÄDäçç#???ÀWy:, ƒ?O?¹é<Û,]º;vì™*×ÖþbU” ¦.b峈Õ1Z[[»¥ÉypöŽûÏèëÖ­‹{î´†…‚¬_¿> bgDï™áa ãÁƒP(HHH€J¥‚J¥‚R©„Ëå‚ÍfƒÍfƒÕj¥*·Ä$¾ýíoãþýû~«û´ïµºK)§Ì^31UäØ*žÕj Èu/V'Ãcäyyyؽ{÷ÔÂØjűcÇ\q€Q7¼±ô›.— _~ù%úúúÆEþ‚ÕÐò+÷¼³·–æ[!·[»v휮‚;§„>l_ž‚ž'Ê£ò÷l./lý±)°¥QHðý]¼©„Ê0,º†èrÄäx‡×ebifäÖì7d£ßäBS”êØ]>ÔušcÒ÷d?Ø‘P‚˜Ñ„Y(ľ}ûðé§ŸFŲ&“)j+ .ĺuëx}ŽKKK1884H‘ ‡‡ƒ/Á µZ×_o¼ñFð YÕ_B¿þ»«Ýs")Ø?¹ä¸Ýnð¬ßíN €P,ƒÛ:ª©$É´.;8vìØ¤JÝ2™ »víÏN'Nœ8àÖ§Ê-…vé.^[÷H'FªO†ŒqHHHÀøÃù÷á{_Þ˜‚4õÜš=‰„øþ®|èTÏf¦•õ‹“°}yÊŒþ†H(ÀŸ?—dlNõ]§’àGûQ–"jÈd2:t( Í\ %%eZK!ߨµkW€«AămÛ¶·N«õ½. =üŒ'pB)”ÈýŸ- Þyç´µWÊUå”þ¿öîô·ó@øÃÞ%JÖ-Ó’,É—|HYÅvd[v|ÔF¬FvšôÃn. º‰c‹ýúµh?´@P4E6Ù© »ÃmÒºñYÃFÖql+¶ +ÖaK–%‘"%ñتl’â13œ©ç¼f†äpÈyÞwÞy_ÌŒ?©Íß¿Ò&;_}õ~ö³Ÿ-ùÀ\“—˿ߣGÆ…ü¢ÆÍ† ù¡©‡»üûŒ]išL&¼ùæ›qc0èëDLxmWcÞ´uvÚD¼±{9–U8±mjY‚Ÿñª¶.ßÚÛ„Ú2G^|v·ÃŒ·ö6§/€H ǃçŸ.—+/ÞoMM º»»a6çljè‹ÝÝÝ’Ú×iéÕW_ÍØ 0×{ÌØå£ˆFÂ1Aÿɾò½÷Þ‹;¿§¨qÓ\Øýg­¶×ëųÏ>»`¹'OžÄ¯ýkLO/lÆÜÜÜŒ––ôõõá£>Š+¸›·ÂÝÒe¨uNâ᥅¢döíÛ‡õë×ä6%äÛ´[E¼¾{9ºZ+ ý>«ÍFB•µs°cmå܈¾ïª=v¼°y)þti_~óF½¼Ø†Ww5¢ªÄ®ùzÞ×^êR;þ÷ïw1Ê}wt¢`B÷¿ÔþHQ±gÏ”––ââÅ‹ªÚ¤¸0nµbÏž=¨¯¯/ˆuÜÞÞŽÒÒRœ:u*®f4W, :;;ÑÚÚŠ?þ“““ü!¸ÎÎNô÷÷' r•ÜôÈmŒ^ü”µ¿ˆÒ¶ ~ƒhdŽê50™çš’ï?§aÇŽCCCøä“Opýúõ¸åÙ+[`.ª€ïö™Çݼ?’¬µ¬žµÏA´«àé»u“·þ.iZ»ÝŽÿøÇ~N^ŽäÓXé½°ù¿û8}íAÎB_suº;já-ׯ=¾Õ,àà¦:¬¯/ÁG¿‹‡¾Üì„V»ÖWaÛêrYýäg«­Áƒå•.|ve{f=ÎR«êŠÑ³±•pˆRéèèÀòåËqöìÙ¸îô$Z[[ÑÑÑ‘wMu2ihhxÜåáµk×rÖ×}MM vîÜ)iü*,‡‚ßïÇ©S§2N;;1Œ‘ ¿EÙSÿ Gmë ¢O¶ßüô§?Å;wâÏŠWî„£¶c_Kú:&A„»y›ájñ£‘Ưž@`èÉ&‡FCCCÁoGy;d§Ý"â¹§j°uU9>»<„‹ßêújJíèî¨Åªºâœ}þ¦ê"üçUøòúþöõƒ¬F¯•µÁˆ&l]]]ëª2À¥•b§/uz±}Mþti_÷ëöÚ•%6<ÿtV/-Q®•••aÿþýÀÙ³g1<<¬_EGs36mÚTÐÔét¢«« ëׯÇùóçUë‚SŠÒÒR<õÔSX±b…!›‘>^yåLMMáÌ™3§ &0rî·(Y½ŽÚµñÝü¤“ˆØÁ³æ9ªW£xÕ.Ö¹ŠKÁ¼°Ë\´žu߇Åm¬ó„"3~<¼ü{ÌÆô(”Ék¯½V°'ßLÐ }[¼ØÞZ—q­BÕâCž;×U¢£©Ìƒ½YÍž][‰®5øÇ­‡øâê}UüŠe´5z°·½¥.cô*Så±ãÕ]¸=ìÇg—q{Ø-Êz¦¬6­X‚ öO†S[[‹üà¸uë.]º×媿“ ^¯7n4üIÁjòx<Ø»w/†‡‡qîÜ9 hÖdª¦¦ííí‹¢¦‘¤ýæÞzë-\¾|9ãôÑð ]ýÁ‘Û(Y³‚yîÜ1GÍÌŒ-xÏê©CÑòg`+__Èõ¶!0pÑH&Á §· î–.˜cÅÆÙÉû»ü{„ƒ’×çøCìØ±cÑlCæBù U;þýÙFgøþÝ$®öã›ï&œ gð–U¸°vY Ö.+6l3 Q0aSËll^‚kßMàë»ã¸90‰1vÍzœ6k––`m} VÖº 3øW¢åU.¼½¯¾`_÷ãêÝqÜð!ÎîP{Y‘m¥ØÔR¦úIÐÅ ,¢€Y‰ïÑÈã ”»­²¶)‡uîoÇårAÉM"Š‹{EÎ{³Ùlšõ‰ßÔÔ„¦¦&LLL ¯¯}}}Ì*”Z,x½^466¢¾¾^Ro js¤@ißÛYUUzzz055…;wîàÎ;èïïG8Î¬ ^¯MMMIû5åv»%äÒ¸[\\,y„^žœã}¼(âÝwßÅÏþó¸fÓ ]Çì£xÖuÃZºκ mnÜB80‹§ΚVˆNOòß½»U;ßEd6Ñê vT)š†ïöYLݽ×Åh¦ÿ‰7ÞxÛ·o_\…ŨÎäÒH8Å­!nÜ›ÄCß Æ§f1>5ƒ‰@‘„Z—ÍŒb§%N+Jœ,«p¢Õ[ ·CÛ3±|pEò´O7—áå­Ë$Oÿ`b7&qs`£“3ðCðO/üì¢`‚ÛaF±Ó‚b‡ånÖx‹ÑXå‚§‡ŒgBܘķƒ“xäŸûîý³˜ Î.¨õ\63J]ÔWºÐXéBC¥ %zuòÊN}5œñTc• oím6ì‘„àL¿8ñ-ÇÒ÷Ulìª&îäåsçÎáÊ•+Ã~MM zzz Û›Ëìì,þð‡?àÁƒwØ›7oƆ ôû~‚AܹsCCCðûýðûýðù|qÝãÍ×t9N¸\.¡¨¨K—.…×ë…(êßL/âØ±c¸wï^Æw[[6oÞœ³ï¾¿¿ýýýðù|ðûý˜ššB XPÀE‡‡eeeׯÓ)ý<¯¡¡!|öÙg˜ššJ_¨v:±oß¾”‡{÷îáäÉ“GñÍ´Ò1Ó„ÃøÍo~ƒÏ?ÿ\Ö|ŽÚµ(né‚`+€®¿£øû/Ãw댤þñc+,~ô£~¤n}Õv €/8‹‰@v‹ˆ§Y×Jõ úI?;€©é|"Ñ(Š8íf,–Æ(‘h“|Álf.»v«˜³Ï?á¡/us+‡Õœ7Ýv1J]³RQlOz^ÇÔÔTÚ^Dl6<O^¬ƒ±±±´½´”””èV#žñ·‰Àï÷czzN§‡ÃmÁ=z”tðžyn·[VPÖ³ 2ø- ¬V«jßÝÈÈHÊ#5&“ ååå Æáp£££Y/‡ôuôèQüîw¿“öD+Š7ÁÕð´ášßH®´¾‰ÉÞ¿"45&k>»ÝŽ#GŽ µµuQn/‹2è‰ÞAŸˆˆˆòÛéÓ§ñ«_ýJv³1ÑQ‚¢åpÔ¬Ióâ³ÎŽbâÆ_0óèžìy«ªªpøðá‚éúW 3.DDDDùcÛ¶m¨¨¨À/ùKŒŽŽJž/Çø×'0ÙûW8½ípyÛ X]Æ ø“Ãð÷G`躢ù;::ðæ›oòˆŸžX£Ÿc¬Ñ'"""%ü~?Þÿ}œ;wNYDØ«WÃ^µ¶²e0‰¹íUoæÑ‚÷o 8|ဲ®³EQÄË/¿Œýû÷skô‰ˆˆˆò’ËåÂ;#¶¶6|ðÁ N²Ï$ #0p«€I€ÕS[y#lK`qWißÛN4Š™±» ÷búþM„§}Y-®¢¢o¿ý6V®\ɃAŸˆˆˆ(ÿuuuaåÊ•xï½÷pãÆ …¡;‚™±~ÌŒõc²÷o,Ø–4Àº¤¶òFˆ*ôÚ™™B88ðÔ#Lö!xÿ[Y½ç¤"Š"º»»qðàAÕNz/lº“clºCDDDj9sæ >üðCYm÷%…iG1‹‚ÅÁb‡éŸ×s—ùÇì@4ŠppáÀÄ\¨|=Žh$¤úç]³f ^yåÔÕÕñËO‚5úDDDD¢³³øãÿˆãǧížVŽp`.´Eyy9^zé%lݺ•_:ƒ>Ñâ`µZñ /`ÇŽøøãñå—_f=‚³QTTT §§Û·oÏÉ`~ù†MwrŒMwˆˆˆHKccc8yò$þüç?Ãçóååg¨ªªBOO¶mÛÆ€/kô‰ˆˆˆ Xii):„àôéÓ8qâRÍf´··cûöíhkkã(Í úDDDD”ŒÍfÃîÝ»±k×.ôööâÂ… ¸páFFF õ>ÐÕÕ…-[¶Àívó‹Ë›îäØ/>íEß}¿¤i_êôbÓŠ%\iDDD¤Šh4Š[·náÂ… ¸xñ"†‡‡u‡­­­X·nÖ­[‡êêj~1 ú…áîƒ)ÿÇûfQ@[ƒ=ë`5ó°icbb½½½¸yó&z{{qûömÌĮ̀¶|APUU…¥K—¢¡¡­­­hjjb»{}""""ÒS8Æýû÷1::Š‘‘‘Ç×>D0D(Âìì,fgg Íõ“_TT·Ûw™÷uuu°X,\± úDDDDD¤Û öºCDDDT@sc “ÉÄ €AŸDDÄ`A…³ÏÎfßnä\ ÷÷•øY¤Ì_È¿á‚n£Ÿ¯Aœë‘ë…Aë† aòûÏþÿ9ö±ÄçÓ=—éÿ^ʾ@Éþb~%ß}¶¡<ñ¹t÷åL›ÏÌFÚ˜²ì|Ÿß(¡.¥Þ£ÞïA?ÿÃŒv@ù°Ìå{TóµÕXV6ËÈfÞh4ªù÷ï,Ux½N¼ê¹d×J R rö'©¾')[j(OäM&SÚÛ‰óJyý¼Ú?eS£¯F`Pó”’’«šó(-9gSâÖºDn„©ö2ÕZž–c´Ï’«×ÓóOX­×ÊUð2âçÑãûTºÌ\ÔJJ™FÉsjΣä5Ôx^Íí$×á-YøŽ òó—H$²àv²Ç²-d*(=z µV=UHWæ“]AXp;ö±ùûÉ ùø“}­‚¡Ü@+·Ô©ÆsjÝV:’ûj•¾•*´.Hh5­…¹ËÖrz#µß4rÐ×+€Ë}­¦×+kµnÔâz„k¹5˜r›È RRo«=’ûÙ2ô.ðIùLð#‘È‚K8Ny;vžTÁ?ÓQ©©¡_Êö¬äZN° òÉ.¢(Æ]'^’-3þY­  vP—Z²”òœœk5—!÷G’MI[Ë‚…’‚C¶G"ô:’¡×%µ [Z|#ÁÑ­–CþAUšP5ß»šÓ) ×Ù,?›`žM€•ZC)µVSi€Jœ/ÛÐ%§ÆUI­”u®ä$L©Û…ÔÚj¥!?6¤ÏøØK(Š»N¼$ þ‰…‡ÄEº¦A™n§Ê'±÷35¯Iµ I}\N¸ õ¢(Âl6Ç]'ÞŽF£çM¶åSØ7«´äÜ—rå†ót¥äTÓ˽¯öíl É é ùV0Ðòd"5Bp®ß_. 5‹1è)HkžÕØÙ<¯dÞl¼5äÙ„ôLÓH ×r””¥Æ´™Þ“œ†œÔ@;M²ÿ´tËȶp‘¬™NbÀŸ¿Ì<;I þ±µý©šù¤Ê8rrPªÌ’.èËÙnå†ûÄ ?öÃ}l Ÿ¿D"˜Í椟%¶ð(w›Ê‹ ¯4¸©UC/'K òR6b¹?‚tËû>õ.èy4@À¯vAëçµøj×ÒëîÖt'—Mn´ ÄFìrŸË¶‡Z÷•´/–äåâlÃxª•.T¥zN­Ã|Ju껎 d©n§ ¡Ùô£æ_ªÊ:)™%U»þTÍx”f˜t!?]àO÷}&»ê~âc±mêcŽ‚ ëó¦«,M¶]äSà7ËÝa%+½J-¥û!Êýa§zoó׉·å}-jþ¥w9A?ÕtRjôµöZÖìkŠsÈó­ Ób®ÑÏE;–MZŒV#¯uЗSS¯fð×¢m²šá_Ið—;ÔÏ V­¾’¶ÿz…¶T™)6°Îï»EQ\Pœ¯©Eápf³9em~¦¶úÙûL-R­_¹íî•Ôì§kŸØdg¾f?ö±d'éfÚÆ ½¯‹D"’÷ÔÙ¹ljþõh‡ŸM϶æ=Ûöû©ž×»¦^s8ÔØj5QÉõkh±5_ÓèæcŽ«IDAT=»$Tûˆ€5õz²Y†Úó©ÙŸÜ‚ZµÿÉjþ¥ÔšFé2¤Þ—è•ز-¤ª1_ª£î‰!=ñäÛdMtbÛçË øJòKºÖÙ}%Û¨œvÒ€Û¤GÊ ¹z UÙ&öº£E¯zÔ,<(_«ÛRjÎõè™'›^wô<5WÓi¢ó¹ç¡ÅX£¯W¡!_–«wAH‹‚…ÒÞs´*,È-HH ÍZ,›mo=j<¦ÆïXÏžwR5ÁIջޒ.6åV4JÉ@rÂ~6e*d þ‰íùSuµ)¥ ™wA_˺–=ü¨Q¨P#øæcó-ƒd>…Î\v?ÉAÖ ·` öròyþB(\éœ-š3eS`Qûq­ ³Zy%ÿ¹R²ÇC½œP®EgR×±–ÝÈÊiú“lº|øŠ‚¾Ñ‚ƒ^ÐhÓ5 ê y$Ù\…l†{ã‡B}7GNÍåhµzÔFë5p•Q¿£ü+mQé]¯ç´8Y_iaT­#K ú‹8œqUJ€[lA”Á› iG³?³?ßSaí é|+½ ÎjŽÌÌ O sÄíŠhˆÛñ?Ÿ¿}"""""RÀU@DDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDD úDDDDDÄ ODDDDÄ ODDDDDùêÿÊ”€ÐÁÞ+IEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/minimal_data.sql0000644000175000017500000021427513023776357024711 0ustar neilneil00000000000000-- MySQL dump 10.15 Distrib 10.0.28-MariaDB, for debian-linux-gnu (x86_64) -- -- Host: localhost Database: localhost -- ------------------------------------------------------ -- Server version 10.0.28-MariaDB-2 /*!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 utf8mb4 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!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 */; -- -- Dumping data for table `opid` -- LOCK TABLES `opid` WRITE; /*!40000 ALTER TABLE `opid` DISABLE KEYS */; INSERT INTO `opid` VALUES ('USER',NULL,1); /*!40000 ALTER TABLE `opid` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `cbcodes` -- LOCK TABLES `cbcodes` WRITE; /*!40000 ALTER TABLE `cbcodes` DISABLE KEYS */; INSERT INTO `cbcodes` VALUES (1,2,'NHS CASH'),(2,2,'PRIVATE CASH'),(3,2,'NHS CHEQUE'),(4,2,'PRIVATE CHEQUE'),(5,2,'NHS CARD'),(6,2,'PRIVATE CARD'),(9,2,'BANK TRANSFER'),(14,2,'SUNDRY CASH'),(15,2,'SUNDRY CHEQUE'),(17,2,'SUNDRY CARD'),(21,2,'ANNUAL HDP'),(24,2,'OTHER'),(125,2,'REFUND'); /*!40000 ALTER TABLE `cbcodes` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `settings` -- LOCK TABLES `settings` WRITE; /*!40000 ALTER TABLE `settings` DISABLE KEYS */; INSERT INTO `settings` VALUES (1,'wikiurl','http://openmolar.com/wiki',NULL,NULL,NULL,'neil@openmolar.com','2014-06-10 17:52:59'),(2,'Schema_Version','2.9',NULL,NULL,NULL,'neil@openmolar.com','2014-07-01 12:51:30'),(3,'Schema_Version','3.0',NULL,NULL,NULL,'2_9 to 3_0 script','2016-09-14 12:15:42'),(5,'Schema_Version','3.1',NULL,NULL,NULL,'3_0 to 3_1 script','2016-09-14 12:15:45'),(7,'Schema_Version','3.2',NULL,NULL,NULL,'3.1 to 3.2 script','2016-09-14 12:15:48'),(9,'Schema_Version','3.3',NULL,NULL,NULL,'3.2 to 3.3 script','2016-09-14 12:15:50'),(11,'Schema_Version','3.4',NULL,NULL,NULL,'3.3 to 3.4 script','2016-09-14 12:15:52'),(13,'Schema_Version','3.5',NULL,NULL,NULL,'3.4 to 3.5 script','2016-09-14 12:15:56'),(15,'Schema_Version','3.6',NULL,NULL,NULL,'3.5 to 3.6 script','2016-12-12 10:23:00'),(17,'Schema_Version','3.7',NULL,NULL,NULL,'3.6 to 3.7 script','2016-12-12 10:23:02'),(18,'compatible_clients','3.7',NULL,NULL,NULL,'Update script','2016-12-12 10:23:02'); /*!40000 ALTER TABLE `settings` ENABLE KEYS */; UNLOCK TABLES; -- -- Dumping data for table `medications` -- LOCK TABLES `medications` WRITE; /*!40000 ALTER TABLE `medications` DISABLE KEYS */; INSERT INTO `medications` VALUES ('50:50 Ointment',0),('Abacavir Sulphate',0),('Abatacept',0),('Abciximab',0),('Abelcet',0),('Abidec Multivitamin Drops',0),('Abilify',0),('Acamprosate Calcium',0),('Acarbose',0),('Accolate',0),('Accupro',0),('Accuretic',0),('Acea',0),('Acebutolol',0),('Acebutolol Hydrochloride',0),('Aceclofenac',0),('Acemetacin',0),('Acenocoumarol',0),('Acepril',0),('Acetazolamide',0),('Acetic Acid Cough Linctus',0),('Acetylcholine Chloride',0),('Acetylcysteine',0),('Acezide',0),('Aciclovir',0),('Aciclovir Sodium',0),('Acipimox',0),('Acitretin',0),('Aclasta',0),('Acnamino',0),('Acnecide Gel',0),('Acnecide Wash',0),('Acnisal',0),('Acnocin',0),('Acrivastine',0),('Actifed',0),('Actilyse',0),('Activated Charcoal/Magnesium Hydroxide',0),('Actonel',0),('Actonel Combi',0),('Actonorm Gel',0),('Actos',0),('Actrapid',0),('Acular',0),('Acwy Vax',0),('Adalat',0),('Adalimumab',0),('Adapalene',0),('Adartrel',0),('Adcal',0),('Adcal D3',0),('Adcortyl',0),('Adefovir Dipivoxil',0),('Adenocor',0),('Adenosine',0),('Adenuric',0),('Adipine',0),('Adizem',0),('Adrenaline',0),('Adrenaline Acid Tartrate',0),('Advagraf',0),('Aerobec',0),('Afinitor',0),('Aggrastat',0),('Agomelatine',0),('Agrippal',0),('Aknemycin Plus',0),('Aldactide',0),('Aldactone',0),('Aldara',0),('Aldesleukin',0),('Aldioxa/Chloroxylenol',0),('Alemtuzumab',0),('Alendronate Sodium',0),('Alendronate Sodium/Colecalciferol',0),('Alfacalcidol',0),('Alfentanil Hydrochloride',0),('Alfuzosin Hydrochloride',0),('Alimemazine Tartrate',0),('Alimta',0),('Aliskiren',0),('Alitretinoin',0),('Alkeran Injection',0),('Alkeran Tablets',0),('Allantoin/Coal Tar Extract/Hydrocortisone',0),('Allantoin/Lidocaine',0),('Allegron',0),('Allopurinol',0),('Almogran',0),('Almond Oil/Arachis Oil/Camphor',0),('Almotriptan Hydrogen Malate',0),('Alomide',0),('Alphaderm',0),('Alphagan',0),('Alphanine',0),('Alphosyl Hc',0),('Alprazolam',0),('Alprostadil',0),('Altacite Plus',0),('Altargo',0),('Alteplase',0),('Alu-Cap Capsules',0),('Aluminium Hydroxide',0),('Aluminium Sulphate',0),('Alverine',0),('Amantadine Hydrochloride',0),('Amaryl',0),('Ambirix',0),('Ambisome',0),('Ambrisentan',0),('Amias',0),('Amikacin Sulphate',0),('Amikin',0),('Amilamont',0),('Amiloride',0),('Amiloride Hydrochloride',0),('Amiloride/Furosemide',0),('Amiloride/Hydrochlorothiazide',0),('Aminophylline',0),('Amiodarone',0),('Amiodarone Hydrochloride',0),('Amisulpride',0),('Amitriptyline',0),('Amlodipine',0),('Amlodipine Besilate/Valsartan',0),('Amlostin',0),('Ammonia',0),('Ammonia/Eucalyptus',0),('Amorolfine Hydrochloride',0),('Amoxicillin',0),('Amoxil',0),('Amoxil Injection',0),('Amphocil',0),('Amphotericin',0),('Amphotericin Phospholipid Complex',0),('Ampicillin',0),('Ampicillin Sodium/Flucloxacillin Sodium',0),('Amsacrine',0),('Amsidine',0),('Amylase/Lipase/Protease',0),('Anabact',0),('Anacal Rectal Ointment',0),('Anadin Extra Soluble Tablets',0),('Anadin Extra Tablets',0),('Anadin Ibuprofen',0),('Anadin Original',0),('Anadin Paracetamol',0),('Anafranil',0),('Anapen',0),('Anastrozole',0),('Ancotil',0),('Anectine',0),('Anexate',0),('Angeliq',0),('Angettes',0),('Angiox',0),('Angitil',0),('Anidulafungin',0),('Anise Oil/Menthol/Capsicum Tincture',0),('Antabuse',0),('Antazoline/Xylometazoline',0),('Antepsin',0),('Anthisan',0),('Anthisan Bite And Sting Cream',0),('Anugesic-Hc Cream',0),('Anugesic-Hc Suppository',0),('Anusol Cream',0),('Anusol Ointment',0),('Anusol Plus Hc',0),('Anusol Suppositories',0),('Apidra',0),('Apo-Go',0),('Apomorphine Hydrochloride',0),('Apraclonidine Hydrochloride',0),('Aprepitant',0),('Apresoline',0),('Aprinox',0),('Aprovel',0),('Aptivus',0),('Aquadrate',0),('Aranesp',0),('Arava',0),('Arcoxia',0),('Aredia',0),('Argipressin',0),('Aricept',0),('Arimidex',0),('Aripiprazole',0),('Arixtra',0),('Aromasin',0),('Arpicolin',0),('Arsenic Trioxide',0),('Artelac',0),('Artemether/Lumefantrine',0),('Arthrotec',0),('Arythmol',0),('Arzerra',0),('Asacol',0),('Asasantin',0),('Ascorbic Acid/Amylmetacresol/Dichlorobenzyl Alcohol',0),('Ascorbic Acid/Phenylephrine/Paracetamol',0),('Asmabec',0),('Asmanex',0),('Asmasal',0),('Aspirin',0),('Aspirin/Dipyridamole',0),('Aspirin/Paracetamol Dispersible Tablets',0),('Aspro Clear',0),('Atarax',0),('Atazanavir Sulphate',0),('Atenolol',0),('Atenolol/Chlortalidone',0),('Atenolol/Nifedipine',0),('Ativan',0),('Atorvastatin',0),('Atosiban Acetate',0),('Atovaquone/Proguanil Hydrochloride',0),('Atracurium Besilate',0),('Atriance',0),('Atripla',0),('Atropine',0),('Atropine Sulphate',0),('Atrovent',0),('Augmentin',0),('Augmentin Intravenous',0),('Augmentin-Duo',0),('Avamys',0),('Avastin',0),('Avaxim',0),('Avelox',0),('Avloclor',0),('Avodart',0),('Avonex',0),('Axid',0),('Axsain',0),('Azactam',0),('Azathioprine',0),('Azelaic Acid',0),('Azelastine Hydrochloride',0),('Azilect',0),('Azithromycin',0),('Azithromycin Dihydrate',0),('Azopt',0),('Aztreonam',0),('Baby Meltus Cough Linctus',0),('Baclofen',0),('Bactroban',0),('Balneum Bath Oil',0),('Balneum Plus Bath Oil',0),('Balneum Plus Cream',0),('Balsalazide Disodium',0),('Bambec',0),('Bambuterol',0),('Baraclude',0),('Baratol',0),('Basiliximab',0),('Baxan',0),('Bazetham',0),('Bazuka',0),('Bcg (Connaught Strain)',0),('Bcg (Tice Strain)',0),('Beclazone',0),('Beclometasone Dipropionate',0),('Becodisks',0),('Beconase',0),('Bedranol',0),('Beechams',0),('Begrivac',0),('Belimumab',0),('Bemiparin',0),('Bemiparin Sodium',0),('Benadryl',0),('Benadryl Skin Allergy Relief Cream',0),('Bendroflumethiazide',0),('Benefix',0),('Benlysta',0),('Benylin',0),('Benzalkonium Chloride',0),('Benzocaine 1% Spray',0),('Benzoyl Peroxide',0),('Benzydamine Cream',0),('Benzydamine Mouthwash',0),('Benzydamine Oral Spray',0),('Benzylpenicillin Sodium',0),('Beta-Adalat',0),('Beta-Cardone',0),('Beta-Prograne',0),('Betacap',0),('Betadine Dry Powder Spray',0),('Betaferon',0),('Betagan',0),('Betahistine Dihydrochloride',0),('Betaloc',0),('Betamethasone Dipropionate',0),('Betamethasone Valerate',0),('Betaxolol Hydrochloride',0),('Bethanechol Chloride',0),('Betim',0),('Betnovate',0),('Betoptic',0),('Bettamousse',0),('Bevacizumab',0),('Bexarotene',0),('Bezafibrate',0),('Bezalip',0),('Bi-Carzem',0),('Bicalutamide',0),('Bicnu',0),('Bimatoprost',0),('Binovum',0),('Biorphen',0),('Bisacodyl Suppositories',0),('Bisacodyl Tablets',0),('Bismuth Subsalicylate',0),('Bisodol Indigestion Relief Tablets',0),('Bisoprolol Fumarate',0),('Bivalirudin',0),('Bleo-Kyowa',0),('Bleomycin Sulphate',0),('Blistex Relief Cream',0),('Bondronat',0),('Bonefos',0),('Bonjela',0),('Bonviva',0),('Bortezomib',0),('Bosentan',0),('Botox',0),('Brevinor',0),('Brevoxyl Cream',0),('Bricanyl',0),('Bridion',0),('Brilique',0),('Brimonidine Tartrate',0),('Brinzolamide',0),('Brochlor',0),('Broflex',0),('Bromocriptine Mesilate',0),('Brufen',0),('Buccastem',0),('Budesonide',0),('Bumetanide',0),('Bupivacaine Hydrochloride',0),('Bupropion Hydrochloride',0),('Burinex',0),('Burneze Spray',0),('Buscopan',0),('Buserelin Acetate',0),('Busilvex',0),('Buspar',0),('Buspirone',0),('Busulfan',0),('Buttercup Max Strength Sore Throat Lozenge',0),('Buttercup Syrup',0),('Bydureon',0),('Byetta',0),('Cabaser',0),('Cabergoline',0),('Cabren',0),('Cacit',0),('Caelyx',0),('Calaband',0),('Calceos',0),('Calchan',0),('Calcicard',0),('Calcichew',0),('Calcijex',0),('Calcipotriol',0),('Calcitonin (Salmon)',0),('Calcitriol',0),('Calcium Acetate',0),('Calcium Carbonate Antacids',0),('Calcium Carbonate Supplements',0),('Calcium Folinate',0),('Calcium Lactate',0),('Calcium Levofolinate',0),('Calcium Phosphate/Colecalciferol',0),('Calcium-Sandoz Syrup',0),('Calcold Six Plus',0),('Calcort',0),('Calfovit D3',0),('Calmurid Hc',0),('Calpol',0),('Calprofen',0),('Camcolit',0),('Campto',0),('Cancidas',0),('Candesartan',0),('Canesten',0),('Canusal',0),('Capecitabine',0),('Capoten',0),('Capozide',0),('Capreomycin Sulphate',0),('Caprin',0),('Capsaicin',0),('Captopril',0),('Captopril/Hydrochlorothiazide',0),('Carace Plus',0),('Caramet',0),('Carbamazepine',0),('Carbetocin',0),('Carbidopa Monohydrate/Levodopa',0),('Carbidopa/Entacapone/Levodopa',0),('Carbimazole',0),('Carbo-Dome Cream',0),('Carbocisteine',0),('Carbomer',0),('Carbomer Eye Drops',0),('Carboplatin',0),('Carboprost Trometamol',0),('Cardene',0),('Cardicor',0),('Cardioplen',0),('Cardioxane',0),('Cardura',0),('Carmellose Sodium',0),('Carmustine',0),('Casodex',0),('Caspofungin Acetate',0),('Catapres',0),('Caverject',0),('Cayston',0),('Ceanel',0),('Cedocard',0),('Cefaclor Monohydrate',0),('Cefadroxil Monohydrate',0),('Cefalexin',0),('Cefixime',0),('Cefotaxime Sodium',0),('Cefpodoxime Proxetil',0),('Ceftazidime Pentahydrate',0),('Ceftriaxone Sodium',0),('Cefuroxime Axetil',0),('Cefuroxime Sodium',0),('Celance',0),('Celebrex',0),('Celecoxib',0),('Celectol',0),('Celevac Tablets',0),('Celiprolol',0),('Celiprolol Hydrochloride',0),('Cellcept',0),('Cellcept Powder',0),('Celluvisc',0),('Celsentri',0),('Ceplene',0),('Ceporex',0),('Cerazette',0),('Certolizumab Pegol',0),('Cervarix',0),('Cetirizine Liquid',0),('Cetirizine Tablets',0),('Cetraben Bath Additive',0),('Cetraben Emollient Cream',0),('Cetrimide',0),('Cetrimide/Benzalkonium Chloride',0),('Cetrorelix Acetate',0),('Cetrotide',0),('Cetuximab',0),('Cetylpyridinium Chloride Lozenges',0),('Cetylpyridinium Chloride/Menthol',0),('Champix',0),('Chemydur',0),('Chirocaine',0),('Chlorambucil',0),('Chloramphenicol',0),('Chloramphenicol Sodium Succinate',0),('Chlordiazepoxide',0),('Chlordiazepoxide Hydrochloride',0),('Chlorobutanol/Arachis Oil',0),('Chlorobutanol/Lidocaine/Alcloxa/Cetrimide',0),('Chlorocresol/Urea/Cetrimide/Dimeticone',0),('Chloromycetin',0),('Chloroquine',0),('Chloroxylenol',0),('Chlorphenamine Maleate',0),('Chlorpromazine Hydrochloride',0),('Chlortalidone',0),('Cholestagel',0),('Choline Salicylate',0),('Choragon',0),('Choriogonadotropin Alfa',0),('Chorionic Gonadotrophin Human',0),('Cialis',0),('Cibral',0),('Cicafem',0),('Ciclesonide',0),('Ciclosporin',0),('Cidofovir',0),('Cilastatin Sodium/Imipenem Monohydrate',0),('Cilazapril',0),('Cilest',0),('Cilostazol',0),('Cimetidine',0),('Cimzia',0),('Cinacalcet Hydrochloride',0),('Cinchocaine',0),('Cinnarizine',0),('Cipralex',0),('Cipramil',0),('Cipramil Drops',0),('Ciprofibrate',0),('Ciprofloxacin',0),('Ciprofloxacin Hydrochloride',0),('Ciprofloxacin Lactate',0),('Ciproxin Injection',0),('Ciproxin Suspension',0),('Ciproxin Tablets',0),('Circadin',0),('Cisatracurium Besilate',0),('Cisplatin',0),('Citalopram Hydrobromide',0),('Citalopram Hydrochloride',0),('Citanest',0),('Citric Acid/Ipecacuanha',0),('Cladribine',0),('Claforan',0),('Clairette',0),('Clarelux',0),('Clarie Xl',0),('Clarithromycin',0),('Clemastine',0),('Clenil Modulite',0),('Clexane',0),('Climagest',0),('Climaval',0),('Climesse',0),('Clindamycin Hydrochloride',0),('Clindamycin Phosphate',0),('Clioquinol/Flumetasone Pivalate',0),('Clobazam',0),('Clobetasol Propionate',0),('Clobetasone Butyrate',0),('Clofarabine',0),('Clomethiazole',0),('Clomid',0),('Clomifene Citrate',0),('Clomipramine',0),('Clonazepam',0),('Clonidine',0),('Clopamide/Pindolol',0),('Clopidogrel',0),('Clopixol Acuphase',0),('Clopixol Conc',0),('Clopixol Tablets',0),('Clotam',0),('Clotrimazole',0),('Clozapine',0),('Clozaril',0),('Co-Beneldopa',0),('Co-Careldopa',0),('Co-Danthramer',0),('Co-Diovan',0),('Co-Fluampicil',0),('Co-Magaldrox',0),('Co-Simalcite',0),('Co-Trimoxazole',0),('Co-Zidocapt',0),('Coaprovel',0),('Cobalin-H',0),('Codeine/Paracetamol',0),('Colazide',0),('Colchicine',0),('Colecalciferol/Calcium Carbonate',0),('Colesevelam Hydrochloride',0),('Colestid',0),('Colestipol',0),('Colestipol Hydrochloride',0),('Colestyramine Anhydrous',0),('Colifoam',0),('Colistimethate Sodium',0),('Colistin Sulphate',0),('Colofac',0),('Colomycin',0),('Colomycin Injection',0),('Colomycin Syrup',0),('Colomycin Tablet',0),('Colpermin Ibs Relief Capsules',0),('Combigan',0),('Combivent',0),('Combivir',0),('Combodart',0),('Competact',0),('Compound W',0),('Comtess',0),('Concerta Xl',0),('Condyline',0),('Conjugated Oestrogens',0),('Copaxone',0),('Copegus',0),('Coracten',0),('Cordarone X',0),('Cordilox',0),('Corgard',0),('Corifollitropin Alfa',0),('Cortisone Acetate',0),('Cosmofer',0),('Cosopt',0),('Coversyl Arginine',0),('Coversyl Arginine Plus',0),('Cozaar',0),('Cozaar-Comp',0),('Cream Of Magnesia Tablets',0),('Creon',0),('Crestor',0),('Crinone',0),('Cromogen',0),('Crotamiton',0),('Cubicin',0),('Cuprofen',0),('Cuprofen Plus',0),('Cutivate',0),('Cyanocobalamin',0),('Cyclizine Lactate',0),('Cyclo-Progynova 2Mg',0),('Cyclopentolate Hydrochloride',0),('Cyclophosphamide Monohydrate',0),('Cycloserine',0),('Cyklokapron',0),('Cymalon',0),('Cymbalta',0),('Cymevene',0),('Cymex Cream',0),('Cyproheptadine',0),('Cyprostat',0),('Cyproterone Acetate',0),('Cyproterone Acetate/Ethinylestradiol',0),('Cystrin',0),('Cytamen',0),('Cytarabine',0),('Cytotec',0),('D-Gam',0),('Dabigatran Etexilate Mesilate',0),('Dacarbazine Citrate',0),('Daktacort',0),('Daktarin Oral Gel',0),('Dalacin',0),('Dalacin C',0),('Dalmane',0),('Dalteparin',0),('Danaparoid',0),('Danazol',0),('Dandrazol',0),('Danol',0),('Dantrium',0),('Dantrolene Sodium',0),('Daptomycin',0),('Daraprim',0),('Darbepoetin Alfa',0),('Darifenacin Hydrobromide',0),('Darunavir Ethanolate',0),('Dasatinib',0),('Daunorubicin Hydrochloride Citrate',0),('Daunoxome',0),('Daxas',0),('Day Nurse',0),('Day Nurse Capsules',0),('Ddavp',0),('Deca-Durabolin',0),('Decapeptyl',0),('Defanac',0),('Deferasirox',0),('Deferiprone',0),('Deflazacort',0),('Deltacortril',0),('Deltastab',0),('Demeclocycline Hydrochloride',0),('Denosumab',0),('Denzapine',0),('Depakote',0),('Depixol',0),('Depixol Tablets',0),('Depo-Medrone',0),('Depo-Medrone With Lidocaine',0),('Depo-Provera',0),('Depocyte',0),('Dequacaine',0),('Dequadin',0),('Dequalinium',0),('Derbac M',0),('Dermalo Bath Emollient',0),('Dermamist',0),('Dermax',0),('Dermidex',0),('Dermovate',0),('Deseril',0),('Desferal',0),('Desferrioxamine Mesilate',0),('Desloratadine',0),('Desmomelt',0),('Desmopressin Acetate',0),('Desmospray',0),('Desmotabs',0),('Desogestrel',0),('Destolit',0),('Detrunorm',0),('Detrusitol',0),('Dexamethasone',0),('Dexibuprofen',0),('Dexketoprofen Trometamol',0),('Dexomon',0),('Dexrazoxane',0),('Dexsol',0),('Dextromethorphan',0),('Dextromethorphan/Menthol',0),('Dextromethorphan/Pseudoephedrine',0),('Dhc Continus',0),('Diamicron',0),('Diamorphine',0),('Diamox',0),('Dianette',0),('Diazemuls',0),('Diazepam',0),('Dichlorobenzyl Alcohol/Amylmetacresol',0),('Diclofenac Diethylammonium',0),('Diclofenac Epolamine',0),('Diclofenac Potassium',0),('Diclofenac Sodium',0),('Diclofenac Sodium/Misoprostol',0),('Dicloflex',0),('Diclomax',0),('Dicycloverine Hydrochloride',0),('Dicynene',0),('Didanosine',0),('Didronel',0),('Didronel Pmo',0),('Diethylamine Salicylate',0),('Differin',0),('Difflam Cream',0),('Difflam Solution',0),('Difflam Spray',0),('Diflucan',0),('Digoxin',0),('Dihydrocodeine Tartrate',0),('Dilcardia',0),('Dill Oil/Sodium Bicarbonate/Ginger',0),('Diloxanide Furoate',0),('Diltiazem',0),('Diltiazem Hydrochloride',0),('Dilzem',0),('Dimeticone',0),('Dinoprostone',0),('Diocalm',0),('Dioctyl',0),('Dioderm',0),('Dioralyte',0),('Dioralyte Relief',0),('Diovan',0),('Dipentum',0),('Diphenhydramine',0),('Dipivefrine Hydrochloride',0),('Diprivan',0),('Diprobase Cream',0),('Diprobase Ointment',0),('Diprobath',0),('Diprosalic',0),('Diprosone',0),('Dipyridamole',0),('Disipal',0),('Disodium Etidronate',0),('Disodium Folinate',0),('Disodium Pamidronate',0),('Disopyramide',0),('Disopyramide Phosphate',0),('Disprin',0),('Disprin Extra',0),('Distaclor',0),('Distamine',0),('Distigmine Bromide',0),('Distilled Witch Hazel',0),('Disulfiram',0),('Dithranol',0),('Dithrocream',0),('Ditropan',0),('Diurexan',0),('Dixarit',0),('Do-Do Chesteze',0),('Dobutamine Hydrochloride',0),('Docetaxel',0),('Docusate',0),('Docusate Gel Enema',0),('Docusate Sodium Ear Drops',0),('Dolmatil',0),('Domperidone',0),('Domperidone Maleate',0),('Dopamine',0),('Dopamine Hydrochloride',0),('Dopexamine',0),('Doralese Tiltab',0),('Doribax',0),('Doripenem Monohydrate',0),('Dornase Alfa',0),('Dorzolamide Hydrochloride',0),('Dorzolamide Hydrochloride/Timolol Maleate',0),('Doublebase Bath Additive',0),('Doublebase Gel',0),('Doublebase Shower Gel',0),('Doublebase Wash Gel',0),('Dovobet',0),('Dovonex',0),('Dovonex Cream',0),('Doxadura',0),('Doxazosin',0),('Doxazosin Mesilate',0),('Doxorubicin Hydrochloride',0),('Doxorubin',0),('Doxycycline Hyclate',0),('Doxycycline Monohydrate',0),('Doxylamine/Pseudoephedrine/Dextromethorphan/Paracetamol',0),('Doxylar',0),('Dozic',0),('Drapolene Cream',0),('Dromadol',0),('Dronedarone Hydrochloride',0),('Drospirenone/Estradiol Hemihydrate',0),('Drospirenone/Ethinylestradiol',0),('Drotrecogin Alfa',0),('Droxia',0),('Duac',0),('Dukoral',0),('Dulcobalance',0),('Dulcoease',0),('Dulcolax Suppositories',0),('Dulcolax Tablets',0),('Duloxetine',0),('Duloxetine Hydrochloride',0),('Duodopa',0),('Duofilm',0),('Duotrav',0),('Duovent',0),('Dutasteride',0),('Dydrogesterone/Estradiol',0),('Dysport',0),('E45 Cream',0),('E45 Itch Relief Cream',0),('Earex Ear Drops',0),('Earex Plus',0),('Easyhaler Beclometasone',0),('Easyhaler Budesonide',0),('Easyhaler Formoterol',0),('Easyhaler Salbutamol',0),('Ebixa',0),('Ecalta',0),('Eccoxolac',0),('Econac',0),('Econazole Nitrate',0),('Ecopace',0),('Eczmol',0),('Edronax',0),('Edrophonium Chloride',0),('Efavirenz',0),('Efcortesol',0),('Efexor',0),('Efient',0),('Eflornithine Monohydrate Chloride',0),('Efudix',0),('Eldepryl',0),('Electrolade',0),('Eletriptan Hydrobromide',0),('Elidel',0),('Ellaone',0),('Elleste Solo',0),('Ellimans Universal Muscle Rub Lotion',0),('Elocon',0),('Elonva',0),('Eloxatin',0),('Eludril Mouthwash',0),('Eludril Spray',0),('Emadine',0),('Emcor',0),('Emedastine Difumarate',0),('Emend',0),('Emeside',0),('Emflex',0),('Emla',0),('Emselex',0),('Emtricitabine',0),('Emtricitabine/Tenofovir Disoproxil Fumarate',0),('Emtriva',0),('Emulsiderm Emollient',0),('Enalapril',0),('Enalapril/Hydrochlorothiazide',0),('Enbrel',0),('Endoxana',0),('Enfuvirtide',0),('Engerix B',0),('Eno',0),('Enoxaparin',0),('Enoxaparin Sodium',0),('Entacapone',0),('Entecavir Monohydrate',0),('Entocort',0),('Enzira',0),('Epanutin Capsules',0),('Epanutin Infatabs',0),('Epanutin Ready Mixed Parenteral',0),('Epanutin Suspension',0),('Epaxal',0),('Ephedrine Hydrochloride',0),('Ephedrine Hydrochloride/Chlorphenamine',0),('Ephedrine Nasal Drops',0),('Epilim',0),('Epinastine Hydrochloride',0),('Epipen',0),('Epirubicin Hydrochloride',0),('Epival',0),('Epivir',0),('Eplerenone',0),('Epoetin Alfa',0),('Epoetin Beta',0),('Epoprostenol',0),('Eposin',0),('Eprex',0),('Eprosartan',0),('Eprosartan Mesilate',0),('Epsom Salts',0),('Eptacog Alfa',0),('Eptifibatide',0),('Erbitux',0),('Erdosteine',0),('Erdotin',0),('Ergometrine Maleate',0),('Ergometrine Maleate/Oxytocin',0),('Erlotinib Hydrochloride',0),('Ertapenem Sodium',0),('Eryacne 4',0),('Erymax',0),('Erythrocin',0),('Erythromycin',0),('Erythromycin Ethyl Succinate',0),('Erythromycin Lactobionate',0),('Erythromycin Stearate',0),('Erythromycin/Isotretinoin',0),('Erythromycin/Tretinoin',0),('Erythromycin/Zinc Acetate',0),('Erythroped',0),('Escitalopram',0),('Escitalopram Oxalate',0),('Esmeron',0),('Esmya',0),('Esomeprazole Injection',0),('Esomeprazole Tablets',0),('Estracyt',0),('Estraderm',0),('Estradiol',0),('Estradiol Hemihydrate',0),('Estradiol Hemihydrate/Norethisterone Acetate',0),('Estradiol Valerate',0),('Estradiol Valerate/Medroxyprogesterone',0),('Estradiol Valerate/Medroxyprogesterone Acetate',0),('Estradiol Valerate/Norethisterone',0),('Estradiol Valerate/Norgestrel',0),('Estradiol/Estriol/Estrone',0),('Estradiol/Levonorgestrel',0),('Estradiol/Norethisterone Acetate',0),('Estradot',0),('Estramustine Sodium Phosphate',0),('Estring',0),('Estriol',0),('Estropipate',0),('Etamsylate',0),('Etanercept',0),('Ethanolamine',0),('Ethinylestradiol',0),('Ethinylestradiol/Etonogestrel',0),('Ethinylestradiol/Gestodene',0),('Ethinylestradiol/Levonorgestrel',0),('Ethinylestradiol/Norelgestromin',0),('Ethinylestradiol/Norethisterone',0),('Ethinylestradiol/Norethisterone Acetate',0),('Ethinylestradiol/Norgestimate',0),('Ethosuximide',0),('Etodolac',0),('Etomidate',0),('Etonogestrel',0),('Etopophos',0),('Etoposide',0),('Etoposide Phosphate',0),('Etoricoxib',0),('Etravirine',0),('Etynodiol Diacetate',0),('Eucalyptus/Menthol/Cetylpyridinium Chloride',0),('Eucalyptus/Terpineol/Methyl Salicylate/Menthol/Camphor',0),('Eucalyptus/Thyme/Menthol',0),('Eucalyptus/Turpentine/Levomenthol/Camphor',0),('Eucalyptus/Turpentine/Methyl Salicylate/Menthol',0),('Eucreas',0),('Eumocream',0),('Eumovate',0),('Eurax',0),('Eurax Hydrocortisone',0),('Everolimus',0),('Evista',0),('Evoltra',0),('Evorel',0),('Evorel Conti',0),('Evorel Sequi',0),('Evra',0),('Ex-Lax Senna',0),('Exelon',0),('Exelon Patches',0),('Exemestane',0),('Exenatide',0),('Exforge',0),('Exjade',0),('Exocin',0),('Exorex Lotion',0),('Extavia',0),('Exterol',0),('Ezetimibe',0),('Ezetimibe/Simvastatin',0),('Ezetrol',0),('Factor Ii/Factor Vii/Protein S/Factor X/Protein C/Factor Ix',0),('Factor Ix High Purity',0),('Factor Viii/Von Willebrand Factor',0),('Factor Xiii',0),('Famciclovir',0),('Family Meltus Chesty Coughs',0),('Famotidine',0),('Famotidine/Calcium Carbonate/Magnesium Hydroxide',0),('Famvir',0),('Fareston',0),('Fasigyn',0),('Faslodex',0),('Faverin',0),('Febuxostat',0),('Felbinac',0),('Feldene',0),('Felendil',0),('Felodipine',0),('Felodipine/Ramipril',0),('Felogen',0),('Felotens',0),('Femapak',0),('Femara',0),('Fematrix',0),('Femodene',0),('Femodette',0),('Femoston',0),('Femseven Conti',0),('Femseven Patches',0),('Femseven Sequi',0),('Femulen',0),('Fenactol',0),('Fendrix',0),('Fenistil',0),('Fenofibrate',0),('Fenofibrate Micronised',0),('Fenoterol/Ipratropium',0),('Fenticonazole Nitrate',0),('Ferinject',0),('Ferric Carboxymaltose',0),('Ferriprox',0),('Ferrous Fumarate',0),('Ferrous Fumarate/Folic Acid',0),('Ferrous Sulphate Tablets',0),('Ferrous Sulphate/Ascorbic Acid',0),('Fersaday',0),('Fersamal',0),('Fesoterodine Fumarate',0),('Fexofenadine Hydrochloride',0),('Fibrazate',0),('Fibro-Vein',0),('Fibrogammin P',0),('Filgrastim',0),('Finacea',0),('Finasteride',0),('Fingolimod Hydrochloride',0),('Flagyl',0),('Flagyl-S',0),('Flamatak',0),('Flamrase',0),('Flavoxate Hydrochloride',0),('Flecainide',0),('Flecainide Acetate',0),('Flexin',0),('Flixonase',0),('Flixonase Allergy',0),('Flixotide',0),('Flolan',0),('Flomaxtra',0),('Florinef',0),('Floxapen',0),('Fluanxol',0),('Fluarix',0),('Flucloxacillin Sodium',0),('Fluconazole',0),('Fluconazole And Clotrimazole',0),('Flucytosine',0),('Fludara',0),('Fludarabine Phosphate',0),('Fludrocortisone Acetate',0),('Fluimucil N',0),('Flumazenil',0),('Fluorescein Sodium/Lidocaine Hydrochloride',0),('Fluorescein Sodium/Proxymetacaine Hydrochloride',0),('Fluorometholone',0),('Fluorouracil',0),('Fluorouracil Sodium',0),('Fluoxetine',0),('Flupentixol',0),('Flupentixol Decanoate',0),('Flupentixol Dihydrochloride',0),('Fluphenazine Decanoate',0),('Flurazepam',0),('Flurazepam Hydrochloride',0),('Flurbiprofen',0),('Flurbiprofen Sodium',0),('Fluticasone Furoate',0),('Fluticasone Propionate',0),('Fluticasone/Salmeterol',0),('Fluvastatin',0),('Fluvastatin Sodium',0),('Fluvirin',0),('Fluvoxamine',0),('Fluvoxamine Maleate',0),('Fml',0),('Folic Acid',0),('Follitropin Alfa',0),('Follitropin Alfa/Lutropin Alfa',0),('Follitropin Beta',0),('Fondaparinux',0),('Foradil',0),('Forceval',0),('Formaldehyde',0),('Formoterol Fumarate Dihydrate',0),('Forsteo',0),('Fortipine',0),('Fortum',0),('Fosamax',0),('Fosamprenavir Calcium',0),('Fosavance',0),('Foscarnet Sodium',0),('Foscavir',0),('Fosinopril',0),('Fosphenytoin Sodium',0),('Fosrenol',0),('Fostair',0),('Fragmin',0),('Freederm Gel',0),('Frisium',0),('Froben',0),('Frovatriptan Succinate Monohydrate',0),('Fru-Co',0),('Frumil',0),('Frusene',0),('Frusol',0),('Fucibet',0),('Fucidin Cream',0),('Fucidin H',0),('Fucidin H Ointment',0),('Fucidin Ointment',0),('Fucidin Suspension',0),('Fucidin Tablets',0),('Fucithalmic',0),('Fulvestrant',0),('Fungizone',0),('Furadantin',0),('Furosemide',0),('Furosemide/Spironolactone',0),('Furosemide/Triamterene',0),('Fusidic Acid',0),('Fusidic Acid/Hydrocortisone Acetate',0),('Fuzeon',0),('Fybogel',0),('Fybogel Mebeverine',0),('Gabapentin',0),('Gabitril',0),('Gadobutrol',0),('Gadoteridol',0),('Gadovist',0),('Gadoxetate Disodium',0),('Galantamine Hydrobromide',0),('Galvus',0),('Gamanil',0),('Ganciclovir Sodium',0),('Ganfort',0),('Ganirelix',0),('Gardasil',0),('Garlic Oil/Garlic/Echinacea',0),('Gastrobid',0),('Gastrocote Liquid',0),('Gastrocote Tablets',0),('Gaviscon Advance',0),('Gaviscon Cool Tablets',0),('Gaviscon Double Action',0),('Gaviscon Extra Strength Tablets',0),('Gaviscon Infant Oral Powder',0),('Gaviscon Liquid Sachets',0),('Gaviscon Tablets',0),('Gefitinib',0),('Geltears',0),('Gemcitabine Hydrochloride',0),('Gemeprost',0),('Gemfibrozil',0),('Gemzar',0),('Generic Abidec Multivitamin Drops',0),('Generic Actonorm Powder',0),('Generic Alginate/Aluminium Hydroxide/Magnesium Carbonate',0),('Generic Antitis Tablets',0),('Generic Calcimax Liquid',0),('Generic Catarrh Relief Mixture',0),('Generic Cetanorm Cream',0),('Generic Chest Mixture',0),('Generic Cymalon Granules',0),('Generic Dalivit Oral Drops',0),('Generic Deep Heat Spray',0),('Generic Diocalm',0),('Generic Dioralyte Powder',0),('Generic Dioralyte Relief',0),('Generic Diprobase Cream',0),('Generic Dubam Cream',0),('Generic Dulbalm Cream',0),('Generic Electrolade Powder',0),('Generic Fiery Jack Cream',0),('Generic Forceval Capsules',0),('Generic Germolene Antiseptic Ointment',0),('Generic Glycerin, Honey And Lemon Linctus',0),('Generic Indian Brandee',0),('Generic Karvol Decongestant Capsules',0),('Generic Karvol Decongestant Drops',0),('Generic Ketovite Liquid',0),('Generic Laxido',0),('Generic Lipobase',0),('Generic Metanium Barrier Ointment',0),('Generic Meted Shampoo',0),('Generic Molaxole Powder',0),('Generic Oxymetazoline',0),('Generic Pharmaton Vitality Capsules',0),('Generic Phytex',0),('Generic Polytar Af Liquid',0),('Generic Polytar Emollient',0),('Generic Polytar Liquid',0),('Generic Polytar Plus Liquid',0),('Generic Potter\'S Strong Bronchial Catarrh Pastilles',0),('Generic Potter\'S Sugar Free Cough Pastilles',0),('Generic Radian B Muscle Lotion',0),('Generic Rehydration Powder',0),('Generic Resolve Effervescent Granules',0),('Generic Sciargo Tablets',0),('Generic Senokot Comfort Tablets',0),('Generic Senokot Dual Relief Tablets',0),('Generic Sudocrem Cream',0),('Generic Tcp Antiseptic Cream',0),('Generic Tcp Antiseptic Ointment',0),('Generic Throaties Strong Original Pastilles',0),('Generic Transvasin Spray',0),('Generic Ultrabase',0),('Generic Unguentum M Cream',0),('Generic Vadarex Ointment',0),('Generic Vegetable Cough Remover Elixir',0),('Genotropin',0),('Gentamicin Sulphate',0),('Gentamicin Sulphate/Hydrocortisone Acetate',0),('Gentisone',0),('Germolene Antiseptic Cream',0),('Germolene Antiseptic First Aid Wash',0),('Germolene Antiseptic Ointment',0),('Germoloids Cream',0),('Germoloids Duo Pack',0),('Germoloids Hc Spray',0),('Germoloids Ointment',0),('Germoloids Suppositories',0),('Gestone',0),('Gestrinone',0),('Gilenya',0),('Glatiramer Acetate',0),('Gliadel',0),('Glibenese',0),('Gliclazide',0),('Glimepiride',0),('Glipizide',0),('Glivec',0),('Glucagen',0),('Glucagon',0),('Glucobay',0),('Glucophage',0),('Glucose Anhydrous',0),('Glucose/Treacle Cough Mixture',0),('Glutaraldehyde',0),('Glutarol',0),('Glycerin And Blackcurrant Cough Syrup',0),('Glycerin, Honey And Lemon Linctus',0),('Glycerin, Honey, Lemon And Ipecacuanha Linctus',0),('Glycerol Cream',0),('Glycerol Oral Solution',0),('Glycerol Skin Wash',0),('Glycerol/Glucose Cough Mixture',0),('Glycerol/Sucrose Cough Mixture',0),('Glycerol/Syrup/Citric Acid/Honey/Lemon',0),('Glycerol/White Soft Paraffin/Liquid Paraffin',0),('Glyceryl Trinitrate',0),('Glycopyrronium Bromide',0),('Goddards Muscle Lotion',0),('Golimumab',0),('Gonapeptyl',0),('Gopten',0),('Goserelin Acetate',0),('Granisetron Hydrochloride',0),('Granocyte-13',0),('Grass Pollen Extract',0),('Grazax',0),('Griseofulvin',0),('Grisol Af',0),('Guaiacol/Codeine',0),('Guaifenesin',0),('Guaifenesin/Ammonium Chloride/Ammonium Carbonate',0),('Guaifenesin/Cetylpyridinium Chloride',0),('Guaifenesin/Levomenthol',0),('Guaifenesin/Pseudoephedrine',0),('Guaifenesin/Treacle/Glucose',0),('Guanethidine',0),('Guanethidine Monosulphate',0),('Gygel',0),('Gyno-Daktarin',0),('Gyno-Pevaryl',0),('Gynoxin',0),('Haemate P',0),('Haemorrhoid Relief Ointment',0),('Haldol',0),('Haldol Decanoate',0),('Halogenated Phenols/Phenol',0),('Haloperidol',0),('Haloperidol Decanoate',0),('Hamol Senna Tablets',0),('Happinose',0),('Harmogen',0),('Havrix',0),('Haymine Tablets',0),('Hbvaxpro',0),('Hedex',0),('Hedex Extra',0),('Hedex Ibuprofen',0),('Helixate Nexgen',0),('Hemabate',0),('Heminevrin Capsules',0),('Heparin Sodium',0),('Hepatyrix',0),('Hepsal',0),('Hepsera',0),('Herceptin',0),('Herpid',0),('Hexetidine',0),('Hexopal',0),('Hexylresorcinol',0),('Hexylresorcinol/Benzalkonium Chloride',0),('Hiprex',0),('Histac',0),('Histamine Dihydrochloride',0),('Honey/Glucose/Lemon',0),('Honey/Menthol',0),('Horizem',0),('Hormonin',0),('Humalog',0),('Humalog Mix',0),('Humatrope',0),('Humira',0),('Humulin I',0),('Humulin M3',0),('Humulin S',0),('Hyaluronidase',0),('Hycamtin',0),('Hydralazine',0),('Hydralazine Hydrochloride',0),('Hydrea',0),('Hydrochlorothiazide/Irbesartan',0),('Hydrochlorothiazide/Losartan',0),('Hydrochlorothiazide/Olmesartan',0),('Hydrochlorothiazide/Olmesartan Medoxomil',0),('Hydrochlorothiazide/Quinapril',0),('Hydrochlorothiazide/Telmisartan',0),('Hydrochlorothiazide/Valsartan',0),('Hydrocortisone',0),('Hydrocortisone Acetate',0),('Hydrocortisone Acetate/Lidocaine',0),('Hydrocortisone Acetate/Pramocaine Hydrochloride',0),('Hydrocortisone Acetate/Sodium Fusidate',0),('Hydrocortisone Butyrate',0),('Hydrocortisone Sodium Phosphate',0),('Hydrocortisone Sodium Succinate',0),('Hydrocortisone/Lactic Acid/Urea',0),('Hydrocortisone/Lidocaine',0),('Hydrocortisone/Miconazole Nitrate',0),('Hydrocortisone/Neomycin Sulphate/Polymyxin B Sulphate',0),('Hydrocortisone/Urea',0),('Hydrocortistab',0),('Hydroflumethiazide/Spironolactone',0),('Hydromol Bath And Shower Emollient',0),('Hydromol Cream',0),('Hydrotalcite Suspension',0),('Hydroxocobalamin',0),('Hydroxycarbamide',0),('Hydroxychloroquine',0),('Hydroxychloroquine Sulphate',0),('Hydroxyethyl Salicylate/Methyl Nicotinate',0),('Hydroxyethyl Salicylate/Methyl Nicotinate/Capsicum Oleoresin',0),('Hydroxyzine Hydrochloride',0),('Hyetellose',0),('Hygroton',0),('Hyoscine',0),('Hyoscine Butylbromide',0),('Hyoscine Hydrobromide',0),('Hypnomidate',0),('Hypnovel',0),('Hypolar',0),('Hypovase',0),('Hypromellose',0),('Hypromellose/Dextran 70',0),('Hypurin Bovine Isophane',0),('Hypurin Bovine Lente',0),('Hypurin Bovine Neutral',0),('Hypurin Bovine Protamine Zinc',0),('Hypurin Porcine',0),('Hypurin Porcine Isophane',0),('Hypurin Porcine Neutral',0),('Hytrin',0),('Ibandronic Sodium Monohydrate',0),('Ibufem',0),('Ibuprofen',0),('Ibuprofen/Codeine Phosphate',0),('Ibuprofen/Levomenthol',0),('Ibuprofen/Phenylephrine',0),('Ibuprofen/Pseudoephedrine',0),('Idarubicin Hydrochloride',0),('Idoxuridine',0),('Iglu Gel',0),('Ikorel',0),('Iloprost Trometamol',0),('Ilube',0),('Imatinib Mesilate',0),('Imigran',0),('Imigran Nasal Spray',0),('Imigran Recovery',0),('Imipramine Hydrochloride',0),('Imiquimod',0),('Immucyst',0),('Imodium',0),('Imodium Plus',0),('Implanon',0),('Imunovir',0),('Imuran',0),('Imuvac',0),('Incivo',0),('Increlex',0),('Indacaterol Maleate',0),('Indapamide',0),('Indapamide Hemihydrate',0),('Indapamide/Perindopril Arginine',0),('Inderal',0),('Indivina',0),('Indolar',0),('Indometacin',0),('Indomod',0),('Indoramin Hydrochloride',0),('Inegy',0),('Infacol',0),('Infanrix Ipv',0),('Infanrix-Ipv+Hib',0),('Infliximab',0),('Influenza Vaccine',0),('Influvac',0),('Innohep',0),('Innovace',0),('Innozide',0),('Inosine Pranobex',0),('Inositol Nicotinate',0),('Inovelon',0),('Inspra',0),('Insulatard',0),('Insulin Aspart',0),('Insulin Aspart/Insulin Aspart Protamine',0),('Insulin Detemir',0),('Insulin Glargine',0),('Insulin Glulisine',0),('Insulin Isophane Bovine',0),('Insulin Isophane Human',0),('Insulin Isophane Human/Insulin Soluble Human',0),('Insulin Isophane Porcine',0),('Insulin Isophane Porcine/Insulin Soluble Porcine',0),('Insulin Lispro',0),('Insulin Lispro/Insulin Lispro Protamine',0),('Insulin Protamine Zinc Bovine',0),('Insulin Soluble Bovine',0),('Insulin Soluble Human',0),('Insulin Soluble Porcine',0),('Insulin Zinc Suspension Mixed Bovine',0),('Insuman Basal',0),('Insuman Comb',0),('Insuman Rapid',0),('Intal',0),('Integrilin',0),('Intelence',0),('Interferon Alfa-2A (Rbe)',0),('Interferon Alfa-2B (Rbe)',0),('Interferon Beta-1A',0),('Interferon Beta-1B',0),('Introna',0),('Invanz',0),('Invega',0),('Invirase',0),('Iopidine',0),('Ipocol',0),('Ipratropium',0),('Ipratropium/Salbutamol',0),('Irbesartan',0),('Iressa',0),('Irinotecan Hydrochloride Trihydrate',0),('Iron Dextran',0),('Iron Sucrose',0),('Isentress',0),('Ismelin',0),('Isocarboxazid',0),('Isoflurane',0),('Isoket',0),('Isoniazid',0),('Isoniazid/Pyrazinamide/Rifampicin',0),('Isoniazid/Rifampicin',0),('Isopropyl Myristate/Liquid Paraffin',0),('Isopto Alkaline',0),('Isopto Plain',0),('Isosorbide Dinitrate',0),('Isosorbide Mononitrate',0),('Isotretinoin',0),('Isotrex',0),('Isotrexin',0),('Isovorin',0),('Ispaghula Husk Granules',0),('Ispaghula Husk/Mebeverine',0),('Isradipine',0),('Istin',0),('Itraconazole',0),('Ivabradine',0),('Ixiaro',0),('Janumet',0),('Januvia',0),('Javlor',0),('Junior Meltus Chesty Coughs With Catarrh',0),('Kaletra',0),('Kaolin And Morphine Mixture',0),('Kaolin/Calcium Carbonate',0),('Karvol Decongestant Capsules',0),('Karvol Decongestant Drops',0),('Kefadim',0),('Keflex',0),('Keftid',0),('Kemadrin',0),('Kemicetine',0),('Kenalog',0),('Kentera',0),('Kentipine',0),('Kenzem',0),('Keppra',0),('Keral',0),('Ketalar',0),('Ketamine Hydrochloride',0),('Ketek',0),('Ketocid',0),('Ketoconazole',0),('Ketoprofen',0),('Ketorolac Trometamol',0),('Ketotifen',0),('Ketovail',0),('Ketovite Liquid',0),('Kivexa',0),('Klaricid',0),('Kliofem',0),('Kliovance',0),('Kolanticon Gel',0),('Kytril',0),('Lacidipine',0),('Lacosamide',0),('Lacrilube',0),('Lactulose',0),('Lamictal',0),('Lamisil',0),('Lamivudine',0),('Lamivudine/Zidovudine',0),('Lamotrigine',0),('Lanacane Cream',0),('Lanolin/White Soft Paraffin/Liquid Paraffin',0),('Lanoxin',0),('Lanreotide Acetate',0),('Lansoprazole',0),('Lanthanum Carbonate',0),('Lantus',0),('Lanvis',0),('Lapatinib Ditosylate Monohydrate',0),('Larapam',0),('Largactil',0),('Lariam',0),('Laryng-O-Jet',0),('Lasilactone',0),('Lasix',0),('Lasoride',0),('Latanoprost',0),('Latanoprost/Timolol Maleate',0),('Lauromacrogol 400/Heparinoid',0),('Laxido',0),('Leflunomide',0),('Lemon/Honey/Levomenthol/Citric Acid',0),('Lemsip Cold And Flu',0),('Lemsip Cough Chesty',0),('Lemsip Dry Cough Liquid',0),('Lemsip Flu 12 Hour Ibuprofen And Pseudoephedrine',0),('Lemsip Max All Day Cold And Flu Tablets',0),('Lemsip Max All Night Cold And Flu Tablets',0),('Lemsip Max All-In-One',0),('Lemsip Max Cold And Flu Breathe Easy',0),('Lemsip Max Cold And Flu Direct',0),('Lemsip Max Day And Night Cold And Flu Relief Capsules',0),('Lemsip Max Flu',0),('Lemsip Max Sinus',0),('Lemsip Max Sinus Capsules',0),('Lenalidomide',0),('Lenograstim (Rch)',0),('Lercanidipine',0),('Lescol',0),('Letrozole',0),('Leukeran',0),('Leuprorelin Acetate',0),('Leustat',0),('Levemir',0),('Levetiracetam',0),('Levitra',0),('Levobunolol Hydrochloride',0),('Levobupivacaine Hydrochloride',0),('Levocetirizine Dihydrochloride',0),('Levofloxacin',0),('Levofloxacin Hemihydrate',0),('Levomenthol',0),('Levomenthol/Amylmetacresol/Dichlorobenzyl Alcohol',0),('Levomenthol/Squill/Liquorice',0),('Levomepromazine Maleate',0),('Levonelle',0),('Levonorgestrel',0),('Levothyroxine Sodium',0),('Lexpec Folic Acid',0),('Li-Liquid',0),('Librium',0),('Librofem',0),('Lidocaine',0),('Lidocaine Hydrochloride',0),('Lidocaine Hydrochloride/Adrenaline Acid Tartrate',0),('Lidocaine/Aminoacridine',0),('Lidocaine/Cetalkonium Chloride',0),('Lidocaine/Cetylpyridinium Chloride',0),('Lidocaine/Chlorhexidine',0),('Lidocaine/Chlorocresol/Cetylpyridinium Chloride',0),('Lidocaine/Methylprednisolone Acetate',0),('Lidocaine/Zinc Sulphate/Cetrimide',0),('Light Liquid Paraffin',0),('Linezolid',0),('Lioresal',0),('Liothyronine Sodium',0),('Lipantil',0),('Lipitor',0),('Lipobase',0),('Liposic',0),('Lipostat',0),('Liqufilm Tears',0),('Liquid Paraffin',0),('Liquid Paraffin/Acetylated Wool Alcohols',0),('Liquid Paraffin/Isopropyl Myristate',0),('Liquid Paraffin/White Soft Paraffin',0),('Liquid Paraffin/Wool Alcohols/White Soft Paraffin',0),('Liraglutide',0),('Lisinopril',0),('Lisinopril/Hydrochlorothiazide',0),('Liskonum',0),('Lisopress',0),('Litak',0),('Lithium Carbonate',0),('Lithium Citrate',0),('Livial',0),('Loceryl',0),('Locoid',0),('Lodine',0),('Lodoxamide Trometamol',0),('Loestrin',0),('Lofepramine',0),('Lofepramine Hydrochloride',0),('Logynon',0),('Lomont',0),('Lomustine',0),('Loniten',0),('Lopace',0),('Loperamide And Rehydration Powder',0),('Loperamide Hydrochloride',0),('Lopid',0),('Lopinavir/Ritonavir',0),('Loprazolam',0),('Lopresor',0),('Loratadine',0),('Lorazepam',0),('Loron 520',0),('Losartan',0),('Losec',0),('Losec Iv',0),('Losec Mups',0),('Lotemax',0),('Loteprednol Etabonate',0),('Luborant',0),('Lucentis',0),('Lumigan',0),('Lustral',0),('Lutropin Alfa',0),('Luveris',0),('Lyclear Cream Rinse',0),('Lyclear Dermal Cream',0),('Lyflex',0),('Lymecycline',0),('Lypsyl Cold Sore Gel',0),('Lyrica',0),('Lyrinel',0),('Lysine Acetylsalicylate/Metoclopramide Hydrochloride',0),('Lysodren',0),('Lysovir',0),('Maalox',0),('Maalox Plus',0),('Mabcampath',0),('Mabthera',0),('Mackenzies Smelling Salts',0),('Macrobid',0),('Macrodantin',0),('Macrogol 4000',0),('Macrogol Compound Powder Npf',0),('Macugen',0),('Madopar',0),('Magnapen Vial',0),('Magnesium Hydroxide Oral Suspension',0),('Magnesium Hydroxide Tablets',0),('Magnevist',0),('Malarone',0),('Malathion',0),('Mandafen',0),('Manerix',0),('Maraviroc',0),('Marcain Heavy',0),('Marcain Polyamp Steripack',0),('Marevan',0),('Marvelon',0),('Mastaflu',0),('Maxalt',0),('Maxidex',0),('Maxitrol Eye Drops',0),('Maxitrol Eye Ointment',0),('Maxolon',0),('Maxtrex',0),('Mebendazole',0),('Mebeverine Hydrochloride',0),('Mecasermin',0),('Meclozine',0),('Medicated Talc',0),('Medijel Gel',0),('Medijel Pastilles',0),('Medised For Children',0),('Medrone',0),('Medroxyprogesterone Acetate',0),('Mefenamic',0),('Mefenamic Acid',0),('Mefloquine Hydrochloride',0),('Megace',0),('Megestrol Acetate',0),('Meggezones',0),('Meglumine Gadobenate',0),('Meglumine Gadopentetate',0),('Melatonin',0),('Meloxicam',0),('Melphalan',0),('Melphalan Hydrochloride',0),('Memantine Hydrochloride',0),('Menadiol Sodium Phosphate',0),('Meningitec',0),('Menitorix',0),('Menjugate',0),('Menopur',0),('Menotrophin',0),('Menthol Pastilles',0),('Menthol/Anise Oil',0),('Menthol/Camphor/Pine Needle Oil',0),('Menthol/Eucalyptus',0),('Menthol/Peppermint',0),('Menthol/Pine Sylvestris Oil/Abietis Oil',0),('Mepradec',0),('Mepyramine',0),('Merbentyl',0),('Mercaptopurine',0),('Mercilon',0),('Merional',0),('Merocaine',0),('Merocets Lozenges',0),('Merocets Plus',0),('Meronem',0),('Meropenem Trihydrate',0),('Mesalazine',0),('Mesren',0),('Mesterolone',0),('Mestinon',0),('Mestranol/Norethisterone',0),('Metalyse',0),('Meted',0),('Meted Shampoo',0),('Metenix',0),('Metformin',0),('Metformin Hydrochloride',0),('Metformin Hydrochloride/Sitagliptin Phosphate',0),('Metformin Hydrochloride/Vildagliptin',0),('Metformin/Pioglitazone',0),('Methenamine Hippurate',0),('Methotrexate',0),('Methotrexate Sodium',0),('Methoxy Polyethylene Glycol-Epoetin Beta',0),('Methoxymethane/Hydroxyethyl Salicylate/Isopentane',0),('Methyl Aminolevulinate Hydrochloride',0),('Methyl Salicylate',0),('Methyl Salicylate/Menthol',0),('Methyl Salicylate/Menthol/Camphor',0),('Methyl Salicylate/Menthol/Capsicum/Camphor',0),('Methylcellulose',0),('Methylnaltrexone Bromide',0),('Methylphenidate Hydrochloride',0),('Methylprednisolone',0),('Methylprednisolone Acetate',0),('Methylprednisolone Sodium Succinate',0),('Methysergide Maleate',0),('Metipranolol',0),('Metoclopramide',0),('Metoclopramide Hydrochloride',0),('Metoclopramide Hydrochloride/Paracetamol',0),('Metolazone',0),('Metopirone',0),('Metoprolol',0),('Metrogel',0),('Metrolyl',0),('Metronidazole',0),('Metronidazole Benzoate',0),('Metrosa',0),('Metrotop',0),('Metvix',0),('Metyrapone',0),('Miacalcic',0),('Micafungin Sodium',0),('Micardis',0),('Micardisplus',0),('Miconazole',0),('Miconazole Nitrate',0),('Microgynon 30',0),('Micronor',0),('Micropirin',0),('Midazolam Hydrochloride',0),('Mifegyne',0),('Mifepristone',0),('Migard',0),('Migril',0),('Mildison Lipocream',0),('Milrinone',0),('Mimpara',0),('Mini-Plasco Lidocaine',0),('Minijet Adrenaline',0),('Minijet Amiodarone',0),('Minijet Atropine',0),('Minijet Furosemide',0),('Minijet Lidocaine',0),('Minijet Naloxone',0),('Minijet Sodium Bicarbonate',0),('Minims Artificial Tears',0),('Minims Atropine',0),('Minims Chloramphenicol',0),('Minims Cyclopentolate Hydrochloride',0),('Minims Dexamethasone',0),('Minims Lidocaine And Fluorescein',0),('Minims Metipranolol',0),('Minims Pilocarpine Nitrate',0),('Minims Prednisolone',0),('Minims Proxymetacaine And Fluorescein',0),('Minims Tetracaine Hydrochloride',0),('Minims Tropicamide',0),('Minocin',0),('Minocycline Hydrochloride',0),('Minodiab',0),('Minoxidil',0),('Miochol-E',0),('Mirapexin',0),('Mircera',0),('Mirena',0),('Mirtazapine',0),('Misoprostol',0),('Misoprostol/Naproxen',0),('Mitomycin',0),('Mitomycin-C Kyowa',0),('Mitotane',0),('Mitoxantrone Hydrochloride',0),('Mivacron',0),('Mivacurium Chloride',0),('Mixtard',0),('Mizolastine',0),('Mizollen',0),('Mmrvaxpro',0),('Mobiflex',0),('Moclobemide',0),('Modafinil',0),('Modalim',0),('Modecate',0),('Modrenal',0),('Moduret',0),('Moduretic',0),('Moexipril',0),('Moexipril Hydrochloride',0),('Mogadon',0),('Molaxole',0),('Molipaxin',0),('Mometasone',0),('Mometasone Furoate',0),('Monomil',0),('Monosorb',0),('Montelukast Sodium',0),('Morhulin Ointment',0),('Morphine',0),('Motens',0),('Motifene',0),('Motilium',0),('Motilium Tablet',0),('Movelat',0),('Movicol',0),('Moxifloxacin Hydrochloride',0),('Moxisylyte Hydrochloride',0),('Moxonidine',0),('Mucodyne',0),('Mucogel',0),('Multaq',0),('Multi-Action Actifed Tablets',0),('Multihance',0),('Multiparin',0),('Mupirocin Calcium',0),('Muse',0),('Mycamine',0),('Mycil Athletes Foot Spray',0),('Mycil Ointment',0),('Mycil Powder',0),('Mycobutin',0),('Mycophenolate Mofetil',0),('Mycophenolate Mofetil Hydrochloride',0),('Mycophenolate Sodium',0),('Mycota Spray',0),('Myfortic',0),('Myleran',0),('Myocet',0),('Myocrisin',0),('Myotonine',0),('Mysoline',0),('Nabilone',0),('Nabumetone',0),('Nadolol',0),('Nafarelin Acetate',0),('Naftidrofuryl',0),('Naftidrofuryl Oxalate',0),('Nalcrom',0),('Nalidixic Acid',0),('Naloxone Hydrochloride',0),('Nandrolone Decanoate',0),('Naphazoline',0),('Napratec',0),('Naprosyn',0),('Naproxen',0),('Naproxen/Esomeprazole Magnesium Trihydrate',0),('Naramig',0),('Naratriptan Hydrochloride',0),('Naropin',0),('Nasacort',0),('Naseptin',0),('Nasofan',0),('Nasonex',0),('Natalizumab',0),('Natecal D3',0),('Nateglinide',0),('Natracalm',0),('Natrasleep',0),('Natrilix',0),('Natrilix Sr',0),('Navelbine',0),('Nebilet',0),('Nebivolol',0),('Nebivolol Hydrochloride',0),('Nedocromil',0),('Nedocromil Sodium',0),('Nelarabine',0),('Neo-Cytamen',0),('Neo-Naclex',0),('Neoclarityn',0),('Neofel',0),('Neomercazole',0),('Neomycin Sulphate',0),('Neoral',0),('Neorecormon',0),('Neostigmine Metilsulfate',0),('Neostigmine Metilsulfate/Glycopyrronium Bromide',0),('Neotigason',0),('Neulactil',0),('Neulasta',0),('Neupogen',0),('Neupro',0),('Neurobloc',0),('Neurontin',0),('Neutrogena Norwegian Formula Cream',0),('Neutrogena T-Gel Shampoo',0),('Nevirapine',0),('Nevirapine Hemihydrate',0),('Nexavar',0),('Nexium',0),('Nexium Iv',0),('Niaspan',0),('Nicam Gel',0),('Nicardipine',0),('Nicardipine Hydrochloride',0),('Nicorandil',0),('Nicorette Gum',0),('Nicorette Inhalator',0),('Nicorette Invisi Patches',0),('Nicorette Microtab',0),('Nicorette Nasal Spray',0),('Nicorette Patches',0),('Nicotinamide',0),('Nicotine Gum',0),('Nicotine Inhaler',0),('Nicotine Lozenges',0),('Nicotine Nasal Spray',0),('Nicotine Patches',0),('Nicotine Sublingual Tablets',0),('Nicotinell Gum',0),('Nicotinell Lozenges',0),('Nicotinell Patches',0),('Nicotinic Acid',0),('Nifedipine',0),('Nifopress',0),('Night Nurse',0),('Nilotinib Hydrochloride Monohydrate',0),('Nimbex',0),('Nimodipine',0),('Nimotop',0),('Nipent',0),('Niquitin Gum',0),('Niquitin Lozenges',0),('Niquitin Mini Lozenges',0),('Niquitin Patches',0),('Nirolex Chesty Cough Linctus',0),('Nirolex Dry Cough Linctus',0),('Nirolex Dry Cough Relief Lozenges',0),('Nirolex Dry Coughs With Decongestant',0),('Nitrazepam',0),('Nitrofurantoin',0),('Nizatidine',0),('Nizoral',0),('Non-Drowsy Sudafed Childrens Syrup',0),('Nonacog Alfa',0),('Nonoxinol-9',0),('Nootropil',0),('Noradrenaline Acid Tartrate',0),('Norcuron',0),('Norditropin Nordiflex',0),('Norditropin Simplexx',0),('Norethisterone',0),('Norethisterone Enantate',0),('Norfloxacin',0),('Norgalax',0),('Norgeston',0),('Noriday',0),('Norimin',0),('Norimode',0),('Norinyl-1',0),('Noristerat',0),('Normacol',0),('Normacol Plus',0),('Normal Immunoglobulin Human',0),('Nortriptyline',0),('Nortriptyline Hydrochloride',0),('Norvir',0),('Norzol',0),('Novofem',0),('Novomix 30',0),('Novorapid',0),('Novoseven',0),('Noxafil',0),('Nozinan Tablets',0),('Nu-Seals',0),('Nupercainal',0),('Nurofen',0),('Nurofen Cold And Flu',0),('Nurofen Plus',0),('Nutrizym',0),('Nutropinaq',0),('Nuvaring',0),('Nyogel',0),('Nystan',0),('Nystatin',0),('Nytol',0),('Occlusal',0),('Octim',0),('Octocog Alfa',0),('Octreotide Acetate',0),('Ocufen',0),('Oculotect',0),('Ofatumumab',0),('Ofloxacin',0),('Ofloxacin Hydrochloride',0),('Oilatum Cream',0),('Oilatum Emollient',0),('Oilatum Gel',0),('Oilatum Junior Bath Additive',0),('Oilatum Junior Cream',0),('Oilatum Plus',0),('Oilatum Shower Gel Fragrance-Free',0),('Olanzapine',0),('Olanzapine Pamoate Monohydrate',0),('Olbetam',0),('Olmesartan',0),('Olmesartan Medoxomil',0),('Olmetec',0),('Olmetec Plus',0),('Olopatadine Hydrochloride',0),('Olsalazine Sodium',0),('Omalizumab',0),('Omeprazole',0),('Omeprazole Magnesium',0),('Omeprazole Sodium',0),('Oncotice',0),('Ondansetron',0),('Ondansetron Hydrochloride',0),('One-Alpha',0),('Onglyza',0),('Onkotrone',0),('Opatanol',0),('Opilon',0),('Opticrom',0),('Optilast',0),('Optimax',0),('Optivate',0),('Oraldene',0),('Orap',0),('Orelox',0),('Orencia',0),('Orgalutran',0),('Orgaran',0),('Original Andrews Salts',0),('Orlept',0),('Orlistat',0),('Orphenadrine Hydrochloride',0),('Ortho-Gynest',0),('Orudis',0),('Oruvail',0),('Otex',0),('Otomize',0),('Otosporin',0),('Otrivine Adult Measured Dose Sinusitis Spray',0),('Otrivine Adult Menthol Nasal Spray',0),('Otrivine Adult Nasal Drops',0),('Otrivine Adult Nasal Spray',0),('Otrivine Antistin',0),('Otrivine Child Nasal Drops',0),('Otrivine Mu-Cron',0),('Ovestin',0),('Ovitrelle',0),('Ovranette',0),('Ovysmen',0),('Oxactin',0),('Oxaliplatin',0),('Oxcarbazepine',0),('Oxerutins',0),('Oxis',0),('Oxprenolol',0),('Oxprenolol Hydrochloride',0),('Oxprenolol Hydrochloride/Cyclopenthiazide',0),('Oxybuprocaine Hydrochloride',0),('Oxybutynin',0),('Oxybutynin Hydrochloride',0),('Oxymetazoline',0),('Oxytetracycline Dihydrate',0),('Oxytocin',0),('Pabal',0),('Paclitaxel',0),('Paclitaxel Albumin',0),('Pain Relief Balm',0),('Paliperidone',0),('Paliperidone Palmitate',0),('Paludrine',0),('Panadol',0),('Panadol Extra Soluble Tablets',0),('Panadol Extra Tablets',0),('Panadol Night',0),('Pancrease',0),('Pancrex',0),('Pancuronium Bromide',0),('Pandemrix',0),('Panitumumab',0),('Panoxyl Acnegel',0),('Panoxyl Aquagel',0),('Panoxyl Cream',0),('Panoxyl Wash',0),('Pantoprazole',0),('Pantoprazole Sodium Sesquihydrate',0),('Paracetamol',0),('Paracetamol/Caffeine',0),('Paracetamol/Codeine /Caffeine',0),('Paracetamol/Codeine/Diphenhydramine/Caffeine',0),('Paracetamol/Codeine/Doxylamine/Caffeine',0),('Paracetamol/Dihydrocodeine',0),('Paracetamol/Diphenhydramine',0),('Paracetamol/Diphenhydramine Liquid',0),('Paracetamol/Diphenhydramine Tablets',0),('Paracetamol/Phenylephrine Sachets',0),('Paracetamol/Phenylephrine/Caffeine',0),('Paracetamol/Pseudoephedrine',0),('Paracetamol/Sodium Salicylate',0),('Paracetamol/Tramadol Hydrochloride',0),('Paramax',0),('Paramol Soluble Tablets',0),('Paramol Tablets',0),('Parathyroid Hormone',0),('Pardelprin',0),('Parecoxib Sodium',0),('Paricalcitol',0),('Pariet',0),('Parlodel',0),('Parmid',0),('Paroven',0),('Paroxetine',0),('Passion Flower',0),('Passion Flower/Valerian/Hops',0),('Passion Flower/Valerian/Hops/Scullcap/Jamaica Dogwood',0),('Pavacol-D',0),('Paxoran',0),('Pediacel',0),('Pegaptanib Sodium',0),('Pegasys',0),('Pegfilgrastim',0),('Peginterferon Alfa-2A',0),('Peginterferon Alfa-2B (Rbe)',0),('Pegvisomant',0),('Pemetrexed Disodium',0),('Penbritin',0),('Penciclovir',0),('Penicillamine',0),('Pennsaid',0),('Pentasa',0),('Pentostatin',0),('Pentoxifylline',0),('Pentrax Shampoo',0),('Pepcid',0),('Pepcidtwo',0),('Peppermint Oil Capsules',0),('Peppermint Oil/Capsicum/Elder Flower',0),('Peppermint Oil/Cinnamon/Clove Oil/Slippery Elm Bark',0),('Peppermint Oil/Menthol/Benzoin Compound/Ipecacuanha',0),('Peppermint Oil/Menthol/Myrrh',0),('Pepto-Bismol',0),('Perdix',0),('Perfalgan',0),('Pergolide Mesilate',0),('Pergoveris',0),('Periactin',0),('Pericyazine',0),('Perinal Spray',0),('Perindopril',0),('Perindopril Arginine',0),('Permethrin',0),('Persantin',0),('Pevaryl',0),('Pharmaton Capsules',0),('Pharmorubicin',0),('Phenelzine Sulphate',0),('Phenergan',0),('Phenol',0),('Phenol/Aromatic Ammonia/Strong Ammonia',0),('Phenol/Chlorhexidine Digluconate',0),('Phenol/Chlorhexidine Gluconate',0),('Phenylephrine Hydrochloride',0),('Phenylephrine Hydrochloride/Caffeine/Paracetamol',0),('Phenylephrine/Caffeine/Paracetamol Dual Relief',0),('Phenylephrine/Caffeine/Paracetamol Max Strength Capsules',0),('Phenylephrine/Guaifenesin/Paracetamol',0),('Phenylethyl Alcohol/Undecenoic Acid/Cetrimide',0),('Phenytoin',0),('Phenytoin Sodium',0),('Phillips Milk Of Magnesia',0),('Pholcodine',0),('Pholcodine Childrens Oral Solution',0),('Pholcodine Linctus',0),('Phosex',0),('Phyllocontin',0),('Physiotens',0),('Pilocarpine Hydrochloride',0),('Pilocarpine Nitrate',0),('Pimecrolimus',0),('Pimozide',0),('Pindolol',0),('Pinefeld',0),('Pioglitazone',0),('Piperacillin Sodium/Tazobactam Sodium',0),('Piportil',0),('Pipotiazine Palmitate',0),('Piracetam',0),('Piriteze Allergy Syrup',0),('Piriteze Allergy Tablets',0),('Piriton',0),('Piroxicam',0),('Pitressin',0),('Pivmecillinam Hydrochloride',0),('Pizotifen Hydrogen Malate',0),('Plaquenil',0),('Plavix',0),('Plendil',0),('Pletal',0),('Pneumovax Ii',0),('Podophyllotoxin',0),('Pollenshield',0),('Polysaccharide-Iron Complex',0),('Polytar Af Liquid',0),('Polytar Emollient',0),('Polytar Liquid',0),('Polytar Plus Liquid',0),('Polyvinyl Alcohol',0),('Ponstan',0),('Pork Actrapid',0),('Pork Mixtard',0),('Posaconazole',0),('Potassium Citrate',0),('Potassium Citrate/Citric Acid',0),('Potassium Clavulanate/Ticarcillin Sodium',0),('Povidone K25',0),('Povidone-Iodine Spray',0),('Powergel',0),('Pradaxa',0),('Pramipexole Dihydrochloride Monohydrate',0),('Prandin',0),('Prasugrel Hydrochloride',0),('Pravastatin Sodium',0),('Praxilene',0),('Prazosin',0),('Prazosin Hydrochloride',0),('Pred Forte',0),('Predfoam',0),('Prednisolone',0),('Prednisolone Acetate',0),('Prednisolone Sodium Metasulphobenzoate',0),('Prednisolone Sodium Phosphate',0),('Predsol',0),('Pregabalin',0),('Pregnyl',0),('Premarin',0),('Premique',0),('Prempak-C',0),('Preotact',0),('Prescal',0),('Preservex',0),('Prestim',0),('Prevenar',0),('Prezista',0),('Priadel Liquid',0),('Priadel Tablets',0),('Prilocaine Hydrochloride',0),('Prilocaine/Lidocaine',0),('Primacor',0),('Primaxin',0),('Primidone',0),('Primolut N',0),('Primovist',0),('Priorix',0),('Pro-Epanutin',0),('Pro-Viron',0),('Procarbazine Hydrochloride',0),('Prochlorperazine Maleate',0),('Prochlorperazine Mesilate',0),('Procoralan',0),('Proctofoam',0),('Proctosedyl',0),('Procyclidine Hydrochloride',0),('Progesterone',0),('Prograf',0),('Prograf Infusion',0),('Proguanil Hydrochloride',0),('Progynova Patches',0),('Progynova Tablets',0),('Prohance',0),('Proleukin',0),('Prolia',0),('Promethazine',0),('Promethazine Hydrochloride',0),('Promethazine Hydrochloride/Dextromethorphan Hydrobromide/Paracetamol',0),('Promethazine/Dextromethorphan/Paracetamol',0),('Promixin',0),('Propaderm',0),('Propafenone',0),('Propain Caplets',0),('Propain Plus',0),('Propantheline Bromide',0),('Propecia',0),('Propess',0),('Propine',0),('Propiverine Hydrochloride',0),('Propofol',0),('Propranolol',0),('Propranolol Hydrochloride',0),('Proscar',0),('Prostap',0),('Prostin E2',0),('Prosulf',0),('Protamine',0),('Protamine Sulphate',0),('Protelos',0),('Protirelin',0),('Protium',0),('Protopic',0),('Provera',0),('Provigil',0),('Proxymetacaine Hydrochloride',0),('Prozac',0),('Prucalopride Succinate',0),('Pseudoephedrine',0),('Pseudoephedrine Hydrochloride/Diphenhydramine Hydrochloride/Paracetamol',0),('Pseudoephedrine/Acrivastine',0),('Pseudoephedrine/Dextromethorphan',0),('Pseudoephedrine/Paracetamol/Diphenhydramine',0),('Pseudoephedrine/Pholcodine/Paracetamol',0),('Pseudoephedrine/Triprolidine',0),('Pseudoephedrine/Triprolidine/Dextromethorphan',0),('Pseudoephedrine/Triprolidine/Guaifenesin',0),('Psoriderm Bath Additive',0),('Psoriderm Cream',0),('Psoriderm Scalp Lotion',0),('Pulmicort',0),('Pulmozyme',0),('Pumo Bailly',0),('Puregon',0),('Puri-Nethol',0),('Pyralvex',0),('Pyridostigmine Bromide',0),('Pyrimethamine',0),('Questran',0),('Quetiapine Fumarate',0),('Quinapril',0),('Quinapril Hydrochloride',0),('Quinil',0),('Rabeprazole',0),('Rabipur',0),('Ralgex Cream',0),('Ralgex Freeze Spray',0),('Ralgex Heat Spray',0),('Raloxifene Hydrochloride',0),('Raltegravir',0),('Raltitrexed',0),('Ramipril',0),('Ranexa',0),('Ranibizumab',0),('Ranitic',0),('Ranitidine Hydrochloride',0),('Ranitil',0),('Ranolazine',0),('Rapamune',0),('Rapifen',0),('Rapilysin',0),('Rapitil',0),('Rasagiline Mesilate',0),('Rasilez',0),('Rebetol',0),('Rebif',0),('Reboxetine',0),('Reboxetine Mesilate',0),('Rectogesic',0),('Refolinon',0),('Regranex',0),('Regurin',0),('Relcofen',0),('Relenza',0),('Relestat',0),('Relifex',0),('Relistor',0),('Relpax',0),('Remedeine',0),('Remegel',0),('Remegel Wind Relief',0),('Remicade',0),('Remifentanyl Hydrochloride',0),('Reminyl',0),('Renagel',0),('Renvela',0),('Reopro',0),('Repaglinide',0),('Repevax',0),('Replenine-Vf',0),('Requip',0),('Resolor',0),('Resolve',0),('Resolve Extra',0),('Respontin',0),('Restandol',0),('Retalzem',0),('Retapamulin',0),('Reteplase',0),('Retigabine',0),('Retin-A',0),('Retrovir',0),('Revatio',0),('Revaxis',0),('Revlimid',0),('Rexocaine',0),('Reyataz',0),('Rhinocort',0),('Rhinolast',0),('Rhophylac',0),('Rhumalgan',0),('Riamet',0),('Rifabutin',0),('Rifadin',0),('Rifampicin',0),('Rifater',0),('Rifinah',0),('Rilutek',0),('Riluzole',0),('Rimactane',0),('Rimexolone',0),('Rinatec',0),('Rinstead Sugar Free Pastilles',0),('Risedronate Sodium',0),('Risedronate Sodium/Colecalciferol/Calcium Carbonate',0),('Risperdal',0),('Risperidone',0),('Ritalin',0),('Ritonavir',0),('Rituximab',0),('Rivaroxaban',0),('Rivastigmine',0),('Rivastigmine Hydrogen Tartrate',0),('Rivotril',0),('Rizatriptan Benzoate',0),('Roaccutane',0),('Roactemra',0),('Robinul',0),('Robinul-Neostigmine',0),('Robitussin Chesty Cough',0),('Robitussin Chesty Cough With Congestion',0),('Robitussin Dry Cough Medicine',0),('Rocaltrol',0),('Rocephin',0),('Rocuronium Bromide',0),('Roferon-A',0),('Roflumilast',0),('Ropinirole Hydrochloride',0),('Ropivacaine Hydrochloride',0),('Rosiced',0),('Rosuvastatin',0),('Rotarix',0),('Rotigotine',0),('Rozex',0),('Rufinamide',0),('Rupafin',0),('Rupatadine Fumarate',0),('Rynacrom',0),('Rythmodan',0),('Rythmodan Capsules',0),('Sabril',0),('Saflutan',0),('Saizen',0),('Salactol Paint',0),('Salagen',0),('Salatac Gel',0),('Salazopyrin',0),('Salbutamol',0),('Salicylic Acid',0),('Salicylic Acid Ointment',0),('Salicylic Acid Paint',0),('Salicylic Acid/Camphor',0),('Salicylic Acid/Coal Tar/Sulphur',0),('Salicylic Acid/Dithranol',0),('Salicylic Acid/Lactic Acid',0),('Salicylic Acid/Menthol/Ammonium Salicylate/Camphor',0),('Salicylic Acid/Mucopolysaccharide Polysulphate',0),('Salicylic Acid/Rhubarb Extract',0),('Salmeterol',0),('Salofalk',0),('Sandimmun',0),('Sandocal',0),('Sandocal+D',0),('Sandoglobulin Nf',0),('Sandostatin',0),('Sandrena',0),('Sanomigran',0),('Saquinavir Mesilate',0),('Savlon Antiseptic Cream',0),('Savlon Antiseptic Liquid',0),('Savlon Antiseptic Wound Wash',0),('Savlon Bites And Stings Pain Relief Gel',0),('Savlon Dry Spray',0),('Scheriproct',0),('Scholl Athletes Foot Cream',0),('Scholl Athletes Foot Powder',0),('Scholl Callous Removal Pads',0),('Scholl Corn And Callus Removal Liquid',0),('Scholl Corn Removal Plasters (Fabric)',0),('Scholl Corn Removal Plasters (Washproof)',0),('Scholl Polymer Gel Corn Removal Pads',0),('Scholl Seal And Heal Verruca Removal Gel',0),('Scopoderm Tts',0),('Sea-Legs Tablets',0),('Sebivo',0),('Sebomin',0),('Sebren',0),('Sectral',0),('Securon',0),('Selectajet Dopamine',0),('Selegiline Hydrochloride',0),('Selenium Sulphide',0),('Selexid',0),('Senna Fruit/Ispaghula',0),('Senna Syrup',0),('Senna Tablets',0),('Senna/Buckthorn Bark/Psyllium Seeds',0),('Senokot Comfort Tablets',0),('Senokot Dual Relief Tablets',0),('Senokot Hi-Fibre',0),('Senokot Max Strength',0),('Senokot Syrup',0),('Senokot Tablets',0),('Septrin',0),('Seractil',0),('Serc',0),('Serenace',0),('Seretide',0),('Serevent',0),('Seroquel',0),('Seroxat',0),('Sertraline',0),('Sertraline Hydrochloride',0),('Sevelamer Carbonate',0),('Sevelamer Hydrochloride',0),('Sevoflurane',0),('Sildenafil Citrate',0),('Silkis',0),('Silver Nitrate',0),('Simeticone',0),('Simeticone Drops',0),('Simeticone/Loperamide Hydrochloride',0),('Simponi',0),('Simulect',0),('Simvador',0),('Simvastatin',0),('Sinemet',0),('Singulair',0),('Sinthrome',0),('Sinutab Non-Drowsy',0),('Sirolimus',0),('Sitaxentan Sodium',0),('Skelid',0),('Skinoren',0),('Sleepeaze Tablets',0),('Slozem',0),('Sno Tears',0),('Snufflebabe Vapour Rub',0),('Sodiofolin',0),('Sodium Alginate/Calcium Carbonate/Sodium Bicarbonate',0),('Sodium Alginate/Magnesium Alginate',0),('Sodium Alginate/Potassium Bicarbonate',0),('Sodium Aurothiomalate',0),('Sodium Bicarbonate',0),('Sodium Bicarbonate/Citric Acid/Magnesium Sulphate',0),('Sodium Bicarbonate/Dill Seed Oil',0),('Sodium Citrate',0),('Sodium Citrate Compound',0),('Sodium Clodronate',0),('Sodium Cromoglicate',0),('Sodium Feredetate',0),('Sodium Fluoride',0),('Sodium Fluoride/Triclosan',0),('Sodium Fusidate',0),('Sodium Lauryl Ether Sulpho-Succinate/Sodium Lauryl Ether Sulphate',0),('Sodium Oxybate',0),('Sodium Picosulfate',0),('Sodium Pidolate',0),('Sodium Tetradecyl Sulfate',0),('Sodium Valproate',0),('Sofradex Ear/Eye Drops',0),('Solaraze',0),('Solian',0),('Solifenacin Succinate',0),('Solpadeine Headache Soluble Tablets',0),('Solpadeine Headache Tablets',0),('Solpadeine Migraine Ibuprofen And Codeine Tablets',0),('Solu-Cortef',0),('Solu-Medrone',0),('Somatropin',0),('Somatuline',0),('Somavert',0),('Sominex Herbal Tablets',0),('Somnite',0),('Sonata',0),('Sonovue',0),('Sorafenib Tosylate',0),('Sotacor',0),('Sotalol',0),('Sotalol Hydrochloride',0),('Spasmonal',0),('Spasmonal Forte',0),('Spiriva',0),('Spironolactone',0),('Sporanox',0),('Sprycel',0),('Squill/Capsicum',0),('Squill/Pumilio Pine Oil/Ipecacuanha/Liquorice',0),('St. Johns Wort',0),('Stalevo',0),('Stannous Fluoride',0),('Staril',0),('Starlix',0),('Statin',0),('Stavudine',0),('Stelara',0),('Stelazine',0),('Stemetil',0),('Stemetil Tablet',0),('Sterculia',0),('Sterculia/Frangula',0),('Stesolid',0),('Stiemycin',0),('Stilnoct',0),('Strattera',0),('Strepsils',0),('Strepsils Extra Lozenges',0),('Strepsils Orange With Vitamin C',0),('Strepsils Sore Throat And Blocked Nose Lozenges',0),('Streptase',0),('Streptokinase',0),('Stressless Tablets',0),('Stronazon',0),('Strontium Ranelate',0),('Stugeron 15',0),('Sucralfate',0),('Sucrose/Guaifenesin/Cetylpyridinium Chloride/Honey',0),('Sudafed',0),('Sudocrem',0),('Sugammadex Sodium',0),('Sulfadiazine',0),('Sulfamethoxazole/Trimethoprim',0),('Sulfasalazine',0),('Sulphur Hexafluoride',0),('Sulphur/Salicylic Acid',0),('Sulpiride',0),('Sulpor',0),('Sumatriptan',0),('Sumatriptan Succinate',0),('Sunitinib Malate',0),('Supralip',0),('Suprax',0),('Suprecur',0),('Suprefact',0),('Sure-Amp Lidocaine',0),('Surgam',0),('Surmontil',0),('Sustiva',0),('Sutent',0),('Suxamethonium Chloride',0),('Symbicort',0),('Symmetrel',0),('Synarel',0),('Syner-Kinase',0),('Synflorix',0),('Synphase',0),('Syntocinon',0),('Syntometrine',0),('Syprol',0),('Sytron',0),('Tabphyn',0),('Tacrolimus',0),('Tadalafil',0),('Tafluprost',0),('Tagamet',0),('Tambocor',0),('Tamiflu',0),('Tamoxifen Citrate',0),('Tamsulosin Hydrochloride',0),('Tarceva',0),('Targocid',0),('Targretin',0),('Tarivid',0),('Tarivid Injection',0),('Tarka',0),('Tasigna',0),('Tavanic',0),('Tavegil',0),('Taxol',0),('Taxotere',0),('Tazarotene',0),('Tazocin',0),('Tcp Antiseptic Cream',0),('Tcp Antiseptic Liquid',0),('Tcp Antiseptic Ointment',0),('Tcp Sore Throat Lozenges',0),('Tears Naturale',0),('Tegafur/Uracil',0),('Tegretol',0),('Teicoplanin',0),('Telbivudine',0),('Telfast',0),('Telithromycin',0),('Telmisartan',0),('Telzir',0),('Temazepam',0),('Temodal',0),('Temozolomide',0),('Temsirolimus',0),('Tenecteplase',0),('Tenif',0),('Tenofovir Disoproxil Fumarate',0),('Tenoret',0),('Tenoretic',0),('Tenormin',0),('Tenoxicam',0),('Tensipine',0),('Terazosin',0),('Terazosin Hydrochloride',0),('Terbinafine Hydrochloride',0),('Terbutaline',0),('Teriparatide',0),('Tetanus Immunoglobulin Human',0),('Tetracaine Hydrochloride',0),('Tetracycline Hydrochloride',0),('Tetralysal',0),('Teveten',0),('Thelin',0),('Theophylline',0),('Thiopental Sodium',0),('Throaties Strong Original Pastilles',0),('Thurfyl Salicylate/Hexyl Nicotinate/Ethyl Nicotinate',0),('Thwart',0),('Thymoglobuline',0),('Thyrogen',0),('Thyrotropin Alfa',0),('Tiagabine Hydrochloride Monohydrate',0),('Tiaprofenic Acid',0),('Tibolone',0),('Ticagrelor',0),('Ticovac',0),('Tigecycline',0),('Tiger Balm Red',0),('Tiger Balm White',0),('Tilade',0),('Tildiem',0),('Tiloket',0),('Tiloryth',0),('Tiludronate Disodium',0),('Timentin',0),('Timodine',0),('Timolol',0),('Timolol Maleate',0),('Timolol Maleate/Travoprost',0),('Timoptol',0),('Tinidazole',0),('Tinzaparin',0),('Tioconazole',0),('Tioguanine',0),('Tiotropium',0),('Tipranavir',0),('Tirofiban',0),('Tirofiban Hydrochloride',0),('Tixylix Baby Syrup',0),('Tixylix Chesty Cough',0),('Tixylix Dry Cough',0),('Tixylix Honey, Lemon And Glycerol Syrup',0),('Tixylix Toddler Syrup',0),('Tizanidine',0),('Tobi',0),('Tobradex',0),('Tobramycin',0),('Tocilizumab',0),('Toctino',0),('Tolcapone',0),('Tolfenamic Acid',0),('Tolnaftate',0),('Tolnaftate/Benzalkonium Chloride',0),('Tolnaftate/Chlorhexidine',0),('Tolterodine Tartrate',0),('Tomudex',0),('Topal Chewable Tablets',0),('Topamax',0),('Topiramate',0),('Topotecan Hydrochloride',0),('Torasemide',0),('Torem',0),('Toremifene Citrate',0),('Torisel',0),('Toviaz',0),('Tracleer',0),('Tracrium',0),('Tractocile',0),('Tramacet',0),('Tramadol Hydrochloride',0),('Trandolapril',0),('Trandolapril/Verapamil',0),('Trandolapril/Verapamil Hydrochloride',0),('Tranexamic Acid',0),('Transiderm-Nitro',0),('Trasicor',0),('Trasidrex',0),('Trastuzumab',0),('Travatan',0),('Travoprost',0),('Traxam',0),('Trazodone',0),('Trazodone Hydrochloride',0),('Trental',0),('Treosulfan',0),('Tretinoin',0),('Triadene',0),('Triamcinolone',0),('Triamcinolone Acetonide',0),('Triamterene/Hydrochlorothiazide',0),('Triapin',0),('Tridestra',0),('Trifluoperazine Hydrochloride',0),('Trihexyphenidyl Hydrochloride',0),('Trileptal',0),('Trilostane',0),('Trimethoprim',0),('Trimipramine',0),('Trimipramine Maleate',0),('Trimovate',0),('Trinordiol',0),('Trinovum',0),('Tripotassium Dicitratobismuthate',0),('Triptorelin Acetate',0),('Trisenox',0),('Trisequens',0),('Tritace',0),('Trizivir',0),('Trobalt',0),('Tropicamide',0),('Trospium Chloride',0),('Trosyl',0),('Trusopt',0),('Truvada',0),('Tryptophan',0),('Tums Antacid Tablets',0),('Turpentine Oil/Acetic Acid',0),('Turpentine/Dilute Ammonia/Acetic Acid',0),('Twinrix',0),('Tygacil',0),('Tylex',0),('Typherix',0),('Typhim Vi',0),('Typhoid Vaccine',0),('Tyrozets',0),('Tysabri',0),('Tyverb',0),('Ubretid',0),('Uftoral',0),('Ulipristal Acetate',0),('Ultiva',0),('Ultra Chloraseptic Anaesthetic Throat Spray',0),('Ultrabase',0),('Ultramol Soluble Tablets',0),('Undecenoic Acid/Dichlorophen',0),('Unguentum M',0),('Uniroid Hc',0),('Univer',0),('Urdox',0),('Urea',0),('Urea Hydrogen Peroxide',0),('Urea/Lauromacrogols',0),('Urispas',0),('Urokinase',0),('Ursodeoxycholic Acid',0),('Ursofalk',0),('Ursogal',0),('Ustekinumab',0),('Utinor',0),('Utovlan',0),('Vagifem',0),('Valaciclovir Hydrochloride',0),('Valcyte',0),('Valdoxan',0),('Valerian/Hops',0),('Valganciclovir Hydrochloride',0),('Vallergan',0),('Valoid',0),('Valproate Semisodium',0),('Valsartan',0),('Valtrex',0),('Vancomycin Hydrochloride',0),('Vaniqa',0),('Vaqta',0),('Vardenafil Hydrochloride Trihydrate',0),('Varenicline Tartrate',0),('Varicella-Zoster Vaccine',0),('Varilrix',0),('Vascace',0),('Vascalpha',0),('Vasogen',0),('Vectavir',0),('Vectibix',0),('Vecuronium Bromide',0),('Velcade',0),('Velosulin',0),('Vemurafenib',0),('Venlafaxine',0),('Venlafaxine Hydrochloride',0),('Venofer',0),('Ventavis',0),('Ventolin',0),('Vepesid',0),('Vera-Til',0),('Verapamil',0),('Verapamil Hydrochloride',0),('Vermox',0),('Versatis',0),('Vertab',0),('Verteporfin',0),('Vervain/Valerian/Scullcap/Hops',0),('Vervain/Valerian/Scullcap/Hops/Lupulus',0),('Vesanoid',0),('Vesicare',0),('Vexol',0),('Vfend',0),('Viagra',0),('Viatim',0),('Viazem',0),('Vibramycin',0),('Vibramycin-D',0),('Vibrio Cholerae',0),('Vicks Cough Syrup For Chesty Coughs',0),('Vicks Inhaler',0),('Vicks Medinite Syrup',0),('Vicks Sinex Decongestant Nasal Spray',0),('Vicks Sinex Micromist',0),('Vicks Sinex Soother',0),('Vicks Vaporub',0),('Victoza',0),('Victrelis',0),('Videx',0),('Vigabatrin',0),('Vigam',0),('Vildagliptin',0),('Vimovo',0),('Vimpat',0),('Vinblastine',0),('Vinblastine Sulphate',0),('Vincristine Sulphate',0),('Vinflunine Ditartrate',0),('Vinorelbine Tartrate',0),('Viraferon',0),('Viraferonpeg',0),('Viramune',0),('Viramune Suspension',0),('Viread',0),('Viridal',0),('Viscotears',0),('Viskaldix',0),('Visken',0),('Vistide',0),('Visudyne',0),('Vivotif',0),('Volibris',0),('Voltarol',0),('Voltarol Dispersible',0),('Voltarol Emulgel',0),('Voltarol Gel Patch',0),('Voltarol Rapid',0),('Voriconazole',0),('Votrient',0),('Warfarin',0),('Warticon',0),('Wasp-Eze Spray',0),('Waxsol',0),('White Soft Paraffin',0),('White Soft Paraffin/Light Liquid Paraffin',0),('White Soft Paraffin/Liquid Paraffin',0),('Wind-Eze Gel Caps',0),('Wind-Eze Tablets',0),('Windsetlers',0),('Witch Doctor Gel',0),('Witch Hazel Gel',0),('Woodwards Gripe Water',0),('Xalacom',0),('Xalatan',0),('Xamiol',0),('Xanax',0),('Xarelto',0),('Xatral',0),('Xeloda',0),('Xenical',0),('Xeplion',0),('Xigris',0),('Xipamide',0),('Xismox',0),('Xolair',0),('Xylocaine With Adrenaline',0),('Xylometazoline',0),('Xyloproct',0),('Xyrem',0),('Xyzal',0),('Yasmin',0),('Yeast Plasmolysate',0),('Yentreve',0),('Zacin',0),('Zaditen',0),('Zafirlukast',0),('Zaleplon',0),('Zamadol',0),('Zanaflex',0),('Zanamivir',0),('Zanidip',0),('Zantac',0),('Zaponex',0),('Zarontin',0),('Zavedos',0),('Zeasorb',0),('Zebinix',0),('Zeffix',0),('Zelboraf',0),('Zemplar',0),('Zemtard',0),('Zerit',0),('Zestoretic',0),('Zestril',0),('Ziagen',0),('Zibor',0),('Zidoval',0),('Zidovudine',0),('Zimovane',0),('Zinacef',0),('Zinc Oxide/Bismuth Subgallate/Peru Balsam/Bismuth Oxide',0),('Zinc Oxide/Cod Liver Oil',0),('Zinc Oxide/Lidocaine',0),('Zinc Oxide/Lidocaine/Benzoic Acid/Cinnamic Acid/Bismuth Oxide',0),('Zinc Oxide/Peru Balsam/Bismuth Oxide',0),('Zinc Paste/Calamine',0),('Zinc Undecenoate/Undecenoic Acid',0),('Zineryt',0),('Zinnat',0),('Zirtek Allergy Liquid',0),('Zirtek Allergy Tablets',0),('Zispin Soltab',0),('Zithromax',0),('Zocor',0),('Zofran',0),('Zofran Melt',0),('Zofran Suppository',0),('Zoladex',0),('Zoledronic Acid Monohydrate',0),('Zolmitriptan',0),('Zolpidem',0),('Zolpidem Tartrate',0),('Zolvera',0),('Zomacton',0),('Zomig',0),('Zonegran',0),('Zonisamide',0),('Zopiclone',0),('Zorac',0),('Zoton',0),('Zovirax',0),('Zovirax I.V.',0),('Zuclopenthixol Acetate',0),('Zuclopenthixol Decanoate',0),('Zuclopenthixol Dihydrochloride',0),('Zumenon',0),('Zyban',0),('Zyloric',0),('Zyomet',0),('Zypadhera',0),('Zyprexa',0),('Zyvox',0); /*!40000 ALTER TABLE `medications` 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 */; /*!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 2016-12-13 13:51:43 openmolar-1.0.15-gd81f9e5/src/openmolar/resources/newlogo.png0000644000175000017500000021271412033133562023706 0ustar neilneil00000000000000‰PNG  IHDR3«7¹sRGB®ÎébKGDÿÿÿ ½§“ pHYs > ><7±œtIMEÙ ,(œýÝ IDATxÚìÝw|uÂ?ðÏÎöM6½˜„½WAªEÅ‚ç#b¹;ûé=ÇØN±qwêïôîD°€ ø¨"*(ˆ‚" „’NHO6u7Ù2;óû#ìf'›¤@ø¼_¯}m¦ììÌìf2Ÿ|›J–eDDDDDD—§€ˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆˆa†ˆˆˆˆˆfˆˆˆˆˆˆfˆˆˆˆˆˆ:І§€ˆˆÎGzz:Nž<‰¬¬,dffzŸ³³³!Ìf3Ìf3‚‚‚¼?›ÍfôèÑ3gÎÄäÉ“¡Óéx"‰ˆè¼©dY–yˆˆÚ,ËHIIAqq1JKKQVV¦x¶X,Fll,bbb‹ØØXÄÅÅaРA„‹·ÐüÔ©SX·nÖ¯_S§N]ж0mÚ4\ýõ˜3gâããùå!""†"¢®PVV†Õ«WcåÊ•ÈÌÌ<¯mDEEaöìÙ˜3g®½öZvùqÙív¬\¹ï¿ÿ>>Ü!ï¡ÑhðÀàùçŸGTT¿LDDÄ0CDÔvïÞ·Þz Ÿ|ò G»mW¯×cæÌ™xâ‰'0a„N?.I’°fÍ<÷Üs8sæL›ö7)) ñññE6› V«V«Õû³ÓélqX´hþô§?! €_.""b˜!"ê?þø#~ÿûßãСCm~ Fuu5Ünw›_wõÕWãÙgŸÅôéÓ;娾ùæ<þøã8vìX“Ë5 ®¾újÌš5 }ûöERR¢££¡R©ZÜ®ÝnÇž={ðÝwßaÛ¶mHKKkr½˜˜¬_¿“'O戈fˆˆÚKyy9žxâ ¬Zµ M]B5 ®»î:L:ááለˆ@XXÂÃà A IÊÊÊPTT„ââbaÿþýøæ›oPZZÚì{?¯½öÆ×!Çf±X°páB¬Y³¦É 6qâDÜ|ó͘={6ÂÂÂ.øýΜ9ƒ5kÖà­·ÞB]]b™^¯Ç|€Ûo¿_:""b˜!"ºPÿùÏðøã78âãã±`Á,X°ÑÑÑçµ}Y–qðàAlݺ7nDVV–ÿ…[¥ÂwÞ‰¥K—"..®ÝŽmýúõøýïßä±MŸ>‹/Æ Aƒ:ä¼áïÿ;Ö®]«(±R©TøûßÿŽE‹ñËGDD 3DDçÃétâî»ïÆÇì·lÀ€X¼x1¦OŸÞ®=‘I’„7âµ×^k²ç°€€<õÔSxüñÇa0Îû}òòòððÃcóæÍ~ËFŒçŸ'Nì”ó|üøqÜu×]8}ú´bþ“O>‰¥K—ò‹HDD 3DDçÂjµâæ›oƶmÛóF#-Z„GyMÇ Û%Ë2¾øâ ,Y²¤É’šÄÄD¼òÊ+¸í¶ÛÎi».— ï¼óž~úiTWWû¥Å‹ã7¿ùM«í`Ú[YYæÏŸƒ*æòÉ'¸õÖ[;}ˆˆˆa†ˆè’TZZŠY³faÿþýŠù×\s þþ÷¿#!!¡ÓöÅåráí·ßÆ«¯¾Ššš¿å#GŽÄo~óÜqÇ-¶g)--ÅÛo¿åË—£  ÀoùŒ3ðꫯ¢G]vÞëêêðàƒ⫯¾òÎ ÆÁƒѳgO""b˜!"j-ÈLœ8QÑã–J¥Â‹/¾ˆGy¤Ëö«¬¬ K–,ÁÚµk!I’ßr½^I“&¡gÏžHLLD\\ qêÔ)œ}.—ËoÐÐPôîÝ'NÄo~óÄÄÄ\ôŸËÑ£G±lÙ2lÙ²Å;ïùçŸÇsÏ=ç 3 4DD 3DD—}q80`rrr¼Ën¿ýv¼ùæ›—ÔñH’„ââbäåå¡  ÑÑÑèÓ§ÏEW¬-222––†_ÿú×Þ1hBCC‘‘‘àà`owØ 4DD—§€ˆddïóêÕ«A¦gÏžX¶lÙ¥wqÄÄÄ`̘1˜;w.ÆwI0™Lˆ‰‰ÁŒ3¼ó***°bÅ H’äíÿ›#"b˜!"ºlÃáP ̨R©°råJðuq˜€;ï¼S1(éºuë IdYf!"b˜!"ºrss½ËfΜ‰‘#Gò$u1£Ñˆ‰‰Á°aüóSRR‘‘¡4 5DD 3DD—U‘en·Û¯:ÙÂ… y’.:ÎûóĉË>ÿüsˆ¢è 4DDÄ0CDtYϳ$IØ·oŸ¢­ÌäÉ“/ÚîŠ/7*• Æf|úoÞ¼¢(Âív³t†ˆˆa†ˆèò 4žR™Ï?ÿ\±ìà ºˆxÂLXXè¿oß>TTTÀív+Jghˆˆfˆˆºuˆ‘$ n·¢(â‹/¾ð.7 ˜2e OÔED«ÕzömÇäv»qôèQoU3V7#"b˜!"ºlÛíÆÉ“'‘––æ]6iÒ$o£sºøÂL¯^½ËRRRüªšÑåAÃS@D—cˆñQñý÷ß+Ö¹îºë:uŸœN'jkk½7ã S-„™¤¤$ŲÔÔT8Nh4‚A¼†i1Ìu»@ã[Å,++K±üÊ+¯ì°÷.))Á±cÇ’’â}dffz~µZþýûcäÈ‘¸ýöÛ1nܸN Uééé8qâ„÷a·Û¡Óé Ñh Õj¡Õj¡×ë1xð`Lœ8ì”Àài3±±±Ðétp:€S§NÁétz÷S’$¨T*""†"¢îb|Ûˈ¢§Ó‰Ó§O+ÖKLLl×÷-((ÀªU«°~ýzµº¾ÛíFjj*RSS±fÍL›6 Ï<ó †Þ!ájÍš5ظq#ÒÓÓ!Šâ9½>,, ãÇÇĉ1a 0 Ã?GAÌÌL@ff&œN'\.´Z-Ôjµ·t††ˆˆa†ˆ¨[ßR§Ó‰3gÎx—‡‡‡{Gœ¿P{öìÁ;#/¿üòœC‚¯ï¾ûß}÷fÍš…?ÿùÏèׯßï›ÅbÁ³Ï>‹7Âår÷vÊË˱yóflÞ¼0~üx¼øâ‹1bD‡~ŽáááÞ0SYY »ÝƒÁQ¡Ñh½š1Ðu_쀈.›Ó¸3—ˇÃüü|ïz ô>‡k×®ÅÕW_9sæxul_}õ&OžŒE‹Áb±œ÷yøòË/1yòd|òÉ'dš²{÷n\{íµ¸ÿþûýJ¼ÚS`` â˜*++ár¹]4³#""†"¢nj|ÃLuu5***.8Ì8pO=õ†Šßÿþ÷HIIéýw»ÝX½z5ÆŒƒåË—{Û´vÌgΜÁ|€«®º ÷ÜsŠ‹‹;ôÿ÷¿ÿÅUW]…çž{Nq~;"Ìõ%M.—ËÛ«»h&"º<°š]VAÆ·½ŒËåBNNŽâ¦·-aÆf³!??yyyØ¿?>ùädggwê±TWWcñâÅXºt)®ºê*L˜0¡¡¡P©T………HKKCzz:ÒÓÓQWW×éçÛétâ­·ÞÂÚµk1{ölŒ?&L@||üy}v-…™òòr8Nïx3¬fFDÄ0CDÔ-ƒŒo{™ÜÜ\¿ òî»ï"77%%%°ÙlÞ‡ÕjEqq1*++ÛeŸt:"##„²²2X,E¯fmQ[[‹íÛ·cûöíí¹¯ªªÂÚµk±víZ@||<Æ+¯¼ÉÉÉHJJBll,¡í•ÓžjfM•Ì0Ð1Ì]ÒAÆóÜRãXµjU‡ìƒV«Åøñãqýõ×cÚ´iˆGHHˆbI’`±X™™‰-[¶à믿ÆÑ£G;í<©T*Œ9&L@LL ¢¢¢N‡ÒÒR””” ¤¤)))رcl6Ûy½Ï™3gðñÇãã?V»„„ôìÙ½zõBrr²÷9..ίd¦qõ:Y–ýÂŒ$IA†ˆˆa†ˆèÒ4Û˸\.EãÿŽrï½÷â/ù ÂÂÂZ\ODFF"22ãÆÃ /¼€ãÇã±ÇÃîÝ»;lÿz÷îE‹áºë®CTTT›^ãp8°sçN¼÷Þ{øüóÏ/xœN'222‘‘á·L¯×£GèÝ»7FŒ‘#G¢ººZ±ŽÑhTtÀ63DD 3DDÝ.Ð4.™i|SÜžAÀ¦M›0}úôóÞÆÀ±mÛ6¼üòËøÛßþÖ®û§R©ðè£âÅ_„Ñh<§×êõz\sÍ5¸æšk°qãF<öØc(++ëóèp8™™‰ÌÌLlݺ€›ƒÁ (™ñí½ŽṎˆº/öfFD—MifÚ»[âÆfÏž}AAÆ7t<ùä“m.59—ý[¶lÙ9™Ænºé&¼öÚkúyZ­VïÏjµjµÚ¯Š»g&"b˜!"êVA¦3ÃLß¾}Ûm[z½‰‰‰íº÷ÜsO»më–[nÙlî’Ï×·T¦¹®™jˆˆfˆˆ.É ãûsãjfiÕªUŠ„ ±wï^üòË/íº[¶li·mýôÓO¨©©é’ÏØh46dX2CDÄ0CDÔ-Mã’Oy³[QQ &à§Ÿ~º }_µjæÎÛîû÷ÑGáÓO?½àí¤¥¥á‰'žè²Ï×f|«˜5îš™ˆˆfˆˆ.ù@ã)•éŒjfžýk®¹·ß~;>úè£67’ÏÌÌÄ¿ÿýoLž<¿ûÝïPUUÕîûf·Ûq×]waÞ¼yçÕtII –.]бcÇvjÒM…·Ûí}°d†ˆèòÁÞÌˆè² 2m)™IHHÀ”)Sâ} P?Lqq18à7Ðf[ÞÓ¦MØ´iAÀ!CïÇÅ3h¦g,—ÌÌÌ&»(î(_~ù%¾üòKôèÑsæÌÁ¤I“pÅWø3SZZŠââb;v _~ù%~ùå— z½ááá Cxx8DQDVVŠŠŠÎi»¾%3쀈ˆa†ˆ¨[OÉŒÓéô»Ù}ï½÷0bĈ·YVV†àÀøþûïqðàÁ6ï$I8räŽ9rÑ«¼¼<¬X±+V¬è퇄„`þüù˜?>`2™š\¯®®YYYÞÇ¡C‡°wï^”––6¹¾Á`ð~®M""†"¢K2Èøþì 3-•̈¢Øêv#""0sæLÌœ9Ï<ó Ž=Š÷Þ{Ÿ}öìv{§ãÀ1gÎo80™Lp:øá‡°mÛ6œ>}ºË?‡Aƒá¾ûîüyóÚÔ ´ÑhÄ Aƒ0hÐ ÀñãÇáp8››‹ýû÷ãÛo¿U”\éõzE5³ÆU͈ˆˆa†ˆè’5¾¥3¾mfßìºÝîsÞþСCñÆoà…^ÀºuëðÆoÀb±tØñèt:,X°÷ß?úôéÓä:³fÍ‚,Ëøê«¯°lÙ2¤¦¦vúyà Ñ%d|ïM¯(Š~a£¢¢¢]ÞW§Óyoì,XpΡ¦wïÞxä‘G°aÜ:u Ï>û,ÂÃÃ/ì‚/øÕ¯~…={öàÝwߍI“Ú%paáÂ…Ø¿?zè!¿€x!:zìØ1os¥2,™!"ºü°Í ]Æ·ÝŒïÍoãÑ%3¾ñúë¯ãå—_Æ?ü€íÛ·###%%%¨ªªBTTbbbƒØØXÄÅÅa„ VzÔWͺ馛pÓM7!++ ÿùÏðí·ß"==]Z EÆ ôiÓ0uêTŒ=Ú¯º^{}n555~aÆWpp°÷sõ}f!"b˜!"ºäCLk¦£ÃŒ‡ÙlÆœ9s0gΜ‹êõêÕ /¼ð^xáØl6;v ĉ'àv»¡Óé Õj¡Óé Óé0dÈL™2å‚K‰ÚÂf³ù…+ßö2*• -ßgv@DÄ0CDtÉšÆUÍ|UÍìR€qãÆaܸqÅþTWW+¦ëêêžžî6™L¡Ma–ˆˆº'¶™!¢Ë*Ô4~¨ÕjÅ ñåf.6ÃLjjª¢ël“É•Jå-qi\òÂ’""†"¢nÏ·t¦£ª™Ñ¹q¹\~Ý27n/•JA ‚÷ç–1Ì]ôš«bä¹Ñõ½ ö 3,™¹84nø‡ò 3jµZñð 6¾A†¡†ˆˆa†ˆè’Õ8ÄøÞøúv%Ì0sq¨ªªRLçääàĉÞiƒÁNF£x4hdˆˆfˆˆºEˆñµZí½nfÚÒ=1uQýÂ̦M›Ó!!!Š^Ö<½®ù""†"¢K:Äx~ö 2ž£Õj¡Õj¡×ë7Ò6›'° UTT(ª ÖÖÖbÛ¶m ¸aaaÐétÐëõÞ à Q· 5ž@Ó8Èxnˆ}5už:Wyy¹búÛo¿Ut`6›¡×ëa0`4a4a0Æ7Ìx¾DDÄ0CDtIšÆÕË|¹¹¹ÞiNç-‰ñ„˜€€˜L&o§Kfbˆˆº/ Ouç ãi{ái3Ӹ݌F£ñ+™a˜é²,ûõ&÷ùçŸû­———‡ºº:¨ÕjÄÇÇ{KeÐxì ëùV1ûöÛo±ÿ~Årßý¾íž‡ß’˜êêj|ôÑG¸ãŽ;°lÙ2deeñD1Ì]z!¦¥@ã["à¹q¦Îã;¶LEEÞzë­&ƒLK–ú‹¢ˆ­[·âþûïÇsÏ=‡¼¼<žt""†"¢K+Ð4Õ€ p»ÝŠuM&OX'ò­öæ›o*:`ð”Ä4®Væ[2Ó8Ä´ÔFf÷îÝøío‹·Þz‹%pDDÝÿýHDÝ>Äø–¼4îªY¥RÁf³)^Ó¸ µÅbÁ±cÇpúôiˆ¢I’àv»½ÏjµIIIHNNFÏž=¡Õj½aæ§Ÿ~Â?ü ØžZ­ö+Ik®ýLãÀÚQñé§Ÿâ›o¾Á½÷Þ‹n¸‚Àÿí1Ì]áÆ÷9%%»víR¬Ã’™¶©¬¬ÄÞ½{qäÈ;v GE~~~›_/bcc^½zaëÖ­~Ë›jð߸½ÌùŽ%S]]þóŸøüóÏñðÃc̘1üP‰ˆfˆˆ.þ SPP€wÞyééép:ŠõX2Ó²={öàƒ>À¦M›àp8Î{;’$!//yyy8pà€ßgå[¬­þϧæÓ§Oã©§žÂرcñÐC!!!2à ÑÅÇétbíÚµøâ‹/`·ÛÀ¯“ɧӉòòrX,X,TUU!::IIIˆŠŠºìÎ[EEÖ¯_5kÖ --­ÃßO–e¸\.H’Ôd53ÏÃ3ÿ|ƒŒ¯½{÷bÿþý˜;w.î¾ûn˜ÍfþÂ]äTrã¿âDDÝŒ§½ÆÎ;ñæ›o¢¸¸¢(ÂétÂáp ¤¤DÑ5p¿~ý••—ËÕäöŒF#’’’0xð`Üqǘ4iR·˜±¤¤/¿ü2>ûì3¿,å_B£•ÐQ‰ýßZ½*A • @ÔP©¸œu¨(<ò¢”æ ¢(U%y$wˬT*˜ÍfDDDÀ`0@§ÓA§ÓA£ÑøuП…Ùlƽ÷Þ‹¹sçrÐM""†"¢®SXXˆýë_øùçŸ!IDQô†™ªª*äçç·|£ÞŠÄÄD,X°óçÏGttt· €ï¿ÿ>–,Y‚êêê&× Ç ‰7¢çЉˆLè!à¼ÞËQgEö‘]È8ð²ý—£®ÙuµZ-bbb ­Vë׫™'ø´—aÆáé§ŸFdd$‘ˆˆfˆˆ:ÛíÆ§Ÿ~Š÷߇²,{ÃLyy9rss½ã›´Fƒyóæáå—_Fhhè%{ÞRRRðÇ?þôÿ£¡4ä* r+†O˜°@´jAA8Ev——v—‡Ë ÑÝö?3¢Ë‰ÜÔŸ‘~`2»µªÉõbbb””¤L³½Je3›ÍX¸p!¦L™Â_*""†"¢Ž—ŸŸ—^z êÛ`Ȳ ·ÛìììNÔhuˆî9Q }a ! zc j«-¨,ÉCeÉ”奣¶º¼É×GFFbÙ²e¸á†.©sf³Ù°téR¼ýöÛ~cï‚0bÆ=}z ؤƒZ¨’,£Îé†ÝéFÝÙ‡$ËP¡~¹[’!ÇŸY’wêŽïþÇú²,)–GGG£_¿~V*ÓØÌ™3ñØc±ƒ""†"¢Ž³sçN¼òÊ+ŠRY–QWW‡ãÇ7Ym*0$C®¾IƒÇ#©ï`˜ 0éÕÐk`Ò«!I€S”à%¸D uNöïÞC;6 ëðNHnÑo›7Þx#–-[†ˆˆˆ‹þœýðÃxì±ÇPPPà·¬ÿØë0õÎ'Ð3>áf½÷|ÖØETÚœ°ÚEtô_’Ò3éØñÑß‘wJÙëYrr2âãã;%Ì@ll,þüç?£ÿþüE#"b˜!"j?¢(båʕذaƒß²ºº:£g ëÈ.ìøèïÞ÷ Ę1cêÿ°uAÕ¯k¯½üã¡Õjù‹IDÄ0CDÔú ù’%KpäÈ‘f×)((ÀÉ“'½Ójsÿ 3uNw‡µù0êÔ Ô¡¬Ò†ÿûÇ‘uøÅòn¸+W®„N§ëôó–Ûo¿YYYŠùC¦Ü‚÷<ƒ¸°@ÔȳԡÎénu{.GòÓá̉_`)Èö–ºš ¿ÞÇÚSdB?”IW¼‡§t¦«ÍСCñÒK/Ál6󔈈a†ˆ¨i‡Æ’%KPQQÑì:6› û÷ïWt1<ãžg1ôê[ÛôN» [ ìµÕ°Ûªá°UC­Õ#"¾7Ì¡mS« ºE|ýÎbßý¥bÙäÉ“ñá‡Âd2uÚyKMMÅ-·Ü‹ÅâóW@…IóÃø~‹FØŠ+íÍv¥ì(H?‚3'Aî‰_P”•ÒdOn]!)) &L@QQºêO[BB–.]ÚmO%"b˜!"jG;vìÀÒ¥KýzÞò%Ë2>¬;½†OÁMÿûºßº’äFAúadÞ‰œ”Ÿa­,£¶²Ô|©‚ÞdFD\o„÷HFD\oD'@Lò ¹ÒYÆ÷ë^ÅÁo×*f_wÝuøÏþÓ)UÎòóó1sæLyçi´:\wÿŒ˜x=®1 ¸Ê«Ýÿ¼Z+K‘úã&œ9¾‡!ºœ´/‚FµÎÈR}ÉŠ,C–Ýõç\–!ËÒÙónžT*æÏŸ   ””” ¼¼¼KJhÂÂÂð׿þ}úôá/,à Q½Í›7ãõ×_oñ¿î²,£¼¼\Qý̆»_þ¦ 0€ÝV…ì£?!ëÈNäÛí×Pÿ|„^‘ˆ3îÀ ‰7B«ozPÅ=›ÞÁîÿ.WÌ{ôÑGñ /tèy«ªªÂìÙ³UîŒæPÜô¿o ß‘4hP\i÷«vWš{ ¶®Áɽ[ÛVú¢RAk0Cc ‚Ö­)Hñ³Ö­1‚V߯=—!K Çí¬EEö!”gì…«®ºÉW 6 cÇŽ…Z­†(Š(,,„ÍfëôPc4ñüóÏ{Ûñà ]ÆÖ­[‡wß}·å[_Y†,ËØ¿¿¢÷²Yþ=úÆñŸ6#ûÈ.di±äåBè<åfŒ˜þ?Šˆõ[~ðÛµø~í+Šyÿüç?1þüÙ§Ó‰Ûn» ?ýôSÃ>šÌ¸ý™UHî3² ew˲Œ¬£?âàÖ‘{b_+ÙE€)<WôF`T/˜"â¡4ò}¨+ÏCîOëà´)«ªÕj,X°ƒ*• ‚ Àjµ¢°°¢(vj¨Q«ÕX¸p!®¿þzþ1ÌÑåêí·ßÆÇÜj€¢¢"ÅX3Á‘qè?ö:øæ#ˆN{‹Û4:Ãz@£7A­3Ö?´ïÏ¢£öª"Ø+ë’Ø|u+• `ÀU³põìXöýºWqð›¼Ó:Ÿ}ö®ºêªv=o²,ãÁT "ªÖhqËŸ–cؘñ°ŸKÇãøî/±oó»(/Ìiî¨`Ž‚9n@}x‰L„ îºÞ»$· §w~k±²3ƒøøxÌš5 *• jµ²,C­VÃb± ¤¤’$uê~Þu×]¸÷Þ{ù‹LDÄ0CD—Y–ñúë¯cóæÍm 2n·ûöíƒÝnoó{èÃÛæØþˆê • nëÞÁi­@]y>ʳöÃZ”¦Úx‡cÆ=Ï!yÄŸý•°ñõÿEöѽóÂÃÃñÍ7ß 11±ÝÎß‹/¾ˆýë_>W|f=øWL¾v.¬vÑdl•eøöý—udW³!/¬÷XD ¼jñ"ûŽHÈùáX‹Òó‡ ‚n¸áìa«¼Æív#''GÑv¨3\{íµøÓŸþFÃ_l""†"êîDQÄßþö7|ÿý÷m =pæÌddd´|ÑÔˆL‚9¶?̱ý 7G´Ëþ:ªKP–ö3*³Brû09àªÙ˜zç0¨ï-mý’{Q–ß°¿}ûöÅ–-[tÁûóÞ{ïáÉ'ŸTÌ›tÛÿböÁjwyƒÌɽ[ðÝš¥°Ûªü¶¡1"jÐ4„%9‡×5JR¶¡8å;ż±cÇbæÌ™P©TÞ‡GUUNž”¤îð«†y±}†ª-…XûÒÔV—{×™6mÖ­[µúüÃÃ×_{î¹GQjØ´_áæC”$Ô:ܨ³VbûAÚþm~¯×E"føõ0Çö¿¤¾7EG¿Aéqeø:u*&Ožì 2¾FE¤§§£¤¤¤Óö±_¿~xõÕWhˆˆÚ‰ú…ŽîF‡ˆèØl6<õÔS8tèP›ƒŒ,ËÈËËSŽŸâ#ðŠ>èyõ¯’4‚¦cªÔZD&!$qì…pÕVz—¹ìµ8¹çk„^‘„ð¸dèMfÄõ?Yª/)ÉÎΆÍfôiÓÎëýOœ8Ûn»Mê’G\^@…:§E§±þ¯¿FaæQ¿}»òfô¸ò–v+±êLÑÉëjPW‘ï—““ƒèèhDDDø•΂€ÈÈHFTTTtÊØ4‹ÇÇÔ©S/(°à ]dª««ñøã+ºn Y–‘’’ÒdÃîÐ^£8þ¨õûŸpµÎˆÐ^#¡ÖQ[šã©^’ÜHÛ¿ Z½±½‡ÁàÈ8dh¨"uàÀŒ;IIIçôž‡¿úÕ¯PXXèÓknþÃPkµpŠŠsŽã“eÂVY¦xm@T/ôšv¢z^Òß¡ Ø~pT—ÂQÝPÚRTT„¡C‡ÂívÃívCEÅÃ`0 <<555Í–ìµ§ââbdeeaÊ”)2Æà Qs:xê©§pêÔ©6Ïsff&*++ýÖ ë3=ÆÜÔü`–NSD‚ãÃZ”·³Ö»ätêÔÖT ç ˆLè Ñå@AúaïòüwÜq C›ßmñâÅØ²eKÃ}x ~õÔ;ЙÌd ÷ø>ü÷ÿ= GmÃ-*A¸Ñs;ꨵ†Kÿ‹¤R!¨Ç@Ô¦A¬«?¨®®0™Lp:°Ûí~Ï’$yÛ*ÕÖÖvønæåå¡°°'Nì’=‰ˆfˆˆÚ‰,ËX²d öïßίs8Š®˜=‚†"~ì<]£¨Ñ $qj-¹ŠjgÅÙ©¨,ÎEï‘Ó?` ²Žì‚­ª¾Ä¤¦¦yyyÞ¹Z³}ûv<óÌ3>!EÀÍø'ÂbêKZ2|‡Mÿþ£¢{jµÎˆžSïCPÜ€nõ}R©èÂP™ÓPU±¶¶}ûöU„ঞ«ÕÚá]8gee¡¦¦W^y%/DD 3Dt©Z¾|9¶nÝzN!ÆãèÑ£p8Šåº€P$M¹‚úâéWÐh’4 Žš28ªª@•åg ¼(}FÏ@~£ºk#¤³ígNœ8>}ú`À€–ÆÅbÁ¼yó`³Ù¼óÆÝpN¨BYGvá‹7Ar‹ÞåZczM¿ÆÐ˜nùÒ†¡&ÿD{}éŒÝnÇðáÛì 1­V‹ˆˆ¸\.ÔÕÕuhÉÉÉ“'!Ë2†Î à ]j>ýôS¬Y³æœ_'Ë2 QPPà·Lc ‚µ0 5'`-΀­4nG- ÁÑ]Xå¬¾Ä 8~0$щڲ܆0’Ÿ KA&†^}+tÆ@ä¤ìö.Ûµkn»í6˜Íæf·{ß}÷áØ±cÞé˜^CpÝý/C¥{b6ýs!ÜbC[½9½¦=9ü’ÿþ¸vr“]GÛ«ŠPWž$ ÉÉÉ0m 4²,#$$‚ Àjµvh 9zô(Ìfs«¡•ˆˆü±å!u™~ø+V¬8ç¹¹¹HKKkrGu ¬Å¨:“‚Ú²\Ccœ0¤KƒŒO¤AÌðYˆxµbnúþíøâÍE6í6$ h¨vTYY‰G}´Ùž¶V­Z…o¾ùÆ;­Õ›pýƒ… ¨Q˜qŸ¿±¢«¡‹h}PzMÚ€nñR ²w¬‚h·ú-ÓG+¦«ªêÇÒ‚ @­VC¥R)ž=óA€$I EBBB‡ÇòåËŸ#µ Kfˆ¨K¤¤¤àù矇Ûí>§ SUU…ÔÔÔVGp7E$ nô\ÄŒœ CHÌE×È:0:%ØJs¼ó*ŠrPš›†iw=…ã»7Ã}6„œ>}¡¡¡5j”b§N¯ýkˆbCõ±kî} Æ 4÷>}õa8í UÏtaHžv?4Fs·ù©5Ê3öÂ’ö3Ì1} Ñx—9k,¨ÎKõN÷ï߉‰‰Ðëõ0™LÐëõ€Á`€ÉdR<ûÎ BPPÊËË;´ûæŸþÉÉÉžˆˆfˆˆÎÓ™3g°hÑ"ÔÕÕµù5N§'OžDFF†_½9á½Ç"fäD šzv¬”‹·§¨Àèd€­$»!ПFeI.O¾9Ç”ÕÍ¢££Q[[‹²²2”––â¾ûîCqq±w¾c®ÁÄ[EyA6>Yöì¶*ï2­)½¦Ý­)¸Û}Ÿ5e¨)LCåéÃ0†õ€.0 `-΀µ(Ý»ÞÈ‘#FµZí-ñ”Æ4.™ñ}6™L ƒÅb9§~.dYÆ?þˆ¡C‡"::š "¢6PÉ1J‘çf½¢>úh«%+¾*++‘ššÚdˆQk ë}%B{þmRtd+JOüpÁÛ4ñFÍ¡8ùóW°V–zçk è5ýKr ̶pÕVâÔæÿY¡Ôèqå­IŽÂÃ_£ìä.ïz÷Üs"##¡Õj½AÅ3f[Kîìv;Ž;Ö¡Ý7‡††båʕ烈ˆa†ˆ.v» .l¶­KSrrríW½G†˜á³Ôc`·87y{?EEöÁvß®ZgD¯i÷ÃrE·þnÜ Kš§$K…¸Ñ7¢¦ðªó`½ÿþûN­Vë-•iK‡¾DQDjjj“cµ—¡C‡âµ×^ã šDD­àU’ˆ:…,Ëxùå—Ûd\.Ž9‚¬¬,E4:\1üzôµ°Ûè1v‚âÚ÷xISîíöA¢‡Ìð©B'#ÿç¨)l¨bY–!Š"Ün7$I‚,ËçÕF£Ñ`èСˆŠŠê°ã9zô(V­ZÅ Qk×dž"ê 6lÀž={Ú´®(Š8pà€_UCÈH˜0¿ÛV—Jœ´å{ë»’v9 ‰H¢óìÃÉí„ä´C–[ÌQPk‘4ùn˜Âã/‹ï—Zk@±ó½c€³aJ m[¢££½aJ’·Û F£èÍ ð/‘eY1Ï3-Ë2zõêY–QZZÚ!Ç´~ýz <ãÆã„ˆ¨¬fFD.++ <ò\.W«ëʲŒ#GŽ ¼¼\1?´çHÄŽž A­å  Ën@’!KnH’Yr×?Üõ?«µ†nÓýò¹(<¸ei»ýæ5 ÑÑÑ0 0Ðjµ~UÍ|XÒÛCff&>úè#Ü{ï½¼Ð1ÌQ{ËÎÎÆÛo¿Ý¦ “ŸŸ¯è‚Y%¨‘0q>t¡]¶ÿ’èDIêwõ7®†€ Ú–N×qÿ=×jÔˆ FTxÓaA–dTÔØP^eEQi%Ε!¿¤ùÅØ®Ù'Y–Pg9W]}7Å¢ÃÖ¥aF%h=x:ÎìùDñýŒïø±w0xð`9r¤ÝÛЬ_¿3fÌ@=xÁ!"†ž"j/.— ùË_Z­^#Ë2²²²ócG݈€Èž]z ei?A´×w±+¨µDÇy—íØ›V—è†Óå‚Kátº!É4 4‚­F µF ­Z€F£†F­>û,@«Ñ@£ Qkb6!<ÔŒˆ3ômI*A…°à@„¢·Oé,–Êä[_dAV^1ŽgæµK±•dÃíl(eí¶.ÿNņp`$—›› ·ÛÝ)={ú}ÏÛã÷ìõ×_Ç«¯¾Ê‹1ÌðQ{Y½z5²³³[ 2@ýx2¾Up‚† ,yL—î¿ÛY‡²»¼Ó‚V§µ†˜óÚÞχOuÈ~„ˆP3"BÏ>‡Ô?Bƒ!Í÷í¢RáìëÌÞ? yEå8žùé…FÔ–å*‚ H¢²[ì²v3ž@’0噿¨÷(++  ð¶yEÑ;†‹§š™g™oûÏw×·]MÃymºMTT, ªªªÚõ¸:„íÛ·cúôé¼ðà Ñ…ÊÏÏÇgŸ}Ö¦uKKKQVVæVë ˆ9§Ë¡"ëÜ.»wZg ÓV CðíÖJÄD†!9>F½gŠ,ÈÈ-„Kl{iÕf‡ÕfGN~‰ÿÍ» 48!õ',1‘!ˆ‰EdhT‚ò8œâ…W9«+/€h¯irYWW5€Ðž£¼aƤãããát:½gªTªC`Ká¼q;ßy²,#66µµµp¹Ú·zßòåË1vìXòDD 3DDbÅŠ­6v–e’$ù'sŰë¡1˜»üÊ3:-P jDõ„,‰pÕUAk ¹ m'ÆFbö”QHNˆ†É ¬¶ær¹‘~ºGNåàÇ'!]@ I’`©¨†¥¢§P ¼àkD‡‡Ö‡›ÈPÄD†ÂV縠ãrT—Âi+ovyuþqh 0Çö‡ îš¸L Л#਩Ð%%%¨««ƒF£ñ–¾¨. ¬6Õ&Æwž,ˈGffæ½Oc•••x÷Ýwñ‡?ü "b˜!":_ÄîÝ»ÛtןŸ‡£á: ª'Â’Gwù1ØJ³½7»`ŠL‚ ÑœÖŠó3µ³§ŒÄµ†5ûŸ­V½ã1°w<†è‰÷>û¶Z{‹ÛÕjÕ˜0¢?Æí³ÉA-àDf>~:xYyÅŠu• ’,C%ä[_li—s檭‚½ª¸ù “w•§B{ŽD±óºìó N†’”íÞïbii)Ìfs‡ pÙôç¥ELL Û5ÐlÞ¼3gÎÄ€x!"¢Ë’J–eqMDçM’$<ðÀ-¶•ñ\fDQÄÞ½{}:P¡Ïužw›”ötfÏÿ¡2ç°w:føõÐ4sLßsîÀhÐáO÷Þ€¸èðsz]Eµ ï~²Í/”x„‡˜ñÇ{o@X°õ"Y’ñÕ®ƒP ®Ú!f$YƉÌ|ì9’†ƒÇÛ§1º$:a-Ê€,»› :Õ(:ü5d¹¡{è7ÿ}@—|¾¶ÒldmÇ;Ý·o_Œ;Ö[ͬ¹®™Ûõ®J…‚‚TWW·ëv“““±bÅŠóª&GDt©ã•ˆ.ÈW_}Õj£‚‚EOgÁ C.Š ãvÖ¡êLŠwZ¥2¼c•œ‹s&Ÿs€Ð <ºà:˜ ~Ë,¼{v“A¨ïÅlö”Q¸nÒ„í @£VcHßÜÛ Ü~ý¿v3磮<¯Ù 噿(‚ Ô–î²Ïد舠´´Ô^AðšÆÏžGsó[[î;_¥R¡GÞA:ÛKff&6lØÀ‹]–XÍŒˆÎ[mm-V¯^Ýâ:¾¥2¹¹¹ 7Ý*ÑCf\ÇQ™s²»¡½9¦¯ß:žîšÛjâÈþ9¨—ß|—èÆ‘“9ÈÎ+ÝéDr|4õN@°Ù¤XϨ×ãÆ©c°îË]Šù“Æ @xhÐyëÕWBµ­_ï_n—öÊæÛɸvTä4”jKsÓû?GHâ°N 3@}û,O˜‘eÅÅÅ F£é´ªf@}û™¤¤¤v¦®®o½õ/^Ì ]VXÍŒˆÎKAAA›»böÜ8úŠ0é¢8Žâcß*ºë5º™›Yng]›¶Ù;1:­òEV›ÿþð+EñpºD¼÷év=¥¬†¥T˜qÕ0ïtp  ¡AÊêe[wÆ>ÿoüg³ßv].7¾ýéNe+{53èµè“{î'K–Qg9 ù…ÊœƒÄ¦M­«(ð.+9þ=Ê3ÆÐyÝ F)d=sæ $I‚$IeY¾;Z=оí‡vîÜÙît1ÌQ·´råÊ»bö½1t:¨¨h¸‰7†ÆBÕåÇ`¯,‚%}OÃÍnt2ŒaÍßä7²9ý“ü·±qû>T[[CŸlÝ ±ÑèôÑá ¥MT/Ë>Skjý·½}ï1lضË×m(*HDȹw…í°Zãð4u>m¥ L«7bà„†ñƒdÉòÌ}pZËQrl€ú’°Îb O€Jh™ùùùp»Ýd€úÎúöíÛ®Û”e~ø!/NDÄ0CDÔ’#GŽàÇlÓÍ•,Ë(**RÌIÞæ÷ªÊ=†œV£*÷¨_ƒò ᪭BîîuÞmjôí9²Å×ˆŽ¶…™~½âüæ¥dä¶úº²Š—)«íE„™}ÂŒ)«¬9NüƒNnAiý±6:MÆsk„.K"U%-,w+¦€ñ7?Œ±s~ •ªáOMé‰](NÙ^ÞU*ht¦NûÞªÔ˜ÂãÎ]Y‡_ÉLg BLLûv€±sçNEÛ4"¢îŽmfˆèÜnjeË—/ouߟ-ŸqMT*'móûéͰe¢¦0º€PD¹!IÜ_»Yr£ìÄN¥l|ö3¼Ï8EoWMikÉŒZ­ü?‘ÃéBUMÛ^[ZQ£è-Ðh€Ñ C݉ðF¥)² ”WÕ4t,gƒNP  rŸÊ«Ï­C{UI‹½—Uå¦(:IˆJ€‘×Ü •  ï˜kpjßÖú@h¯ñv­Ñ™€nŸÒX@TOØJë{ß“$ 999èÝ»7DQ„V«…J¥‚Z­V|=ÕU*•wÍÖ:ð¬ßÚëãââPZZÚꀳçòûùá‡â™gžáÅŠˆfˆˆÛ¹s'222ÚtSåyØl =_™Âã¡5¶½7.Ch "NAIê8m8³çÿPvêG\1üzF'ŸÓ¾×ZÎ ß¿µ¦`í~. IDATèƒ[¯ö&KnH¢£ÕñfJË«ÖÈtZ °ÖµÞà>ÄàXÔgK6‡™jk­·úXP€ Gy¥õlÐñ?ße5m>o’ËÑb×Ô.[%j N4ÜÄ ®¹÷9¨ÎŽ{2öÆû¶ÿ[ÈÞÞ»êoø5Fs§¢z© Ó999ˆŒŒTŒ7ãéÀ7ˆ4þn·ÔI@kË‹ŠŠB~~~»u<°cÇÜsÏ=ˆ‹‹ã‹ˆº=V3#¢sòé§Ÿ¶b|¶Ûípû´1†ž{Ãó¨AÓ’4žÒ˜ºŠdïxß,GyÆ^¸-‡W]5 |Ìm+š±ÞU[ W]ÛJ*DGë””WùÍëxE«¯ 4«ìá-¯Äâ A‘z++«l|ñxædæÁåª?×i9…Þ×5Õ>ÆSjÓu•…Þâÿå™ûŸûÈóÔÐëZD\o\}Ç"¿—ªuÆNÿþš"=Ò•””@E¸Ýnog¾4ž×Òü¶.oü†ÙÜ~ÁN’$|ôÑG¼XÑe%3DÔfÇÇñãÇ[]Ï·TÆjU†}йƒ¡Ôˆw"úM@Ñá-°×— Õ•ç!¿<7ÃÖúàhH’ ‚J•F Ù-¢¶,÷l€i©=„ ká)„öÕ꾸µ@+] —”ù‡™[®‹”ô3~ ü}Ý|ÍXþ;23ßûsã’OÉ TTÛðêêMP©“Ñ[mCÀk\2#Ë€¥²m£Ð‹v«¢··ÆjŠ3à¨i¨Fh¿ãoyÄo½3þÅ9Çqü§/ºô;,¨µÐ›#¼¡¶¶¶V,|«Š©:© œ$Iˆ‰‰AZZZ»½ç¶mÛp÷ÝwãŠ+®à…‹ˆº5–ÌQ›k©Lã*fõaæü{13†Æ¢çÔß iʯxEo{ YrÃVvå™ûP™}åY¿À’¶å™û`¯*ò 2­ÓïzzSC8°–dA]m3­—Ì<ž k£1\"Âñð×"Àdh"¬©pÝÄá?¢Ÿß²“Yyµ $HY­©ªb² E©AÊî«jl~½›5ÇQ]Ú¹°£êlûéw= ­¾é—겿ϳ+8m>=늕®¢V«Û5x¸Ýn¬[·Ž-"êöX2CDmR\\Œ]»vµºžo©LS7ˆmt²5æ˜>0Çô«¶ EG·z”·F¥0dòM˜ºà)¨5ZT•`ÿ×Ôï·[„­8æ¸þ-nC­¾OÃÛ÷aÁ“ó&Ç㹇æá—” œÈª/q‰ ¤Qýþ=2s‹pòì1a!~¥6m­*Ö¸d¦­¯s;ë :š¯~W™s’»!ös z ›Üô÷'çòÓ*÷«_ç5䪭RŒƒã;Ö‹gÀLál[µZÝlÃ~I’ ‚ßrY–›œïy]sȲŒ¨¨(X,–vë `Ë–-X°`"##y#"†"º¼mذ’Ô¶ÿæû†Fy™ëªÛmŸ´¦`¸j«Z]/ 8C§Ý†!“oA`HÃ݈ÿƒƒ[?„$ÕWýª.LC`l¿–wKnÈ’»ÕPöóáS˜sAL“øl<Ò-O|îm¢(‚çyŒ3¢(æìó¾ñÆvkt‚ 3Aœh¼ù曇ûî“’˜b¦iš­gªsö¾:o·ØýcǎŲeË0sæÌ$µgó:¼ñèšQƒ…+ÿÕþþê÷äDÌ@s[îyòlý²ÿwÚ4·ãþ¿üûkìF ó|IbÉjŽÔéi}o ´"iB¤½1‹+\^Q¬¸<áZÐðþs¿Ã;ÏÜc;GæþƒmÐ5uH¯cM•Ñq`[Ðã8øýþ$'3«8ê:–e1nܸœíO’$¼ùæ›ô#F‰‚ NL4MÃË/¿Üïõq÷Ú Ø¸ÁÆ}9yo­{6ڦnjƒ@ €ÂÂBœ~úéIµÕ[ÿ™$hÊ&ÍAÙ”¹¶A¼Õk bˆ7Ìüã‹oãÙ|€ýµÐµ4!*áok7âîÇ_¾!û,¶ËpøH3Ô~¤ý¥°eníè=5O×TÈ–"ùÄóÛyè3Û¼Ó/¹ßMP¤^{èVl[ÿLÒ@Ýú¹ºú-~m·8Œ=@¼XÞ4Ƶ{,)++³}gʺuë臌 ˆãª™!¢W>úè#466ö)`R ãNwaa!ššzîä7lSιq@fº&u*‹ãp8à÷ûÑÔÔY–!Š".\ˆýû÷Ûš|Voý'ðØÿÃù7Ücº¡tηð}=õÁú=pL_’^̨RæÇqÛn|´m7\*'Áı£…ÑÚ@k{7šÚ» Éé ¿wí¯ÅO~÷4Š óà÷ºq ®¹_¯›çu¥3½Gf¤Pt=µP 6î³¥Ÿ®˜‰ÊÅ«ÌiU‘°æ÷?Àá/?¶m7zôhŒ7[·n5çµíÝߘéCt%ëhÛ»É6§¤¤±X Ñh<Ï›)ŠÖZ/£nÆx6®ïLëfRmoý¾$®_ZZŠÚÚÚœ|òúúzìܹsæÌ¡4‚ HÌqbÑ—s*“ñx<E’ÑÎF4ùFÏY‘õûjÜñV܇ø(eeeåg-I’ÐÒÒ‚ &€]Ð|ò6•OÆi^˜zÒÙÈ+*Cw[ ÜVl>8‡;µ˜Q¤¬ßw$ÃgUñYÕÁ,¶•PÛЊL†¸{ÖãБfŒ/+˲¨mlCg w1#‡S×ù节îÚ¶ygþËMQ¨i*þñÈO’„LEE*++MÑ‹Åá‚Íúe¦ Úª7!ÚÙ#~Ýn·ÙÉ(Ì—eÑh‡ Ø)’Ùô'.O%\zÛÞår% ¦°víZ3A˜!âÄ¢ªª _~ùe¿…L:Q£i|>Ÿ­¹e×ûð™wÑØŒß—*E’î²—••%Õõhš†¶¶6Œ?>IÐlZó8FWÌÀ¤yg€aY,X~9Þþ^óýªá¯˜? 1“çuÁ!Šà9,Âep €‰§6i:TM;šæ¤CÕ¬ÏMK›–Ö_ºaÜóäßÁ° ü^7ºaô6>Ö”XÚ^:]u_B•{¬©'/8c§Ÿtô˜iXû‡ŸaÿgïÙ¶™1c***ÌéÒÒR>7mÐUú=È;sP¯c)ÔÆÏ×ÛæåççCUUèºEQ =ÇAQð<UUm¦‰u4êѨ‰óÓ-Oü®ô¶=˲=ztŸQÑþòþûïãæ›o†Óé¤6‚ HÌqbMáp*]×!<ÙDS×5Ô}ü¦¬º,—Y}À៶{½^ø|>47§N½êèèÀĉ‹ÅzRwto>~;®øù³(=³Ïü6­yR4þþ‚Mû‘?n6ŽO1à—/Žï½[ûµ«ÏÆô‰k ©ë€ª©†¢hë  £+„¶ÎÚ»hë ¡½3€¶Î@¯)j k::ºCýø§®§Q£azÌX–×þÀœþç_îÆîÍkmÛTVVÚ„L¢˜€–ª÷YÌè8²åe›u:p8¶^H‰=‘SÁ†]×á÷ûÑÜÜÜoKôÞˆD"øàƒpÎ9çÐA$f‚8þÑ4 6lÈx–ø·Õ¢9//‘HĜŭhÚ±e Ïï÷kªmýM`Ö¬Y½¦ã躎öövTVV¢»»]]ñ{,ÄkþWüüY8\^ÌZúu|öÖsG‹„`óAøÊ¦¦ kŠ –ïÝB×!ü'–ažãàÏóÄ-–Ó]#QttÑÖŒ Ž Ž4·¡¦¡‘hÿÓâÒ¥˜uÖl· È9g]Œ‚Ò¸Pyï¹ßbçûv“ˆ©S§bâĉIû)((°¥š…Ûjíl€Ó_6(×qëîlÚo9ž |>_Rôp¸RRR’³èÌÚµkIÌAb† ˆƒ;v ³³3«mSÕÎ8„Ãax<=ýQZ«7!oìLxJ&õcÇj7=o›5nÜ8ÆûÇäçç›B%UUÑÙÙ‰ `ãÆfýNë‘}Øô÷ǰô›·`áŠ+°ýŸÏ›ÅïÁ†=iÄLÜæ·/1Ãs<$Y¬(P ²¢BVhºãÀñ,Žϳà9Ça³‹x]Nx]NŒKhÒ©ë@K{×·àp}+ª×£¶¡5õ1’"ДXÒ|)ØŽPK9-:=XrÑõ€¯<‚O×?k[Ò¤I˜2eJqÆ ¢¢{öôDyj?þ¦®º%ç×p÷‘ÝhØaµ(ƃeYóèé7cÔËpg+à·6¸L|Îvyºšš¦¡¨¨ 9‰}þùçhhh@YYýÀAb† ˆã›>ø k!“ˆÑY]’$ˆ¢h3tÔn~ÓV}¬àèmÏØÿö¶z‡Ãa–ñ¢nÃ*F÷üùóñÉ'Ÿ˜ïuÛÚÿÅôE+P2a&/8û>}7¾~$€H{=\…É©bºªôy,î~üÅŒÃ28<Ç7ÄŽÀ!ßëBqA>Šý^ùóPTàŨ‚|ø<.ô6Îe ¤(%Eù8eÎìÚW‹ŸM>˜.*¨ß kÏ™Sλ._vü&>~õ Ûº&LÀôé½;”UTT ¦¦‘Hü\F;ÑU÷%òÇÎÊÙõíl@í¦ÿ³™Dð<§Ó A Š"œN'\.¼^/¼^/<™‚f4Ï4Nª«@ËÄᬯí)..ÎIãK]×±nÝ:\}õÕôG‰‚ Ž_t]ÇG}”“}i=±X̼îp8 ˲9€“C¨ÿô»øâ´û9ðîŸn=l›7kÖ¬¤æ˜ùùùeÙ,®NäF£ðz½˜0a: îµîOÿýù³XxηL1Ä·²3Y{M‡¤)I50M­¨>Ô´¾ p(öûP”ïCqaŠü>äaT£‹ýàš–FcrÚ×V¢É.gªC¸µÇ?Íë…“ÎùÚŽìÇ[OýÒ¶nyy9fÎì»þ…eYLŸ>Û·o7çÙò2òÆTæÄÙLwáÐÿk«“aYN§Ó¼9ŽÏóæÃè‡$xžÇqà8Îfp¬(--͉˜€õë×㪫®:柉 ‚Ä AƒÆÎ;ÑÞÞžµx±>Œ»ß²,›)= Ã@E³n:nCÞØYÈ+¯LÞcÿ[!ÜV›4À3š&” ÑÚÚšönw0ÄĉÑÔÔdFZjö`ë›ÿ‹Eç]ƒüQåèj9’v€@ʰ8W²¬¢¡¥ -ÉQŽeQ:ªcGbliÆ•¡­+õçÑUªœÑ 5´õœ™sÖÅÐ4¯>t+äXO”¬¨¨(#ëß²²2>|ñ未AãŽu([ðµ)Ôƒï< 9Üe»&A0SÈ 1c<[…ËpìA›õx¶455á³Ï>ÃÂ… 野 ˆã–A‰d›bf‚Û Ò:˜ä¢G>yJ¬ÇqKUb¨~ãþ$!ãóù0kVú”$žçQXXØë€4`öìÙ¶y¯y ‡áöö òÓØ0Vd&—¨š†#MmØüù^¼´þcÜÿ¿¯ãå·>N¹®õ¸Û„_c5ò˜sÆ7°þOÿŽÆCæ|§Ó‰ùóçg,¬)‚ÐZ½Á&B2%hÅ·ÿ)ÔauÁbümDf¬ËÍpa”””älo½õýÈAb† ˆã]×ñá‡hàe-®ÎÏÏ·¥óXŽÖ®ë@< R¿u tMEË®÷±û•_!ÖÝbÛÿ¨Q£pê©§B{/¾Ei—+ŠQ1vlOŸE–°þÏ¿€èò˜óÒE`tM9®Î{ªT´³J´Ç¬aÒ¼3°ç“õ¨þä-Ûù^°`AŸç#~¿ß^Œ®ëØ»ö÷iûÜôF´« ÞþC’J+‰ée‰‚Æzý'JKKs¶¯-[¶ k7‚ ˆL 43‚ lìÚµ ­­­Y‰c€d }>ŸMØXÆ|£I¡AWíè®ß2ò1~üxÌœ9³ßM‡Ã¿ßŸÖ•- aÒ¤Ihii1SÞŽTŠ’ =캒:µGS31K3Ö¨ ”O]€Ÿ¿ß6oÆŒðûýY¿îôéÓÑÜÜlÖ8©R{×þÓ¾ö°¼£_ûˆ´ÁÁ÷ÿ 5foššx­%¦˜׬Ñ0Ó¸u]7ëeŒëÙ*öS9õUàŸj{c»Äù©¾S<ÏÃív'5†Í†ÎÎNìß¿?­ãA‰‚ F,Ù¦˜YEŒñðxûì3s^kÝ~ËàSƒ®i`X{ ÛÚse¤£©²­X>.*¢ˆ´×™Ó¾ÂR|ºþh–Ï]VV† & èµ]..\ˆmÛ¶™×€îÂþ·Å”snJÙ´ÔJ¸µ‡Þ*©Þ'1Bh6†€QÅt¸cÆŒÖ"Û*8­–ÈX–…ªªiÏzÛ®¯ýËóòòr"f`Û¶m$f‚8. 43‚ ,fRÕÊ0 ¯×k¦“ŽQ‰©=ÆÝítøý~œtÒIY ÇÇ“r™ªªp:¶4žÄ¨‹–¢nF?Ž"3‰ îâfˆN7‚=)^¯7£‚ÿÞ(..Ƽyól×Q´«{×=Ô«h 5ÀÁ÷þ”Ò¸À‰éeé\ËÌs}ôZ´>ëºUUmÏÆ|ërëú©–÷6¿?ËK%f‚ HÌq\±{÷n477g½½1eY>ŸÏ<½eŒGâ@’Mˆz°,‹òòr,Y²§vF5àÏ–——‡#uÚR$ÁäÉ“!BÊå©RÊt]µõ0É$‰5=±ðŸC[ýsšã8,X° ÉÀ!S$IB[[t]Giii’!C¬»»_½±®äk2ÐPCïÿÅöÞù„>EF¤$Ñ~Ù¸S]‡ÃÙ²˜a˜œ š;wZz=AŒ\(ÍŒ “M›6ådÀ¥iòóó“¢EQ ( TU5ï: ‚`³iÎËËÃܹssþùü~?Z[[Sö ‰F£¨¬¬ÄÎ;“…‹šzЧi XNèóuuM…ê„í† C‰!…;¡DP¢A¨Rš…*Ǡɱø†Ãr`8,'€áÎ<ˆÞn?wþч¢' ›ÝOz¢˜‰u7Cµ¸›qÅ!™1c¼^L{{;t]GGG 1vìX(Š‚ªª*s=%DõÚP2ã,”ÌZ†ãÑ]· 5Ÿ³Em|E¥8ÿú{ðÊý7#ê>z~âÑ žç“u¢¨¶¦¡ Wt]G~~~Ú°Lÿ_|AÍA˜!âøa×®]1Ö´¤üü|H’AÌkãaˆMÓ iA€$IæöhooGaaaN?_o=hTUE~~>ŠŠŠ’¦K)ÓUàèª)Ü 9ÔX°ÑŽzĺ[ …:¡Já”ij}\ Ê€Åƒ ÖÕ 4¥<Ý~¸ Ëá5îâñpúKûÕ„2IÌìŠÜ#4 0nܸœ ˆÅbèêêB~~>*** Ë2öíÛgÅ£y×»hÝóÜÅãj>dë}ã/‹K~üä•á¬ËoÅÚ'ï´‰Ô¼¼–çp£ãÀ6´ìþÐf_| O ¤P¤Pºj¿0Þ)x§N)üæ!oì,p‚³O1#;ÒŠÁÖÉBƈšX½‘ž8uêT¸ÝnTUUÙEjªŒ`ÓÛþ J+ðÍ?oAüüÌüÊسe~¾Á¼®C¡JKKáñxàóùÌ*§Ói kSM㳦*äO|NóéÎ2yîË!-//Á`0'bæ;ßùýøAb† ˆ‘Ï¡C‡ì”d ¼Š‹‹ÍÁ¡,˦`1îJkÄÆétB’$SDìÚµ+gEæVœN'¼^oÊ¡$I˜2e ª««Íyú=mñT±X èÐG@ÍŒ%D°q_¼fóK\>xJ&¡`ÒÉðŽžèq‘`E§Ncš4iRZ#…þ‹ÅÐÑÑaFåéìì„,Ë(((@yy9F…]»v¡¡¡!åþü%ãqÙÿ{î¼"ÛüåWß¿Ü~1¤HÈJÑh%%%p»Ýp»Ýp¹\p:¦±¦š×òp¥   'bfß¾}fDŒ b¤BA¾üòËœíkÔ¨Q)]¤DQ„Óé4FÊQ»àtÚ£uuu¨««”ÏëóùRH’„²²2ø|>sž*En«G`t=žâ4B‹ÿåH‡wàà»ÄÏß½kPÓ>hGûéèª9’lcíñx0yòä¬_7 ¢½½=­1…BhnnF8† ˜6mZʆœ…e¸üŽ¿$ ðŒÆ™—ýÐ6ïàÁƒà8ÎIõ2‰b&'RW×m–äA$f‚±X‹®*Œ^©ÄŒ!`¬bÆXwÉ­ìÚµ íííƒò™ý~Êl ÀÌ™3ûs®ë¢]MhÛ·u›_DÝæ—жosÊuçÌ™“U†QàÌh\_H’„ÎÎNlÙ²ÅæºÅñ–|ã{¸ò—ƒË›ÞÙkΙ«1~æ"Û>«ªªl×›UÌÑCÃ^Ôäççç¤f¶nÝJ?~AŒh(ÍŒ S4ä¯×kK3šÎeFq3Ã0æ`ÒZ€íp8lwïUUÅÖ­[±`Á‚œX4[1vuuÙækšŽã0~üxÔÔÔ˜ë)Jš¦!‹! & Œd4EB¸µ&iþ¸q㲊(Š‚ŽŽ(Šb×þž·ÛÏ>û ‘HÄœ/º<¸øÖGQ6©©‡ç\ósüåg—@ŽÅ÷qøðaÔÕÕaÊ”)¦…‘öhˆ˜D!cÔ­$N÷V7“8ÝÛö©æ§ÛŸu¾ÏçKºn³"3A˜!bÄ Q[[››žGww7TU5‹™ A£( b±dYNºKo½+žèn¦ª*¶mÛ†ùóçÛš[æ·ÛH$’Ôs#cÊ”)˜8q"òòòàr¹Ì»øF­O8Fuu5:tÜöìp8˜>}zÆÛE£Qtvvökpn…ã8x½^|öÙg¶.ÁáÆê>Üo!yÅc°ô›·àgî1çmذ………ðz½àyÞŒ Z뺌sœ(:¬Åù‰ËÓm××r«˜ék¿Ög—Ë…ÎÎÎG‘li•A# J3#UUU9‰0hšfFVŒi«½¬1p4Q™ÄÆ…Ær+º®cûöíØ·o_Σ!©  EQ„×ëEEE ár¹lép.— EEEX¸p!–-[–s‘5Ô½€™1cFÚf¢é®ÎÎNttt$§¾R£xž‡ÃáH2¼èÄ7þãAŒ™2/ãÏ5ÿ«—aìôûáH$‚÷Þ{όז¡ÑuÝŒ"ÓV³ŠtË{›ß×~ûÚ>ñuUU…ÛíÎÙ¹?xð ýAb† ˆ‘K®RÌŒÁ¨!`¬BÆ*`Œtºnì©ÍÞ½{±uëÖœFBxžO½Iú¨ÁÈËËqçÝåraΜ9¸ð qÉ%—àÒK/ÅW¿úUŒ7,Ë¢¤¤eeeýÞ_4EKK‹-5ÌJª4.ë9‡Ãغuk‚qàÂ›ïµ ’Œ`¬¸æç=.lÍÍÍøøãGLÁºs—‰È$1CÄñ ¥™‘³â£ž$Fß C¬‚&ñaε+F¤Ç µµ6lÀ¼yórÖXÓëõšƒh# “è®ÖÛçîïºÃ…iÓ¦aáÂ…IŽnãÆCyy9Z[[û-5MCwwwZ“(h#6 à®®­­öf¼ âÜïþ ¥“fC×40Y½ŒUßù%^}èG¦ ]UUJJJPYY9"QZË IDAT¿³ªªÂëõ¢³³sÀû:tèýAb† ˆ‘‰®ë93'mGt« 1ReE,Ë$É4†a€±/CØX‰F£Ø¼y3ÊËËQYYÙ¯(Jop—Ë…H$ŸÏ§Ói6ì´öÃ1j¬u ÃÀårŒ}žÇI'„©S§¦lHªª*$Iê÷ñŒF£èêêʨ¸ßHë2š¥îß¿?I8y KpÎÕw¢tÒèºYŠBtfŸZ5eá2œzÁ·ññ«O˜ó>úè#côèѶ&•}5½´.Oi½mŸX÷2ÐåFÝÌ@¡È A$f‚±ÔÖÖæ¤”””Àçó¥t{2òÿeY†¢(ˆD"ˆÅbfzYº$«šµÎÁàÈ‘#hjj´iÓ0~üø¥y½^3NQ³/JjtRõ¬n°,‹ÓO?=åq2ÜÙ£`éÐ4 ]]]ˆF£¿†aÀqZZZpäÈ‘Âã«8ëòAty{^OU © X.û[§]t=šïÆšÂmýúõøö·¿ ·Û$ X–M)ª{Öé¾¶ç8.©à¿/!c¶¡h&Pd† 3AŒh1“ †A~~~Ê»ýÖk£vƱ1¢3Ög#:cµh¶îÏŠ¢(صkjkk1kÖ¬¬› òdY6…Œ!„¬ý@Ò‰š@ €?þcÆŒAeeåFKÅÏ7ÞˆŸýìg9Ý(B0D(2@õõõhhh@CCêëëqàÀÔ××Û¶Ÿ4ifÍše¨Ë²œ‘(H4Æ8_©jc ¤bV\}'ò‹Çôúúª"ƒã³/|w¸¼øú-÷᯿ø7ȱ¸˜:|ø0Ö­[‡sÏ=7¥mòpÅH…ìo4­70}ÑÝÝRÈXk¤RÁ²,ZZZPWW—¢øŸÅÂs®À¢ó¯Ãô¥P¤8žý9-3 «¾ó ¼öðm¦!À–-[PZZŠ… Ú®¯áŽÛíF ȉ˜9ùä“é‘ 3Aœ˜bÆáp ‹™ùüÖºƒÄº#µÌZ’ʶYQ”$1“ªn&¸Ø½{7jkkQYY‰’’’-f29ŸkÖ¬±—SO=Õ¥2zÁdÚ¯'??ßLì˜á8@L™¶W·ŠC¨XSË¬ÂÆZKbJ[…Œ1.ȱ‹àP(„mÛ¶¡°°•••)d†˜9V}gžzê)Û{©¨¨°Õ麎ÎÎάR“†Aaa!Z[[{­aâ8²,cß¾})Í%<ùEøÊê›0óôó!GÃÈ´ª*KàxqÀ‘“%«¿‡æšÝ8øùós¬Y³’$aÞ¼yIŸÝúy¯»T¦ÖùVQŸõé-ÊØÛ|9³'‚ HÌqŠ ^€ªª˜;w®M'~¶DážNÈ'ngÌïky_û!'$‹¡££#gMh ‚ HÌ1è477çd?º®Û"3}‰#õ†ã8‚RÌ$ngˆktÁù uƲJ&ÌÀ7üØñ>xá~´×÷Ôhš†ƒ¢®®S¦LÁøñãÁfÙ]Þx}kóÂyóæ“š™íÛ·Û¦KJJlÇ; e\'“AŸŸp8ŒŽŽTUU¥¬‹)8 g]~+ÆLM]‡Â°,¸,¢3ÀQ«f§gÀŸEtzpñÆ+÷ÝŒº=Ÿšó7lØMÓ†u )›ÊfC  1C‰‚ F9ÙÃá0#,©¦jhˆk–Ä^,†à1"?Öž-ÆCUUÛ :ÔiOoš4ï TÌù ¾xÿlüû£w·›ËdYFUU¢Ñ(*++³þüF„Â`éÒ¥Çä|îܹÓ6íñô ôEÉÚR9)ûÅ€· §_r fžö5 È/: ©JÆBKSÕ[5›¢ÀáÆ7þã!üýïÛ¢y›6m‚¦i¦ËÙpCÓ4¸\.„B¡ï«»»›~ ‚ 1CÄÈ!—=fŒ‚w#*=Ì:Xµ¦Í6ÌF³L£a¤ÇãA$A$A86ÿŽÅbˆÅb¦q@,3÷ìJ®Õ`Ys—]‚ÊÓÎÅ'o<…m랆"ÅÌ婊Ô3aÿþý¶éc%fÍ Œ>4,Ë"‹åìuÂá0¾üòË”ýbxщSν §|íjðý¬ia/@‘¥Œß‹"ܪ¹Gиð<ˆ¿?ð}ÔìÚlÎß¼y34MÃâÅ‹Óý[»uy*!Ÿn»L–ó³Iñ$1C‰‚ HÌXp:מXÅ ÏóPU<ÏCQ›!€aÕl}QC(qg¦u·6@×50LrÚ˜èôà+«oÄÜe—àÿî¾¶Æ‹™––[ŠÙ´iÓŽ™˜Y´h‘mº­­mP,©S6¾dL;yN½è»(=,—Ù¿Np@U䌣3º–«æ1æÀE?ø=^ýýàÐÍùŸ|ò º»»ñõ¯‡#¥ÐH‰Ô4ÍtäKWÈo-øO·ßtF¹J%1C‰‚ NX1“-VW3ë<ëÚ^f}6ÈŽŠ ^GÑZ·£ÆMMûš¾‚Ñ(›8Û3‘HŠ¢€ç3ûIÔ4 ÕÕÕ¶y?ùÉOrv§w.úÕA 5,‚8q±:p µ˜±¦ŸYK¢M³Óé„Ëå‚Ûí†ÇãÛí†Ûí†Ëå‚Óé„ÃáHzý†};ú|ýÂòIÈ}ùå—¶»ÙsæÌÁ׿þõcv>N'¾öµ¯õ òU»víÊùëXÅŒ¯¨ «ø°)dÄë_²(Hç³ì£ë:)·õ@/â‚›~‡é‹V&]'O?ý4Þzë­¬zõ ™ŠªtPd† 3AŒ(R¹Oeƒµ»|.(ŠI‚Æúp¹\p8p»Ý¶ýÖïï[ÌŒž0Ó6mµ4î‡B]]íýßyçǼOÇï~÷;ÛúææfTUUålÿªªÚ þ‹Ë'§^O‘²¹ Àe™.¦*Jv¯Ù« pÞ ¿Æò«~f«ÿÑu6lÀ“O>™²nh¨É•½8Ef‚‰PšAœÀ ¤y¢]×FÓv97òþûj0hµcVUÕÖ`Ó(t6DŽ$IfMÓé´¥W5ìû¼Ï÷\>m~Üeëèëe"f<ˆÝ»wÛæýøÇ?ƲeËŽù9-**ÂwÜ;î¸Ã&¼AÀ”)S¼ÿ`0h«k);Ùz-âBŽ×±d(îxA€*KÐõÌ#;ŠËò`ØÜÞ§›{ÖÅ;m!^ì?ÑRÛ“VX__Ç{ çœsæÎksê3®ûÞ¾©¾/ý1è­!ç@ È A$f‚Qä"2£ë:B¡$IJ۹ܺn_‚ÆXÏ*j §3Y–Íg£(ЦõpGS "ÁN¸¼þ´ïÛéÉGјIh;w"kiiAGG‡­ÉdªÏºk×.ÔÔÔØæ_xá…¸õÖ[‡Íy½á†°iÓ&¼ñÆæ¼½{÷"`Μ9JKjoo·M7lŠ>1q—:Ÿi=^!Ç¢Y]‹r,ÑåÉù1-3WÜù4>|á|úÏçLõ&Ë2^ýu|ñÅX´hJJJ’®ûTï3ÕòÄïC·3¾{5$f‚‰PšAœÀä*ç_Ó4S\cÚXfîíÙ*d¬Q#ý̈Î$º›%¦ºõ§n¦bÎÛ@qûöíˆD")× …Bøøã“„ÌâÅ‹ñÐCóô²Džzê)³{½Acc#6nܘu:Q4ÅÁƒmóJ'ÍIÛçE•³Kûâx1ë&¦š¦æ¼~Æú¾Îºâ6|ãÂgo.yøðaüíoÚ5kP[[k»î‰ß‹tßþnÇæ(Eb† 3AŒ(rU3“k÷.kZN¢I3ƼD€ú~¤š-¹èz”VØë}ôêë듪6l°Y0ÀE]„—_~9çna9ùqgY¬[·'Ÿ|r’(Û´iŽ9’Ñþ"‘6oÞlëW3yÁ™ð—ŒË¥NíÒ4 šš]*#/fLYÊúuûÃĹ_Á•¿|³—$-«««Ãk¯½†_|û÷ïÏØj:¨f† 3Aœä¢fƸ[œk­™SEg¬ÏÉb¦ïÈŒàpã‚›þ¼è°“;v`ÇŽزe víÚ•źå–[ðÄOdm~0‚€µk×â»ßý®m¾ªªøüóϱsçÎ~Eç !c-üçK¿ùƒA›.:£d'˜YŽ/do9,Ç"ƒ*$ÜyEXýǰüªÛ‘WT–´¼¥¥ëׯÇsÏ=‡ªªªAùŽ$~WHÌq"ÂèCqÛˆ ˆaÉÅ_œmÈFÌÌœ93eÀÞ:—÷ÕpÐúlˆ ]×!IdYF8F$A @(B0DMMmâE'nzô#°lßQ£;>Àß)ÒwóL¿ßÇgŸ}öˆ:×/¿ü2n¸á†$ñâr¹0gΥܮ¶¶{öì±EñxAÄ×o¹Ï™Ðu ±pŠãÇ—7»0ºŽX4”•Ís\ñîA?¶š¦b÷ÇkñÉ6k°q:?~<&L˜€ &˜7Ó}?Ò¤ZÎóðî»ï>\tÑE#ú|OŸ>{öìÁ·¾õ-¬_¿Þ¶¬¶¶­­­˜5kººº°ÿþ¤Ô(§'Üø[Œ›qJêÁ° &‹IJ,ǃㅬÓÕ)€PÊZ&âkò‚31yÁ™¨Ûó)¶¼þGÚ¹1å5]WW—Ô§(±—’Ãဪªf4R–eH’I’‹Å IRV7$ ;óÄ455aôèÑôãHĈÒÌâfåÊ•9©›9ãŒ3ÍÍËø‰Ò4ÍŒÎÄb1D"„B!tww£«« ÝÝÝèèèÀ¡C‡Ìm+f/Áê=œ^ÌÅ"xÐZ·×œçñxp÷ÝwãñÇGUUV¬Xx%%%ÇÕ¹óÍ7ñÝï~7­{["åÓàüïý<ùE½® RFÚ‡+m]M®)P /:‡FÐ$ÐR³Ÿ¿ÿ2ìø¶ÆqmŒ;K–,Á’%KpÚi§aÁ‚93 ‚ 1CDÎÈUÝÇ™gž9hïÑ*fŒt²X,†h4jŠCÐK–,ÁÒ¥K±bÅŠam|A‰‚ NEÁÊ•+þ#Â0X¼xqÚ™‰¢$]—ótû6¶5êfTU…,ˈD"‡Ãƒ¦¨ijj²õËXq͘sÆ7’ö½míÓxÿù{ÍiŽãðâ‹/béÒ¥'Ì5ÐÚÚŠÚÚZ|òÉ'¸ë®»lne‰çeÑy×âôKnî[|jbijD—§_† éc‘¬ÓÍzcÐkhú'Ò5t6Õ ¹fZjªÑÞxÑ`'"Á.DC]ˆ»âŸ•aÀó8Áqô½;!:Ý]^8\ˆND—¢Ë‡ËÞႦ(ÐTª"CU¨ŠU‘¡)2¤höFÚ›ìlÎÊ\Áï÷cõêÕ¸âŠ+°lÙ²AK1%‚ 1CD/ƒ)+W®° €®ë˜={6TUMëF–èÚIJ¬¹~bA³ÕÍ:_UU0 Y–¡ª*¢Ñ¨1ÜÌ aÓÜÜl¾¿ ³NÅÅ·>j{Ï-µÕxö¿®€¦õ|ö»îº ×_ý u ƒAìÝO±SU/¼ðž~úiŒ77Üpn»í6sݧ} ç~÷î~íWІSöyáx‚c`=yäXêS#Yއàp »F§‰¨Šœuj^¿¾»š†`W ‚mMèno@ ½ mG ~ßt4ê×>ÊÊÊpÙe—áŠ+®À)§œB?¬A 9d@'ꌣ.dµf€X,ŽãLa”ølÜ31žùFyºå©æ[ûÚXÝšŒ‡a`ÔÕTmA$З¯ÀP_øçÿÞm2—]vÙ 'dØš}r‡Ë/¿Ë–-Cqq1xž‡Ûí6£5ÝÔ{p¼RÌhª’±ËÁᆮ‡ÔSSH‘ ‡ ,7|ÿ ¦†eá+ _Áh”a®mY$؉ú½;P¿o;ŽìÝŽ¦ƒ» *RÒ>pÿý÷ãþûïÇ”)SpÍ5×ছnB^^ýÈ1$Pl˜ N`r5à̆€‰,U#Íć5Ÿ_×4ìÝö¶9½óÿÛls'Nœˆ{ï½÷„<ÿÇ%v—––šöÌVW«î¶úŒá©‹®ëPSÔÓdŠèp °®ë¢á£ngD’Ðõú1yÁ™XúÍïã_~úgÜôèG¸ì§‚—×Úbß¾}¸ýöÛ1qâDÜu×]¶tO‚ 3AäŸÏ—“ýäÂ-Qc0Çã¸$1Õ[ÞDƒ]øðoØ–ÝsÏ='t1³5:“ˆÕÁ-ÔÑ’Q}Eº¨‚ªÈpv3Ã@p¸sR«¡È1H‘Ѐ"='„ðå”O]€eWü×Ý·«ô0f~åü”¦ííí¸ãŽ;HÔAb† ˆÁ%—‘«¨`ÆölÌèr†aÀóÃ}³i­s1àE'Ñ™Ó}Æ#5¤Hr,’“t¶æ÷¥¨ ˯º×þúUÌ\ržmY0Ä÷¾÷=,_¾œ¢4A˜!";råf6T‘™þ« I5H¿ôÒK±dÉ:ùÒ¥šÙ¢6™¦™C9úz‚ÑéÎyM†®Ç߯ ÅSФ( ›þþΕbÕwîÂE?ø=¼þQ¶eï¼óæÌ™ƒGy„¢4A˜!"3r™‘$ ±XÌ|D£QÛtâüh4Ú¯Gª}…ÿ²,›EQl!«m³QñóŸÿœN|?Š˲(..6§ƒÍï›ãù´Âb0¢3ÀrÖ´3þh4 î)úg7Þx#ô8Np\êÁwyy¹ù· #Ø™ùóÞRÍt]‡‹ÚgãEG<íŒüw¶ˆM89†"Eã–ÏšJiT&Í;WÝõRR-ͰdɼóÎ;t‚ 1CDïÁãñäd_ÑhtHÞsoŽfÖG$1¬Zµ S¦L¡“ž†t&ãÆ³Mw4Êü Ç÷*&TU±õ%Éù?º£ig½‰ªœ ]‡ª*Pd r,b œX8é¨ÈQä˜ÙÛ&.vN,Ç4§'«¾sλá×6'ºŽŽ¬Zµ þóŸé‹I‰‚ z§¢¢"'û‰ÅbCú¾S‰«@GG‡mý›o¾™Nv/¤K5K3‡³Ú?Çõ.$d) @ÔëEp¸ 8\C¥éMähGEŽ"ÅâB'>*v‚ˆ†ºã¢'ŒGvä4U9®£:Ó­Ä7ò$Üy…=׃,ãÚk¯Åí·ßN-‚ HÌ‘ž‰'æd ‹ÅÌô.Žã̈‰ñlÌïky&Ûñ<–em 6A@(²EŠ-Z„E‹ÑÉÎBÌŒ;Ö6ÝÞx(;1ÓGTD×4(GSŽàpyÀ‹ŽaÛ…^×uèšìH1HÑp<¢sÔZU$èÚñÅ)›<—ÿìQ8Æþ{ô«_ý —_~ùE~ ‚yA˜ÉÉ~EA^^^’@ªgà ÕüþloÜ©UUլב$ áp<ÏcÛ¶m¶÷FQ™ìÅLii)xž7{ ud)f–ËqÐÔô®_ªÇ C9aÀ p¼EŠ¥5'nhšhšù~7ÃüQå¸üö¿àµ‡nEMÕsþóÏ?šš¬Y³£F¢/+A6(2C$fr²ŸH$AÀqœ-R’êYÅ´óû³½ÑGƈĈ¢Qáp8 …ÐÖÖf¾¯)S¦`ÕªUt¢ûÀáp¤4à8eeeæt{Ãá¬_£ÏèŒn¤› ÃBp¸ÕÆy09-¢nVÿèaÌ:ýë¶ù›6mÂâÅ‹ …èËJ‰‚ zÈUÍŒ¦iCš b¤Y{ʰ,‹Ý»wÛÖ»ñƇ²”/K IDATm:Ñp£?©fÝ­õP•ìÒÁ8Nèó\hª2ä‘–ã º<îxdh^/IÂFŽØZ–ã±òßÿÅåvÃŽ%K–ÀívS A$f‚è!???gÍCu×Ô*dŒg†a ª*””à²Ë.£“<@1c5Ðu MµÙž¸~9Š)Rô˜ XYއàpÁáòBp8Ár#3u+^3klFb}ÍÞmo£õÈ>sº  ¿ùÍoLkv4APÍ A˜8qb’ûW6ø|¾£ƒ^Ýv‡»?u3V±ÒÛöÆvš¦AUUhšI’P]]m³c¾òÊ+!Š"àŠ™T&E哳z N¡È½Gvt]‡"Ç ˆÎcs /‚ãEèš U‘¡*òˆ@ëºn¾w–ãÁ "XnøÿÛ—¢!¼ûìoló~ùË_¢  ÀüÝH¼±A‰‚ N`***ðé§Ÿx?]]]ðz½fºVªe‰b§?ÛYhJ’„ªª*ÛòK/½tØóà¹çžÃÆ ¡ë:¦OŸŽ¯|å+¸à‚ PTT4lÄL²=sÍt Žç¡*½÷•Qe ,Ë io˜”ï—åÀ‹xÑ MSã=aTº¦b$iMU ©JÜ ð¨ùÁpeÃË#ØÑlNŸrÊ)¸ôÒK!ËñôC£— ‚ HÌ w&]]](++ë3 $Ý2c~_Ë¿­Ñ™`0ˆææžÐÉ'ŸŒI“& «ã …°fÍüõ¯ÅÇœ´|×®]xå•Wð‹_ü>ø Î;ï¼!}†1ƒ’ 4#3Ù:šp¼£O1ÄÓÍX–3LŠóY–‹@×mâF!©\š¦A‹E Êxqø¥Ò5®Âö·Ÿï¤ð<î¼óND"‘QÌP„† ˆøo3‚ re ëú1ëqàÀ›ØnQ™_|sæÌÁ-·Ü’RÈXéîîÆUW]…;ï¼sÈÉ©¢3~¿^¯×œn ˜a9®_îaº®CŠE†gzÃÄS·D'D—·‚Ã5b 4M… Åkjôá#ÄÞýëom5>—\r F…P(„H$‚X,EQÌôRª!‚Ä A¨¨¨ÈÉŒaƒÁ!}ïFtæÀæ ;ötuvA˜!â⤓Nʉ˜‰F£p»Ýày>É­¬77³Tîf½=i&²,ã“O>±½‡áböÉ'Ÿàšk®Acc£m~ù´…8ûßþÅc§&mS0z<.ýÏ'±îwbׯײ,ã†nÀÛo¿=$Îlý6h8×Ôùz-N¡H±~­«È˜a`GSÒXޏ½µé6Œ„®ë¥(TŨ§º!Âö·ÿÍuætII ÑÞÞn6Ôµ>ŒºV³5qbBifAˆÌçfÜO53é‰ËûZßxXïÈ⧺ºÚ|ýüü|¬\¹ò˜Ë­[·â¢‹.J2'­ú7|ó'H)dÌãDz8ûÊŸ"T¹9¯ªª <ðÀ¼wAàp8’æ———Û¦Z7/f4øT¤èˆì™’üaÁ 8\ÞaÙ¨SÓ4HÑ0¤hxHŽw4Ø…_}Â6oòäÉèììDgg'ººº …FÍ43UUû4 !‚Ä A'³gÏÎÙÿööö”-úœ˜’¦i:„p8l¾ö…^xL{Ë>|ßúÖ·‹õDD—Üø[œyÙûUø.8ÜXõí_€az~¢ÿð‡?Ø>ç`bô ²’lÏ<ðºæhÄ¢¿Ä ÂÇÕÀÕhÔ)º¼Dg¿®!5ª‚X4y›˜nxùaÄÂsÚï÷›7E‚Á B¡Âá°)ddY6#³d@‰‚ ânQÌY]F.pö6 5ž5MÃ_|a[~,S̺»»qÅW µµµg`V2ÿz糘zòÙí«|ÚBÌXrží˜>óÌ3ÇLÌŒ;Öf…Û\³''¯Å‹ÎŒ¢º¦Aކ޻,Ã0à¢ËÑå'ˆÃ#Z£Ç{þH‘ TEÎùî÷}ú.v¼û7ÛqÈÏÏG45FÑ¿,Ëfá?‰‚ HÌ‘D®RÍ$IB(c2²,ãàÁƒæü &`ñâÅÇäØ)Š‚k®¹{öô òÞ|¬þÑÃ((Õ>OùÚÕ°Za=úè£I=`KÌ$¤EQ´Yx7ü2gƒx^pd´M< *4¬,…sú™å ˆNˆNÏÖ­ôõý“c‘xêYŽŽ{WKÖ=y§mžËå2kâŒG¢x!C‰‚ RrÒI'ål_---fZH,C,3ï²&ÞuííÙØ^’¤¤åûöí3»‚À¹çž{ÌîfßvÛmxÿý÷ÍiŽðõ›î…¿d\Öû,3 “æ.5§kkkñꫯúgá8.¥@ee¥ùw4ÔÎæÚܼž Ú¢>ý\­ë8jhÒ =–…ètCp¸†MM¦*"!¨²4 ý¨Š„×þ1b‘ íºóx<¦Èe&­ƒ™±œ þ ‚ 73‚ L&OžŒüü|›Íq¶477Ããñ$Y4Û¤–y}-7¦»´Š¢`ïÞ½¶õW¬XqLŽÛ#<‚§Ÿ~Úþ^®¾c§/ð¾O9ïjØñ9ýûßÿ«W¯ôÏäóù’¢kÓ¦MÃo¼aN7ür@bÍöÏHtBŠfV¤Ðð¢/·ßKŽÀq<9e€""˜®gª Ata3¿/úî_ÿ͇«z„ÃÀåreYÓÄê^æp8l.f†°!ACEf‚° (,X“}» b"Ö´‘T§šgM;QŠ¢àÈ‘#æëy<œvÚiC~ÌöìÙƒ»îºË6oñùÿŽ™_¹ 'û/ŸºeSæšÓ_|ñÞ{ï½!3‰X#3ÐtàËœ½ËñàEGÆÛÅÓŸ¢3c€_Nð¢—,7$©çnù´SVà+«oÌéëœrîÕ¶é‡zhÐ?›ÇãIJýª¨¨°ãúýŸçô5yÁ‘uUQ E‚ÐTå¸þ~2,Ñéàp‹¼®ëP¤¤Hš¦öº®‹`í“wàí§ÿ?ûy?ÚGÆ2.— ^¯×|x<SÐX£3Öc@‚† HÌAä´n¦££#§wË !£ë:êêêlËŽEŠÙO<­[·šÓ¾ÂRœsíÏmEû¹`Ê‚³PPZaN¿÷Þ{I.n943LRt†ã8LÚÓ#§¥fOÎkVGööĺ®CІ!Ç"Ç}‘8Ç‹]^pÃÄ @ÓTH‘) À~ìmØðÒCøãÏÇ® ÿHºéáp8R ™¼¼<äååÁçóÁãñÀív›£)¯!‚Ä A€xçí±cÇæh€£! eY3-$±é¥ñèm9Ã0¶g]×m)f°|ùò!=N555¸ûî»móξò§žÁP8ùÜ+m³|ðÁAÿŒ©RͦOŸnþ­È1´ÙŸë ÁéÊØÀŠªÈƒf%<œ`‚ÓUzÞ`¡È’™ö·kãëxéwßÓ?>›ÿñG„»Û“„Œ!LDQ„Óé„Ûí¶ CÌx½^¸\.SøPšAd@DguVNzš0 ƒp8Œñãǧlzi¬cÌ×4Í+‰óu]7ëe‚Á š››Í}Ìš5 eeeCzŒ~øÃÚšXVžz.&Í[:h¯7sÉyØøÊ#uÆ{جY³?ûÙÏ’šY¥˜€†;1jÜÔÒYNäXšªfµÃJXSdð§­éq÷\p€e¹c‘ÒuÔïÛ=[Öaß§ïBŽEҮʲ¬™.fø»\.x½^ø|>äçç›#2cˆ™D‚ Nl(2CD+W®ÌÙ¾ŒT3áÈx6ÖùÆ]Zë|ŽãÌÁ‹1€9rä4KzÓ9çœ3¤Çç¹çž³Ỽ~,û×êkr¼ˆ˯0§EÁO<1¨¯i\÷&fê«?”×f¢Ó“u jX +Òqýe9¢Ë{LúÒ´ÔVcã+à©Û/Æßø>ª6½Ñ§1¾Ó†k™‘^–JÈx½^3ÅŒÜÌ‚ 1CDŸŒ3sæÌÉɾt]·EQ2ÝÖú·ánfm” mŠYkk+î¸ãÛ¼³.ÿ\^ÿ ¿ö¼e—€æô³Ï>‹H$2¨¯é÷û“® ¯×kN×ìþdP__p¸À  A97Ú<žûÒ0 D§;ã&¤Ùèh¶uÏ๻¯Äßîù¶¿ý<ÂÝm}¾?k*©!dŒô2ŸÏ‡¼¼à÷ûÑÔÔdN/\¸Ð¶üàç0ÿì|Aà `6' 25-¥áxǰrË% ÃBt¹!G#P³ì¿ wcÛ›Oc燯dìgˆÞ„ŒÇãA^^ž)bü~¿•¡¢‚ úuó†AéÈeªYgg'$I2ÉÒ=«ªj0ÆCUUhšfTÀ¢E‹†äX9rO?ý´9-8ܘwÖ7{0« ÂŽ^‹¡³aþr»pìèLbªYYYÊËËÍéºêOûl˜˜³Zw4â0ð_º·—–"Á!{ÿÇ@Ò@pºÁeXw¤*2>{ë¯xæç—cû»/d$d¬)`†ˆI‘±Fc PPP`s0Kl’IQ‚ HÌÑoæÎ›3Ëc†aÐÒÒ’Õ Ä*nZ[[mƒlkÇÁäÞ{ï…$õ8bÍ^z!_¿F̱pÑP7› fË”Ëà+*5§×®]‹šššAûìFçu+Öæªr4ŒÆý;‡nxΰq§³E¼4M;îkiÑi3èýŸ¾‹gÿû lZó8b‘`FÆÚ*QĤjŠiˆ˜ÂÂBSÈX£2¢(RÑ?A$f‚È^€äÚ¦Ù*ú#b¬h4Š@ `PÅÚššüõ¯í:ܘ{ÖÅíC‘¢GMÎ ËbþW/µ Æÿô§? ê1HŒÎ$ÖÍ‚º™„‹3Þ02WÎ]:âµ4Ñð±íÕ2ˆð}Ô麊 /=„uú/;šûõû…±¦“YEŒ5ãóùà÷ûQXXˆÂÂB™bÆï÷Ãçó™µZÖZ*ú'‚Ä AsÎ9çälðÀ²,ÚÚÚ †1ï¶ë3ÛF×u[Tº³{イܓf3ûŒ‹àpû2Þ"Å çFÐÌ9cµÍ²ø™gžT›æD13oÞ<ð|OdäÐÎÇf€.:rb ` ã}i²mÖ9Üáx‚#Ùé,ìÄ«ÿ?{ï%Gyç{;ç<9$$¡€„ɀɯ00‹×^c³Öi÷5د¯½wmöõúxw}×÷úâuÄ ‹×€½˜`@ !$$¡,Í Mα{¦{:wuõû‡xJOWWOê0A¿Ï9u:W=õTu÷ï[¿ôïÿ/N¾õßs0ÌÃD _rÙd2e$ù»\.x<x<”””H÷].W†WF«ÕRhA$f‚˜?ååå¸ôÒKó¶¾ÉÉIèt:¸Ýnéê¬Ò­Çã‘âéY©V¿ß_t1ÓÓÓƒçž{Nz¬3šqÉuŸœ÷ú±è¬Cw¦Ãhu`í‡nK›×矾`ó`0`6›¥Çf³_|±ôx´·Ñá t£*U~þÒR)ñØò ;Sk4Ð-P}¶5Ö׊?ü¯¿Á@Ûñ9‰Þ à %cÉý|8ó”––¦-%%%Rˆ™¼A¦<éŸ A$f‚˜3ù, R©088N'%ö²ûüsÌHâ>ù_«ÕfTÕ*?úÑ ç+Am¼înÌ֜֙ˆ†‘LäÞ‘þÒ"7ÐäCÍR¢ˆ–C¯/ÜŸ™úƒÂù*Ó½ÌÃÎTêsyGg¿þÏße +›IÀȽ0‹‹6›-Í SRR‚ÒÒR”••¡¼¼ååå(++Cii©ä•Q*Å̶I"† 3A̛믿y[ßèèè¬B¢øÒ̉DcccÒkëÖ­Kó¹·C¥VcÝ•Ï˺cá©9õêP¢´n ª/:ï5{ÿý÷±árW\.WšQyà 7¤½Þ´÷¥…5ÐUªs…´º¼­s9‡ßõ,vý柑âs1J^›Í»Ý.%ô3/ 0¨¬¬DEE…$f˜W†5ÈÌÖS†‰ ‚Ä AsF£Ñà3ŸùLÞÖ—J¥²VßbWÁå=fÆÆÆÒ<$Å1ûÃþÖW&%ŠØÿâÏr!À}Nbáœ×séÍŸN{ü«_ýª`ó¡×ëÓ¼3•••ذaÃy‘Ús¾Á®?_uSþ `y†½÷ÚSØóÌç%bx/ŒRYIII†€©ªªBUUUš˜)--…Ûí–ÂËXO /#‚Ä Ayç–[nAiiiÞÖ722‚pX9„GIÐ ¦½§bæé§ŸÎx®ëä>yý鼬? çÜßdÕe7Âê*“ïܹ}}}›¹‡N^í®é—ÅùªÕç¹æ2 ;{÷ÅŸcßóÿ®(dØ-2Jž˜éÂÈxS]]¶ðb†2¬zë)Ê Põ2‚ HÌ‘?ãP«Å§?ýéüÙ†©Ξ=‹D"h4ŠX,†h4Šx<Žh4*-ìùááá´Ï_qÅÝßÇ£¥¥Eñµco<ƒ¶ù˜$¢¹ygÔj 6Ýp¾yg2™,h™f£Ñ‡Ã!=¾öÚka0œ g¼Š”(.ŽsVg€n–½Uf˹°³ Ĥ°ä¾Ã©”ˆ·ÿ#üÓ( yu²ÙˆFVQQªª*I¸ÔÔÔ¤ÝVUUI™’’©Ð_†™Ï—#C‰‚ òÎm·ÝÇ“·õMNN¢··@“““˜˜˜H{ìóùàõz¥Ï•••¡¶¶¶ ûªä•á9ôÊy 7⹇.]rý'¡ÑêÓÆ 67åååÒ}³ÙŒøÃÒãß‹ž÷.šsVóAo•üŠ‚âÑð’ ;îlÂ3ß»GwþVA«CÊX^Äð¹0Ì ÃBÈäB†÷ư°2¥ÌÙúÉ0‘EAb† ˆ¼ Óéð©O}*oëS©T‚(ŠR8Ÿ'“L&‘J¥ ‚ÁóåŒ/ºè¢‚îg ÀK/MŸÌ>Þ߆Ž{ó`‹9Å&› _u¾L³ßï/hî 3n¡f \ CÐhuô¢ÉïzYØqØY$8‰7Ÿúžùþç0Òý¾¢á=2ÌÃû•<1åååRÌt¦¢¢"­bVÆ yŽ ‚ HÌQ0>þñg”èÍQ3BÈÎúçrf‚Á ’\5©Õ«WtŸþùYU[{oûSy©r•ï̶?µú|YâǼþäÿ‡gÿåŒö´(~Ïä%—ù°2ynŒ¼:/Ó…‘É «RÆ<1rCå— ‚ 1CDÑ1™L¸÷Þ{óºÎX,†P(§Ó)D,I8¦½·ž™™ÿ3 È© vœÊy»¹–hWyÖnû˜ôØçó´²™Ãá€Ñx®ZXeeešw& áàŸ~µ(Ï_µZóAÈY~×›J‰XB|˜™ÅbAUUUAö)g$þËÃ_” ¯®“ï, 1Ûîø¨TçÚúÓŸÎ*ÿg¾ðUå>ÿùÏC¯?_Uíä[@`|pqþùi4Ðæ¹l3CHÄÏ•Ü.pa€pÀ‡wþûÇøo܆C¯>‰xTÙ 'o„É<2Jù1|X2¼ˆa¡d¹xa(¤Œ 3A,8‹ŸÿüçóºNQÑÞÞžVÑLž3Sȳ}ûöajjjF!#7ÀºOïG*•[¨Y*ObÆ]Ù€ÕWœ÷x½^<õÔS›3«Õ*5S---Å]wÝ%½–ìûãOí9¬Ñê¡Õé ²îdRø Áfþ „ü^¼ýìÿÁÿãvÞþk$báE 2|~ŒÉd‚Õj•òcJJJÒ„ [X(YII \.ìv;¬V+Ìfs††Oê§œ‚ H̱h¹ë®»ò..|>$A …ÒŠ2ÄlûöíÆ 8j¦Töv®B._l»ó!ð1T?ýéO3BõòIUU•Ô8óÓŸþtZÙæ–C;ó7 Z½j¶ ëÅ$â‘PÞ¼nS#xëwÿ OþÛpôÿš6œáâ½1:F£QQȰÐ2~a"†•UæE ï…Ñjµ3za‚ H̱¸~@Ôj|ík_Ë‹¡’âBrº»»111h4šÖ,(œg&•JaçÎûǃJ =͇rÛ~ž ^(©^…‹.»Qz<:::ë mó=êêê R©`µZñ™Ï|†ŸX¼ú‹o-êó¸Îøó* Ï»Àƒ¡õÐëxáG‹'¾qŽïzB">­ˆ‘‡”ñ‰þF£1­b™ÛíV2|e2Öä’U°ãK+³1¼FIðA˜!bQ²fÍÜyçy5þDQÄÙ³g199‰ÉÉÉ´×ùþ&ùäøñãiýnøŠOJ÷åb&WïCJóšcñ¡;¿æùÉO~’æáÊ7V«uuu€ë¯¿>ÍéEû±·í9¬R© Õ ¶þs•Î"³¯t–Jaàì1¼ùÔ÷ðËGnÂk¿ü{tŸ~wƪyJÞ˜lËXÿ&dÊÊʤ…1‡CJêgž˜™ra‚ Љ–¦€ ˆ\yðÁñÎ;ïÀçóålô1‰FFF‹¥7”ôx<Ù‡;v¤=VŠ÷çÅ–J¥‚ Ò˜½ýíH¥Ä´äû¹"ŠÉ¼…<•Ö®ÆÊÍסãøÀðð0~ûÛßâÁ,Øyàv»Çqÿý÷§K8ºói¬ÚrCNëOÄÂðbÊ;Œ)ß0¦¼Ãx‡òA¥RC£ÕA£ÕC£ÕA­ÕA«ÓC­ÑA£ÓA£ÑA£Ó𺓠f» f»f‡f›jµ&o!aÊã)@£§†0Ø~}gŽàìá7á럓c·J¥—ù2òòËn·G %›NÀdûN€0ñéE IDAT!‚Ä AK‹Å‚¯|å+øþ÷¿Ÿ—õ1C8g4Ìt¹\E3|33ùÂÉdjµÉä9ã7 cr´®òºE!f€sÞ&fàÇ?þ1î¿ÿþ´Šcùæ›ßüfš‡‹1Ðv]§ö£ñ’«ç4C§ÐÓtÝM0Òõ~Aêz£&›&»›F›f›f»&› f»f»G 4ZÝüM< ¨TˆG‚l?…þ³GÑßr£½-óêW¤”äϪ2Œ’a 1Ùª“±Ë|N ˇ‘÷"C‰‚ – 7ÜpvìØ£GæEȰû|u1 0ž™®®.´´œcƠ܈cb&™Lž MÒj%1c½­9‰™Tž½å cŦkÐùAéèÁÁA<óÌ3xà r|ÿûßÏ(¢À³ï?AãÆ«0]ƒ!Ç™¯¡ëä;è=óâ‘PÑÎáx4„x4ÿØÀŒï5Zl0ÛK`qx`v°[t:#R)ñƒH¥DÄÃS˜ò"81‚©‰'F‘ˆå^.›ÏOáûÇðËXŽ +¿ìp8¤3æ•q¹\y1¬:ÿ o A$f‚XÖ<üðÃx衇rÎÍH¥RÒ‹à\(S¾‘{eXN ÑÑjµ’ñ–L&!T*DQL ƒëmM+‹¼K£ÑHçŸ<ŒŒ…y<©Ü2k~YYY™ÖÓãñÀét¦‰¹G†„ A$f‚¸ Ðétxä‘Gr2~xA“HœïÏ!n¿ýv|ö³ŸENãò‘àž{îIó ±„gªc43¾Ç®%$â˜íC;AÈù䪋6£îâ­Òãžž<ûì³ó^_?xàlÛ¶ ­­­i¯Y­V\yå•i4y£Ó/þ/>öÿ`ïïÿoQsb–¢€‘W*S©T’%[R?/b*++¥…2¬ &2Ì#ê–±Ð22A,úßËTª— ‚¸àyâ‰'fm0Ësd’É$‰âñ8ššš *TyÒjµ¸÷Þ{ñ‰O|×\s ŒFãŒÛÃÎ;ñä“O¢©©Iñ=GJ‚fžƒÁF#‰«h4Šp8ŒP(„±±1LLLHŸ¿þ3ßÄêËoš¿4˜`0Ûò~<ú[â?xHz¬V«ñá_úÒ—pã7¦y˜”hnnÆÎ;ñÒK/áÌ™3YçnË–-Šë:r䯯Ær6ð‹ÁBý-*íŸ\Ìð&¶ùÜ>?†å°[›Í&½Çd2exå}cHÈAb† ˆ Qño|'Ožœ³˜A3­­­3ÐjµØ¼y3î¾ûnlÞ¼YJdAgg':;;±{÷n455Mk¨ªÕjTTT¤†ÙÄL(B0ÄÄÄ¥u\rý½øÐ“ƒA«†ÅYRcò›oÞÁNEƒ¹´´555R¨’ÑhÄÐÐzzz0<<Œh4šu½ƒ+W®D]]]Vã7`ÿþý9 —éŒkùksý{›Ïßa®¡3 ^ȘL&¸\.)—‹´Z­°Ùl’—† ^Ä(…IÊ`RÅ2‚ –T€ ˆ‚ V«ñï|_üâgÝLS©€F£I3ò4MF¾‡ 8räŽ9’Ó˜Y¢?…š_R©TFO½^•Ju¾yæ`GNcH¥D$qůйrùmàõ'þQqÞGGG1:::·?­hllL;NJØív”••Íyr£z:C[é¹éĆü5þ8Îv=3 ¨Ù‚lûÇ/:•••R¨#ŸÇÅ„ .ü­’ˆaE-øJamA$f‚¸ q»ÝøÎw¾ƒo|㊡bÙŒF~‘ ¤k¯½mmmÌ(Û<˜qÝÞÞž¶~¶]ÖO&‘HHÍ1U*ABáØ>iµZ)·ÇÛßžó¼Å£!˜ fÖ_}Ž¿ù F{Z潕J§Ó‰òòrTWWÏ©gccã´bFnÔg{œÍàfbD~;a¢$¤ùû³ñú(½o&ñ“Í Ã/õõõp8ŠÞZÆ<3̫ȋ–#ï#+#!C‰‚ ŽM›6á¯ÿú¯ñä“OÎésÌXä «T*ƒÁ€ 6`ݺu˜˜˜ÀØØÆÆÆ g4"Ýn7ÊÊÊPVV†T*…P(=ùœ]¥æ>‡½‡5'äËâ21 Oajb6WÙ¼ç,)$âÐhó/h®ýÔ×ðü¿}1MÀ9NLMMA„4#]¥R¥åd°äòùö¨q»Ý°Ûí³6èÙ• ýéÄÁl<,òÊyÙž›ÏóÓ ˜Ùˆ¾fuu5jjj`6›… /`˜ˆa91¬`ß3)[ï1A˜!‚PàÓŸþ4šššÒJ ÏFÈLwµ\­VÃãñÀãñ`íÚµˆD"ðù|H$’çD£ÑHÆŸÉd’š\NMMeTJfì±û¼haþ9j‡¥õø:r3„`²å_ÌÔ]¼ë1ÜÕ à\nÓš5kP]] F#Í ëY’kÒ¾œÆÆÆŒ<*^´(y&xÃ^éu%Ñ0÷%›ˆÉö:«ôQ§ Q›Î“mÙâr¹°qãÆ !#_x/ÌL"FžCB† 3AÓ R©ð?ÿçÿÄ¿øEŒŒŒd(rƒR¶£ôÃd2¡ººZqûÑh^ofWyyaV––~ü- AE1Ã{#¯¤6Ö߆ú Wæ4g…ôÎ\qÛ_㕟}CzÜÙÙ‰ºº:Åù‹D"3z½æBee%Z[[Ó ð¼Ü˜—?žNÐÌGÌ(sÙî+=N$ùBJ^E¹ˆ‘‹¥}5¸úê«áv»Ó„ Ë•a†1|NŒ’ˆ‘÷!C‰‚ ˆY`³Ùðÿøxøá‡6*…ú(1›¼„ a [£V«3*tñ ßG†„,o&™L¦ ƒÁve¾ëÔ>\þ±Ïå/†BÊ‚ 1C‘#k׮ŗ¿üeüä'?™ñ½Ù¼0ó)…«T|@£ÑdxX)fVÊf³I†"G,“k²u'“IFD"çºÜû†ºà®lÌi¾Ä¤€x$ ½É’×ã R©qù­ŸÇ›O}Oz®³³555¨¨¨H{¯Ñh„ÍfÃÔÔTÞ¶_[[‹öövIÔŠ¢(Í)Ú'÷”ñËt‚Fé|áCÁf³ˆ¢¨(hDQD$A(’ŠL'Ä•ŠLVÆ–›o¾7n”<.ò2v^ÊK,ËC IÄAb† "Üu×]8}ú4öìÙ“UÄÌ$Lf*<›uÊ=3ÌxfW·™‘ÈnÕjuÚzf@²êPV«U3ÐqâíœÅ Ä£ahõ¨5ùý¹^wÕíx÷ÅŸ#49ÀÈÈJKK3æ·´´4¯bF«Õ¢¦¦ÝÝÝi•5ƒd1f ËERš’¡ž-±6"F.hØs~¿ÉdƒaÚ%A3S>[®¿þz\wÝuRñ&\xŒR(‰‚ HÌAo~ó›ðz½8}útV#°ØžÞ+À h¹ñÌD {â‹Å‚ññqi|Ç߯·>‡ÙJ!ž‚Ùêòhj´zl¸æ.zå i^;;;Q]]’’ô¦ƒ‡~¿?oÛohhÄ p.‰5(e‚’ E¹Á·M×­~:1ÃîóBe:A“J¥066†x<>­Éæ™™)O†ÝnÛ¶ wß}wš×EB–Í C"† 3AEÀ`0àŸÿùŸñõ¯mmmŠB&«iŸ§.í*•*­õ_ÉHœN̨Õj©úHþñAŒö¶ ¬nmÎó% DC­ŽœÖð¡÷ýC8{ý­ÇàëO{½··###p»ÝÒþ2JJJrîxÏ`Ýì'&&œ+Ò`0`µZ“Øg2ܧ3Úg*21oÍÀÀ€4F¥õLwnΦz™J¥Â† ðàƒÂh4¦y§fš1A˜!‚(2‹?øÁðÕ¯~ýýý³7ìgÙ|s¦ÏÈ‹hµZÉdy0‚ H¹1,ÌL©ü3»jÏè¼·çèÎßâÖ/üs^æKHÄÎ ‹}NŸó u£íèn´ÙÑž3Ó¾7™L¢«« UUUp¹\i¯éõz8NI|äƒŠŠŠ´õƒA”––¦yf˜Èä$ZÆJfó‰ÿ̘——Lf¯³çù°Aù-KòEýýý‡Ã92ó3ÙDMcc#¾þõ¯Ãb±d—Ù1A˜!‚(2N§ÿöoÿ†‡~8kgø|„™)}FÞcF£Ñ@ÄãqÄb1IÄ‚ ЩT ‚ ‹IK<‡ R;Ÿ[Ó×rC§P¹ò’üšx1µ“uÚ÷MMŒàôÛ/ íð.x;ç´îîn¬^½N§3cîKJJ099™7ïLEEΜ9/°¼^/ÓD(«DÇ<$¬¢ÜLUÌø±ó¢†3r±+=ÑhRõº™Ì\Ä /jÊÊÊðè£Âívg„/*P/$b‚ 1C±”——ã_ÿõ_ñÈ#Ì*'#_93J=f”B–”‰xRžˆn2™ …¤ÏzõIÜõðó6_‰h*• zcf…3ï@ïø Zæµþx<ŽÎÎNTTTÀnO÷iµZ¸\.ø|¾¼ì‹ÑhL 5cÍLYˆY¶Ê\¼˜N4ðB•‡ !vÍ€T2Üòf¦R©‹ÅÒžÓét3v™W2Já@F£1m݇^ûOˆ ;s!žÂ”w;~õmüþ_Dçɽy2‰DÐÙÙ™æabhµZ¸Ýî¼í‡¼¯ÍÐÐPÖÞ2¼°™Íqší1dA@WW¢Ñ¨Z8]/˜\Fƒo}ë[¸ôÒKûÄÌ$ª ‚ 3A,"T*6n܈¿û»¿K«¤•«gFéýò3À¹ kJÆ3Ÿ|.0òrάã:óò0&Gzq|×3y¯á®&<÷/àÌí9YÃÉXnG>0 iÅ|>‰„be9¶°¢rÑ£”0ŸMÉ× …ÐÝÝVb.‚h:a%N§Ã·¿ýmÜxãŠç˜RxA¡ …™±(„ ãòË/Çg?ûY<ù䓊ï«gFéýò3jµƒ‹6› V«‹E*ÌŒK–„F‘H$¤>(|rº H&“0‡ÃÒ6Žïz ®‚§zeNs%ŠI}ý·8±û÷Hå)ÔK‰©©)tuu¡¬¬L*GÌÏŸÇãÉZ´a®ÈCÍFGGQ__/‰~þÙ-Kä×h4 þì}J‰ÿòÏ'“I´µµabbbN¢![¹ïÙˆ·ï~÷»Øºuëœ?KAdBž‚ ¨¹òÊ+qçw*^•ž«˜™MÃLµZññq„Ãá´&Ì ïõÁÔY3C£Ñ˜ÖäQ«ÕJ÷¥q$ìyöçn–L Øñ«Àñ7ŸQÈÌÖ› T!‹ÑÙÙ ¯×«¸~—Ë•8_ä¡fP«Õ’W…Í»¼‰¦^¯O{]é¸ÉßÏ?DZcÇæUnz>¡mV«?üá±mÛ6 #‚ 1CÄr4Û¶mÃwޙѼq®afÙ® ó93,dj||aÆäy“RÎóê0¼ƒó7K¥ðö3?ÄÀÙ³2°åÏÉóC²UÍâñù|èííÍ(cÍ ÇãÉË1gÍ2cccEQêã3S—¹ qìØ1´µµeô*N§?úѰaÃú’A˜!b9 —lFùªU«°~ýúÅÉt(‰y³K>Ù{jj ---Ê*„䂆2ò<ÖŸ„q|×sðtÌy®½öÚï™v¾² >×gºÄz¶ðtttdÍq¹\û7_øÊiÁ`Á`P2¼ É…d2‰ööv;v SSSE;ÏËËËñïÿþïXµj}é ‚ HÌq!!/œJ 3y Š"püøqŒO[–™‰y(+Àă4žy„›½ÿî«8ùçßO+bäcã…Š\h)•OBçA__Ÿ¢wF¥R¡¤¤$/ÇÙáp¤=B2™Ì2óÍ™Ã{g¼yxfC]]~ü㣺ºš¾ÌA€ ±(aƹܸÎG%1£VÇÑÚÚŠ¡¡!¬X±f³‚ @E)ÑŸïP/ï9à Þäìı]¿Ãå·|nÆñ÷¾û_øÙŒsÅnåacÙJób_’É$4´_ÐÞÞŽªª*TUU)Š¯×›Ñ·'W1388ˆºº:$“I©¡)?~–ÄÏö[)Ù_£ÑHM@ç““+«W¯Æ~ðƒŒ}#‚ H̱Œ olç*f”<3rÛ‰%œ {:yò$Ün7ÊÊÊÒ*—Åb1Äb1‚A$O‚\i4š´üŒ»~Æ WO[ÝLL&±ÿ…Ÿ)&ûË=2³í‡ÂÏ/k2™”Z*•Ê3ƒƒƒèíí…ÛíÎè¡£R©PZZŠœŽ½Ýn—ÄpÎ3ã÷û¡Óé ×ë¥9T*Á€T±Ìçóatt´¨žƦM›ðýïf³™¾ØA„ÂÌ‚X4BFIØÈÅL> ÈffóÌÈÇãóùÐÖÖ†@ å–0À‡s±jZòˆi‘¤€=ÏþpÚp³Ö÷vbÊ7’Uð)åðð1V]Í`0Àh4Âd2Ád2Ál6K‹Éd‚Ñh„ÑhL ;cáiicimÍZŠÙn·g”ož+&Í😘HYL@²çø¼×KEŒŒŒàÌ™3Y!sÍ5×à?ø ‚ ˆ"@ž‚ µ°‘'¤çê™Qj˜ÉJ gK¤ç?+Š"†††àõzár¹`02DD"‘€N§“¼5¬ŠV«M qóve 7K&óYÅyÉ&følM'ù}â=L|ò*•‚N§KózÑÝÝ ·ÛVyŒQZZŠþþþœŽ»Ãá@(D£Q„B!©ÏtÇ]¥R!™LÂëõf-VP 4 zè!Üwß}ô%&‚ 1C‰šüçÌÈ{ÌÈs1”DŒµZD"ááalòBF¯×Kb†y”B¸N¼ùÖ_…’šôJW-¶#89¦(fxo/`xÏP¶êjì³Ì£!‰DÚól‘‡Æµ´´ ºº‹%c~l6L&"‘HNbfppð¼Øóza³Ù²sv|>|>_ZM±)))Á£>J¥— ‚ HÌq¡ ¹áΓk53µZ­ØcF¾ÝéÆÅŒk–hî÷ûÓDŒÑhÌ2laÞóaQI¼ýÜÿÆÝ_ûÔŒE8±ë¹Œqgës#¯P&_x±Ãçˈ¢ˆD"x<ž!fDQ„N§“*Šçr‡:::àt:{Ì”––¢··wÞÇ^^¹nbb iS¥RI®ÑÑÑŒjs Áe—]†ø‡€Óé¤/0A‰‚ HÈœ¿•w™Ï·gF)1~6]ÙåÄX嬩©)¨ÕjèõzØl¶4ñÀ“nöæáò}pö½× xÓ¶¥$bôz=t:ä2 Òžç=5|˜ 1c Âá0B¡Pfn(¦‰¿³gÏ¢¢¢V«5#OÆb±Àl6#Ï[Ìðb1ÀjµÂd2I¢mbb###˜œœ\Pöý¹Ï}÷ßÿ‚Žƒ ‚Ä AÄ"6ùΙaFŸÉdrVb³Ð8N|ûÛ߯–-[èËJAb† "S@¢š/ ˜˜‘W2›­¡,÷Î0ÑÁzœ$“ID"I 0OÊÅö‡…›}⑟`¸ãtÆð!eL¬ðUÊXe2&p˜a•Õø|6‰D"Cܰ°³D"!…Ééõú4oÖÐÐzzz`·Ûáv»ÓæÄd2Ájµ" Îëø[,IÌ„B!455!™Lfˆ±…dãÆxôÑGCí‚ 3A\À†=fÏå»@¶†™3Iéu%ï _¹LÞŒ’åÑ0ÃÞËðva÷Óÿ‚X$˜¶æña99ÌÃJ-ó%–FcV!Ã{¹XþÛ^È01à Q¼lnnFII ¬V+ôz}ÚÜ”––Î[ÌðåŒS©&''aµZÓú÷,äyzß}÷áÁÌ8/ ‚ 3A Éx.ÏÌ\ffóÌÌ6w†5jdUÀxA#/À‡š±‚Œž¦w3ÆÇ‡—Éscäy2|å2¾÷ +_ÌDk–ÉÞÃ{–äeÕjuF1€h4ŠÓ§OÃjµ¢®®.mžŒF#ìv;ÀœÏ‹Å’ö8Âb±dˆÒb ›²²2|ík_ÃÖ­[éËJAb† bvâ&ÏŒÒ{åb†å‹Ì5ÄŒ‘ï@Ï |Š\Äðžyûlb†|ßRŽK<—<-¬(óÈðûÆçÃ$“ID£Ñ4¯{¿R1Æàà š››¡ÕjQUU•¶þ’’’y‰¹—‡P áÑh4¸÷Þ{ñ¹Ï}F£‘¾˜A$f‚ ²‹yU±|zfŒF#ÆÆÆ2ŒU¹¡Ïe®â‹4JáfrQÃíJëd¡`,áŸ'SÊÑjµ’‡%Û>ð"J­VK9)üÂ`¹3l½üX[[[a³Ù MÐ 8øýþy‰XþÊçªX‚fÆ xä‘GÐØØH_N‚ 3As6ùô̘L¦41ÃÖ?ßl¼qÍ‚\Ð(…š±÷±Ï(õÄaûÁ[j4FIܘL&ḬוJMglì3¼ˆá›*5þäûä¤R)œ8q&“ *• •••ÒvJKKætÌ”ª×)y³ ‰ÍfþðÜzë­Tr™ ‚Ä AÄôb`.Æ­¼Ùtðâ@§Óatt4­g išmÃÌÙîO¶p3%Ï Ÿ;#÷@(寤R)D£Q$“IƒA¨Õj)éŸ÷Ô°3ƒA8¬¬q2™„F£ ÒvÙ|±ªf|ÁV@IòÇ!‘HàèÑ£RO &ht:œN'&&&æuÌ”ÄL¡ùèG?Š/}éKp8ôå$‚ 1C1£R©`³Ù Óé¤\ÑÑQÉ«1ÃØl6£©©)íõ-[¶ #Ï©a¦Òx價†›±rμHàsc˜×„ÿâË}áVòûÄ‹+ùØXMQljD‡FF%1à ¹') áàÁƒ¸âŠ+ÒMII &''g-DXYf~Š!dêêêðÈ#`Ó¦Mô$‚ 1C‘»aFóÊ•+ÑÒÒàœ`tt3®‹Àãããi†¾ÛíF}}=jjjFqüøñ´^*¹ 𹄛±PºT*%å¨(õ—‘/¬[¦«ÂÆ p>©žÝò… X~¦Óé¤1²Ûl¡qápÀW\x<Žªª*èõz¸Ýnx½Þy‰N—Q€/ºk˜Á`Àg?ûYÜwß}’g‰ñÙ3ü IDAT ‚ 1C‘³a^’uëÖIbúûûg%f˜×Ál6ãäÉ“i¯544HBáâ‹/Æu×]‡¦¦&ìÙ³G1®‚&—p3¶®lÌXØß?f.大_òò̬8?^6F6¿¼×$ãСCزe b±ÊÊÊàv»1111«â SSSÒ}6–B„™éõz|üãǧ>õ)”””З ‚Ä ADîBFéqEEl6›dèŽ#ÎX*7•JÁáp ¥¥%­¤°Ãá€ÛíNF£·ß~;î¸ã¼ôÒKØ·o_^ög6áf|Î 3´L[’9[µ²ùz*x&4ÌkÃö/\À¶Ç ApäÈ444 ‹ÁétÂn·crrrÚ1øýþ´êgÌ+à þv>ûj0pÇwàSŸúÜn7}ñ‚ HÌANà°¥¾¾^ÊyI¥RÀÊ•+§ý¼ÉdÂøø8†††¤çÔj5jkkû·¨Õj¸Ýn<üðÃøä'?‰^xû÷ïŸó˜çn&âÅD¶qòe›g*`0×±òÎØùjfÙ*‹ñ‚FEtvv¢¯¯«V­B}}ýŒãëêêJ{ÌšeæÃ3c2™pçwâ¾ûîƒÓé¤/A‰‚ ˆÂ ÞP¯««Css³dÐvvv¢¢¢"£c†ë¯¿^ K#‚ HÌA,¨ Q ±â {‡ÃX,†x<>ãúx±Â‹£Ñ(-ì=¼hàÈtÆ?p.´éË_þ2¾ô¥/¡©© {÷îÅÞ½{1>>>m¸kÒȇ™11À‹™B %A3›>9ÙrXxA#Ÿ«éD,k:,++ÃÍ7ߌ[o½µµµ=v‚ 3A "b”JËCÁ˜o³Ù‡‹Å²†xñˆydŒF#L&Ìf3L&ŒF# CZ¨ÙlEƒR—7bãÆøÊW¾‚3gÎ`Ïž=Ø·o†‡‡3D/Øó¼˜áE¼s¡ x%O’<4N©ÿË||.åû¨×ëqÅWà–[nÁÖ­[aµZgíÁ!‚ HÌAMÐÈ… ó¦°…¬Ê«´Å¯‹‰¶æ1›Í°X,0›Í’ aáfZ­V1?e¾û³nÝ:¬[·_þò—ÑÒÒ‚·ß~{÷îÅàà`F6¹˜áç¢UÌ”Æ=]á‚ÙF¶ž4¼ÀÉ&jm6V®\‰M›6áòË/Guu5JJJæ$6 ‚ 3A1¼q«$f”BÂø,–4/‘bž¹±Z­°Z­°X,’w†‰¾jX>÷qíÚµX³f zè!´¶¶bÏž=8rä:::¤÷°ð-¹ ãÅL1 ÃtE.fxÄïÿy%/ŒF£Ùl†ÇãAmm-jkkQSSƒššÆ¬Õæ‚ 3A .hä!f¼7Åd2I¢CÆ’Òy£š-cë`"Æf³Án·Ãf³ÁjµÂl6Kæf6ßý\½z5V¬Xûï¿Á`ï¿ÿ>Þÿ}´´´ ­­ @ cN”*™óøðÞ^ÔÈßÇ`Õ͘¨Qz?;Öüñq¹\°Z­Òq–‡Î6§‰ ‚ 1CQtAÃ{e ƒ”ßb±X¤ð0“É„h4ŠD"A¤õ|ÃIþóÌP¶Ûíp8°Ûí°Ûí’˜‘‡™¢ì±ÜsÄDÍfÃ¥—^Š7Jû3<<ŒŽŽttt ½½½½½E7ÞåáfL|0”BËä¹O, D%ñªÑh2r™øE.^É3CA˜!bQŠ¥<^̰ð°p8,‰ÖSÉøf•˘±Ùlp8p:p:’ ±Z­RÎ _ͬƲRè/âDQÄŠ+°råJÉØhkkÃÈÈFGG166†‘‘D"‘¢ ù¸åâ„͹N§“Þ›L&ÇFÇ¥cÆ+ƒÁ³Ù,_æ5+V AAb† "o†¾’g……‡…B!D"Äb1É+£R©ÒÄŒN§“B—ìv»$b\.\.œN'l6›d,ó†r¡…Œ<…÷RÈsL˜È1ؼy3¶lÙ’ñÙ©©)IàŒŒŒ¤ÝE € ó³^¯‡ÍfËÌ›¥V«¡Óé`2™L&áóù011¿ß¿ß©©)ƒAD"‘ o/f,‹$8y±i±XÒÄÌB‡ÜA$f‚ 2Œ|%1îô³«õ¡P(Í+ÃĉDBêXÏ>g³Ùàt:áv»áñxàv»ár¹àp8`³ÙCÌŠá™á »/oFÉ{CxÁ#Ÿ3&4V­Z5ívA€ ’˜Èö8™LÂl6K¡xz½>­ÇL2™D"‘¼-¡PÁ`@~¿?#dÌb±  J"”yg²‰vŒœN'ìv»¢à$Ï AAb† ˆE)j²å¼ØívD£Q©Y& /c]ããñ¸” Î–l6\.JJJàñxàñx$#™1ã…L±öS^þ˜=—­2X®‹K0ó^‡RxœRž3,4pjj*Í£ÆBÍäafv».— .—K3Jž‚ ‚ 1CÄ¢2̳ª‘±«ü‹E1|ž {O8–<3LÌ0ÄŒcæ™a!fÓU1+†±¬”`Ÿm»…î-3ÛñÊRo ½^ŸÈ{fx1ÃD–^¯—ħÃáÂåb†o J!fA‰‚  a3K†gWíY8Kçs5"‘ˆºÄ‡-±|—Ë•bƼ2¬gÍBÈ|ÉÙlw¡… Cž·"ï Än`á‘H$MÌ°Ü æ…“çF)yϨa&AAb† ˆE/hø¦—z½^*ñË7”d!S6›M3rÏŒÕj…ÃáH[ørÌò f -â–ŠØTjtšÍ;‰D`³ÙF¥\'^Ì0QªT†›õâË2Sif‚ ‚Ä A‹ÖXæ“ãÙU{ybLgæÕa†#òžA$f‚XR†²¼¹¤’˜aaKò|>_ø«üt¥?ÿÇJ~ÜDQ„F£(ŠÐét’ˆáƒòÇUi¡™AÄ´ÿC)¾©AÄ"‚Ï•I¥RÒU~¥«ýò„tve_¾ÈÃÊÈ@ÎïñÊvìä‹\ÌP/tœ‚ 3A,y™]Ñg·òEnÏt•Ÿ äâ7¥[Å?¤,džŽAAb† ˆeaÏöJ¶… ä…;~Ù+:>A‰‚ –¥A<ÓÕ~ùÕ}1A±<¡A, ”DÈl… ‚ ‚ 1C±h… AAjš‚ ‚ ‚ HÌAAA˜!‚ ‚ ‚ 1CAA‰‚ ‚ ‚ 3AAA$f‚ ‚ ‚ 1CAAAb† ‚ ‚ ‚Ä AAA‰‚ ‚ ‚ HÌAAA˜!‚ ‚ ‚ 1CAA‰‚ ‚ ‚ 3AAA$f‚ ‚ ‚ 1CAAAb† ‚ ‚ ‚Ä AAAÄhi ‚ ‚ r#‘H µµ‘HdVïW©Thhh@II MAä€*•J¥h‚ ‚ æÇÐÐvîÜ9k!ÃS[[‹;&‘ æ …™AAäÀñãÇç%d ¯¯4‰Ab† ‚ ¢¸ˆ¢ˆÞÞÞœÖÑÞÞNI$f‚ ‚ ŠK*•‚(Š9­CšH‚ 1CAA‰‚ ‚ ‚ 3AAA$f‚ ‚ ‚ HÌAAAb† ‚ ‚ ‚Ä AAA‰‚ ‚ ‚ HÌAAA˜!‚ ‚ ‚ 1CAA‰‚ ‚ ‚ 3AAA$f‚ ‚ ‚ HÌAAAb† ‚ ‚ ‚Ä AAAÄlÐÒ(‰'á Æ''à$Îß „ÅX ZØÍ:8Ìçníf&tßmÕä×ЄNÃTDÀd(Ž@$8Àóë'ø`Þ£‰$¬FmÚü:ÌççÙn:7×éóé˜ %0fçµ Í¯?|þ6‘LÁnÒfÌ/Ž{¬zh54×ÙH¥_0&ýVÈç™ë`3?—Ïÿv|0ÿ&Ü6=Ô*Õ…ñ»‰ »»>Ÿ¡Pápáp¡P`±XÒǃúúz †‚ŒGE `hh¡P(mI$0›ÍÒb±X`·ÛQ__—ËuÁó¡PÁ`P:nlžøûlÎØñSºo·Û¡Õ’i²T@`Ú㇡Óé2¾¿üñ·Z­0›Í4¡9 ¿ƒüq&“ f³&“)ã~II Ün÷’ÛwU*•JÑ)pŽQ Í}~4õøÑ3B>fF¥êK,ØPïÀúZÊšh¾šzü8ÝëÇÐD$/ëÔ¨UXUiņ:6Ô9`7é.øyS)t„ÐÔëGS¯¾`?‚Q!/ëµ´¸¸ÆŽ õ¬©²A¯]^"rbb]]]èîîÆÈÈæú—¤V«QUU…+V ¡¡V«5§ñ$ ôöö¢³³===ˆÇçþq8hllDCC*++¡Z†b4•Jadd]]]èêêÂääd~~Ç5ÔÔÔHó· Üd2‰Ç<§u¬Y³7ÝtÓ’ºèÐÕÕ…¾¾>$“ɼ¬×ãñHǽ¬¬Œ ¥Y\l”ŽÅÔÔT^Ök6›Q[[‹ºº:ÔÔÔÀd2‘˜YÜ?Æ@ÏxM=çŒQ¬àÛ,s°¾Ö õÔ—Xp\p•ŒêÓÕy2ª³žØêJ-’°¹Dd\Ñ:0…¦^?Þï÷#Kt{j• efl¨sbCÛ…3ס˜€3ý4õøÑ:8…¸ t{Z««Î öõµX—°ˆÁ¡C‡Ðßߟ×õ®\¹[·n³w$ãøñã8uê‰DÞÆãp8°uëV\tÑEKþ|O&“èïï—Äg8.ø6ËËË%¡ºX=^‚˜ èêêBgg'†‡‡QhÓÑb± ±±¨®®†ZM‘ìwª§§ÝÝÝèííE,Vx»µ´´µµµhllDyy9‰™Å¨?Š·›ÇÐÜçÇTDX°qØLZ¬¯uàºõ¥(s—å\÷{ÃØwfï÷Š-Ü\—9Œ¸¤ÞkÖ•.ip:šzý8xÖ‹¶¡ „¤¸`ã¨p±©Á‰kÖ•.ËK1•ÂávŽvL k$q~BU* ¾Ô‚-+\øÐj4ê¥qeÄëõâСCèîî.àܨ°víZ\qÅ3zj’É$NŸ>£GÔ0ðx<ضm–Þïx?š››ÑÛÛ›W¡7WœN'V®\‰M›6Áh\<ÿ™ËUÌÄb1œ>}ðz½ 6½^úúz\rÉ%‹Ö˜.4hnnÆàà Dqÿß+*p饗¢±±‘ÄÌ‚]Yˆ$ðúña¼×æ[0D µZ…m¹qËæ Ø–Ih”w*†ídžp²k‹é3èÔ¸aC®[_¶lÂuºÇBxõÈ ºFB‹j\fƒ7_R«/.Y2†ölãkG‡0ê.ªqylzܺ¥›]X¬3L&±ÿ~455m›—]v.¿ürÅ×ûúúðÖ[o! mLUUU¸ùæ›a±Xýù>>>Žƒ¢··wQK¯×ãÒK/ŦM›E~Ír3Éd§N±cÇŠrå.¬X±Û¶m»`òÒqàÀŒŒŒ,ªq¹\.lÞ¼kÖ¬Y^³ BÌÄ"ÞjÁÛÍcÉéZ«ÆõëËpý†²%›ÈŒ xóä´Ž#).ÞSËfÒ⣛*ð¡Õ¨—¨¡=ˆáµ£ƒ8Ýã_Ôãt[ÏÚ—®X¼†öŒ‚qôÁ8ZÔã¬ñ˜qÇåUXUi]\¿ Á vî܉ÑÑÑÙ~CC>ò‘@¯×KÏ?~ÄBüšÍfÜrË-¨¬¬\œ¿ãÁ :„³gÏb1›‹[·nÅÚµk4/i¹ˆ™T*…ÖÖV¼÷Þ{Eøs6\U*\|ñŸâŠ+–ÄEùàóùpðàÁ‚z°óõÜ´iÖ¯_ná.Æ/k1“S8Ð:Ž7OŽä-·XZ|ts®\B†v\ñvó(ÞjE,!.™¹.±pÛ–J\Òà\2†v0*àÃ8pÖ Q\:_ß w\^½è íéõǰýè N÷ú±”X[mÇÇ/¯D¥ká7ðÆo ‰,è8n»í6X­V¼õÖ[hoo_Ðñ¨Õj\uÕU¸ä’KÍy‹ÅpôèQœ>}:oIÝE¹`âvãÊ+¯D}}=‰™yÒÝ݃Âçó-™ã®Õj±qãFlÙ²¥` âBÂáÇÑÒÒ‚¥dž[­VÜtÓM¨®®&1“Ošûxù½x§bKvJíܵ­k«í‹zœïµù°ýئ"‰%;×µ%fÜó¡Ô•,ÞÊ9b*…?ŸÅŸO,)Á¨dhßó¡xlúE;ÆXBÄ+Gp¨Í·¤cÚ» ¸l…ŸØZ ³aar—ÚÚÚ°{÷îñæÑét°Z­˜˜˜X4ÇiÆ ¸öÚk|'OžÄ‘#G]XÑ\¨®®Æµ×^[ô¤¥,f¼^/öîÝ‹¡¡¡%{Ü ¶nÝŠ7.Ù}H¥R8|ø0Nœ8A–ì~lÚ´ úЇ Ñ÷?GóÝï~÷»ËIĤ¼yb<Їp<¹¤÷%Kâxç4jV”/¾«ÙI1…?èÇë'†uøÞl„8ÚáƒÛªG•{ñ•!ŒÄ“øõ[]8xÖ»¨Ã÷fÃøT G;}¨+±À½w*Ž_¾ÞŽ–),õK=ƒœêñcu•­è…/±sçÎE#d€s¥L£ÑÅ•ï4:: F³`!g‰D»víÂÉ“'—”7F‰©©)´¶¶ÂãñÀétÕ=zôhNë())ÁŠ+Š:_ؾ};ü~ÿ’>îÉd½½½¨¯¯_r•Ïb±vìØ–––Eõ{9FFFÐÙÙ‰ŠŠŠ¢†.+1DünoÞm_Nú mCAŒùc¸¸Ö¾h©CQOìêZrá7Ó:)àt¯BRÄE•¶ES6{ÔÃ/_oGïxxÙÌu"™Â±® X ÚEå kâWot`"_6s‰'q¤Ã‡J— ¥E*Q>11W^yeI_a,&ýýýp:ðx[ËFÌL†xü´±žŒ¢e` ëjì0.p¹Ûá‰(~ñz;'"Ër®»FCð…±®Ö­faMË@¿z³pbÙÍs*œé °¦Ú¶à]îßmÇííYò^F%’b 'º' ÓªÑXVØ«eáp/¿ürQz,'zzzPUU›ÍV”í áOúÀ²œÏLNNåJýR3Éd»wïÆ©S§–åq…BhkkCeeeÎ t Mww7^{íµeù[™J¥000€p8\”rôËBÌt†ðË7Ú1>Çr&IàX×$Ê-pZæªCsŸOìê\RæÃX †æ~?.®±/X¯”=Í£øý¾>$’Ⲟë>o#!¬«µ/H¹lQLá…CxãÄ0–{mdzƒSðNÅpq£`ÅEvíÚµèʈ.•?ÿ¾¾>¬_¿¾àñæ---xýõ×´gL1ðù|èíí-ø•ú¥"fÂá0^yåôõõ-ëãžH$pöìYØl6”””,Ê12ÏØRíœ ¯×‹‹.º¨à}¡–¼˜9ÜîÃoÞêF4±¼ >F\q¬sN‹ÕEÎíØ}jÿýnñÂhMŒ 8Ö9úR \Öâ‰G!™Âï÷÷aOÓ(.”&PÁ8NõLâ¢"çv„cI<¹»'»'/£yh"гCSXWk‡A—_£¹¯¯‡"e’ƒ–J¥P[[[0£ûÝwß]°’Ô A8.ø•ú¥ fÆÆÆðòË/cròÂø­K¥RèêêB<Gmmí‚–îNûìÚµ §OŸ¾`ŽCiiiÁEå’îxè¬Ïíë]ò Ñó1vŸÛ׋CmÅëÈ»ýض…5Óçrƒ~ùz{ÑR¦<½§G:|¸ÐðNÅñÓím§šR\ñ‹×ÛÑ>¼àæºw,ŒŸíhG$ERDQľ}ûH‘äÈÉ“' fpîÙ³'Ož¼àæ”…>.§¼„¹0>>Ž—^z ¡Pè‚ü>½ûf<»wï^ð²ðÅD«Õ%|rÉŠ™Î‘þx°ÿ‚þÓûãþ¢ÙÇ;'°ûÔ…6’Søõ[]ð ƸãØšûüì\Gâç<%ÑW"Lxö^ ú"ì\bxzO7Ä<]¡?uêÔ¢*y¼T)”(;8…?Ìý·(™Ì9̆8Oooo^û~ôõõaÿþýü¼†B!ìØ±cÙç)ðÂxÇŽƒü±ß»w/lû­­­8vìØ5ç6lÀ•W^Y”m-¹œ™XBÄão´å*¹¢úS«`7ëPî0¢Òe:׌Nu®ÔìB„ ÇÃA\¶Ò÷²ÍH¿x½#¯¡(sA¥l&Ê”:ŒÐkÕÅ„äˆØ`TÀðd›]y/ÛÜï ã©ÝÝ5ೞÓ*¬&-Ü6=*œF”9Œ04ШUÅÔ‚\4ŸŠ!&ˆi{ªg/. Wר×Àm5 Òm„Çf€nÏëÞ±0\=ª=óÏÁëììÄÙ³g ô›«†Ûí†ÅbA4]¹v»N§ñx¼`¥mÕju^ªMNNâÕW_]°2ÙZ­V«n·n·:l<¡PÁ`0¯¡/‹5gæ­·ÞBww÷‚}Oôz=ìv;<ŒF#T*Õ‚÷T*…îîn¬X±¢àÉèr†††°sçÎûíR«Õ°X,p¹\p8ÐjµH¥RõÅn¬Å"à™wz04Qœ¦gz­k«íX_gG¥Ë‡Y‹Q U–±…¢á'"hî  e P”2¯¾žÝ׋Ï]߀|ÙØBRÄS»»ŠVبÓ`m ëk(µà0ë`5iËõ&’"ássÝ;FS¯Ý£¡¢æ>?¶Âí—å¯ÁÝT$ÿüs?BµÀ IDATWѪ–•Ú XUiÅÊ +V”[a7ë¦=o₈~oíÃA´Ñ3†P„±îmC¥Ó„­¹ó¶ÎA_ϾÓ[´Ü¯2‡êXSeƒËªƒÍ¤ËZ±×“¡8Ú†‚hê,ÚoÝóúPæ0 aže›ó-dÌf3¶lÙ‚ŠŠ x<©º—(Šðz½Á±cÇŠvÅY­VcÓ¦M¨««CII ƒd ùý~ŒáôéÓÎÛ6ÛÛÛqÍ5×äTÙ,‹aûöíˆÅŠ“‡f6›ÑÐЀúúz8N˜Ífi®äˆ¢ˆH$‚P(„ááatuuahh¨(}OXcÍÍ›7c¹ròäI©×G¡Q©T(//Gcc#***`6›a±X ÕjE;î~¿ÝÝÝèéé)Ê9F±}ûv|ò“Ÿ,Z¿ß;v­ŸÕjECCêêê`³Ù`±X²Š7öÃÀÀ0>ž{ŸÆb P¥–PI“ídž †c5j±¡Î u\Ti…V3ÿH¾Î9žÑh¿þõ¯óög½víZ\}õÕY`IdÇã8pàš›› +HËÊpã7Âíž^T§R)œ>}‡Ê[~ÂG?úQ¬Zµj^ŸM¥RxõÕW ^†×áp`ÅŠhllDyyyNU£b±zzzÐÕÕ…žžž‚^ÅW©T¸ýöÛQWW—óº’É$üñœÖ±fÍÜtÓMyÙ·ÞÞ^¼öÚkõ¨ÕjÔÖÖ¢±± 0›çßüXE ¡«« ¿HQWW‡Ûo¿½àÎb±^xá…‚çº\.é;XVV–³àëîîÆ©S§æ%lBÈ,)1s²{Oïé.Øú :5nØP†ëÖ—¤×E\±§y{šF –w¡ð×75b}­#§õìiÅ+G [j1jqó¦r\µ¦$ï¡qÀ¹ð¸7N ãP›bB¤´þÿöÎü+®3½óß[ûFTT±¯B ´´XB’e9–ÇI§;ÝI:KOwg~ÈóÌÌ/s²ÌIúd¦§;3éž™ÛíM²˲dÉFXH²@ VAA!@UEmÔ6? Ô²[KÁ}oqëò|Îñ±¼Ü÷yïò|ß÷Y~ØQÏîõÿúå. W¹¬(W‡ÝµyØè2 b뉹.ÜšÁÕ¡yÁÂÑ þÃÑ*˜t«aÉ$ð`HÀ‚N‹G6Ûá*¦)åøý >¼<)¨€,ÌÑâÇG*Wt¯ôôôàüùóLœËŽŽŽ‡VãäÉ“‚ì|666bûöí+rzü~?Þ{ï=øý~Þ¿¤¤‡^ÕïvvvâÚµk‚Ý+ƒ­­­¨¬¬Ä) ¸téúúúsÊU*^{í5˜Lü¾™b3^¯o½õ…Ù´á8•••hii¤Ák2™ÄíÛ·ÑÝÝ-hõµææf´¶¶ ê·~üñÇTÄlݺ.—Kñ'&&pýúuŒŽŽ¦ô ®•2$gf1–ÀÏN!"@È–LÆa{UÞÜãBM‘Q‡XÚa.³ÐR‘‹ÅXó!ArlF3‡ýèÑ£«vt 8ŽÃĿ͊x<ŽºººGIó+qh…èUSSSƒÃ‡£¨¨2YzÞãZ­•••°Ùl˜˜˜`~âðàÁñ:e‹˜q»Ý¸xñ"ó50 8xð 6oÞÌ+œl%Èd2Øl6ÔÖÖ"3Éåøöš…B!”•• rýŸ|ò ó“%Žã°yóf8p€wHçJÐét¨©©R©ÄÔÔÔo‚¯µ2 4s ÃÙ›ì]m­ÌÅŸ(GžQ½&óÊ7iðç˱¥<‡ùØgnL¯ªÙôƒ0ºÙ†V¢\¶Î}2 œ¸²ºÐÇ ·fàe, þì@9v×ZV} ÊëÅÍqØQ‡¿R‰Ò4ž|=K¨ÿÕK•¼s·¾Íù[÷S:5ôù|¼C@ “P £ÑÈ;÷a‡ÃÁäã_XXÈ{œ•&³vÌÕj5Ž9‚†††5¿ßu:Ž;†ªª*¦ãNOOg|3á¡!¦Õô€¥bÇŽKÛi̳hhhÀ‘#G˜‹iÖý—âñ8óð2£ÑˆW_}•I©vÞßw“ mmmxóÍ7ñ{¿÷{¨©©Åý/j13·°ˆÎ>vG‹Z•²¿»j,¢šg[}>¾¿·j%»åø¢ofEU›†¦è÷±»áõJüðP…(œëÇ…ìË-…x}G1S!ûoצVT‚»k`–iOžQ®@±E'[«•2|Ÿ [yä=‰—'WTÑëôõi„öIª/6áߪDŽA%[uJü°£›JÙÅNÇâ |üõó›6²¨Òc·Û™]7‹±´Zís+—¥ 1³’“™¡¡!LO³«ø™½¦»òOB.—cï޽̛ñuuu¥­|.k‰Sšã8ìØ±{öìI[8a*,ŸÎeg³ó+Ün7Ó$ý7n0)þñø;íøñãÌÞIREÔbæÔU7³ I2‡?ÚãB¥=K”s­)2â6³DíX<‰S_§ÞAúÃêe¥?Ø_†Â­(mÝR‘ƒW·±û8û‚Q\¸5“ÒÏ.ÆøäCgC¯Ä;*›¥ßË…ãðÚvSA31Â×)– Ÿõ³Ý )·ðF›“é¦+r¾³«„w%Ãǹ|wîùgç°ÈQa)fXˆ±‰«T#k‡V§ÓáèÑ£ÌN»XÓÔÔÄ´•×ëÅ­[·2Ò‘»}û6Ó©­[·¢±±Q”s5™L8zô(ÓÓ¢‹/2²ápW¯^ev]yyy8|øpÚ›|’˜aÈJœ–Tx¥µeVƒ¨£ª0 /ma÷!½zwsÏO̽1ú€YŸŽ¾ûBɪ“âÓEkE.v1 9û¬Ç“Ru©s=øClò7T ¾··YZq÷¾ý­ELŸ½SW݈œ)ý«ÍÜ,þ°Ý¹&ù1+yö~w ¬f6Ï^2 œ¸üì }@Xî8²WcYÈ`0ð‹IÕÆ,Z¹\ŽŽŽÞyCBÓÜÜÌ»Ùãtww3ë”.¢Ñ(º»»™WYY‰¦¦&QÏÙ`0 ££ƒWCÙo ÙžžÞã\¹r…YóO­V‹C‡­¸ø‰‘qæÆ4³q;ªó°½*/#dw­­lv²“>K¡ÉèjòkžÆáf;jŠŒaë£[ì¨btR^ŒãËç”þÅ“8×Ë&ƒðÝ%¢=ýú†c$ãðF»“ÙéÑÜÂâsºÎú#¸6Ìf3D­”áû{K¡W+DoëG×ʨDß„/¥ ~"ŒÕX¬+±r¸Rq¤XÑÖÖ&H¢½´··ón¸L(ʸә۷o#dS4??ííí1ï‚‚¦E?ø6ßM$LʱK7<(úÍ3Ï!Oàö=6ùå6޵fÔ¢¼º­ˆYYÝÛ¾gîbÏ-,2sV6—å ½>?sn~ŽÃ´9ywi_æÆè³Ë‡¸ýÌÊïk,@C±)cl­W+ð½½.(älÅ›cÏÞ¾9êe²ÂqÀww;EÒø89Þhs2Ë »9ú„¸ñx<̺¦7551O°…BŽŽfaGB69V׫Ó阞v¤ƒªª*f§Hóóó¼rïÝ»ÇìT¦­­ 6›^l™.fîL.¬(¡úi(Æ‘‹94äIÈe¾³«„‰ã‰&0à~z2Zï›þ=F­’iJºÐªäx}g1“±Üó!ÌúŸ^t¡‡‘­óŒjìÛ`Í8[[³5ÌÄîóÞ¬lÝZ‘‹Z‡1ãl]f50«ÜÇÊ–„p 3g¹£x¦¡×뙕‡ššâÝ7)]„Ãa¸Ýn&cíÞ½z½>ãÖ~ëÖ­ÌBCùCV¢Òét¢ººš^jR3¬>ž»j-0é23Þ0Ç ÂÎjá‘›Œl} Éš¶Æ£¬qåëQÏè”ãi¶N̪ŽÒZÈì„#ÝìÝPÀ¤X,ž@ÿSÊ4ûC1Œ0ÈS)d8ÐdE¦²wC´*þ»¬îù0æAH_Ìlݺ5møXSZZÊd7;™Lbtt4#æ<::Š$ƒv V«•wÃε‚ã8f|µ‚$™L23,çBbfI&Þqþ¶^­ÀÞ†üŒ^œ}lœ‘ÞqßCn‚‘8†§ù;}& Z*2»là¡M6&•äzžþ46`’øßPbbÞ¿%(å2kes‚÷´SÅÞq/X´KÚ]kaÞ2hUrìÛÀ&ïNgÄ‹×ëÅÜÿfÇ6› .—+£m±}ûvQ‰ÃL±¬ì¶V¸\.X­ü7žfffVUVybbáp˜÷߯ªª¢ÌR3ÞÂü+äìÛPJžÑ‹£Uɱ¯‘¿3âE1ö„êÛ÷¼LšdÞlcVRz­(ÈÖ`KyŽ`÷/+gðp³™NÃg>ÿp†[ã¾'Þ¿,l­×(Оá›!°³Æ³žÿI‰ñÂ*¼…uß–5y ¬¬Œ÷8ãããL*õ I<Çøø8ïqJKK™µ†Õý»šç‰Å3(—ËÑÒÒB/4©ˆ™ž1þɦf½ ;jò$±@;«Y9#¿âÄ"ÄÌ•¯gÚÛb-9Ðd徕L.9٩إ”Y ÌŠ¬5,zÏ"±ß:Y|^ŽØŠ6C”òŒ·³BÎ1 •ž¤TzœH?,vçYíl‹âÝ T.‹1 B2>>λŒ´”šl6JJJÒ.fX…˜544Põ2i‰þöFW6ÓïkíŒltñïvûíœX<þ þN‹Ó ±`Ò)Qaã_ªùÛ•¶f|x¼ü ·1l>¹Ölte399íùVHjßsª÷¥ö6•š%cëFg6r~¯úD2ɬÂ$ÁŽ`0ˆéiþ¥õ3©zÙsßã&a&öP3×gµZ‘-™µg‘8ïv»WTêz¥?/䵓˜ ÓÂϬ•*õÅ&I-‹ùL{¿iÛÁ)þã8¨u­¿ÍÉÄ⿱í-‰ÿzµ %Òùè(å243 ß¶-‹" ®|= …dl­RÈPe70·5±ö°H—Ëåp8’² ‹dv±`q}N§SRë^\\̤´ôJ*ıØL0”+ÃQ}±ïûù×è6h(±è%µH%–%çŠo.Ñ}¹YK!k÷}üm]’§}÷ù•Rç0âm€W’X<(ò†„±¸¯“H⿟¾+)[³È›ó/"™\Ö0Ëྮ“ØfÈòœø =ï ‚-^/ÿH‡Ã!¹.ãN§_~ù%¯1B¡¡R©D7¿h4Êä4 Ó >|¥R‰ÂÂBŒñû6­ gÓj H}Ö½˜ñùW{ªs˜ÀqÒZ$Ž[š×W³¼Æñ=f_o¿#Y_"=§/K«D‰EÏ»´¯7ø1ãcp_#qÜZñMÉ$ÂQd=¬:æeP1®Þ!A1ã0ãÆyUycñ~&Øð¯F)µÝy`)Ô,''‡w•·@ J1ÃbÝÍf³¤BÌ–)--%1³U˜™ƒ-Å]UVózÜ©ö1ŽdëT„#9B²,Ì“ îë‚lÍ#*%XœXÂ1ÄIºáDßÝyŽã$)fX9ˆ,N?Ä*f¤ê@³¸ŸW"PøŠFä?‰Q‰þNŸ#W+É…b1¯ÇjÏlµR†|“Zš¶Îc`ë[áH<ÿ½dàlåê$k'¾sKÒ½,9§V¯×C§“æ=o±XÖܾb3,ì#Ft:ïª`é<™ÉËËËØFµ$fRp¶Wljåp,cÐ*x‡Ï±<-Èäf‚Ï›ŽÿÜ–mLþ0•´TÌ<Ž>!f&B²vb17:e”ž˜‘*,æ&e1#åµç+ÐS(‘H„wyl)¯Ãº3|;¤4ÊŒoÞøÔ…â84üœl_(öDa³V¿hÅŒ–…˜Y²õB8†…æ+fÞË,ÂT¥,Ò³ÌÄŒxˆÇãˆDøeê© «¹‰5ÌŒÅu‘}:¡Pñxœ™èY¯Ïàº3|?”RÞUe1¿e§/O ´ç5–”ÅŒV%‡’g_Žå{™Åi‘š­Y8ÚR¾¯M O‰µ‡vç…Ÿ›”Of¤ìD³XûTBÍV޶ŸÁu)fâ‰$<Ãq¤ìˆüwV}¡èøwþ;Ø&­´mÍ÷^zúDΟఠ3£ðÉÔ„#A­è™ †ÄÌÐh4Lú±ˆ÷u*B…ÅÉ ‰‰‰™@$¾Á8Rjt÷d1Ão~ñDáÅ8ïp>@º¹IlÍó^ZxÒçQ¾ŒÐ,Ûz­¥¼!’Åàý(öû™…ƒ–)N^("1ó´ZíšÛXŒkÏ×.ëA̤"éd†ÄÌoß|*þ`$.éÅâ;?Ž[ªBÆ¢¼*ß05Ñ; <ç§}x?ëÔr¢T<|1H—S)¤[UF&ã?7±§$šÍfäææò˜‡òòòŒXOµš5I¾97b‡ïüXØXøö¾¡u>‰Dâ¹?“J^ÍzßPXwbF!—=rW‹ÔóøÎ/‹a©‡Oñm¾¸¼Ã/õÐG1Àb#„ÍÍÍ«êhÏqêêê`43bžRÎ aA2™ä}‚!Ö]s îɤt ÓˆµpÃÓÞ; !¦‹1ꔼvÄ¥î`ó¯@¦͵ˆ™h<0ï K¶6jIÌ.fÔ 2ñˆòòrcpp0eg]¡P ¬¬,c„ ‰™ÔZ¾»XwÍù®ý²Ð“ê©€”ïk"ÄŒI§ÄôƒðªßZÊ»‘¢ÎM‚¼:ËS¯„OÁXµåÊQYZ¸‡ëG%fèd†ø&*• µµµ’ž£R©„R©äÕç"“v°×bnR=™YvøIÌRAT¥™ùîb³¨ˆ&Ú‡“Aws–§þ tÛYö+‘Ë8è5tr@b† ÄçÔJÙé“réj:•[¿"È1Ãàä€ÏÉŽ˜a1/Ó™@$†‰ Çio˜é½l¢¼AÉËR“3«`aaws±2??Ï{ ±ž\°¸.ö#Ñh”IÉd‚Ä g›ÿvï¸W’ Åb^¬“ÑÉÖ©ÙšŠGA¶ %Ùdb]ÂשM$“¤m†‡‡×\,ŠUÄÀÈȈ$×}ll,¥Jd„´WaP=c>ÝR(¹…êó‰Â¾ßpúǼh­È•”c Ü™ä_;þñ¦¢,ì.—q¿)AL@%—¡¡Ä„5y b0Äz……S;<<Œ²²2IÙ% bzzšÄÌ3˜ššB(’\Ï©Š4"ƒÄŒÙ â=Ƭ?‚©aX³5’Y¤©aÌú#¢°ïãÜ™\Àb,•„œìþI?bq~»:€l½ò1»ó3&ÿñx-Èo'b™¬¬,ÞcŒŽŽ"‘H@&“Î{|dd„w%3¥R Fœ~„F£á]ü!™LbttÕÕÕ’Y÷d2Ibf"ª·Wa®–I²tϘ´ÂŸXÌǨUÂjfûbŽÆ¸3)­ØÔ^¶.¶è¡y¬÷I•¹×¹…EÉÙš ~8ÞcD"LNNJÊ.,Ú¢¢"QÏ‘Åõ±Å“““’oJd€˜‘qêü¿kÃ$S 7ùp>|©+6 ²«ÏâÚÄÂb,Á$_¦¾ØôM‡Ã¢cjÖÕ?Ko,‚ ‘ ³ÙÌ{œÁÁAÉØ$c||œ÷8.—KÔódq}ããã’rþ¥t,f–Aþɼîù®HÃɾ6<÷|ˆ]MÂ\ßÈ<&çB’°õù[3Fâ¼Çi(ù¦­¹‡b’/½ã^Þ½†‚¥¥¥¼Çèëëƒ×+ˆ†Ë—/#ç÷ç8N§SÔót:¼»ÇÇb1\¹rEëîóùpûömz!˜Uv“ŒSWݼû²¬5ñD§®ºy£VÊPaËä“IàÄåÌQ„c8{ÓÃ{œ“£Z1O$qææ4‚ –a±CŸH$ðÕW_I¡íééá=ŽÍfm¾Ì2V«•÷87oÞ”D)㯾úŠª˜­cD×ÍO!—¡ºÐˆ£üNVîû"èº3‹Õy»8}÷1ë_ä=NM¡r™p©ãý“~ôOúQeÏÊX[Ÿ¾>p”ÿ©L}É“EK…- j¥ ‘(¿—í—}÷ÑZ‘ ›9s \ ¸ý8}}îùV²ß —q(ÌÑâÈf; s¤U‡ VK~~> øUaDSS,˺whÅböøuºÝü6<ãñ8ººº°ÿþŒ]÷™™ ÐË`#Êò%¬B¢N_Ÿâí<®áÅ8N_Ÿ•=ŸÅ‰Ë“HfèAجý÷µµ\Æ¡¦¨Y"‘ữ‘©Ü™ôãgŸáîÔ‚‘8‹©ÿÇpgÒŸ~<ˆ@„ÂíbV!Q/^ÌXx<fm&‰ ÀãñdìÚgò}KHXÌÔ:Øœ$øC1œ¼’™!PïwO0qØä25EFÁ¯wr.„Ï{3ïe˜H&ñÎÅq&!‰&޼§7±«c$*‡¦¸|w.ãl}ßÁÿ>7‚XœŸ­C‹qô2è»DREÞ Ü»wýýý7ÿx<ŽÏ?ÿœÉX¹¹¹01o“É„œœ&c?žw®ÑZpçÎÜ»w^$fćV%G™ÕÀd¬/ûî£ëNfUºp{—Ø8«eVÃ7Ê ÉÉ+nôOdVìíÉËnô3*y\_lzfŸš"vá~¿îºÇ¤0DºGãøù™a„Ù|,rê¸CËØív¨Õj&c;wŽIÃÉtòÙgŸaff†ÉX™r*Ãúz=Î;—Qs÷x<8{ö,½ˆ¶KÖîZvq»¿îº‡»S ± w&ýøà»Ó¤êÒÿœH&ñ/Ÿ`Æ—¥/ßÃ9F§I2Ž{n~–V%Ç–r6»h‘hÿóÓጨn–ðÎbÚf2žJ!C…Í‚ ¾d24440+ãÔ©S1÷+W®0 /S(¨««Ë¨µ¯««ƒ\Îfò¿¿ׯ_ψyƒAœ:u*#O“ˆu$fjŠŒÌNgâ‰$þ×¹Ì-,Šz1f†á$%Ÿ”[ ¨.Lïqyh1ŽŸŸBxQÜ/˜Ñ™Þêd—{²¥<ÙÏOÊ?ÐdeR­æ‹øùgCˆÅÅvꪽãìÂÂvTç!‹Aß‚MMMÐjÙÆƒøè£‹‰{³dxx˜i¶ 6@¯×gÔº fB:;;™ôé’LÜÄ:3p¤ÙÎl¬@8†Ÿ¼Hͬ?‚Ÿ}:Ä, ‡pd³}MæâñFð‹Ï†E+hÜó!üâ3þ¹Ë(å2hJ­D¦QE0LìIDAT«dzZ66ÄÏÏ ‹¶ÐÅ×Có8sƒ]ÈŠZ)C{C>½¹ âÛï!¥ÍÍÍÌÆ›™™Á'Ÿ|‚h4*ÊùNLLàÓO?e6žF£Á¦M›2rí›››™…&“I|òÉ'¢ 5ŒÇã8}útÆ…BëXÌ[tØP’Íl¼io{↧ťæ§ðw'pŸaxV£+û™Éèi™ÓI¶sbAϘrþ»ô®Ú<˜t©Ÿ´×À aW½Ò8ÅvN|I$“øèª¿:?ÊtÜjó¡W‹®¢þé“»LKÍÊem²­ùÜ<ÅãIqøôÆ4þù³a,ÆØbhUrìi(XÙ‡G)ÃþƦs›˜ áïOÀÃ(/…Þ`?ýxgnLƒeµn­JžÖ0‚ȸºL†ÖÖV¦cÞ¿o½õï~&,H$øüóÏqþüy¦ F#ÓP­µ ¡¡»\Âx<Ž3gΠ³³Iô]ðxŠSWÝ̯a߆hWQ-Nˆ5š[XÄßž¸ƒó½3Ìò®VJß„ÿõƒ~ pú¹§!?m•ù"S©¨¨@^ÛfÑ¡Pï¿ÿ>nݺµfó ƒøðÃÑÛÛË|ìÖÖVÈd²Œ^w¹\Î\ÈÀµk×pòäI„Ãk·QÖßßwß}—rdˆÌ3ðâFvIÓsþÖ þ˯o£{p.m É$. Ìá?¿s}÷™/Ä®?ï9'’xïÒþæƒþ´žÒÄI|q{ÿé[øzxžùøÙz%vÖ¬Îiêô,Màýî ü݉;¸7L«­O\žÄÏN!fŸ4ìÈÓá…:Ê•!ˆTضm›ïñÎ;‡·ß~i›K4Eww7~õ«_ òw- ***$±î•••ÈÍÍe>îØØ~ùË_âêÕ«i- 155…wß}gΜ¡ªeÄ3Ɉàs£V‰= øøköÇÜóEü¿/Æðy¯‡›í‚6˜¼5îÃÉ+“˜z ÜÇ‹V¦ù,™˜ áŸ>¹‹*{o¶£0G+ÈßI¸6Š‹‹±uëVæ§@‹§[·n¡»»¡0=µ8ŽÃŽ;$³îËóùàƒ˜½¸¸ˆ®®.ܼy---¨®®Ç óNžŸŸGWW†‡‡éa&¤#f`_cîÍÑ3æd|÷|?ûtÎ|=6•šQï0Á¤ç_þÕˆ¢gÜ‹«Cóñ{DÚèÌÆ õâß½îŸôãÎýh(ÉF£+5…F¨•üOÞæÑ;æE÷à&æ„m(¹«Ö‚¦R3¿€7Úœø›wà °OÞ_>¼40‡r›»k-¨-2ï÷'™\ 'ëì¿Û÷|‚Ÿj¾ÒZ„<£A¬à›¹oÞyç>—Ë…²²2”””0I Ÿ››Ãðð0úúúàõzµÑ¶mÛ`·Û%µîEEEhmmeZ²úqΞ=‹k×®¡¦¦.— &“‰÷¸±X ccc¸{÷.E‘§C˜a¿ãà;»Jðß>´óùˆ'€O¿îº‡¢\ê‹M¨/6¢ [Y ^`"™Äôƒ0zÆ|èó¦-Ô§0G‹ßÝYŒLÙ»N¸1ú7F@.ãPaËB]±uSÊ•Á’&fCèó¢gÜ‹IÌ2Uö,ÝÂæ˜¥Uâ{{Jñ§˜&ø6ƒî º`Ð(Pn5 Ìf@¹Õ€|ÓóOl‹qÌ.,bnaçÒÖ³i£3-Œsæb= V«qèÐ!¼óÎ;ˆD„©*™L&144„¡¡!Èd2Âår¡¤¤YYY©mº$˜ššÂðð0†‡‡áóùÒbŸªª*lܸQ’kßÜÜŒ¹¹9fÍDŸÄüü<:;;ÑÙÙ ³Ù —Ë—Ë…üüü”Ol‚Á FGG1<<Œññq %#¤/f€¥|ïïuáoOÜÁBXø¸Í{³AÜ› âã¯Ýq Œ:%Œ:ŒZ%ôá|¡(|Á|Á(±´'_giøÞÞRAòŠÒA<‘Dß„}>¼sñÔJ²´J˜tJµKöÖ(åXÇà FÚ; (†x"½¶Î7©ñmΔ„mªåjñúÎbü˹Á¯!õ‘¸6²´[kÐ(­_º— ôd‡¹…EÌù1ë0ë}´RÌzŽowÐ[š VIvv6^|ñEœ8qBðîD"ñññG e2ôz=t:Ý£«T*ƒAƒA5I,·Z­hkk“ôÚïÙ³^¯7-Õ¿æçç1??«W¯B&“A«ÕB¯×?ZwN‡h4Š@ ðµk#‚ÄŒðŽA…7÷¸ðÓÓêÈ&’É%':fE´€roîq![/Žè‘h‘hDt=j´*9¾¿·tUÕËžÇFg6¦­8}}*­sZÇÒ²1°[o¯K[ÄzÂáp`çθpáBZÿn"‘€ßï‡ßï•= <¹\Úï¹\ŽŽŽ¼ýöÛi­–H$‰‚H¹•ïÊ×ãø6Ú±€ãÛpZôd¡‡7Ú‚ænh²¢¡Ä´îm­VÊð§/–Á.P‚Xo444 ¶¶vÝÛA¡PàСCÐétëb¾z½’n‘±…Õ[*rжÎKµ¶ÕçcK9夃c-…¨°e ú7–óÂÖ³¯”Ëðý½¥(ÎÓÑMG Ù½{7 ×µ öîÝ+Xõ5±’ŸŸöövz3båÈf;vծώà»j-8Òl§;X`8né>ÛQž J!ßì_ŸÎ¼\ÆáÍ=N”Y tãë½L†ƒ¢¨¨h]Î}Ïž=(++[—k_YY‰^x!ツ$Å Ç-혿¶Ý±nzPÈeþÝ޵‚£¶‚¢VÊð½=¥hOs¹k£V‰¿ì(Ç&ž¥Ÿ3 …œÃ´9Q]h¤ „z§©Õ8räÖÍœµZ-^~ùeTWW¯ëµ¯««ÃK/½µšÊÜ$fDÉÖÊ\üàÅ2è5 I/–A£ÀŸ(GkE.ݹ“›¥ÂW¢Ö±6εB.Ãïï.Ááf›äE«Y¯Â;*ÐPLùB!øG_&î]»ÖÅN}^^^{í5Øl6Zx………8~ü8Ìf3ƒ 1#FʬüäH%¬ÙI.”ͬÅOŽTÂU ŽdÿªÂ,ÉVš*·ðc‘ÜK{ ðG{\LšŠŠ‘J{þê¥J8(G† ÒŠÔwêKKKñÊ+¯À` °ÕÇ1™L8~ü8œN§$ç§T*QYYI Mb&sÉ1¬ínºPÔ›ð£Ã0T¢¹¦êB#þúXµä‚¶Wç-ò©ÅsÊWç0áG‡*‘#¢õç `ï†üé~韨„X‘êNýæÍ›qðàA(•JZä§8ühjj’Ô¼l6^ýu3$f2Ÿå<‡ýŸG£Ëp ÉŠ7÷¸DÙÓ¨SâOö—âµíŽŒ?9Шäxm»¯n-‚L„÷Õ¬ÁOŽHC¨4 ¼¹Ç…C›l”÷EkŒÉd«¯¾ŠòòòŒŸ‹V«ÅÐÒÒB û8ŽÃ¶mÛ°oß>h4™Ñ"—˱}ûv;v F#å]®GÒ|HƒM6´TäâÔU7¾šG2îSi:6YaÖ‹7~ke.*íYø¿Æ04½Y/A‡ÕyØ×X ªÓ˜'¡×(ðý½¥t/àÃË“¸7Ì8[﮵`_c4Jê{@bA¥RáÅ_Ć pñâE¸ÝîÌrd lܸMMMt³B*++át:qõêUܸq±X,£®ßb±`ß¾}”DbFºäTøýÝ%x¡.'¯LâΤ_ô×\eÏ‘ÍöŒë5’cPá/–ã˾ûøìæ4¼Á¨¸#€¦R3:6Ù2.|«ÜfÀO^ªÄµ¡y|tÕ¹…EÑ_sÄ£[ì‚6%‚V«¯¼ò FFFpñâEÌÏÏ‹û=Îq¨©©AKK˺i„)”˜Ýºu+péÒ%ôõõ!™÷°N§Ccc#©ä4u¬^”«Å^,Cÿ¤'/Obb.$ºk,ÌÑâÈf;*íYkgŽvÖäa[U.®Üǹ¦½aÑ]g¥= ‡›í(ÊÍÜæ”Ëblƒ3_öÝǧקˆˆoGÍfÖâè–̾¯ b½át:QRR‚Û·o£»»@@”׸mÛ6Ú‘gˆ^¯G{{;ÑÕÕ…‘‘Ñ]£ÉdÂÆQ]] ¹œNø‰u$f–©²g¡òh®ÞÇÙži¸ç×ÞѶ™5h¯/À¦23¤’> —qh©ÈÁ–ŠÜ÷âìM†=kû1ä8óõØßhEU¡tëåЭ–òœ¹éÁ¥Y,„×VÔ¨24:³ÑZ‘+šê{A¬ðÉq¨­­Eee%®_¿ŽÞÞ^,,,¬ù5ÙívlÙ²v;5Šœœ:t“““èîîÆää䚟Ô ©© .— %[ëYÌ,;µÍef4—™1ë_Dï˜7ǼñHÃÃ*ã88óõh(6¡®Ø„Ü,•¤m]ç0¡Îa°'€Î¾û¸3éO›³-—q¨°e¡¾Ø„ºb#ŒZéÆRkTrn¶áÐ&Ffèó¢gÌ‹_$m×P”«EkE.6•š¡Yƒ²Ý|×W¥A-á\•BRŽp4¾ê1²¾ec¡=Z­RF«Õ"\}~ÛZ‡O) 477£¹¹###ÂÜÜ\Úþ¾Ãá€Ëå‚Óée²ºL&ƒF£A8¼ú R½^|?v»/¿ü2B¡FFF0<<ŒññqÄãñ´=;EEE¨««[‘xeñ̤2ß¿#“ɨ‰)‰þäf©°»Î‚Ýu"1Ü÷¡wÌ‹þI?c ¦ND•= uÅ&Ô:Œ¢O4W¾®|=’&çB¸3éÇI?†¦ˆÅÙÙZ£”£ºhIÀÔ×]¢9ÇýÆÖG6Û1í ?6>ŒÍ˜Â0j•pèQš¯G¹- 6óÚ:[ÊÍøøk7â‰ÕͲ©Ô,ʪ,Åýær3¾¸}Õ›­9ßøeeeøâ‹/°¸¸º¼­ÂÂBÉWª­­Å… Výû555¢™K~~>òóóÑÒÒ¯×ûHØLMM1ݹ×jµp:p¹\(**‚B!îo&Çq¨®®Æµk×$±ÎOZššÔÔÔ bll ÃÃÃE$ÂnÃL&“Áf³¡¸¸‡yyy«'//‹333«ú}ƒÁ‡ÃñÜŸ«®®Æ¥K—H¬Î‡)++ƒJ%Ý í´>ƒI±gy­ÑxCSÌú#ð…bð£ð£ð…¢ð£„cßp 9,Uš2ê”0j•0é”ÿ[Ü,5J­z(åâq’îN-à?ä5ÆË-…Ø]ká}-±xCÓ N-`~a áü¡ÂQÂñ'ž–iUòG6~ÜÖ“åVCÆ—ä (Š¡é¼(¼ïeßÃûÚŒ"M<ÑÖ«ÐiäЫÈ7©—ÄRA”….öÏâlÏ4fý©;×2ŽC­Ãˆ£[ %}R óE|pi=ã^$V ú²õJì®ÍÇ u¿ýÌ àÒ¥Kðz½+º»ÝŽ;vÀb±HÚæÑh.\ÀÀÀÀŠv´Õj5jkk±mÛ6ÑÏ1cbb@@Á`ðÑß»ÇA§ÓA¯×?ú÷ò?f³JÐÙÙ‰»wï®È¹Õëõظq#3îÞN$p»Ý˜ŸŸÿÆz/¯ÿ“Nª8ŽƒF£V«…V«…N§ƒÁ`@aa!ìv;3áêv»ÑÙÙ‰éééý^nn.¶nÝŠ’’’”~¾··W®\Yqfqq1vî܉ììlrNH̬ ñD¾PÁH:µF­2£h1‰™g‘LH ¡±8²4J˜t (äT¹D"Ñ|¡(c èTrèÔŠŒì´|ú—ꉟY¯‚Q·¾Ê¹úBQ̧XO.ã`ÏÑBöçÒãñ M­Š¡N§[w‰Ûáp³³³©}˜9‹E2e†c±¢Ñ(t:´Z­dóB¡|>_Ê뜗—'Ùj\ñxÁ`Á` …â‘€IçÚÏÍÍ!J­è“J¥ZÕæJ2™ÄôôtÊ›YYYÔ‡Ä ±^Ä AAA< Úâ&‚ ‚ ‚Ä AAA‰‚ ‚ ‚ 3AAA˜!‚ ‚ ‚ 1CAAAb† ‚ ‚ 3AAA$f‚ ‚ ‚ HÌAAA˜!‚ ‚ ‚Ä AAA‰‚ ‚ ‚ 3AAA˜!‚ ‚ ‚ 1C¬V³ 9ÇkŒb‹Ž IAA˜!Ò‹^­@£Ó¼êß/ÊÕÂiÑ“! ‚ ‚ ˆ5…K&“I2Ãú#¼G÷Ý9|ug áhJ¿£RÈÑ\fƶÊ\uJ2"AAAb† ‚ ‚ b¥P˜AAA$f‚ ‚ ‚ HÌAAA˜!‚ ‚ ‚Ä AAA‰‚ ‚ ‚ 3AAA˜!‚ ‚ ‚ 1CAAAb† ‚ ‚ ‚Ä AAAËÿ¾Û"5«LIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/newlogo_launchpadSize.png0000644000175000017500000005066612033133562026566 0ustar neilneil00000000000000‰PNG  IHDRÀÀRÜlsRGB®ÎébKGDÿÿÿ ½§“ pHYs > ><7±œtIMEÙ Á;M IDATxÚì½y|\wyïÿ>ëì3ÚwK¶eÉû;›³‘¶°(ýA—ÞrÛ«”.%PJÙÚ›¦ÐJ Ü@ ìÝŽãĉwy“,[Ö6’fF³ogùý1:Ç3’¼$àVçy½ÎË–töó|¾Ïþ<‚iš&94GIt^CrÈ€C9pÈ!9äÀ!‡8ä‡ràCª ³ÑÏ\­sÈÀó ‚À‰'xòÉ'@„Y™Ù:&‰ðéOšÕ«W³víZ>ðpøðá³ç€?:W^y…ùóçÓÙÙɵ×^KGG«W¯fÇŽ68LÓ´™Z~ò“Ÿ°páBî¾ûnTUàÉ'ŸdÍš5üÇü‡}œC¿¿•Ì¡WA†a˜¦išßûÞ÷L·Ûm~ìc3zè!ó‰'ž0ô£™üàÍÚÚZók_ûÚŒc¿ùÍošõõõæç?ÿy³¯¯ÏÌf³f.—3ÇÆÆÌ;ï¼Ólnn6ÿë¿þ«â:½¾äà5ÐîÝ»Í@ `þèG?2Ãá°911aNLL˜‘HÄ7ðƒ˜555æ'?ùIû˜/}éKfmm­ùàƒšãããö1Ö666fÞÿýfWW—™L&—ü{"ÁI‡~õtÑEñîw¿›[n¹eV_–ežzê)>úÑ’Ïç(‹Ü}÷Ý\wÝu3lÓ4E‘X,ƾðV­ZÅ'?ùÉŠ}zTY¯Îè}ôÑGùêW¿Ê}÷ÝG0<ë~¢(râÄ üq4MãÊ+¯dÉ’%3˜¿œt]ç‘GáÁäñÇw^úïdç\¸Ñ ðÃþ÷¿ÿýx<ž³îgš&†a0þ|n¾ùæŠãϵªK’D[[’$qêÔ):::)àxþ8V‹<ÈÚµkmÎùü÷‚ T0ðù˜9 RSSÃÁƒ/h‡ ð{[ý÷îÝË¢E‹ðz½3ԯ׋$IèºN¡P P(ÌÐñ].— œ|>oÛåä÷û ƒœ8qÂyñŽøã¢þþ~š››q¹\«þØØúЇ¨ªª¢»»›Ç{ ÇcÇ$I"‰pÇw°víZÖ¬Y÷¾õ-åçr¹\¸\.†‡‡/HÂ8äH€ßŒŒ …ðz½¸ÝnFGGyôÑGùÔ§>E±X “ÉpË-·000À>ð ÃàСCÜvÛm¶ZðÙÏ~–{{ï½—µk×`²,£ª*“““¬69äx^wïÀwÜÁŽ;¨­­%ròäIzzzX·nÝÝÝ8p€C‡áv»Y´h¢(ÒßßO2™DE–-[Æøø8áp€šš6mÚÄ›Þô&6nÜHkk+wÞy'ýýýÜwß}Ȳ³F½ÞØ¡ ŒúÓŸ6= TlÿôOÿd†aæóy3‰˜ŸùÌgfìsñÅ›05M3MÓ4¿ò•¯˜²,ÏØ/ škÖ¬1oºé&3N;/þu&Ǹ@*‹ …Yõñ7¿ùͶªRSSÃ%—\2cŸ÷½ï}tww£i…BÛn»­Â“dQ"‘`ÿþýȲ<«‘ìcÿAàõzimm­øÛ?øAzè!Ž9Â=÷Üí·Þ:ãøÿ÷çÑGEQ&''ùÈG>B.—›õZ’$aš&ÅbÑ1€èƒ"‘ˆyã7š_ùÊWÌp8lF£QóÿñMUUg¨1€Y]]m^{íµæºuëfý»µÍŸ?ßܹs§™N§ÍÁÁAó‹_ü¢ÙÞÞnÞtÓMæàà “ç¨@†p>ŸG×ur¹ù|Ã0øÛ¿ý[{ì1jkk+ö¿æškxøá‡Ùºu+¿þõ¯¹ýöÛñù|3Îûž÷¼‡;v°dɲÙ,ªªrÙe—±nÝ:LÓ¤P(8/ßqƒþqÀÒÿ³Ù¬­–d2Ö­[ÇÖ­[ùéOŠalÞ¼™•+W ™˜˜@’$>ñ‰O°yófîºë.víÚE{{;õWÅW\ËåBÓ4AÀ0 &&&¢±±MÓœT¾bA@×uDQ$“É`†ý{Ó4™?>·ÝvPJh3M]×+*¼Ö­[Ç}÷Ýgë÷åuyÄ8366†Ûívô\±EQÈår6ÊI×õ ÀLeH[³³I™x[ÿ=(‹ÑÛÛ‹×ë% ár¹õÇÀ¹\.ÀYc¿ )3>>NOOõõõ444Ìj8;äà&ü~?Åbñu“Ñh”={ö0>>Ξ={Èd2¶áØþ $IÇNý.UÓ4I§ÓìÙ³‡d2‰,Ëlß¾Ï}îsìÛ·¯ÂHvÈÀL H’ô[¦ÖJ.Š"º®3>>ÎÐУ££œ>}š_þò—Ȳl× ?~œÛo¿mÛ¶Ù…5~·äx.€i-ýJ«†(âñx0 ƒ\.÷ª$B `ûŽ|û?îb×Îç‰F&P].šš[8|ä~¿UUEEQˆÇã|ó›ß$‘HðŽw¼Y–Ø€€ß/ó|÷»ßeçÎ óë_ÿ Y’¹å£·ð÷ÿÙ è¹Î ùÚ׾Ɨïø"îÚvÖ_ÿ—4Î_L.•àðÎ_b>J6›Á4M; Z–er¹ßúÖ·Ðuw¾ó¨ªê€àw%Ùz€s3¿išÜ}÷Ý|ç;ß¡§ç0ÚfºV_B1—aï O±qÍrîÿáñûý†qV¦T…oÿÇ]ÜñO_eó;oáº÷~„TN#Ï¢¢¤;Í“?ø áã/±fÍE©¸ŸB¡Àg?ûY®½öZDQt@ààõ_ù~øaî¼óN^Øù<—¼ùϹö}èB‘¢#ý|ûKCWs€G~öóYÓ—­•ÿþûÀßÿÃ?rÕËâ ×ÈA”$A”J:¾(‘ŽOðÄ}ÿ›ÜðAæ/\dG”¡T1¦( ·ß~;›6mr˜ßÀëK;vìàë_ÿ:/ï~ë ®øÓOâ­n²Ý ¦iâw™ÜuÛ{øË¿ø3>yë­är¹ ¯¢(=r„|äf:ßp#‹/y š!’IÆ8þòŒôîg´ÿz1¨¨¸<~A$9ÉÚuëg¨W8¿ûÝïÒÑÑá€ÀÀëC½½½|õ«_eÿ¾}œ`õ[>Nu㖀߭ê“L&¹çž{x衇H& O¢‰‰<€.yYtýÿbÁ¦qå5´®;Ëß};¦«šŸ|å:Vlbßá>žøÍoPUI’瑟=‚¿c=§öoçùG¾CÓEï¢ãò?%ÐÜâ !J ¦¡aêÅÒfèš»ðÍ¿˜S§NR__Ïüùóm£×Z¯\.>ú(Ï<óŒpð;…SÌ?00ÀÝwß$Iär9â“Qü­ËiÝøn\:LÓ°Q0¡ý²?Å׺”_ßs;Ý›Þÿýë7PUUUyúÉßÐ10Š9ö=ósšÖ¿ƒPûJáì‹‘ƒÍ‹‰SÃÁý{ill¤¾¾~Æþ’$ñoÿöod³YG8øíV€\.Çã?Ή'PU•T*I:§á­iA”dLC¯ÐíÁÄÐ5šV_OÞ8yðFâ/½¸‹x<Î /í!Ué݇ڴ„PÛR°Às.†5MÜÁzð502:J<§ªªŠ@ P±Ú[Ófî¾ûîŠçpÈÀkZýÃá0÷ß?‡l6ËÈÈ(Ùt-ÇÐ5@˜~`éI¡iÝÛ9Õóé<ð£q¸çûz‡)¦cDã)ªÚWÁóž‹ùA¤˜MëCP܈² ÷T&jgggE[F(E¥{ì1Nž<é¨B^;åóy¾ÿýïS(Ð4ÞÞ^b9W|˜Ö ïDvû0Mã¬R=Aê—_ÃÑÝOrï½÷òá}ˆWv<Áäø0Öå¨þÌsÊÊ–DÙEnr”‰#ÛQÕójkkY´h‘ÝNÅbv]׹뮻*ÀìÐ…‘“ 1ÅHýýýlÛ¶ Y–<=@\s±ðŠ÷£úª1 ýü+·(QÕ±S×È''ˆr(A®†ÅZº1õ"Êš²Ë‹â aæâòYb““6Ó»\.jjj³ã†aÐÓÓÃÁƒY±b…óA¼:ÒuŸüä'‚@6›a,‘§yÍ[Q}5z±"sº^¡Ž(.j—l.Š˜†1@?›æ7(`šîªfªæ-#—M‹Å*æTUU‰D*ê²Ù,<ð_üâêàÕÑØØO<ñ¢ 0>Eð5l^Œ¡å§õöÑòIŠÙ$î`¯îF•%tÃ@Ó ò…"‘É$‘X’Dº”!KbhAÀÔ5Q„Jé`š¨¾*”P+ÙÄ!$IÂëõVÛÑÑA__Ÿý³®ë:tˆÃ‡³téRç£:¸0ÕÇ]jÅbÑH‚¶M7`è3 _I"~ú ª¿‚ öï7¯_JQÓQd ·ªà÷¹ øÜäò±xŠƒÇصÿ8£“g¤‡(‘‰ â 5#*®™÷¸«š0óC˜TUUUÜs("‹Ål¤R)~þóŸ³téR'8æà¼?¹\Ž_ü∢H46‰jÁW3­™ÙÝA”I¥zÁÚŠßÿów¡©¶Ó4aš&UAK¶Ñ=¿…‹WwS[à§Û^ O!ŠZ6N1“@qPWÖÔ,W †äˆÂèÈ¡ªj<Ö¿ÕÕÕÄb1ûØb±HOO±XŒêêj‡»/Ðùé©§ž¢P(”šREÔ,¼C/̲z èù4Z>iœIP3 ƒ÷¾é2¾ñ™ñÅ¿~?×^¾IY½x>+»Û‹LòÝŸ<Á¿ÜA2µãÙÉ0˜&Ï?vp¬\ rùª(¢2‘ÍfÉd2d2²Ù,ÙlEQp»Ýg>æÔ¤É§žzª(9à¬êϯ~õ+DQ$ŸÏ“Èäim]Œ©k³xyDÒáS(Þ†^J­¦ºj®¾d%<ñ"nUáÊ+°eÃ2´5°yýRNF¸÷¡'91F–dŠÙ8¦^ 9M66D13‰ HÈåê$«è¢Š¬ˆÔÕÖ2;«ªZQ7Çyá…x×»Þå¨@Ž8·ú366ÆD2…·~>‚ a:z1W¹‚ "“§ ú«$Ù¶:Û™ˆ%ùÞÃOñó'^"›/°²»ƒp$Îs»süÔ©tŽê Ób* @jôþšFÆ?K>9‚8¤Š;@¾Xê­( Š¢ ˲½ÕÔÔàóùl@ ‚@8¶w8ä଴uëVÛ­™J§ñÖÎÃ4 ´|š‰ÃÏ1yòDYER½Dû^$î+¥.‹2F±äÝñ¸U¢ñ$’(“É4~¯—ª€ 0™H‰'@(É(æÐŠ9òÉ Ü.7W¼ïo‰߉ìöÁô5Þ4qùBÄÓ9ÆÆÂ$ âñ8‰DÂÞâñ8ÕÕÕ®Ù‰‰ »~ÙQƒè¬êÏŽ;lb6—Çë¯Ó@ñ†Î[ÁÈžÇ?ü,¢¬¢e&Ñò;lh$ 2™b~k·ŠÇ­ÒÚPÃîC'¨­ pßÃOÑXâÚËVS(è¢H1]ZýãƒGXå»éÚðFÔï}AR˜©ã˜H.¹¨A"‘ÀåöÌÊÐ^¯·¢D2‘HpäÈ‘ ·«C*ÔŸx<ÎÉ“'í•ÖÐ „)Ä4 ¼uí4¬¸ŠÁþ/ùÄ8×ßr#½{Av0ôRÑËÁã†ÉW?õ瘦ÉÈDŒáp”…m Ä“iZê«1 “‚¦!  åÒ˜züä+ßðú÷=G!“ÂjB/æ¦1¬€^ÈáL{|êÙ][[Ëøø8¢("Š"ÃÃÃôõõÑÙÙép¹£ͤ]»vÙ‘TÝ0Eì䨭‡ ä’Qªýnêk«™8}Œ†Ž%Z®¤ÿ%CYÓt¾óà6&i†Â~üØ’™,Ã5Ÿ·ÔßSÓt -ih$Ãý,\³™\*ίî¾Yu¡Os»š¦‰ ŠäS$#‡ÇëÃãñàõzñx<öÿ­­¾¾¾B £··×Qƒ p~˜¦‰K‘ë…ÆåW–¶AOGq«õmÙþ›ÞÿwznªxELA¤hœoýà1ŠÅ’*¥îÄíR‹±kß1b‰4¦V‰”éåÊ·ÿo¿ï‹´6Õ‘JgÈD‡ðÕÏÓj½.¢å3ã£Í4Ñhôœ*Õ¾Ýj¼F9uꔣ9˜:d·11 £Ôñ­0IüôBóV’‰c&‡ñùƒˆ¢DÐïeüä!Ћ˜ZaÊZ¢/~âF$QD$QD7 &&“ …£íâè‰!R™<†–§˜‰ãRâãÃDó†Í›é;ÑOlø(þÆ…Z)Æ J2™pùèrChFþÑ Q.ŠƒAâñ8¢(¢i###d³ÙŠ<"‡022B&“©øÛíF!Òû"¡y+HŒC.ÆinYN"‘ ¾±‰¾—§±s‘É8†vf|Ñ?Ýý0†a"I’(¡ª2ÕÍ Õl\ÕŶF~ùÜ>’ãyRc'Y¸z3Ïÿü;¬Z±Ahjl¤ÿå½´¬}óƒ è… ‰¡ôL`¡Pˆššš³¶f4 ƒB¡`×#K’D8fpp®®.‡Óœ¡£GV´E‘P(ÄØX˜t|”Ñý“9õ"‹;àõz) d2nE$:ÔKQpá6Ï?K̸Æãì?vŠ­Û÷Ú“|r‚è0=ªßãñ¸ xâû Í+¥3§F{‰öî"è/éþ.— Y–Ï Ó4 …B†a÷0cddÄ€€™Ð4­^¯EQ)ÆÆÛ¿•®î.ZZ[ÑuÝAMM-ÇC©žW–! ˆ¢½rÛiV»í6-bèEŒ|šÑ#l¸h­Îˆ¢È¼¶fŽìÛF°u)…T”±ž§1 Õå²G3¯1o±XÄívÛmYb±®_‡æ0,&èíí­n·—Ë…Ïç#îrÑØØÈ¢E]ö¼/Y–QUÃ0ðû|J!]DI%Ÿ#"—§˜œ@+d%Õ_‹·~>¦EH.z1O!E+d© ùíú^K}ñ¸Ý„Üpâ™ïá­jD2òÔ4Îí˜x<{Rå¹\»º®ãv»I&“‚@&“!‰8†°*˜ WôÙ©­­¥®®ŽD"A4%™LV¸MÓÄçó•¤@m-Ãã R#Çyå1ôBæì<ü "5 ×S³è´|½§½½ I’ìsONN’Ëåè\¸€Ý/½„[Ô¸îæ䨋[ÑÂY°`uuuö1g#kŒk"‘°ã‘H„T*…ßïw¸}6çÁ\{àx}º‚I%IBUUªªªQ…fìè¹ ;Ѿ—èÝúoŒ}¯×Muu}ít:M:Æ0 ñ8Uu¬ÓYzéõ4,XŽˆ8µ¯®ëçÜ ÃÀårUÌG"Û0vȱµud‹4M#N#Š"n·Ã0 ªªŠP(d«BV·ˆM›6ã÷ûæÙgŸ½ ëú¼^D Z[ÛeÙ.`±Ô€Hl’†EXsÕûÈ¥´v­áôþ§éë;ެ(v˹¤@yùf<'™L:œîH€3(Ujš&®)CÓëõâ÷ûñx<$ Ž=ZÑtJ–e{Q©««» kz½^Þ°e ïz×»Y´h’$‘ÉdH$¶$ŠD"d4Ëßõqt­Xê74)Õó–344bßÇù6QíÙV›Çé._‡æ°· `+jÚÚÚŠaø|>’É$cccd2ÆÇÇÙ·o+V¬Àçó•Œ`¿ŸÉÉ3¥~¿Ÿ?û³?°U&K­aß¾}tuuQUUÅÄĆaÍfís‚@4!ž)ò–ýž@†VDE C§{ã5ì<µ\&MGGÇ9‡q‚@:fxxØL*•ràà %“É &RUÕÖÁ‹Å¢=5‹¡ë:‘H„W^~™ÕkÖ íô +ÚÚØØÈ׿þuÛ®(÷6mß¾¯~õ«ö€m+]Áµ*I§N"™ÎqÃ_“ÆŽ¥h…<¨²¨bèÍ –SÕ¶œž#{ilnÁï÷ŸiÍx–.Š¢ÍfE‘d2I:v\¡J”H$*Ú‰ˆ¢H"‘À4M Ã@–eªªªˆF£ä²š»Ö‚ ±gÏ^V®\QQk›Ë娮®¦X,ÎÐÏÝn7áp˜t:Mkk« Ó4 d³YNœ8AÁ”øàÀ_Õ@!Ÿ-5RÑ5PJ}€t­ÈÚ+ßÅ/îz‘=¯¼L÷â%öyf“ÓïÃ*¥t\¡l PËÿo1”2elær9r™4²êfóŸü5G^zœ»É2— ÏT‹’X,ƺuëÎ:78“ÉØCôÊ¥Ž®ëôõÃ׸ˆ?ùØ— Ö·¡Oؘ”Ò± ]G”$ ]£¶uk®z/{uÍÍÍÔÔÖ5ÃÓši\ÎðåÒÉ!GÌ‚ƒA›¡|>Ÿ=„.•LͥРKÞz'öQ,ñLIŽn»í¶Y™ÑJM°\¯VOOQ SÓ¾‚k>üyµMSýÄ©ÂxÓ40ô"â”MQÈ¥YuÅ»èßÿ<;ž÷¾÷OìàØtæ/‹ÄãñŠä9Kår$€ã²]—«@…BB¡@>ŸGÓ4»Ö¶¡¡½!¨mFGD×5DQ$£ª*×^{í¬@Ó4–/_Nkk+###Ì—N§˜·t#Š:峟J£dÅ¡W¶cÔ‹®»évÒ¦—Ç·m#™L iš½‹E»¯étP … šdé`ÐtfÍårLLL011A$!‰H$( ¨.Ål’ljI’©nY@x<ÂÄÄ/½ôÿüÏÿlÏíNº®ÓÝÝÍu×]gçäXÌ<:u­x†êñóŽO|þÑ8<ð}}}Äãqû¾#‘±XŒB¡²­ËlÀph œaEÁçóÍØ‚Á ÕÕ5 çÉ¥ã YÖ\õ'DSyvíÚÅ'?ùI®¿þú³—ÖXÓ}èC¼ýíoçàÁƒd³YzÄÛ°æE«§æ‚YçDÑV{Jj†i¶_׊jšøÀ?üRh?yðAžþy Ô$«ªªŠªª*\.—“$©lžS6çm€éª€Ûí& Í` MÓÈd2ø|>2ñ ´Bž#/<μ¦:Þó¶ë¸õÖ[+æøÎfŒZ©ÉŸûÜç‡Ã<öØ£˜&üéß߇ۤˠëZÙGe•‚ž-U×Ð5 yÊ#T:§Žêörãg¿Ï3|ýÏ<Ä+¯¼‚,I¥¡Úvœ”¤]*•ÄírqÕÕW3oÞ¼ 0Ìu»`Î7ÇÍçóv®L¹áh¹\YVHEG<¾—‘c/òo|‰K/»Ü¶%Î=좔¡Y]]ͧ?ýijkjxøg?ÇWÕ‚€(Éh…ÜÔ*_J©%Q”0¦Z²ëÅ¢(•¤EYwêB.ÍÞ÷׬¹ú½„û“œÃÐ5T—ÕãG”dôbl*Fxà8ýÄmø¤ïûÓùìí·ÓÖÖæÅsªªÎ˜¶˜ÍfgHÓ4Ñ4 Õå&=9Æ‹¿ºŸ7]µ™… ;_•>myfjkkùÿ8/ìÜa—SJ’LÑ,Y’duêYuQÌe0ÃÐÑ 9—»ÔIº tÅ|o°–«7Wí»æÏ>ÍÉžüð{wpÿïg۶ǹôÒK`®=°Ûí®(,‘e™P(4ëV]]MMM-™X˜»·ñ†Ë6P7­ûÂ…US I~Ÿ-Ÿ…©®¢(¢OªÄÜ J’í*Ib>‡aè¯I}EÎÕWpË×~M×¥7pÙe—óýïÎÛsNx<žC.ÊaÓ·º¦†Üþý¬]»Š®®®ŠLËWCŠ¢ `B&Y—$Š¢4eìN©7”:BHŠ Ã0l¦×u #—AV\ÈŠúª¯_2¢ ‚ÈÕþÚ—nä#·|ŒT*ÅÇ?þñ9kÌ9¸Ýî*ÐtÀb˜\.7Å„W_}4÷ZÅ@(¤M–ô~Ä’¾¯kSj‚0%©¤ å³gÀaóYt­€¢º%¹¬ç»/«íº¡Y´îJÞù·wòWu3­­­Üpà ssNòûý•UÙl–t:M*•²³8­-ŸÏÛE&+V¬°‹Î_-™¦i ªºš\jÓJª“ä){c*W¨lVŒ$+È.w…ÔC×ÉgÓä3IŠùºVÀ4ô ¯Yºð¬ `ʶh_¶‘ë?öe>üá3000'§LÎ9 P[[[MÓ¨©©™ÁØ–'htt”U«V1oÞ¼ß*šj¹L««kt®c IDATa˜Ò”~^—¤—æ‹RÅŠ.É*‚ ÅBn†íQ’Ny(ZÁä’D‘eQ–Ï9–U´b%ßÄøÀ1Þý®w°}ÇN\.—#æ ,7¥¢(x<ÜnwÅæóùÈf³tuu1oÞ¼sª?VŠòô).Ì,IÔÖÖ‘OÅl `¹CK`,ÎTgLIQQÝ>$I¶Wér0Ø)L]+RÈ¥K^$Ó8gÌR‰Ö_ûgôŸè¯¸_Gü7€\–r £££µ´åV£££lÙ²…¦¦¦³fUš¦É¶mÛøÕ/ãº7½‰·¿ý†Šª3‹ieY¦¶¶–ljwÅÌaI’KU`š†©L›K6u¬(I¨n/šÕ^e*WhƳ©ý5­ˆa¶­p.ãýðÎGyÓõo²Wÿ¹dÌ9 0[w…T*e'ÄYIq…Bh4Š×륵µÕî»9ñEQäž{îáøO½r‚Ï}þÙ½{÷¬QbY–©™.¦ì€ÒùŒ3iÑÓ r+iNVT—ÕãCVUY³B ]§ÏÚ9EÓu|«ïÁgbó¶099ùšlGü?D­­­(ŠR±ÚK’DssóŒB™S§NÑÔÔdëÿÓ+°DQdïÞ½üÝßý=7þý÷hê\ɾ'~È÷M›6ͨ=–e™ÚºZ²Ó€ ØÑ_]ÓsÆŠ=}•Eõ ¨n ¹º^“û[ž#Ó4KöD…A->ÑCn2L6›#à¿+YeˆÓ{lZ]צ—G£Qªªªf5€­ý>uë'¹â·2oÙFDQ¢±sÇúNÙ½úËIUUª«ª)fâfåJke‚š¦6%ΗfQòõ¨nªË‹0‹”²U¢|]ËW¤SH²ÂîmßÇ044D&“™s^ 9‹¡æÏŸ_¡%‰Š”bk" ÑÒÒ2C5e™Ÿ=ò§ÆÓ¬»æÆRN&Þ@®Úùì|~{…dšf) -ITýäSe3ƒ¡´:Oí§kÅŠTèsÜn÷Œ4ÿMi:t]·‹å5MC×u{5¬¯¯·+Ä*VlIâÎ;ÿ›ßóWS>È’ÇÆ¨B­žÇ®;+T-KE‘–ÖVÃgüô‚‚€450Û4 ´BÞžBs!ž™’J&¡º}³‚ÀvûòZ‘TlœGþõ¯Qd‰ÆÆFæÍ›G0ñc´bI’ðz½444ÐÝÝÍÆÙ°aƒ™kêÏœ€Õ«Ç’±X¬bE}}ý ¦^ØÅÀ‘Wl/NÉu©•zzN¥-WÕµÖ]>ÜS¡Y³V¯ZÍð±=gYÁ™J‡V+[šVD+ÊŒÛsx„$™ÉðûŸþ ©ØX)Q]Í‚ X¿~=W\qW]uË—/' Ù uŒà9b\rÉ%½P(pòäIÆÆÆÈçó466V$ÀI’ÄÑ£G™˜ˆÐ·çi²©xùYÑ­”fັDQæÐ3â>Ÿ5k×2tü•YW]A0ËôxµbŸ’³`WÍjãÈ ÙdŒç¾‹þ}Ï¡( 555,^¼˜Ë/¿œë®»Žk¯½–õë×ÓÒÒbûÿçbeØœ€ÅÐ[¶l©øèº®Fm 0=MZQvíÚE6WŒqrÿöŠó–ì€R„Öã !êé=9@,­Pƒ\./¾˜Swbb"0“…2{@±[¥Ø@Íç0§Šæg®ü©ÉqžºÿŸ9øÜ#v“¯¥K—²eË®»î:6oÞÌŠ+hnn¶+äæâê?§U €7Ú-ÏdQ–:¿y<ª««g²^zé%rSêÝWÉ€†ag C§a^áx£GT¸C Ã`þ‚…,loæô¡] gÕãE±T<=7¨ÏÚF´Yf_DûØz÷íÞù’$èêêbÓ¦M\qŬ]»– PSS3£>z.Òœ}z+™íꫯ®Xåóù<§OŸFEªªªì¿YIs===hš†$IŒŸ>V¦™ÖŠlš†Nc{7#±ñcúÆÿ¤ÿÀ„©i7ííílܸ‘M›6±|ùrñz½ö”š¹ºò[4gûYýïx<òˆÝAÍš PWWg÷â·V×Ó§O‰DPUY–INŽcèš]Öˆi”Æ£ ‚i⯪CðÖr¼¯ŸD"a§TXîÐxvºR¤O©oÍÍͬY³†Ë/¿œ+VT0y}ñ\§9­Z ðîw¿»¢ÚKŽ;Æ3Ï<ƒÛí¦ººšÉÉIî¾ûnâñ8---´´´àv»IDFË’á°{}– ÑÚ¹’ããî9„Ï磮®ŽçŸž÷¾÷½ÔÕÕÑÝÝÍŽ‡ÿŸüËÿ¸ æ‡R§èØèÉY™ßëõÒÞÞÎúõëÙ²e 6l ¥¥—Ëå¨<Ž˜¶lÙB[[ãããv-ÀØØù—ÉþçÒÑÑÁ³Ï>ËÄÄuuuTUU!Ë2—dlRº±5C´Ûœ„j›ðÕ4óá¿øÿðù/Íf™˜˜ ©©‰Õ«W°gÏ›1§¯ÌÓÚf«9¶¢Í.—‹Å‹³råJ.½ôR.ºè"æÏŸÏçsÔçx ²ÌŸÿùŸó¥/} ·Ûm÷ólhhàäÉ“ôôôØâò® ŠªŒ†ËÒòK±Åí±3Du]£¹s5 mä²q\.kÖ¬¡¥¥ÅfâúúzÆÇÇ‘¦ÜZiÓvxªÝ‰Õ£¨¼ý‰XEQèîîæŠ+®`ݺu¬\¹’yóæÙ-_kC/s€$IbóæÍttt044d3JCCíííäóyr¹‡ÂãñPUU5ÕæÐÏdøLÓÄЊ˜ºn§Iz‘¦…Ëñ×4²¾{ ¡ªj{V±ÅÀ D">_©8¥<5ÁªS°¶t:m'èI’„¢(TUUñ¾÷½U«V±hÑ"šššðz½þæwpVòù|ÜxãÜqÇgtø2¨iš‹E‚Á õõõ¥9ÁõõìÙßS– jb˜Z1‡âòÚ†pU}²§ŠH4JCcÓ F¬¯¯çÈ‘#´··ÛÞ'U=¶&ÀèºÎÐЪªÚ5 –ÑûÎw¾“ë®»ŽÆÆF{F@y-‚ÃüÎé ’e™-[¶ð‹_ü‚§žzjV}ÛŠXjˆ$Ièù4ãƒÇ©kYXrqN¥/+nºVd g¯lý§½]],]º ·Ûm{š öz½Ô××ÓÜÜŒËå²g–êcš&‘HÄöá—»g;::øøÇ?N ÀãñÌðö8äà‚( rÓM7ñÔSOÍÈÕ×´3¾úL&cÿßíñp|÷Ô¿³Œ3£Pãc§yeÛÙûäÿµÓ˜§ ÏétºÂ …Bäóy;/§¼ MER©”K(Ï-Òu[o½•æææ #Úa~Ç úªÝ¡‚ ÐÙÙÉßøF{²¢E|>ŸÝ>= âõz9öÒ¶’Þ?Õj¤K±{ë÷Ùó›ÙÌ¥îÑhÔ6LË) ‘Íf©­­µG…B!ªªªPU•xÌÀá]¨nCG_F’$Ün7@Àî¶&I‘HiÌjkkkÅŠ.I¹\ŽX,†,ˤÓiFGG) 3*×4Mã/þâ/X±b…³ê;xÄbYo¹°ÜŽ¢(¢iápxªÄ1HvlŒ}OÏ%—\ÂG?úÑsŽhuȱ~+Æ·˜{zµ˜(ŠvÚ´%)TUÅív#IZ1ÏØÀ¼^Ÿ=¸ZQ»Ûœåï/‹8p¿ß_qmY–íŽtÓ%¦ituuñ©O}Šºº:gീ×_*·òöêJ·©ªªx½^Ün·]d¢ª*’$‘ÏçíñK¹\Qq¹\¸\.^~ùe‰DEÍ0k{òl6ËêÕ«ù¾@KK‹ó¼þ^ UUI§Ó¶š“N§Ù´iZÄ©Ê++}AQ»ÃZ2™dtt”Ó§O344Äää¤u.‹üæ7¿©¨9(‹3ŠÓ³Ù,›7oæ¶ÛncÞ¼yö¾Žáëàu#kǵTÞiÁÚ$IÂãñØ©ƒƒƒìܹÓÎõ±®cÅ T«ðÙÏ~–¶¶6Ç×ïÁ¿RŸÏG2™dppÐn“èóù¨¯¯çË_þ2[·nåÛßþ6ÉdÒvyú|>ŠÅ¢ÍàÓÕ( ^¯×öö;vŒp8\ÁÔ…B––>üásÝu×Ù¹?ã;à÷b[}35Mãå—_&  …Bv ÂÛÞö6î½÷^6lØ`¸~¿¯×[Ñg¿Û°U*—ËE>Ÿ'pñųnÝ:[rßÀ ííí´··“N§innfÙ²e´µµ•1Eaݺu¬ZµŠ›nº €¡¡!öïßO8&—ËQ(¨­­¥¾¾Þ.¼ß±cýýýø|>-Zd7æu¼=þ`*ßï§³³“Õ«W£( ííí¬^½š†††ŠoÓÉrƒZzÿÂ… Y¸pá¬ûÆãqêëëñx<ôõõÙµÂåc\æwð€Ë墣£ƒË.»Œ¶¶6š››Yºt)@`Öî ³3=ßêm­ø>Ÿ®®.$I¢½½}F–¨C¯ó÷6˜ú CÕªú ‡ÃÄãq v!Ëo«šXÇëºN6›%›-Y²â¿‹k8äà·"Ã0Èçóhš†,Ë¶ÇæwÅ”ƒ[õ¾V Ì)gtðG#fS~—Ì9›å0¿‡ú½‘sÈ€C9pÈ!9äÀ!‡8äP9•WÁýw"'¡ "+6144D*•Â4MjjjhhhpàÐÜ l6ËöíÛ‰D"‚@UU7Þx£‡æ 4MØš~cõ4rl‡æ”äÁ9äÀ!‡8ä‡ú•^“¨™LÚ³Å|>Ÿ]>y¾kT¼Ûb‘t:M>ŸÇ0 »·©ÇãyÕïáÕ¼§\.G&“!ŸÏÛÝô@Å0ÀWsÝòý5M#™L’Ïç1MUUñûýöLçs[~­•+è÷…uLÛÓã‘]C$2ÅY%† (’ȇ¯šÏâÖà9ÏYþÿóËãŒLæÎúü‚ °iioßÐjv¶ó¦R)î¿ÿ~{p¶E†aP__Ï•W^É©S§Ø½{÷Œk™¦É²e˸ꪫf=y•Ù³Ï>KOOϬݧ­û­­­å†nÀívÏz¾D"Á/~ñ b±˜Ý<àæ›o>ë{J¥R<÷Üs?~Üît1ýšÝÝÝ\sÍ5¯d¿þõ¯9qâÄY¿a,Z´ˆÍ›7Ÿu””ôùÏþó¯†ùOŽ¥ùöÖ>b™‚ý³mšaÒ7𢍛,hô!£Ð»¨ütç ¿ÙÆ­Hg=¯$ G3œO³´-„KÏúÑ^ìðÓƒ$³E$Iœõœºa°·’j¿Jk­÷œÌ4‘Èsç¯{ÌóùMÓ¤?œ&‘Õèlô£È3Ÿß0 ~øaÒéôŒãEQ$NsòäIÂá0ÅbÑ®I.ßÂá0¡PˆúúúYK, …Ï<ó ‡:ïýZ×kmmÅëùòù<ÇŽ#—ËÙó Ö­[7ë{šœœäÉ'Ÿ¤¯¯¯¢UÌôw0>>Îøø8çl`ý^Ó4}ôQúûûÏú<Ö;#ÓÜÜlwí~ÕFpùÊÿ“§‰g‹œ;0" ¦ Oã¥ÞXâ§«)ï óüÑ <êùoÇ¥HœMóãí³ª@Ö%zGR<º{˜L^³í‘s‘n˜<º{˜cÃÉYk‚A _ÔùñŽÆã¹ó>¿ØŽEØ~dݘZËö±Ô‘³GE²Ù¬=[àlû¼ð ö ³ò뛦ɾ}û8räÈy§Å[F£<÷Üs6“¿š8‹O²Ù,»wïæÔ©S4ÉFN:Å3Ï<3+ŸL—O?ý4ƒƒƒ¤.)ŠÂ‰'xå•WÈår¯ Ö…~öâÃÑlÅÇ/oÿ==cP4Ýäñ}£ô¦f}Ydž“lÝ3‚"‰6CÏvÎòó*²ÈÁÓqž<®ÒÔÝ2‘ȳuï(“©bóŸíœ¶AŸ-ò³‡ÈôY?þÏ^¦,=ã#í>KLïåÈprêîÎо}ûÎú§3æÙö±îèÑ£3¾Û‰'Ø»wï¬gÎv.Ad×®]çdƳ1¿aôõõqðàÁ=RÏu]Ó4éë룧§çœ×9pàýýý3¤ÝùÞ_<¯rrÁ°N¶·’“ciL³’ù5Ý$äUi«õÒPåF–D4ýŒž)‰áÉ,ûOM’+è•jŠY•$V¾$ÃYiªöÐRãÁ£Jf%£Ë¢À¶½£$³Ú4µÂ¤w4EÏé8²$T¬ðuAíõ>ê‚. ŒòL$ó<}plÆó÷‡SN¢é•/¾¨øÜ2­µ^šª=¸‰¢fTHÂL^c÷ñ‰L±Bì§R•‹‚$IÔÔÔ ªê¬ººiš„B!{êdù ³cÇŽUü.“ÉÐÛÛkù(÷6)ŠBMM õõõx½^t]¯`FÃ08}ú4ƒƒƒ³,0ç^$‰{öì©%exr»ÝÔÕÕQSSc¦åT(8xðà {¨\;tèÐ F6 Y–©­­¥®®—Ë…¦i6DQdÁ‚ö{{U^ A(j¯œˆÏ±xÕ4MLà}›ÚYÚÄ¥ˆ†Éx"ÏãûÂì?9i»-]ŠÄΣVϯba£ß~1/õE‰egè­ËÛ‚¼y]!ŸŠd :ÏöŒ³ëX„¢n N¡:_4ضw„w_:ïŒG%]à™CcÈRÙL]Í ¥ÚÃ[Ö·0¿Á‹, u“¡H–>w’t^GœÚ7_48t:ÎE‹j¨ºì÷ðÂñ(É^¯—l6˵WZ]×Ù¸q#—_~9Á`О^ïv»inn¦±±Ñ–"å“mêêêì•ó|Fp&“aûöíölc«Ù×–-[X¿~½Ý:^Q<ÝÝÝär9ÆÆÆ*@dš&K–,©h7©i/¾ø"“““ ׬YÃUW]eÏk–e¯×K{{;.—‹ÉÉI6lØ0ÃIpA*µsÿXšHª€(`3Õû7·ÓQï­ØÏzq>·Ìuk›XÜ ¨›¶ÊÒs:A*WoáxŽð”'ź±ù ~Þ»©½âwåºøU+X·°I:3ªT7 öœ [ÐÙjÒ˜a–Tž·^ÔBS•§ìœgîÕï–ùȵ(Ò™—šÎkœKÛêQÿXªbõ/j&o¿¨••U³>¿KÙ²¼õ53ž?=õüV@Ë2d,X`?·¢(444Ø«¿a477WÌ ƒ"Ýjçh¹Vmi iÝÝݬ]»vFpÍ¢ŽŽ6oÞl3 (ŠD£QÆÇÇ/ؘœœd||¼â›­^½š¥K—Îø¦Ö>[¶l¡½½ÝN±d2iK7‹NŸ>M*•ªh3¿páB6mÚ4ëyV¬XÁ7ÞhÏV›M’טLŽfm/†f˜¬]PͲyÁs‚¦6àâÒ%uø\ÆÔê~rèíz¹??¨ÒDº,Ë'išâù¼àå¤Dî·ÉÁÙ h^‰íK “ d‚Š„ƒDK<*l´-ïÈ)'iYÜ…tP9íÁžÑq¬þöt:÷ß_P¥Óétß…çq»é¦iŠkžüŠ»÷?Eú)Q JŠ;¨ëÖëÝ’ö^¸(ˆã5Ý`ûFWšm ­îgÛ@P=ìBì6^mpU„‚ê¾²rºÂóúÚ¦eC•ù3ŸûynWF–ed2¤´î½¬¨;øl·Û0 ÷pžŽ›Ÿå'˜åî ·Þ<€¤Ê‹ï/SäÞÅ©ÇåÖŒvÊ ÏŽk¾ Ø©¨6œä” ÇR“G@¡ÜhsBðd»á٘Ѡ‚jÀô`ðW§“Xœ9äÊø1Ü„db|ùpÛƒX½ éLJïçFðÛç)¥¨Õjh4" Ü÷Ävå¸ ÕO!ž*2^£;H ÀC©T:1tçØ À_f$¬ ¤Ê°sè Å:®u2±½œ wU¹Ö‰´±xÊ0,·ȧÃþ|s“‰D?s©,æ$À¤N°T©È?¯˜ìÍꈬ( ‰ …‚¨7®V«H¥R¾Ê=u]G±XÝH$"`Ô^’J¥<®W½^G¥RA"‘ð5îv»­­­×ç8¾¦b$,ck¯ Y"øÝã]´®e Ä)èúyÓbXßj Þ2¡ÊTàè*fÛ¸»RA>öudÞ{¼‹¶‹sOpz,‚¶ÅÀ˜ "Sذñd»‰­ªŽ´‹ÖÜÅ0,üݯWñ°P0•‰àOoäêõ&wW‰ž>} Y–±··‡­­-œ9sÆW–½Ùlb}}’$1†h4ÚW!¢“E­VŠB¡Ð“ á¶þ=‚eYÅ*'!}Ï›¤¦b$¢î„¾Y);”äÖphÄ {vf6v’^ž °ñ¿v ÌÅâ·¶= ÔT c#AHÔêõ­–T¢uïƒB wWv`Y m“¡Rkc»ª”óx]N7•A’$¬®® êõQsë†;¿ûî;_Ó4hšæËõâ”cÀ¡F?yòD”jöZS˲ðí·ßzŠh^16YªLñ«¥gØ©]'“×Ï.­î`£ÒêШŒïD"xd"©Ö2ð‹;}Ὧ—ËXßnx¬ÊÅÓÎ1 H˜Ð`uhõ–‰»+lUõ®‹ÏÞùê©“æ\MA¶ãV½i’Éd …À¥…B«««ždÒQËöö¶(eä“Éd|)€,˘žžžRеµ5,//÷]S^ñ²ýÿ¾ À˜ÏD0VD6S7þþ׫0]¸ûA„biÍéï£Hû]"æOÅ åC¨ Ï~³RÁÒêΡZOþ7Å]·—6ÑÔ½ yõ¬£UÂ…©8LËùœ,ÜRÅÿtN ÷sÝãþ‡ÿ~Œâ®.Š](%‘ÔÔ}Ø÷ MÓÍf=§À—_~)(ÆGÍC«ÕÂgŸ}&>à m~X¤Üß°œÖð°°‡¿ý÷”vuç•O‡ES+E¢˜ˆ:=ƒ8..üjiÿüÕSlïéž±–ª:þñ7ñõrYœJü¤ºÐ)vyEÓ4äóy»’1†Û·oãþýû£çó°±±O?ýÔSmÅC:¹üì“@ €ÙÙY‘À’$ …BŸþ9ÖÖÖ< …aX^^Æ'Ÿ|2ZôRaPáG˜ÏŰQi¡ÝáÛ(Åòf }ûŒ'‚ÑÐMlî´Pªê`KÊQž·ó#˜ÊD8Êx´6v ÈþÅü×ý&!È”àÙn …J«Ãõ«…¢¯e½1KTÅÍù þín!Uê´'~óÝî¯W‘M… )(íêØª¶P©ž6† Àd2„¹ÉèK‡?O̪QŠ\.‡ÉÉIQI)=‚îÝ»‡d2 Y–Q©TP.—¡ëº°Âý9}ú´oø”+À¾ÿþ{±ÙEA±XÄíÛ·‘L&‘L&a†ø^wÂíµU¸1—ÆïÖ«X-ÖAa‹¾7Ͷ…•ÍV:Á¦àƒ¸Ž<‰\ŸM"¡©=!8þyfÛØ(7±áÊx³6,\˜Áéш'h *.‰ã«åmT›¦ o» ;õýl#éœfâhîÔ·ÞEOM}$•Jann›››‡ÊKË岊ùÜrÿ›Ÿccc˜››ø{‰°´´$Ú¢PJa677±¹¹yäšúIò½’ ˜.’ñÞâ¢!ùо8ªÛÿœÉlÜœÏàÜd¬O"Äîú̃Ïe  +øé o­'ÿ9™ áýK㢆¹ëXýñ®× t>ÃG4‰7]Ds‚HW¯^Åèèè¡ÍØ ¸rå ²ÙìÀ™Ïs*•Â;#`0صéQîÓ… úR¯_‰¸_ðƒKãø“ÅQÑÀö¨†­|“¾u*†?»žC*Ú»ór,¬àgÎ8§Kæ¡SæèP~öãLEúÔKøÉ• Üz{Ô©è1VJ ÎMFñ—?šÆï‹ðyà vÇÇÇÁë9¡Pׯ_ÇÂÂÂsYe÷zLOOã½÷Þpl·5åŠúÑG!wU˜uJ ˜vs&õ'W&0â‹ï·ñ`£ê¼®â”DDÁµÙnÎg0Q|ewãõñyüë Ü[ÛEµiˆ,¬Åß~n2Š_™”‰~ô¡€„¯e1‘vZ®·`c¬Ì¶1‘áϧqkaôÐ3)%qòeè‘øîo]íý#'.gc<ÎyóÜzUÎýù>øKKKxðà qtˆ÷Z\\ÄÔÔT×yåe–|“ö£UÌÌÌ ‰àÎ;xüø±hðË7~0ÄÙ³gqãÆ hš†R©$š{¹Ý$wŸ"žËx% *°l—§Ö(ÏvZXÙ¬£°ÓD8 c*Á™±0¢!EŽûðHXÁŸ¿›Ç.¶ñÃf «¥lfc2ÄÌDc#ßoðISeŠwçÓ¸2ÄZ©ŽÕbÛ{:´‚óÙr©´`÷KÞÊŰ×0Ð2ÒQUòþîpæl1?‚f§H È)¸té’@KÂáðs]8Í;)N½@.—ë:ñx7oÞÄåË—Q(DÇét:l6‹x<Þ×ç×4 óóó(‹`Œ!ŸÏ÷œ{B&&&ðᇢ\.£P( X,Š6†¼‘o‰rêÔ)œ?–e!Š~>ù|Õjõz²,#›ÍžXÒl ûz¡7ƒüî?ÿ¯ˆ_Þ-Àè`ýïΧñÓë¹c=³ßFÿl¿6ÝÇ££Žøã>÷yçÏÏ%&Ï‹ÒçÙ½Þó$P£c1ü«^grÐódÆ2È8) |Ñc;ÎÜg£çÙ'±'e(¿o2T€¡ `(C*ÀË”ƒq·=\ˆ¡¼‘_Å—Ž'BˆGT´ ¹Tx¸Cy%r,ô8R®µ¦Spئ„ c( pØúP†òÆŸCÊn<”¡¼&òÿ*ʱ“ŽgƒËIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/nhs_scot.png0000644000175000017500000001602612033133562024052 0ustar neilneil00000000000000‰PNG  IHDR`1%J¬jsRGB®ÎébKGDÿÿÿ ½§“ pHYs  šœtIMEÙ û'‹tEXtCommentCreated with GIMPWqIDATxÚíœyeW}ß?¿sî½ï¾÷º_/Ó=[f4‹¤‘,„4ƒBcÄl1† ÁØ)â2E%U¤R¶ 0N%ùÃ1TˆCŒ!,B‚ !Á !´a!fF³Hšµ{fzyë½÷œ_þ8·_wÏtÏô€,缩WÝÓ}ßÙ~û÷û;-ªªüÿ×?Ø+º¨§UQ<" ÎXT#Ä.÷¨B¾+¨x¼wX ŠE¬ NÁøµ1â *ÐC¤ jPí!&"ÔRà½EMŽc¼ET2D š[09˜H Z™_9Ž Þ„™°AÊ+Pþ_~5å÷Ô‚÷`eÑs¿ØKVkªŠ¨ âðx,ä“{P§H¤¨„óÆÄø•?ëÁ‰ÃiFbªçYÏP)7‘ Nñ¬ÕÅi×j‚ªb%BLؾÃceá@ÈsO'ËkˆLD%ì¼¥@.R‡aàñ LıÉY¾tç ¤¤C·çiuÛlá·]K½– tA B\Î*Ü÷ð>öÏ0IÂÜéÓ|ôϾŚÑõTKR±6FDNÜè22V+ç _Æ«)Ãë6²iã Ar¥“9F†#Œ é½`-eòͶ-›©×Ö08äú+Y7Fºè<Õ) ‡ŽÍò‘ýOî~ôÖNldbb±§›;4–sŽa ‰ñYBR^Ø ¬Æ0YcÕ)z)DEÿ¹¬è‘DƇëÜyÿOyÛ¯¿„«¶£dà5¼r_óZ Ô¥MÚ÷Ý 8ĤTRC/k•‚¯&–žKú‚2Vâ$ÁWDÚb “N½’d ±À{ldhµÛ|üÓ_äîGŸáÚëvëÝ<§›CÛÐrÌåK=tg0`}Ã[óK àâFPN/WðE‹H[äþ?S8;@ ¤–SMøÒW Y»$§ˆz Sç y÷lS¶¸R°±'ˆLJ$gægÏ‚z§ÎRêd¶B#ÀDzÙÂøÆ‹¾ã¾ý|ûÞ'xÙ ;ée-\vu=Ú­½©.Õ®Ú8̵ÛǸjã0ë†Sè:¦ž;ö”† `m$ªCjQ×Cl…*H®TÓ˜´^ãÛ?>Èo>;ÅŽKÆã±eÎêÎò]ëè.Iù [.ÏÁR ߥЛ•º(Ý x“c ™-2*Q—šFÄtñE®ø¥ó¹œ¯?ð3*ã4³ëºdé0é.ãUxç»oäeWndxdŠ©ÐÌsŽirâä4ß¾ç 6mBD^`,÷ê:¤^!2)¹Õ("Ï•ÁÁˆÉã³|é?À¿ùàí!G§²àä/âµØ©/¤Ÿ b¦³ð î0–•™¥Ùõì}âYFFÖghÏ(®™óÎwßÈ;ÞpCi¯¦ŒjãkaÇ^sÓ•Ìtæ0F^`´’MJ×-õÍY²¢GdRj6¢%Üó£Sìv !)SUG¥?)OÔk™©à°ó5™0çÙB;G.Ã43j5Áå9‘¶¨MÖ –+ÈPßÁ9‡úõ4Wð0T|^\Ðó"Ñ.©±´[=n¸agp‚X 2–rhê$_¾ëI”2®Þß•Ñ ²h,H®Xפ–š2ý3`-XÛ¯E©P)šÐu+Z€Ú?Ðn/H©šB/àsý=~¨ ¦Šµ1UÄÄ¡ wŠºlY%ù{sA:¶ÈæÌtº¼å-/fºÕâîïb÷ÕT³ðÉï<ðÿô ;Ù´qlyMˆ*+Z€+\@€¸±–“³ŽûÞGdÂgº=OZ ºtäÄ4~ Á¤ö¼Uå@ —oãþ'N28´í†86¾aˆý§øàGÿ†[n¸Š›nØÆ¦Ñ”ë®Þ„•l€.Bålþˆ©%×°®™¹ŒÁt„[¯ÛÊ]w=N«•1PO_ßàɃ“Üñƒ§øí·Ø^ÖÏhb_ôÎ+ru!½æ‡ðÝï=¾4 de “004ŠÆBžë²VàÔ‘Ú˜WÞt5wíù*UÆiÚ¬k"k×ðÌä _¹ûg|ýžƒŒ vmc÷î­¼ö¶k™±óîT<ª‚ª D5Ô›«´ôU‹P/`p…‹°z'Ïðºë·³ýÒ 9MÖÎú…Ú7÷`òÔÜ’ÏÅ==¯¯îW¥Q¥ïî:Ýð³–Öú?—+&ªÓ4q8ônwå½8AÛoÝÉKw¯çÇí£’Ô‰ã!²¢GVôغa”ñõ F† s¹r×#‡ùô_|Ÿßúðgùë;D0%(™#hUñ*•=/1`>8J4N«ÓbÓ†5¼ñUÛ™žÍƒuD–Í›Gxø§GøÞU<…v°Õu½e\йYP® ’R꘨Îúêf h„À™ZH-Y$ˆ­œ§¨¼SÆ× ò§~»®ZÃc>‘ÓÓ8;@0E ÕºlI™˜XG½¶†ãgº|ì¿Âçþǽ5qY‚ª¬>ü= `^ÛæzM¬©‚o~õ.¶oŒ91Ý¥ƒ§š îk÷üœÙnF»ëû¹}²ìáë’ J®˜®w´Š3.Ïž8ÀäñYΜÈ9qt–Éã³øæ,s3–Ȥ+.×–D/Û:Îg?ñ^~ÿŸÝB]Úì?x”§Ÿ=ÊáÉ*)6%+z ÄžZMX¿aÆÇùÔ_=ÈÝ?: bpêB‰$Z¢«úÂa± ¿Ôäwlæ]ozòù=¬¾~çÖqîyè =q˜­#‹bâ ‹Ò÷sftE™Ñhα©^ýòËøõW¼ˆ(Î)òx!U GNLó§ÿõ.fó5»üö U"‰P—ƒ‰˜X7ʇßûÞý¦ë¹ÿÑç¸÷ûOòÈ)~úô³ &l¢›;"E³iãžxj_þ?sóîÍÄ‘ïPJ¨EW]ëDZ–’"vUYù9î­ëÐÔõµØùNðÙb¹íÆ|ákpr²Ãºá”4sÜÿè 6¬kÖƒÏ| taA+ùî®=Æá„¯ÛRÑÅu…ûV1Í "õh…)ñ#—€’'‰…Më¼õµ×pû+wrää,>q”¿üƽìÝû ›6oÖãšÄêäÑ'NptªÉ¥ Å"2ǯڹ˜çÉ­ôÝDžI_ƒ_´}=ïzÓË8~l†4¶¸ÂqÅæß»ÿA~ô“}T“ bªi­„üÊA¾aŠúY¤L†Ãƒ.hEÇÌTªÚ•ë1x±%§¨œ|„Š#­xv\2Ê?yÝ‹øÌ¾‡nº’cS3ýñ\áŒ`ú ³­}p®'Æ3çuAr¡jM—'ú—sA¨éÙœûâÀŸßÇgîcllœKGkÔ†C¬iO·xhïaN5aËÄ(±„½¦±ejf–÷î¾–5:ª¡XC¯Ú/(ïùå`Õ2Øe+*¨ÇJÌ[^w wÞÿSŽMͰuÃhß5ä ùy뀤Рꇊœ÷‘TÍ¢g‚¥Ùî±iýëèΜà©C“Ëö1o}ÝNTç=‘@´Ôÿ‹±h’ô*w€ö™t]qƒ*)Ð[¡v0 žËvŒsË Wñ…;§;òú, Pðù*^×/±€NæVv+r®eÎëÿbBƇàDZ£'˜žfÛÖm Œ3¶|šÁØÑ-egÅåÊ™™.•¼Å3‡–RŒ5ëÈ*Å"¨z®×¤šX^vÍfÞÿ¶]ܲû² Jk°ªAmUBÿTGÃÊöú+a¥*äékB7˜#Âi1ßÙÃèH…ߺý:Ú*ØJ‚ëeô®fbÝp™ K)~8EŒçš+Öó»ï¾™‡Ÿ>ÅúúRB£=Ýb÷5[ûÇïË/[Ã{ÞübF×oì×í«†Ù}Ýf"5¨z¼XŒ*⃺×cÞ÷†›¨Ö ’Téâ93ÕæÊKêÔÓ¤/ÝÈÞþ¦ÝlÚ<Ä‘ãǦšÌv3š³stº†áªi‘F•Í›wpýÕ[xÕ®Ki V˘ÓÏ KNN±È íö<©ã9YS­œ''[TcËî‰APúo,C\¶ð9Ý^N¡>´úñJ­Y‹–’°~ž ‡¬Pò¼X>Û1†8‰Pãqš‘åJž b ¶Ä* 5$‘!‰â Æc5!!òÊlÖ+}ë¢,ËBEÊækQõý¦ªV»M+ïÑn[Ú¼UZTë£Ôat¸†- põŒ,Û–éPÐCÄssmŸÎ¹ùÒáÕ `ïä,¿sçq†«5>rÛ×U躂ŠQ¼Ä$¤¼âû¹oH»i€j)¬ÚãJîPVôŠª4K3D¢E).‰ š+D>8ºrü…Ê|ñ³E9†A]†7#¯n¡¢«H=Š– 8 ‘ʼ^-“ý S=Çûï>ÊÉYØóöKV‡†Öj5l­Æƒ9|âÇ“´Ú³¤6¢KŒs¢¨/OJæ‚æe1:Ÿ—«AôÉò°M.G5G5 oŠÒ—å÷¡š ýžua\ÍÃ{¾?6Ô:fÁ·ú€DŠñdW_ö‚JÙe¤xcÄ’k2"¥æ´Z]ÜáGÕ•ã„Öêh FW„»³ÜóWw’;Ÿžamã"àè±Tyß5á‡æRþà‘Œ¹ž–q!°ÈMŒ7iàM­„hb<*®S)›_Õ„†^ãðÆ’™ÕQzyTP5HùÆ1á+Æ#VQ+¡‡ÓøÐ¼KðÁóŒZ)çW6»ÒúĬŒÈ"@3,•HQ#ˆÚ€é[ü¡À3å?ñB¤á]ѥʵÄV<|ê'³|é@Áö:»ÆW/€Ô ׎Wîål¯y¾u¸Ãî9œӽ2è(¨Çâq%IâŒâ¼)Á.ðVËß™xbQD5+ü°*Sóóy´+"§…æ,Ó0>bpEQ"†#‚WŨb4d *J'´Ä¨"¥;!X¡(‘²Ë"°[È2/Áã1¦ü´SÄõPº8Íq¥&Ìv3þÕ'ù̾[ U#®[cW„Uç˜õu>ÿÈ þò‰i¶¬çøL‡uVxën¿j Cð9ØÎõój(¥;)3ƒ~ëž9KÖ¾4oøRû$ ª£µJÏYÔD$ÖK ”I?°‹Œø>ÿZ”…DëðNÁ¬hÿžFB{LÙØµ´»yQ,S_F1ãÂî"`B£±RePK|ûP“¿x|–}Ý„‰´àL§`Ǩðñ—ŽpI£¾:PÌ‚TØ{ºÇïÜyœ^RåE#Ÿ þy^wÅ »6TØPŠ µH¨¦ÅÙ@Y< íÜÑEh掹Û™í.º‘ ëÇØ`TÈðjq@ìAK Ðà=ˆ„Ÿ©ò²üw¹B$e¯€,÷ÌfŽ©Üs¤éÏ™`0ꦠj«¤6šå÷•)d^É eªSðØd¿yªÃS­& ¶ ¥L¶zœ™›ãnÝÄí[«+r_çZ€Ë@^þ×þŸÞs„‘ÁAõ@ñõ²œã§§Ø6Úà’Ñ„QS0CZâúæ2Ït7§Õ.˜Ê 3½œãEW,°X&wøxa‡©á¶ –[7VÙµ±A5É@óp[¦L‘`¹* ŠÁ)$êPòàºl…væyäè,÷LÁãG[8=K¯š”Õm¼ä FJ%©F¬©:ƪ†Ó˜ÁÄP]²¯V³Åiq|¦Ç±Óíp.I•‘jDj ]ï9ÜióŽKj|è%ÃÔ’xõp(.WâØpªçøäOs×þ&W†…ÇeŠ×Ó˜™^ΑîÊP¶0žI¡©­ÀŸ…Ý_ÐÆp`.Ç䎛7¦¼o×/^S!ÁkÈ?ÄKȱÅâ±®Uä”§f”/ÿì4_Ù;ÍÏ£—X&* w.”aÊ£¡—;Ú…Òë4—eã×¼²Ìã¬m€‘*ÕÜÑH"ÃñÉ3 UùäkÙ9ƒËaþ\8EÕá­‹ãH+âã{&Ù{bŽáj “Æt½§†')qoÄõÈËÎéØ*j+4LØX³gè ¸²©6ÎWιc«¸zÓÏÑs¬µ9o¿vLJ#Mð *‚ƒQOŽÁ8‡59˜˜»ŸËùƒ=SöµuK#‰×£§ñ9‡¾${1Y*gU®âzguÕUú㥠jrÚF‘–ðLsŽõ£Ã|ú–Qv'¨ïâ%YŠ87xPã‘¢‰š11S-å“Nó­Ã&RC%žï¹ª^ˆÑÒ í]ïûÖ¯;JÓoŸ…ùo¨'hd9>Ó¡×iò®Â?¿e4ÁiE%'÷e†j-_Ü×äÓ{ŽàjclkR8|7Xâ\éÒÏž«ÀJl‰ãë’¾¼‰p6úåoÃønÎA_aÒõxõ|äúñRó•L2”d…^¡UßËTùÛýs|ùïr´¥-)5íö_‰—J¸·H(ó®EB%¶¤&À Jj`8™.éPS°Y3¹Ò.´?þ±¹œw^žò/w­¡‘Š"t9;S—ŒÔ÷e|ôÁi*q•1Ûë~P¡Z…ÁØR¯EŒš‚Ó>XïT§Çl¡äyÄ™N±¬`ÎÞÛâý/zøJ®àöÍ–îZO@,Vñ¯þ’^IxLõwí=Í÷œœuÌIXIJšQ©3Q‰Øfs®uÃuÆ«1—7<몖$N––úê™ëÁñ¹.{›ÂOŽ5yø¨ã„SÚ’’·›¼ÿWR~w÷0V\!Ä;¾q°Ã¿þá*q•švÙæÚ kÙ>^粚°e8eMÍ” Ù‚ ÌrÏ\§Ã\Ëñ@fºÊÞ™Œã3=Nvϵ–³…³}ÐòŠ ·®µlZ׌³®Œ~þâð¾ð˜$)yRÏÏ'[LkÄd'g¦«t»!#HÓC©0 ëc¶ÆŒõ/¼ùEX_–ûs1%àÉé÷>Ûå»›üìt†-rÓ¿¶µ®œbxè”ç÷¿;Éa/ U#~{Byó¦:—®­”Áo2¯ºÀž ËÔ'Ðé<;Ûe.Žep¤éû{ hAÄÐ@ʆ¶ŒÕöæ <jtÉuÖçE%SH¼ÇHV4ÑÒ"Ëý*u9fk1ý¿F‘’\ŸŸ£Š‚›A) ìœå3OõøOO ƒ]þÛ«†Ø>VÇáyç]3ܱÿ8ï¹| ¿yy•—o ·W´Ä•(oæ¨ € Ú<Ð’eõêK>Dɱ˜E  ö:‡b½[fu¦¼$®x|  ìê,`õô} ?` yy×Îj^^O´óí6e“jØ>XªVïûmDúÝ AïC…ëbçpVPI£‹pùxƒ?jx†ÓY>ñÀ >óTʧF¾ýLÎûóæ«7òÇ»*¬iT)´‡Õ/åÒÂbg@ãpï½t¦´:/•  ®Ä;M™òRh™B«:Äd&Á!$(*ysq qS>\ 5%ˆ8/s¾¦–òO³À œ@•>Ù£}x5ÁQ‰.pz^ÀdäÄüÞwŽóƒ£]þö×ÖðÖ»'Ù5ùÏ·_ÍXÅ¢¾f‰HÄ–ŸUÜ| š” “,Ã?û^M°€¼”EBP-ŸóåÞ¬8\Y¤ 9ttÕÒq?@°%hìÊ ~tETЭ.¯¤£¸E&.guêH)™rÌ>Ç+8)Yê"&‰•ûòq¾´g?3’ðúú4ï»ùjÆ*‚ú!ÑdÁ.c®•Eì¬,Ï?«$¥k x X£¦tŸŠÁ¨”J·d‚»³ó ÞE4ç®>—x½á4@·óÚ¿)*ꌖþXñZ6/‰½¨&Wº§Dø6%t{†,ŠÈ»Ž‘z„d9Æ*™1X‰B¬só^J·¨à{ Hn~úocûXðó,Wš -uÒç !p¬Ë›jŽÆ&¡;¥Lÿ{q`ªAö¦´(u¨ZLBcŽÈÅ¢H(ç/ü×\V;7¾«Lø“ n‘ u.8ªÕf@ÿ ?’ŠÅ\NIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/openmolar.svg0000644000175000017500000006424212670542725024260 0ustar neilneil00000000000000 image/svg+xml openmolar-1.0.15-gd81f9e5/src/openmolar/resources/private.png0000644000175000017500000000677312033133562023714 0ustar neilneil00000000000000‰PNG  IHDRd'ù.í–sRGB®ÎébKGDûùG” F_ pHYs  šœtIMEÙ $)«ÍtEXtCommentCreated with GIMPW VIDAThÞíš{tTÕ½Ç?ûÌ;“dò$ˆ„÷›@€@‚Ò(°tá­Š®[dÙÊ-…ë«UëÕåjW}´]·Ú{k«µBE¸jkñÁ;¨BxBH¸‘„$yÎd™™³ïsr’! %µKníüþ™™uöÙgŸýý=¾¿ïá÷åK"öÿÆ”ÈD‰X ‹$b€ªŠ¿ë|Æ„— tLXLõ¦¯ç^…ÛkÃåµa5wðÜŠ—¿þ€\hHeíožÅ×a¡#hÂjòñΓkˆ¶zn꺎WŽeÛá<¤ä™{_ù爷?YŠÓƒD"ÌW|ÓÁظ·)ˆr1cÔ‰¯)¡´z$Î8¼~ n¯vŸ ·Ï†Ûk£ÍcÇã³!%¤%×3}ä ²GžúÒ‹òùMì;= ß¾ýO7ŒVw4•‡"PA ¦(Ájî¸î=PzaU—ÓðúMÜ’|‰9ãŠIˆií? þ€‰ç6­¥¹ÝTÑH@蟇+$ï–ÏüÉxâ®W1(»"s¨| A#‚PZHO½@jBÃÍ+ÜRÐØGáñÙ´¹c’FgÏn\G³ËËÅoÖ<ÙÐëÞ ï­fiþ ©Óµ@ Þúd¯­}’„è¶þRÝ0ˆFgBèA&Dا!`öœÈ%?ëS¦øÛ#eüÐr6<òv‹«ÙG”ÅÛï9<|f<VLF?I±-4´&p¶6ƒ²šá”פS×”J«+¡¨ Œ»ÊÜ ‡¸?o CyøÑ†Ç8\>)äzBêï|â‹q¡oBrWîvŒ²šLžÝ¸Ž«m !ð:]W „Pivűëè\î¾õãþòî§‹è›ÔI-8DƒÀ¾Ó3¾ 1­½†t“3–«m‰494¶Å“?õ/ ÁãžXÿ8'*Ç‚ÀÈo×äÎiELYBJüUŒ†¯ï¸›C“µ©%±6·~OÁÌBe±ò?F›'!c‡ã«~ª¥ê®ç¿ðÞjŒÌÔ :noAµ«M©í ʲ„!/’’EÓ÷ög5ûÂ%¥`ü°rý÷ö#sQ¥!,TVÿ÷Oô¹A2(±Ä˜šœJÎB„.b2ø¹3;ôÌ`PÁ(‚zÚ0;´|Þe/ô¯\nIÔÖä™{^Ád ÖîµqÇÔ½,|h¯žë;í»wnæpù$­·€¬á¥úµh››âshsÇ …DH¸?oKØ;l9¸€³µ™:H“ÒËxc×rÚÜ18=v®´$ášôñ†–ß8 RÂ骑چ…B:1¶‰ñC+zŒÝqäV½W¨XMŒr€“_Œ¡­=FK Bhž†ö !¸uü!Œ† ¥Fõ(ÈÊ<ƒ#Ê¥“_Ф?Ëd„R\1‘íÅóBéHJ_þ;†¥Ôé×íVKs â©¡-ž–öX><¸@¦–æì zËU‡½•)™g®·¸bxuû½H)C{&áýƒù-ßK­Þ --&Å4’>°r¡aÕWwCHpû”=ÆU]Ìþ3Ù$Rª!9ä<©ñWxÿ@¾Vƒ:‹'UÁÒœÝäŒ>†Ãî¢ôÂpæO:@QIR*t†ÓìqÅú³‚ª*ˆZ 6›ü! 5{uë --J2U³`òþ°µz;Ìì9‘˲,NUÂåê‘r@’–t‰8{-¯MçRsr(mKÁªüw{É&S øÍšƒÈ.ö)@QØ-^lÑV7Sß¹csÿÃ]Çç »éŽFƒŸ¹ã‡ùß‹CybýãÝGÈ3Ÿ¾û¿ÚÜvJªFë)¦3†~¾ê&g”éóŒ|^÷؃g²t0@0³[,UƒµfC@ßÌßíüÕ ƒ¢yiå‹a´µêò`}ý)ZÜqaóõÆsÆcn»ŽÏÑ×eñôÊ”eé¤ÀlôñóUÏÝJlT;S¨Ö)Ú{ ÑÏN=4°·$'l‘B‘l=”LJoÇå³s©q•õiÝ&—H k—lÐù~Õå4\[Xü{~FwÛZ<_ФŒ`\Z‰Ú\!UU!¨*zø ’Šºt6ï[¨H ,}“øn בsxjãU“¶ I¤&^a€£‰mGn¥úJš>~avQøfŸÉÒ£räàó¤Ä5öXûéêú÷1i•Œz®×wüøpߘ²³Éã€T^º…úæ¤0¾í˜Ùvt~X "„ìêÕ%,›µ›¥9»õ!E%3Q¥Q¿aêðRæM<ÔçB¶ÏïâùRòo‹ßº¶ëAJE§à&“ƒAå×[Wèi5-¹žEÓ‹Ârû7¯!¨Õ¥Ä˜F~ÿðuMÌÓaá×[ïÓkÑ”ÌRnI¾¤ß¬r,WZ’t!ñÚÚÒIëõîhn «Å>¿™Ï˧ðÒ{² ë3O/ê_„”TWFz3­[Hâì-T—[©kЕsQ5ä|¼ü×ìϾ¡KÔBƤUöªÈ†Î[ <›ÕåôŠÊ’{ú<“P¥¢³ )3Êz‰îöÂÊyuÛ Êk2Ir4rÿü˜ É:ëùÁ ½Ùä'ÁÔú•½»7z€Qq!¹!Vp­m;’§¢‚TX”Ý7Í«oI¦öê@mƒ!5¾‘}D“ÙàgùìmDÛÜ8ìNl&/“¯‘0®µØ¨v~¸ü5þ‘ÌØÅŒ²‘tñ|ƒ!Ö)߈í;=]c¡¼g6ûtìýx3…oÎÚÉ ÄË Œk c`mŸÑd³øX‘÷!_wÓÙ}"7¬­ïéü5“ªà¡…ogoÃå"Éq}š7cÔÉfÿ,fì<ûª ÚæÂ`P1(ArÇé÷d×ëÄ#vc&ü¾|ÙìŠÅç7c3{±š}½²–ˆ}…ßË¿"vs,òßÞ ‹$b@¾&ö=Á^y’¡þIEND®B`‚openmolar-1.0.15-gd81f9e5/src/openmolar/resources/resources.qrc0000644000175000017500000000477613021601763024257 0ustar neilneil00000000000000 icons/mail_new.png icons/schedule_active.png icons/pencil.png icons/expand.svg icons/contract.svg icons/wikipedia.png icons/action.png icons/memos.png icons/lower_implant.svg icons/upper_implant.svg icons/database.png openmolar.svg appt_ov.png newlogo_launchpadSize.png newlogo.png icons/chain-broken.png icons/chain.png private.png nhs_scot.png icons/number1.png icons/Speaker_Icon.svg icons/logo.png icons/widelogo.png icons/agt_back.png icons/agt_family.png icons/agt_forward.png icons/agt_home.png icons/agt_reload.png icons/back.png icons/button_ok.png icons/down.png icons/up.png icons/eraser.png icons/exit.png icons/gohome.png icons/home.png icons/kaddressbook.png icons/karm.png icons/kdmconfig.png icons/kfm_home.png icons/month.png icons/save_all.png icons/search.png icons/vcalendar.png icons/txt.png icons/schedule.png icons/vcard.png icons/ps.png icons/kfm.png icons/add_user.png icons/pin.png icons/settings.png openmolar-1.0.15-gd81f9e5/src/openmolar/resources/schema.sql0000644000175000017500000012532313023776357023525 0ustar neilneil00000000000000-- MySQL dump 10.15 Distrib 10.0.28-MariaDB, for debian-linux-gnu (x86_64) -- -- Host: localhost Database: localhost -- ------------------------------------------------------ -- Server version 10.0.28-MariaDB-2 /*!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 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 `aday` -- DROP TABLE IF EXISTS `aday`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `aday` ( `adate` date NOT NULL DEFAULT '0000-00-00', `apptix` smallint(6) NOT NULL DEFAULT '0', `start` smallint(6) DEFAULT NULL, `end` smallint(6) DEFAULT NULL, `flag` tinyint(4) DEFAULT NULL, `memo` char(30) DEFAULT NULL, PRIMARY KEY (`adate`,`apptix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `appt_prefs` -- DROP TABLE IF EXISTS `appt_prefs`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `appt_prefs` ( `serialno` int(11) NOT NULL DEFAULT '0', `recall_active` tinyint(1) NOT NULL DEFAULT '1', `recdent_period` int(11) DEFAULT NULL, `recdent` date DEFAULT NULL, `rechyg_period` int(11) DEFAULT NULL, `rechyg` date DEFAULT NULL, `recall_method` enum('post','sms','email','tel') DEFAULT NULL, `sms_reminders` tinyint(1) NOT NULL DEFAULT '0', `no_combined_appts` tinyint(1) NOT NULL DEFAULT '0', `note` varchar(120) DEFAULT NULL, PRIMARY KEY (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `apr` -- DROP TABLE IF EXISTS `apr`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `apr` ( `serialno` int(11) NOT NULL DEFAULT '0', `aprix` tinyint(4) NOT NULL DEFAULT '0', `practix` smallint(6) DEFAULT NULL, `code0` char(8) DEFAULT NULL, `code1` char(8) DEFAULT NULL, `code2` char(8) DEFAULT NULL, `note` char(20) DEFAULT NULL, `adate` date DEFAULT NULL, `atime` smallint(6) DEFAULT NULL, `length` smallint(6) DEFAULT NULL, `flag0` tinyint(4) DEFAULT NULL, `flag1` tinyint(4) DEFAULT NULL, `flag2` tinyint(4) DEFAULT NULL, `flag3` tinyint(4) DEFAULT NULL, `flag4` tinyint(4) DEFAULT NULL, `datespec` char(10) DEFAULT NULL, PRIMARY KEY (`serialno`,`aprix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `aslot` -- DROP TABLE IF EXISTS `aslot`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `aslot` ( `adate` date DEFAULT NULL, `apptix` smallint(6) DEFAULT NULL, `start` smallint(6) DEFAULT NULL, `end` smallint(6) DEFAULT NULL, `name` char(30) DEFAULT NULL, `serialno` int(11) DEFAULT NULL, `code0` char(8) DEFAULT NULL, `code1` char(8) DEFAULT NULL, `code2` char(8) DEFAULT NULL, `note` char(20) DEFAULT NULL, `flag0` tinyint(4) DEFAULT NULL, `flag1` tinyint(4) DEFAULT NULL, `flag2` tinyint(4) DEFAULT NULL, `flag3` tinyint(4) DEFAULT NULL, `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, KEY `adate` (`adate`,`apptix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `bpe` -- DROP TABLE IF EXISTS `bpe`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `bpe` ( `serialno` int(11) NOT NULL DEFAULT '0', `bpedate` date NOT NULL DEFAULT '0000-00-00', `bpe` char(6) DEFAULT NULL, PRIMARY KEY (`serialno`,`bpedate`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `calendar` -- DROP TABLE IF EXISTS `calendar`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `calendar` ( `adate` date NOT NULL, `memo` char(30) DEFAULT NULL, PRIMARY KEY (`adate`), KEY `adate` (`adate`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `calldurr` -- DROP TABLE IF EXISTS `calldurr`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `calldurr` ( `stn` tinyint(4) NOT NULL DEFAULT '0', `serialno` int(11) DEFAULT NULL, PRIMARY KEY (`stn`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `cashbook` -- DROP TABLE IF EXISTS `cashbook`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `cashbook` ( `id` int(11) NOT NULL AUTO_INCREMENT, `cbdate` date DEFAULT NULL, `ref` char(10) DEFAULT NULL, `linkid` int(11) DEFAULT NULL, `descr` varchar(32) DEFAULT NULL, `code` tinyint(3) unsigned DEFAULT NULL, `dntid` smallint(6) DEFAULT NULL, `amt` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `date` (`cbdate`), KEY `ref` (`ref`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `cbcodes` -- DROP TABLE IF EXISTS `cbcodes`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `cbcodes` ( `code` tinyint(3) unsigned DEFAULT NULL, `flag` tinyint(4) DEFAULT NULL, `descr` char(20) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `claims` -- DROP TABLE IF EXISTS `claims`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `claims` ( `courseno` int(11) NOT NULL DEFAULT '0', `serialno` int(11) NOT NULL DEFAULT '0', `dntix` smallint(6) DEFAULT '0', `proddate` date DEFAULT NULL, `startdate` date DEFAULT NULL, `cmpldate` date DEFAULT NULL, `regdate` date DEFAULT NULL, `authdate` date DEFAULT NULL, `dob` date DEFAULT NULL, `sname` varchar(30) DEFAULT NULL, `fname` varchar(30) DEFAULT NULL, `addr1` varchar(30) DEFAULT NULL, `addr2` varchar(30) DEFAULT NULL, `addr3` varchar(30) DEFAULT NULL, `pcde` varchar(30) DEFAULT NULL, `nhsno` varchar(30) DEFAULT NULL, `prevsname` varchar(30) DEFAULT NULL, `exempttext` varchar(50) DEFAULT NULL, `i0` int(11) DEFAULT '0', `i1` int(11) DEFAULT '0', `i2` int(11) DEFAULT '0', `i3` int(11) DEFAULT '0', `i4` int(11) DEFAULT '0', `f0` tinyint(3) unsigned DEFAULT '0', `f1` tinyint(3) unsigned DEFAULT '0', `f2` tinyint(3) unsigned DEFAULT '0', `f3` tinyint(3) unsigned DEFAULT '0', `f4` tinyint(3) unsigned DEFAULT '0', `f5` tinyint(3) unsigned DEFAULT '0', `f6` tinyint(3) unsigned DEFAULT '0', `f7` tinyint(3) unsigned DEFAULT '0', `f8` tinyint(3) unsigned DEFAULT '0', `f9` tinyint(3) unsigned DEFAULT '0', `submstatus` tinyint(4) DEFAULT '0', `submcount` tinyint(4) DEFAULT '0', `submno` int(11) DEFAULT '0', `claimdata` blob, `trtdata` blob, `archdate` date DEFAULT NULL, `town` varchar(30) DEFAULT NULL, `county` varchar(30) DEFAULT NULL, `regtype` tinyint(3) unsigned DEFAULT '0', PRIMARY KEY (`serialno`,`courseno`), KEY `dentist` (`dntix`), KEY `patient` (`sname`,`fname`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `clinical_memos` -- DROP TABLE IF EXISTS `clinical_memos`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `clinical_memos` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) unsigned NOT NULL, `author` char(8) DEFAULT NULL, `datestamp` datetime NOT NULL, `hidden` tinyint(1) NOT NULL DEFAULT '0', `synopsis` text, PRIMARY KEY (`ix`), KEY `serialno` (`serialno`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `clinician_dates` -- DROP TABLE IF EXISTS `clinician_dates`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `clinician_dates` ( `clinician_ix` smallint(5) unsigned NOT NULL, `start_date` date NOT NULL, `end_date` date DEFAULT NULL, `date_comments` varchar(255) DEFAULT NULL, KEY `clinician_ix` (`clinician_ix`), CONSTRAINT `clinician_dates_ibfk_1` FOREIGN KEY (`clinician_ix`) REFERENCES `clinicians` (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `clinicians` -- DROP TABLE IF EXISTS `clinicians`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `clinicians` ( `ix` smallint(5) unsigned NOT NULL AUTO_INCREMENT, `initials` char(5) NOT NULL, `name` varchar(64) NOT NULL, `formal_name` varchar(128) DEFAULT NULL, `qualifications` varchar(64) DEFAULT NULL, `type` smallint(5) NOT NULL DEFAULT '1', `speciality` varchar(64) DEFAULT NULL, `data` varchar(255) DEFAULT NULL, `comments` varchar(255) DEFAULT NULL, PRIMARY KEY (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `currtrtmt2` -- DROP TABLE IF EXISTS `currtrtmt2`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `currtrtmt2` ( `courseno` int(11) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) DEFAULT NULL, `examt` varchar(10) NOT NULL DEFAULT '', `examd` date DEFAULT NULL, `accd` date DEFAULT NULL, `cmpd` date DEFAULT NULL, `xraypl` varchar(56) NOT NULL DEFAULT '', `periopl` varchar(56) NOT NULL DEFAULT '', `anaespl` varchar(56) NOT NULL DEFAULT '', `otherpl` varchar(56) NOT NULL DEFAULT '', `ndupl` varchar(56) NOT NULL DEFAULT '', `ndlpl` varchar(56) NOT NULL DEFAULT '', `odupl` varchar(56) NOT NULL DEFAULT '', `odlpl` varchar(56) NOT NULL DEFAULT '', `custompl` varchar(56) NOT NULL DEFAULT '', `ur8pl` varchar(34) NOT NULL DEFAULT '', `ur7pl` varchar(34) NOT NULL DEFAULT '', `ur6pl` varchar(34) NOT NULL DEFAULT '', `ur5pl` varchar(34) NOT NULL DEFAULT '', `ur4pl` varchar(34) NOT NULL DEFAULT '', `ur3pl` varchar(34) NOT NULL DEFAULT '', `ur2pl` varchar(34) NOT NULL DEFAULT '', `ur1pl` varchar(34) NOT NULL DEFAULT '', `ul1pl` varchar(34) NOT NULL DEFAULT '', `ul2pl` varchar(34) NOT NULL DEFAULT '', `ul3pl` varchar(34) NOT NULL DEFAULT '', `ul4pl` varchar(34) NOT NULL DEFAULT '', `ul5pl` varchar(34) NOT NULL DEFAULT '', `ul6pl` varchar(34) NOT NULL DEFAULT '', `ul7pl` varchar(34) NOT NULL DEFAULT '', `ul8pl` varchar(34) NOT NULL DEFAULT '', `ll8pl` varchar(34) NOT NULL DEFAULT '', `ll7pl` varchar(34) NOT NULL DEFAULT '', `ll6pl` varchar(34) NOT NULL DEFAULT '', `ll5pl` varchar(34) NOT NULL DEFAULT '', `ll4pl` varchar(34) NOT NULL DEFAULT '', `ll3pl` varchar(34) NOT NULL DEFAULT '', `ll2pl` varchar(34) NOT NULL DEFAULT '', `ll1pl` varchar(34) NOT NULL DEFAULT '', `lr1pl` varchar(34) NOT NULL DEFAULT '', `lr2pl` varchar(34) NOT NULL DEFAULT '', `lr3pl` varchar(34) NOT NULL DEFAULT '', `lr4pl` varchar(34) NOT NULL DEFAULT '', `lr5pl` varchar(34) NOT NULL DEFAULT '', `lr6pl` varchar(34) NOT NULL DEFAULT '', `lr7pl` varchar(34) NOT NULL DEFAULT '', `lr8pl` varchar(34) NOT NULL DEFAULT '', `ur8cmp` varchar(34) NOT NULL DEFAULT '', `ur7cmp` varchar(34) NOT NULL DEFAULT '', `ur6cmp` varchar(34) NOT NULL DEFAULT '', `ur5cmp` varchar(34) NOT NULL DEFAULT '', `ur4cmp` varchar(34) NOT NULL DEFAULT '', `ur3cmp` varchar(34) NOT NULL DEFAULT '', `ur2cmp` varchar(34) NOT NULL DEFAULT '', `ur1cmp` varchar(34) NOT NULL DEFAULT '', `ul1cmp` varchar(34) NOT NULL DEFAULT '', `ul2cmp` varchar(34) NOT NULL DEFAULT '', `ul3cmp` varchar(34) NOT NULL DEFAULT '', `ul4cmp` varchar(34) NOT NULL DEFAULT '', `ul5cmp` varchar(34) NOT NULL DEFAULT '', `ul6cmp` varchar(34) NOT NULL DEFAULT '', `ul7cmp` varchar(34) NOT NULL DEFAULT '', `ul8cmp` varchar(34) NOT NULL DEFAULT '', `ll8cmp` varchar(34) NOT NULL DEFAULT '', `ll7cmp` varchar(34) NOT NULL DEFAULT '', `ll6cmp` varchar(34) NOT NULL DEFAULT '', `ll5cmp` varchar(34) NOT NULL DEFAULT '', `ll4cmp` varchar(34) NOT NULL DEFAULT '', `ll3cmp` varchar(34) NOT NULL DEFAULT '', `ll2cmp` varchar(34) NOT NULL DEFAULT '', `ll1cmp` varchar(34) NOT NULL DEFAULT '', `lr1cmp` varchar(34) NOT NULL DEFAULT '', `lr2cmp` varchar(34) NOT NULL DEFAULT '', `lr3cmp` varchar(34) NOT NULL DEFAULT '', `lr4cmp` varchar(34) NOT NULL DEFAULT '', `lr5cmp` varchar(34) NOT NULL DEFAULT '', `lr6cmp` varchar(34) NOT NULL DEFAULT '', `lr7cmp` varchar(34) NOT NULL DEFAULT '', `lr8cmp` varchar(34) NOT NULL DEFAULT '', `xraycmp` varchar(56) NOT NULL DEFAULT '', `periocmp` varchar(56) NOT NULL DEFAULT '', `anaescmp` varchar(56) NOT NULL DEFAULT '', `othercmp` varchar(56) NOT NULL DEFAULT '', `nducmp` varchar(56) NOT NULL DEFAULT '', `ndlcmp` varchar(56) NOT NULL DEFAULT '', `oducmp` varchar(56) NOT NULL DEFAULT '', `odlcmp` varchar(56) NOT NULL DEFAULT '', `customcmp` varchar(56) NOT NULL DEFAULT '', `ftr` tinyint(1) DEFAULT '0', PRIMARY KEY (`courseno`), KEY `serialno` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `daybook` -- DROP TABLE IF EXISTS `daybook`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `daybook` ( `date` date DEFAULT NULL, `serialno` int(11) DEFAULT NULL, `coursetype` char(1) DEFAULT NULL, `dntid` smallint(6) DEFAULT NULL, `trtid` smallint(6) DEFAULT NULL, `diagn` varchar(56) DEFAULT NULL, `perio` varchar(56) DEFAULT NULL, `anaes` varchar(56) DEFAULT NULL, `misc` varchar(56) DEFAULT NULL, `ndu` varchar(56) DEFAULT NULL, `ndl` varchar(56) DEFAULT NULL, `odu` varchar(56) DEFAULT NULL, `odl` varchar(56) DEFAULT NULL, `other` varchar(56) DEFAULT NULL, `chart` blob, `feesa` int(11) DEFAULT NULL, `feesb` int(11) DEFAULT NULL, `feesc` int(11) DEFAULT NULL, `id` int(10) unsigned NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`), KEY `date` (`date`), KEY `serialno` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `daybook_link` -- DROP TABLE IF EXISTS `daybook_link`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `daybook_link` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `daybook_id` int(11) DEFAULT NULL, `tx_hash` char(40) NOT NULL, PRIMARY KEY (`ix`), KEY `daybook_id` (`daybook_id`), KEY `daybook_id_index` (`tx_hash`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `diary_link` -- DROP TABLE IF EXISTS `diary_link`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `diary_link` ( `clinician_ix` smallint(5) unsigned NOT NULL, `apptix` smallint(5) unsigned NOT NULL, KEY `clinician_ix` (`clinician_ix`), CONSTRAINT `diary_link_ibfk_1` FOREIGN KEY (`clinician_ix`) REFERENCES `clinicians` (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `docsimported` -- DROP TABLE IF EXISTS `docsimported`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `docsimported` ( `ix` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) unsigned NOT NULL DEFAULT '0', `datatype` varchar(60) NOT NULL DEFAULT 'application/octet-stream', `name` varchar(120) NOT NULL DEFAULT '', `size` bigint(20) unsigned NOT NULL DEFAULT '1024', `filedate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `importime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `docsimporteddata` -- DROP TABLE IF EXISTS `docsimporteddata`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `docsimporteddata` ( `ix` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `masterid` mediumint(8) unsigned NOT NULL DEFAULT '0', `filedata` blob NOT NULL, PRIMARY KEY (`ix`), KEY `master_idx` (`masterid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `est_link2` -- DROP TABLE IF EXISTS `est_link2`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `est_link2` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `est_id` int(11) DEFAULT NULL, `tx_hash` char(40) NOT NULL, `completed` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`ix`), KEY `est_id` (`est_id`), KEY `est_link2_hash_index` (`tx_hash`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `est_logger` -- DROP TABLE IF EXISTS `est_logger`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `est_logger` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `courseno` int(11) unsigned NOT NULL, `est_data` mediumtext NOT NULL, `operator` varchar(16) NOT NULL, `time_stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `exemptions` -- DROP TABLE IF EXISTS `exemptions`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `exemptions` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) unsigned NOT NULL, `exemption` varchar(10) DEFAULT NULL, `exempttext` varchar(50) DEFAULT NULL, `datestamp` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`ix`), KEY `serialno` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `families` -- DROP TABLE IF EXISTS `families`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `families` ( `familyno` int(11) NOT NULL, `head` int(11) DEFAULT NULL, PRIMARY KEY (`familyno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `feescales` -- DROP TABLE IF EXISTS `feescales`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `feescales` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `in_use` tinyint(1) NOT NULL DEFAULT '0', `priority` int(8) DEFAULT NULL, `comment` varchar(255) NOT NULL DEFAULT 'unnamed feescale', `xml_data` mediumtext NOT NULL, PRIMARY KEY (`ix`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `feetable_key` -- DROP TABLE IF EXISTS `feetable_key`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `feetable_key` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `tablename` char(30) DEFAULT NULL, `categories` char(30) DEFAULT NULL, `description` char(60) DEFAULT NULL, `startdate` date DEFAULT NULL, `enddate` date DEFAULT NULL, `feecoltypes` tinytext, `in_use` tinyint(1) NOT NULL DEFAULT '1', `display_order` smallint(6) DEFAULT NULL, `data` mediumtext, PRIMARY KEY (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `formatted_notes` -- DROP TABLE IF EXISTS `formatted_notes`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `formatted_notes` ( `ix` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) DEFAULT NULL, `ndate` date DEFAULT NULL, `op1` varchar(8) DEFAULT NULL, `op2` varchar(8) DEFAULT NULL, `ntype` varchar(32) DEFAULT NULL, `note` varchar(80) DEFAULT NULL, `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, UNIQUE KEY `ix` (`ix`), KEY `formatted_notes_serialno_index` (`serialno`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `forum` -- DROP TABLE IF EXISTS `forum`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `forum` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `inits` char(5) DEFAULT NULL, `fdate` datetime DEFAULT NULL, `topic` char(30) DEFAULT NULL, `comment` text NOT NULL, `open` tinyint(1) NOT NULL DEFAULT '1', `recipient` char(8) DEFAULT NULL, PRIMARY KEY (`ix`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `forum_important` -- DROP TABLE IF EXISTS `forum_important`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `forum_important` ( `important_id` int(10) unsigned NOT NULL, `op` char(8) DEFAULT NULL, KEY `important_id` (`important_id`), KEY `forum_important_index` (`op`), CONSTRAINT `forum_important_ibfk_1` FOREIGN KEY (`important_id`) REFERENCES `forum` (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `forum_parents` -- DROP TABLE IF EXISTS `forum_parents`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `forum_parents` ( `parent_id` int(10) unsigned NOT NULL, `child_id` int(10) unsigned NOT NULL, UNIQUE KEY `child_id` (`child_id`,`parent_id`), KEY `parent_id` (`parent_id`), CONSTRAINT `forum_parents_ibfk_1` FOREIGN KEY (`parent_id`) REFERENCES `forum` (`ix`), CONSTRAINT `forum_parents_ibfk_2` FOREIGN KEY (`child_id`) REFERENCES `forum` (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `forumread` -- DROP TABLE IF EXISTS `forumread`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `forumread` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL, `op` char(8) DEFAULT NULL, `readdate` datetime NOT NULL, PRIMARY KEY (`ix`), KEY `id` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `locations` -- DROP TABLE IF EXISTS `locations`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `locations` ( `serialno` int(11) NOT NULL, `location` char(1) DEFAULT NULL, PRIMARY KEY (`serialno`), CONSTRAINT `locations_ibfk_1` FOREIGN KEY (`serialno`) REFERENCES `new_patients` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `medforms` -- DROP TABLE IF EXISTS `medforms`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `medforms` ( `pt_sno` int(11) unsigned NOT NULL, `chk_date` date NOT NULL, PRIMARY KEY (`pt_sno`,`chk_date`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `medhist` -- DROP TABLE IF EXISTS `medhist`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `medhist` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `pt_sno` int(11) NOT NULL, `medication_comments` varchar(200) NOT NULL DEFAULT '', `warning_card` varchar(60) NOT NULL DEFAULT '', `allergies` varchar(60) NOT NULL DEFAULT '', `respiratory` varchar(60) NOT NULL DEFAULT '', `heart` varchar(60) NOT NULL DEFAULT '', `diabetes` varchar(60) NOT NULL DEFAULT '', `arthritis` varchar(60) NOT NULL DEFAULT '', `bleeding` varchar(60) NOT NULL DEFAULT '', `infectious_disease` varchar(60) NOT NULL DEFAULT '', `endocarditis` varchar(60) NOT NULL DEFAULT '', `liver` varchar(60) NOT NULL DEFAULT '', `anaesthetic` varchar(60) NOT NULL DEFAULT '', `joint_replacement` varchar(60) NOT NULL DEFAULT '', `heart_surgery` varchar(60) NOT NULL DEFAULT '', `brain_surgery` varchar(60) NOT NULL DEFAULT '', `hospital` varchar(60) NOT NULL DEFAULT '', `cjd` varchar(60) NOT NULL DEFAULT '', `other` varchar(60) NOT NULL DEFAULT '', `alert` tinyint(1) NOT NULL DEFAULT '0', `chkdate` date DEFAULT NULL, `modified_by` varchar(20) NOT NULL DEFAULT 'unknown', `time_stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`ix`), KEY `pt_sno` (`pt_sno`), CONSTRAINT `medhist_ibfk_1` FOREIGN KEY (`pt_sno`) REFERENCES `new_patients` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `medication_link` -- DROP TABLE IF EXISTS `medication_link`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `medication_link` ( `med_ix` int(11) unsigned NOT NULL, `med` varchar(120) DEFAULT NULL, `details` varchar(60) DEFAULT NULL, KEY `med_ix` (`med_ix`), KEY `med` (`med`), CONSTRAINT `medication_link_ibfk_1` FOREIGN KEY (`med_ix`) REFERENCES `medhist` (`ix`), CONSTRAINT `medication_link_ibfk_2` FOREIGN KEY (`med`) REFERENCES `medications` (`medication`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `medications` -- DROP TABLE IF EXISTS `medications`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `medications` ( `medication` varchar(120) NOT NULL, `warning` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`medication`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `new_patients` -- DROP TABLE IF EXISTS `new_patients`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `new_patients` ( `serialno` int(11) NOT NULL, `sname` varchar(30) DEFAULT NULL, `fname` varchar(30) DEFAULT NULL, `title` varchar(30) DEFAULT NULL, `sex` char(1) DEFAULT NULL, `dob` date DEFAULT NULL, `addr1` varchar(30) NOT NULL DEFAULT '', `addr2` varchar(30) NOT NULL DEFAULT '', `addr3` varchar(30) NOT NULL DEFAULT '', `town` varchar(30) NOT NULL DEFAULT '', `county` varchar(30) NOT NULL DEFAULT '', `pcde` varchar(30) NOT NULL DEFAULT '', `tel1` varchar(30) NOT NULL DEFAULT '', `tel2` varchar(30) NOT NULL DEFAULT '', `mobile` varchar(30) NOT NULL DEFAULT '', `fax` varchar(30) NOT NULL DEFAULT '', `email1` varchar(50) NOT NULL DEFAULT '', `email2` varchar(50) NOT NULL DEFAULT '', `occup` varchar(30) NOT NULL DEFAULT '', `nhsno` varchar(30) NOT NULL DEFAULT '', `cnfd` date DEFAULT NULL, `cset` varchar(10) DEFAULT NULL, `dnt1` smallint(6) DEFAULT NULL, `dnt2` smallint(6) DEFAULT NULL, `courseno0` int(11) DEFAULT NULL, `billdate` date DEFAULT NULL, `billct` tinyint(3) unsigned DEFAULT NULL, `billtype` char(1) DEFAULT NULL, `familyno` int(11) DEFAULT NULL, `memo` varchar(255) NOT NULL DEFAULT '', `status` varchar(30) NOT NULL DEFAULT '', PRIMARY KEY (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `newdocsprinted` -- DROP TABLE IF EXISTS `newdocsprinted`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `newdocsprinted` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) DEFAULT NULL, `printdate` date DEFAULT NULL, `docname` varchar(64) DEFAULT NULL, `docversion` smallint(6) DEFAULT NULL, `data` blob, PRIMARY KEY (`ix`), KEY `newdocsprinted_serialno_index` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `newestimates` -- DROP TABLE IF EXISTS `newestimates`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `newestimates` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) NOT NULL, `courseno` int(10) unsigned DEFAULT NULL, `category` char(12) DEFAULT NULL, `type` char(20) DEFAULT NULL, `number` tinyint(4) DEFAULT NULL, `itemcode` char(5) DEFAULT NULL, `description` char(50) DEFAULT NULL, `fee` int(11) DEFAULT NULL, `ptfee` int(11) DEFAULT NULL, `csetype` char(5) DEFAULT NULL, `feescale` char(1) DEFAULT NULL, `dent` tinyint(1) DEFAULT NULL, `completed` tinyint(1) DEFAULT NULL, `carriedover` tinyint(1) DEFAULT NULL, `linked` tinyint(1) DEFAULT NULL, `modified_by` varchar(20) NOT NULL, `time_stamp` datetime NOT NULL, PRIMARY KEY (`ix`), KEY `serialno` (`serialno`), KEY `courseno` (`courseno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `newfeetable` -- DROP TABLE IF EXISTS `newfeetable`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `newfeetable` ( `ix` smallint(5) unsigned NOT NULL AUTO_INCREMENT, `section` smallint(6) DEFAULT NULL, `USERCODE` char(14) DEFAULT NULL, `code` char(8) DEFAULT NULL, `oldcode` char(12) DEFAULT NULL, `regulation` char(50) DEFAULT NULL, `max_per_course` char(25) DEFAULT NULL, `description` char(60) DEFAULT NULL, `description1` char(60) DEFAULT NULL, `NF08` int(11) DEFAULT NULL, `NF08_pt` int(11) DEFAULT NULL, `PFA` int(11) DEFAULT NULL, `NF09` int(11) DEFAULT NULL, `NF09_pt` int(11) DEFAULT NULL, PRIMARY KEY (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `opid` -- DROP TABLE IF EXISTS `opid`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `opid` ( `id` char(5) NOT NULL, `serialno` int(11) DEFAULT NULL, `active` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`), KEY `fk_opid_serialno` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `patient_dates` -- DROP TABLE IF EXISTS `patient_dates`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `patient_dates` ( `pt_sno` int(11) NOT NULL, `pd0` date DEFAULT NULL, `pd1` date DEFAULT NULL, `pd2` date DEFAULT NULL, `pd3` date DEFAULT NULL, `pd4` date DEFAULT NULL, `pd5` date DEFAULT NULL, `pd6` date DEFAULT NULL, `pd7` date DEFAULT NULL, `pd8` date DEFAULT NULL, `pd9` date DEFAULT NULL, `pd10` date DEFAULT NULL, `pd11` date DEFAULT NULL, `pd12` date DEFAULT NULL, `pd13` date DEFAULT NULL, `pd14` date DEFAULT NULL, UNIQUE KEY `pt_sno` (`pt_sno`), CONSTRAINT `patient_dates_ibfk_1` FOREIGN KEY (`pt_sno`) REFERENCES `new_patients` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `patient_money` -- DROP TABLE IF EXISTS `patient_money`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `patient_money` ( `pt_sno` int(11) NOT NULL, `money0` int(11) NOT NULL DEFAULT '0', `money1` int(11) NOT NULL DEFAULT '0', `money2` int(11) NOT NULL DEFAULT '0', `money3` int(11) NOT NULL DEFAULT '0', `money4` int(11) NOT NULL DEFAULT '0', `money5` int(11) NOT NULL DEFAULT '0', `money6` int(11) NOT NULL DEFAULT '0', `money7` int(11) NOT NULL DEFAULT '0', `money8` int(11) NOT NULL DEFAULT '0', `money9` int(11) NOT NULL DEFAULT '0', `money10` int(11) NOT NULL DEFAULT '0', `money11` int(11) NOT NULL DEFAULT '0', UNIQUE KEY `pt_sno` (`pt_sno`), CONSTRAINT `patient_money_ibfk_1` FOREIGN KEY (`pt_sno`) REFERENCES `new_patients` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `patient_nhs` -- DROP TABLE IF EXISTS `patient_nhs`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `patient_nhs` ( `pt_sno` int(11) NOT NULL, `initaccept` date DEFAULT NULL, `lastreaccept` date DEFAULT NULL, `lastclaim` date DEFAULT NULL, `expiry` date DEFAULT NULL, `cstatus` tinyint(3) unsigned DEFAULT NULL, `transfer` date DEFAULT NULL, `pstatus` tinyint(3) unsigned DEFAULT NULL, UNIQUE KEY `pt_sno` (`pt_sno`), CONSTRAINT `patient_nhs_ibfk_1` FOREIGN KEY (`pt_sno`) REFERENCES `new_patients` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `perio` -- DROP TABLE IF EXISTS `perio`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `perio` ( `serialno` int(11) NOT NULL DEFAULT '0', `chartdate` date NOT NULL DEFAULT '0000-00-00', `bpe` char(6) DEFAULT NULL, `chartdata` blob, `flag` tinyint(3) unsigned DEFAULT NULL, PRIMARY KEY (`serialno`,`chartdate`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `phrasebook` -- DROP TABLE IF EXISTS `phrasebook`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `phrasebook` ( `clinician_id` int(10) unsigned NOT NULL, `phrases` text, PRIMARY KEY (`clinician_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `plandata` -- DROP TABLE IF EXISTS `plandata`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `plandata` ( `serialno` int(11) NOT NULL, `plantype` char(4) DEFAULT NULL, `band` char(1) DEFAULT NULL, `grosschg` int(11) DEFAULT NULL, `discount` int(11) DEFAULT NULL, `netchg` int(11) DEFAULT NULL, `catcode` char(1) DEFAULT NULL, `planjoin` date DEFAULT NULL, `regno` int(11) DEFAULT NULL, PRIMARY KEY (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `previous_snames` -- DROP TABLE IF EXISTS `previous_snames`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `previous_snames` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) DEFAULT NULL, `psn` char(40) NOT NULL, PRIMARY KEY (`ix`), KEY `serialno` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `pseudonyms` -- DROP TABLE IF EXISTS `pseudonyms`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `pseudonyms` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) NOT NULL, `alt_sname` varchar(30) DEFAULT NULL, `alt_fname` varchar(30) DEFAULT NULL, `comment` varchar(60) DEFAULT NULL, `search_include` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`ix`), UNIQUE KEY `serialno` (`serialno`,`alt_sname`,`alt_fname`), CONSTRAINT `pseudonyms_ibfk_1` FOREIGN KEY (`serialno`) REFERENCES `new_patients` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `ptmemos` -- DROP TABLE IF EXISTS `ptmemos`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `ptmemos` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `serialno` int(11) DEFAULT NULL, `enabled` tinyint(1) DEFAULT NULL, `author` char(5) DEFAULT NULL, `type` char(5) DEFAULT NULL, `mdate` datetime DEFAULT NULL, `expiredate` date DEFAULT NULL, `message` char(200) DEFAULT NULL, `open` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `records_in_use` -- DROP TABLE IF EXISTS `records_in_use`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `records_in_use` ( `pt_sno` int(11) unsigned NOT NULL, `surgery_number` smallint(6) DEFAULT NULL, `op` varchar(24) DEFAULT NULL, `locked` tinyint(1) NOT NULL DEFAULT '0', `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `referral_centres` -- DROP TABLE IF EXISTS `referral_centres`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `referral_centres` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `description` char(64) NOT NULL DEFAULT 'referral', `greeting` char(64) NOT NULL DEFAULT 'Dear Sir/Madam', `addr1` char(64) NOT NULL DEFAULT '', `addr2` char(64) NOT NULL DEFAULT '', `addr3` char(64) NOT NULL DEFAULT '', `addr4` char(64) NOT NULL DEFAULT '', `addr5` char(64) NOT NULL DEFAULT '', `addr6` char(64) NOT NULL DEFAULT '', `addr7` char(64) NOT NULL DEFAULT '', PRIMARY KEY (`ix`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `settings` -- DROP TABLE IF EXISTS `settings`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `settings` ( `ix` int(10) unsigned NOT NULL AUTO_INCREMENT, `value` varchar(128) DEFAULT NULL, `data` text, `hostname` varchar(128) DEFAULT NULL, `station` char(20) DEFAULT NULL, `user` char(20) DEFAULT NULL, `modified_by` varchar(20) NOT NULL, `time_stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`ix`), KEY `value` (`value`) ) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `standard_letters` -- DROP TABLE IF EXISTS `standard_letters`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `standard_letters` ( `ix` int(11) unsigned NOT NULL AUTO_INCREMENT, `description` char(64) NOT NULL, `body_text` text NOT NULL, `footer` text, PRIMARY KEY (`ix`), UNIQUE KEY `description` (`description`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_chart` -- DROP TABLE IF EXISTS `static_chart`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `static_chart` ( `pt_sno` int(11) NOT NULL, `dent0` tinyint(4) DEFAULT NULL, `dent1` tinyint(4) DEFAULT NULL, `dent2` tinyint(4) DEFAULT NULL, `dent3` tinyint(4) DEFAULT NULL, `ur1` varchar(34) NOT NULL DEFAULT '', `ur2` varchar(34) NOT NULL DEFAULT '', `ur3` varchar(34) NOT NULL DEFAULT '', `ur4` varchar(34) NOT NULL DEFAULT '', `ur5` varchar(34) NOT NULL DEFAULT '', `ur6` varchar(34) NOT NULL DEFAULT '', `ur7` varchar(34) NOT NULL DEFAULT '', `ur8` varchar(34) NOT NULL DEFAULT '', `ul1` varchar(34) NOT NULL DEFAULT '', `ul2` varchar(34) NOT NULL DEFAULT '', `ul3` varchar(34) NOT NULL DEFAULT '', `ul4` varchar(34) NOT NULL DEFAULT '', `ul5` varchar(34) NOT NULL DEFAULT '', `ul6` varchar(34) NOT NULL DEFAULT '', `ul7` varchar(34) NOT NULL DEFAULT '', `ul8` varchar(34) NOT NULL DEFAULT '', `lr1` varchar(34) NOT NULL DEFAULT '', `lr2` varchar(34) NOT NULL DEFAULT '', `lr3` varchar(34) NOT NULL DEFAULT '', `lr4` varchar(34) NOT NULL DEFAULT '', `lr5` varchar(34) NOT NULL DEFAULT '', `lr6` varchar(34) NOT NULL DEFAULT '', `lr7` varchar(34) NOT NULL DEFAULT '', `lr8` varchar(34) NOT NULL DEFAULT '', `ll1` varchar(34) NOT NULL DEFAULT '', `ll2` varchar(34) NOT NULL DEFAULT '', `ll3` varchar(34) NOT NULL DEFAULT '', `ll4` varchar(34) NOT NULL DEFAULT '', `ll5` varchar(34) NOT NULL DEFAULT '', `ll6` varchar(34) NOT NULL DEFAULT '', `ll7` varchar(34) NOT NULL DEFAULT '', `ll8` varchar(34) NOT NULL DEFAULT '', UNIQUE KEY `pt_sno` (`pt_sno`), CONSTRAINT `static_chart_ibfk_1` FOREIGN KEY (`pt_sno`) REFERENCES `new_patients` (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `userdata` -- DROP TABLE IF EXISTS `userdata`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `userdata` ( `serialno` int(11) NOT NULL, `data` blob, PRIMARY KEY (`serialno`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; /*!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 2016-12-13 13:51:43 openmolar-1.0.15-gd81f9e5/src/openmolar/resources/style.css0000755000175000017500000000343012732227156023405 0ustar neilneil00000000000000/*-- stylesheet for openmolar - written by Neil Wallace --*/ body{background-color:#ffffff;} .ops{font-size:12pt;} .notes{font-size:13pt;} .highlighted-app{border:4px solid #ff0000; padding:3px;} /*-- DIVS --*/ div.center{text-align:center;} h1,h2,h3,h4,h5,h6{margin:3px;color:#4322a8;} h1{text-align:center;} .debt{color:red;} .ut_label{font-style:italic;color:#99ccff;} h3.red{color:red;} li.trt{color:blue;} /*-- UNORDERED LISTS --*/ ul{list-style:none;padding-left:0px;} ul.search-settings-list{list-style-type:disc;padding-left:10px;} li.about{list-style:none;color:blue;padding-left:0px} li.search-settings-item{list-style-type:disc;font-size:9pt} li.recep_note{font-size:9pt;list-style-type:none;padding-left:0px;background-color:#ffeedd;} li.agenda{font-size:9pt;list-style-type:disc} li.slot{font-size:9pt;list-style-type:disc;font-style:bold;color:red;background-color:#ffff66;} li.active_slot{font-size:11pt;list-style-type:circle;font-style:bold;color:red;background-color:#ffff00;} /* -- reception_notes -- */ .recep_date{font-size:9pt;font-style:bold;background-color:#eeeeee;} /*-- th and td --*/ table{width:100%;} .date{background-color:#ffeedd; width:20%} .ops{background-color:#dddddd; width:10%} .tx{background-color:#aaaaaa; width:20%} .notes{background-color:#dddddd; width:50%} .reception{background-color:#eeeeee;} .verbose{background-color:#ddeeff} table.yeartable{width:600pt;} .yearheader{font-size:16pt;background-color:#eeeeee;font-style:bold;text-align:center;} .bankholiday{font-size:14pt;background-color:#eeeeee;font-style:bold;font-style:italic;text-align:center;} .yearops{background-color:#eeeeff;font-size:12pt;text-align:center;} .yearmemo{background-color:#eeeeff;font-style:italic;font-size:12pt;} th{border-style:solid; background-color:#4322a8; color:#ffffff;} openmolar-1.0.15-gd81f9e5/src/openmolar/resources/triggers.sql0000644000175000017500000001045313023776357024110 0ustar neilneil00000000000000-- MySQL dump 10.15 Distrib 10.0.28-MariaDB, for debian-linux-gnu (x86_64) -- -- Host: localhost Database: localhost -- ------------------------------------------------------ -- Server version 10.0.28-MariaDB-2 /*!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 utf8mb4 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!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 */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`academy`@`localhost`*/ /*!50003 TRIGGER aday_update_trigger BEFORE UPDATE ON aday FOR EACH ROW BEGIN DECLARE clash_count INT; IF NEW.flag = 0 THEN SET clash_count=(SELECT count(*) FROM aslot WHERE apptix=NEW.apptix AND adate=NEW.adate AND serialno!=0); IF clash_count>0 THEN SIGNAL SQLSTATE '45000' SET message_text="existing appointments prevent you blocking this day"; END IF; ELSE SET clash_count=(SELECT count(*) FROM aslot WHERE apptix=NEW.apptix AND adate=NEW.adate AND (startNEW.end)); IF clash_count>0 THEN SIGNAL SQLSTATE '45000' SET message_text="existing appointments prevent you changing this day"; END IF; END IF; END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = '' */ ; DELIMITER ;; /*!50003 CREATE*/ /*!50017 DEFINER=`academy`@`localhost`*/ /*!50003 TRIGGER aslot_trigger BEFORE INSERT ON aslot FOR EACH ROW BEGIN DECLARE appt_count INT; if NEW.start = NEW.end then SET appt_count = 0; else SET appt_count = ( SELECT count(*) from aslot where adate=NEW.adate and start>=NEW.start and start0 then signal sqlstate '45000' set message_text = "this appointment clashes with one (or more) already in the database"; end if; END */;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!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 */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; -- Dump completed on 2016-12-13 13:51:43 openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/0000755000175000017500000000000013024000134022624 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/__init__.py0000755000175000017500000000312412710144046024754 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/database_updater_thread.py0000644000175000017500000001350112710144046030031 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from PyQt5 import QtCore from openmolar import connect from openmolar.dbtools import schema_version LOGGER = logging.getLogger("openmolar") class UpdateError(Exception): ''' A custom exception. If this is thrown the db will be rolled back ''' pass class DatabaseUpdaterThread(QtCore.QThread): ''' A class to update the openmolar database ''' UpdateError = UpdateError progress_signal = QtCore.pyqtSignal(object, object) completed_signal = QtCore.pyqtSignal(object) def __init__(self, parent=None): super(DatabaseUpdaterThread, self).__init__(parent) self.message = "upating database" self.db = None self.cursor = None def run(self): ''' function should be re-implemented ''' raise self.update_error( "DatabaseUpdateThread.run must be re-implemented") def completeSig(self, message): ''' let the application know that the updater has finished ''' self.completed_signal.emit(message) def progressSig(self, val, message=""): ''' emits a signal showhing how we are proceeding. val is a number between 0 and 100 ''' if message != "": self.message = message self.progress_signal.emit(val, self.message) self.process_events() def process_events(self): ''' if attached to a gui.. update the interface, else pass quietly ''' try: QtCore.QCoreApplication.instance().processEvents() except AttributeError: pass def connect(self): if self.db is None: self.db = connect.connect() self.db.autocommit(False) self.cursor = self.db.cursor() def rollback(self): self.db.rollback() self.db.close() self.db=None def commit(self): self.db.commit() self.db.close() self.db=None def update_schema_version(self, compatible_versions, message): schema_version.update(compatible_versions, message) def execute_statements(self, sql_strings): ''' execute the above commands NOTE - this function may fail depending on the mysql permissions in place ''' self.connect() try: i, commandNo = 0, len(sql_strings) for sql_string in sql_strings: try: self.cursor.execute(sql_string) except connect.GeneralError as exc: if 1091 in exc.args: LOGGER.warning( "statement:'%s' threw column removal error - " "continuing on assumption column is already " "removed", sql_string.replace("\n", " ")) elif 1060 in exc.args: LOGGER.warning( "statement:'%s' threw column addition error - " "continuing on assumption column is already " "added", sql_string.replace("\n", " ")) elif 1061 in exc.args: LOGGER.warning( "statement:'%s' threw dupliacte key error - " "continuing on assumption key is already " "added", sql_string.replace("\n", " ")) else: LOGGER.warning( "FAILURE in executing sql statement \n%s", sql_string) raise exc self.progressSig(2 + 70 * i / commandNo, "%s..." % sql_string[:10]) except Exception: LOGGER.exception("FAILURE in executing sql statements") raise self.UpdateError("couldn't execute all statements!") def force_stop(self): LOGGER.warning("forcing DatabaseUpdaterThread stop") if self.isRunning() and self.cursor is not None: # by changing this attribute, execute statements # should die and rollback after an attribute error. self.cursor = None if __name__ == "__main__": dbu = DatabaseUpdaterThread() dbu.run() openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/druglist.py0000644000175000017500000022546512710144046025065 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # DRUGLIST = [ '50:50 Ointment', 'Abacavir Sulphate', 'Abatacept', 'Abciximab', 'Abelcet', 'Abidec Multivitamin Drops', 'Abilify', 'Acamprosate Calcium', 'Acarbose', 'Accolate', 'Accupro', 'Accuretic', 'Acea', 'Acebutolol', 'Acebutolol Hydrochloride', 'Aceclofenac', 'Acemetacin', 'Acenocoumarol', 'Acepril', 'Acetazolamide', 'Acetic Acid Cough Linctus', 'Acetylcholine Chloride', 'Acetylcysteine', 'Acezide', 'Aciclovir', 'Aciclovir Sodium', 'Acipimox', 'Acitretin', 'Aclasta', 'Acnamino', 'Acnecide Gel', 'Acnecide Wash', 'Acnisal', 'Acnocin', 'Acrivastine', 'Actifed', 'Actilyse', 'Activated Charcoal/Magnesium Hydroxide', 'Actonel', 'Actonel Combi', 'Actonorm Gel', 'Actos', 'Actrapid', 'Acular', 'Acwy Vax', 'Adalat', 'Adalimumab', 'Adapalene', 'Adartrel', 'Adcal', 'Adcal D3', 'Adcortyl', 'Adefovir Dipivoxil', 'Adenocor', 'Adenosine', 'Adenuric', 'Adipine', 'Adizem', 'Adrenaline', 'Adrenaline Acid Tartrate', 'Advagraf', 'Aerobec', 'Afinitor', 'Aggrastat', 'Agomelatine', 'Agrippal', 'Aknemycin Plus', 'Aldactide', 'Aldactone', 'Aldara', 'Aldesleukin', 'Aldioxa/Chloroxylenol', 'Alemtuzumab', 'Alendronate Sodium', 'Alendronate Sodium/Colecalciferol', 'Alfacalcidol', 'Alfentanil Hydrochloride', 'Alfuzosin Hydrochloride', 'Alimemazine Tartrate', 'Alimta', 'Aliskiren', 'Alitretinoin', 'Alkeran Injection', 'Alkeran Tablets', 'Allantoin/Coal Tar Extract/Hydrocortisone', 'Allantoin/Lidocaine', 'Allegron', 'Allopurinol', 'Almogran', 'Almond Oil/Arachis Oil/Camphor', 'Almotriptan Hydrogen Malate', 'Alomide', 'Alphaderm', 'Alphagan', 'Alphanine', 'Alphosyl Hc', 'Alprazolam', 'Alprostadil', 'Altacite Plus', 'Altargo', 'Alteplase', 'Alu-Cap Capsules', 'Aluminium Hydroxide', 'Aluminium Sulphate', 'Alverine', 'Amantadine Hydrochloride', 'Amaryl', 'Ambirix', 'Ambisome', 'Ambrisentan', 'Amias', 'Amikacin Sulphate', 'Amikin', 'Amilamont', 'Amiloride', 'Amiloride Hydrochloride', 'Amiloride/Furosemide', 'Amiloride/Hydrochlorothiazide', 'Aminophylline', 'Amiodarone', 'Amiodarone Hydrochloride', 'Amisulpride', 'Amitriptyline', 'Amlodipine', 'Amlodipine Besilate/Valsartan', 'Amlostin', 'Ammonia', 'Ammonia/Eucalyptus', 'Amorolfine Hydrochloride', 'Amoxicillin', 'Amoxil', 'Amoxil Injection', 'Amphocil', 'Amphotericin', 'Amphotericin Phospholipid Complex', 'Ampicillin', 'Ampicillin Sodium/Flucloxacillin Sodium', 'Amsacrine', 'Amsidine', 'Amylase/Lipase/Protease', 'Anabact', 'Anacal Rectal Ointment', 'Anadin Extra Soluble Tablets', 'Anadin Extra Tablets', 'Anadin Ibuprofen', 'Anadin Original', 'Anadin Paracetamol', 'Anafranil', 'Anapen', 'Anastrozole', 'Ancotil', 'Anectine', 'Anexate', 'Angeliq', 'Angettes', 'Angiox', 'Angitil', 'Anidulafungin', 'Anise Oil/Menthol/Capsicum Tincture', 'Antabuse', 'Antazoline/Xylometazoline', 'Antepsin', 'Anthisan', 'Anthisan Bite And Sting Cream', 'Anugesic-Hc Cream', 'Anugesic-Hc Suppository', 'Anusol Cream', 'Anusol Ointment', 'Anusol Plus Hc', 'Anusol Suppositories', 'Apidra', 'Apo-Go', 'Apomorphine Hydrochloride', 'Apraclonidine Hydrochloride', 'Aprepitant', 'Apresoline', 'Aprinox', 'Aprovel', 'Aptivus', 'Aquadrate', 'Aranesp', 'Arava', 'Arcoxia', 'Aredia', 'Argipressin', 'Aricept', 'Arimidex', 'Aripiprazole', 'Arixtra', 'Aromasin', 'Arpicolin', 'Arsenic Trioxide', 'Artelac', 'Artemether/Lumefantrine', 'Arthrotec', 'Arythmol', 'Arzerra', 'Asacol', 'Asasantin', 'Ascorbic Acid/Amylmetacresol/Dichlorobenzyl Alcohol', 'Ascorbic Acid/Phenylephrine/Paracetamol', 'Asmabec', 'Asmanex', 'Asmasal', 'Aspirin', 'Aspirin/Dipyridamole', 'Aspirin/Paracetamol Dispersible Tablets', 'Aspro Clear', 'Atarax', 'Atazanavir Sulphate', 'Atenolol', 'Atenolol/Chlortalidone', 'Atenolol/Nifedipine', 'Ativan', 'Atorvastatin', 'Atosiban Acetate', 'Atovaquone/Proguanil Hydrochloride', 'Atracurium Besilate', 'Atriance', 'Atripla', 'Atropine', 'Atropine Sulphate', 'Atrovent', 'Augmentin', 'Augmentin Intravenous', 'Augmentin-Duo', 'Avamys', 'Avastin', 'Avaxim', 'Avelox', 'Avloclor', 'Avodart', 'Avonex', 'Axid', 'Axsain', 'Azactam', 'Azathioprine', 'Azelaic Acid', 'Azelastine Hydrochloride', 'Azilect', 'Azithromycin', 'Azithromycin Dihydrate', 'Azopt', 'Aztreonam', 'Baby Meltus Cough Linctus', 'Baclofen', 'Bactroban', 'Balneum Bath Oil', 'Balneum Plus Bath Oil', 'Balneum Plus Cream', 'Balsalazide Disodium', 'Bambec', 'Bambuterol', 'Baraclude', 'Baratol', 'Basiliximab', 'Baxan', 'Bazetham', 'Bazuka', 'Bcg (Connaught Strain)', 'Bcg (Tice Strain)', 'Beclazone', 'Beclometasone Dipropionate', 'Becodisks', 'Beconase', 'Bedranol', 'Beechams', 'Begrivac', 'Belimumab', 'Bemiparin', 'Bemiparin Sodium', 'Benadryl', 'Benadryl Skin Allergy Relief Cream', 'Bendroflumethiazide', 'Benefix', 'Benlysta', 'Benylin', 'Benzalkonium Chloride', 'Benzocaine 1% Spray', 'Benzoyl Peroxide', 'Benzydamine Cream', 'Benzydamine Mouthwash', 'Benzydamine Oral Spray', 'Benzylpenicillin Sodium', 'Beta-Adalat', 'Beta-Cardone', 'Beta-Prograne', 'Betacap', 'Betadine Dry Powder Spray', 'Betaferon', 'Betagan', 'Betahistine Dihydrochloride', 'Betaloc', 'Betamethasone Dipropionate', 'Betamethasone Valerate', 'Betaxolol Hydrochloride', 'Bethanechol Chloride', 'Betim', 'Betnovate', 'Betoptic', 'Bettamousse', 'Bevacizumab', 'Bexarotene', 'Bezafibrate', 'Bezalip', 'Bi-Carzem', 'Bicalutamide', 'Bicnu', 'Bimatoprost', 'Binovum', 'Biorphen', 'Bisacodyl Suppositories', 'Bisacodyl Tablets', 'Bismuth Subsalicylate', 'Bisodol Indigestion Relief Tablets', 'Bisoprolol Fumarate', 'Bivalirudin', 'Bleo-Kyowa', 'Bleomycin Sulphate', 'Blistex Relief Cream', 'Bondronat', 'Bonefos', 'Bonjela', 'Bonviva', 'Bortezomib', 'Bosentan', 'Botox', 'Brevinor', 'Brevoxyl Cream', 'Bricanyl', 'Bridion', 'Brilique', 'Brimonidine Tartrate', 'Brinzolamide', 'Brochlor', 'Broflex', 'Bromocriptine Mesilate', 'Brufen', 'Buccastem', 'Budesonide', 'Bumetanide', 'Bupivacaine Hydrochloride', 'Bupropion Hydrochloride', 'Burinex', 'Burneze Spray', 'Buscopan', 'Buserelin Acetate', 'Busilvex', 'Buspar', 'Buspirone', 'Busulfan', 'Buttercup Max Strength Sore Throat Lozenge', 'Buttercup Syrup', 'Bydureon', 'Byetta', 'Cabaser', 'Cabergoline', 'Cabren', 'Cacit', 'Caelyx', 'Calaband', 'Calceos', 'Calchan', 'Calcicard', 'Calcichew', 'Calcijex', 'Calcipotriol', 'Calcitonin (Salmon)', 'Calcitriol', 'Calcium Acetate', 'Calcium Carbonate Antacids', 'Calcium Carbonate Supplements', 'Calcium Folinate', 'Calcium Lactate', 'Calcium Levofolinate', 'Calcium Phosphate/Colecalciferol', 'Calcium-Sandoz Syrup', 'Calcold Six Plus', 'Calcort', 'Calfovit D3', 'Calmurid Hc', 'Calpol', 'Calprofen', 'Camcolit', 'Campto', 'Cancidas', 'Candesartan', 'Canesten', 'Canusal', 'Capecitabine', 'Capoten', 'Capozide', 'Capreomycin Sulphate', 'Caprin', 'Capsaicin', 'Captopril', 'Captopril/Hydrochlorothiazide', 'Carace Plus', 'Caramet', 'Carbamazepine', 'Carbetocin', 'Carbidopa Monohydrate/Levodopa', 'Carbidopa/Entacapone/Levodopa', 'Carbimazole', 'Carbo-Dome Cream', 'Carbocisteine', 'Carbomer', 'Carbomer Eye Drops', 'Carboplatin', 'Carboprost Trometamol', 'Cardene', 'Cardicor', 'Cardioplen', 'Cardioxane', 'Cardura', 'Carmellose Sodium', 'Carmustine', 'Casodex', 'Caspofungin Acetate', 'Catapres', 'Caverject', 'Cayston', 'Ceanel', 'Cedocard', 'Cefaclor Monohydrate', 'Cefadroxil Monohydrate', 'Cefalexin', 'Cefixime', 'Cefotaxime Sodium', 'Cefpodoxime Proxetil', 'Ceftazidime Pentahydrate', 'Ceftriaxone Sodium', 'Cefuroxime Axetil', 'Cefuroxime Sodium', 'Celance', 'Celebrex', 'Celecoxib', 'Celectol', 'Celevac Tablets', 'Celiprolol', 'Celiprolol Hydrochloride', 'Cellcept', 'Cellcept Powder', 'Celluvisc', 'Celsentri', 'Ceplene', 'Ceporex', 'Cerazette', 'Certolizumab Pegol', 'Cervarix', 'Cetirizine Liquid', 'Cetirizine Tablets', 'Cetraben Bath Additive', 'Cetraben Emollient Cream', 'Cetrimide', 'Cetrimide/Benzalkonium Chloride', 'Cetrorelix Acetate', 'Cetrotide', 'Cetuximab', 'Cetylpyridinium Chloride Lozenges', 'Cetylpyridinium Chloride/Menthol', 'Champix', 'Chemydur', 'Chirocaine', 'Chlorambucil', 'Chloramphenicol', 'Chloramphenicol Sodium Succinate', 'Chlordiazepoxide', 'Chlordiazepoxide Hydrochloride', 'Chlorobutanol/Arachis Oil', 'Chlorobutanol/Lidocaine/Alcloxa/Cetrimide', 'Chlorocresol/Urea/Cetrimide/Dimeticone', 'Chloromycetin', 'Chloroquine', 'Chloroxylenol', 'Chlorphenamine Maleate', 'Chlorpromazine Hydrochloride', 'Chlortalidone', 'Cholestagel', 'Choline Salicylate', 'Choragon', 'Choriogonadotropin Alfa', 'Chorionic Gonadotrophin Human', 'Cialis', 'Cibral', 'Cicafem', 'Ciclesonide', 'Ciclosporin', 'Cidofovir', 'Cilastatin Sodium/Imipenem Monohydrate', 'Cilazapril', 'Cilest', 'Cilostazol', 'Cimetidine', 'Cimzia', 'Cinacalcet Hydrochloride', 'Cinchocaine', 'Cinnarizine', 'Cipralex', 'Cipramil', 'Cipramil Drops', 'Ciprofibrate', 'Ciprofloxacin', 'Ciprofloxacin Hydrochloride', 'Ciprofloxacin Lactate', 'Ciproxin Injection', 'Ciproxin Suspension', 'Ciproxin Tablets', 'Circadin', 'Cisatracurium Besilate', 'Cisplatin', 'Citalopram Hydrobromide', 'Citalopram Hydrochloride', 'Citanest', 'Citric Acid/Ipecacuanha', 'Cladribine', 'Claforan', 'Clairette', 'Clarelux', 'Clarie Xl', 'Clarithromycin', 'Clemastine', 'Clenil Modulite', 'Clexane', 'Climagest', 'Climaval', 'Climesse', 'Clindamycin Hydrochloride', 'Clindamycin Phosphate', 'Clioquinol/Flumetasone Pivalate', 'Clobazam', 'Clobetasol Propionate', 'Clobetasone Butyrate', 'Clofarabine', 'Clomethiazole', 'Clomid', 'Clomifene Citrate', 'Clomipramine', 'Clonazepam', 'Clonidine', 'Clopamide/Pindolol', 'Clopidogrel', 'Clopixol Acuphase', 'Clopixol Conc', 'Clopixol Tablets', 'Clotam', 'Clotrimazole', 'Clozapine', 'Clozaril', 'Co-Beneldopa', 'Co-Careldopa', 'Co-Danthramer', 'Co-Diovan', 'Co-Fluampicil', 'Co-Magaldrox', 'Co-Simalcite', 'Co-Trimoxazole', 'Co-Zidocapt', 'Coaprovel', 'Cobalin-H', 'Codeine/Paracetamol', 'Colazide', 'Colchicine', 'Colecalciferol/Calcium Carbonate', 'Colesevelam Hydrochloride', 'Colestid', 'Colestipol', 'Colestipol Hydrochloride', 'Colestyramine Anhydrous', 'Colifoam', 'Colistimethate Sodium', 'Colistin Sulphate', 'Colofac', 'Colomycin', 'Colomycin Injection', 'Colomycin Syrup', 'Colomycin Tablet', 'Colpermin Ibs Relief Capsules', 'Combigan', 'Combivent', 'Combivir', 'Combodart', 'Competact', 'Compound W', 'Comtess', 'Concerta Xl', 'Condyline', 'Conjugated Oestrogens', 'Copaxone', 'Copegus', 'Coracten', 'Cordarone X', 'Cordilox', 'Corgard', 'Corifollitropin Alfa', 'Cortisone Acetate', 'Cosmofer', 'Cosopt', 'Coversyl Arginine', 'Coversyl Arginine Plus', 'Cozaar', 'Cozaar-Comp', 'Cream Of Magnesia Tablets', 'Creon', 'Crestor', 'Crinone', 'Cromogen', 'Crotamiton', 'Cubicin', 'Cuprofen', 'Cuprofen Plus', 'Cutivate', 'Cyanocobalamin', 'Cyclizine Lactate', 'Cyclo-Progynova 2Mg', 'Cyclopentolate Hydrochloride', 'Cyclophosphamide Monohydrate', 'Cycloserine', 'Cyklokapron', 'Cymalon', 'Cymbalta', 'Cymevene', 'Cymex Cream', 'Cyproheptadine', 'Cyprostat', 'Cyproterone Acetate', 'Cyproterone Acetate/Ethinylestradiol', 'Cystrin', 'Cytamen', 'Cytarabine', 'Cytotec', 'D-Gam', 'Dabigatran Etexilate Mesilate', 'Dacarbazine Citrate', 'Daktacort', 'Daktarin Oral Gel', 'Dalacin', 'Dalacin C', 'Dalmane', 'Dalteparin', 'Danaparoid', 'Danazol', 'Dandrazol', 'Danol', 'Dantrium', 'Dantrolene Sodium', 'Daptomycin', 'Daraprim', 'Darbepoetin Alfa', 'Darifenacin Hydrobromide', 'Darunavir Ethanolate', 'Dasatinib', 'Daunorubicin Hydrochloride Citrate', 'Daunoxome', 'Daxas', 'Day Nurse', 'Day Nurse Capsules', 'Ddavp', 'Deca-Durabolin', 'Decapeptyl', 'Defanac', 'Deferasirox', 'Deferiprone', 'Deflazacort', 'Deltacortril', 'Deltastab', 'Demeclocycline Hydrochloride', 'Denosumab', 'Denzapine', 'Depakote', 'Depixol', 'Depixol Tablets', 'Depo-Medrone', 'Depo-Medrone With Lidocaine', 'Depo-Provera', 'Depocyte', 'Dequacaine', 'Dequadin', 'Dequalinium', 'Derbac M', 'Dermalo Bath Emollient', 'Dermamist', 'Dermax', 'Dermidex', 'Dermovate', 'Deseril', 'Desferal', 'Desferrioxamine Mesilate', 'Desloratadine', 'Desmomelt', 'Desmopressin Acetate', 'Desmospray', 'Desmotabs', 'Desogestrel', 'Destolit', 'Detrunorm', 'Detrusitol', 'Dexamethasone', 'Dexibuprofen', 'Dexketoprofen Trometamol', 'Dexomon', 'Dexrazoxane', 'Dexsol', 'Dextromethorphan', 'Dextromethorphan/Menthol', 'Dextromethorphan/Pseudoephedrine', 'Dhc Continus', 'Diamicron', 'Diamorphine', 'Diamox', 'Dianette', 'Diazemuls', 'Diazepam', 'Dichlorobenzyl Alcohol/Amylmetacresol', 'Diclofenac Diethylammonium', 'Diclofenac Epolamine', 'Diclofenac Potassium', 'Diclofenac Sodium', 'Diclofenac Sodium/Misoprostol', 'Dicloflex', 'Diclomax', 'Dicycloverine Hydrochloride', 'Dicynene', 'Didanosine', 'Didronel', 'Didronel Pmo', 'Diethylamine Salicylate', 'Differin', 'Difflam Cream', 'Difflam Solution', 'Difflam Spray', 'Diflucan', 'Digoxin', 'Dihydrocodeine Tartrate', 'Dilcardia', 'Dill Oil/Sodium Bicarbonate/Ginger', 'Diloxanide Furoate', 'Diltiazem', 'Diltiazem Hydrochloride', 'Dilzem', 'Dimeticone', 'Dinoprostone', 'Diocalm', 'Dioctyl', 'Dioderm', 'Dioralyte', 'Dioralyte Relief', 'Diovan', 'Dipentum', 'Diphenhydramine', 'Dipivefrine Hydrochloride', 'Diprivan', 'Diprobase Cream', 'Diprobase Ointment', 'Diprobath', 'Diprosalic', 'Diprosone', 'Dipyridamole', 'Disipal', 'Disodium Etidronate', 'Disodium Folinate', 'Disodium Pamidronate', 'Disopyramide', 'Disopyramide Phosphate', 'Disprin', 'Disprin Extra', 'Distaclor', 'Distamine', 'Distigmine Bromide', 'Distilled Witch Hazel', 'Disulfiram', 'Dithranol', 'Dithrocream', 'Ditropan', 'Diurexan', 'Dixarit', 'Do-Do Chesteze', 'Dobutamine Hydrochloride', 'Docetaxel', 'Docusate', 'Docusate Gel Enema', 'Docusate Sodium Ear Drops', 'Dolmatil', 'Domperidone', 'Domperidone Maleate', 'Dopamine', 'Dopamine Hydrochloride', 'Dopexamine', 'Doralese Tiltab', 'Doribax', 'Doripenem Monohydrate', 'Dornase Alfa', 'Dorzolamide Hydrochloride', 'Dorzolamide Hydrochloride/Timolol Maleate', 'Doublebase Bath Additive', 'Doublebase Gel', 'Doublebase Shower Gel', 'Doublebase Wash Gel', 'Dovobet', 'Dovonex', 'Dovonex Cream', 'Doxadura', 'Doxazosin', 'Doxazosin Mesilate', 'Doxorubicin Hydrochloride', 'Doxorubin', 'Doxycycline Hyclate', 'Doxycycline Monohydrate', 'Doxylamine/Pseudoephedrine/Dextromethorphan/Paracetamol', 'Doxylar', 'Dozic', 'Drapolene Cream', 'Dromadol', 'Dronedarone Hydrochloride', 'Drospirenone/Estradiol Hemihydrate', 'Drospirenone/Ethinylestradiol', 'Drotrecogin Alfa', 'Droxia', 'Duac', 'Dukoral', 'Dulcobalance', 'Dulcoease', 'Dulcolax Suppositories', 'Dulcolax Tablets', 'Duloxetine', 'Duloxetine Hydrochloride', 'Duodopa', 'Duofilm', 'Duotrav', 'Duovent', 'Dutasteride', 'Dydrogesterone/Estradiol', 'Dysport', 'E45 Cream', 'E45 Itch Relief Cream', 'Earex Ear Drops', 'Earex Plus', 'Easyhaler Beclometasone', 'Easyhaler Budesonide', 'Easyhaler Formoterol', 'Easyhaler Salbutamol', 'Ebixa', 'Ecalta', 'Eccoxolac', 'Econac', 'Econazole Nitrate', 'Ecopace', 'Eczmol', 'Edronax', 'Edrophonium Chloride', 'Efavirenz', 'Efcortesol', 'Efexor', 'Efient', 'Eflornithine Monohydrate Chloride', 'Efudix', 'Eldepryl', 'Electrolade', 'Eletriptan Hydrobromide', 'Elidel', 'Ellaone', 'Elleste Solo', 'Ellimans Universal Muscle Rub Lotion', 'Elocon', 'Elonva', 'Eloxatin', 'Eludril Mouthwash', 'Eludril Spray', 'Emadine', 'Emcor', 'Emedastine Difumarate', 'Emend', 'Emeside', 'Emflex', 'Emla', 'Emselex', 'Emtricitabine', 'Emtricitabine/Tenofovir Disoproxil Fumarate', 'Emtriva', 'Emulsiderm Emollient', 'Enalapril', 'Enalapril/Hydrochlorothiazide', 'Enbrel', 'Endoxana', 'Enfuvirtide', 'Engerix B', 'Eno', 'Enoxaparin', 'Enoxaparin Sodium', 'Entacapone', 'Entecavir Monohydrate', 'Entocort', 'Enzira', 'Epanutin Capsules', 'Epanutin Infatabs', 'Epanutin Ready Mixed Parenteral', 'Epanutin Suspension', 'Epaxal', 'Ephedrine Hydrochloride', 'Ephedrine Hydrochloride/Chlorphenamine', 'Ephedrine Nasal Drops', 'Epilim', 'Epinastine Hydrochloride', 'Epipen', 'Epirubicin Hydrochloride', 'Epival', 'Epivir', 'Eplerenone', 'Epoetin Alfa', 'Epoetin Beta', 'Epoprostenol', 'Eposin', 'Eprex', 'Eprosartan', 'Eprosartan Mesilate', 'Epsom Salts', 'Eptacog Alfa', 'Eptifibatide', 'Erbitux', 'Erdosteine', 'Erdotin', 'Ergometrine Maleate', 'Ergometrine Maleate/Oxytocin', 'Erlotinib Hydrochloride', 'Ertapenem Sodium', 'Eryacne 4', 'Erymax', 'Erythrocin', 'Erythromycin', 'Erythromycin Ethyl Succinate', 'Erythromycin Lactobionate', 'Erythromycin Stearate', 'Erythromycin/Isotretinoin', 'Erythromycin/Tretinoin', 'Erythromycin/Zinc Acetate', 'Erythroped', 'Escitalopram', 'Escitalopram Oxalate', 'Esmeron', 'Esmya', 'Esomeprazole Injection', 'Esomeprazole Tablets', 'Estracyt', 'Estraderm', 'Estradiol', 'Estradiol Hemihydrate', 'Estradiol Hemihydrate/Norethisterone Acetate', 'Estradiol Valerate', 'Estradiol Valerate/Medroxyprogesterone', 'Estradiol Valerate/Medroxyprogesterone Acetate', 'Estradiol Valerate/Norethisterone', 'Estradiol Valerate/Norgestrel', 'Estradiol/Estriol/Estrone', 'Estradiol/Levonorgestrel', 'Estradiol/Norethisterone Acetate', 'Estradot', 'Estramustine Sodium Phosphate', 'Estring', 'Estriol', 'Estropipate', 'Etamsylate', 'Etanercept', 'Ethanolamine', 'Ethinylestradiol', 'Ethinylestradiol/Etonogestrel', 'Ethinylestradiol/Gestodene', 'Ethinylestradiol/Levonorgestrel', 'Ethinylestradiol/Norelgestromin', 'Ethinylestradiol/Norethisterone', 'Ethinylestradiol/Norethisterone Acetate', 'Ethinylestradiol/Norgestimate', 'Ethosuximide', 'Etodolac', 'Etomidate', 'Etonogestrel', 'Etopophos', 'Etoposide', 'Etoposide Phosphate', 'Etoricoxib', 'Etravirine', 'Etynodiol Diacetate', 'Eucalyptus/Menthol/Cetylpyridinium Chloride', 'Eucalyptus/Terpineol/Methyl Salicylate/Menthol/Camphor', 'Eucalyptus/Thyme/Menthol', 'Eucalyptus/Turpentine/Levomenthol/Camphor', 'Eucalyptus/Turpentine/Methyl Salicylate/Menthol', 'Eucreas', 'Eumocream', 'Eumovate', 'Eurax', 'Eurax Hydrocortisone', 'Everolimus', 'Evista', 'Evoltra', 'Evorel', 'Evorel Conti', 'Evorel Sequi', 'Evra', 'Ex-Lax Senna', 'Exelon', 'Exelon Patches', 'Exemestane', 'Exenatide', 'Exforge', 'Exjade', 'Exocin', 'Exorex Lotion', 'Extavia', 'Exterol', 'Ezetimibe', 'Ezetimibe/Simvastatin', 'Ezetrol', 'Factor Ii/Factor Vii/Protein S/Factor X/Protein C/Factor Ix', 'Factor Ix High Purity', 'Factor Viii/Von Willebrand Factor', 'Factor Xiii', 'Famciclovir', 'Family Meltus Chesty Coughs', 'Famotidine', 'Famotidine/Calcium Carbonate/Magnesium Hydroxide', 'Famvir', 'Fareston', 'Fasigyn', 'Faslodex', 'Faverin', 'Febuxostat', 'Felbinac', 'Feldene', 'Felendil', 'Felodipine', 'Felodipine/Ramipril', 'Felogen', 'Felotens', 'Femapak', 'Femara', 'Fematrix', 'Femodene', 'Femodette', 'Femoston', 'Femseven Conti', 'Femseven Patches', 'Femseven Sequi', 'Femulen', 'Fenactol', 'Fendrix', 'Fenistil', 'Fenofibrate', 'Fenofibrate Micronised', 'Fenoterol/Ipratropium', 'Fenticonazole Nitrate', 'Ferinject', 'Ferric Carboxymaltose', 'Ferriprox', 'Ferrous Fumarate', 'Ferrous Fumarate/Folic Acid', 'Ferrous Sulphate Tablets', 'Ferrous Sulphate/Ascorbic Acid', 'Fersaday', 'Fersamal', 'Fesoterodine Fumarate', 'Fexofenadine Hydrochloride', 'Fibrazate', 'Fibro-Vein', 'Fibrogammin P', 'Filgrastim', 'Finacea', 'Finasteride', 'Fingolimod Hydrochloride', 'Flagyl', 'Flagyl-S', 'Flamatak', 'Flamrase', 'Flavoxate Hydrochloride', 'Flecainide', 'Flecainide Acetate', 'Flexin', 'Flixonase', 'Flixonase Allergy', 'Flixotide', 'Flolan', 'Flomaxtra', 'Florinef', 'Floxapen', 'Fluanxol', 'Fluarix', 'Flucloxacillin Sodium', 'Fluconazole', 'Fluconazole And Clotrimazole', 'Flucytosine', 'Fludara', 'Fludarabine Phosphate', 'Fludrocortisone Acetate', 'Fluimucil N', 'Flumazenil', 'Fluorescein Sodium/Lidocaine Hydrochloride', 'Fluorescein Sodium/Proxymetacaine Hydrochloride', 'Fluorometholone', 'Fluorouracil', 'Fluorouracil Sodium', 'Fluoxetine', 'Flupentixol', 'Flupentixol Decanoate', 'Flupentixol Dihydrochloride', 'Fluphenazine Decanoate', 'Flurazepam', 'Flurazepam Hydrochloride', 'Flurbiprofen', 'Flurbiprofen Sodium', 'Fluticasone Furoate', 'Fluticasone Propionate', 'Fluticasone/Salmeterol', 'Fluvastatin', 'Fluvastatin Sodium', 'Fluvirin', 'Fluvoxamine', 'Fluvoxamine Maleate', 'Fml', 'Folic Acid', 'Follitropin Alfa', 'Follitropin Alfa/Lutropin Alfa', 'Follitropin Beta', 'Fondaparinux', 'Foradil', 'Forceval', 'Formaldehyde', 'Formoterol Fumarate Dihydrate', 'Forsteo', 'Fortipine', 'Fortum', 'Fosamax', 'Fosamprenavir Calcium', 'Fosavance', 'Foscarnet Sodium', 'Foscavir', 'Fosinopril', 'Fosphenytoin Sodium', 'Fosrenol', 'Fostair', 'Fragmin', 'Freederm Gel', 'Frisium', 'Froben', 'Frovatriptan Succinate Monohydrate', 'Fru-Co', 'Frumil', 'Frusene', 'Frusol', 'Fucibet', 'Fucidin Cream', 'Fucidin H', 'Fucidin H Ointment', 'Fucidin Ointment', 'Fucidin Suspension', 'Fucidin Tablets', 'Fucithalmic', 'Fulvestrant', 'Fungizone', 'Furadantin', 'Furosemide', 'Furosemide/Spironolactone', 'Furosemide/Triamterene', 'Fusidic Acid', 'Fusidic Acid/Hydrocortisone Acetate', 'Fuzeon', 'Fybogel', 'Fybogel Mebeverine', 'Gabapentin', 'Gabitril', 'Gadobutrol', 'Gadoteridol', 'Gadovist', 'Gadoxetate Disodium', 'Galantamine Hydrobromide', 'Galvus', 'Gamanil', 'Ganciclovir Sodium', 'Ganfort', 'Ganirelix', 'Gardasil', 'Garlic Oil/Garlic/Echinacea', 'Gastrobid', 'Gastrocote Liquid', 'Gastrocote Tablets', 'Gaviscon Advance', 'Gaviscon Cool Tablets', 'Gaviscon Double Action', 'Gaviscon Extra Strength Tablets', 'Gaviscon Infant Oral Powder', 'Gaviscon Liquid Sachets', 'Gaviscon Tablets', 'Gefitinib', 'Geltears', 'Gemcitabine Hydrochloride', 'Gemeprost', 'Gemfibrozil', 'Gemzar', 'Generic Abidec Multivitamin Drops', 'Generic Actonorm Powder', 'Generic Alginate/Aluminium Hydroxide/Magnesium Carbonate', 'Generic Antitis Tablets', 'Generic Calcimax Liquid', 'Generic Catarrh Relief Mixture', 'Generic Cetanorm Cream', 'Generic Chest Mixture', 'Generic Cymalon Granules', 'Generic Dalivit Oral Drops', 'Generic Deep Heat Spray', 'Generic Diocalm', 'Generic Dioralyte Powder', 'Generic Dioralyte Relief', 'Generic Diprobase Cream', 'Generic Dubam Cream', 'Generic Dulbalm Cream', 'Generic Electrolade Powder', 'Generic Fiery Jack Cream', 'Generic Forceval Capsules', 'Generic Germolene Antiseptic Ointment', 'Generic Glycerin, Honey And Lemon Linctus', 'Generic Indian Brandee', 'Generic Karvol Decongestant Capsules', 'Generic Karvol Decongestant Drops', 'Generic Ketovite Liquid', 'Generic Laxido', 'Generic Lipobase', 'Generic Metanium Barrier Ointment', 'Generic Meted Shampoo', 'Generic Molaxole Powder', 'Generic Oxymetazoline', 'Generic Pharmaton Vitality Capsules', 'Generic Phytex', 'Generic Polytar Af Liquid', 'Generic Polytar Emollient', 'Generic Polytar Liquid', 'Generic Polytar Plus Liquid', "Generic Potter'S Strong Bronchial Catarrh Pastilles", "Generic Potter'S Sugar Free Cough Pastilles", 'Generic Radian B Muscle Lotion', 'Generic Rehydration Powder', 'Generic Resolve Effervescent Granules', 'Generic Sciargo Tablets', 'Generic Senokot Comfort Tablets', 'Generic Senokot Dual Relief Tablets', 'Generic Sudocrem Cream', 'Generic Tcp Antiseptic Cream', 'Generic Tcp Antiseptic Ointment', 'Generic Throaties Strong Original Pastilles', 'Generic Transvasin Spray', 'Generic Ultrabase', 'Generic Unguentum M Cream', 'Generic Vadarex Ointment', 'Generic Vegetable Cough Remover Elixir', 'Genotropin', 'Gentamicin Sulphate', 'Gentamicin Sulphate/Hydrocortisone Acetate', 'Gentisone', 'Germolene Antiseptic Cream', 'Germolene Antiseptic First Aid Wash', 'Germolene Antiseptic Ointment', 'Germoloids Cream', 'Germoloids Duo Pack', 'Germoloids Hc Spray', 'Germoloids Ointment', 'Germoloids Suppositories', 'Gestone', 'Gestrinone', 'Gilenya', 'Glatiramer Acetate', 'Gliadel', 'Glibenese', 'Gliclazide', 'Glimepiride', 'Glipizide', 'Glivec', 'Glucagen', 'Glucagon', 'Glucobay', 'Glucophage', 'Glucose Anhydrous', 'Glucose/Treacle Cough Mixture', 'Glutaraldehyde', 'Glutarol', 'Glycerin And Blackcurrant Cough Syrup', 'Glycerin, Honey And Lemon Linctus', 'Glycerin, Honey, Lemon And Ipecacuanha Linctus', 'Glycerol Cream', 'Glycerol Oral Solution', 'Glycerol Skin Wash', 'Glycerol/Glucose Cough Mixture', 'Glycerol/Sucrose Cough Mixture', 'Glycerol/Syrup/Citric Acid/Honey/Lemon', 'Glycerol/White Soft Paraffin/Liquid Paraffin', 'Glyceryl Trinitrate', 'Glycopyrronium Bromide', 'Goddards Muscle Lotion', 'Golimumab', 'Gonapeptyl', 'Gopten', 'Goserelin Acetate', 'Granisetron Hydrochloride', 'Granocyte-13', 'Grass Pollen Extract', 'Grazax', 'Griseofulvin', 'Grisol Af', 'Guaiacol/Codeine', 'Guaifenesin', 'Guaifenesin/Ammonium Chloride/Ammonium Carbonate', 'Guaifenesin/Cetylpyridinium Chloride', 'Guaifenesin/Levomenthol', 'Guaifenesin/Pseudoephedrine', 'Guaifenesin/Treacle/Glucose', 'Guanethidine', 'Guanethidine Monosulphate', 'Gygel', 'Gyno-Daktarin', 'Gyno-Pevaryl', 'Gynoxin', 'Haemate P', 'Haemorrhoid Relief Ointment', 'Haldol', 'Haldol Decanoate', 'Halogenated Phenols/Phenol', 'Haloperidol', 'Haloperidol Decanoate', 'Hamol Senna Tablets', 'Happinose', 'Harmogen', 'Havrix', 'Haymine Tablets', 'Hbvaxpro', 'Hedex', 'Hedex Extra', 'Hedex Ibuprofen', 'Helixate Nexgen', 'Hemabate', 'Heminevrin Capsules', 'Heparin Sodium', 'Hepatyrix', 'Hepsal', 'Hepsera', 'Herceptin', 'Herpid', 'Hexetidine', 'Hexopal', 'Hexylresorcinol', 'Hexylresorcinol/Benzalkonium Chloride', 'Hiprex', 'Histac', 'Histamine Dihydrochloride', 'Honey/Glucose/Lemon', 'Honey/Menthol', 'Horizem', 'Hormonin', 'Humalog', 'Humalog Mix', 'Humatrope', 'Humira', 'Humulin I', 'Humulin M3', 'Humulin S', 'Hyaluronidase', 'Hycamtin', 'Hydralazine', 'Hydralazine Hydrochloride', 'Hydrea', 'Hydrochlorothiazide/Irbesartan', 'Hydrochlorothiazide/Losartan', 'Hydrochlorothiazide/Olmesartan', 'Hydrochlorothiazide/Olmesartan Medoxomil', 'Hydrochlorothiazide/Quinapril', 'Hydrochlorothiazide/Telmisartan', 'Hydrochlorothiazide/Valsartan', 'Hydrocortisone', 'Hydrocortisone Acetate', 'Hydrocortisone Acetate/Lidocaine', 'Hydrocortisone Acetate/Pramocaine Hydrochloride', 'Hydrocortisone Acetate/Sodium Fusidate', 'Hydrocortisone Butyrate', 'Hydrocortisone Sodium Phosphate', 'Hydrocortisone Sodium Succinate', 'Hydrocortisone/Lactic Acid/Urea', 'Hydrocortisone/Lidocaine', 'Hydrocortisone/Miconazole Nitrate', 'Hydrocortisone/Neomycin Sulphate/Polymyxin B Sulphate', 'Hydrocortisone/Urea', 'Hydrocortistab', 'Hydroflumethiazide/Spironolactone', 'Hydromol Bath And Shower Emollient', 'Hydromol Cream', 'Hydrotalcite Suspension', 'Hydroxocobalamin', 'Hydroxycarbamide', 'Hydroxychloroquine', 'Hydroxychloroquine Sulphate', 'Hydroxyethyl Salicylate/Methyl Nicotinate', 'Hydroxyethyl Salicylate/Methyl Nicotinate/Capsicum Oleoresin', 'Hydroxyzine Hydrochloride', 'Hyetellose', 'Hygroton', 'Hyoscine', 'Hyoscine Butylbromide', 'Hyoscine Hydrobromide', 'Hypnomidate', 'Hypnovel', 'Hypolar', 'Hypovase', 'Hypromellose', 'Hypromellose/Dextran 70', 'Hypurin Bovine Isophane', 'Hypurin Bovine Lente', 'Hypurin Bovine Neutral', 'Hypurin Bovine Protamine Zinc', 'Hypurin Porcine', 'Hypurin Porcine Isophane', 'Hypurin Porcine Neutral', 'Hytrin', 'Ibandronic Sodium Monohydrate', 'Ibufem', 'Ibuprofen', 'Ibuprofen/Codeine Phosphate', 'Ibuprofen/Levomenthol', 'Ibuprofen/Phenylephrine', 'Ibuprofen/Pseudoephedrine', 'Idarubicin Hydrochloride', 'Idoxuridine', 'Iglu Gel', 'Ikorel', 'Iloprost Trometamol', 'Ilube', 'Imatinib Mesilate', 'Imigran', 'Imigran Nasal Spray', 'Imigran Recovery', 'Imipramine Hydrochloride', 'Imiquimod', 'Immucyst', 'Imodium', 'Imodium Plus', 'Implanon', 'Imunovir', 'Imuran', 'Imuvac', 'Incivo', 'Increlex', 'Indacaterol Maleate', 'Indapamide', 'Indapamide Hemihydrate', 'Indapamide/Perindopril Arginine', 'Inderal', 'Indivina', 'Indolar', 'Indometacin', 'Indomod', 'Indoramin Hydrochloride', 'Inegy', 'Infacol', 'Infanrix Ipv', 'Infanrix-Ipv+Hib', 'Infliximab', 'Influenza Vaccine', 'Influvac', 'Innohep', 'Innovace', 'Innozide', 'Inosine Pranobex', 'Inositol Nicotinate', 'Inovelon', 'Inspra', 'Insulatard', 'Insulin Aspart', 'Insulin Aspart/Insulin Aspart Protamine', 'Insulin Detemir', 'Insulin Glargine', 'Insulin Glulisine', 'Insulin Isophane Bovine', 'Insulin Isophane Human', 'Insulin Isophane Human/Insulin Soluble Human', 'Insulin Isophane Porcine', 'Insulin Isophane Porcine/Insulin Soluble Porcine', 'Insulin Lispro', 'Insulin Lispro/Insulin Lispro Protamine', 'Insulin Protamine Zinc Bovine', 'Insulin Soluble Bovine', 'Insulin Soluble Human', 'Insulin Soluble Porcine', 'Insulin Zinc Suspension Mixed Bovine', 'Insuman Basal', 'Insuman Comb', 'Insuman Rapid', 'Intal', 'Integrilin', 'Intelence', 'Interferon Alfa-2A (Rbe)', 'Interferon Alfa-2B (Rbe)', 'Interferon Beta-1A', 'Interferon Beta-1B', 'Introna', 'Invanz', 'Invega', 'Invirase', 'Iopidine', 'Ipocol', 'Ipratropium', 'Ipratropium/Salbutamol', 'Irbesartan', 'Iressa', 'Irinotecan Hydrochloride Trihydrate', 'Iron Dextran', 'Iron Sucrose', 'Isentress', 'Ismelin', 'Isocarboxazid', 'Isoflurane', 'Isoket', 'Isoniazid', 'Isoniazid/Pyrazinamide/Rifampicin', 'Isoniazid/Rifampicin', 'Isopropyl Myristate/Liquid Paraffin', 'Isopto Alkaline', 'Isopto Plain', 'Isosorbide Dinitrate', 'Isosorbide Mononitrate', 'Isotretinoin', 'Isotrex', 'Isotrexin', 'Isovorin', 'Ispaghula Husk Granules', 'Ispaghula Husk/Mebeverine', 'Isradipine', 'Istin', 'Itraconazole', 'Ivabradine', 'Ixiaro', 'Janumet', 'Januvia', 'Javlor', 'Junior Meltus Chesty Coughs With Catarrh', 'Kaletra', 'Kaolin And Morphine Mixture', 'Kaolin/Calcium Carbonate', 'Karvol Decongestant Capsules', 'Karvol Decongestant Drops', 'Kefadim', 'Keflex', 'Keftid', 'Kemadrin', 'Kemicetine', 'Kenalog', 'Kentera', 'Kentipine', 'Kenzem', 'Keppra', 'Keral', 'Ketalar', 'Ketamine Hydrochloride', 'Ketek', 'Ketocid', 'Ketoconazole', 'Ketoprofen', 'Ketorolac Trometamol', 'Ketotifen', 'Ketovail', 'Ketovite Liquid', 'Kivexa', 'Klaricid', 'Kliofem', 'Kliovance', 'Kolanticon Gel', 'Kytril', 'Lacidipine', 'Lacosamide', 'Lacrilube', 'Lactulose', 'Lamictal', 'Lamisil', 'Lamivudine', 'Lamivudine/Zidovudine', 'Lamotrigine', 'Lanacane Cream', 'Lanolin/White Soft Paraffin/Liquid Paraffin', 'Lanoxin', 'Lanreotide Acetate', 'Lansoprazole', 'Lanthanum Carbonate', 'Lantus', 'Lanvis', 'Lapatinib Ditosylate Monohydrate', 'Larapam', 'Largactil', 'Lariam', 'Laryng-O-Jet', 'Lasilactone', 'Lasix', 'Lasoride', 'Latanoprost', 'Latanoprost/Timolol Maleate', 'Lauromacrogol 400/Heparinoid', 'Laxido', 'Leflunomide', 'Lemon/Honey/Levomenthol/Citric Acid', 'Lemsip Cold And Flu', 'Lemsip Cough Chesty', 'Lemsip Dry Cough Liquid', 'Lemsip Flu 12 Hour Ibuprofen And Pseudoephedrine', 'Lemsip Max All Day Cold And Flu Tablets', 'Lemsip Max All Night Cold And Flu Tablets', 'Lemsip Max All-In-One', 'Lemsip Max Cold And Flu Breathe Easy', 'Lemsip Max Cold And Flu Direct', 'Lemsip Max Day And Night Cold And Flu Relief Capsules', 'Lemsip Max Flu', 'Lemsip Max Sinus', 'Lemsip Max Sinus Capsules', 'Lenalidomide', 'Lenograstim (Rch)', 'Lercanidipine', 'Lescol', 'Letrozole', 'Leukeran', 'Leuprorelin Acetate', 'Leustat', 'Levemir', 'Levetiracetam', 'Levitra', 'Levobunolol Hydrochloride', 'Levobupivacaine Hydrochloride', 'Levocetirizine Dihydrochloride', 'Levofloxacin', 'Levofloxacin Hemihydrate', 'Levomenthol', 'Levomenthol/Amylmetacresol/Dichlorobenzyl Alcohol', 'Levomenthol/Squill/Liquorice', 'Levomepromazine Maleate', 'Levonelle', 'Levonorgestrel', 'Levothyroxine Sodium', 'Lexpec Folic Acid', 'Li-Liquid', 'Librium', 'Librofem', 'Lidocaine', 'Lidocaine Hydrochloride', 'Lidocaine Hydrochloride/Adrenaline Acid Tartrate', 'Lidocaine/Aminoacridine', 'Lidocaine/Cetalkonium Chloride', 'Lidocaine/Cetylpyridinium Chloride', 'Lidocaine/Chlorhexidine', 'Lidocaine/Chlorocresol/Cetylpyridinium Chloride', 'Lidocaine/Methylprednisolone Acetate', 'Lidocaine/Zinc Sulphate/Cetrimide', 'Light Liquid Paraffin', 'Linezolid', 'Lioresal', 'Liothyronine Sodium', 'Lipantil', 'Lipitor', 'Lipobase', 'Liposic', 'Lipostat', 'Liqufilm Tears', 'Liquid Paraffin', 'Liquid Paraffin/Acetylated Wool Alcohols', 'Liquid Paraffin/Isopropyl Myristate', 'Liquid Paraffin/White Soft Paraffin', 'Liquid Paraffin/Wool Alcohols/White Soft Paraffin', 'Liraglutide', 'Lisinopril', 'Lisinopril/Hydrochlorothiazide', 'Liskonum', 'Lisopress', 'Litak', 'Lithium Carbonate', 'Lithium Citrate', 'Livial', 'Loceryl', 'Locoid', 'Lodine', 'Lodoxamide Trometamol', 'Loestrin', 'Lofepramine', 'Lofepramine Hydrochloride', 'Logynon', 'Lomont', 'Lomustine', 'Loniten', 'Lopace', 'Loperamide And Rehydration Powder', 'Loperamide Hydrochloride', 'Lopid', 'Lopinavir/Ritonavir', 'Loprazolam', 'Lopresor', 'Loratadine', 'Lorazepam', 'Loron 520', 'Losartan', 'Losec', 'Losec Iv', 'Losec Mups', 'Lotemax', 'Loteprednol Etabonate', 'Luborant', 'Lucentis', 'Lumigan', 'Lustral', 'Lutropin Alfa', 'Luveris', 'Lyclear Cream Rinse', 'Lyclear Dermal Cream', 'Lyflex', 'Lymecycline', 'Lypsyl Cold Sore Gel', 'Lyrica', 'Lyrinel', 'Lysine Acetylsalicylate/Metoclopramide Hydrochloride', 'Lysodren', 'Lysovir', 'Maalox', 'Maalox Plus', 'Mabcampath', 'Mabthera', 'Mackenzies Smelling Salts', 'Macrobid', 'Macrodantin', 'Macrogol 4000', 'Macrogol Compound Powder Npf', 'Macugen', 'Madopar', 'Magnapen Vial', 'Magnesium Hydroxide Oral Suspension', 'Magnesium Hydroxide Tablets', 'Magnevist', 'Malarone', 'Malathion', 'Mandafen', 'Manerix', 'Maraviroc', 'Marcain Heavy', 'Marcain Polyamp Steripack', 'Marevan', 'Marvelon', 'Mastaflu', 'Maxalt', 'Maxidex', 'Maxitrol Eye Drops', 'Maxitrol Eye Ointment', 'Maxolon', 'Maxtrex', 'Mebendazole', 'Mebeverine Hydrochloride', 'Mecasermin', 'Meclozine', 'Medicated Talc', 'Medijel Gel', 'Medijel Pastilles', 'Medised For Children', 'Medrone', 'Medroxyprogesterone Acetate', 'Mefenamic', 'Mefenamic Acid', 'Mefloquine Hydrochloride', 'Megace', 'Megestrol Acetate', 'Meggezones', 'Meglumine Gadobenate', 'Meglumine Gadopentetate', 'Melatonin', 'Meloxicam', 'Melphalan', 'Melphalan Hydrochloride', 'Memantine Hydrochloride', 'Menadiol Sodium Phosphate', 'Meningitec', 'Menitorix', 'Menjugate', 'Menopur', 'Menotrophin', 'Menthol Pastilles', 'Menthol/Anise Oil', 'Menthol/Camphor/Pine Needle Oil', 'Menthol/Eucalyptus', 'Menthol/Peppermint', 'Menthol/Pine Sylvestris Oil/Abietis Oil', 'Mepradec', 'Mepyramine', 'Merbentyl', 'Mercaptopurine', 'Mercilon', 'Merional', 'Merocaine', 'Merocets Lozenges', 'Merocets Plus', 'Meronem', 'Meropenem Trihydrate', 'Mesalazine', 'Mesren', 'Mesterolone', 'Mestinon', 'Mestranol/Norethisterone', 'Metalyse', 'Meted', 'Meted Shampoo', 'Metenix', 'Metformin', 'Metformin Hydrochloride', 'Metformin Hydrochloride/Sitagliptin Phosphate', 'Metformin Hydrochloride/Vildagliptin', 'Metformin/Pioglitazone', 'Methenamine Hippurate', 'Methotrexate', 'Methotrexate Sodium', 'Methoxy Polyethylene Glycol-Epoetin Beta', 'Methoxymethane/Hydroxyethyl Salicylate/Isopentane', 'Methyl Aminolevulinate Hydrochloride', 'Methyl Salicylate', 'Methyl Salicylate/Menthol', 'Methyl Salicylate/Menthol/Camphor', 'Methyl Salicylate/Menthol/Capsicum/Camphor', 'Methylcellulose', 'Methylnaltrexone Bromide', 'Methylphenidate Hydrochloride', 'Methylprednisolone', 'Methylprednisolone Acetate', 'Methylprednisolone Sodium Succinate', 'Methysergide Maleate', 'Metipranolol', 'Metoclopramide', 'Metoclopramide Hydrochloride', 'Metoclopramide Hydrochloride/Paracetamol', 'Metolazone', 'Metopirone', 'Metoprolol', 'Metrogel', 'Metrolyl', 'Metronidazole', 'Metronidazole Benzoate', 'Metrosa', 'Metrotop', 'Metvix', 'Metyrapone', 'Miacalcic', 'Micafungin Sodium', 'Micardis', 'Micardisplus', 'Miconazole', 'Miconazole Nitrate', 'Microgynon 30', 'Micronor', 'Micropirin', 'Midazolam Hydrochloride', 'Mifegyne', 'Mifepristone', 'Migard', 'Migril', 'Mildison Lipocream', 'Milrinone', 'Mimpara', 'Mini-Plasco Lidocaine', 'Minijet Adrenaline', 'Minijet Amiodarone', 'Minijet Atropine', 'Minijet Furosemide', 'Minijet Lidocaine', 'Minijet Naloxone', 'Minijet Sodium Bicarbonate', 'Minims Artificial Tears', 'Minims Atropine', 'Minims Chloramphenicol', 'Minims Cyclopentolate Hydrochloride', 'Minims Dexamethasone', 'Minims Lidocaine And Fluorescein', 'Minims Metipranolol', 'Minims Pilocarpine Nitrate', 'Minims Prednisolone', 'Minims Proxymetacaine And Fluorescein', 'Minims Tetracaine Hydrochloride', 'Minims Tropicamide', 'Minocin', 'Minocycline Hydrochloride', 'Minodiab', 'Minoxidil', 'Miochol-E', 'Mirapexin', 'Mircera', 'Mirena', 'Mirtazapine', 'Misoprostol', 'Misoprostol/Naproxen', 'Mitomycin', 'Mitomycin-C Kyowa', 'Mitotane', 'Mitoxantrone Hydrochloride', 'Mivacron', 'Mivacurium Chloride', 'Mixtard', 'Mizolastine', 'Mizollen', 'Mmrvaxpro', 'Mobiflex', 'Moclobemide', 'Modafinil', 'Modalim', 'Modecate', 'Modrenal', 'Moduret', 'Moduretic', 'Moexipril', 'Moexipril Hydrochloride', 'Mogadon', 'Molaxole', 'Molipaxin', 'Mometasone', 'Mometasone Furoate', 'Monomil', 'Monosorb', 'Montelukast Sodium', 'Morhulin Ointment', 'Morphine', 'Motens', 'Motifene', 'Motilium', 'Motilium Tablet', 'Movelat', 'Movicol', 'Moxifloxacin Hydrochloride', 'Moxisylyte Hydrochloride', 'Moxonidine', 'Mucodyne', 'Mucogel', 'Multaq', 'Multi-Action Actifed Tablets', 'Multihance', 'Multiparin', 'Mupirocin Calcium', 'Muse', 'Mycamine', 'Mycil Athletes Foot Spray', 'Mycil Ointment', 'Mycil Powder', 'Mycobutin', 'Mycophenolate Mofetil', 'Mycophenolate Mofetil Hydrochloride', 'Mycophenolate Sodium', 'Mycota Spray', 'Myfortic', 'Myleran', 'Myocet', 'Myocrisin', 'Myotonine', 'Mysoline', 'Nabilone', 'Nabumetone', 'Nadolol', 'Nafarelin Acetate', 'Naftidrofuryl', 'Naftidrofuryl Oxalate', 'Nalcrom', 'Nalidixic Acid', 'Naloxone Hydrochloride', 'Nandrolone Decanoate', 'Naphazoline', 'Napratec', 'Naprosyn', 'Naproxen', 'Naproxen/Esomeprazole Magnesium Trihydrate', 'Naramig', 'Naratriptan Hydrochloride', 'Naropin', 'Nasacort', 'Naseptin', 'Nasofan', 'Nasonex', 'Natalizumab', 'Natecal D3', 'Nateglinide', 'Natracalm', 'Natrasleep', 'Natrilix', 'Natrilix Sr', 'Navelbine', 'Nebilet', 'Nebivolol', 'Nebivolol Hydrochloride', 'Nedocromil', 'Nedocromil Sodium', 'Nelarabine', 'Neo-Cytamen', 'Neo-Naclex', 'Neoclarityn', 'Neofel', 'Neomercazole', 'Neomycin Sulphate', 'Neoral', 'Neorecormon', 'Neostigmine Metilsulfate', 'Neostigmine Metilsulfate/Glycopyrronium Bromide', 'Neotigason', 'Neulactil', 'Neulasta', 'Neupogen', 'Neupro', 'Neurobloc', 'Neurontin', 'Neutrogena Norwegian Formula Cream', 'Neutrogena T-Gel Shampoo', 'Nevirapine', 'Nevirapine Hemihydrate', 'Nexavar', 'Nexium', 'Nexium Iv', 'Niaspan', 'Nicam Gel', 'Nicardipine', 'Nicardipine Hydrochloride', 'Nicorandil', 'Nicorette Gum', 'Nicorette Inhalator', 'Nicorette Invisi Patches', 'Nicorette Microtab', 'Nicorette Nasal Spray', 'Nicorette Patches', 'Nicotinamide', 'Nicotine Gum', 'Nicotine Inhaler', 'Nicotine Lozenges', 'Nicotine Nasal Spray', 'Nicotine Patches', 'Nicotine Sublingual Tablets', 'Nicotinell Gum', 'Nicotinell Lozenges', 'Nicotinell Patches', 'Nicotinic Acid', 'Nifedipine', 'Nifopress', 'Night Nurse', 'Nilotinib Hydrochloride Monohydrate', 'Nimbex', 'Nimodipine', 'Nimotop', 'Nipent', 'Niquitin Gum', 'Niquitin Lozenges', 'Niquitin Mini Lozenges', 'Niquitin Patches', 'Nirolex Chesty Cough Linctus', 'Nirolex Dry Cough Linctus', 'Nirolex Dry Cough Relief Lozenges', 'Nirolex Dry Coughs With Decongestant', 'Nitrazepam', 'Nitrofurantoin', 'Nizatidine', 'Nizoral', 'Non-Drowsy Sudafed Childrens Syrup', 'Nonacog Alfa', 'Nonoxinol-9', 'Nootropil', 'Noradrenaline Acid Tartrate', 'Norcuron', 'Norditropin Nordiflex', 'Norditropin Simplexx', 'Norethisterone', 'Norethisterone Enantate', 'Norfloxacin', 'Norgalax', 'Norgeston', 'Noriday', 'Norimin', 'Norimode', 'Norinyl-1', 'Noristerat', 'Normacol', 'Normacol Plus', 'Normal Immunoglobulin Human', 'Nortriptyline', 'Nortriptyline Hydrochloride', 'Norvir', 'Norzol', 'Novofem', 'Novomix 30', 'Novorapid', 'Novoseven', 'Noxafil', 'Nozinan Tablets', 'Nu-Seals', 'Nupercainal', 'Nurofen', 'Nurofen Cold And Flu', 'Nurofen Plus', 'Nutrizym', 'Nutropinaq', 'Nuvaring', 'Nyogel', 'Nystan', 'Nystatin', 'Nytol', 'Occlusal', 'Octim', 'Octocog Alfa', 'Octreotide Acetate', 'Ocufen', 'Oculotect', 'Ofatumumab', 'Ofloxacin', 'Ofloxacin Hydrochloride', 'Oilatum Cream', 'Oilatum Emollient', 'Oilatum Gel', 'Oilatum Junior Bath Additive', 'Oilatum Junior Cream', 'Oilatum Plus', 'Oilatum Shower Gel Fragrance-Free', 'Olanzapine', 'Olanzapine Pamoate Monohydrate', 'Olbetam', 'Olmesartan', 'Olmesartan Medoxomil', 'Olmetec', 'Olmetec Plus', 'Olopatadine Hydrochloride', 'Olsalazine Sodium', 'Omalizumab', 'Omeprazole', 'Omeprazole Magnesium', 'Omeprazole Sodium', 'Oncotice', 'Ondansetron', 'Ondansetron Hydrochloride', 'One-Alpha', 'Onglyza', 'Onkotrone', 'Opatanol', 'Opilon', 'Opticrom', 'Optilast', 'Optimax', 'Optivate', 'Oraldene', 'Orap', 'Orelox', 'Orencia', 'Orgalutran', 'Orgaran', 'Original Andrews Salts', 'Orlept', 'Orlistat', 'Orphenadrine Hydrochloride', 'Ortho-Gynest', 'Orudis', 'Oruvail', 'Otex', 'Otomize', 'Otosporin', 'Otrivine Adult Measured Dose Sinusitis Spray', 'Otrivine Adult Menthol Nasal Spray', 'Otrivine Adult Nasal Drops', 'Otrivine Adult Nasal Spray', 'Otrivine Antistin', 'Otrivine Child Nasal Drops', 'Otrivine Mu-Cron', 'Ovestin', 'Ovitrelle', 'Ovranette', 'Ovysmen', 'Oxactin', 'Oxaliplatin', 'Oxcarbazepine', 'Oxerutins', 'Oxis', 'Oxprenolol', 'Oxprenolol Hydrochloride', 'Oxprenolol Hydrochloride/Cyclopenthiazide', 'Oxybuprocaine Hydrochloride', 'Oxybutynin', 'Oxybutynin Hydrochloride', 'Oxymetazoline', 'Oxytetracycline Dihydrate', 'Oxytocin', 'Pabal', 'Paclitaxel', 'Paclitaxel Albumin', 'Pain Relief Balm', 'Paliperidone', 'Paliperidone Palmitate', 'Paludrine', 'Panadol', 'Panadol Extra Soluble Tablets', 'Panadol Extra Tablets', 'Panadol Night', 'Pancrease', 'Pancrex', 'Pancuronium Bromide', 'Pandemrix', 'Panitumumab', 'Panoxyl Acnegel', 'Panoxyl Aquagel', 'Panoxyl Cream', 'Panoxyl Wash', 'Pantoprazole', 'Pantoprazole Sodium Sesquihydrate', 'Paracetamol', 'Paracetamol/Caffeine', 'Paracetamol/Codeine /Caffeine', 'Paracetamol/Codeine/Diphenhydramine/Caffeine', 'Paracetamol/Codeine/Doxylamine/Caffeine', 'Paracetamol/Dihydrocodeine', 'Paracetamol/Diphenhydramine', 'Paracetamol/Diphenhydramine Liquid', 'Paracetamol/Diphenhydramine Tablets', 'Paracetamol/Phenylephrine Sachets', 'Paracetamol/Phenylephrine/Caffeine', 'Paracetamol/Pseudoephedrine', 'Paracetamol/Sodium Salicylate', 'Paracetamol/Tramadol Hydrochloride', 'Paramax', 'Paramol Soluble Tablets', 'Paramol Tablets', 'Parathyroid Hormone', 'Pardelprin', 'Parecoxib Sodium', 'Paricalcitol', 'Pariet', 'Parlodel', 'Parmid', 'Paroven', 'Paroxetine', 'Passion Flower', 'Passion Flower/Valerian/Hops', 'Passion Flower/Valerian/Hops/Scullcap/Jamaica Dogwood', 'Pavacol-D', 'Paxoran', 'Pediacel', 'Pegaptanib Sodium', 'Pegasys', 'Pegfilgrastim', 'Peginterferon Alfa-2A', 'Peginterferon Alfa-2B (Rbe)', 'Pegvisomant', 'Pemetrexed Disodium', 'Penbritin', 'Penciclovir', 'Penicillamine', 'Pennsaid', 'Pentasa', 'Pentostatin', 'Pentoxifylline', 'Pentrax Shampoo', 'Pepcid', 'Pepcidtwo', 'Peppermint Oil Capsules', 'Peppermint Oil/Capsicum/Elder Flower', 'Peppermint Oil/Cinnamon/Clove Oil/Slippery Elm Bark', 'Peppermint Oil/Menthol/Benzoin Compound/Ipecacuanha', 'Peppermint Oil/Menthol/Myrrh', 'Pepto-Bismol', 'Perdix', 'Perfalgan', 'Pergolide Mesilate', 'Pergoveris', 'Periactin', 'Pericyazine', 'Perinal Spray', 'Perindopril', 'Perindopril Arginine', 'Permethrin', 'Persantin', 'Pevaryl', 'Pharmaton Capsules', 'Pharmorubicin', 'Phenelzine Sulphate', 'Phenergan', 'Phenol', 'Phenol/Aromatic Ammonia/Strong Ammonia', 'Phenol/Chlorhexidine Digluconate', 'Phenol/Chlorhexidine Gluconate', 'Phenylephrine Hydrochloride', 'Phenylephrine Hydrochloride/Caffeine/Paracetamol', 'Phenylephrine/Caffeine/Paracetamol Dual Relief', 'Phenylephrine/Caffeine/Paracetamol Max Strength Capsules', 'Phenylephrine/Guaifenesin/Paracetamol', 'Phenylethyl Alcohol/Undecenoic Acid/Cetrimide', 'Phenytoin', 'Phenytoin Sodium', 'Phillips Milk Of Magnesia', 'Pholcodine', 'Pholcodine Childrens Oral Solution', 'Pholcodine Linctus', 'Phosex', 'Phyllocontin', 'Physiotens', 'Pilocarpine Hydrochloride', 'Pilocarpine Nitrate', 'Pimecrolimus', 'Pimozide', 'Pindolol', 'Pinefeld', 'Pioglitazone', 'Piperacillin Sodium/Tazobactam Sodium', 'Piportil', 'Pipotiazine Palmitate', 'Piracetam', 'Piriteze Allergy Syrup', 'Piriteze Allergy Tablets', 'Piriton', 'Piroxicam', 'Pitressin', 'Pivmecillinam Hydrochloride', 'Pizotifen Hydrogen Malate', 'Plaquenil', 'Plavix', 'Plendil', 'Pletal', 'Pneumovax Ii', 'Podophyllotoxin', 'Pollenshield', 'Polysaccharide-Iron Complex', 'Polytar Af Liquid', 'Polytar Emollient', 'Polytar Liquid', 'Polytar Plus Liquid', 'Polyvinyl Alcohol', 'Ponstan', 'Pork Actrapid', 'Pork Mixtard', 'Posaconazole', 'Potassium Citrate', 'Potassium Citrate/Citric Acid', 'Potassium Clavulanate/Ticarcillin Sodium', 'Povidone K25', 'Povidone-Iodine Spray', 'Powergel', 'Pradaxa', 'Pramipexole Dihydrochloride Monohydrate', 'Prandin', 'Prasugrel Hydrochloride', 'Pravastatin Sodium', 'Praxilene', 'Prazosin', 'Prazosin Hydrochloride', 'Pred Forte', 'Predfoam', 'Prednisolone', 'Prednisolone Acetate', 'Prednisolone Sodium Metasulphobenzoate', 'Prednisolone Sodium Phosphate', 'Predsol', 'Pregabalin', 'Pregnyl', 'Premarin', 'Premique', 'Prempak-C', 'Preotact', 'Prescal', 'Preservex', 'Prestim', 'Prevenar', 'Prezista', 'Priadel Liquid', 'Priadel Tablets', 'Prilocaine Hydrochloride', 'Prilocaine/Lidocaine', 'Primacor', 'Primaxin', 'Primidone', 'Primolut N', 'Primovist', 'Priorix', 'Pro-Epanutin', 'Pro-Viron', 'Procarbazine Hydrochloride', 'Prochlorperazine Maleate', 'Prochlorperazine Mesilate', 'Procoralan', 'Proctofoam', 'Proctosedyl', 'Procyclidine Hydrochloride', 'Progesterone', 'Prograf', 'Prograf Infusion', 'Proguanil Hydrochloride', 'Progynova Patches', 'Progynova Tablets', 'Prohance', 'Proleukin', 'Prolia', 'Promethazine', 'Promethazine Hydrochloride', 'Promethazine Hydrochloride/Dextromethorphan Hydrobromide/Paracetamol', 'Promethazine/Dextromethorphan/Paracetamol', 'Promixin', 'Propaderm', 'Propafenone', 'Propain Caplets', 'Propain Plus', 'Propantheline Bromide', 'Propecia', 'Propess', 'Propine', 'Propiverine Hydrochloride', 'Propofol', 'Propranolol', 'Propranolol Hydrochloride', 'Proscar', 'Prostap', 'Prostin E2', 'Prosulf', 'Protamine', 'Protamine Sulphate', 'Protelos', 'Protirelin', 'Protium', 'Protopic', 'Provera', 'Provigil', 'Proxymetacaine Hydrochloride', 'Prozac', 'Prucalopride Succinate', 'Pseudoephedrine', 'Pseudoephedrine Hydrochloride/Diphenhydramine Hydrochloride/Paracetamol', 'Pseudoephedrine/Acrivastine', 'Pseudoephedrine/Dextromethorphan', 'Pseudoephedrine/Paracetamol/Diphenhydramine', 'Pseudoephedrine/Pholcodine/Paracetamol', 'Pseudoephedrine/Triprolidine', 'Pseudoephedrine/Triprolidine/Dextromethorphan', 'Pseudoephedrine/Triprolidine/Guaifenesin', 'Psoriderm Bath Additive', 'Psoriderm Cream', 'Psoriderm Scalp Lotion', 'Pulmicort', 'Pulmozyme', 'Pumo Bailly', 'Puregon', 'Puri-Nethol', 'Pyralvex', 'Pyridostigmine Bromide', 'Pyrimethamine', 'Questran', 'Quetiapine Fumarate', 'Quinapril', 'Quinapril Hydrochloride', 'Quinil', 'Rabeprazole', 'Rabipur', 'Ralgex Cream', 'Ralgex Freeze Spray', 'Ralgex Heat Spray', 'Raloxifene Hydrochloride', 'Raltegravir', 'Raltitrexed', 'Ramipril', 'Ranexa', 'Ranibizumab', 'Ranitic', 'Ranitidine Hydrochloride', 'Ranitil', 'Ranolazine', 'Rapamune', 'Rapifen', 'Rapilysin', 'Rapitil', 'Rasagiline Mesilate', 'Rasilez', 'Rebetol', 'Rebif', 'Reboxetine', 'Reboxetine Mesilate', 'Rectogesic', 'Refolinon', 'Regranex', 'Regurin', 'Relcofen', 'Relenza', 'Relestat', 'Relifex', 'Relistor', 'Relpax', 'Remedeine', 'Remegel', 'Remegel Wind Relief', 'Remicade', 'Remifentanyl Hydrochloride', 'Reminyl', 'Renagel', 'Renvela', 'Reopro', 'Repaglinide', 'Repevax', 'Replenine-Vf', 'Requip', 'Resolor', 'Resolve', 'Resolve Extra', 'Respontin', 'Restandol', 'Retalzem', 'Retapamulin', 'Reteplase', 'Retigabine', 'Retin-A', 'Retrovir', 'Revatio', 'Revaxis', 'Revlimid', 'Rexocaine', 'Reyataz', 'Rhinocort', 'Rhinolast', 'Rhophylac', 'Rhumalgan', 'Riamet', 'Rifabutin', 'Rifadin', 'Rifampicin', 'Rifater', 'Rifinah', 'Rilutek', 'Riluzole', 'Rimactane', 'Rimexolone', 'Rinatec', 'Rinstead Sugar Free Pastilles', 'Risedronate Sodium', 'Risedronate Sodium/Colecalciferol/Calcium Carbonate', 'Risperdal', 'Risperidone', 'Ritalin', 'Ritonavir', 'Rituximab', 'Rivaroxaban', 'Rivastigmine', 'Rivastigmine Hydrogen Tartrate', 'Rivotril', 'Rizatriptan Benzoate', 'Roaccutane', 'Roactemra', 'Robinul', 'Robinul-Neostigmine', 'Robitussin Chesty Cough', 'Robitussin Chesty Cough With Congestion', 'Robitussin Dry Cough Medicine', 'Rocaltrol', 'Rocephin', 'Rocuronium Bromide', 'Roferon-A', 'Roflumilast', 'Ropinirole Hydrochloride', 'Ropivacaine Hydrochloride', 'Rosiced', 'Rosuvastatin', 'Rotarix', 'Rotigotine', 'Rozex', 'Rufinamide', 'Rupafin', 'Rupatadine Fumarate', 'Rynacrom', 'Rythmodan', 'Rythmodan Capsules', 'Sabril', 'Saflutan', 'Saizen', 'Salactol Paint', 'Salagen', 'Salatac Gel', 'Salazopyrin', 'Salbutamol', 'Salicylic Acid', 'Salicylic Acid Ointment', 'Salicylic Acid Paint', 'Salicylic Acid/Camphor', 'Salicylic Acid/Coal Tar/Sulphur', 'Salicylic Acid/Dithranol', 'Salicylic Acid/Lactic Acid', 'Salicylic Acid/Menthol/Ammonium Salicylate/Camphor', 'Salicylic Acid/Mucopolysaccharide Polysulphate', 'Salicylic Acid/Rhubarb Extract', 'Salmeterol', 'Salofalk', 'Sandimmun', 'Sandocal', 'Sandocal+D', 'Sandoglobulin Nf', 'Sandostatin', 'Sandrena', 'Sanomigran', 'Saquinavir Mesilate', 'Savlon Antiseptic Cream', 'Savlon Antiseptic Liquid', 'Savlon Antiseptic Wound Wash', 'Savlon Bites And Stings Pain Relief Gel', 'Savlon Dry Spray', 'Scheriproct', 'Scholl Athletes Foot Cream', 'Scholl Athletes Foot Powder', 'Scholl Callous Removal Pads', 'Scholl Corn And Callus Removal Liquid', 'Scholl Corn Removal Plasters (Fabric)', 'Scholl Corn Removal Plasters (Washproof)', 'Scholl Polymer Gel Corn Removal Pads', 'Scholl Seal And Heal Verruca Removal Gel', 'Scopoderm Tts', 'Sea-Legs Tablets', 'Sebivo', 'Sebomin', 'Sebren', 'Sectral', 'Securon', 'Selectajet Dopamine', 'Selegiline Hydrochloride', 'Selenium Sulphide', 'Selexid', 'Senna Fruit/Ispaghula', 'Senna Syrup', 'Senna Tablets', 'Senna/Buckthorn Bark/Psyllium Seeds', 'Senokot Comfort Tablets', 'Senokot Dual Relief Tablets', 'Senokot Hi-Fibre', 'Senokot Max Strength', 'Senokot Syrup', 'Senokot Tablets', 'Septrin', 'Seractil', 'Serc', 'Serenace', 'Seretide', 'Serevent', 'Seroquel', 'Seroxat', 'Sertraline', 'Sertraline Hydrochloride', 'Sevelamer Carbonate', 'Sevelamer Hydrochloride', 'Sevoflurane', 'Sildenafil Citrate', 'Silkis', 'Silver Nitrate', 'Simeticone', 'Simeticone Drops', 'Simeticone/Loperamide Hydrochloride', 'Simponi', 'Simulect', 'Simvador', 'Simvastatin', 'Sinemet', 'Singulair', 'Sinthrome', 'Sinutab Non-Drowsy', 'Sirolimus', 'Sitaxentan Sodium', 'Skelid', 'Skinoren', 'Sleepeaze Tablets', 'Slozem', 'Sno Tears', 'Snufflebabe Vapour Rub', 'Sodiofolin', 'Sodium Alginate/Calcium Carbonate/Sodium Bicarbonate', 'Sodium Alginate/Magnesium Alginate', 'Sodium Alginate/Potassium Bicarbonate', 'Sodium Aurothiomalate', 'Sodium Bicarbonate', 'Sodium Bicarbonate/Citric Acid/Magnesium Sulphate', 'Sodium Bicarbonate/Dill Seed Oil', 'Sodium Citrate', 'Sodium Citrate Compound', 'Sodium Clodronate', 'Sodium Cromoglicate', 'Sodium Feredetate', 'Sodium Fluoride', 'Sodium Fluoride/Triclosan', 'Sodium Fusidate', 'Sodium Lauryl Ether Sulpho-Succinate/Sodium Lauryl Ether Sulphate', 'Sodium Oxybate', 'Sodium Picosulfate', 'Sodium Pidolate', 'Sodium Tetradecyl Sulfate', 'Sodium Valproate', 'Sofradex Ear/Eye Drops', 'Solaraze', 'Solian', 'Solifenacin Succinate', 'Solpadeine Headache Soluble Tablets', 'Solpadeine Headache Tablets', 'Solpadeine Migraine Ibuprofen And Codeine Tablets', 'Solu-Cortef', 'Solu-Medrone', 'Somatropin', 'Somatuline', 'Somavert', 'Sominex Herbal Tablets', 'Somnite', 'Sonata', 'Sonovue', 'Sorafenib Tosylate', 'Sotacor', 'Sotalol', 'Sotalol Hydrochloride', 'Spasmonal', 'Spasmonal Forte', 'Spiriva', 'Spironolactone', 'Sporanox', 'Sprycel', 'Squill/Capsicum', 'Squill/Pumilio Pine Oil/Ipecacuanha/Liquorice', 'St. Johns Wort', 'Stalevo', 'Stannous Fluoride', 'Staril', 'Starlix', 'Statin', 'Stavudine', 'Stelara', 'Stelazine', 'Stemetil', 'Stemetil Tablet', 'Sterculia', 'Sterculia/Frangula', 'Stesolid', 'Stiemycin', 'Stilnoct', 'Strattera', 'Strepsils', 'Strepsils Extra Lozenges', 'Strepsils Orange With Vitamin C', 'Strepsils Sore Throat And Blocked Nose Lozenges', 'Streptase', 'Streptokinase', 'Stressless Tablets', 'Stronazon', 'Strontium Ranelate', 'Stugeron 15', 'Sucralfate', 'Sucrose/Guaifenesin/Cetylpyridinium Chloride/Honey', 'Sudafed', 'Sudocrem', 'Sugammadex Sodium', 'Sulfadiazine', 'Sulfamethoxazole/Trimethoprim', 'Sulfasalazine', 'Sulphur Hexafluoride', 'Sulphur/Salicylic Acid', 'Sulpiride', 'Sulpor', 'Sumatriptan', 'Sumatriptan Succinate', 'Sunitinib Malate', 'Supralip', 'Suprax', 'Suprecur', 'Suprefact', 'Sure-Amp Lidocaine', 'Surgam', 'Surmontil', 'Sustiva', 'Sutent', 'Suxamethonium Chloride', 'Symbicort', 'Symmetrel', 'Synarel', 'Syner-Kinase', 'Synflorix', 'Synphase', 'Syntocinon', 'Syntometrine', 'Syprol', 'Sytron', 'Tabphyn', 'Tacrolimus', 'Tadalafil', 'Tafluprost', 'Tagamet', 'Tambocor', 'Tamiflu', 'Tamoxifen Citrate', 'Tamsulosin Hydrochloride', 'Tarceva', 'Targocid', 'Targretin', 'Tarivid', 'Tarivid Injection', 'Tarka', 'Tasigna', 'Tavanic', 'Tavegil', 'Taxol', 'Taxotere', 'Tazarotene', 'Tazocin', 'Tcp Antiseptic Cream', 'Tcp Antiseptic Liquid', 'Tcp Antiseptic Ointment', 'Tcp Sore Throat Lozenges', 'Tears Naturale', 'Tegafur/Uracil', 'Tegretol', 'Teicoplanin', 'Telbivudine', 'Telfast', 'Telithromycin', 'Telmisartan', 'Telzir', 'Temazepam', 'Temodal', 'Temozolomide', 'Temsirolimus', 'Tenecteplase', 'Tenif', 'Tenofovir Disoproxil Fumarate', 'Tenoret', 'Tenoretic', 'Tenormin', 'Tenoxicam', 'Tensipine', 'Terazosin', 'Terazosin Hydrochloride', 'Terbinafine Hydrochloride', 'Terbutaline', 'Teriparatide', 'Tetanus Immunoglobulin Human', 'Tetracaine Hydrochloride', 'Tetracycline Hydrochloride', 'Tetralysal', 'Teveten', 'Thelin', 'Theophylline', 'Thiopental Sodium', 'Throaties Strong Original Pastilles', 'Thurfyl Salicylate/Hexyl Nicotinate/Ethyl Nicotinate', 'Thwart', 'Thymoglobuline', 'Thyrogen', 'Thyrotropin Alfa', 'Tiagabine Hydrochloride Monohydrate', 'Tiaprofenic Acid', 'Tibolone', 'Ticagrelor', 'Ticovac', 'Tigecycline', 'Tiger Balm Red', 'Tiger Balm White', 'Tilade', 'Tildiem', 'Tiloket', 'Tiloryth', 'Tiludronate Disodium', 'Timentin', 'Timodine', 'Timolol', 'Timolol Maleate', 'Timolol Maleate/Travoprost', 'Timoptol', 'Tinidazole', 'Tinzaparin', 'Tioconazole', 'Tioguanine', 'Tiotropium', 'Tipranavir', 'Tirofiban', 'Tirofiban Hydrochloride', 'Tixylix Baby Syrup', 'Tixylix Chesty Cough', 'Tixylix Dry Cough', 'Tixylix Honey, Lemon And Glycerol Syrup', 'Tixylix Toddler Syrup', 'Tizanidine', 'Tobi', 'Tobradex', 'Tobramycin', 'Tocilizumab', 'Toctino', 'Tolcapone', 'Tolfenamic Acid', 'Tolnaftate', 'Tolnaftate/Benzalkonium Chloride', 'Tolnaftate/Chlorhexidine', 'Tolterodine Tartrate', 'Tomudex', 'Topal Chewable Tablets', 'Topamax', 'Topiramate', 'Topotecan Hydrochloride', 'Torasemide', 'Torem', 'Toremifene Citrate', 'Torisel', 'Toviaz', 'Tracleer', 'Tracrium', 'Tractocile', 'Tramacet', 'Tramadol Hydrochloride', 'Trandolapril', 'Trandolapril/Verapamil', 'Trandolapril/Verapamil Hydrochloride', 'Tranexamic Acid', 'Transiderm-Nitro', 'Trasicor', 'Trasidrex', 'Trastuzumab', 'Travatan', 'Travoprost', 'Traxam', 'Trazodone', 'Trazodone Hydrochloride', 'Trental', 'Treosulfan', 'Tretinoin', 'Triadene', 'Triamcinolone', 'Triamcinolone Acetonide', 'Triamterene/Hydrochlorothiazide', 'Triapin', 'Tridestra', 'Trifluoperazine Hydrochloride', 'Trihexyphenidyl Hydrochloride', 'Trileptal', 'Trilostane', 'Trimethoprim', 'Trimipramine', 'Trimipramine Maleate', 'Trimovate', 'Trinordiol', 'Trinovum', 'Tripotassium Dicitratobismuthate', 'Triptorelin Acetate', 'Trisenox', 'Trisequens', 'Tritace', 'Trizivir', 'Trobalt', 'Tropicamide', 'Trospium Chloride', 'Trosyl', 'Trusopt', 'Truvada', 'Tryptophan', 'Tums Antacid Tablets', 'Turpentine Oil/Acetic Acid', 'Turpentine/Dilute Ammonia/Acetic Acid', 'Twinrix', 'Tygacil', 'Tylex', 'Typherix', 'Typhim Vi', 'Typhoid Vaccine', 'Tyrozets', 'Tysabri', 'Tyverb', 'Ubretid', 'Uftoral', 'Ulipristal Acetate', 'Ultiva', 'Ultra Chloraseptic Anaesthetic Throat Spray', 'Ultrabase', 'Ultramol Soluble Tablets', 'Undecenoic Acid/Dichlorophen', 'Unguentum M', 'Uniroid Hc', 'Univer', 'Urdox', 'Urea', 'Urea Hydrogen Peroxide', 'Urea/Lauromacrogols', 'Urispas', 'Urokinase', 'Ursodeoxycholic Acid', 'Ursofalk', 'Ursogal', 'Ustekinumab', 'Utinor', 'Utovlan', 'Vagifem', 'Valaciclovir Hydrochloride', 'Valcyte', 'Valdoxan', 'Valerian/Hops', 'Valganciclovir Hydrochloride', 'Vallergan', 'Valoid', 'Valproate Semisodium', 'Valsartan', 'Valtrex', 'Vancomycin Hydrochloride', 'Vaniqa', 'Vaqta', 'Vardenafil Hydrochloride Trihydrate', 'Varenicline Tartrate', 'Varicella-Zoster Vaccine', 'Varilrix', 'Vascace', 'Vascalpha', 'Vasogen', 'Vectavir', 'Vectibix', 'Vecuronium Bromide', 'Velcade', 'Velosulin', 'Vemurafenib', 'Venlafaxine', 'Venlafaxine Hydrochloride', 'Venofer', 'Ventavis', 'Ventolin', 'Vepesid', 'Vera-Til', 'Verapamil', 'Verapamil Hydrochloride', 'Vermox', 'Versatis', 'Vertab', 'Verteporfin', 'Vervain/Valerian/Scullcap/Hops', 'Vervain/Valerian/Scullcap/Hops/Lupulus', 'Vesanoid', 'Vesicare', 'Vexol', 'Vfend', 'Viagra', 'Viatim', 'Viazem', 'Vibramycin', 'Vibramycin-D', 'Vibrio Cholerae', 'Vicks Cough Syrup For Chesty Coughs', 'Vicks Inhaler', 'Vicks Medinite Syrup', 'Vicks Sinex Decongestant Nasal Spray', 'Vicks Sinex Micromist', 'Vicks Sinex Soother', 'Vicks Vaporub', 'Victoza', 'Victrelis', 'Videx', 'Vigabatrin', 'Vigam', 'Vildagliptin', 'Vimovo', 'Vimpat', 'Vinblastine', 'Vinblastine Sulphate', 'Vincristine Sulphate', 'Vinflunine Ditartrate', 'Vinorelbine Tartrate', 'Viraferon', 'Viraferonpeg', 'Viramune', 'Viramune Suspension', 'Viread', 'Viridal', 'Viscotears', 'Viskaldix', 'Visken', 'Vistide', 'Visudyne', 'Vivotif', 'Volibris', 'Voltarol', 'Voltarol Dispersible', 'Voltarol Emulgel', 'Voltarol Gel Patch', 'Voltarol Rapid', 'Voriconazole', 'Votrient', 'Warfarin', 'Warticon', 'Wasp-Eze Spray', 'Waxsol', 'White Soft Paraffin', 'White Soft Paraffin/Light Liquid Paraffin', 'White Soft Paraffin/Liquid Paraffin', 'Wind-Eze Gel Caps', 'Wind-Eze Tablets', 'Windsetlers', 'Witch Doctor Gel', 'Witch Hazel Gel', 'Woodwards Gripe Water', 'Xalacom', 'Xalatan', 'Xamiol', 'Xanax', 'Xarelto', 'Xatral', 'Xeloda', 'Xenical', 'Xeplion', 'Xigris', 'Xipamide', 'Xismox', 'Xolair', 'Xylocaine With Adrenaline', 'Xylometazoline', 'Xyloproct', 'Xyrem', 'Xyzal', 'Yasmin', 'Yeast Plasmolysate', 'Yentreve', 'Zacin', 'Zaditen', 'Zafirlukast', 'Zaleplon', 'Zamadol', 'Zanaflex', 'Zanamivir', 'Zanidip', 'Zantac', 'Zaponex', 'Zarontin', 'Zavedos', 'Zeasorb', 'Zebinix', 'Zeffix', 'Zelboraf', 'Zemplar', 'Zemtard', 'Zerit', 'Zestoretic', 'Zestril', 'Ziagen', 'Zibor', 'Zidoval', 'Zidovudine', 'Zimovane', 'Zinacef', 'Zinc Oxide/Bismuth Subgallate/Peru Balsam/Bismuth Oxide', 'Zinc Oxide/Cod Liver Oil', 'Zinc Oxide/Lidocaine', 'Zinc Oxide/Lidocaine/Benzoic Acid/Cinnamic Acid/Bismuth Oxide', 'Zinc Oxide/Peru Balsam/Bismuth Oxide', 'Zinc Paste/Calamine', 'Zinc Undecenoate/Undecenoic Acid', 'Zineryt', 'Zinnat', 'Zirtek Allergy Liquid', 'Zirtek Allergy Tablets', 'Zispin Soltab', 'Zithromax', 'Zocor', 'Zofran', 'Zofran Melt', 'Zofran Suppository', 'Zoladex', 'Zoledronic Acid Monohydrate', 'Zolmitriptan', 'Zolpidem', 'Zolpidem Tartrate', 'Zolvera', 'Zomacton', 'Zomig', 'Zonegran', 'Zonisamide', 'Zopiclone', 'Zorac', 'Zoton', 'Zovirax', 'Zovirax I.V.', 'Zuclopenthixol Acetate', 'Zuclopenthixol Decanoate', 'Zuclopenthixol Dihydrochloride', 'Zumenon', 'Zyban', 'Zyloric', 'Zyomet', 'Zypadhera', 'Zyprexa', 'Zyvox' ] openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_0to1_1.py0000644000175000017500000001507012710144046025621 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data from the estimates table in schema 1_0 to the newestimates table in schema 1_1 The NewTable schema is contained in module variable NEW_TABLE_SQLSTRINGS Incidentally - this script introduces the "settings table" in which the schema variable is stored. ''' import logging import sys from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'DROP TABLE IF EXISTS newestimates', 'DROP TABLE IF EXISTS settings', 'DROP TABLE IF EXISTS calendar', ''' CREATE TABLE newestimates ( `ix` int(10) unsigned NOT NULL auto_increment , `serialno` int(11) NOT NULL , `courseno` int(10) unsigned , `category` char(12), `type` char(20), `number` tinyint(4), `itemcode` char(4), `description` char(50), `fee` int(11), `ptfee` int(11), `csetype` char(5), `feescale` char(1), `dent` tinyint(1), `completed` tinyint(1), `carriedover` tinyint(1), `linked` tinyint(1), `modified_by` varchar(20) NOT NULL, `time_stamp` DATETIME NOT NULL, PRIMARY KEY (ix), KEY (serialno), KEY (courseno)); ''', ''' CREATE TABLE settings ( `ix` int(10) unsigned NOT NULL auto_increment , `value` varchar(128), `data` text, `hostname` varchar(128), `station` char(20), `user` char(20), `modified_by` varchar(20) NOT NULL, `time_stamp` DATETIME NOT NULL, PRIMARY KEY (ix), KEY (value)); ''', ''' CREATE TABLE calendar ( `ix` int(10) unsigned NOT NULL auto_increment , `adate` DATE NOT NULL, `memo` char(30), PRIMARY KEY (ix), KEY (adate)); ''' ] SRC_QUERY = '''select serialno, courseno, type, number, itemcode, description, fee, ptfee, feescale, csetype, dent, completed, carriedover, linked from estimates''' class DatabaseUpdater(DatabaseUpdaterThread): def getRowsFromOld(self): ''' get ALL data from the estimates table ''' self.cursor.execute(SRC_QUERY) rows = self.cursor.fetchall() return rows def convertData(self, rows): ''' convert to the new row type ''' retlist = [] progress_var = len(rows) for row in rows: newrow = [] for i, data in enumerate(row): if i == 2: # split into the new category / type fields try: splitdata = data.split(" ") category = splitdata[0] type_ = splitdata[1] except IndexError: category = "unknown" type_ = data newrow.append(category) newrow.append(type_) elif i == 8: newrow.append(row[9]) elif i == 9: newrow.append(row[8]) else: newrow.append(data) if i % 100 == 0: self.progressSig((i / progress_var) * 40 + 20) if len(row) != len(newrow) - 1: LOGGER.error("Error converting %s", str(row)) sys.exit() retlist.append(newrow) return retlist def insertRowsIntoNew(self, rows): ''' insert new row types into the newestimates table ''' progress_var = len(rows) i = 0 query = '''insert into newestimates (serialno, courseno, category, type, number, itemcode, description, fee, ptfee , csetype, feescale, dent, completed, carriedover , linked , modified_by , time_stamp) values (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, '1_0to1_1script', NOW())''' for values in rows: self.cursor.execute(query, values) i += 1 if i % 100 == 0: self.progressSig((i / progress_var) * 90 + 40) def run(self): LOGGER.info("running script to convert from schema 1.0 to 1.1") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(15, "extracting estimates") oldrows = self.getRowsFromOld() self.progressSig(20, "converting data") newRows = self.convertData(oldrows) self.progressSig(40, "exporting into newestimates table") self.insertRowsIntoNew(newRows) self.progressSig(90, "updating stored schema version") self.update_schema_version(("1.1",), "1_0 to 1_1 script") self.progressSig(100) self.commit() self.completeSig(_("Successfully moved db to") + " 1.1") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_1to1_2.py0000644000175000017500000001074212710144046025624 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 1_2 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'ALTER TABLE forum ADD COLUMN recipient char(8)', 'ALTER TABLE forum CHANGE COLUMN comment comment char(255)', ''' CREATE TABLE if not exists forumread ( ix int(10) unsigned NOT NULL auto_increment , id int(10) unsigned NOT NULL , op char(8), readdate DATETIME NOT NULL, PRIMARY KEY (ix), KEY (id)) ''', ''' CREATE TABLE if not exists tasks ( ix int(10) unsigned NOT NULL auto_increment, op char(8), author char(8), type char(8), mdate DATETIME NOT NULL, due DATETIME NOT NULL, message char(255), completed bool NOT NULL default False, visible bool NOT NULL default True, PRIMARY KEY (ix)) ''', ] LOCK_QUERY = 'lock tables omforum read,forum write' SOURCE_QUERY = '''select ix, parent_ix, inits, fdate, topic, comment, open from omforum order by ix''' FORUM_QUERY = '''insert into forum (parent_ix, inits, fdate, topic, comment, open) values (%s, %s, %s, %s, %s, %s)''' MAX_QUERY = 'select max(ix) from forum' class DatabaseUpdater(DatabaseUpdaterThread): def copy_OMforum_into_forum(self): ''' I am scrapping the omforum table, put these posts into the forum ''' self.cursor.execute(LOCK_QUERY) self.cursor.execute(SOURCE_QUERY) rows = self.cursor.fetchall() self.cursor.execute(MAX_QUERY) start_ix = self.cursor.fetchone()[0] + 1 LOGGER.debug("start_ix = %s", start_ix) for row in rows: if row[1]: parent_ix = row[1] + start_ix else: parent_ix = None values = (parent_ix, row[2], row[3], row[4], row[5], row[6]) self.cursor.execute(FORUM_QUERY, values) self.cursor.execute("unlock tables") def run(self): LOGGER.info("running script to convert from schema 1.1 to 1.2") try: self.connect() self.progressSig(30, "updating schema to 1,2") self.execute_statements(SQLSTRINGS) self.progressSig(50, 'created new table "forumread"') self.copy_OMforum_into_forum() self.progressSig(80, 'copied data from obsolete table OMforum') self.update_schema_version(("1.2",), "1_1 to 1_2 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.2") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_2to1_3.py0000644000175000017500000000674512710144046025636 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 1_3 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'alter table newfeetable drop column spare1', 'alter table newfeetable drop column spare2', 'alter table newfeetable drop column spare3', 'alter table newfeetable drop column spare4', 'alter table newfeetable change column PFC NF09 int(11)', 'alter table newfeetable change column PFI NF09_pt int(11)', ''' CREATE TABLE if not exists clinical_memos ( ix int(10) unsigned NOT NULL auto_increment , serialno int(11) unsigned NOT NULL , author char(8), datestamp DATETIME NOT NULL, hidden bool NOT NULL default False, PRIMARY KEY (ix), KEY (serialno))''', ] class DatabaseUpdater(DatabaseUpdaterThread): def run(self): LOGGER.info("running script to convert from schema 1.2 to 1.3") try: self.connect() self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(90, _('updating settings')) LOGGER.debug("update database settings...") # pass a tuple of compatible clients and the "user" # who made these changes. self.update_schema_version(("1.2", "1.3"), "1_2 to 1_3 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.3") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_3to1_4.py0000644000175000017500000002455712710144046025641 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 1_4 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'DROP TABLE IF EXISTS feetable_key', 'DROP TABLE IF EXISTS feetable_scotNHS_08_Adult', 'DROP TABLE IF EXISTS feetable_scotNHS_08_Child', 'DROP TABLE IF EXISTS feetable_scotNHS_09_Adult', 'DROP TABLE IF EXISTS feetable_scotNHS_09_Child', 'DROP TABLE IF EXISTS feetable_HDP', 'DROP TABLE IF EXISTS feetable_Private_2009', 'DROP TABLE IF EXISTS feetable_Private_2010', 'DROP TABLE IF EXISTS docsimported', ''' CREATE TABLE feetable_key ( ix int(10) unsigned NOT NULL auto_increment , tablename char(30), categories char(30), description char(60), startdate date, enddate date, feecoltypes TINYTEXT, in_use bool NOT NULL default True, display_order smallint(6), PRIMARY KEY (ix)) ''', ''' INSERT into feetable_key (tablename, categories, description, startdate, enddate, display_order, feecoltypes) values ("feetable_scotNHS_08_Adult","N", "Scottish NHS Adult feescale implemented April 2008", 20080401, 20090831, 5, ' fee pt_fee ' ) ''', ''' CREATE TABLE feetable_scotNHS_08_Adult ( ix int(10) unsigned NOT NULL auto_increment , section smallint(6), code char(8), oldcode char(12), USERCODE char(20), regulation char(60), description char(60), brief_description char(60), fee int(11), pt_fee int(11), hide bool NOT NULL default False, PRIMARY KEY (ix)) ''', ''' INSERT into feetable_key (tablename, categories, description, startdate, enddate, display_order, feecoltypes) values ("feetable_scotNHS_08_Child","C", "Scottish NHS Child feescale implemented April 2008", 20080401, 20090831, 6, ' fee pt_fee ' ) ''', ''' CREATE TABLE feetable_scotNHS_08_Child ( ix int(10) unsigned NOT NULL auto_increment , section smallint(6), code char(8), oldcode char(12), USERCODE char(20), regulation char(60), description char(60), brief_description char(60), fee int(11), pt_fee int(11), hide bool NOT NULL default False, PRIMARY KEY (ix)) ''', ''' INSERT into feetable_key (tablename, categories, description, startdate, display_order, feecoltypes) values ("feetable_scotNHS_09_Adult","N", "Scottish NHS Adult feescale implemented September 2009", 20090901, 3, ' fee pt_fee ' ) ''', ''' CREATE TABLE feetable_scotNHS_09_Adult ( ix int(10) unsigned NOT NULL auto_increment , section smallint(6), code char(8), oldcode char(12), USERCODE char(20), regulation char(60), description char(60), brief_description char(60), fee int(11), pt_fee int(11), hide bool NOT NULL default False, PRIMARY KEY (ix)) ''', ''' INSERT into feetable_key (tablename, categories, description, startdate, display_order, feecoltypes) values ("feetable_scotNHS_09_Child","C", "Scottish NHS Adult feescale implemented September 2009", 20090901, 4, ' fee pt_fee ' ) ''', ''' CREATE TABLE feetable_scotNHS_09_Child ( ix int(10) unsigned NOT NULL auto_increment , section smallint(6), code char(8), oldcode char(12), USERCODE char(20), regulation char(60), description char(60), brief_description char(60), fee int(11), pt_fee int(11), hide bool NOT NULL default False, PRIMARY KEY (ix)) ''', ''' INSERT into feetable_key (tablename, categories, description, startdate, display_order, feecoltypes) values ("feetable_HDP", "I", "Highland Dental Plan FeeScale", 20080401, 2, ' fee pt_fee ' ) ''', ''' CREATE TABLE feetable_HDP ( ix int(10) unsigned NOT NULL auto_increment , section smallint(6), code char(8), oldcode char(12), USERCODE char(20), regulation char(60), description char(60), brief_description char(60), fee int(11), pt_fee int(11) NOT NULL default 0, hide bool NOT NULL default False, PRIMARY KEY (ix)) ''', ''' INSERT into feetable_key (tablename, categories, description, startdate, enddate, display_order, feecoltypes) values ("feetable_Private_2009","P,PB,PC,PD", "Private FeeScale", 20080401, 20091231, 1, ' fee feeB feeC feeD ' ) ''', ''' CREATE TABLE feetable_Private_2009 ( ix int(10) unsigned NOT NULL auto_increment , section smallint(6), code char(8), oldcode char(12), USERCODE char(20), regulation char(60), description char(60), brief_description char(60), fee int(11), feeB int(11), feeC int(11), feeD int(11), hide bool NOT NULL default False, PRIMARY KEY (ix)) ''', ''' INSERT into feetable_key (tablename, categories, description, startdate, display_order, feecoltypes) values ("feetable_Private_2010","P,PB,PC,PD", "Private FeeScale", 20100101, 7, ' fee feeB feeC feeD ' ) ''', ''' CREATE TABLE feetable_Private_2010 ( ix int(10) unsigned NOT NULL auto_increment , section smallint(6), code char(8), oldcode char(12), USERCODE char(20), regulation char(60), description char(60), brief_description char(60), fee int(11), feeB int(11), feeC int(11), feeD int(11), hide bool NOT NULL default False, PRIMARY KEY (ix)) ''', ''' CREATE TABLE docsimported ( ix int(10) unsigned NOT NULL auto_increment , serialno int(11) NOT NULL , importdate date , docname char(60), data blob , PRIMARY KEY (ix), KEY (serialno)) ''', 'DROP TABLE IF EXISTS omforum', 'DROP TABLE IF EXISTS estimates', ] SRC_QUERY = '''select section, code, oldcode, USERCODE, regulation, description, description1, %s from newfeetable order by code, ix''' DEST_QUERY = '''insert into %s (section, code, oldcode, USERCODE, regulation, description, brief_description, fee, pt_fee) values (%%s, %%s, %%s, %%s, %%s, %%s, %%s, %%s, %%s)'''.replace("\n", " ") LOCK_QUERY = 'lock tables newfeetable read, %s write' class DatabaseUpdater(DatabaseUpdaterThread): def transferData(self): ''' move data into the new tables ''' for table, vals in ( ("feetable_scotNHS_08_Adult", "NF08, NF08_pt"), ("feetable_scotNHS_08_Child", "NF08, NF08_pt"), ("feetable_scotNHS_09_Adult", "NF09, NF09_pt"), ("feetable_scotNHS_09_Child", "NF09, NF09_pt"), ("feetable_Private_2009", "PFA"), ("feetable_Private_2010", "PFA"), ("feetable_HDP", "PFA") ): self.cursor.execute(LOCK_QUERY % table) self.cursor.execute(SRC_QUERY % vals) rows = self.cursor.fetchall() query = DEST_QUERY % table if "," not in vals: query = query.replace(", pt_fee", "") query = query.replace("%s,", "", 1) values = [row for row in rows if "NHS" in table or row[7] != 0] self.cursor.executemany(query, values) self.cursor.execute("unlock tables") def run(self): LOGGER.info("running script to convert from schema 1.3 to 1.4") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) # transfer data self.progressSig(20, _("copying data across from old feetable")) self.transferData() # update the schema version # pass a tuple of compatible clients and the "user" # who made these changes. # only 1.4 client will work now. self.progressSig(90, _('updating settings')) self.update_schema_version(("1.4",), "1_3 to 1_4 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.4") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_4to1_5.py0000644000175000017500000001012712710144046025627 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data from the patients table in schema 1_4 to a new exemptions table in schema 1_5 also, remove the key for calendar, it makes more sense to have the date as the primary key. (cleaner code for updates) ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'alter table clinical_memos add column synopsis text', 'alter table calendar drop column ix', 'alter table calendar add primary key(adate)', 'DROP TABLE if exists exemptions', ''' CREATE TABLE exemptions ( ix int(10) unsigned NOT NULL auto_increment , serialno int(11) unsigned NOT NULL , exemption varchar(10), exempttext varchar(50), datestamp DATETIME NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (ix), key (serialno)) ''' ] SRC_QUERY = '''select serialno, exmpt, exempttext from patients where exmpt != "" or exempttext !=""''' DEST_QUERY = '''insert into exemptions (serialno, exemption, exempttext) values (%s, %s, %s)''' class DatabaseUpdater(DatabaseUpdaterThread): def transferData(self): ''' move data into the new tables ''' self.cursor.execute('lock tables patients read, exemptions write') self.cursor.execute(SRC_QUERY) rows = self.cursor.fetchall() self.cursor.executemany(DEST_QUERY, rows) self.cursor.execute("unlock tables") def run(self): LOGGER.info("running script to convert from schema 1.4 to 1.5") try: self.connect() self.progressSig(20, _("creating new tables")) self.execute_statements(SQLSTRINGS) # transfer data between tables self.progressSig(50, _('transfering data')) LOGGER.info("transfering data to new table, ...") self.transferData() self.progressSig(90, _('updating settings')) self.update_schema_version(("1.5",), "1_4 to 1_5 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.5") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_5to1_6.py0000644000175000017500000001720112710144046025631 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 1_6 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists docsimported', 'drop table if exists docsimporteddata', 'alter table forum change comment comment text not null', ''' CREATE TABLE docsimported ( ix mediumint(8) unsigned NOT NULL auto_increment, serialno int(11) unsigned NOT NULL default 0, datatype varchar(60) NOT NULL default 'application/octet-stream', name varchar(120) NOT NULL default '', size bigint(20) unsigned NOT NULL default '1024', filedate datetime NOT NULL default '0000-00-00 00:00:00', importime timestamp NOT NULL default CURRENT_TIMESTAMP, PRIMARY KEY (ix) ) ''', ''' CREATE TABLE docsimporteddata ( ix mediumint(8) unsigned NOT NULL auto_increment, masterid mediumint(8) unsigned NOT NULL default '0', filedata blob NOT NULL, PRIMARY KEY (ix), KEY master_idx (masterid) ) ''' ] TYPEDICT = { "exam": ('0101', '0111', '0121', '0131', '4701'), "xray": ('0202', '0203', '0204', '0205', '0206', '0207', '0211', '0212', '0213', '0221', '0301', '4901', '4911', '4921', '4931', ), "perio": ('1001', '1011', '1021', '1022', '1041', '1100', '1101', '1102', '1103', '1111', '1112', '1113', '1121', '1131', '1191'), "CHART": ('1401', '1402', '1403', '1404', '1411', '1412', '1415', '1416', '1417', '1418', '1420', '1421', '1422', '1423', '1424', '1425', '1426', '1427', '1431', '1451', '1461', '1462', '1470', '1471', '1481', '1482', '1483', '1501', '1502', '1503', '1504', '1511', '1521', '1522', '1523', '1531', '1541', '1551', '1600', '1601', '1700', '1701', '1702', '1703', '1704', '1705', '1706', '1711', '1712', '1716', '1721', '1722', '1723', '1726', '1731', '1732', '1733', '1734', '1735', '1736', '1737', '1738', '1739', '1742', '1743', '1744', '1751', '1761', '1762', '1771', '1781', '1782', '1801', '1802', '1803', '1804', '1805', '1806', '1807', '1808', '1811', '1812', '1813', '1814', '1815', '1816', '1821', '1822', '1823', '1824', '1825', '1826', '1827', '1831', '1832', '1841', '1851', '1852', '1861', '1862', '1871', '2101', '2201', '2202', '2203', '2204', '2205', '2206', '2207', '2221', '3611', '3661', '3671', '4401', '4402', '4403', '4404', '4405', '4406', '5001', '5112', '5021', '5021', '5031', '5032', '5041', '5071', '5075', '5102', '5103', '5103', '5201', '5211', '5212', '5213', '5214', '5215', '5216', '5217', '5811', '5812', '5813', '5814', '5820', '5821', '5822', '5823', '5824', '5825', '5826', '5827', '5831', '5836', '5837', '5838', '5841', '5842', '5843', '6001', '6002', '6003', '6004'), "ndu": ('2711', '2730', '2731', '2733', '2741', '2743', '2744', '2745', '2761', '2771', '2781', '5900', '5901', '5903', '5911', '5931', '5941', '5951'), "odu": ('2801', '2803', '2821', '2831', '2851', '2853', '2855', '2861', '2863', '2865', '5501', '5503', '5521', '5531', '5551', '5553', '5555', '5561', '5563', '5565'), "ndl": ('2712', '2732', '2735', '2747', '2748', '2749', '2762', '2772', '2782', '5902', '5905', '5923', '5932', '5942', '5952'), "odl": ('2802', '2804', '2822', '2832', '2852', '2854', '2856', '2862', '2864', '2866', '5502', '5504', '5522', '5532', '5551', '5553', '5555', '5562', '5564', '5566', ), "ortho": ('3241', '3242', '3243', '3244', '3245', '3246', '3247', '3248', '3249', '3261', '3262', '3263', '3264', '3281', '3282', '3283', '3284', '3285', '3291', '5581', '5582', '5583', '5584', '5585', '5586', '5587', '5588', '5589') } class DatabaseUpdater(DatabaseUpdaterThread): def addColumns(self): ''' fee tables need a new column ''' self.cursor.execute('select tablename from feetable_key') rows = self.cursor.fetchall() for row in rows: LOGGER.info("altering feetable '%s'", row[0]) query = 'alter table %s add column pl_cmp char(20)' % row[0] self.cursor.execute(query) def insertValues(self): ''' fee tables need a new column ''' self.cursor.execute('select tablename from feetable_key') rows = self.cursor.fetchall() for row in rows: LOGGER.info("updating codes in feetable '%s'", row[0]) query = 'update %s set pl_cmp=%%s where code=%%s' % row[0] for key in TYPEDICT: for code in TYPEDICT[key]: values = (key, code) self.cursor.execute(query, values) def run(self): LOGGER.info("running script to convert from schema 1.5 to 1.6") try: self.connect() self.progressSig(20, _("creating new tables")) self.execute_statements(SQLSTRINGS) # transfer data between tables self.progressSig(40, _('transfering data')) LOGGER.info("adding columns to the feetables table, ...") self.addColumns() self.progressSig(60, _('inserting values')) LOGGER.info("inserting values") self.insertValues() self.progressSig(90, _('updating settings')) self.update_schema_version(("1.6",), "1_5 to 1_6 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.6") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_6to1_7.py0000644000175000017500000002710312710144046025635 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 1_7 ''' import logging from xml.dom import minidom from openmolar.connect import params from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") DATABASE_NAME = params.db_name SQLSTRINGS = [ 'alter table feetable_key add column data mediumtext', 'alter table feetable_key change column data data mediumtext', ] REGEXDICT = { '2733': 'SR P', '0131': 'CTS', '1782': 'reg [ul]lr][1-8]CR,RC', '1541': 'reg [ul][lr][1-8]RR$', '1461': 'reg u[lr][4-8]GC/[MODBP]$|l[lr][4-8]GC/[MODBL]$|u[lr][1-3]GC/[MIDBP]$|l[lr][1-3]GC/[MIDBL]$', '0301': 'PHO', '1462': 'reg u[lr][4-8]GC/[MODBP]{2,5}$|l[lr][4-8]GC/[MODBL]{2,5}$|u[lr][1-3]GC/[MIDBP]{2,5}$|l[lr][1-3]GC/[MIDBL]{2,5}', '0121': 'FCA', '0201': 'S', '3641': 'PR', '1551': 'reg [ul][lr][A-E]$', '1701': 'reg u[lr][4-8]GI/[MODBP]$|l[lr][4-8]GI/[MODBL]$|u[lr][1-3]GI/[MIDBP]$|l[lr][1-3]GI/[MIDBL]$', '1702': 'reg u[lr][4-8]GI/[MODBP]{2}$|l[lr][4-8]GI/[MODBL]{2}$|u[lr][1-3]GI/[MDBP]{2}$|l[lr][1-3]GI/[MDBL]{2}$', '1703': 'multireg [ul][lr][1-3]GI/.*I _AND_ u[lr][1-3]GI/[MDBPI]{2}$|l[lr][1-3]GI/[MDBLI]{2}$', '1704': 'reg u[lr][4-8]GI/[MODBP]{3,5}$|l[lr][4-8]GI/[MODBL]{3,5}$|u[lr][1-3]GI/[MIDBP]{3,5}$|l[lr][1-3]GI/[MIDBL]{3,5}$', '1705': 'Gold_3_4', '1706': 'CR,GO', '1825': 'reg [ul][lr][1-8]BR/P,GO', '1827': 'reg [ul][lr][1-8]BR/P,GO', '1831': 'reg [ul][lr][1-8]BR/P,V1', '4401': 'reg u[lr][DE][MODBP]{1,5}(,CO)?(,GL)?(,AM)?$|l[lr][DE][MODBL]{1,5}(,CO)?(,GL)?(,AM)?$|u[lr][A-C][MIDBP]{1,5}(,CO)?(,GL)?(,AM)?$|l[lr][A-C][MIDBL]{1,5}(,CO)?(,GL)?(,AM)?$', '2311': 'IS', '1418': 'CO-4surf', '4404': 'reg [ul][lr][A-E]RT$', '0601': 'OHI', '1411': 'reg [ul][lr][4-6]TR/[MD]{1}(,CO)?$', '1412': 'reg [ul][lr][4-6]TR/[MD]{2}(,CO)?$', '1415': 'CO-1surf', '1416': 'CO-2surf', '1417': 'CO-3surf', '0111': 'ECE', '1121': 'CG', '1483': 'reg [ul][lr][4-8]FS,GC$', '1482': 'reg [ul][lr][4-8]FS,CO$', '1481': 'reg [ul][lr][4-8]FS$', '5601': 'AC', '5701': 'DV1', '3671': 'OD', '4801': 'PR', '1716': 'reg [ul][lr][1-8]CR,PJ', '2301': 'AH', '1851': 'reg [ul][lr][1-8]BR/T1', '1852': 'reg [ul][lr][1-8]BR/T2', '2302': 'PSR', '0204': 'P', '0202': 'M', '1521': 'reg [ul][lr][1-3]AP$', '1522': 'reg [ul][lr][45]AP$', '1523': 'reg u[lr][6-8]AP$', '1403': 'reg u[lr][4-8]([BP]{0,2}([MO]{2}|[DO]{2})[BP]{0,2})(,AM)?$|l[lr][4-8][BL]{0,2}([MO]{2}|[DO]{2})[BL]{0,2}(,AM)?$', '1402': 'reg u[lr][4-8][OBP]{2,5}(,AM)?$|l[lr][4-8][OBL]{2,5}(,AM)?$|u[lr][4-8][MDBP]{2,5}(,AM)?$|l[lr][4-8][MDBL]{2,5}(,AM)?$|l[lr][1-3][MDBLI]{2,5},AM$|u[lr][1-3][MDBPI]{2,5},AM$', '1401': 'reg u[lr][4-8][MODBP]{1}(,AM)?$|l[lr][4-8][MODBL]{1}(,AM)?$|u[lr][1-3][MIDBP]{1},AM$|l[lr][1-3][MIDBL]{1},AM$', '1011': 'SP+', '1404': 'reg u[lr][4-8][BP]{0,2}([MOD]{3}|[DOM]{3})[BP]{0,2}(,AM)?$|l[lr][4-8][BL]{0,2}([MOD]{3}|[DOM]{3})[BL]{0,2}(,AM)?$', '5001': 'DR', '2201': 'EX/S1', '0101': 'CE', '1425': '[ul][lr][456]CT$', '5122': 'BR,RC', '2206': 'reg l[lr]8EX/S3', '1431': '[ul][lr][1-8]PR$', '1726': 'reg [ul][lr][1-8]CR,A1', '2207': 'reg l[lr]8EX/S4', '1722': 'reg [ul][lr][1-8]CR,A1', '1721': 'reg [ul][lr][1-8]CR,V1', '0211': 'SM1', '0213': 'SM', '0212': 'SM2', '1531': 'reg l[lr][6-8]AP$', '1002': 'SP-', '1001': 'SP', '3611': 'ST', '5032': 'PX+', '5031': 'PX', '1421': 'reg u[lr][1-3][MDBPI]{1}(,CO)?$|l[lr][1-3][MDBIL]{1}(,CO)?$|u[lr][4-8][MDBP]{1},CO$|l[lr][4-8][MDBL]{1},CO$', '1420': 'reg u[lr][1-3][MDBPI]{2,5}(,CO)?$|l[lr][1-3][MDBIL]{2,5}(,CO)?$|u[lr][4-8][MDBP]{2},CO$|l[lr][4-8][MDBL]{2},CO$', '2202': 'reg [ul][lr][1-3]EX/S2', '2203': 'reg [ul][lr][4-7]EX/S2', '2204': 'reg u[lr]8EX/S3', '2205': 'reg u[lr]8EX/S4', '1427': 'reg u[lr][4-8][MODBP]{2,6},GL$|l[lr][4-8][MODBL]{2,6},GL$|u[lr][1-3][MDBPI]{2,6},GL$|l[lr][1-3][MDBLI]{2,6},GL$', '1426': 'reg u[lr][1-8][MDBP]{1},GL$|l[lr][1-8][MDBL]{1},GL$|[ul][lr][1-3]I,GL', '1731': 'reg [ul][lr][1-8]C1$', '1733': 'reg [ul][lr][1-8]C3$', '1732': 'reg [ul][lr][1-8]C2$', '1734': 'reg [ul][lr][1-8]C4$', '5702': 'DV2', '5703': 'DV3', '1502': 'reg u[lr][45]RT$', '1503': 'reg l[lr][45]RT$', '1501': 'reg [ul][lr][1-3]RT$', '1504': 'reg [ul][lr][6-8]RT$', '2121': 'XV', '1862': 'reg [ul][lr][1-8]BR,RC', '5102': 'CR,TC', '2211': 'FR', '4403': 'reg [ul][lr][A-E]PX$', '5712': 'RA2', '5711': 'RA1', '2101': 'EX', '1742': 'reg [ul][lr][1-8]CR,TC', '2734': 'LB -or- PB', '2735': 'SR P/', '2730': 'SR F/F', '2732': 'SR F', '5112': 'CR,RC', '2738': 'SR', '3631': 'SC', '5051': 'SC', '4001': 'OT', '2221': 'EX/S5', '2742': 'SS F -or- CC F', '0711': 'FL', '1751': 'reg [ul]lr][1-8]CR,OT', '1712': 'reg [ul][lr][1-8]CR,A2', '0221': 'AA', '3701': 'AC', '5041': 'ST', '1807': 'reg [ul][lr][1-8]BR/CR,V1', '1806': 'reg [ul][lr][1-8]BR/CR,GO', '1041': 'SPL', '1804': 'reg [ul][lr][1-8]BR/CR,GO', '1601': 'PV', '1808': 'reg [ul][lr][1-8]BR/CR,V2', '0701': 'FS'} TABLE_QUERY = 'select ix, tablename from feetable_key' COLUMN_QUERY = '''SELECT column_name FROM information_schema.columns WHERE table_name = %s AND table_schema = %s''' UPDATE_QUERY = "UPDATE feetable_key SET data = %s WHERE ix = %s" class DatabaseUpdater(DatabaseUpdaterThread): def convert_table_to_XML(self, table): ''' convert the table to XML called by schema upgrade script 1_6 to 1_7 ''' LOGGER.info("converting %s to xml", table) # poll database for fee tables self.cursor.execute(COLUMN_QUERY, (table, DATABASE_NAME)) rows = self.cursor.fetchall() col_names = [] for row in rows: col_names.append(row[0]) # now convert to xml dom = minidom.Document() tab = dom.createElement("table") itemcodeIndex = col_names.index("code") currentItem = "" query = 'select * from %s' % table self.cursor.execute(query) # , (table,)) for row in self.cursor.fetchall(): newNode = row[itemcodeIndex] != currentItem currentItem = row[itemcodeIndex] if newNode: item = dom.createElement("item") fees = [] ptfees = [] for i, col in enumerate(col_names): makeNode = col != "ix" and (newNode or col not in ("section", "code", "oldcode", "USERCODE", "regulation", "description", "hide", "pl_cmp")) if col.startswith("fee") or col.startswith("pt_fee"): makeNode = False try: val = int(row[i]) except ValueError: val = 0 except TypeError: val = 0 if col.startswith("fee"): fees.append(val) else: ptfees.append(val) if makeNode: if col == "USERCODE": colno = col_names.index("code") d = dom.createElement("USERCODE") val = REGEXDICT.get(row[colno], "") d.appendChild(dom.createTextNode(val)) elif row[i]: d = dom.createElement(col) val = str(row[i]) d.appendChild(dom.createTextNode(val)) item.appendChild(d) d = dom.createElement("fee") d.appendChild(dom.createTextNode(str(fees).strip("[]"))) item.appendChild(d) p_fees_str = str(ptfees).strip("[]") if p_fees_str: d = dom.createElement("pt_fee") d.appendChild(dom.createTextNode(p_fees_str)) item.appendChild(d) tab.appendChild(item) dom.appendChild(tab) result = dom.toxml() dom.unlink() return result def insertValues(self): ''' fee tables need a new column "Data" to replace the multiple tables ''' self.cursor.execute(TABLE_QUERY) rows = self.cursor.fetchall() for ix, tablename in rows: LOGGER.info("altering feetable %s", tablename) values = (self.convert_table_to_XML(tablename), ix) self.cursor.execute(UPDATE_QUERY, values) def run(self): LOGGER.info("running script to convert from schema 1.6 to 1.7") try: self.connect() # execute the SQL commands self.progressSig(20, _("executing statements")) self.execute_statements(SQLSTRINGS) # transfer data between tables self.progressSig(60, _('inserting values')) self.insertValues() self.progressSig(90, _('updating settings')) self.update_schema_version(("1.6", "1.7",), "1_6 to 1_7 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.7") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_7to1_8.py0000644000175000017500000001304012710144046025632 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 1_8 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ ''' alter table aslot add column timestamp timestamp not null default CURRENT_TIMESTAMP ''', 'DROP TABLE if exists phrasebook', ''' CREATE TABLE if not exists phrasebook ( clinician_id int unsigned NOT NULL, phrases text, PRIMARY KEY (clinician_id) ) ''', 'drop table if exists feetable_HDP', 'drop table if exists feetable_Private_2009', 'drop table if exists feetable_Private_2010', 'drop table if exists feetable_scotNHS_08_Adult', 'drop table if exists feetable_scotNHS_08_Child', 'drop table if exists feetable_scotNHS_09_Adult', 'drop table if exists feetable_scotNHS_09_Child', ] EXAMPLE_PHRASEBOOK = '''
    Anaesthetics
    No LA. Anaesthetic Used - Citanest Anaesthetic Used - Scandonest Plain Anaesthetic Used - Scandonest Special Anaesthetic Used - Septonest + 1:100,000 Adrenaline (Gold) Anaesthetic Used - Septonest + 1:200,000 Adrenaline (Green) Anaesthetic Used - Lignocaine + 1:80,000 Adrenaline
    Restorations
    choose_tooth Restored using Amalgam Restored using Fuji Ix Restored using Etch/bond/Tetric Composite Restored using Etch/bond/Venus-Diamond Composite Restored using Etch/bond/Synergy Composite
    Preparation
    choose_tooth Crown Preparation, Pentamix Impression, Alginate of opposing arch. Temporised with Quick Temp and tempbond Bridge Preparation, Pentamix Impression, Alginate of opposing arch. Temporised with Quick Temp and tempbond Crown Preparation, Pentamix Impression in triple tray. Temporised with Quick Temp and tempbond Bridge Preparation, Afinis Impression in triple tray. Temporised with Quick Temp and tempbond choose_shade
    Endodontics
    choose_tooth 1st Stage RCT, irrigated and dried, dressed ledermix and coltosol 1st Stage RCT, irrigated and dried, dressed hypocal and coltosol Final Stage RCT, irrigated and dried, Sealed with tubliseal and gutta percha.
    ''' INSERT_QUERY = "insert into phrasebook values (%s, %s)" class DatabaseUpdater(DatabaseUpdaterThread): def insertValues(self): ''' insert the demo phrasebook ''' values = (0, EXAMPLE_PHRASEBOOK) self.cursor.execute(INSERT_QUERY, values) def run(self): LOGGER.info("running script to convert from schema 1.7 to 1.8") try: self.connect() self.progressSig(20, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(60, _('inserting values')) self.insertValues() self.progressSig(90, _('updating settings')) self.update_schema_version(("1.8",), "1_7 to 1_8 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.8") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_8to1_9.py0000644000175000017500000001303512710144046025640 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 1_9 ''' from collections import OrderedDict import logging from openmolar.schema_upgrades.database_updater_thread import \ DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ ''' CREATE TABLE IF NOT EXISTS formatted_notes (ix serial, serialno int(11), ndate date, op1 varchar(8), op2 varchar(8), ntype varchar(32), note varchar(80), timestamp timestamp default NOW()); ''', ''' create index formatted_notes_serialno_index on formatted_notes(serialno); ''', ''' create index newdocsprinted_serialno_index on newdocsprinted(serialno); ''' ] GET_NOTES_QUERY = 'SELECT line from notes where serialno = %s order by lineno' class DatabaseUpdater(DatabaseUpdaterThread): def __init__(self, *args, **kwargs): DatabaseUpdaterThread.__init__(self, *args, **kwargs) from openmolar.ptModules import notes self.decipher_noteline = notes.decipher_noteline def get_notes(self, sno): self.cursor.execute(GET_NOTES_QUERY, (sno,)) results = self.cursor.fetchall() notes_dict = OrderedDict() ndate, op = "", "" # a line is like ('\x01REC\x0c\x08m\x0c\x08m\n\x08',) for line, in results: ntype, note, operator, date2 = self.decipher_noteline(line) if date2 != "": ndate = date2 if operator != "": op = operator key = (ndate, op) if key in notes_dict: notes_dict[key].append((ntype, note)) else: notes_dict[key] = [(ntype, note)] return notes_dict def transfer(self, sno): LOGGER.debug("transferring notes for serialnos %s", sno) notes_dict = self.get_notes(sno) query = '''insert into formatted_notes (serialno, ndate, op1 , op2 , ntype, note) values (%s, %s, %s, %s, %s, %s)''' values = [] for key in notes_dict: date, ops = key op2 = None if "/" in ops: op1, op2 = ops.split("/") else: op1 = ops for ntype, note in notes_dict[key]: values.append((sno, date, op1, op2, ntype, note)) if values: rows = self.cursor.executemany(query, values) LOGGER.debug("%d rows of notes inserted", rows) def get_max_sno(self): self.cursor.execute("select max(serialno) from notes") max_sno = self.cursor.fetchone()[0] return max_sno def insertValues(self): ''' this code is complex, so in a separate module for ease of maintenance ''' max_sno = self.get_max_sno() sno = 0 LOGGER.info("max_sno in notes = %s ", max_sno) while sno < max_sno: sno += 1 self.transfer(sno) progress = int(sno / max_sno * 90) + 8 self.progressSig(progress, "%s %s" % ( _('converting note'), sno)) def run(self): LOGGER.info("running script to convert from schema 1.8 to 1.9") try: self.connect() self.progressSig(2, _("creating new tables and indexes")) self.execute_statements(SQLSTRINGS) self.progressSig(8, _('inserting values')) self.insertValues() self.progressSig(99, _('updating settings')) self.update_schema_version(("1.9",), "1_8 to 1_9 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 1.9") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema1_9to2_0.py0000644000175000017500000001000012710144046025616 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_0 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS_1 = [ 'DROP table IF EXISTS appt_prefs', ''' create table appt_prefs ( serialno int(11), recall_active bool not null default True, recdent_period int, recdent date, rechyg_period int, rechyg date, recall_method enum("post", "sms", "email", "tel"), sms_reminders bool not null default False, no_combined_appts bool not null default False, note varchar(120), PRIMARY KEY (serialno) ); ''' ] SQLSTRINGS_2 = [ ''' insert into appt_prefs (serialno, recall_active, recdent, recdent_period) select serialno, True, recd, 6 from patients where status != "deceased" and recd>20081231; ''', ''' update appt_prefs as t1, patients as t2 set t1.recdent_period = 12 where t1.serialno = t2.serialno and t2.memo like "%yearly%"; ''', ''' update appt_prefs as t1, patients as t2 set t1.note = replace(replace(t2.memo,"\n"," "),"\r","") where t1.serialno = t2.serialno and t2.memo like "%appt%"; ''', ''' update patients as t1, appt_prefs as t2 set t1.memo = "" where t1.serialno = t2.serialno and t1.memo = t2.note; ''' ] class DatabaseUpdater(DatabaseUpdaterThread): def run(self): LOGGER.info("running script to convert from schema 1.9 to 2.0") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new appt_prefs table")) self.execute_statements(SQLSTRINGS_1) self.progressSig(50, _('copying data')) self.execute_statements(SQLSTRINGS_2) self.progressSig(80, _('statements executed')) self.progressSig(90, _('updating settings')) self.update_schema_version(("2.0",), "1_9 to 2_0 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.0") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_0to2_1.py0000644000175000017500000002622412710144046025626 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_1 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists currtrtmt2', ''' create table currtrtmt2 ( courseno int(11) unsigned not null auto_increment , serialno int(11) , examt varchar(10) NOT NULL default '', examd date , accd date , cmpd date , xraypl varchar(56) NOT NULL default '' , periopl varchar(56) NOT NULL default '' , anaespl varchar(56) NOT NULL default '' , otherpl varchar(56) NOT NULL default '' , ndupl varchar(56) NOT NULL default '' , ndlpl varchar(56) NOT NULL default '' , odupl varchar(56) NOT NULL default '' , odlpl varchar(56) NOT NULL default '' , custompl varchar(56) NOT NULL default '' , ur8pl varchar(34) NOT NULL default '' , ur7pl varchar(34) NOT NULL default '' , ur6pl varchar(34) NOT NULL default '' , ur5pl varchar(34) NOT NULL default '' , ur4pl varchar(34) NOT NULL default '' , ur3pl varchar(34) NOT NULL default '' , ur2pl varchar(34) NOT NULL default '' , ur1pl varchar(34) NOT NULL default '' , ul1pl varchar(34) NOT NULL default '' , ul2pl varchar(34) NOT NULL default '' , ul3pl varchar(34) NOT NULL default '' , ul4pl varchar(34) NOT NULL default '' , ul5pl varchar(34) NOT NULL default '' , ul6pl varchar(34) NOT NULL default '' , ul7pl varchar(34) NOT NULL default '' , ul8pl varchar(34) NOT NULL default '' , ll8pl varchar(34) NOT NULL default '' , ll7pl varchar(34) NOT NULL default '' , ll6pl varchar(34) NOT NULL default '' , ll5pl varchar(34) NOT NULL default '' , ll4pl varchar(34) NOT NULL default '' , ll3pl varchar(34) NOT NULL default '' , ll2pl varchar(34) NOT NULL default '' , ll1pl varchar(34) NOT NULL default '' , lr1pl varchar(34) NOT NULL default '' , lr2pl varchar(34) NOT NULL default '' , lr3pl varchar(34) NOT NULL default '' , lr4pl varchar(34) NOT NULL default '' , lr5pl varchar(34) NOT NULL default '' , lr6pl varchar(34) NOT NULL default '' , lr7pl varchar(34) NOT NULL default '' , lr8pl varchar(34) NOT NULL default '' , ur8cmp varchar(34) NOT NULL default '' , ur7cmp varchar(34) NOT NULL default '' , ur6cmp varchar(34) NOT NULL default '' , ur5cmp varchar(34) NOT NULL default '' , ur4cmp varchar(34) NOT NULL default '' , ur3cmp varchar(34) NOT NULL default '' , ur2cmp varchar(34) NOT NULL default '' , ur1cmp varchar(34) NOT NULL default '' , ul1cmp varchar(34) NOT NULL default '' , ul2cmp varchar(34) NOT NULL default '' , ul3cmp varchar(34) NOT NULL default '' , ul4cmp varchar(34) NOT NULL default '' , ul5cmp varchar(34) NOT NULL default '' , ul6cmp varchar(34) NOT NULL default '' , ul7cmp varchar(34) NOT NULL default '' , ul8cmp varchar(34) NOT NULL default '' , ll8cmp varchar(34) NOT NULL default '' , ll7cmp varchar(34) NOT NULL default '' , ll6cmp varchar(34) NOT NULL default '' , ll5cmp varchar(34) NOT NULL default '' , ll4cmp varchar(34) NOT NULL default '' , ll3cmp varchar(34) NOT NULL default '' , ll2cmp varchar(34) NOT NULL default '' , ll1cmp varchar(34) NOT NULL default '' , lr1cmp varchar(34) NOT NULL default '' , lr2cmp varchar(34) NOT NULL default '' , lr3cmp varchar(34) NOT NULL default '' , lr4cmp varchar(34) NOT NULL default '' , lr5cmp varchar(34) NOT NULL default '' , lr6cmp varchar(34) NOT NULL default '' , lr7cmp varchar(34) NOT NULL default '' , lr8cmp varchar(34) NOT NULL default '' , xraycmp varchar(56) NOT NULL default '' , periocmp varchar(56) NOT NULL default '' , anaescmp varchar(56) NOT NULL default '' , othercmp varchar(56) NOT NULL default '' , nducmp varchar(56) NOT NULL default '' , ndlcmp varchar(56) NOT NULL default '' , oducmp varchar(56) NOT NULL default '' , odlcmp varchar(56) NOT NULL default '' , customcmp varchar(56)NOT NULL default '' , PRIMARY KEY (courseno), INDEX (serialno) )''' ] SOURCE_QUERY = ''' SELECT courseno, serialno, examt, examd, accd, cmpd, xraypl, periopl, anaespl, otherpl, ndupl, ndlpl, odupl, odlpl, custompl, ur8pl, ur7pl, ur6pl, ur5pl, ur4pl, ur3pl, ur2pl, ur1pl, ul1pl, ul2pl, ul3pl, ul4pl, ul5pl, ul6pl, ul7pl, ul8pl, ll8pl, ll7pl, ll6pl, ll5pl, ll4pl, ll3pl, ll2pl, ll1pl, lr1pl, lr2pl, lr3pl, lr4pl, lr5pl, lr6pl, lr7pl, lr8pl, ur8cmp, ur7cmp, ur6cmp, ur5cmp, ur4cmp, ur3cmp, ur2cmp, ur1cmp, ul1cmp, ul2cmp, ul3cmp, ul4cmp, ul5cmp, ul6cmp, ul7cmp, ul8cmp, ll8cmp, ll7cmp, ll6cmp, ll5cmp, ll4cmp, ll3cmp, ll2cmp, ll1cmp, lr1cmp, lr2cmp, lr3cmp, lr4cmp, lr5cmp, lr6cmp, lr7cmp, lr8cmp, xraycmp, periocmp, anaescmp, othercmp, nducmp, ndlcmp, oducmp, odlcmp, customcmp from currtrtmt order by courseno''' DEST_QUERY = ''' insert into currtrtmt2 (serialno, examt, examd, accd, cmpd, xraypl, periopl, anaespl, otherpl, ndupl, ndlpl, odupl, odlpl, custompl, ur8pl, ur7pl, ur6pl, ur5pl, ur4pl, ur3pl, ur2pl, ur1pl, ul1pl, ul2pl, ul3pl, ul4pl, ul5pl, ul6pl, ul7pl, ul8pl, ll8pl, ll7pl, ll6pl, ll5pl, ll4pl, ll3pl, ll2pl, ll1pl, lr1pl, lr2pl, lr3pl, lr4pl, lr5pl, lr6pl, lr7pl, lr8pl, ur8cmp, ur7cmp, ur6cmp, ur5cmp, ur4cmp, ur3cmp, ur2cmp, ur1cmp, ul1cmp, ul2cmp, ul3cmp, ul4cmp, ul5cmp, ul6cmp, ul7cmp, ul8cmp, ll8cmp, ll7cmp, ll6cmp, ll5cmp, ll4cmp, ll3cmp, ll2cmp, ll1cmp, lr1cmp, lr2cmp, lr3cmp, lr4cmp, lr5cmp, lr6cmp, lr7cmp, lr8cmp, xraycmp, periocmp, anaescmp, othercmp, nducmp, ndlcmp, oducmp, odlcmp, customcmp) values (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) ''' PATIENT_QUERY = ''' update patients set courseno0=%s where serialno=%s and courseno0=%s ''' ESTIMATES_QUERY = ''' update newestimates set courseno=%s where serialno=%s and courseno=%s ''' GARBAGE_QUERY = ''' delete from currtrtmt2 WHERE examt="" AND xraypl="" AND periopl="" AND anaespl="" AND otherpl="" AND ndupl="" AND ndlpl="" AND odupl="" AND odlpl="" AND custompl="" AND ur8pl="" AND ur7pl="" AND ur6pl="" AND ur5pl="" AND ur4pl="" AND ur3pl="" AND ur2pl="" AND ur1pl="" AND ul1pl="" AND ul2pl="" AND ul3pl="" AND ul4pl="" AND ul5pl="" AND ul6pl="" AND ul7pl="" AND ul8pl="" AND ll8pl="" AND ll7pl="" AND ll6pl="" AND ll5pl="" AND ll4pl="" AND ll3pl="" AND ll2pl="" AND ll1pl="" AND lr1pl="" AND lr2pl="" AND lr3pl="" AND lr4pl="" AND lr5pl="" AND lr6pl="" AND lr7pl="" AND lr8pl="" AND ur8cmp="" AND ur7cmp="" AND ur6cmp="" AND ur5cmp="" AND ur4cmp="" AND ur3cmp="" AND ur2cmp="" AND ur1cmp="" AND ul1cmp="" AND ul2cmp="" AND ul3cmp="" AND ul4cmp="" AND ul5cmp="" AND ul6cmp="" AND ul7cmp="" AND ul8cmp="" AND ll8cmp="" AND ll7cmp="" AND ll6cmp="" AND ll5cmp="" AND ll4cmp="" AND ll3cmp="" AND ll2cmp="" AND ll1cmp="" AND lr1cmp="" AND lr2cmp="" AND lr3cmp="" AND lr4cmp="" AND lr5cmp="" AND lr6cmp="" AND lr7cmp="" AND lr8cmp="" AND xraycmp="" AND periocmp="" AND anaescmp="" AND othercmp="" AND nducmp="" AND ndlcmp="" AND oducmp="" AND odlcmp="" AND customcmp="" ''' CORRECTION_QUERY = ''' update patients join (select serialno, max(courseno) cno from currtrtmt2 group by serialno) as t on t.serialno = patients.serialno set courseno0 = cno where cno > courseno0 ''' class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' self.cursor.execute(SOURCE_QUERY) rows = self.cursor.fetchall() for i, row in enumerate(rows): courseno = row[0] serialno = row[1] self.cursor.execute(DEST_QUERY, row[1:]) new_cno = self.db.insert_id() self.cursor.execute(PATIENT_QUERY, (new_cno, serialno, courseno)) self.cursor.execute(ESTIMATES_QUERY, (new_cno, serialno, courseno)) if i % 100 == 0: self.progressSig(80 * i / len(rows) + 10, _("transfering data")) def run(self): LOGGER.info("running script to convert from schema 2.0 to 2.1") try: self.connect() # execute the SQL commands self.progressSig(5, _("creating currtrtmt2 table")) self.execute_statements(SQLSTRINGS) self.progressSig(10, _('transferring data')) self.transfer_data() self.progressSig(95, _("deleting void courses")) self.execute_statements([GARBAGE_QUERY, CORRECTION_QUERY]) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.1",), "2_0 to 2_1 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.1") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.error("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_1to2_2.py0000644000175000017500000002204412710144046025624 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_2 ''' import logging import os from openmolar.settings import localsettings from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists currtrtmt', 'drop table if exists est_link', 'drop table if exists feescales', 'drop table if exists est_logger', 'update patients set addr2="" where addr2 is NULL', 'update patients set addr3="" where addr3 is NULL', 'update patients set town="" where town is NULL', 'update patients set county="" where town is NULL', ''' alter table patients alter column addr2 set default "", alter column addr3 set default "", alter column town set default "", alter column county set default "" ''', ''' alter table newestimates modify column itemcode char(5) ''', ''' update newestimates set itemcode="-----" where itemcode = "4001" ''', ''' update newestimates set itemcode="CUSTO" where itemcode = "4002" ''', ''' create table est_link ( ix int(11) unsigned not null auto_increment , est_id int(11), daybook_id int(11), tx_hash varchar(20) NOT NULL, completed bool NOT NULL default 0, PRIMARY KEY (ix), INDEX (est_id) )''', 'create index est_link_hash_index on est_link(tx_hash)', ''' create table feescales ( ix int(11) unsigned not null auto_increment, in_use bool not null default false, priority int(8), comment varchar(255) not null default "unnamed feescale", xml_data mediumtext not null, PRIMARY KEY (ix) )''', ''' create table est_logger ( ix int(11) unsigned not null auto_increment, courseno int(11) unsigned not null, est_data mediumtext not null, operator varchar(16) not null, time_stamp timestamp NOT NULL default CURRENT_TIMESTAMP, PRIMARY KEY (ix) )''', 'update currtrtmt2 set ndlpl = replace(ndlpl, "SR ", "SR_")', 'update currtrtmt2 set ndlpl = replace(ndlpl, "CC ", "CC_")', 'update currtrtmt2 set ndupl = replace(ndupl, "SR ", "SR_")', 'update currtrtmt2 set ndupl = replace(ndupl, "SR ", "SR_")', 'update currtrtmt2 set ndlcmp = replace(ndlcmp, "SR ", "SR_")', 'update currtrtmt2 set ndlcmp = replace(ndlcmp, "CC ", "CC_")', 'update currtrtmt2 set nducmp = replace(nducmp, "SR ", "SR_")', 'update currtrtmt2 set nducmp = replace(nducmp, "SR ", "SR_")', ''' update newestimates set type = replace(type, "SR ", "SR_") where category in ("ndu", "ndl") ''', ''' update newestimates set type = replace(type, "CC ", "CC_") where category in ("ndu", "ndl") ''' ] SOURCE_QUERY = ('SELECT courseno, ix, category, type, completed ' 'FROM newestimates ' 'ORDER BY serialno, courseno, category, type, completed DESC') DEST_QUERY = ('insert into est_link (est_id, tx_hash, completed) ' 'values (%s, %s, %s)') FEESCALE_QUERY = ('insert into feescales (xml_data, in_use, comment) ' 'values (%s, 1, "example feescale")') # this query gets selected estimate data for all active courses LOGGER_SELECT_QUERY = ''' select newestimates.courseno, number, itemcode, description, csetype, feescale, dent, fee, ptfee from newestimates join (select currtrtmt2.courseno from currtrtmt2 join patients on currtrtmt2.courseno = patients.courseno0 where accd is not NULL and cmpd is NULL) as active_courses on newestimates.courseno=active_courses.courseno order by newestimates.courseno, newestimates.itemcode, newestimates.ix ''' LOGGER_INSERT_QUERY = ('insert into est_logger ' '(courseno, est_data, operator) values (%s,%s, %s)') class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' self.cursor.execute(SOURCE_QUERY) rows = self.cursor.fetchall() count, prev_courseno, prev_cat_type = 1, 0, "" for i, row in enumerate(rows): courseno, ix, category, type_, completed = row cat_type = "%s%s" % (category, type_) if courseno != prev_courseno: count = 1 elif cat_type != prev_cat_type: count = 1 else: count += 1 prev_courseno = courseno prev_cat_type = cat_type tx_hash = hash("%s%s%s%s" % (courseno, category, count, type_)) if completed is None: completed = False values = (ix, tx_hash, completed) self.cursor.execute(DEST_QUERY, values) if i % 1000 == 0: self.progressSig(50 * i / len(rows) + 10, _("transfering data")) self.cursor.execute(LOGGER_SELECT_QUERY) rows = self.cursor.fetchall() prev_courseno = None est_log_text = "" total, p_total = 0, 0 for i, (courseno, number, itemcode, description, csetype, feescale, dent, fee, ptfee) in enumerate(rows): line_text = \ "%s || %s || %s || %s || %s || %s || %s || %s||\n" % ( number, itemcode, description, csetype, feescale, dent, fee, ptfee) if prev_courseno is None or courseno == prev_courseno: est_log_text += line_text total += fee p_total += ptfee else: est_log_text += "TOTAL || || || || || || %s || %s" % ( total, p_total) values = (prev_courseno, est_log_text, "2_2script") self.cursor.execute(LOGGER_INSERT_QUERY, values) est_log_text = line_text total, p_total = fee, ptfee prev_courseno = courseno if i % 1000 == 0: self.progressSig(30 * i / len(rows) + 60, _("transfering data")) def insert_feescales(self): feescale_path = os.path.join( localsettings.wkdir, 'resources', 'feescales', 'example_feescale.xml' ) f = open(feescale_path, "r") data = f.read() f.close() self.cursor.execute(FEESCALE_QUERY, (data,)) def run(self): LOGGER.info("running script to convert from schema 2.1 to 2.2") try: self.connect() # execute the SQL commands self.progressSig(5, _("creating tables")) self.execute_statements(SQLSTRINGS) self.progressSig(10, _("populating est_link table")) self.transfer_data() self.progressSig(95, _("populating feescales")) self.insert_feescales() self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.2",), "2_1 to 2_2 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.2") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_2to2_3.py0000644000175000017500000001237012710144046025627 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_3 ''' import logging from openmolar.settings import localsettings from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists est_link2', ''' create table est_link2 ( ix int(11) unsigned not null auto_increment , est_id int(11), daybook_id int(11), tx_hash char(40) NOT NULL, completed bool NOT NULL default 0, PRIMARY KEY (ix), INDEX (est_id) )''', 'create index est_link2_hash_index on est_link2(tx_hash)', ] SOURCE_QUERY = ('SELECT courseno, ix, category, type, completed ' 'FROM newestimates where type is not null ' 'ORDER BY serialno, courseno, category, type, completed DESC') DEST_QUERY = ('insert into est_link2 (est_id, tx_hash, completed) ' 'values (%s, %s, %s)') CLEANUPSTRINGS = [ ''' update est_link join est_link2 on est_link.est_id = est_link2.est_id set est_link2.completed = est_link.completed, est_link2.daybook_id = est_link.daybook_id ''', ''' insert into est_link2 (est_id, daybook_id, tx_hash, completed) select est_link.est_id, est_link.daybook_id, "BAD_HASH", est_link.completed from est_link left join est_link2 on est_link.est_id=est_link2.est_id where est_link2.tx_hash is NULL ''' ] class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' self.cursor.execute(SOURCE_QUERY) rows = self.cursor.fetchall() count, prev_courseno, prev_cat_type = 1, 0, "" for i, row in enumerate(rows): courseno, ix, category, type_, completed = row cat_type = "%s%s" % (category, type_) if courseno != prev_courseno: count = 1 elif cat_type != prev_cat_type: count = 1 else: count += 1 prev_courseno = courseno prev_cat_type = cat_type tx_hash = localsettings.hash_func( "%s%s%s%s" % (courseno, category, count, type_)) if completed is None: completed = False values = (ix, tx_hash, completed) self.cursor.execute(DEST_QUERY, values) if i % 1000 == 0: self.progressSig(85 * i / len(rows) + 10, _("transfering data")) def run(self): LOGGER.info("running script to convert from schema 2.2 to 2.3") try: self.connect() # execute the SQL commands self.progressSig(5, _("creating est_link2 table")) self.execute_statements(SQLSTRINGS) self.progressSig(10, _("populating est_link2 table")) self.transfer_data() self.progressSig(95, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.3",), "2_2 to 2_3 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.3") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_3to2_4.py0000644000175000017500000000664712710144046025643 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_4 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists daybook_link', ''' create table daybook_link ( ix int(11) unsigned not null auto_increment , daybook_id int(11), tx_hash char(40) NOT NULL, PRIMARY KEY (ix), INDEX (daybook_id) )''', 'create index daybook_id_index on daybook_link(tx_hash)', ] CLEANUPSTRINGS = [ 'drop table if exists est_link', # obsolete since schema 2.2 'alter table est_link2 drop column daybook_id' ] class DatabaseUpdater(DatabaseUpdaterThread): def run(self): LOGGER.info("running script to convert from schema 2.3 to 2.4") try: self.connect() # execute the SQL commands self.progressSig(50, _("creating est_link2 table")) self.execute_statements(SQLSTRINGS) self.progressSig(95, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.4",), "2_3 to 2_4 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.4") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_4to2_5.py0000644000175000017500000001137412710144046025636 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_5 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists referral_centres', 'drop table if exists previous_snames', ''' create table referral_centres ( ix int(11) unsigned not null auto_increment , description char(64) NOT NULL DEFAULT "referral", greeting char(64) NOT NULL DEFAULT "Dear Sir/Madam", addr1 char(64) NOT NULL DEFAULT "", addr2 char(64) NOT NULL DEFAULT "", addr3 char(64) NOT NULL DEFAULT "", addr4 char(64) NOT NULL DEFAULT "", addr5 char(64) NOT NULL DEFAULT "", addr6 char(64) NOT NULL DEFAULT "", addr7 char(64) NOT NULL DEFAULT "", PRIMARY KEY (ix) ) ''', ''' INSERT INTO referral_centres (description, greeting, addr1, addr2, addr3, addr4, addr5, addr6) values ("Example Referral Centre", "Dear Sir/Madam", "The Head Clinician", "Orthodontic Department", "The Local Dental Hospital", "Any Street", "Any Town", "POST CODE") ''', ''' create table previous_snames ( ix int(11) unsigned not null auto_increment , serialno int(11), psn char(40) NOT NULL, PRIMARY KEY (ix), INDEX (serialno) )''', ''' UPDATE patients SET county="" WHERE COUNTY is NULL ''' ] # NOTE - if next statement fails, it is silently overlooked. CLEANUPSTRINGS = ['ALTER TABLE patients DROP COLUMN recd'] SOURCE_QUERY = \ 'SELECT serialno, psn FROM patients WHERE psn != "" AND psn IS NOT NULL' DEST_QUERY = 'INSERT INTO previous_snames (serialno, psn) VALUES (%s, %s)' class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' self.cursor.execute(SOURCE_QUERY) rows = self.cursor.fetchall() self.cursor.executemany(DEST_QUERY, rows) def run(self): LOGGER.info("running script to convert from schema 2.4 to 2.5") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(50, _("transferring data")) self.transfer_data() self.progressSig(95, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.5",), "2_4 to 2_5 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.5") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_5to2_6.py0000644000175000017500000000657012710144046025642 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_6 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ '''ALTER TABLE currtrtmt2 ADD COLUMN ftr bool DEFAULT false''', ] # NOTE - if next statement fails, it is silently overlooked. CLEANUPSTRINGS = [ 'ALTER TABLE patients DROP COLUMN psn', ] class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' pass def run(self): LOGGER.info("running script to convert from schema 2.5 to 2.6") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(50, _("transferring data")) self.transfer_data() self.progressSig(95, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.6",), "2_5 to 2_6 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.6") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_6to2_7.py0000644000175000017500000001424012710144046025635 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_7 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'DROP TABLE IF EXISTS clinician_dates', 'DROP TABLE IF EXISTS diary_link', 'DROP TABLE IF EXISTS clinicians', ''' CREATE TABLE clinicians ( ix smallint(5) unsigned not null auto_increment, initials CHAR(5) NOT NULL, name VARCHAR(64) NOT NULL, formal_name VARCHAR(128) , qualifications VARCHAR(64) , type smallint(5) NOT NULL default 1, speciality VARCHAR(64), data VARCHAR(255), comments VARCHAR(255), PRIMARY KEY (ix) ) ''', ''' CREATE TABLE clinician_dates ( clinician_ix smallint(5) UNSIGNED NOT NULL, start_date date NOT NULL, end_date date, date_comments VARCHAR(255), FOREIGN KEY (clinician_ix) REFERENCES clinicians(ix) ) ''', ''' CREATE TABLE diary_link ( clinician_ix smallint(5) unsigned not null, apptix smallint(5) unsigned not null, FOREIGN KEY (clinician_ix) REFERENCES clinicians(ix) ) ''' ] # NOTE - if next statement fails, it is silently overlooked. CLEANUPSTRINGS = [] PRACTITIONERS_QUERY = "select id, inits, apptix from practitioners" DENTIST_DATA_QUERY = '''select id,inits,name,formalname,fpcno,quals from practitioners where flag0=1''' APPTIX_QUERY = "select apptix,inits from practitioners where flag3=1" ACTIVE_DENTS_QUERY = \ "select apptix, inits from practitioners where flag3=1 and flag0=1" ACTIVE_HYGS_QUERY = \ "select apptix, inits from practitioners where flag3=1 and flag0=0" SOURCE_QUERY = '''select id, inits, apptix, name, formalname, fpcno, quals, flag0, flag3 from practitioners WHERE inits IS NOT NULL''' DEST_QUERY = '''INSERT INTO clinicians (ix, initials, name, formal_name, qualifications, type, speciality, data, comments) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)''' GET_DATES_QUERY = 'select min(adate), max(adate) from aslot where apptix=%s' ACTIVE_QUERY = '''INSERT INTO clinician_dates (clinician_ix, start_date, end_date, date_comments) VALUES (%s, %s, %s, %s)''' DIARY_LINK_QUERY = \ 'INSERT INTO diary_link (clinician_ix, apptix) VALUES (%s, %s)' class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' self.cursor.execute(SOURCE_QUERY) rows = self.cursor.fetchall() for id_, inits, apptix, name, formalname, fpcno, quals, \ flag0, flag3 in rows: values = (id_, inits, name, formalname, quals, 2 if flag0 == 0 else 1, None, "list_no=%s" % fpcno if fpcno else None, "transferred from practitioners table by 2_7 script") self.cursor.execute(DEST_QUERY, values) appt_book_ix = apptix if apptix != 0 else id_ self.cursor.execute(GET_DATES_QUERY, (appt_book_ix,)) start_date, end_date = self.cursor.fetchone() values = (id_, start_date, None if flag3 == 1 else end_date, "data generated by 2_7 script") self.cursor.execute(ACTIVE_QUERY, values) self.cursor.execute(DIARY_LINK_QUERY, (id_, apptix)) def run(self): LOGGER.info("running script to convert from schema 2.6 to 2.7") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(50, _("transferring data")) self.transfer_data() self.progressSig(95, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.7",), "2_6 to 2_7 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.7") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_7to2_8.py0000644000175000017500000003067012710144046025644 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_8 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'DROP TABLE IF EXISTS static_chart', 'DROP TABLE IF EXISTS patient_money', 'DROP TABLE IF EXISTS patient_dates', 'DROP TABLE IF EXISTS patient_nhs', 'DROP TABLE IF EXISTS new_patients', ''' CREATE TABLE new_patients ( serialno int(11) NOT NULL, sname varchar(30), fname varchar(30), title varchar(30), sex char(1), dob date, addr1 varchar(30) not null default "", addr2 varchar(30) not null default "", addr3 varchar(30) not null default "", town varchar(30) not null default "", county varchar(30) not null default "", pcde varchar(30) not null default "", tel1 varchar(30) not null default "", tel2 varchar(30) not null default "", mobile varchar(30) not null default "", fax varchar(30) not null default "", email1 varchar(50) not null default "", email2 varchar(50) not null default "", occup varchar(30) not null default "", nhsno varchar(30) not null default "", cnfd date, cset varchar(10), dnt1 smallint(6), dnt2 smallint(6), courseno0 int(11), billdate date, billct tinyint(3) unsigned, billtype char(1), familyno int(11), memo varchar(255) not null default "", status varchar(30) not null default "", PRIMARY KEY (serialno) ) ''', ''' CREATE TABLE patient_nhs ( pt_sno int(11) not null, initaccept date, lastreaccept date, lastclaim date, expiry date, cstatus tinyint(3) unsigned, transfer date, pstatus tinyint(3) unsigned, FOREIGN KEY (pt_sno) REFERENCES new_patients(serialno) ) ''', ''' CREATE TABLE static_chart ( pt_sno int(11) not null, dent0 tinyint(4), dent1 tinyint(4), dent2 tinyint(4), dent3 tinyint(4), ur1 varchar(34) not null default "", ur2 varchar(34) not null default "", ur3 varchar(34) not null default "", ur4 varchar(34) not null default "", ur5 varchar(34) not null default "", ur6 varchar(34) not null default "", ur7 varchar(34) not null default "", ur8 varchar(34) not null default "", ul1 varchar(34) not null default "", ul2 varchar(34) not null default "", ul3 varchar(34) not null default "", ul4 varchar(34) not null default "", ul5 varchar(34) not null default "", ul6 varchar(34) not null default "", ul7 varchar(34) not null default "", ul8 varchar(34) not null default "", lr1 varchar(34) not null default "", lr2 varchar(34) not null default "", lr3 varchar(34) not null default "", lr4 varchar(34) not null default "", lr5 varchar(34) not null default "", lr6 varchar(34) not null default "", lr7 varchar(34) not null default "", lr8 varchar(34) not null default "", ll1 varchar(34) not null default "", ll2 varchar(34) not null default "", ll3 varchar(34) not null default "", ll4 varchar(34) not null default "", ll5 varchar(34) not null default "", ll6 varchar(34) not null default "", ll7 varchar(34) not null default "", ll8 varchar(34) not null default "", FOREIGN KEY (pt_sno) REFERENCES new_patients(serialno) ) ''', ''' CREATE TABLE patient_money ( pt_sno int(11) not null, money0 int(11) not null default 0, money1 int(11) not null default 0, money2 int(11) not null default 0, money3 int(11) not null default 0, money4 int(11) not null default 0, money5 int(11) not null default 0, money6 int(11) not null default 0, money7 int(11) not null default 0, money8 int(11) not null default 0, money9 int(11) not null default 0, money10 int(11) not null default 0, money11 int(11) not null default 0, FOREIGN KEY (pt_sno) REFERENCES new_patients(serialno) ) ''', ''' CREATE TABLE patient_dates ( pt_sno int(11) not null, pd0 date, pd1 date, pd2 date, pd3 date, pd4 date, pd5 date, pd6 date, pd7 date, pd8 date, pd9 date, pd10 date, pd11 date, pd12 date, pd13 date, pd14 date, FOREIGN KEY (pt_sno) REFERENCES new_patients(serialno) ) ''' ] # NOTE - if next statement fails, it is silently overlooked. CLEANUPSTRINGS = [] SOURCE1_QUERY = ''' select serialno, IFNULL(sname, ""), IFNULL(fname, ""), IFNULL(title, ""), IFNULL(sex, "") , dob , IFNULL(addr1, ""), IFNULL(addr2, ""), IFNULL(addr3, ""), IFNULL(town, ""), IFNULL(county, ""), IFNULL(pcde, ""), IFNULL(tel1, ""), IFNULL(tel2, ""), IFNULL(mobile, ""), IFNULL(fax, ""), IFNULL(email1, ""), IFNULL(email2, ""), IFNULL(occup, ""), IFNULL(nhsno, ""), cnfd, cset,dnt1, dnt2, courseno0, billdate, billct, billtype, familyno, IFNULL(memo,""), IFNULL(status,"") from patients''' DEST1_QUERY = ''' INSERT INTO new_patients (serialno, sname, fname, title, sex , dob , addr1, addr2, addr3, town, county, pcde, tel1, tel2, mobile, fax, email1, email2, occup, nhsno, cnfd, cset, dnt1, dnt2, courseno0, billdate, billct, billtype, familyno, memo, status) VALUES (%s)''' % ", ".join(("%s",)*31) SOURCE2_QUERY = ''' select serialno, dent0, dent1, dent2, dent3, IFNULL(ur1st, "") , IFNULL(ur2st, "") , IFNULL(ur3st, "") , IFNULL(ur4st, "") , IFNULL(ur5st, "") , IFNULL(ur6st, "") , IFNULL(ur7st, "") , IFNULL(ur8st, "") , IFNULL(ul1st, "") , IFNULL(ul2st, "") , IFNULL(ul3st, "") , IFNULL(ul4st, "") , IFNULL(ul5st, "") , IFNULL(ul6st, "") , IFNULL(ul7st, "") , IFNULL(ul8st, "") , IFNULL(lr1st, "") , IFNULL(lr2st, "") , IFNULL(lr3st, "") , IFNULL(lr4st, "") , IFNULL(lr5st, "") , IFNULL(lr6st, "") , IFNULL(lr7st, "") , IFNULL(lr8st, "") , IFNULL(ll1st, "") , IFNULL(ll2st, "") , IFNULL(ll3st, "") , IFNULL(ll4st, "") , IFNULL(ll5st, "") , IFNULL(ll6st, "") , IFNULL(ll7st, "") , IFNULL(ll8st, "") from patients''' DEST2_QUERY = ''' INSERT INTO static_chart (pt_sno, dent0, dent1, dent2, dent3, ur1, ur2, ur3, ur4, ur5, ur6, ur7, ur8, ul1, ul2, ul3, ul4, ul5, ul6, ul7, ul8, lr1, lr2, lr3, lr4, lr5, lr6, lr7, lr8, ll1, ll2, ll3, ll4, ll5, ll6, ll7, ll8) VALUES (%s)''' % ", ".join(("%s",)*37) SOURCE3_QUERY = ''' SELECT serialno, pd0, pd1, pd2, pd3, pd4, pd5, pd6, pd7, pd8, pd9, pd10, pd11, pd12, pd13, pd14 FROM patients''' DEST3_QUERY = ''' INSERT INTO patient_dates (pt_sno, pd0, pd1, pd2, pd3, pd4, pd5, pd6, pd7, pd8, pd9, pd10, pd11, pd12, pd13, pd14) VALUES (%s)''' % ", ".join(("%s",)*16) SOURCE4_QUERY = ''' SELECT serialno, IFNULL(money0, 0), IFNULL(money1, 0), IFNULL(money2, 0), IFNULL(money3, 0), IFNULL(money4, 0), IFNULL(money5, 0), IFNULL(money6, 0), IFNULL(money7, 0), IFNULL(money8, 0), IFNULL(money9, 0), IFNULL(money10, 0), IFNULL(money11, 0) FROM patients''' DEST4_QUERY = ''' INSERT INTO patient_money (pt_sno, money0, money1, money2, money3, money4, money5, money6, money7, money8, money9, money10, money11) VALUES (%s)''' % ", ".join(("%s",)*13) SOURCE5_QUERY = ''' SELECT serialno, initaccept, lastreaccept, lastclaim, expiry, cstatus, transfer, pstatus FROM patients WHERE initaccept IS NOT NULL AND lastreaccept IS NOT NULL AND lastclaim IS NOT NULL AND expiry IS NOT NULL AND cstatus IS NOT NULL AND transfer IS NOT NULL AND pstatus IS NOT NULL''' DEST5_QUERY = ''' INSERT INTO patient_nhs (pt_sno, initaccept, lastreaccept, lastclaim, expiry, cstatus, transfer, pstatus) VALUES (%s)''' % ", ".join(("%s",)*8) class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' self.progressSig(15, _("pulling information from patient table")) self.cursor.execute(SOURCE1_QUERY) rows = self.cursor.fetchall() self.progressSig(25, _("inserting information into new tables")) self.cursor.executemany(DEST1_QUERY, rows) self.progressSig(35, _("pulling information from patient table")) self.cursor.execute(SOURCE2_QUERY) rows = self.cursor.fetchall() self.progressSig(50, _("inserting information into new tables")) self.cursor.executemany(DEST2_QUERY, rows) self.progressSig(55, _("pulling information from patient table")) self.cursor.execute(SOURCE3_QUERY) rows = self.cursor.fetchall() self.progressSig(60, _("inserting information into new tables")) self.cursor.executemany(DEST3_QUERY, rows) self.progressSig(65, _("pulling information from patient table")) self.cursor.execute(SOURCE4_QUERY) rows = self.cursor.fetchall() self.progressSig(70, _("inserting information into new tables")) self.cursor.executemany(DEST4_QUERY, rows) self.progressSig(75, _("pulling information from patient table")) self.cursor.execute(SOURCE5_QUERY) rows = self.cursor.fetchall() self.progressSig(80, _("inserting information into new tables")) self.cursor.executemany(DEST5_QUERY, rows) def run(self): LOGGER.info("running script to convert from schema 2.7 to 2.8") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.transfer_data() self.progressSig(95, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.8",), "2_7 to 2_8 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.8") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_8to2_9.py0000644000175000017500000000653612710144046025652 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 2_9 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'alter table static_chart add unique(pt_sno)', 'alter table patient_money add unique(pt_sno)', 'alter table patient_dates add unique(pt_sno)', 'alter table patient_nhs add unique(pt_sno)', ] CLEANUPSTRINGS = [] class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' pass def run(self): LOGGER.info("running script to convert from schema 2.8 to 2.9") try: self.connect() # execute the SQL commands self.progressSig(50, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.transfer_data() self.progressSig(75, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("2.9",), "2_8 to 2_9 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 2.9") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema2_9to3_0.py0000644000175000017500000001134012710144046025630 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3_0 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists standard_letters', 'alter table newdocsprinted change column docname docname varchar(64)''', ''' create table standard_letters ( ix int(11) unsigned not null auto_increment , description char(64) UNIQUE NOT NULL, body_text text NOT NULL, footer text, PRIMARY KEY (ix) )''', ] INSERT_QUERY = ''' INSERT INTO standard_letters (description, body_text, footer) VALUES (%s, %s, %s) ''' BODY = '''
    XRAY REQUEST

    You have requested copies of your xrays to take with you to another practice.
    Please be advise that we are happy to do this, and provide these as Jpeg files on CD-rom.

    There is, however, a nominal charge of £15.00 for this service, which is in line with British Dental Association recommendations.

    Should you wish to proceed, please complete the slip below and return it to us along with your remittance. On receipt of the slip, your xrays will normally be forwarded with 7 working days.

    ''' FOOTER = '''


    I hereby request copies of my radiographs be sent to:
    (delete as appropriate)

    • My home address (as above)
    • Another dental practice (please give details overleaf).

    I enclose a cheque for £ 15.00

    Signed    ________________________________________________
    
    Date      ________________________________________________
    
    {{NAME}}
    (adp number {{SERIALNO}}))
    
    ''' CLEANUPSTRINGS = [ ] class DatabaseUpdater(DatabaseUpdaterThread): def transfer_data(self): ''' function specific to this update. ''' self.cursor.execute(INSERT_QUERY, (_("XRay Request Letter"), BODY, FOOTER)) def run(self): LOGGER.info("running script to convert from schema 2.9 to 3.0") try: self.connect() # execute the SQL commands self.progressSig(50, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.transfer_data() self.progressSig(75, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.0",), "2_9 to 3_0 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.0") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema3_0to3_1.py0000644000175000017500000002615212710144046025630 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3_1 ''' from collections import namedtuple from collections import OrderedDict import logging import re from MySQLdb import IntegrityError from openmolar.schema_upgrades.database_updater_thread import \ DatabaseUpdaterThread from openmolar.schema_upgrades.druglist import DRUGLIST LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'drop table if exists medication_link', 'drop table if exists medhist', 'drop table if exists medications', ''' update mednotes, (select serialno, max(chgdate) max_date from mnhist group by serialno) tmp_table set mednotes.chkdate = tmp_table.max_date where mednotes.serialno = tmp_table.serialno ''', ''' create table medhist ( ix int(11) unsigned not null auto_increment , pt_sno int(11) NOT NULL, medication_comments varchar(200) NOT NULL default "", warning_card varchar(60) NOT NULL default "", allergies varchar(60) NOT NULL default "", respiratory varchar(60) NOT NULL default "", heart varchar(60) NOT NULL default "", diabetes varchar(60) NOT NULL default "", arthritis varchar(60) NOT NULL default "", bleeding varchar(60) NOT NULL default "", infectious_disease varchar(60) NOT NULL default "", endocarditis varchar(60) NOT NULL default "", liver varchar(60) NOT NULL default "", anaesthetic varchar(60) NOT NULL default "", joint_replacement varchar(60) NOT NULL default "", heart_surgery varchar(60) NOT NULL default "", brain_surgery varchar(60) NOT NULL default "", hospital varchar(60) NOT NULL default "", cjd varchar(60) NOT NULL default "", other varchar(60) NOT NULL default "", alert tinyint(1) NOT NULL default 0, chkdate date, modified_by varchar(20) NOT NULL default "unknown", time_stamp timestamp NOT NULL default CURRENT_TIMESTAMP, PRIMARY KEY (ix), FOREIGN KEY (pt_sno) REFERENCES new_patients(serialno), CHECK (allergies=false OR allergies_comment IS NOT NULL) ) ''', ''' create table medications ( medication varchar(120) NOT NULL, warning bool NOT NULL DEFAULT false, PRIMARY KEY (medication) ) ''', ''' create table medication_link ( med_ix int(11) unsigned NOT NULL, med varchar(120), details varchar(60), FOREIGN KEY (med_ix) REFERENCES medhist(ix), FOREIGN KEY (med) REFERENCES medications(medication) ) ''', ] SOURCE1_QUERY = ''' select serialno, drnm, adrtel, curmed, oldmed, allerg, heart, lungs, liver, kidney, bleed, anaes, other, alert, chkdate from mednotes ''' SOURCE2_QUERY = '''select chgdate, ix, note from mnhist where serialno=%s order by chgdate desc''' INSERT_MEDS_QUERY = 'insert into medications (medication) values (%s)' DEST1_QUERY = ''' INSERT INTO medhist (pt_sno, medication_comments, allergies, respiratory, heart, bleeding, liver, anaesthetic, other, alert, chkdate, modified_by) values (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) ''' DEST2_QUERY = 'INSERT INTO medication_link (med_ix, med) values (%s, %s)' CLEANUPSTRINGS = [ ] # a class to contain and manipulate the old MH data. MedNotes = namedtuple('MedNotes', ('serialno', 'drnm', 'adrtel', 'curmed', 'oldmed', 'allerg', 'heart', 'lungs', 'liver', 'kidney', 'bleed', 'anaes', 'other', 'alert', 'chkdate') ) class DatabaseUpdater(DatabaseUpdaterThread): def historic_mhs(self, med_notes): prev_mednotes = OrderedDict() prev_mednotes[med_notes.chkdate] = med_notes cursor = self.db.cursor() cursor.execute(SOURCE2_QUERY, (med_notes.serialno,)) rows = cursor.fetchall() cursor.close() dates = [] for dt, ix, note in rows: if dt not in dates: dates.append(dt) dates.append(None) for changed_dt, ix, note in rows: dt = dates[dates.index(changed_dt) + 1] try: prev_mednote = prev_mednotes[dt] except KeyError: prev_mednote = list( prev_mednotes.values())[-1]._replace(chkdate=dt) prev_mednotes[dt] = prev_mednote if ix == 142: prev_mednotes[dt] = prev_mednotes[dt]._replace(curmed=note) elif ix == 143: prev_mednotes[dt] = prev_mednotes[dt]._replace(oldmed=note) elif ix == 144: prev_mednotes[dt] = prev_mednotes[dt]._replace(allerg=note) elif ix == 145: prev_mednotes[dt] = prev_mednotes[dt]._replace(heart=note) elif ix == 146: prev_mednotes[dt] = prev_mednotes[dt]._replace(lungs=note) elif ix == 147: prev_mednotes[dt] = prev_mednotes[dt]._replace(liver=note) elif ix == 148: prev_mednotes[dt] = prev_mednotes[dt]._replace(bleed=note) elif ix == 149: prev_mednotes[dt] = prev_mednotes[dt]._replace(kidney=note) elif ix == 150: prev_mednotes[dt] = prev_mednotes[dt]._replace(anaes=note) elif ix == 151: prev_mednotes[dt] = prev_mednotes[dt]._replace(other=note) else: # 140 dr name # 141 dr address # 152 previous chgdate continue for mn in reversed(list(prev_mednotes.values())): yield mn def transfer_data(self): ''' function specific to this update. ''' meds = set() self.progressSig(15, _("inserting medications")) self.cursor.executemany(INSERT_MEDS_QUERY, [(d, ) for d in DRUGLIST]) self.progressSig(25, _("pulling information from mednotes")) self.cursor.execute(SOURCE1_QUERY) self.progressSig(35, _("inserting information into new tables")) for row in self.cursor.fetchall(): med_notes = MedNotes(*row) for mn_hist in self.historic_mhs(med_notes): medications = set() curmed = mn_hist.curmed for meds in curmed.split(" "): for med in meds.split(","): if med.title() in DRUGLIST: medications.add(med.title()) curmed = re.sub( "%s,?" % med, "", curmed).strip(" ") if curmed: med_comments = "%s: %s" % (_("Unkown medications"), curmed) else: med_comments = "" if mn_hist.oldmed: if med_comments: med_comments += " | " med_comments += "%s: %s" % ( _("Previous medications"), mn_hist.oldmed) values = (mn_hist.serialno, med_comments, mn_hist.allerg, mn_hist.lungs, mn_hist.heart, mn_hist.bleed, mn_hist.liver, mn_hist.anaes, mn_hist.other, 0 if mn_hist.alert is None else mn_hist.alert, mn_hist.chkdate, "3_0 to 3_1 script" ) try: self.cursor.execute(DEST1_QUERY, values) med_ix = self.db.insert_id() for med in medications: self.cursor.execute(DEST2_QUERY, (med_ix, med)) except IntegrityError: LOGGER.warning( "skipping invalid pt serialno %s", mn_hist.serialno) def run(self): LOGGER.info("running script to convert from schema 3.0 to 3.1") try: self.connect() # execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.transfer_data() self.progressSig(75, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.1",), "3_0 to 3_1 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.1") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema3_1to3_2.py0000644000175000017500000000701012710144046025622 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3.2 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'DROP TABLE IF EXISTS records_in_use', ''' CREATE TABLE records_in_use ( pt_sno INT(11) unsigned NOT NULL, surgery_number SMALLINT, op VARCHAR(24), locked BOOL NOT NULL DEFAULT FALSE, timestamp TIMESTAMP NOT NULL DEFAULT NOW() ) ''', ] # PRIMARY KEY (pt_sno, locked) class DatabaseUpdater(DatabaseUpdaterThread): ''' a class to update the database ''' def transfer_data(self): ''' function specific to this update. ''' pass def run(self): LOGGER.info("running script to convert from schema 3.1 to 3.2") try: self.connect() # - execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.transfer_data() # self.progressSig(75, _("executing cleanup statements")) # self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.2",), "3.1 to 3.2 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.2") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema3_2to3_3.py0000644000175000017500000000656512710144046025642 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3.3 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'DROP TABLE IF EXISTS medforms', ''' CREATE TABLE medforms ( pt_sno INT(11) unsigned NOT NULL, chk_date DATE NOT NULL, PRIMARY KEY (pt_sno, chk_date) ) ''' ] class DatabaseUpdater(DatabaseUpdaterThread): ''' a class to update the database ''' def transfer_data(self): ''' function specific to this update. ''' pass def run(self): LOGGER.info("running script to convert from schema 3.2 to 3.3") try: self.connect() # - execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.transfer_data() # self.progressSig(75, _("executing cleanup statements")) # self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.3",), "3.2 to 3.3 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.3") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema3_3to3_4.py0000644000175000017500000001021712726245731025643 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3.4 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ ''' alter table opid drop column c0, drop column c1, drop column c2, drop column c3, drop column c4, drop column c5, drop column c6, drop column c7, drop column c8, drop column c9, drop column f0, drop column f1, drop column f2, drop column f3, drop column f4, drop column f5, drop column f6, drop column f7, drop column f8, drop column f9 ''', 'alter table opid add column serialno int', 'alter table opid add column active bool not null default true', ''' alter table opid add constraint fk_opid_serialno foreign key (serialno) references new_patients(serialno) ''', ] TRANSFER_SQLSTRINGS = [ ''' insert into opid (id, active) select distinct op1, False from formatted_notes where op1 not in (select id from opid) ''', ''' insert into opid (id, active) select distinct op2, False from formatted_notes where op2 not in (select id from opid) ''' ] class DatabaseUpdater(DatabaseUpdaterThread): ''' a class to update the database ''' def transfer_data(self): ''' function specific to this update. ''' self.execute_statements(TRANSFER_SQLSTRINGS) def run(self): LOGGER.info("running script to convert from schema 3.3 to 3.4") try: self.connect() # - execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(50, _("transferring data")) self.transfer_data() # self.progressSig(75, _("executing cleanup statements")) # self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.4",), "3.3 to 3.4 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.4") return True except Exception as exc: LOGGER.exception("error transfering data") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema3_4to3_5.py0000644000175000017500000001110112765647145025646 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3.5 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ 'alter table forum engine=InnoDB', ''' CREATE TABLE IF NOT EXISTS forum_parents ( parent_id INT(10) UNSIGNED NOT NULL, child_id INT(10) UNSIGNED NOT NULL, FOREIGN KEY (parent_id) REFERENCES forum(ix), FOREIGN KEY (child_id) REFERENCES forum(ix), UNIQUE KEY (child_id, parent_id)) ''', ''' CREATE TABLE IF NOT EXISTS forum_important ( important_id INT(10) UNSIGNED NOT NULL , op CHAR(8), FOREIGN KEY (important_id) REFERENCES forum(ix)) ''', 'CREATE INDEX forum_important_index ON forum_important(op)', ] DATA_QUERY = \ 'SELECT parent_ix, ix FROM forum WHERE parent_ix != ix order by ix' TRANSFER_STRING = 'INSERT INTO forum_parents values (%s, %s)' CLEANUPSTRINGS = ['ALTER TABLE forum drop column parent_ix'] class DatabaseUpdater(DatabaseUpdaterThread): ''' a class to update the database ''' def transfer_data(self): ''' function specific to this update. ''' def get_parents(ix): ancestors = d.get(ix, []) for ancestor in ancestors: if ancestor != ix: yield ancestor for i in get_parents(ancestor): if i != ix: yield i self.cursor.execute(DATA_QUERY) rows = self.cursor.fetchall() d = {} for parent_id, child_id in rows: d[child_id] = [parent_id] for child_id in sorted(list(d.keys())): values = [(parent, child_id) for parent in get_parents(child_id)] self.cursor.executemany(TRANSFER_STRING, values) def run(self): LOGGER.info("running script to convert from schema 3.4 to 3.5") try: self.connect() # - execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(30, _("transferring data")) self.transfer_data() self.progressSig(75, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.5",), "3.4 to 3.5 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.5") return True except Exception as exc: LOGGER.exception("error upgrading schema") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema3_5to3_6.py0000644000175000017500000001004313010352467025634 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3.6 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ ''' CREATE TABLE IF NOT EXISTS pseudonyms ( ix int(10) unsigned NOT NULL auto_increment , serialno int(11) NOT NULL, alt_sname varchar(30) DEFAULT NULL, alt_fname varchar(30) DEFAULT NULL, comment varchar(60) DEFAULT NULL, search_include BOOL NOT NULL default True, PRIMARY KEY (ix), FOREIGN KEY (serialno) REFERENCES new_patients(serialno), UNIQUE KEY (serialno, alt_sname, alt_fname) )''', ] DATA_QUERY = \ 'SELECT serialno, psn FROM previous_snames' TRANSFER_STRING = '''INSERT INTO pseudonyms (serialno, alt_sname, comment) VALUES (%%s, %%s, '%s')''' % _('previous surname') CLEANUPSTRINGS = [] class DatabaseUpdater(DatabaseUpdaterThread): ''' a class to update the database ''' def transfer_data(self): ''' function specific to this update. ''' self.cursor.execute(DATA_QUERY) for serialno, psn in self.cursor.fetchall(): values = (serialno, psn) #code not concise but has good clarity self.cursor.execute(TRANSFER_STRING, values) def run(self): LOGGER.info("running script to convert from schema 3.5 to 3.6") try: self.connect() # - execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(30, _("transferring data")) self.transfer_data() self.progressSig(75, _("executing cleanup statements")) self.execute_statements(CLEANUPSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.6",), "3.5 to 3.6 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.6") return True except Exception as exc: LOGGER.exception("error upgrading schema") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/schema_upgrades/schema3_6to3_7.py0000644000175000017500000000616713015432051025643 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This module provides a function 'run' which will move data to schema 3.7 ''' import logging from openmolar.schema_upgrades.database_updater_thread \ import DatabaseUpdaterThread LOGGER = logging.getLogger("openmolar") SQLSTRINGS = [ ''' CREATE TABLE IF NOT EXISTS locations ( serialno INT(11) NOT NULL, location CHAR(1), PRIMARY KEY (serialno), FOREIGN KEY (serialno) REFERENCES new_patients(serialno) ) ''', ] CLEANUPSTRINGS = [] class DatabaseUpdater(DatabaseUpdaterThread): ''' a class to update the database ''' def run(self): LOGGER.info("running script to convert from schema 3.6 to 3.7") try: self.connect() # - execute the SQL commands self.progressSig(10, _("creating new tables")) self.execute_statements(SQLSTRINGS) self.progressSig(97, _('updating settings')) LOGGER.info("updating stored database version in settings table") self.update_schema_version(("3.7",), "3.6 to 3.7 script") self.progressSig(100, _("updating stored schema version")) self.commit() self.completeSig(_("Successfully moved db to") + " 3.7") return True except Exception as exc: LOGGER.exception("error upgrading schema") self.rollback() raise self.UpdateError(exc) if __name__ == "__main__": dbu = DatabaseUpdater() if dbu.run(): LOGGER.info("ALL DONE, conversion successful") else: LOGGER.warning("conversion failed") openmolar-1.0.15-gd81f9e5/src/openmolar/settings/0000755000175000017500000000000013024000134021332 5ustar neilneil00000000000000openmolar-1.0.15-gd81f9e5/src/openmolar/settings/__init__.py0000755000175000017500000000312412710144046023462 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # openmolar-1.0.15-gd81f9e5/src/openmolar/settings/allowed.py0000644000175000017500000002037712710144046023360 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # backToothCodes = ( "+P", "+S", "AP", "AT", "B", "B,AM", "B,CO", "B,CO,CT", "B,CO,PR", "B,CT", "B,CT,CO", "B,GL", "BD", "BDLOM,CO,PR", "BM", "BM,CO", "BMO", "BMODP", "BMOL,CO", "BO", "BO,AM", "BO,CO", "BO,GL", "BOL", "BOM", "BR/CR,A1", "BR/CR,A2", "BR/CR,OT", "BR/CR,V1", "BR/CR,V1,PR", "BR/P,A2", "BR/P,OT", "BR/P,V1", "CR,OPAL", "CR,OPALITE", "CR,LAVA", "CR,EMAX", "CR,EVEREST", "CR,FORT", "CR,A1", "CR,A1,C4", "CR,A1,PR", "CR,A2", "CR,GO", "CR,GO,PR", "CR,OT", "CR,OT,C4", "CR,P1", "CR,P1,C3", "CR,PJ", "CR,V1", "CR,V1,C1", "CR,V1,C2", "CR,V1,C3", "CR,V1,PR", "CR,V2", "CR/MODB,GO", "CR/MODL,GO", "CR/MODP,GO", "D", "D,AM", "D,CO", "D,GL", "DB", "DB,AM", "DB,CO", "DB,CT,CO", "DB,GL", "DBM,CO", "DBO", "DBO,CO", "DL", "DL,CO", "DL,GL", "DMO", "DO", "DO,AM", "DO,CO", "DO,GL", "DO,PR", "DOB", "DOB,AM", "DOB,CO", "DOB,GL", "DOB,PR", "DOB,PR,CO", "DOBL", "DOBL,PR", "DOBM,CO", "DOBM,GL", "DOBP,CO", "DOL", "DOL,CO", "DOL,CO,PR", "DOL,GL", "DOL,PR", "DOLB", "DOM", "DOM,CO", "DOMB", "DOML,PR", "DOMP,CO", "DOP", "DOP,AM", "DOP,CO", "DOP,CO,PR", "DOP,GL", "DOP,PR", "DOP,PR,CO", "DOPM", "DP", "DP,CO", "DP,CT,CO", "DP,GL", "DR", "FA", "FS", "FS,CO", "FS,CO.", "FS,GC", "FS,GL", "GC/DO", "GC/DOL", "GC/MO", "GC/MOD", "GC/MODB", "GC/MODL", "GC/MODP", "GI/DO", "GI/DOBL", "GI/DOL", "GI/MO", "GI/MOD", "GI/MODP", "IM", "L", "L,AM", "L,CO", "L,GL", "LD", "LMBO,GL", "LO", "LO,CO", "LO,GL", "LOM,CO", "M", "M,CO", "M,CO,PR", "M,GL", "MB", "MB,CO", "MB,CT,CO", "MB,GL", "MBD", "MBD,CO", "MDOB", "MDOL", "MDOL,CO", "ML", "ML,CO", "ML,GL", "MLODB,CO", "MLODB,CO,PR", "MO", "MO,AM", "MO,CO", "MO,GL", "MO,PR", "MOB", "MOB,AM", "MOB,CO", "MOB,GL", "MOB,PR", "MOB,PR,CO", "MOBD,CO", "MOBL", "MOBL,CO,PR", "MOBP", "MOBP,CO", "MOBPD", "MOD", "MOD,AM", "MOD,CO", "MOD,CO,PR", "MOD,GL", "MOD,PR", "MODB", "MODB,AM", "MODB,CO", "MODB,CO,PR", "MODB,GL", "MODB,GL,CO", "MODB,PR", "MODB,PR,CO", "MODB,PR,GL", "MODBL", "MODBL,CO", "MODBL,GL", "MODBL,PR", "MODBP", "MODBP,CO", "MODBP,CO,PR", "MODBP,GL", "MODL", "MODL,CO", "MODL,CO,PR", "MODL,GL", "MODL,PR", "MODLB", "MODLB,CO", "MODP", "MODP,AM", "MODP,AM,CO", "MODP,CO", "MODP,CO,PR", "MODP,GL", "MODP,GL,CO", "MODP,GL,PR", "MODP,PR", "MODP,PR,CO", "MODPB", "MODPB,CO", "MOL", "MOL,CO", "MOL,GL", "MOL,PR", "MOL,PR,CO", "MOLD", "MOLD,CO", "MOP", "MOP,CO", "MOP,GL", "MOP,PR,CO", "MOPB", "MOPD", "MOPDB,PR", "MP", "MP,AM", "MP,CO", "MP,CT,CO", "MP,GL", "O", "O,AM", "O,CO", "O,GL", "OB", "OB,AM", "OB,CO", "OB,GL", "OB,GL,CO", "OB,PR", "OD", "ODB,CO", "OE", "OL", "OL,CO", "OL,GL", "OL,GL,GL", "OL,PR", "OM", "OMD", "OML", "OP", "OP,CO", "OP,CO,PR", "OP,GL", "OP,PR", "OPB", "P", "P,AM", "P,CO", "P,CO,PR", "P,CT,CO", "P,CT,PR,CO", "P,GL", "PD", "PE", "PI/", "PI/DO", "PI/DOB", "PI/DOL", "PI/LOB", "PI/MO", "PI/MOB", "PI/MOD", "PI/MODB", "PI/MODBL", "PI/MODBP", "PI/MODL", "PI/MODP", "PI/MODPB", "PI/MOL", "PI/MOPB", "PI/O", "PI/OB", "PO", "PO,CO", "PO,GL", "PV", "RP", "RT", "TM", "TR/M", "UE") frontToothCodes = ( "+P", "+S", "-D,2", "-M,1", "-M,2", "AP", "AP,RR", "AT", "B", "B,AM", "B,AM'", "B,CO", "B,GL", "B,PR", "BD", "BD,AM", "BD,CO", "BDL", "BDLMI,PR", "BDP", "BI", "BIDM", "BIM", "BIP", "BLMD", "BM", "BM,CO", "BM,GL", "BMD", "BMI", "BMIDI", "BMLD,CO", "BMP", "BP", "BP,AM", "BPDM", "BR,RA", "BR/CR,A1", "BR/CR,A1,C4", "BR/CR,A2", "BR/CR,GO", "BR/CR,OT", "BR/CR,V1", "BR/CR,V1,C1", "BR/CR,V1,C2", "BR/CR,V1,C3", "BR/CR,V1,C4", "BR/CR,V1,PR", "BR/CR,V2", "BR/GI/DP", "BR/GI/MPD", "BR/MR", "BR/P,A1", "BR/P,A2", "BR/P,AE", "BR/P,MA", "BR/P,OT", "BR/P,PO", "BR/P,RA", "BR/P,RO", "BR/P,V1", "BR/P,V2", "CR,A1", "CR,A1,C1", "CR,A1,C2", "CR,A2", "CR,GO", "CR,OT", "CR,OT,C1", "CR,OT,C2", "CR,OT,C3", "CR,OT,PR", "CR,P1", "CR,PJ", "CR,PJ,C1", "CR,PJ,C2", "CR,PJ,C3", "CR,PJ,C4", "CR,PJ,PR", "CR,V1", "CR,V1,C1", "CR,V1,C2", "CR,V1,C3", "CR,V1,C4", "CR,V1,PR", "CR,V2", "CR,V2,C2", "CR,V2,C3,PR", "CR,V2,C4,PR", "CR,V2,PR", "CR,V2,PR,C3", "CR/MPD,GO", "D", "D,AM", "D,AM'", "D,CO", "D,GL", "D,PR", "DB", "DB,AM", "DB,CO", "DB,GL", "DBI", "DBM", "DBM,AM", "DBPI,PR", "DI", "DI,A", "DI,A,PR", "DI,AM", "DI,CO", "DI,CO,PR", "DI,GL", "DI,PR", "DIB", "DIB,CO", "DIB,GL", "DIBM", "DIBM,GL,PR", "DIBP", "DIL", "DIL,PR", "DILB", "DILM", "DIMBP", "DIMI", "DIMP", "DIP", "DIP,CO", "DIP,GL", "DIP,PR", "DIPB", "DIPMB", "DL", "DL,AM", "DL,CO", "DL,GL", "DLBI", "DLI", "DLM", "DMB", "DMIBP", "DP", "DP,AM", "DP,AM'", "DP,AM]", "DP,CO", "DP,GL", "DPB", "DPI", "DPIB,PR", "DPM,CO", "DPMI", "DR", "FA", "FS/P", "FS/P,GL", "GI/B", "GI/DBP", "GI/DI", "GI/DIL", "GI/DIP", "GI/DL", "GI/M", "GI/MI", "GI/MIDL", "GI/MIDP", "GI/MIL", "GI/MIP", "GI/MIPD", "GI/MLD", "GI/MPDI", "GI/P", "I", "I,AM", "I,CO", "I,GL", "IM", "L", "L,AM", "L,CO", "L,GL", "LD,AM", "LD,GL", "LI", "LI,CO", "LIM", "M", "M,AM", "M,CO", "M,GL", "M,PR", "MB", "MB,AM", "MB,CO", "MB,GL", "MB,PR", "MB,PR,CO", "MBD", "MBD,GL", "MBDI", "MBDL", "MBDP", "MBI", "MBI,GL", "MBP", "MBPI", "MDB", "MDB,CO", "MDB,GL", "MDBL,PR", "MDBP,GL", "MDBP,PR", "MDBPI", "MDIB,PR", "MDL", "MDLB,GL", "MDP", "MDPB", "MDPBI", "MDPIB", "MI", "MI,AM", "MI,CO", "MI,GL", "MI,PR", "MI,PR,CO", "MIB", "MIB,PR", "MIBD", "MIBD,GL", "MIBD,PR", "MIBDI,PR", "MIBDP", "MIBLD", "MIBP", "MIBP,PR", "MIBPD", "MIBPD,CO", "MIBPD,PR", "MIDB", "MIDB,CO", "MIDB,PR", "MIDBL", "MIDBL,CO,PR", "MIDBP", "MIDBP,CO", "MIDBP,GL", "MIDBP,PR", "MIDI", "MIDI,CO", "MIDIB", "MIDL", "MIDLB,CO", "MIDP", "MIDPB", "MIDPB,PR", "MIL", "MIL,GL", "MIL,PR", "MILD", "MIP", "MIP,CO", "MIP,GL", "MIP,PR", "MIPB", "MIPB,CO,PR", "MIPB,PR", "MIPBD", "MIPBD,CO", "MIPBD,PR", "MIPD", "MIPDB", "MIPDB,PR", "MIPID", "ML", "ML,GL", "MLD", "MLDI", "MLI", "MP", "MP,AM", "MP,CO", "MP,GL", "MPB", "MPD", "MPD,CO", "MPD,GL", "MPDB", "MPI", "MPID,GL", "O", "O,CO", "O,GL", "P", "P,AM", "P,CO", "P,GL", "P,PR", "PB", "PB,GL", "PD", "PD,AM", "PD,GL", "PDB", "PDB,GL", "PDI", "PE", "PI", "PI,GL", "PI/B", "PI/MBDL", "PI/MBPD", "PI/MDBL", "PI/MDBP", "PI/MDLB", "PI/MDPB", "PI/MIDB", "PIB", "PID,CO", "PIM", "PM", "PM,GL", "PMB", "PMI", "PMID", "PV", "RI", "RP", "RT", "TM", "UE", "VP", "CR,OPAL", "CR,OPALITE", "CR,LAVA", "CR,EMAX", "CR,EVEREST", "CR,FORT",) treatment_only = ( "EX", "EX/S1", "EX/S2", "CR,RC", "PX", "PX+", "ST") # not exhaustive if __name__ == "__main__": print("Unique to FrontTeeth") for a in frontToothCodes: if a not in backToothCodes: print(a, end=' ') print("Unique to BackTeeth") for a in backToothCodes: if a not in frontToothCodes: print(a, end=' ') openmolar-1.0.15-gd81f9e5/src/openmolar/settings/appointment_shortcuts.py0000644000175000017500000001004312716605347026406 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import logging from xml.dom import minidom from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") def getShortCuts(): ''' parse appointment_shortcuts.xml ''' try: d = minidom.parse(localsettings.appt_shortcut_file) shortcuts = d.getElementsByTagName("shortcut") retarg = [] for shortcut in shortcuts: shortCutDict = {} description = shortcut.getElementsByTagName("description") if description: shortCutDict["description"] = description[0].firstChild.data shortCutDict["appointments"] = [] appointments = shortcut.getElementsByTagName("appointment") for appointment in appointments: apptDict = {} clinician = appointment.getElementsByTagName("clinician") if clinician: clinician_ = int(clinician[0].firstChild.data) apptDict["clinician"] = clinician_ trt1 = appointment.getElementsByTagName("trt1") if trt1: trt = trt1[0].firstChild.data apptDict["trt1"] = trt trt2 = appointment.getElementsByTagName("trt2") if trt2: trt = trt2[0].firstChild.data apptDict["trt2"] = trt trt3 = appointment.getElementsByTagName("trt3") if trt3: trt = trt3[0].firstChild.data apptDict["trt3"] = trt length = appointment.getElementsByTagName("length") if length: a_length = int(length[0].firstChild.data) apptDict["length"] = a_length datespec = appointment.getElementsByTagName("datespec") if datespec: d_spec = datespec[0].firstChild.data apptDict["datespec"] = d_spec memo = appointment.getElementsByTagName("memo") if memo: apptDict["memo"] = memo[0].firstChild.data shortCutDict["appointments"].append(apptDict) retarg.append(shortCutDict) return retarg except IOError: LOGGER.exception("error getting appointment shortcuts from %s", localsettings.appt_shortcut_file) # return an iterable variable return () if __name__ == "__main__": print(getShortCuts()) openmolar-1.0.15-gd81f9e5/src/openmolar/settings/fee_tables.py0000644000175000017500000010426013021602744024014 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # from collections import namedtuple from collections import OrderedDict import datetime import logging import re from xml.dom import minidom from openmolar.settings import localsettings from openmolar.dbtools.feescales import feescale_handler LOGGER = logging.getLogger("openmolar") def isParseable(data): ''' takes a string, tries to parse it. ''' try: d = minidom.parseString(data) d.toxml() d.unlink except Exception as exc: return (False, str(exc)) return (True, "") def getListFromNode(node, id): ''' get the text data from the first child of any such nodes ''' nlist = node.getElementsByTagName(id) values = [] for n in nlist: children = n.childNodes for child in children: values.append(child.data.strip()) return values def getTextFromNode(node, id): ''' get the text data from the first child of any such nodes ''' nlist = node.getElementsByTagName(id) text = "" for n in nlist: children = n.childNodes for child in children: text += child.data.strip() return text def getBoolFromNode(node, id, default=False): ''' get the text data from the first child of any such nodes ''' if default: return not getTextFromNode(node, id) in ("False", "0") else: return getTextFromNode(node, id) in ("True", "1") def _stripped(xml_string): return xml_string.replace(">", ">").replace("<", "<") class FeeTables(object): ''' a wrapper class to contain as many fee tables as the user has outlined. ''' def __init__(self): self.tables = OrderedDict() self.warnings = [] self._ui_crown_chart_buttons = None self._ui_post_chart_buttons = None self._ui_implant_chart_buttons = None self._ui_fs_chart_buttons = None self._ui_endo_chart_buttons = None self._ui_surgical_chart_buttons = None self.getTables() self.loadTables() if not self.default_table: self.warnings.append("No Feetables Found") else: LOGGER.info("Default FeeTable = %s" % self.default_table) @property def default_csetype(self): try: return self.default_table.categories[0] except AttributeError: return "" @property def csetypes(self): csetypes = [] for table in list(self.tables.values()): for cset in table.categories: if cset not in csetypes: csetypes.append(cset) LOGGER.debug("Coursetypes found are %s", csetypes) return csetypes @property def default_table(self): try: return list(self.tables.values())[0] except IndexError: return None def get_all_buts(self, att): unique_shortcuts = set([]) types_ = [] for table in list(self.tables.values()): for button in table.ui_lists.get(att, []): if button.shortcut not in unique_shortcuts: types_.append(button) unique_shortcuts.add(button.shortcut) return sorted(types_, key=lambda x: x.ix) @property def ui_fs_chart_buttons(self): if self._ui_fs_chart_buttons is None: self._ui_fs_chart_buttons = self.get_all_buts("fs_buttons") return self._ui_fs_chart_buttons @property def ui_crown_chart_buttons(self): ''' A list of unique crown types from all tables. ''' if self._ui_crown_chart_buttons is None: self._ui_crown_chart_buttons = self.get_all_buts("crown_buttons") return self._ui_crown_chart_buttons @property def ui_post_chart_buttons(self): ''' A list of unique post types from all tables. ''' if self._ui_post_chart_buttons is None: self._ui_post_chart_buttons = self.get_all_buts("post_buttons") return self._ui_post_chart_buttons @property def ui_implant_chart_buttons(self): ''' A list of unique implant types from all tables. ''' if self._ui_implant_chart_buttons is None: self._ui_implant_chart_buttons = \ self.get_all_buts("implant_buttons") return self._ui_implant_chart_buttons @property def ui_endo_chart_buttons(self): ''' A list of unique implant types from all tables. ''' if self._ui_endo_chart_buttons is None: self._ui_endo_chart_buttons = \ self.get_all_buts("endo_buttons") return self._ui_endo_chart_buttons @property def ui_surgical_chart_buttons(self): ''' A list of unique implant types from all tables. ''' if self._ui_surgical_chart_buttons is None: self._ui_surgical_chart_buttons = \ self.get_all_buts("surgical_buttons") return self._ui_surgical_chart_buttons def __repr__(self): ''' a readable description of the object ''' retarg = "%d Tables \n" % len(self.tables) for key in self.tables: table = self.tables[key] retarg += "===" * 20 + "\n" retarg += " table %s - %s\n" % (key, table.briefName) retarg += "%s \n" % table.description retarg += "valid %s - %s\n" % ( localsettings.formatDate(table.startDate), localsettings.formatDate(table.endDate)) retarg += " categories %s\n" % table.categories retarg += " has pt column %s\n" % table.hasPtCols retarg += " has %d fee items\n" % len(table.feesDict) retarg += "===" * 20 + "\n" return retarg def getTables(self): ''' get the key to our tables ''' rows = feescale_handler.get_feescales_from_database() for i, (ix, xml_data) in enumerate(rows): ft = FeeTable(ix, xml_data) ft.index = i self.tables[i] = ft def loadTables(self): ''' iterate through the child tables, and get them loaded ''' for table in list(self.tables.values()): try: table.load_from_xml() except Exception as exc: message = "%s %s %s" % ( _("feesscale"), table.database_ix, _("Failed to Load") ) LOGGER.exception(message) self.warnings.append(message + "
    %s
    " % exc) @property def all_other_shortcuts(self): for table in list(self.tables.values()): if table.is_current: for shortcut in table.other_shortcuts: yield table, shortcut class FeeTable(object): ''' a class to contain and allow quick access to data stored in a fee table ''' def __init__(self, ix, xml_data): LOGGER.info("initiating Feetable %s" % ix) self.database_ix = ix self.dom = minidom.parseString(xml_data) self.setCategories() self.setTableDescription() self.setStartDate() self.setEndDate() self.setSectionHeaders() self.feesDict = {} self.complex_shortcuts = [] self.treatmentCodes = OrderedDict() self.chartPlainCodes = OrderedDict() self.chartRegexCodes = OrderedDict() self.otherRegexCodes = OrderedDict() self.item_modifiers = [] self.ui_lists = { "crown_buttons": [], "implant_buttons": [], "fs_buttons": [], "endo_buttons": [], "surgical_buttons": [], "post_buttons": [], } def __repr__(self): ''' a readable description of the object ''' return "FeeTable %s database index %s - has %s feeItems" % ( self.briefName, self.database_ix, len(self.feesDict)) def __hash__(self): ''' new for python3 as the presence of the __eq__ method renders these instances unhashable. ''' return object.__hash__(self) def __eq__(self, other): return self.database_ix == other.database_ix @property def briefName(self): return self.description @property def hasPtCols(self): for fee_item in list(self.feesDict.values()): if fee_item.has_pt_fees: return True return False @property def feeColCount(self): if self.hasPtCols: return 2 return 1 def setCategories(self): ''' the categories will be a list like "P", "PB" etc... ''' LOGGER.debug("loading categories") self.categories = [] for node in self.dom.getElementsByTagName("category"): try: text = node.firstChild.data.strip(" \n") self.categories.append(text) except AttributeError: # no categories pass LOGGER.debug("categories = %s" % str(self.categories)) def setSectionHeaders(self): ''' Headers are used when displaying feescale in a treeview ''' LOGGER.debug("loading section headers") self.headers = {} for node in self.dom.getElementsByTagName("header"): id = node.getAttribute("id") text = node.childNodes[0].data.strip(" \n") self.headers[id] = text LOGGER.debug("section headers = %s" % sorted(self.headers)) def setTableDescription(self): ''' a user friendly description of the table ''' LOGGER.debug("loading feescale description") node = self.dom.getElementsByTagName("feescale_description")[0] text = node.childNodes[0].data.strip(" \n") self.description = text LOGGER.info("Feetable description = %s" % self.description) def setStartDate(self): ''' the date the feetable started (can be in the future) ''' LOGGER.debug("loading startdate") start_node = self.dom.getElementsByTagName("start")[0] day = start_node.getElementsByTagName("day")[0].childNodes[0].data month = start_node.getElementsByTagName("month")[0].childNodes[0].data year = start_node.getElementsByTagName("year")[0].childNodes[0].data self.startDate = datetime.date(int(year), int(month), int(day)) LOGGER.debug("startDate = %s" % self.startDate) def setEndDate(self): ''' the date the feetable became obsolete (can be in the past) ''' LOGGER.debug("loading enddate") try: end_node = self.dom.getElementsByTagName("end")[0] except IndexError: self.endDate = None LOGGER.debug("feescale is open ended (no end date)") return day = end_node.getElementsByTagName("day")[0].childNodes[0].data month = end_node.getElementsByTagName("month")[0].childNodes[0].data year = end_node.getElementsByTagName("year")[0].childNodes[0].data self.endDate = datetime.date(int(year), int(month), int(day)) LOGGER.debug("endDate = %s" % self.endDate) @property def is_current(self): ''' a boolean value based the table start and end dates ''' return self.endDate is None or \ self.startDate <= datetime.date.today() <= self.endDate def get_ui_buttons(self, tagname): for ix, node in enumerate(self.dom.getElementsByTagName(tagname)): chart_button = namedtuple('Button', ("ix", "shortcut", "description", "tooltip")) chart_button.ix = ix chart_button.description = node.getAttribute("description") chart_button.tooltip = node.getAttribute("tooltip") chart_button.shortcut = node.getAttribute("shortcut") yield (chart_button) def load_from_xml(self): ''' now load the fee items and shortcuts ''' shortcut_nodes = self.dom.getElementsByTagName("complex_shortcut") for shortcut_node in shortcut_nodes: complex_shortcut = ComplexShortcut(shortcut_node) self.complex_shortcuts.append(complex_shortcut) for item_node in self.dom.getElementsByTagName("item"): item_code = item_node.getAttribute("id") fee_item = FeeItem(self, item_code, item_node) self.feesDict[item_code] = fee_item if fee_item.usercode is None: pass elif fee_item.is_regex: # use pre-compiled regex as the key key = re.compile(fee_item.usercode) if fee_item.pt_attribute == "chart": self.chartRegexCodes[key] = item_code else: self.otherRegexCodes[key] = item_code else: if fee_item.pt_attribute == "chart": self.chartPlainCodes[fee_item.usercode] = item_code else: self.treatmentCodes[fee_item.usercode] = item_code for modifier_node in self.dom.getElementsByTagName("modifier"): self.item_modifiers.append(Modifier(modifier_node)) for button in self.get_ui_buttons("crown_chart_button"): self.ui_lists["crown_buttons"].append(button) for button in self.get_ui_buttons("post_chart_button"): self.ui_lists["post_buttons"].append(button) for button in self.get_ui_buttons("fs_chart_button"): self.ui_lists["fs_buttons"].append(button) for button in self.get_ui_buttons("endo_chart_button"): self.ui_lists["endo_buttons"].append(button) for button in self.get_ui_buttons("surgical_chart_button"): self.ui_lists["surgical_buttons"].append(button) for button in self.get_ui_buttons("implant_chart_button"): self.ui_lists["implant_buttons"].append(button) self.dom.unlink() def getToothCode(self, tooth, shortcut): ''' converts fillings into four digit codes used in the feescale eg "MOD" -> "1404" (both are strings) shortcut will be something like "CR,GO" or "MOD,CO" if not found, "-----" will be returned ''' LOGGER.debug("getToothCode for %s%s" % (tooth, shortcut)) for key in self.chartRegexCodes: if key.match(tooth + shortcut): return self.chartRegexCodes[key] return self.chartPlainCodes.get(shortcut, "-----") def getItemCodeFromUserCode(self, arg): ''' return the itemcode associated with it, otherwise, return "-----" ''' LOGGER.debug("looking up usercode %s" % arg) for key in self.otherRegexCodes: if key.match(arg): return self.otherRegexCodes[key] return self.treatmentCodes.get(arg, "-----") def _getFees(self, itemcode, pt, csetype, shortcut): ''' returns a tuple of (fee, ptfee) for an item ''' LOGGER.debug("%s %s %s" % ('looking up a fee for', itemcode, shortcut)) try: fee_item = self.feesDict[itemcode] except KeyError: LOGGER.warning("itemcode %s not found in feetable %s" % ( itemcode, self.database_ix)) return (0, 0) if fee_item.is_simple: return fee_item.get_fees(1) if fee_item.has_fee_shortcuts: return fee_item.get_fees_from_fee_shortcuts(shortcut) # complex codes have a different fee if there are multiple # in the estimate already existing_no = 0 for existing_est in pt.estimates: if (existing_est.itemcode == itemcode and csetype == existing_est.csetype): existing_no += 1 return fee_item.get_fees(existing_no + 1) def getFees(self, itemcode, pt, csetype, shortcut): ''' a wrapper for the old function ''' LOGGER.debug((itemcode, pt, csetype, shortcut)) gross, charge = self._getFees(itemcode, pt, csetype, shortcut) return self.apply_modifiers(gross, charge, itemcode, pt) def recalc_fee(self, pt, itemcode, item_no): ''' returns a tuple of (fee, ptfee) for an item ''' LOGGER.debug("recalculating fee for itemcode %s with %d items" % ( itemcode, item_no)) try: fee_item = self.feesDict[itemcode] except KeyError: LOGGER.warning("itemcode %s not found in feetable %s" % ( itemcode, self.database_ix)) return (0, 0) gross, charge = fee_item.get_fees(item_no) return self.apply_modifiers(gross, charge, itemcode, pt) def apply_modifiers(self, gross, charge, itemcode, pt): for modifier in self.item_modifiers: LOGGER.debug("checking modifier %s" % modifier) if modifier.condition_met(pt) and modifier.item_id_match(itemcode): return modifier.gross_mod(gross), modifier.charge_mod(charge) return gross, charge def getItemDescription(self, itemcode, usercode): ''' returns the patient readable (ie. estimate ready) description of the item ''' try: return self.feesDict[itemcode].description except KeyError: return "%s (%s)" % (_("OTHER TREATMENT"), usercode) @property def other_shortcuts(self): ''' shortcuts which are used in association with 'other' items ''' items = {} for item in list(self.feesDict.values()): if item.pt_attribute == "other": items[item.description.lower()] = item.shortcut for key in sorted(items.keys()): yield ("other", items[key]) class FeeItem(object): ''' this class handles the calculation of fees part of the challenge is recognising the fact that 2x an item is not necessarily the same as double the fee for a single item etc.. ''' def __init__(self, table, itemcode, element): self.table = table self.itemcode = itemcode self.section = getTextFromNode(element, "section") try: self.obscurity = int(element.getAttribute("obscurity")) except ValueError: self.obscurity = 0 self.fees = [] self.ptFees = [] self.brief_descriptions = [] self.conditions = [] self.shortcut = None self.is_regex = False self._forbid_reason = None self.fee_shortcuts = [] try: shortcut_node = element.getElementsByTagName("shortcut")[0] self.is_regex = shortcut_node.getAttribute("type") == "regex" self.pt_attribute = shortcut_node.getAttribute("att") try: self.shortcut = shortcut_node.childNodes[0].data except IndexError: self.shortcut = None except IndexError: self.pt_attribute = "other" self.is_regex = False self.shortcut = None if not self.pt_attribute: self.pt_attribute = "other" self.description = getTextFromNode(element, "description") try: node = element.getElementsByTagName("feescale_forbid")[0] self.allow_feescale_add = False reason_nodes = node.getElementsByTagName("reason") if reason_nodes: self._forbid_reason = reason_nodes[0].childNodes[0].data except IndexError: self.allow_feescale_add = True for node in element.getElementsByTagName("fee"): bd = getTextFromNode(node, "brief_description") self.brief_descriptions.append(bd) fee = int(getTextFromNode(node, "gross")) self.fees.append(fee) try: # charge is an optional field. charge = int(getTextFromNode(node, "charge")) self.ptFees.append(charge) except ValueError: pass condition = _stripped(node.getAttribute("condition")) self.conditions.append(condition) shortcut_match = node.getAttribute("shortcut_match") if shortcut_match: self.fee_shortcuts.append(re.compile(shortcut_match)) def __repr__(self): return "FeeItem '%s' %s %s %s %s" % ( self.itemcode, self.description, str(self.fees), str(self.ptFees), str(self.brief_descriptions) ) @property def has_pt_fees(self): return len(self.ptFees) > 0 @property def is_simple(self): ''' a boolean which is true if n items costs n* fee many items the cost goes down with multiples, or there is a maximum fee ''' return len(self.fees) == 1 @property def has_fee_shortcuts(self): return self.fee_shortcuts != [] def fee_shortcut_for_display(self, index): try: fsfd = self.fee_shortcuts[index].pattern if self.pt_attribute == "chart": return fsfd return "%s %s" % (self.pt_attribute, fsfd) except IndexError: pass except AttributeError: # not regex? I can't see this happening? pass return self.usercode @property def usercode(self): if self.shortcut is None: return None if self.pt_attribute == "chart": return self.shortcut return"%s %s" % (self.pt_attribute, self.shortcut) @property def forbid_reason(self): if self._forbid_reason is None: return _("No reason given by feescale author.") return self._forbid_reason def get_fees(self, item_no=1): ''' convenience wrapper for getFee function returns a tuple fee, ptfee ''' fee = self.get_fee(item_no) ptFee = self.get_fee(item_no, charge=True) if ptFee is None: return (fee, fee) else: return (fee, ptFee) def get_fees_from_fee_shortcuts(self, shortcut): ''' this was introduced to handle the case where a single item code has different fees specifically, SR_P/R321,L1 is a 4 toothed partial denture but that has only 1 itemcode on NHS feescale :( ''' for i, compiled_regex in enumerate(self.fee_shortcuts): LOGGER.debug("Comparing '%s' with regex '%s'" % ( shortcut, compiled_regex.pattern)) if compiled_regex.match(shortcut): fee = self.fees[i] try: charge = self.ptFees[i] except IndexError: charge = fee return fee, charge LOGGER.warning( "error getting fee from fee_shortcut. returning default") return self.get_fees() def get_fee(self, item_no=1, charge=False): ''' get a fee for the xth item of this type if charge is true, then return the "charge" rather than the gross fee ''' LOGGER.debug( "FeeItem.get_fee(item_no=%d, charge=%s)" % (item_no, charge)) if charge: if self.ptFees == []: return None feeList = self.ptFees else: feeList = self.fees if self.is_simple or item_no == 1: fee = feeList[0] LOGGER.debug("simple addition of 1st item, fee=%s" % fee) return fee LOGGER.warning("Complex FeeItem fee lookup, item_no=%d" % item_no) for i, condition in enumerate(self.conditions): LOGGER.debug("checking condition '%s'" % condition) if condition == "item_no=%d" % item_no: fee = feeList[i] LOGGER.debug("condition met '%s' fee=%s" % (condition, fee)) return fee m = re.match("item_no>(\d+)", condition) if m and item_no > int(m.groups()[0]): fee = feeList[i] LOGGER.debug("condition met '%s' fee=%s" % (condition, fee)) return fee m = re.match("item_no<(\d+)", condition) if m and item_no < int(m.groups()[0]): fee = feeList[i] LOGGER.debug("condition met '%s' fee=%s" % (condition, fee)) return fee m = re.match("(\d+) # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import os import re from openmolar.settings import localsettings from PyQt5 import QtGui from PyQt5 import QtWidgets TOOTHPIXMAPS = {} def toothPixmaps(): if TOOTHPIXMAPS == {}: filepath = os.path.join(localsettings.RESOURCE_DIR, "teeth") for f in os.listdir(filepath): filename = os.path.basename(f) reg = re.match("([ul][lr][1-8,a-d]).png", filename) if reg: tooth = reg.groups()[0] TOOTHPIXMAPS[tooth] = QtGui.QPixmap(os.path.join(filepath, f)) # print TOOTHPIXMAPS return TOOTHPIXMAPS if __name__ == "__main__": app = QtWidgets.QApplication([]) lab = QtWidgets.QLabel() lab.setPixmap(toothPixmaps()["lr6"]) lab.show() app.exec_() openmolar-1.0.15-gd81f9e5/src/openmolar/settings/localsettings.py0000644000175000017500000006616513015432051024604 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import configparser import datetime import hashlib import logging import locale import os import re import shutil import subprocess import sys from xml.dom import minidom from openmolar.settings.version import VERSION LOGGER = logging.getLogger("openmolar") SALT = "OIHoIHyO" # default supervisor password is blank SUPERVISOR = "c1219df26de403348e211a314ff2fce58aa6e28d" DBNAME = "default" # updated 23th November 2016 CLIENT_SCHEMA_VERSION = "3.7" DB_SCHEMA_VERSION = "unknown" ENCODING = locale.getpreferredencoding() FEETABLES = None WIKIURL = "" cashbookCodesDict = None IGNORE_SCHEMA_CHECK = False FORCE_FIRST_RUN = False PT_COUNT = 0 locale.setlocale(locale.LC_ALL, '') def showVersion(): ''' push version details to std out ''' print(("OpenMolar %s" % VERSION)) if LOGGER.level == logging.DEBUG: showVersion() PRACTICE_NAME = _("Example Dental Practice") APPOINTMENT_CARD_FOOTER = _("Please try and give at least 24 hours notice") +\ "\n" + _("if you need to change an appointment.") MESSAGE_TEMPLATE = '''

    %s

    • %s %s

    %s

    %s

    ''' LOCALSETTINGS_TEMPLATE = ''' 1.0 ''' def determine_path(): ''' returns the true working directory, regardless of any symlinks. Very useful. Borrowed from wxglade.py ''' try: root = __file__ if os.path.islink(root): root = os.path.realpath(root) retarg = os.path.dirname(os.path.dirname(os.path.abspath(root))) return retarg except: # - this shouldn't happen! print("no __file__ variable found !!!!") return os.path.dirname(os.getcwd()) server_names = [] chosenserver = 0 def setChosenServer(i): global DBNAME, chosenserver LOGGER.debug("chosen server number is set as %s", i) chosenserver = i try: DBNAME = server_names[i] LOGGER.warning("User has chosen database '%s'", DBNAME) except IndexError: LOGGER.warning("no server name.. config file is old format?") wkdir = determine_path() if "win" in sys.platform: WINDOWS = True LOGGER.info("Windows OS detected - modifying settings") SHARE_DIR = os.path.join(os.environ.get("ProgramFiles", ""), "openmolar") global_cflocation = os.path.join(SHARE_DIR, "openmolar.conf") LOCALFILEDIRECTORY = os.path.join(os.environ.get("APPDATA", ""), "openmolar") else: WINDOWS = False if "linux" not in sys.platform: LOGGER.warning( "unknown system platform (mac?) - defaulting to linux settings") SHARE_DIR = os.path.join("/usr", "share", "openmolar") global_cflocation = '/etc/openmolar/openmolar.conf' LOCALFILEDIRECTORY = os.path.join(os.environ.get("HOME", ""), ".openmolar") if os.path.isfile(global_cflocation): # if a system wide user file is found, this is used preferentially. # this is for security reasons. cflocation = global_cflocation else: cflocation = os.path.join(LOCALFILEDIRECTORY, "openmolar.conf") RESOURCE_DIR = os.path.join(wkdir, "resources") if not os.path.isdir(RESOURCE_DIR): # as will be the case if application is run from an installed version RESOURCE_DIR = os.path.join(SHARE_DIR, "resources") LOGIN_CONF = os.path.join(LOCALFILEDIRECTORY, "autologin.conf") TEMP_PDF = os.path.join(LOCALFILEDIRECTORY, "temp.pdf") DOCS_DIRECTORY = os.path.join(LOCALFILEDIRECTORY, "documents") if not os.path.exists(DOCS_DIRECTORY): os.makedirs(DOCS_DIRECTORY) appt_shortcut_file = os.path.join(LOCALFILEDIRECTORY, "appointment_shortcuts.xml") if not os.path.isfile(appt_shortcut_file): try: shutil.copy(os.path.join(RESOURCE_DIR, "appointment_shortcuts.xml"), appt_shortcut_file) except FileNotFoundError: LOGGER.exception("Your Resource files are incomplete!") stylesheet = "file://%s" % os.path.join(RESOURCE_DIR, "style.css") printer_png = "file://%s" % os.path.join(RESOURCE_DIR, "icons", "ps.png") medical_png = "file://%s" % os.path.join(RESOURCE_DIR, "icons", "med.png") money_png = "file://%s" % os.path.join(RESOURCE_DIR, "icons", "vcard.png") LOGOPATH = "file://%s" % os.path.join(RESOURCE_DIR, "newlogo.png") resources_path = "file://%s" % RESOURCE_DIR def win_url(url): ''' convert the windows filepaths to unix style filepaths ''' return url.replace("://", ":///").replace("\\", "/") if WINDOWS: resources_path = win_url(resources_path) stylesheet = win_url(stylesheet) printer_png = win_url(printer_png) money_png = win_url(money_png) LOGOPATH = win_url(LOGOPATH) # this is updated if correct password is given successful_login = False # - these permissions are for certain admin duties. permissionsRaised = False permissionExpire = datetime.datetime.now() def openPDF(filepath=TEMP_PDF): ''' open a PDF - minimal checks to ensure no malicious files have been inserted into my sacred filepaths though..... ''' if not re.match(".*[.]pdf$", filepath): raise Exception("%s is not a pdf file" % filepath) openFile(filepath) def openFile(filepath): ''' open a File - minimal checks to ensure no malicious files have been inserted into my sacred filepaths though..... ''' if not os.path.exists(filepath): raise IOError("%s does not exist" % filepath) if "win" in sys.platform: os.startfile(filepath) else: subprocess.Popen(["xdg-open", filepath]) # MESSAGES #################################################### def about(): return '''

    OpenMolar - open Source dental practice management software.
    Version %s
    Client Schema Version is %s, DataBase is at version %s


    Copyright (C) 2009-2016 Neil A. Wallace B.Ch.D.
    Project Homepage
    http://www.openmolar.com.

    Thanks to Richard Querin for the wonderful icon and Logo.''' % (VERSION, CLIENT_SCHEMA_VERSION, DB_SCHEMA_VERSION) license_ = '''

    This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
    This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
    You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses.

    ''' # - this variable is used when using DATE_FORMAT from the database # - this is done by cashbook and daybook etc... # - my preference is the UK style dd/mm/YYYY # - feel free to change this!!! OM_DATE_FORMAT = r"%d/%m/%Y" try: OM_DATE_FORMAT = re.sub("y", "Y", locale.nl_langinfo(locale.D_FMT)) except AttributeError: # will happen on windows OM_DATE_FORMAT = r"%d/%m/%Y" # - ditto the qt one QDATE_FORMAT = "dddd, d MMMM yyyy" # - updated at login operator = "unknown" allowed_logins = [] # - this list is used for navigating back and forth through the list recent_snos = [] recent_sno_index = -1 last_family_no = 0 # - update whenever a manual search is made # - sname,fname dob... etc lastsearch = ("", "", datetime.date(1900, 1, 1), "", "", "") # - used to load combobboxes etc.... activedents = [] activehygs = [] activedent_ixs = () activehyg_ixs = () clinicianNo = 0 clinicianInits = "" # these times are for the boundaries of the widgets... earliestStart = datetime.time(8, 0) latestFinish = datetime.time(20, 0) # -this dictionary is upated when this file is initiate - # -it links dentist keys with practioners # -eg ops[1] = "JJ" ops = {} # -keys/dents the other way round. ops_reverse = {} apptix = {} # -this dictionary is upated when this file is initiate - # -it links appointment keys with practioners # -eg app[13]="jj" apptix_reverse = {} # - set a latest possible date for appointments to be made # -(necessary if a very long appointment goes right on through) # - would get maximum recursion, quite quickly! # todo - this will need to change!!!! BOOKEND = datetime.date.today() + datetime.timedelta(days=183) MH_FORM_PERIOD = 350 # how many days old should an MH form be allowed to get? # -treatment codes.. apptTypes = ( _("EXAM"), _("BITE"), _("BT"), _("FAMILY"), _("FILL"), _("FIT"), _("HYG"), _("IMPS"), _("IMPLANT"), _("LF"), _("ORTHO"), _("PAIN"), _("PREP"), _("RCT"), _("RECEMENT"), _("REVIEW"), _("SP"), _("TRY"), _("XLA"), _("OTHER") ) # - default appt font size appointmentFontSize = 8 message = "" dentDict = {} # - surgery or reception machine? station = "surgery" # - openmolar needs to know where it is when calling x-rays surgeryno = -1 # - pt's are "private, independent, NHS etc...." CSETYPES = [] DEFAULT_COURSETYPE = "" # - self evident PRACTICE_ADDRESS = ("The Dental Practice", "My Street", "My Town", "POST CODE") # - this is updated whenever a patient record loads, for ease of address # - manipulation BLANK_ADDRESS = ("",) * 8 LAST_ADDRESS = BLANK_ADDRESS # - 1 less dialog box for these lucky people defaultPrinterforGP17 = False # - users who shouldn't post to the forum disallowed_forum_posters = [] class PatientNotFoundError(Exception): ''' my own class of exception, for when a serialno is called from the database and no match is found ''' pass def hash_func(message): ''' the function to get a unique value for all treatments in the database ''' return hashlib.sha1(message.encode("utf8")).hexdigest() def pencify(input_): ''' safely convert "0.29" to 29, or "1.50" to 150 etc.. in python int(0.29 * 100) is 28! ''' m = re.match(" *(\d+)?\.?(\d)?(\d)?", input_) if not m: return 0 return int("%s%s%s" % ( "0" if m.groups()[0] is None else m.groups()[0], "0" if m.groups()[1] is None else m.groups()[1], "0" if m.groups()[2] is None else m.groups()[2]) ) def decimalise(pence): return "%d.%02d" % (pence // 100, pence % 100) def convert_deciduous(tooth): ''' if the tooth is a match for ulD or llE etc.. return the corresponding adult tooth (necessary to find the attribute used for treatment returns tooth unchanged if not a match ''' def my_sub(m): return "%s%s" % (m.groups()[0], "*ABCDE".index(m.groups()[1])) return re.sub("^([ul][lr])([A-E])", my_sub, tooth) def currentTime(): ''' returns a datetime.datetime.today object eg. 7th March 2009 18:56:37 is (2009, 3, 7, 18, 56, 37, 582484) has attributes day, month, year etc... ''' return datetime.datetime.today() def int_timestamp(): ''' returns the current time in int format ''' d = datetime.datetime.now() return int("%d%02d" % (d.hour, d.minute)) def currentDay(): ''' return a python date object for the current day ''' return datetime.date.today() def pence_to_pounds(m): ''' takes an integer, returns as pounds.pence eg 1950 -> "19.50" ''' return "%d.%02d" % (m // 100, m % 100) def formatMoney(m): ''' takes an integer, returns a string ''' if isinstance(m, str): try: return locale.currency(float(m)) except Exception: LOGGER.exception("formatMoney error, str sent") return "%s" % m else: val = pence_to_pounds(m) try: return locale.currency(float(val)) except Exception: LOGGER.exception("formatMoney error, int sent") return val def previous_sno(): try: return recent_snos[recent_sno_index] except IndexError: return None def reverseFormatMoney(m): ''' takes a string (as from above) and returns the value in pence >>> reverseFormatMoney("$387.23") 38723 ''' try: numbers = re.findall("\d", m) except TypeError: print("unable to convert %s to an integer - returning 0" % m) return 0 retarg = "" for number in numbers: retarg += number return int(retarg) def GP17formatDate(d): ''' takes a python date type... formats for use on a NHS form ''' try: return "%02d%02d%04d" % (d.day, d.month, d.year) except AttributeError: return " " * 8 try: DAYNAMES = (locale.nl_langinfo(locale.DAY_2), locale.nl_langinfo(locale.DAY_3), locale.nl_langinfo(locale.DAY_4), locale.nl_langinfo(locale.DAY_5), locale.nl_langinfo(locale.DAY_6), locale.nl_langinfo(locale.DAY_7), locale.nl_langinfo(locale.DAY_1)) except AttributeError: # WILL happen on windows - no nl_langinfo DAYNAMES = (_("Monday"), _("Tuesday"), _("Wednesday"), _("Thursday"), _("Friday"), _("Saturday"), _("Sunday")) def dayName(d): ''' expects a datetime object, returns the day ''' try: return DAYNAMES[d.isoweekday() - 1] except IndexError: return "?day?" def monthName(d): ''' expects a datetime object, returns the month ''' try: try: return("", locale.nl_langinfo(locale.MON_1), locale.nl_langinfo(locale.MON_2), locale.nl_langinfo(locale.MON_3), locale.nl_langinfo(locale.MON_4), locale.nl_langinfo(locale.MON_5), locale.nl_langinfo(locale.MON_6), locale.nl_langinfo(locale.MON_7), locale.nl_langinfo(locale.MON_8), locale.nl_langinfo(locale.MON_9), locale.nl_langinfo(locale.MON_10), locale.nl_langinfo(locale.MON_11), locale.nl_langinfo(locale.MON_12) )[d.month] except AttributeError: # WILL happen on windows - no nl_langinfo return("", _("January"), _("February"), _("March"), _("April"), _("May"), _("June"), _("July"), _("August"), _("September"), _("October"), _("November"), _("December"))[d.month] except IndexError: return "?month?" def longDate(d): try: day = str(d.day) if day == "1": day = day + "st" elif day[0] == "1": day = day + "th" elif day[-1] == "1": day = day + "st" elif day[-1] == "2": day = day + "nd" elif day[-1] == "3": day = day + "rd" else: day = day + "th" return "%s, %s %s %d" % (dayName(d), day, monthName(d), d.year) except Exception as e: print(e) return "date" def readableDate(d): ''' takes a python date type, returns either the date, or yesterday, today, tommorrow if necessary ''' if not d: return _("None") today = currentDay() if d == today: return _("Today") if d - today == datetime.timedelta(1): return _("Tomorrow") if d - today == datetime.timedelta(-1): return _("Yesterday") return longDate(d) def readableDateTime(d): date_ = d.date() today = currentDay() elapsed_days = (today - date_).days if elapsed_days == 0: date_str = "" elif elapsed_days == 1: date_str = _("Yesterday") elif elapsed_days < 7: date_str = DAYNAMES[date_.weekday()] else: date_str = formatDate(date_) return "%s %s" % (date_str, d.time().strftime("%H:%M")) def notesDate(d): ''' takes a python date type, returns either the date, or yesterday, today, tommorrow if necessary ''' rd = readableDate(d) if rd in (_("None"), _("Today"), _("Yesterday")): return rd try: return rd[rd.index(",") + 1:] except Exception: return "error getting date" def formatDate(d): '''takes a date, returns a formatted date string''' try: retarg = d.strftime(OM_DATE_FORMAT) except AttributeError: retarg = "" return retarg def wystimeToHumanTime(t): '''converts a time in the format of 0830 or 1420 to "HH:MM" (string) >>> wystimeToHumanTime(830) '8:30' ''' try: hour, min = int(t) // 100, int(t) % 100 return "%d:%02d" % (hour, min) except: return None def wystimeToPyTime(t): '''converts a time in the format of 0830 or 1420 to "HH:MM" (string) >>> wystimeToPyTime(830) datetime.time(8, 30) ''' try: hour, min = t // 100, t % 100 return datetime.time(hour, min) except: return None def humanTimetoWystime(t): '''reverse function to wystimeToHumanTime >>> humanTimetoWystime('8:30') 830 ''' try: t = t.replace(":", "") return int(t) except: return None def minutesPastMidnighttoWystime(t): ''' converts minutes past midnight(int) to format HHMM (integer) >>> minutesPastMidnighttoWystime(100) 140 ''' hour, min = t // 60, int(t) % 60 return hour * 100 + min def pyTimetoWystime(t): ''' converts python datetime.time to minutes past midnight(int) to a wystime >>> pyTimetoWystime(datetime.time(14,20)) 1420 ''' hour, min = t.hour, t.minute return hour * 100 + min def pyTimeToHumantime(t): ''' converts a python datetime.time to format HH:MM ''' return t.strftime("%H:%M") def minutesPastMidnightToPyTime(t): ''' converts minutes past midnight(int) to a python datetime.time >>> minutesPastMidnightToPyTime(100) datetime.time(1, 40) ''' hour, min = t // 60, int(t) % 60 return datetime.time(hour, min) def pyTimeToMinutesPastMidnight(t): ''' converts python datetime.time to minutes past midnight(int) to a >>> pyTimeToMinutesPastMidnight(datetime.time(1, 40)) 100 ''' return t.hour * 60 + t.minute def minutesPastMidnight(t): ''' converts a time in the format of 0830 or 1420 to minutes past midnight (integer) >>> minutesPastMidnight(140) 100 ''' hour, min = int(t) // 100, int(t) % 100 return hour * 60 + min def minutesPastMidnighttoPytime(t): ''' converts an integer representing elapsed minutes past midnight to a python datetime.time object >>> minutesPastMidnighttoPytime(100) datetime.time(1, 40) ''' hour, min = t // 60, t % 60 return datetime.time(hour, min) def humanTime(t): ''' converts minutes past midnight(int) to format 'HH:MM' (string) >>> humanTime(100) '1:40' ''' hour, min = t // 60, int(t) % 60 return "%d:%02d" % (hour, min) def setOperator(u1, u2): global operator if u2 == "": operator = u1 else: operator = "%s/%s" % (u1, u2) def autologin(): ''' look in ~/.openmolar/login.conf for login options ''' PASSWORD, USER1, USER2 = "", "", "" scp = configparser.ConfigParser() scp.read(LOGIN_CONF) try: try: PASSWORD = scp.get("login", "PASSWORD") except configparser.NoOptionError: pass try: USER1 = scp.get("login", "USER1") except configparser.NoOptionError: pass try: USER2 = scp.get("login", "USER2") except configparser.NoOptionError: pass except configparser.NoSectionError: LOGGER.info("no autologin") return PASSWORD, USER1, USER2 def getLocalSettings(): ''' check for a local settings file (which has preferences etc... and "knows" it's surgery number etc... if one doesn't exist... knock one up. ''' global surgeryno, last_forumCheck if not os.path.exists(LOCALFILEDIRECTORY): os.mkdir(LOCALFILEDIRECTORY) localSets = os.path.join(LOCALFILEDIRECTORY, "localsettings.conf") if os.path.exists(localSets): dom = minidom.parse(localSets) node = dom.getElementsByTagName("surgeryno") if node and node[0].hasChildNodes(): surgeryno = int(node[0].firstChild.data) LOGGER.debug("setting as surgery number %s" % surgeryno) else: LOGGER.debug("unknown surgery number") dom.unlink() else: # - no file found.. # -so create a settings file. f = open(localSets, "w") f.write(LOCALSETTINGS_TEMPLATE) f.close() def updateLocalSettings(setting, value): ''' adds or updates node "setting" with text value "value" ''' localSets = os.path.join(LOCALFILEDIRECTORY, "localsettings.conf") LOGGER.debug("updating local settings... %s = %s" % (setting, value)) dom = minidom.parse(localSets) nodes = dom.getElementsByTagName(setting) if len(nodes) == 0: new_node = dom.createElement(setting) dom.firstChild.appendChild(new_node) text_node = dom.createTextNode(value) new_node.appendChild(text_node) dom.firstChild.appendChild(new_node) else: nodes[0].firstChild.replaceWholeText(value) f = open(localSets, "w") f.write(dom.toxml()) f.close() dom.unlink() return True def force_reconnect(): ''' user has changed server! ''' from openmolar.connect import params if params.has_connection: LOGGER.warning("closing connection to previously chosen database") params._connection.close() params.reload() def initiateUsers(changed_server=False): ''' just grab user names. necessary because the db schema could be OOD here ''' global allowed_logins LOGGER.debug( "initiating allowed users changed_server = %s", changed_server) from openmolar.dbtools.db_settings import SettingsFetcher if changed_server: force_reconnect() settings_fetcher = SettingsFetcher() allowed_logins = settings_fetcher.allowed_logins def initiate(changed_server=False): LOGGER.debug("initiating settings from database") global message, dentDict, ops, SUPERVISOR, \ ops_reverse, activedents, activehygs, activedent_ixs, activehyg_ixs, \ dent_ixs, hyg_ixs, disallowed_forum_posters, \ apptix, apptix_reverse, BOOKEND, clinicianNo, clinicianInits, \ WIKIURL, cashbookCodesDict, PT_COUNT, PRACTICE_ADDRESS, PRACTICE_NAME from openmolar.dbtools import cashbook from openmolar.dbtools.db_settings import SettingsFetcher if changed_server: force_reconnect() settings_fetcher = SettingsFetcher() settings_fetcher.fetch() cashbookCodesDict = cashbook.CashBookCodesDict() PT_COUNT = settings_fetcher.PT_COUNT WIKIURL = settings_fetcher.wiki_url BOOKEND = settings_fetcher.book_end SUPERVISOR = settings_fetcher.supervisor_pword # set up four lists with key/value pairs reversed to make for easy # referencing ops = settings_fetcher.ops ops_reverse = settings_fetcher.ops_reverse apptix_reverse = settings_fetcher.apptix_reverse dentDict = settings_fetcher.dentist_data apptix = settings_fetcher.apptix_dict activedents, activedent_ixs = settings_fetcher.active_dents activehygs, activehyg_ixs = settings_fetcher.active_hygs dent_ixs = settings_fetcher.archived_dents + activedent_ixs hyg_ixs = settings_fetcher.archived_hygs + activehyg_ixs disallowed_forum_posters = settings_fetcher.disallowed_forum_posters PRACTICE_NAME = settings_fetcher.practice_name PRACTICE_ADDRESS = settings_fetcher.practice_address # - set the clinician if possible u1 = operator.split("/")[0].strip(" ") if u1 in activedents + activehygs: clinicianNo = ops_reverse.get(u1) clinicianInits = u1 else: LOGGER.debug("no clinician set!") getLocalSettings() message = MESSAGE_TEMPLATE % ( stylesheet, LOGOPATH, LOGOPATH, _("Welcome to OpenMolar!"), _("Version"), VERSION, _("Your Data is Accessible, and the server reports no issues."), _("Have a great day!") ) LOGGER.debug("LOCALSETTINGS") LOGGER.debug("ops = %s", ops) LOGGER.debug("ops_reverse = %s", ops_reverse) LOGGER.debug("apptix = %s", apptix) LOGGER.debug("apptix_reverse = %s", apptix_reverse) LOGGER.debug("dent_ixs = %s", dent_ixs) LOGGER.debug("hyg_ixs = %s", hyg_ixs) LOGGER.debug("activedents = %s", activedents) LOGGER.debug("activehygs = %s", activehygs) LOGGER.debug("allowed logins = %s", allowed_logins) LOGGER.debug("stylesheet = %s", stylesheet) LOGGER.debug("practice name - %s", PRACTICE_NAME) LOGGER.debug("practice address - %s", PRACTICE_ADDRESS) def loadFeeTables(): ''' load the feetables (time consuming) ''' global FEETABLES, CSETYPES, DEFAULT_COURSETYPE from openmolar.settings import fee_tables LOGGER.debug("loading fee and treatment logic tables") FEETABLES = fee_tables.FeeTables() CSETYPES = FEETABLES.csetypes DEFAULT_COURSETYPE = FEETABLES.default_csetype def _test(): import doctest doctest.testmod() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) initiate() _test() openmolar-1.0.15-gd81f9e5/src/openmolar/settings/urls.py0000644000175000017500000000350212710144046022705 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ROOT = "http://www.openmolar.com" OM1_ROOT = "%s/om1" % ROOT DOCUMENT_HELP = "%s/help/documents" % OM1_ROOT __all__ = (DOCUMENT_HELP, ) def _test(): for url in __all__: print(url) if __name__ == "__main__": _test() openmolar-1.0.15-gd81f9e5/src/openmolar/settings/utilities.py0000644000175000017500000000455312710144046023742 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # import os import logging from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") def getPDF(): ''' get's the pdf which has been created to local file during some print proc ''' try: f = open(localsettings.TEMP_PDF, "rb") data = f.read() f.close() return data except Exception: LOGGER.exception("exception in utilities.getPdf") def deleteTempFiles(): ''' delete's any temprorary pdf file ''' LOGGER.info("deleting temporary Files") for name in ("import_temp", "temp.pdf"): fpath = os.path.join(localsettings.LOCALFILEDIRECTORY, name) if os.path.exists(fpath): os.remove(fpath) if __name__ == "__main__": ''' testing only ''' pass openmolar-1.0.15-gd81f9e5/src/openmolar/settings/version.py0000644000175000017500000000352013024000133023370 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This file contains the version number for openmolar Do not edit this file manually, as it should be updated by make version when git tag is updated. ''' VERSION = "1.0.15-gd81f9e5" if __name__ == '__main__': print("version = %s" % VERSION) openmolar-1.0.15-gd81f9e5/src/openmolar/__init__.py0000755000175000017500000001300713023354066021626 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' Whenever openmolar is imported, this module ensures the environment is sane by initialising gettext and logging. ''' import gettext import locale import logging import os import sys import platform LOGGER = logging.getLogger("openmolar") if platform.system() == "Windows": DEFAULT_MO_PATH = os.path.join(os.environ.get("APPDATA", ""), "openmolar", "default.mo") LOCALEDIR = os.path.join(os.environ.get("ProgramFiles", ""), "openmolar", "locale") else: DEFAULT_MO_PATH = os.path.join(os.path.expanduser("~"), ".openmolar", "default.mo") LOCALEDIR = None class MyFormatter(logging.Formatter): ''' A custom formatter to produce a pretty log ''' def format(self, record): filename = "{%s:%s}" % (record.filename, record.lineno) if record.exc_info: exc_info = "\n" + self.formatException(record.exc_info) else: exc_info = "" return "%s\t %s %s - %s%s" % ( record.levelname, filename.ljust(25), record.funcName[:15].ljust(15), record.getMessage(), exc_info) def initialise_logging(): ''' Customise the logger used by the openmolar application. ''' stream_handler = logging.StreamHandler() if "neil" in os.path.expanduser("~"): stream_handler.setFormatter(MyFormatter()) else: stream_handler.setFormatter( logging.Formatter('%(levelname)s - %(message)s')) LOGGER.addHandler(stream_handler) if "-q" in sys.argv: LOGGER.setLevel(logging.WARNING) elif "-v" in sys.argv: LOGGER.setLevel(logging.DEBUG) LOGGER.warning("verbose logging called by -v flag in sys.argv") else: LOGGER.setLevel(logging.INFO) def initialise_translation(): ''' Localise the application if possible. If a file named "default.mo" is found in ~/.openmolar then that is used. Otherwise, gnu gettext searches for the "openmolar" domain New with version 0.8.1 - gettext binary files are installed into C:\\Program Files\openmolar\locale (previously the Python environment was getting polluted) ''' if os.path.isfile(DEFAULT_MO_PATH): try: with open(DEFAULT_MO_PATH, "rb") as fp: translation = gettext.GNUTranslations(fp) translation.install() LOGGER.info("%s installed as translation", DEFAULT_MO_PATH) except: LOGGER.exception("The local translation file %s cannot be intalled", DEFAULT_MO_PATH) else: LOGGER.debug("no local translation found at %s, searching environment", DEFAULT_MO_PATH) # defensive coding here as some obscure os (windows??) may give an # unexpected result. try: lang = locale.getdefaultlocale()[0] except IndexError: LOGGER.debug("locale.getdefaultlocale failed") lang = os.environ.get("LANG") if lang: try: LOGGER.debug("trying to install your environment language %s", lang) lang1 = gettext.translation('openmolar', localedir=LOCALEDIR, languages=[lang, ]) lang1.install() LOGGER.debug("Language succesfully installed") except FileNotFoundError: LOGGER.warning("An attempt to install translation %s failed", lang) else: # - on windows.. os.environ.get("LANG") is None LOGGER.warning("no language environment found") initialise_logging() LOGGER.debug("Openmolar package location = %s", os.path.dirname(__file__)) initialise_translation() # finally - make sure _() is present in globals try: _("Find") except NameError: gettext.install('openmolar', localedir=LOCALEDIR) openmolar-1.0.15-gd81f9e5/src/openmolar/connect.py0000755000175000017500000002273412732276072021535 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module has one purpose... provide a connection to the mysqldatabase using 3rd party MySQLdb module ''' import base64 import inspect import logging import time import subprocess from xml.dom import minidom import MySQLdb from PyQt5 import QtCore from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") GeneralError = MySQLdb.Error ProgrammingError = MySQLdb.ProgrammingError IntegrityError = MySQLdb.IntegrityError OperationalError = MySQLdb.OperationalError class Signaller(QtCore.QObject): ''' an instance of this class is added to db_params so that the gui can be informed of connectivity issues via qt's signal/slot mechanism ''' message_signal = QtCore.pyqtSignal(object, object) # message, severity connection_signal = QtCore.pyqtSignal() class Connection(object): ''' an object for communicating with the database and alerting the gui to any problems. ''' _connection = None was_connected = False # returns True if a connection has been established connection_abandoned = False # this param altered by a dialog def __init__(self): self.host = "" self.port = 0 self.user = "" self.db_name = "" self.password = "" self.subprocs = [] self.signaller = Signaller() self.attempts = 0 try: self.reload() except IOError: LOGGER.warning("no such file exists %s", localsettings.cflocation) def __del__(self): self.kill_subprocs() def kill_subprocs(self): ''' kill any subprocesses spawned when before reloading. ''' for sub_proc in self.subprocs: # can't use LOGGER here as it may have been destroyed! print("killing subprocess '%s'" % sub_proc) try: sub_proc.terminate() except AttributeError: print("sub_proc %s vanished" % sub_proc) def reload(self): self.kill_subprocs() self._connection = None dom = minidom.parse(localsettings.cflocation) settingsversion = dom.getElementsByTagName( "version")[0].firstChild.data xmlnode = dom.getElementsByTagName( "server")[localsettings.chosenserver] command_nodes = xmlnode.getElementsByTagName("command") for command_node in command_nodes: LOGGER.info("commands found in conf file!") commands = command_node.getElementsByTagName("str") command_list = [] #["nohup"] for command in commands: command_list.append(command.firstChild.data) if command_list: LOGGER.info("executing %s", " ".join(command_list)) p = subprocess.Popen(command_list) self.subprocs.append(p) self.host = xmlnode.getElementsByTagName("location")[0].firstChild.data self.port = int( xmlnode.getElementsByTagName("port")[0].firstChild.data) sslnode = xmlnode.getElementsByTagName("ssl") self.use_ssl = sslnode and sslnode[0].firstChild.data == "True" xmlnode = dom.getElementsByTagName( "database")[localsettings.chosenserver] self.user = xmlnode.getElementsByTagName("user")[0].firstChild.data self.password = xmlnode.getElementsByTagName( "password")[0].firstChild.data if settingsversion == "1.1": self.password = base64.b64decode(self.password).decode("utf8") self.db_name = xmlnode.getElementsByTagName( "dbname")[0].firstChild.data if not self.use_ssl: # - to enable ssl... add True to the conf file LOGGER.debug("using ssl") else: LOGGER.warning("not using ssl (you really should!)") dom.unlink() @property def kwargs(self): ''' provides its own attributes in a form acceptable to MySQLdb ''' kwargs = { "host": self.host, "port": self.port, "user": self.user, "passwd": self.password, "db": self.db_name, "use_unicode": True, "charset": "utf8" } if self.use_ssl: # - note, ssl_settings maps to a dictionary # - which can have up to 5 params. # - ca, cert, key, capath and cipher # - however, IIUC, just using ca will encrypt the data kwargs["ssl_settings"] = {'ca': '/etc/mysql/ca-cert.pem'} return kwargs @property def database_name(self): return "%s %s:%s" % (self.db_name, self.host, self.port) @property def has_connection(self): return self._connection and self._connection.open def connect(self): ''' returns a MySQLdb object, connected to the database specified in the settings file ''' if self.connection_abandoned: return None try: if not self.has_connection: if self.attempts == 0: LOGGER.info("New database connection needed") params.signaller.message_signal.emit( _("Initiating MySQL connection"), 0) LOGGER.debug("connecting to %s", params.database_name) params._connection = MySQLdb.connect(**params.kwargs) params._connection.autocommit(True) params.was_connected = True # never returned to False self.attempts = 0 params.signaller.message_signal.emit( _("Connection Established"), 0) params.signaller.connection_signal.emit() else: params._connection.commit() return params._connection except MySQLdb.Error: LOGGER.error("unable to connect to Mysql database") LOGGER.info("will attempt re-connect in 2 seconds...") self._connection = None self.attempts += 1 params.signaller.connection_signal.emit() params.signaller.message_signal.emit("%s %d %s" % ( _("Connection attempt"), self.attempts, _("failed")), 0) if self.was_connected: # if the application has previously connected, this function needs # to block all interation until connection is reestablished. sleeps = 0 while sleeps < 2000: # approx 2 seconds between each attempt time.sleep(0.001) QtCore.QCoreApplication.processEvents() sleeps += 1 return self.connect() else: # more efficient, but not blocking QtCore.QTimer.singleShot(2000, self.connect) # create singletons params = Connection() # this line prevents a total rewrite of all modules which connect. def connect(): frameinfo = inspect.getframeinfo(inspect.currentframe().f_back) LOGGER.debug('connect called by %s line %s', frameinfo.filename, frameinfo.lineno) return params.connect() if __name__ == "__main__": LOGGER.setLevel(logging.DEBUG) LOGGER.debug("using conffile - %s" % localsettings.cflocation) for i in range(1, 11): try: LOGGER.debug("connecting....") dbc = connect() LOGGER.info(dbc) LOGGER.debug('ok... we can make Mysql connections!!') LOGGER.debug(" loop no %d ", i) if i == 2: # close the db... let's check it reconnects dbc.close() if i == 4: LOGGER.debug("making a slightly bad query... " "let's check we get a warning") cursor = dbc.cursor() cursor.execute( 'update new_patients set dob="196912091" where serialno=4') cursor.close() except Exception: LOGGER.exception("exception caught") time.sleep(5) dbc.close() openmolar-1.0.15-gd81f9e5/src/openmolar/create_db.py0000644000175000017500000001750713023543275022007 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module takes the demo dump and creates a database from it with the correct user permissions. ''' import logging import os import MySQLdb from openmolar.settings import localsettings LOGGER = logging.getLogger("openmolar") DROP_QUERY = "DROP DATABASE IF EXISTS %s" CREATE_QUERY = "CREATE DATABASE %s" # note for production deployments, only grant # select,insert,update,delete privileges PRIVS_QUERY = "GRANT ALL PRIVILEGES ON %s.* TO '%s'@'%s' IDENTIFIED BY '%s'" CHECK_SUPERVISOR_QUERY = ''' SELECT Create_priv, Drop_priv, Trigger_priv FROM user WHERE User=%s and Host=%s ''' def exists_already(host_, port_, db_name, privileged_user_pass, privileged_user="root"): ''' returns true if database 'db_name' exists ''' try: db = MySQLdb.connect(host=host_, port=port_, user=privileged_user, passwd=privileged_user_pass, db=db_name) if db.open: db.close() return True except: LOGGER.warning("exists_already threw error, passing silently") return False def check_superuser(host_, port_, passwd, user="root"): ''' returns true if database 'db_name' exists ''' result = False messages = [] try: LOGGER.info("Connecting to mysql to check superuser") db = MySQLdb.connect(host=host_, port=port_, user=user, passwd=passwd, db='mysql') if db.open: cursor = db.cursor() cursor.execute(CHECK_SUPERVISOR_QUERY, (user, host_)) rows = cursor.fetchall() db.close() for create, drop, trigger in rows: if create == "Y" and drop =="Y": result = True if create == "N": messages.append( "'%s'on'%s' does not have create database privileges") if drop == "N": messages.append( "'%s'on'%s' does not have drop database privileges") if trigger == "N": messages.append( "'%s'on'%s' does not have trigger privileges") except MySQLdb.OperationalError as exc: LOGGER.exception("error caught") return False, [str(s) for s in exc.args] except: LOGGER.exception("check_supervisor threw error, passing silently") messages.append("%s - %s '%%s' %s '%%s'" % ( _("Unable to connect to mysql"), _("please check password for"), _("on"))) return result, [m % (user, host_) for m in messages] def create_database(host_, port_, user_, pass_wd, db_name, privileged_user_pass, privileged_user="root"): ''' creates a database called "db_name" on host_, port_, passwd, ''' try: LOGGER.info("Connecting to mysql") # connect as mysqlroot to create the database db = MySQLdb.connect(host=host_, port=port_, user=privileged_user, passwd=privileged_user_pass) cursor = db.cursor() LOGGER.info("deleting any existing openmolar_demo database....") cursor.execute(DROP_QUERY % db_name) LOGGER.info("creating database %s", db_name) cursor.execute(CREATE_QUERY % db_name) LOGGER.info("setting privileges for '%s'", user_) cursor.execute(PRIVS_QUERY % (db_name, user_, host_, pass_wd)) cursor.close() db.commit() db.close() LOGGER.info("db created successfully") return True, "success" except Exception as exc: LOGGER.exception("error creating database") return False, exc.args[1] def create_tables(host_, port_, user_, pass_wd, db_name): try: fp = os.path.join(localsettings.RESOURCE_DIR, "schema.sql") f = open(fp, "r") sql_statements = f.read() f.close() LOGGER.info("Connecting to mysql") db = MySQLdb.connect(host=host_, port=port_, user=user_, db=db_name, passwd=pass_wd) cursor = db.cursor() LOGGER.info("Executing sql statements from %s", fp) cursor.execute(sql_statements) cursor.close() db.commit() db.close() return True except: LOGGER.exception("error creating database tables") def insert_data(host_, port_, user_, pass_wd, db_name, minimal_only=False): ''' An openmolar database requires some userdata before the application can run. if minimal_only is False (the default) a demo patient is installed also. ''' result = False try: for i, fp in enumerate(("minimal_data.sql", "demo_data.sql")): if minimal_only and i == 1: continue f = open(os.path.join(localsettings.RESOURCE_DIR, fp), "r") sql_statements = f.read() f.close() db = MySQLdb.connect(host=host_, port=port_, user=user_, db=db_name, passwd=pass_wd) cursor = db.cursor() cursor.execute(sql_statements) cursor.close() db.commit() db.close() result = True except: LOGGER.exception("error inserting minimal data") return result if __name__ == "__main__": import getpass LOGGER.setLevel(logging.DEBUG) root_pass = getpass.getpass("please enter your MySQL root users password :") print("exists already = %s" % exists_already("localhost", 3306, "openmolar_demo", root_pass)) if create_database("localhost", 3306, "openmolar", "password", "openmolar_demo", root_pass): LOGGER.debug("New database created successfully") create_tables("localhost", 3306, "openmolar", "password", "openmolar_demo") insert_data("localhost", 3306, "openmolar", "password", "openmolar_demo") openmolar-1.0.15-gd81f9e5/src/openmolar/main.py0000755000175000017500000001131012710144046021003 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' this module puts the "openmolar" modules onto the python path, and starts the gui ''' import getopt import logging import os import sys if sys.version < '3.0': sys.exit("This program requires a python3 runtime") from openmolar.settings import localsettings SHORTARGS = "vq" LONGARGS = [ "help", "version", "firstrun", "ignore-schema-check", "no-dev-login" ] LOGGER = logging.getLogger("openmolar") USAGE = '''%s -q \t : %s -v \t : %s --help \t : %s --firstrun \t : %s --ignore-schema-check\t : %s --version \t : %s --no-dev-login \t : %s ''' def main(): ''' main function ''' from openmolar.qt4gui import maingui maingui.main() def usage(): ''' called by --help, bad arguments, or no arguments simply importing the localsettings will display some system info ''' print(USAGE % ( _("command line options are as follows"), _("quiet (minimal logging to console)"), _("verbose logging to console (for debugging)"), _("show this text"), _("offer the firstrun config and demodatabase generation"), _("proceed even if client and database versions clash " "(NOT ADVISABLE!)"), _("show the versioning and exit"), _("Ignore dev login (advanced)") )) def version(): ''' show the version on the command line ''' localsettings.showVersion() def run(): ''' the real entry point for the app ''' try: opts, args = getopt.gnu_getopt(sys.argv[1:], SHORTARGS, LONGARGS) except getopt.GetoptError as exc: # LOGGER.exception ("Unable to parse command line arguments") print("\n%s\n" % exc.msg) opts = (("--help", ""),) # some backward compatibility stuff here... if "firstrun" in sys.argv: opts.append(("--firstrun", "")) chosen_func = main for option, args in opts: LOGGER.debug("parsing %s %s", option, args) if option == "--help": chosen_func = usage break if option == "--version": chosen_func = version break if option == "--firstrun": localsettings.FORCE_FIRST_RUN = True if option == "--ignore-schema-check": localsettings.IGNORE_SCHEMA_CHECK = True LOGGER.warning("command line args demand no schema check") chosen_func() if __name__ == "__main__": # - put "openmolar" on the pyth path and go.... LOGGER.debug("starting openMolar.... using main.py as __main__") def determine_path(): """Borrowed from wxglade.py""" try: root = localsettings.__file__ if os.path.islink(root): root = os.path.realpath(root) retarg = os.path.dirname(os.path.abspath(root)) return retarg except Exception: LOGGER.exception( "There is no __file__ variable.\n" "OpenMolar cannot run in this environment") sys.exit() wkdir = determine_path() sys.path.insert(0, os.path.dirname(wkdir)) run() openmolar-1.0.15-gd81f9e5/INSTALL.txt0000644000175000017500000000415312712401414016572 0ustar neilneil00000000000000DEBIAN / UBUNTU USERS PLEASE BE AWARE THAT YOU WOULD BE BETTER OFF INSTALLING FROM THE OFFICIAL REPOSITORIES - see http://www.openmolar.com/om1/installation Windows users - please see INSTALL_WINDOWS.txt ---------------------------------------------------------------------------------------------------------------- To get openMolar running from source, please follow these instructions openmolar requires a python3 runtime, qt5 for python3 and a python3 wrapper around the c-api for communicating with the database, along with a few other utilities. These are all available for most recent gnu/linux operating system. You also need a mysql or mariadb database server running on your network, or on the client machine for a standalone test. ---------------------------------------------------------------------------------------------------------------- By way of example, I will give instructions for installing these dependencies on debian testing. On other operating systems, you need to install the equivalent software before running openmolar for the first time. ## CLIENT MACHINE(S) ## ensure depenencies are met on the client machine(s) ~$ sudo apt-get install python3-mysqldb python3-pyqt5 python3-pyqt5.qsci python3-pyqt5.qsci python3-pyqt5.qtsvg python3-pyqt5.qtxmlpatterns python3-pyqt5.qtwebkit xdg-utils pyqt5-dev-tools ## SERVER MACHINE ## ensure dependencies are met on the server machine (which will probably be the same machine as your client for testing purposes, providing a service on "localhost") ~$ sudo apt-get install mysql-server OR ~$ sudo apt-get install mariadb-server MAKE A CAREFUL NOTE OF THE PASSWORD YOU SET UP FOR THE ROOT MYSQL-USER. YOU CANNOT CREATE A DATABASE WITHOUT THIS. ---------------------------------------------------------------------------------------------------------------- Once you have prepared your machine/network in this way, you are ready to install openmolar ~$ python3 setup.py install regards Neil Wallace Updated 28th April 2016 openmolar-1.0.15-gd81f9e5/INSTALL_WINDOWS.txt0000644000175000017500000000400712712401306020002 0ustar neilneil00000000000000 PLEASE BE AWARE THAT YOU MAY BE BETTER OFF INSTALLING A PRE-BUILT INSTALLER OF THE LATEST STABLE RELEASE please visit http://www.openmolar.com/om1/installation to check for any updates to these instructions, or download a windows installer which makes this all much more straightforward. ---------------------------------------------------------------------------------------------------------------- To get openMolar running from source, please follow these instructions openmolar requires a python3 runtime, qt5 for python3 and a python3 wrapper around the c-api for communicating with the database "python-mysqlclient", along with a few other utilities. You also need a mysql or mariadb database server running on your network, or on the client machine for a standalone test. ---------------------------------------------------------------------------------------------------------------- ## CLIENT MACHINE(S) ## ensure depenencies are met on the client machine(s) 1. Install Python (at time of writing 3.5.1 is available from https://www.python.org/downloads) 2. Install PyQt5 (from https://www.riverbankcomputing.com/software/pyqt/download5) 3. Install python-mysqlclient (from https://pypi.python.org/pypi/mysqlclient) ## SERVER MACHINE ## ensure dependencies are met on the server machine (which will probably be the same machine as your client for testing purposes, providing a service on "localhost") A. install mysql server (from https://dev.mysql.com/downloads/mysql/) OR PERHAPS BETTER STILL?? B. install mariadb server (https://downloads.mariadb.org/) MAKE A CAREFUL NOTE OF THE PASSWORD YOU SET UP FOR THE ROOT MYSQL-USER. YOU CANNOT CREATE A DATABASE WITHOUT THIS. ---------------------------------------------------------------------------------------------------------------- Once you have prepared your machine/network in this way, you are ready to install openmolar ~$ python setup.py install regards Neil Wallace Updated 4th May 2016 openmolar-1.0.15-gd81f9e5/LICENSE0000644000175000017500000000211712320217277015735 0ustar neilneil00000000000000Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: OpenMolar Upstream-Contact: Neil Wallace Source: http://www.openmolar.com Files: * Copyright: 2009-2014 Neil Wallace License: GPL-3+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA . On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-3'. openmolar-1.0.15-gd81f9e5/MANIFEST0000644000175000017500000006733513024000134016056 0ustar neilneil00000000000000# file GENERATED by distutils, do NOT edit INSTALL.txt INSTALL_WINDOWS.txt LICENSE MANIFEST MANIFEST.in README openmolar setup.py /home/neil/openmolar/openmolar1/bin/openmolar.1 /home/neil/openmolar/openmolar1/bin/openmolar.desktop /home/neil/openmolar/openmolar1/bin/openmolar.svg /home/neil/openmolar/openmolar1/src/openmolar/locale/af.po /home/neil/openmolar/openmolar1/src/openmolar/locale/da.po /home/neil/openmolar/openmolar1/src/openmolar/locale/de.po /home/neil/openmolar/openmolar1/src/openmolar/locale/el.po /home/neil/openmolar/openmolar1/src/openmolar/locale/en_AU.po /home/neil/openmolar/openmolar1/src/openmolar/locale/en_GB.po /home/neil/openmolar/openmolar1/src/openmolar/locale/es.po /home/neil/openmolar/openmolar1/src/openmolar/locale/fr.po /home/neil/openmolar/openmolar1/src/openmolar/locale/hu.po /home/neil/openmolar/openmolar1/src/openmolar/locale/id.po /home/neil/openmolar/openmolar1/src/openmolar/locale/it.po /home/neil/openmolar/openmolar1/src/openmolar/locale/messages.pot /home/neil/openmolar/openmolar1/src/openmolar/locale/oc.po /home/neil/openmolar/openmolar1/src/openmolar/locale/pl.po /home/neil/openmolar/openmolar1/src/openmolar/locale/pt.po /home/neil/openmolar/openmolar1/src/openmolar/locale/ro.po /home/neil/openmolar/openmolar1/src/openmolar/locale/sk.po /home/neil/openmolar/openmolar1/src/openmolar/locale/tr.po /home/neil/openmolar/openmolar1/src/openmolar/resources/appointment_shortcuts.xml /home/neil/openmolar/openmolar1/src/openmolar/resources/appt_ov.png /home/neil/openmolar/openmolar1/src/openmolar/resources/demo_data.sql /home/neil/openmolar/openmolar1/src/openmolar/resources/hdp_maintenance.png /home/neil/openmolar/openmolar1/src/openmolar/resources/hdp_small.png /home/neil/openmolar/openmolar1/src/openmolar/resources/logo.png /home/neil/openmolar/openmolar1/src/openmolar/resources/logo1.png /home/neil/openmolar/openmolar1/src/openmolar/resources/minimal_data.sql /home/neil/openmolar/openmolar1/src/openmolar/resources/newlogo.png /home/neil/openmolar/openmolar1/src/openmolar/resources/newlogo_launchpadSize.png /home/neil/openmolar/openmolar1/src/openmolar/resources/nhs_scot.png /home/neil/openmolar/openmolar1/src/openmolar/resources/openmolar.svg /home/neil/openmolar/openmolar1/src/openmolar/resources/private.png /home/neil/openmolar/openmolar1/src/openmolar/resources/resources.qrc /home/neil/openmolar/openmolar1/src/openmolar/resources/schema.sql /home/neil/openmolar/openmolar1/src/openmolar/resources/style.css /home/neil/openmolar/openmolar1/src/openmolar/resources/triggers.sql /home/neil/openmolar/openmolar1/src/openmolar/resources/win_install_banner.bmp /home/neil/openmolar/openmolar1/src/openmolar/resources/win_install_dialog.bmp /home/neil/openmolar/openmolar1/src/openmolar/resources/feescales/example_feescale.xml /home/neil/openmolar/openmolar1/src/openmolar/resources/feescales/feescale_schema.xsd /home/neil/openmolar/openmolar1/src/openmolar/resources/gp17/back.jpg /home/neil/openmolar/openmolar1/src/openmolar/resources/gp17/front.jpg /home/neil/openmolar/openmolar1/src/openmolar/resources/gp17-1/back.png /home/neil/openmolar/openmolar1/src/openmolar/resources/gp17-1/front.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/Speaker_Icon.svg /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/action.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/add_user.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/agt_back.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/agt_family.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/agt_forward.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/agt_home.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/agt_reload.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/alert.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/back.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/button_ok.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/chain-broken.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/chain.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/contract.svg /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/database.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/down.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/eraser.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/exit.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/expand.svg /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/gohome.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/home.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/kaddressbook.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/karm.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/kdmconfig.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/kfm.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/kfm_home.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/logo.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/lower_implant.svg /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/mail_new.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/med.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/memos.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/month.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/number1.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/openmolar.ico /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/pencil.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/pin.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/ps.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/save_all.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/schedule.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/schedule_active.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/search.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/separate.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/settings.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/txt.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/up.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/upper_implant.svg /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/vcalendar.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/vcard.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/warning.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/widelogo.png /home/neil/openmolar/openmolar1/src/openmolar/resources/icons/wikipedia.png /home/neil/openmolar/openmolar1/src/openmolar/resources/phrasebook/phrasebook.xsd /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll1.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll2.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll3.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll4.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll5.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll6.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll7.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ll8.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr1.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr2.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr3.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr4.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr5.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr6.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr7.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/lr8.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul1.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul2.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul3.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul4.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul5.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul6.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul7.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ul8.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur1.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur2.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur3.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur4.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur5.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur6.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur7.png /home/neil/openmolar/openmolar1/src/openmolar/resources/teeth/ur8.png bin/openmolar.1 bin/openmolar.desktop bin/openmolar.svg src/openmolar/__init__.py src/openmolar/connect.py src/openmolar/create_db.py src/openmolar/main.py src/openmolar/backports/__init__.py src/openmolar/backports/advisor.py src/openmolar/backports/printed_form.py src/openmolar/dbtools/__init__.py src/openmolar/dbtools/accounts.py src/openmolar/dbtools/appointments.py src/openmolar/dbtools/appt_prefs.py src/openmolar/dbtools/brief_patient.py src/openmolar/dbtools/calldurr.py src/openmolar/dbtools/cashbook.py src/openmolar/dbtools/courseHistory.py src/openmolar/dbtools/daybook.py src/openmolar/dbtools/daybookHistory.py src/openmolar/dbtools/db_notes.py src/openmolar/dbtools/db_patients.py src/openmolar/dbtools/db_settings.py src/openmolar/dbtools/distinct_statuses.py src/openmolar/dbtools/docsimported.py src/openmolar/dbtools/docsprinted.py src/openmolar/dbtools/est_logger.py src/openmolar/dbtools/estimate_synopsis.py src/openmolar/dbtools/estimates.py src/openmolar/dbtools/estimatesHistory.py src/openmolar/dbtools/families.py src/openmolar/dbtools/feescales.py src/openmolar/dbtools/forum.py src/openmolar/dbtools/locations.py src/openmolar/dbtools/medform_check.py src/openmolar/dbtools/medhist.py src/openmolar/dbtools/memos.py src/openmolar/dbtools/nhs_claims.py src/openmolar/dbtools/patient_class.py src/openmolar/dbtools/patient_write_changes.py src/openmolar/dbtools/paymentHistory.py src/openmolar/dbtools/phrasebook.py src/openmolar/dbtools/plan_data.py src/openmolar/dbtools/queries.py src/openmolar/dbtools/recall.py src/openmolar/dbtools/records_in_use.py src/openmolar/dbtools/referral.py src/openmolar/dbtools/schema_version.py src/openmolar/dbtools/search.py src/openmolar/dbtools/standard_letter.py src/openmolar/dbtools/treatment_course.py src/openmolar/dbtools/writeNewCourse.py src/openmolar/dbtools/writeNewPatient.py src/openmolar/locale/af.po src/openmolar/locale/da.po src/openmolar/locale/de.po src/openmolar/locale/el.po src/openmolar/locale/en_AU.po src/openmolar/locale/en_GB.po src/openmolar/locale/es.po src/openmolar/locale/fr.po src/openmolar/locale/hu.po src/openmolar/locale/id.po src/openmolar/locale/it.po src/openmolar/locale/messages.pot src/openmolar/locale/oc.po src/openmolar/locale/pl.po src/openmolar/locale/pt.po src/openmolar/locale/ro.po src/openmolar/locale/sk.po src/openmolar/locale/tr.po src/openmolar/ptModules/__init__.py src/openmolar/ptModules/course_checker.py src/openmolar/ptModules/debug_html.py src/openmolar/ptModules/dec_perm.py src/openmolar/ptModules/estimates.py src/openmolar/ptModules/formatted_notes.py src/openmolar/ptModules/hidden_notes.py src/openmolar/ptModules/nhsDetails.py src/openmolar/ptModules/notes.py src/openmolar/ptModules/patientDetails.py src/openmolar/ptModules/plan.py src/openmolar/ptModules/planDetails.py src/openmolar/ptModules/reception_summary.py src/openmolar/ptModules/tooth_history.py src/openmolar/qt-designer/activeDentStartFinish.ui src/openmolar/qt-designer/addTreatment.ui src/openmolar/qt-designer/appointment_length.ui src/openmolar/qt-designer/aslotEdit.ui src/openmolar/qt-designer/blockSlot.ui src/openmolar/qt-designer/bulkmail_options.ui src/openmolar/qt-designer/choose_clinicians.ui src/openmolar/qt-designer/choose_language.ui src/openmolar/qt-designer/choose_tooth.ui src/openmolar/qt-designer/codeChecker.ui src/openmolar/qt-designer/customTreatment.ui src/openmolar/qt-designer/daylist_print.ui src/openmolar/qt-designer/diary_widget.ui src/openmolar/qt-designer/exam_wizard.ui src/openmolar/qt-designer/finalise_appt_time.ui src/openmolar/qt-designer/forumPost.ui src/openmolar/qt-designer/hygenist_wizard.ui src/openmolar/qt-designer/main.ui src/openmolar/qt-designer/newBPE.ui src/openmolar/qt-designer/newCourse.ui src/openmolar/qt-designer/patient_diary.ui src/openmolar/qt-designer/patient_finder.ui src/openmolar/qt-designer/record_tools.ui src/openmolar/qt-designer/saveMemo.ui src/openmolar/qt-designer/showMemo.ui src/openmolar/qt-designer/specify_appointment.ui src/openmolar/qt-designer/surgeryNumber.ui src/openmolar/qt-designer/toothProps.ui src/openmolar/qt-designer/toothprops_full_edit.ui src/openmolar/qt-designer/treatmentItemWidget.ui src/openmolar/qt4gui/__init__.py src/openmolar/qt4gui/colours.py src/openmolar/qt4gui/contract_gui_module.py src/openmolar/qt4gui/diary_widget.py src/openmolar/qt4gui/forum_widget.py src/openmolar/qt4gui/maingui.py src/openmolar/qt4gui/new_patient_gui.py src/openmolar/qt4gui/pt_diary_widget.py src/openmolar/qt4gui/schema_updater.py src/openmolar/qt4gui/appointment_gui_modules/__init__.py src/openmolar/qt4gui/appointment_gui_modules/clinician_select_model.py src/openmolar/qt4gui/appointment_gui_modules/draggable_list.py src/openmolar/qt4gui/appointment_gui_modules/list_models.py src/openmolar/qt4gui/appointment_gui_modules/pt_diary_treemodel.py src/openmolar/qt4gui/charts/__init__.py src/openmolar/qt4gui/charts/charts_gui.py src/openmolar/qt4gui/compiled_uis/__init__.py src/openmolar/qt4gui/customwidgets/__init__.py src/openmolar/qt4gui/customwidgets/appointment_overviewwidget.py src/openmolar/qt4gui/customwidgets/appointmentwidget.py src/openmolar/qt4gui/customwidgets/aptOVcontrol.py src/openmolar/qt4gui/customwidgets/calendars.py src/openmolar/qt4gui/customwidgets/chainLabel.py src/openmolar/qt4gui/customwidgets/chartwidget.py src/openmolar/qt4gui/customwidgets/completer_textedit.py src/openmolar/qt4gui/customwidgets/confirming_check_box.py src/openmolar/qt4gui/customwidgets/currency_label.py src/openmolar/qt4gui/customwidgets/dent_hyg_selector.py src/openmolar/qt4gui/customwidgets/diary_view_controller.py src/openmolar/qt4gui/customwidgets/estimate_item_widget.py src/openmolar/qt4gui/customwidgets/estimate_widget.py src/openmolar/qt4gui/customwidgets/fiveminutetimeedit.py src/openmolar/qt4gui/customwidgets/money_line_edit.py src/openmolar/qt4gui/customwidgets/notification_widget.py src/openmolar/qt4gui/customwidgets/schedule_control.py src/openmolar/qt4gui/customwidgets/simple_chartwidget.py src/openmolar/qt4gui/customwidgets/static_control_panel.py src/openmolar/qt4gui/customwidgets/toothProps.py src/openmolar/qt4gui/customwidgets/upper_case_line_edit.py src/openmolar/qt4gui/customwidgets/waitwidget.py src/openmolar/qt4gui/customwidgets/warning_label.py src/openmolar/qt4gui/dialogs/__init__.py src/openmolar/qt4gui/dialogs/account_letter_dialog.py src/openmolar/qt4gui/dialogs/account_severity_dialog.py src/openmolar/qt4gui/dialogs/accounts_loader_dialog.py src/openmolar/qt4gui/dialogs/add_clinician_dialog.py src/openmolar/qt4gui/dialogs/add_treatment_dialog.py src/openmolar/qt4gui/dialogs/add_user_dialog.py src/openmolar/qt4gui/dialogs/address_match_dialog.py src/openmolar/qt4gui/dialogs/advanced_names_dialog.py src/openmolar/qt4gui/dialogs/advanced_record_management_dialog.py src/openmolar/qt4gui/dialogs/advanced_tx_planning_dialog.py src/openmolar/qt4gui/dialogs/alterAday.py src/openmolar/qt4gui/dialogs/alter_cashbook_dialog.py src/openmolar/qt4gui/dialogs/alter_denture_dialog.py src/openmolar/qt4gui/dialogs/alter_todays_notes.py src/openmolar/qt4gui/dialogs/appointment_card_dialog.py src/openmolar/qt4gui/dialogs/appointments_insert_blocks_dialog.py src/openmolar/qt4gui/dialogs/appointments_memo_dialog.py src/openmolar/qt4gui/dialogs/appt_mode_dialog.py src/openmolar/qt4gui/dialogs/appt_prefs_dialog.py src/openmolar/qt4gui/dialogs/appt_settings_dialog.py src/openmolar/qt4gui/dialogs/appt_wizard_dialog.py src/openmolar/qt4gui/dialogs/assistant_select_dialog.py src/openmolar/qt4gui/dialogs/auto_address_dialog.py src/openmolar/qt4gui/dialogs/base_dialogs.py src/openmolar/qt4gui/dialogs/blockslot.py src/openmolar/qt4gui/dialogs/bookend_dialog.py src/openmolar/qt4gui/dialogs/bridge_dialog.py src/openmolar/qt4gui/dialogs/cancel_appointment_dialog.py src/openmolar/qt4gui/dialogs/chart_tx_choice_dialog.py src/openmolar/qt4gui/dialogs/check_version_dialog.py src/openmolar/qt4gui/dialogs/child_smile_dialog.py src/openmolar/qt4gui/dialogs/choose_clinicians.py src/openmolar/qt4gui/dialogs/choose_tooth_dialog.py src/openmolar/qt4gui/dialogs/clinician_select_dialog.py src/openmolar/qt4gui/dialogs/close_course_dialog.py src/openmolar/qt4gui/dialogs/complete_treatment_dialog.py src/openmolar/qt4gui/dialogs/correspondence_dialog.py src/openmolar/qt4gui/dialogs/course_consistency_dialog.py src/openmolar/qt4gui/dialogs/course_edit_dialog.py src/openmolar/qt4gui/dialogs/course_history_options_dialog.py src/openmolar/qt4gui/dialogs/course_merge_dialog.py src/openmolar/qt4gui/dialogs/crown_choice_dialog.py src/openmolar/qt4gui/dialogs/database_connection_progress_dialog.py src/openmolar/qt4gui/dialogs/daybook_edit_dialog.py src/openmolar/qt4gui/dialogs/daybook_item_dialog.py src/openmolar/qt4gui/dialogs/denture_dialog.py src/openmolar/qt4gui/dialogs/dialog_collection.py src/openmolar/qt4gui/dialogs/document_dialog.py src/openmolar/qt4gui/dialogs/duplicate_receipt_dialog.py src/openmolar/qt4gui/dialogs/edit_practice_dialog.py src/openmolar/qt4gui/dialogs/edit_referral_centres_dialog.py src/openmolar/qt4gui/dialogs/edit_standard_letters_dialog.py src/openmolar/qt4gui/dialogs/edit_treatment_dialog.py src/openmolar/qt4gui/dialogs/estimate_edit_dialog.py src/openmolar/qt4gui/dialogs/exam_wizard.py src/openmolar/qt4gui/dialogs/family_manage_dialog.py src/openmolar/qt4gui/dialogs/feescale_configure_dialog.py src/openmolar/qt4gui/dialogs/finalise_appt_time.py src/openmolar/qt4gui/dialogs/find_patient_dialog.py src/openmolar/qt4gui/dialogs/first_run_dialog.py src/openmolar/qt4gui/dialogs/gp17_printdialog.py src/openmolar/qt4gui/dialogs/hygTreatWizard.py src/openmolar/qt4gui/dialogs/implant_choice_dialog.py src/openmolar/qt4gui/dialogs/initial_check_dialog.py src/openmolar/qt4gui/dialogs/login_dialog.py src/openmolar/qt4gui/dialogs/medical_form_checked_dialog.py src/openmolar/qt4gui/dialogs/medical_form_date_entry_dialog.py src/openmolar/qt4gui/dialogs/medical_history_dialog.py src/openmolar/qt4gui/dialogs/mh_form_dialog.py src/openmolar/qt4gui/dialogs/newBPE.py src/openmolar/qt4gui/dialogs/newCourse.py src/openmolar/qt4gui/dialogs/new_bridge_dialog.py src/openmolar/qt4gui/dialogs/new_denture_dialog.py src/openmolar/qt4gui/dialogs/nhs_forms_config_dialog.py src/openmolar/qt4gui/dialogs/other_treatment_dialog.py src/openmolar/qt4gui/dialogs/patient_location_dialog.py src/openmolar/qt4gui/dialogs/payment_dialog.py src/openmolar/qt4gui/dialogs/permissions.py src/openmolar/qt4gui/dialogs/post_choice_dialog.py src/openmolar/qt4gui/dialogs/print_record_dialog.py src/openmolar/qt4gui/dialogs/recall_dialog.py src/openmolar/qt4gui/dialogs/recall_prompt_dialog.py src/openmolar/qt4gui/dialogs/saveMemo.py src/openmolar/qt4gui/dialogs/save_discard_cancel.py src/openmolar/qt4gui/dialogs/select_language.py src/openmolar/qt4gui/dialogs/toothprop_fulledit.py src/openmolar/qt4gui/fees/__init__.py src/openmolar/qt4gui/fees/cashbook_module.py src/openmolar/qt4gui/fees/course_module.py src/openmolar/qt4gui/fees/daybook_module.py src/openmolar/qt4gui/fees/fee_table_model.py src/openmolar/qt4gui/fees/fees_module.py src/openmolar/qt4gui/fees/feescale_tester.py src/openmolar/qt4gui/fees/manipulate_plan.py src/openmolar/qt4gui/fees/treatment_list_models.py src/openmolar/qt4gui/feescale_editor/__init__.py src/openmolar/qt4gui/feescale_editor/feescale_choice_dialog.py src/openmolar/qt4gui/feescale_editor/feescale_compare_items_dockwidget.py src/openmolar/qt4gui/feescale_editor/feescale_diff_dialog.py src/openmolar/qt4gui/feescale_editor/feescale_editor.py src/openmolar/qt4gui/feescale_editor/feescale_input_dialogs.py src/openmolar/qt4gui/feescale_editor/feescale_list_model.py src/openmolar/qt4gui/feescale_editor/feescale_parser.py src/openmolar/qt4gui/feescale_editor/feescale_xml_editor.py src/openmolar/qt4gui/feescale_editor/new_feescale_dialog.py src/openmolar/qt4gui/phrasebook/__init__.py src/openmolar/qt4gui/phrasebook/phrasebook_dialog.py src/openmolar/qt4gui/phrasebook/phrasebook_editor.py src/openmolar/qt4gui/phrasebook/phrasebook_model.py src/openmolar/qt4gui/printing/__init__.py src/openmolar/qt4gui/printing/accountPrint.py src/openmolar/qt4gui/printing/apptcardPrint.py src/openmolar/qt4gui/printing/bookprint.py src/openmolar/qt4gui/printing/bulk_mail.py src/openmolar/qt4gui/printing/chartPrint.py src/openmolar/qt4gui/printing/daylistprint.py src/openmolar/qt4gui/printing/estimatePrint.py src/openmolar/qt4gui/printing/letterprint.py src/openmolar/qt4gui/printing/mh_print.py src/openmolar/qt4gui/printing/multiDayListPrint.py src/openmolar/qt4gui/printing/om_printing.py src/openmolar/qt4gui/printing/recallprint.py src/openmolar/qt4gui/printing/receiptPrint.py src/openmolar/qt4gui/printing/gp17/__init__.py src/openmolar/qt4gui/printing/gp17/gp17_back.py src/openmolar/qt4gui/printing/gp17/gp17_config.py src/openmolar/qt4gui/printing/gp17/gp17_data.py src/openmolar/qt4gui/printing/gp17/gp17_printer.py src/openmolar/qt4gui/printing/gp17/gp17v1_back.py src/openmolar/qt4gui/printing/gp17/gp17v1_front.py src/openmolar/resources/appointment_shortcuts.xml src/openmolar/resources/appt_ov.png src/openmolar/resources/demo_data.sql src/openmolar/resources/hdp_maintenance.png src/openmolar/resources/hdp_small.png src/openmolar/resources/logo.png src/openmolar/resources/logo1.png src/openmolar/resources/minimal_data.sql src/openmolar/resources/newlogo.png src/openmolar/resources/newlogo_launchpadSize.png src/openmolar/resources/nhs_scot.png src/openmolar/resources/openmolar.svg src/openmolar/resources/private.png src/openmolar/resources/resources.qrc src/openmolar/resources/schema.sql src/openmolar/resources/style.css src/openmolar/resources/triggers.sql src/openmolar/resources/feescales/example_feescale.xml src/openmolar/resources/feescales/feescale_schema.xsd src/openmolar/resources/gp17/back.jpg src/openmolar/resources/gp17/front.jpg src/openmolar/resources/gp17-1/back.png src/openmolar/resources/gp17-1/front.png src/openmolar/resources/icons/Speaker_Icon.svg src/openmolar/resources/icons/action.png src/openmolar/resources/icons/add_user.png src/openmolar/resources/icons/agt_back.png src/openmolar/resources/icons/agt_family.png src/openmolar/resources/icons/agt_forward.png src/openmolar/resources/icons/agt_home.png src/openmolar/resources/icons/agt_reload.png src/openmolar/resources/icons/alert.png src/openmolar/resources/icons/back.png src/openmolar/resources/icons/button_ok.png src/openmolar/resources/icons/chain-broken.png src/openmolar/resources/icons/chain.png src/openmolar/resources/icons/contract.svg src/openmolar/resources/icons/database.png src/openmolar/resources/icons/down.png src/openmolar/resources/icons/eraser.png src/openmolar/resources/icons/exit.png src/openmolar/resources/icons/expand.svg src/openmolar/resources/icons/gohome.png src/openmolar/resources/icons/home.png src/openmolar/resources/icons/kaddressbook.png src/openmolar/resources/icons/karm.png src/openmolar/resources/icons/kdmconfig.png src/openmolar/resources/icons/kfm.png src/openmolar/resources/icons/kfm_home.png src/openmolar/resources/icons/logo.png src/openmolar/resources/icons/lower_implant.svg src/openmolar/resources/icons/mail_new.png src/openmolar/resources/icons/med.png src/openmolar/resources/icons/memos.png src/openmolar/resources/icons/month.png src/openmolar/resources/icons/number1.png src/openmolar/resources/icons/openmolar.ico src/openmolar/resources/icons/pencil.png src/openmolar/resources/icons/pin.png src/openmolar/resources/icons/ps.png src/openmolar/resources/icons/save_all.png src/openmolar/resources/icons/schedule.png src/openmolar/resources/icons/schedule_active.png src/openmolar/resources/icons/search.png src/openmolar/resources/icons/separate.png src/openmolar/resources/icons/settings.png src/openmolar/resources/icons/txt.png src/openmolar/resources/icons/up.png src/openmolar/resources/icons/upper_implant.svg src/openmolar/resources/icons/vcalendar.png src/openmolar/resources/icons/vcard.png src/openmolar/resources/icons/warning.png src/openmolar/resources/icons/widelogo.png src/openmolar/resources/icons/wikipedia.png src/openmolar/resources/phrasebook/phrasebook.xsd src/openmolar/resources/teeth/ll1.png src/openmolar/resources/teeth/ll2.png src/openmolar/resources/teeth/ll3.png src/openmolar/resources/teeth/ll4.png src/openmolar/resources/teeth/ll5.png src/openmolar/resources/teeth/ll6.png src/openmolar/resources/teeth/ll7.png src/openmolar/resources/teeth/ll8.png src/openmolar/resources/teeth/lr1.png src/openmolar/resources/teeth/lr2.png src/openmolar/resources/teeth/lr3.png src/openmolar/resources/teeth/lr4.png src/openmolar/resources/teeth/lr5.png src/openmolar/resources/teeth/lr6.png src/openmolar/resources/teeth/lr7.png src/openmolar/resources/teeth/lr8.png src/openmolar/resources/teeth/ul1.png src/openmolar/resources/teeth/ul2.png src/openmolar/resources/teeth/ul3.png src/openmolar/resources/teeth/ul4.png src/openmolar/resources/teeth/ul5.png src/openmolar/resources/teeth/ul6.png src/openmolar/resources/teeth/ul7.png src/openmolar/resources/teeth/ul8.png src/openmolar/resources/teeth/ur1.png src/openmolar/resources/teeth/ur2.png src/openmolar/resources/teeth/ur3.png src/openmolar/resources/teeth/ur4.png src/openmolar/resources/teeth/ur5.png src/openmolar/resources/teeth/ur6.png src/openmolar/resources/teeth/ur7.png src/openmolar/resources/teeth/ur8.png src/openmolar/schema_upgrades/__init__.py src/openmolar/schema_upgrades/database_updater_thread.py src/openmolar/schema_upgrades/druglist.py src/openmolar/schema_upgrades/schema1_0to1_1.py src/openmolar/schema_upgrades/schema1_1to1_2.py src/openmolar/schema_upgrades/schema1_2to1_3.py src/openmolar/schema_upgrades/schema1_3to1_4.py src/openmolar/schema_upgrades/schema1_4to1_5.py src/openmolar/schema_upgrades/schema1_5to1_6.py src/openmolar/schema_upgrades/schema1_6to1_7.py src/openmolar/schema_upgrades/schema1_7to1_8.py src/openmolar/schema_upgrades/schema1_8to1_9.py src/openmolar/schema_upgrades/schema1_9to2_0.py src/openmolar/schema_upgrades/schema2_0to2_1.py src/openmolar/schema_upgrades/schema2_1to2_2.py src/openmolar/schema_upgrades/schema2_2to2_3.py src/openmolar/schema_upgrades/schema2_3to2_4.py src/openmolar/schema_upgrades/schema2_4to2_5.py src/openmolar/schema_upgrades/schema2_5to2_6.py src/openmolar/schema_upgrades/schema2_6to2_7.py src/openmolar/schema_upgrades/schema2_7to2_8.py src/openmolar/schema_upgrades/schema2_8to2_9.py src/openmolar/schema_upgrades/schema2_9to3_0.py src/openmolar/schema_upgrades/schema3_0to3_1.py src/openmolar/schema_upgrades/schema3_1to3_2.py src/openmolar/schema_upgrades/schema3_2to3_3.py src/openmolar/schema_upgrades/schema3_3to3_4.py src/openmolar/schema_upgrades/schema3_4to3_5.py src/openmolar/schema_upgrades/schema3_5to3_6.py src/openmolar/schema_upgrades/schema3_6to3_7.py src/openmolar/settings/__init__.py src/openmolar/settings/allowed.py src/openmolar/settings/appointment_shortcuts.py src/openmolar/settings/fee_tables.py src/openmolar/settings/images.py src/openmolar/settings/localsettings.py src/openmolar/settings/urls.py src/openmolar/settings/utilities.py src/openmolar/settings/version.py openmolar-1.0.15-gd81f9e5/MANIFEST.in0000644000175000017500000000140512714412657016473 0ustar neilneil00000000000000include LICENSE MANIFEST MANIFEST.in README openmolar INSTALL.txt INSTALL_WINDOWS.txt gpl.rtf recursive-include bin openmolar.svg openmolar.desktop openmolar.1 recursive-include src/openmolar/resources *.qrc *.xsd *.xml *.css *.sql *.svg *.png recursive-include src/openmolar/locale *.po *.pot recursive-include src/openmolar/qt-designer *.ui recursive-include src/openmolar/resources *.xml *.png *.svg *.sql *.css *.qrc recursive-include src/openmolar/resources/icons *.png *.svg *.ico recursive-include src/openmolar/resources/teeth *.png recursive-include src/openmolar/resources/gp17 *.jpg recursive-include src/openmolar/resources/gp17-1 *.png recursive-include src/openmolar/resources/feescales *.xml *.xsd recursive-include src/openmolar/resources/phrasebook *.xsd openmolar-1.0.15-gd81f9e5/README0000644000175000017500000000014312320217277015605 0ustar neilneil00000000000000openmolar1 ========== Dental Practice Management Software. see www.openmolar.com for description openmolar-1.0.15-gd81f9e5/openmolar0000755000175000017500000000362212667377310016665 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' This executable script simply imports openmolar.main and calls run(). Since openmolar version 0.7 requires python 3 to run, warnings are given if this is called with python2. ''' import sys if sys.version < '3.0': sys.exit("This program requires a python3 runtime") from openmolar import main main.run() openmolar-1.0.15-gd81f9e5/setup.py0000644000175000017500000004056312715104703016446 0ustar neilneil00000000000000#! /usr/bin/python # ########################################################################### # # # # # # # Copyright (c) 2009-2016 Neil Wallace # # # # # # # # This file is part of OpenMolar. # # # # # # # # OpenMolar is free software: you can redistribute it and/or modify # # # # it under the terms of the GNU General Public License as published by # # # # the Free Software Foundation, either version 3 of the License, or # # # # (at your option) any later version. # # # # # # # # OpenMolar is distributed in the hope that it will be useful, # # # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # # # GNU General Public License for more details. # # # # # # # # You should have received a copy of the GNU General Public License # # # # along with OpenMolar. If not, see . # # # # # # # ########################################################################### # ''' distutils script for openmolar1. see https://docs.python.org/3/distutils/setupscript.html for explanation ''' from distutils.command.install_data import install_data from distutils.command.sdist import sdist as _sdist from distutils.command.build import build as _build from distutils.command.clean import clean as _clean from distutils.command.build_py import build_py as _build_py from distutils.command.install import install as _install from distutils import dir_util from distutils.core import setup from distutils.core import Command from distutils.log import info, warn import glob import os import re import shutil import subprocess import sys import unittest import platform from PyQt5 import uic from PyQt5.Qt import PYQT_VERSION_STR OM_PATH = os.path.join(os.path.abspath(os.path.dirname(__file__)), "src") sys.path.insert(0, OM_PATH) from openmolar.settings import version VERSION = version.VERSION RESOURCE_FILE = os.path.join(OM_PATH, "openmolar", "qt4gui", "resources_rc.py") DATA_FILES = [] # warning if DATA_FILES == [], install_data doesn't get called # il8n_DIR refers to the location in which compiled gettext translation files # are put during install. # on linux systems, the default location is /usr/share/locale # On Windows the default gettext path is within the python path # eg C:\\Python34\share\locale which is a little nasty IMO. # I therefore force the path for gettext to be under the %ProgramFiles% # directory. if platform.system() == 'Windows': RESOURCES_DIR = os.path.join(os.environ.get("ProgramFiles"), "openmolar") il8n_DIR = os.path.join(RESOURCES_DIR, "locale") SCRIPTS = ['win_openmolar.pyw'] else: RESOURCES_DIR = os.path.join("/usr", "share", "openmolar") il8n_DIR = os.path.join("/usr", "share", "locale") for dir_, files in (('share/icons/hicolor/scalable/apps', ['bin/openmolar.svg']), ('share/applications', ['bin/openmolar.desktop']), ('share/man/man1', ['bin/openmolar.1'])): DATA_FILES.append((dir_, [os.path.abspath(p) for p in files])) SCRIPTS = ['openmolar'] DATA_FILES.append( (os.path.join(RESOURCES_DIR, "locale", "sources"), [os.path.abspath(p) for p in glob.glob('src/openmolar/locale/*.po*')])) for root, dirs, files in os.walk(os.path.abspath('src/openmolar/resources')): rootdirs = root.split(os.path.sep) subdirs = rootdirs[rootdirs.index("resources"):] dest_dir = os.path.join(RESOURCES_DIR, *subdirs) DATA_FILES.append((dest_dir, [os.path.join(root, f) for f in files])) def version_fixes(pydata): ''' apply some specific fixes to the compiled ui files. ''' if PYQT_VERSION_STR < "5.3.2": pydata = pydata.replace( "MainWindow.setUnifiedTitleAndToolBarOnMac(False)", "# MainWindow.setUnifiedTitleAndToolBarOnMac(False)" ) return pydata class MakeUis(Command): ''' compile qt-designer files and qresources. these files vary as the uic module advances, meaning files created on debian testing may not work on debian stable etc... ''' description = 'compile ui files and resources into python files' user_options = [] REMOVALS = (" _translate = QtCore.QCoreApplication.translate\n",) REPLACEMENTS = [("import resources_rc", "from openmolar.qt4gui import resources_rc")] SRC_FOLDER = os.path.join(os.path.dirname(os.path.abspath(__file__)), "src", "openmolar", "qt-designer") DEST_FOLDER = os.path.join(os.path.dirname(os.path.abspath(__file__)), "src", "openmolar", "qt4gui", "compiled_uis") RESOURCE_FILE = RESOURCE_FILE def initialize_options(self): pass def finalize_options(self): pass def gettext_wrap(self, match): ''' a callable used form regex substitution ''' return '_(%s)' % match.groups()[1].strip(" ") def de_bracket(self, match): ''' a callable used form regex substitution ''' return match.groups()[0].strip("()") def compile_ui(self, ui_fname): name = os.path.basename(ui_fname) outname = "Ui_%s.py" % name.rstrip(".ui") pyfile = os.path.join(self.DEST_FOLDER, outname) info("compiling %s" % ui_fname) f = open(pyfile, "w") uic.compileUi(ui_fname, f, execute=True) f.close() f = open(pyfile, "r") data = f.read() f.close() newdata = data for removal in self.REMOVALS: newdata = newdata.replace(removal, "") newdata = re.sub(r'_translate\((".*?"), (".*?")\)', self.gettext_wrap, newdata, 0, re.DOTALL) for orig, new in self.REPLACEMENTS: newdata = newdata.replace(orig, new) newdata = version_fixes(newdata) if newdata != data: f = open(pyfile, "w") f.write(newdata) f.close() else: info("om_pyuic made no changes to the standard uic output!") return pyfile def get_ui_files(self): for ui_file in os.listdir(self.SRC_FOLDER): if re.match(".*.ui$", ui_file): yield ui_file def run(self, *args, **kwargs): info("compiling qt-designer files") for ui_file in self.get_ui_files(): path = os.path.join(self.SRC_FOLDER, os.path.basename(ui_file)) py_file = self.compile_ui(path) if py_file: info("created/updated py file %s", py_file) qrc_path = os.path.join(OM_PATH, "openmolar", "resources", "resources.qrc") info("compiling resource file %s from source %s", self.RESOURCE_FILE, qrc_path) p = subprocess.Popen(["pyrcc5", "-o", self.RESOURCE_FILE, qrc_path]) p.wait() info("MakeUis Completed") class AlterVersion(object): ''' openmolar version file is tweaked on install or sdist. extraneous code is removed. ''' version_filepath = re.sub(r"\.pyc$", ".py", version.__file__) backup_version_filepath = version_filepath + "_orig" def change(self): ''' the git repository version of openmolar contains some hooks into git these should be removed for a source or binary build. ''' print("rewriting version.py") f = open(self.version_filepath, "r") new_data = "" add_line = True for line_ in f: if line_.startswith("try:"): print("Forcing version number of '%s'" % VERSION) new_data += 'VERSION = "%s"\n\n\n' % VERSION add_line = False elif line_.startswith("if __name__"): add_line = True if add_line: new_data += line_ f.close() shutil.move(self.version_filepath, self.backup_version_filepath) f = open(self.version_filepath, "w") f.write(new_data) f.close() def restore(self): ''' revert the changes made by AlterVersion.change() fails silently if no backup file is present ''' print("restoring version.py") try: shutil.move(self.backup_version_filepath, self.version_filepath) except FileNotFoundError: pass def test(self): ''' check that running change, followed by restore doesn't alter the repo. ''' self.change() self.restore() class WindowsScript(object): ''' the openmolar script doesn't work well on windows as from import openmolar import main is a namespace munge with an executable named simply "openmolar" move it to win_openmolar.pyw and all is well :) ''' def move_executable(self): if platform.system() == 'Windows': print("Moving the executable to win_openmolar.pyw") shutil.copy('openmolar', 'win_openmolar.pyw') def remove_executable(self): print("REMOVING win_openmolar.pyw") try: os.remove('win_openmolar.pyw') except FileNotFoundError: info("win_openmolar.pyw NOT removed (file not present)") def test(self): ''' check that running change, followed by restore doesn't alter the repo. ''' self.move_executable() self.remove_executable() class BuildPy(_build_py): ''' re-implement build_py so that the Ui files are compiled. ''' def run(self, *args, **kwargs): _build_py.run(self, *args, **kwargs) make_uis = MakeUis(self.distribution) qt4gui_path = os.path.join(self.get_package_dir("openmolar"), "qt4gui") make_uis.DEST_FOLDER = os.path.join(qt4gui_path, "compiled_uis") make_uis.RESOURCE_FILE = os.path.join(qt4gui_path, "resources_rc.py") make_uis.run(*args, **kwargs) info("build_py completed") class Build(_build): ''' re-implement to ensure that ui_files are called. ''' def setup(self): ''' before building, modify the version.py file create a windows executable if necessary ''' alter_version = AlterVersion() alter_version.change() win_script = WindowsScript() win_script.move_executable() def tear_down(self): ''' after building, return the repo to unaltered state ''' alter_version = AlterVersion() alter_version.restore() win_script = WindowsScript() win_script.remove_executable() def locale_build(self): ''' I want python setup.py build to create the compiled gettext mo files. The primary driver is the ability to create a windows msi installer which includes these files. ''' info("COMPILING PO FILES (gettext translations)") if not os.path.isdir("src/openmolar/locale/"): warn("WARNING - language files are missing!") locale_dir = os.path.join(self.build_base, "locale") try: dir_util.remove_tree(locale_dir) except Exception: warn("unable to remove directory %s", locale_dir) self.mkpath(locale_dir) for po_file in glob.glob("src/openmolar/locale/*.po"): file_ = os.path.split(po_file)[1] lang = file_.replace(".po", "") os.mkdir(os.path.join(locale_dir, lang)) mo_file = os.path.join(locale_dir, lang, "openmolar.mo") commands = ["msgfmt", "-o", mo_file, po_file] info('executing %s' % " ".join(commands)) try: p = subprocess.Popen(commands) p.wait() except IOError: info('Error while running msgfmt on %s - ' 'perhaps msgfmt (gettext) is not installed?' % po_file) def run(self, *args, **kwargs): ''' compile ui files and move all files into build dir also compile gettext mo files. ''' _build.run(self, *args, **kwargs) self.locale_build() info("build completed") class Clean(_clean): ''' remove files created by configure ''' def run(self, *args, **kwargs): print("running clean") for file_ in os.listdir(MakeUis.DEST_FOLDER): if file_.startswith("Ui"): os.remove(os.path.join(MakeUis.DEST_FOLDER, file_)) if os.path.exists(RESOURCE_FILE): os.remove(RESOURCE_FILE) _clean.run(self, *args, **kwargs) win_script = WindowsScript() win_script.remove_executable() class Sdist(_sdist): ''' re-implement distutils standard source code builder ''' def run(self, *args, **kwargs): alter_version = AlterVersion() alter_version.change() _sdist.run(self, *args, **kwargs) alter_version.restore() class Install(_install): ''' re-implement distutils standard source code builder ''' def run(self, *args, **kwargs): alter_version = AlterVersion() alter_version.change() win_script = WindowsScript() win_script.move_executable() _install.run(self, *args, **kwargs) alter_version.restore() win_script.remove_executable() class InstallData(install_data): ''' re-implement class distutils.install_data install_data compile binary translation files for gettext ''' def run(self): i18nfiles = [] for root, dirs, files in os.walk(os.path.join("build", "locale")): for file_ in files: if file_ == "openmolar.mo": lang = os.path.split(root)[1] destdir = os.path.join(il8n_DIR, lang, "LC_MESSAGES") mo_file = os.path.join(root, file_) i18nfiles.append((destdir, [mo_file])) self.data_files.extend(i18nfiles) install_data.run(self) class Test(Command): description = 'run tests' user_options = [] def initialize_options(self): pass def finalize_options(self): pass def run(self, *args, **kwargs): loader = unittest.TestLoader() tests = loader.discover(start_dir="src") result = unittest.TestResult() tests.run(result) print(result) if __name__ == "__main__": # I need to import this module so the windows installer can access the # data files attribute # hence the __name__ == "__main__" trick setup( name='openmolar', version=VERSION, description='Open Source Dental Practice Management Software', author='Neil Wallace', author_email='neil@openmolar.com', url='https://www.openmolar.com', license='GPL v3', package_dir={'openmolar': 'src/openmolar'}, packages=['openmolar', 'openmolar.backports', 'openmolar.dbtools', 'openmolar.schema_upgrades', 'openmolar.qt4gui', 'openmolar.qt4gui.dialogs', 'openmolar.qt4gui.appointment_gui_modules', 'openmolar.qt4gui.charts', 'openmolar.qt4gui.compiled_uis', 'openmolar.qt4gui.customwidgets', 'openmolar.qt4gui.dialogs', 'openmolar.qt4gui.fees', 'openmolar.qt4gui.feescale_editor', 'openmolar.qt4gui.phrasebook', 'openmolar.qt4gui.printing', 'openmolar.qt4gui.printing.gp17', 'openmolar.settings', 'openmolar.ptModules'], data_files=DATA_FILES, cmdclass={'sdist': Sdist, 'clean': Clean, 'build_py': BuildPy, 'build': Build, 'install': Install, 'install_data': InstallData, 'makeuis': MakeUis, 'test': Test}, scripts=SCRIPTS, ) openmolar-1.0.15-gd81f9e5/PKG-INFO0000644000175000017500000000041213024000134016001 0ustar neilneil00000000000000Metadata-Version: 1.0 Name: openmolar Version: 1.0.15-gd81f9e5 Summary: Open Source Dental Practice Management Software Home-page: https://www.openmolar.com Author: Neil Wallace Author-email: neil@openmolar.com License: GPL v3 Description: UNKNOWN Platform: UNKNOWN